SetProjectileCounter: Difference between revisions
Jump to navigation
Jump to search
(Created page with "__NOTOC__ {{Client function}} Will change the projectile counter timer which depending on the projectile type will do different things: * Grenades will explode when it hits 0 * T...") |
Fernando187 (talk | contribs) (Remove obsolete Requirements section) |
||
| (9 intermediate revisions by 8 users not shown) | |||
| Line 2: | Line 2: | ||
{{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: | ||
* 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) | ||
* 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 | {{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