freeze

Šiame forume rašomi vartotojų klausimai/problemos su kuriomis jie susidūrė kuriant pluginus.
KamiN
Gana aktyvus vartotojas
Posts: 227
Joined: 2011 Apr 23 13:17

freeze

Post by KamiN »

Kaip padaryti, kad zaidejai sustingtu kokiom 5sec, jei kazkoks kintamasis yra true?

User avatar
beast
AMX Mod X ekspertai
Posts: 509
Joined: 2011 Jan 08 18:44
Skype: thefurious4
Contact:

Re: freeze

Post by beast »

Nustatai maxspeed ant 0.1 ir paleidi 5 sek. task, kurioje atstatysi speed į normalų.

KamiN
Gana aktyvus vartotojas
Posts: 227
Joined: 2011 Apr 23 13:17

Re: freeze

Post by KamiN »

Gal gali pavizdi duot? Dar gerai butu kad ta sustingus komanda negaletu ir saudyt.

User avatar
psychical
Viršininkas
Posts: 2094
Joined: 2011 Mar 12 22:19
Skype: tautvydas11
Location: Linksmakalnis
Contact:

Re: freeze

Post by psychical »

set_user_maxspeed(id) //uzstato -1.0, kada judet nebegali
set_user_maxspeed(id, 250.0) //optimalus kiekvieno zaidejo greitis

-- 2011 Bir 16 21:19 --
KamiN wrote:Gal gali pavizdi duot? Dar gerai butu kad ta sustingus komanda negaletu ir saudyt.

O jei tu nori taip, tai amx_pause, ir stapdyk visa srw... :D

KamiN
Gana aktyvus vartotojas
Posts: 227
Joined: 2011 Apr 23 13:17

Re: freeze

Post by KamiN »

Tai zodziu, jei del judejimo bendroj sumoj butu kazkas tokio

Code: Select all

 new bool:kazkas if(kazkas){    if(cs_get_user_team(id) == CS_TEAM_T)        set_user_maxspeed(id, 0.1)     set_task(5.0, "kazkas1", id)} public kazkas1{set_user_maxspeed(id, 250.0)} 
Kaip padaryt, kad nebutu galima saudyt?

Alliedmoduose radau kazka. Rase, kad ir dmg ir speed cia sustabdo.
// How to freeze:
set_pev(id, pev_flags, (pev(id, pev_flags) | FL_FROZEN));

// How to unfreeze:
set_pev(id, pev_flags, (pev(id, pev_flags) & ~FL_FROZEN));
Tai jei sitas veikia, tada kodas atrodytu taip?

Code: Select all

 new bool:kazkas if(kazkas){    if(cs_get_user_team(id) == CS_TEAM_T)        set_pev(id, pev_flags, (pev(id, pev_flags) | FL_FROZEN));     set_task(5.0, "kazkas1", id)} public kazkas1{set_pev(id, pev_flags, (pev(id, pev_flags) & ~FL_FROZEN));}
Last edited by KamiN on 2011 Jun 16 21:50, edited 7 times in total.


KamiN
Gana aktyvus vartotojas
Posts: 227
Joined: 2011 Apr 23 13:17

Re: freeze

Post by KamiN »

Sustingt sustingsta, bet po 5 sec niekas neatstingsta. Kaip istaisyt sita klaida?

Code: Select all

 new bool:HasTurn register_forward(FM_PlayerPreThink, "fwdPlayerPreThink", 0); public fwdPlayerPreThink(id){     if(HasTurn)    {        if(is_user_alive(id) && cs_get_user_team(id) == CS_TEAM_T)        {            set_pev(id, pev_flags, (pev(id, pev_flags) | FL_FROZEN));            set_task(5.0, "unfreeze")        }    }} public unfreeze(id){    set_pev(id, pev_flags, (pev(id, pev_flags) & ~FL_FROZEN));}

User avatar
beast
AMX Mod X ekspertai
Posts: 509
Joined: 2011 Jan 08 18:44
Skype: thefurious4
Contact:

Re: freeze

Post by beast »

set_task id pamiršai nurodyt. Beje prasta idėja atlikt tokius veiksmus fwdPlayerPreThink, nes jie bus iškviečiami fps dažniu. Jeigu jau kitaip neišeina, tai daryk taip:

Code: Select all

 new bool:HasTurn register_forward(FM_PlayerPreThink, "fwdPlayerPreThink", 0); public fwdPlayerPreThink(id){    if(HasTurn)    {        if(is_user_alive(id) && cs_get_user_team(id) == CS_TEAM_T && ~pev(id, pev_flags) & FL_FROZEN)        {            set_pev(id, pev_flags, (pev(id, pev_flags) | FL_FROZEN));            set_task(5.0, "unfreeze", id)        }    }} public unfreeze(id){    if(!is_user_connected(id))        return     set_pev(id, pev_flags, (pev(id, pev_flags) & ~FL_FROZEN));}
Bet ir tai abejoju ar tik vieną kartą bus iškviečiama...
Last edited by beast on 2013 Nov 27 01:17, edited 3 times in total.

KamiN
Gana aktyvus vartotojas
Posts: 227
Joined: 2011 Apr 23 13:17

Re: freeze

Post by KamiN »

Vistiek, sustingsta, bet nebeatstingsta po 5sec.

User avatar
hleV
AMX Mod X ekspertai
Posts: 875
Joined: 2011 Apr 02 11:23
Skype: hlev.lt
Location: Šiauliai

Re: freeze

Post by hleV »

Tiesiog pridėk FL_FROZEN flag'ą, kai kintamasis tampa true (tikiuos žinai, kada) ir atimk jį po 5 sek.
Image ← RIP best userbar
DISKUSIJA: KIETAS PLUGIN'O UŽSAKOVAS
Privačios pagalbos neteikiu!

Post Reply

Who is online

Users browsing this forum: No registered users and 3 guests