pomoc oko knock sys

Započeo Speed. Lospion RP, Decembar 07, 2021, 13:38:38 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 2 gostiju pregledaju ovu temu.

Rex

*

Citat: vrle poslato Decembar 07, 2021, 13:38:38 POSLE PODNE
Problem(error/warning): napravio sam knock sys i radi kada udjem na srw i posle smrti ne radi do cega je to?
Deo skripte:
task panokanje[100]()
{
   foreach(Player,playerid)
   {
   new Float:playerHealth;                                          //pravimo health varijablu
   GetPlayerHealth(playerid, playerHealth);
   if(Provera[playerid]==0)
   {
      if(playerHealth <= 20)
      {
         TogglePlayerControllable(playerid, false);
         ApplyAnimation(playerid,"PED","KO_shot_stom",4.0,0,1,1,1,0);
         SendClientMessage(playerid, -1, "Nokovan si da ustanes kucaj /pozovipomoc");
         Provera[playerid]=1;
         return 0;
      }
      else
   {
      Provera[playerid]=0;
   }
   }
}
   return 0;
}

Pawno Code: [Izaberi]
///
Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log):
Pawno Code: [Izaberi]
jok
Slika/video ingame problema(obavezno ako je ingame problem): //
Poslednja Izmena: Decembar 09, 2021, 00:10:49 PRE PODNE od Rex

Rex

*

Citat: ɴᴏᴅɪ poslato Decembar 08, 2021, 08:37:41 PRE PODNE
Gle, ti taskas ako je helt igraca manje od 20...sto znaci on i kad umre njemu task teče...Napravi timer, na callbacku gdje igrac prima damage - OnPlayerTakeDamage.Znaci napravis ako mu je health manji od koliko zelis, da pozove timer...Tajmer traje otp 20 sekundi, kako ti zelis na tebi je... I ako za tih 20 sekundi niko ga ne ozivi, umire


Ja sam uradio da task stane ako igrac umre, ali imamo novi problem

dodao sam novi tajmer
[pawn]
forward DigniIgraca(playerid);
public DigniIgraca(playerid)
{
    TogglePlayerControllable(playerid,true);
    ClearAnimations(playerid);
    SendClientMessage(playerid, -1, "Proslo je 30 sekundi i podigao si se sa poda");
    return 1;
}
[/pawn]

i sada to bi trebalo da podigne igraca nako 30 sekundi.

testali smo on je bio id 0 a ja id 1, on je mene nokao u ja sam pao, nakon 30 sekundi server je poslao njemu poruku da je proslo 30 sekundi od trenutka kad me je nokao i ja sam ostao na podu. Jel mozda znas kako da popravimo to?
Poslednja Izmena: Decembar 09, 2021, 00:44:31 PRE PODNE od Rex

Citat: Rex poslato Decembar 09, 2021, 00:41:18 PRE PODNE

Ja sam uradio da task stane ako igrac umre, ali imamo novi problem

dodao sam novi tajmer
[pawn]
forward DigniIgraca(playerid);
public DigniIgraca(playerid)
{
    TogglePlayerControllable(playerid,true);
    ClearAnimations(playerid);
    SendClientMessage(playerid, -1, "Proslo je 30 sekundi i podigao si se sa poda");
    return 1;
}
[/pawn]

i sada to bi trebalo da podigne igraca nako 30 sekundi.

testali smo on je bio id 0 a ja id 1, on je mene nokao u ja sam pao, nakon 30 sekundi server je poslao njemu poruku da je proslo 30 sekundi od trenutka kad me je nokao i ja sam ostao na podu. Jel mozda znas kako da popravimo to?
njemu si stavio timer a ne sebi zato

Rex

*


Ne koristis timere kako trebaju da se koriste.
SetTimerEx postoji (iako nije dobra solucija za tvoj problem/skriptu), takodje, posto vec koristis YSI timere, postoji i "ptask" (skraceno za player-task).


nemam ptask probacu SetTimerEx
Glavni Vlasnik: LOSPION ROLEPLAY ( SPEED )
https://imgur.com/NYT3Skd

Citat: vrle poslato Decembar 09, 2021, 05:41:13 PRE PODNE
nemam ptask probacu SetTimerEx
Pa koristis ysi, cim imas task imas i ptask, i koristi latest verziju nemoj prvu lol

Citat: vrle poslato Decembar 09, 2021, 05:41:13 PRE PODNE
nemam ptask probacu SetTimerEx
Zar ti nije lakše samo na OnPlayerDamage (ako koristiš WC) ili OnPlayerTakeDamage da staviš proveru i eto ga ne treba ti nikakav timer?

!LOCK SREDIO SAM

VECINA NJIH NECE POMOCI JEBU TE U ZDRAV MOZAK ...
Glavni Vlasnik: LOSPION ROLEPLAY ( SPEED )
https://imgur.com/NYT3Skd