SetProjectileCounter: Difference between revisions
Jump to navigation
Jump to search
(needs example) |
Fernando187 (talk | contribs) (Remove obsolete Requirements section) |
||
(4 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
__NOTOC__ | __NOTOC__ | ||
{{Client function}} | {{Client function}} | ||
Will change the projectile counter timer which depending on the projectile type will do different things: | Will change the projectile counter timer which depending on the projectile type will do different things: | ||
* Rockets and Grenades will explode when it hits 0 | * Rockets and Grenades will explode when it hits 0 | ||
* Teargas may be a duration timer | * Teargas may be a duration timer | ||
* Satchels restart (we currently assume it doesn't cause an effect) | * Satchels restart (we currently assume it doesn't cause an effect) | ||
* Molotov will explode with search ground level when it hits 0 | |||
==Syntax== | ==Syntax== | ||
<syntaxhighlight lang="lua">bool setProjectileCounter ( projectile projectile, int timeToDetonate )</syntaxhighlight> | <syntaxhighlight lang="lua">bool setProjectileCounter ( projectile projectile, int timeToDetonate )</syntaxhighlight> | ||
{{OOP||[[projectile]]:setCounter|counter|getProjectileCounter}} | |||
===Required Arguments=== | ===Required Arguments=== | ||
Line 17: | Line 18: | ||
Returns ''true'' on success, ''false'' otherwise. | Returns ''true'' on success, ''false'' otherwise. | ||
== | ===Example=== | ||
<section name="Client" class="client" show="true"> | |||
With this example you can use /setbombtime to set a delay duration of a projectile explosion. | |||
<syntaxhighlight lang="lua"> | |||
function changeProjectileDelay( cmd, bombIndex, duration ) | |||
local bombIndex = tonumber( bombIndex ) or nil | |||
local duration = tonumber( duration ) or nil | |||
if ( bombIndex ) and ( duration ) then | |||
local found = false | |||
for index,projectile in ipairs( getElementsByType( "projectile" ) ) do | |||
if ( index == bombIndex ) then | |||
if ( setProjectileCounter( projectile, duration * 1000 ) ) then | |||
outputChatBox( "Projectile (" .. index .. ") detonates in " .. duration .. " seconds.", 0, 255, 0, false ) | |||
else | |||
outputChatBox( "Something went wrong when setting the duration.", 255, 0, 0, false ) | |||
end | |||
found = true | |||
break | |||
end | |||
end | |||
if ( not found ) then | |||
outputChatBox( "Projectile with index " .. bombIndex .. " was not found.", 255, 0, 0, false ) | |||
end | |||
else | |||
outputChatBox( "SYNTAX: /" .. cmd .. " [bomb index] [duration in seconds]", 220, 180, 0, false ) | |||
end | |||
end | |||
addCommandHandler( "setbombtime", changeProjectileDelay ) | |||
</syntaxhighlight> | |||
</section> | |||
==See Also== | ==See Also== | ||
{{Client projectile functions}} | {{Client projectile functions}} |
Latest revision as of 17:07, 7 November 2024
Will change the projectile counter timer which depending on the projectile type will do different things:
- Rockets and Grenades will explode when it hits 0
- Teargas may be a duration timer
- Satchels restart (we currently assume it doesn't cause an effect)
- Molotov will explode with search ground level when it hits 0
Syntax
bool setProjectileCounter ( projectile projectile, int timeToDetonate )
OOP Syntax Help! I don't understand this!
- Method: projectile:setCounter(...)
- Variable: .counter
- Counterpart: getProjectileCounter
Required Arguments
- projectile: The projectile to edit the timer of.
- timeToDetonate: The time in milliseconds to detonation.
Returns
Returns true on success, false otherwise.
Example
Click to collapse [-]
ClientWith this example you can use /setbombtime to set a delay duration of a projectile explosion.
function changeProjectileDelay( cmd, bombIndex, duration ) local bombIndex = tonumber( bombIndex ) or nil local duration = tonumber( duration ) or nil if ( bombIndex ) and ( duration ) then local found = false for index,projectile in ipairs( getElementsByType( "projectile" ) ) do if ( index == bombIndex ) then if ( setProjectileCounter( projectile, duration * 1000 ) ) then outputChatBox( "Projectile (" .. index .. ") detonates in " .. duration .. " seconds.", 0, 255, 0, false ) else outputChatBox( "Something went wrong when setting the duration.", 255, 0, 0, false ) end found = true break end end if ( not found ) then outputChatBox( "Projectile with index " .. bombIndex .. " was not found.", 255, 0, 0, false ) end else outputChatBox( "SYNTAX: /" .. cmd .. " [bomb index] [duration in seconds]", 220, 180, 0, false ) end end addCommandHandler( "setbombtime", changeProjectileDelay )
See Also
- createProjectile
- getProjectileCounter
- getProjectileCreator
- getProjectileForce
- getProjectileTarget
- getProjectileType
- setProjectileCounter
- Shared
- detonateSatchels