AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   set_task timing (https://forums.alliedmods.net/showthread.php?t=127402)

Wuu 05-20-2010 16:17

set_task timing
 
PHP Code:

for (new i=0;i<inum;++i) { 
if (
cs_get_user_team(all[i]) != cs_get_user_team(id) && is_user_alive(all[i])) {
client_cmd(all[i], "spk ^"misc/eac140^"")
 
set_task(3.0,"fire_rocket",all[i])
 
set_task(3.1,"Shake2")
} else {
client_cmd(all[i], "spk ^"misc/ac140^"")
}


How to increase set_task time value by o.1 every time "for" loops?
like
set_task(3.0+0.1,"fire_rocket",all[i])
next time its lopps
set_task(3.0+0.2,"fire_rocket",all[i])

i cant use "i"
set_task(3.0+0.i,"fire_rocket",all[i])

:idea:

mysticssjgoku4 05-20-2010 16:41

Re: set_task timing
 
Fill in your code, but try this.
Code:
#include <amxmodx> #include <amxmisc> #include <cstrike> #define PLUGIN  "Caesar_" #define AUTHOR  "RemoWilliams" #define VERSION "1.0" #define START_TIME 10.0 new Float:g_TaskTime = START_TIME; public plugin_init() {     register_plugin(PLUGIN, VERSION, AUTHOR);     set_task(START_TIME,"fn"); } public fn(id) {     /*for( new i=0; i<inum ;++i )     {         if (cs_get_user_team(all[i]) != cs_get_user_team(id) && is_user_alive(all[i]))         {             client_cmd(all[i], "spk ^"misc/eac140^"");             set_task(3.0,"fire_rocket",all[i]);             set_task(3.1,"Shake2");         }         else         {             client_cmd(all[i], "spk ^"misc/ac140^"");         }     }*/     g_TaskTime += 0.1;     set_task(g_TaskTime,"fn"); }

Exolent[jNr] 05-20-2010 19:45

Re: set_task timing
 
Quote:

Originally Posted by Wuu (Post 1186254)
PHP Code:

for (new i=0;i<inum;++i) { 
if (
cs_get_user_team(all[i]) != cs_get_user_team(id) && is_user_alive(all[i])) {
client_cmd(all[i], "spk ^"misc/eac140^"")
 
set_task(3.0,"fire_rocket",all[i])
 
set_task(3.1,"Shake2")
} else {
client_cmd(all[i], "spk ^"misc/ac140^"")
}


How to increase set_task time value by o.1 every time "for" loops?
like
set_task(3.0+0.1,"fire_rocket",all[i])
next time its lopps
set_task(3.0+0.2,"fire_rocket",all[i])

i cant use "i"
set_task(3.0+0.i,"fire_rocket",all[i])

:idea:

Use math.

Code:
set_task( ( 3.0 + ( 0.1 * i ) ), "fire_rocket", all[ i ] );

However, that won't work if it skips some players from the conditional statement.

Therefore, something like this should be sufficient:
Code:
new count; for (new i=0;i<inum;++i) {     if (cs_get_user_team(all[i]) != cs_get_user_team(id) && is_user_alive(all[i])) {         client_cmd(all[i], "spk ^"misc/eac140^"")         set_task(3.0 + (0.1 * count),"fire_rocket",all[i])         set_task(3.1 + (0.1 * count),"Shake2")         count++     } else {         client_cmd(all[i], "spk ^"misc/ac140^"")     } }


All times are GMT -4. The time now is 03:33.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.