SetProjectileCounter: Difference between revisions
Jump to navigation
Jump to search
(What example was that? This one isn't that good neither, but I wanted to fix the previous one. Using element index is not good at all, though.) |
|||
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 | ||
Line 16: | Line 15: | ||
===Returns=== | ===Returns=== | ||
Returns ''true'' on success, ''false'' otherwise. | Returns ''true'' on success, ''false'' otherwise. | ||
===Example=== | ===Example=== | ||
<section name="Client" class="client" show="true"> | <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"> | <syntaxhighlight lang="lua"> | ||
function | function changeProjectileDelay( cmd, bombIndex, duration ) | ||
if | local bombIndex = tonumber( bombIndex ) or nil | ||
local duration = tonumber( duration ) or nil | |||
if | |||
outputChatBox(" | if ( bombIndex ) and ( duration ) then | ||
local found = false | |||
end | |||
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 | end | ||
addCommandHandler("setbombtime", | addCommandHandler( "setbombtime", changeProjectileDelay ) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
</section> | </section> |
Revision as of 20:28, 14 August 2014
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)
Syntax
bool setProjectileCounter ( projectile projectile, int timeToDetonate )
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 )
Requirements
This template will be deleted.
See Also
- createProjectile
- getProjectileCounter
- getProjectileCreator
- getProjectileForce
- getProjectileTarget
- getProjectileType
- setProjectileCounter
- Shared
- detonateSatchels