Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: V01D poslato Septembar 28, 2020, 00:14:21 PRE PODNE

Naslov: Sporo Hodanje
Poruka od: V01D poslato Septembar 28, 2020, 00:14:21 PRE PODNE
Problem(error/warning): Hocu da namestim da igrac mora da hoda polako dok nosi kutiju pa me zanima da li ima neka animacija ili funkcija za to?
Deo skripte: [pawn]Nepotrebno[/pawn]
Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log): Nepotrebno
Naslov: Odg: Sporo Hodanje
Poruka od: Ray_Gonzalez poslato Septembar 28, 2020, 00:25:25 PRE PODNE
Susretao sam se sa dosta animacija koje imitiraju nosenje necega i automatski su karakteri sporije hodali..
EDIT: Ovako je kod mene kada nosi kutiju, mozes pogledati s tim da nisam ja radio te ne znam puno.

[pawn]if(PlayerInfo[playerid][pClan] != 4 && PlayerInfo[playerid][pClan] != 5) return SCM(playerid, -1, "* "bijela"Samo clanovi mafije!");
        if(!IsPlayerInRangeOfPoint(playerid, 3.0, -1392.2698,1497.2639,1.8735)) return SCM(playerid, -1,"* "bijela"Niste na brodu!");
        if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SCM(playerid, -1, "* "bijela"Morate biti van vozila!");
      if(IsPlayerAttachedObjectSlotUsed(playerid, KUTIJA_HEROIN)) return SCM(playerid,-1,"* "bijela"Vec nosis jednu kutiju heroina!");
      if(UzeoKutijuHeroina[playerid] == 1) return SCM(playerid, -1, "* "bijela"Vec nosis jednu kutiju heroina!");
        if(UzeoPaket[playerid] == true) return SCM(playerid, -1, "* "bijela"Vec imate paket sa materijalima kod sebe!");
      PokreniAnimaciju(playerid, "CARRY", "crry_prtial", 4.1, 0, 1, 1, 1, 1, 1); UzeoKutijuHeroina[playerid] = 1;
      SetPlayerAttachedObject(playerid, KUTIJA_HEROIN, 1221, 1, 0.494823, 0.720993, 0.000000, 0.000000, 0.000000, 0.000000, 1.000000, 1.000000, 1.000000);
      SCM(playerid,-1,"* "bijela"Uzeli ste kutiju heroina sada je odnesite do vaseg broda i kucajte /droga utovarikutiju!");
        format(string, sizeof(string), "* %s se saginje i uzima kutiju.", GetName(playerid));
      ProxPoruka(20.0, playerid, string, PROX, PROX, PROX, PROX, PROX);[/pawn]
Naslov: Odg: Sporo Hodanje
Poruka od: V01D poslato Septembar 28, 2020, 01:10:04 PRE PODNE
Isto sam uradio, ali kada se igrac krece, krece se brzo dok nosi kutiju
Naslov: Odg: Sporo Hodanje
Poruka od: Simec poslato Septembar 28, 2020, 01:13:32 PRE PODNE
Negde sam procitao da ima SetPlayerSpeed funkcija i SetPlayerVelocity ali samp forum je sjeban totalno i sve originalne funkcije koje nisu mnogo poznate ne znam kako da nadjemo  :'(
Naslov: Odg: Sporo Hodanje
Poruka od: ᗪ卂乂 poslato Septembar 28, 2020, 01:14:57 PRE PODNE
Sad sam hteo da te kritikujem što ne ideš da gledaš po netu i skontam da su ugasili wiki hahahahahha  :'( :'( :'( :'( :'( :'( :'( :'( :'(
ps. mislim da ima fora da mu ugasiš da ne moze da stisne space tj, da space ništa ne radi
Naslov: Odg: Sporo Hodanje
Poruka od: V01D poslato Septembar 28, 2020, 01:19:03 PRE PODNE
Citat: Simec poslato Septembar 28, 2020, 01:13:32 PRE PODNE
Negde sam procitao da ima SetPlayerSpeed funkcija i SetPlayerVelocity ali samp forum je sjeban totalno i sve originalne funkcije koje nisu mnogo poznate ne znam kako da nadjemo  :'(

Isto sam hteo, skontao bi da forum radi...

Citat: ᗪ卂乂 poslato Septembar 28, 2020, 01:14:57 PRE PODNE
Sad sam hteo da te kritikujem što ne ideš da gledaš po netu i skontam da su ugasili wiki hahahahahha  :'( :'( :'( :'( :'( :'( :'( :'( :'(
ps. mislim da ima fora da mu ugasiš da ne moze da stisne space tj, da space ništa ne radi

Lako bi ja da forum radi.. Lako bi mu zabranio da trci brzo, ali ja hocu da on hoda sporo kao kada drzi ALT, on za sada trci normalno bez space-a ako me razumes
Naslov: Odg: Sporo Hodanje
Poruka od: Simec poslato Septembar 28, 2020, 01:29:01 PRE PODNE
Probaj SetPlayerSpeed(playerid, 250, 500);
procitah malopre 250 je normal 500 sprint probaj dal ce funkcionisati stavi ga pod uslov da nosi kutiju pa vidi ima li logike hahahaha ako je normalno sve reduce ove brojke stavi nize pa probaj nes
Naslov: Odg: Sporo Hodanje
Poruka od: ᗪ卂乂 poslato Septembar 28, 2020, 01:48:59 PRE PODNE
mozeš ti da mu staviš animaciju da sporo hoda dok drži alt al onda nećeš moći da napraviš da drži kutiju
Naslov: Odg: Sporo Hodanje
Poruka od: omcho poslato Septembar 28, 2020, 03:19:22 PRE PODNE
Citat: Simec poslato Septembar 28, 2020, 01:29:01 PRE PODNE
Probaj SetPlayerSpeed(playerid, 250, 500);
procitah malopre 250 je normal 500 sprint probaj dal ce funkcionisati stavi ga pod uslov da nosi kutiju pa vidi ima li logike hahahaha ako je normalno sve reduce ove brojke stavi nize pa probaj nes

@Simec ta funkcija ne postoji

mozes koristit ovo https://wiki.open.mp/docs/scripting/functions/SetPlayerVelocity ili SetPlayerSpecialAction sa onim CARRY sranjem tada igrac ne moze koristiti SPRINT
Naslov: Odg: Sporo Hodanje
Poruka od: Simec poslato Septembar 28, 2020, 07:06:07 PRE PODNE
Citat: omcho poslato Septembar 28, 2020, 03:19:22 PRE PODNE
@Simec ta funkcija ne postoji

mozes koristit ovo https://wiki.open.mp/docs/scripting/functions/SetPlayerVelocity ili SetPlayerSpecialAction sa onim CARRY sranjem tada igrac ne moze koristiti SPRINT

zato sam i napisao da vidi ima li logike hahahahahahah ??
Naslov: Odg: Sporo Hodanje
Poruka od: V01D poslato Septembar 28, 2020, 08:24:20 PRE PODNE
Citat: omcho poslato Septembar 28, 2020, 03:19:22 PRE PODNE
@Simec ta funkcija ne postoji

mozes koristit ovo https://wiki.open.mp/docs/scripting/functions/SetPlayerVelocity ili SetPlayerSpecialAction sa onim CARRY sranjem tada igrac ne moze koristiti SPRINT

Sa SetPlayerSpecialAction igrac ide brzo, moze da sprinta i da skace...

Citat: ᗪ卂乂 poslato Septembar 28, 2020, 01:48:59 PRE PODNE
mozeš ti da mu staviš animaciju da sporo hoda dok drži alt al onda nećeš moći da napraviš da drži kutiju

Koja je animacija da sporo hoda?
Naslov: Odg: Sporo Hodanje
Poruka od: V01D poslato Septembar 28, 2020, 09:19:49 PRE PODNE
Okej, koristeci SPECIAL_ACTION_CARRY igrac ne moze da sprinta i skace. Kako sada da ga nateram da hoda :D ?
Naslov: Odg: Sporo Hodanje
Poruka od: skripte iz 2007 godine. ( ͡° ͜ʖ ͡°) poslato Septembar 28, 2020, 12:12:52 POSLE PODNE


   Velocity(ubrzanje) moze biti negativno i pozitivno i sve zavisi od koordinate na kojoj se igrac krece.

[pawn]
forward Provera(playerid); // Ovo pokreci u nekom brzem tajmeru kao proveru dok igrac radi
public Provera(playerid)
{
   enum
   {
       Float:X = 0,
       Float:Y,
       Float:Z
   }

   new Float:Vel[3];
   GetPlayerVelocity(playerid, Vel[X], Vel[Y], Vel[Z]);

   if(Vel[X] > 0.08 || Vel[X] < -0.08 || Vel[Y] > 0.08 || Vel[Y] < -0.08)
   {
      // Znaci: ovo se poziva iskljucivo ako igrac trckara ili trci ili radi bilo sta brze od hodanja.
      // Ako na primer skoci isto ce se pozvati jer ce mu velocity biti veci/manji od 0.08


      // Ovde postavi sta zelis: freeze ga, stavi neku animaciju padanja, postavi ga na istu poziciju itd...
      // Takodje kada predje velocity od 0.08 postavi mu ponovo i specijalnu akciju
      // Ovo bi bilo dobro proveravati u nekom tajmeru od 100ms
   }
   return;
}
[/pawn]
Naslov: Odg: Sporo Hodanje
Poruka od: V01D poslato Septembar 28, 2020, 13:57:53 POSLE PODNE
Citat: skripte iz 2007 godine. ( ͡° ͜ʖ ͡°) poslato Septembar 28, 2020, 12:12:52 POSLE PODNE

   Velocity(ubrzanje) moze biti negativno i pozitivno i sve zavisi od koordinate na kojoj se igrac krece.

[pawn]
forward Provera(playerid); // Ovo pokreci u nekom brzem tajmeru kao proveru dok igrac radi
public Provera(playerid)
{
   enum
   {
       Float:X = 0,
       Float:Y,
       Float:Z
   }

   new Float:Vel[3];
   GetPlayerVelocity(playerid, Vel[X], Vel[Y], Vel[Z]);

   if(Vel[X] > 0.08 || Vel[X] < -0.08 || Vel[Y] > 0.08 || Vel[Y] < -0.08)
   {
      // Znaci: ovo se poziva iskljucivo ako igrac trckara ili trci ili radi bilo sta brze od hodanja.
      // Ako na primer skoci isto ce se pozvati jer ce mu velocity biti veci/manji od 0.08


      // Ovde postavi sta zelis: freeze ga, stavi neku animaciju padanja, postavi ga na istu poziciju itd...
      // Takodje kada predje velocity od 0.08 postavi mu ponovo i specijalnu akciju
      // Ovo bi bilo dobro proveravati u nekom tajmeru od 100ms
   }
   return;
}
[/pawn]

Funkcionise ovako, hvala puno <3