Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: Robertoo_Salgadoo poslato Jun 16, 2017, 12:24:20 POSLE PODNE

Naslov: Kapija
Poruka od: Robertoo_Salgadoo poslato Jun 16, 2017, 12:24:20 POSLE PODNE
Skripta koju koristim:Meine
Detaljan opis problema:Nije problem nego jel zna neko neki tut kako da napravim kapiju npr kada stanem ispred svirnem i ona se otvori ali da se polako otvara i onda po nekoliko sekundi da se zatvori
Dio skripte: \
Neke slike/video za lakse dobivanje pomoci(neobavezno):\
Naslov: Odg: Kapija
Poruka od: Stifler ツ poslato Jun 16, 2017, 13:00:10 POSLE PODNE
http://balkan-samp.com/forum/index.php?topic=105217.0


Samo umjesto komande napravi sebi da kad igrac stisne npr. H da mu se otvori kapija,ako ne znas pisi ovdje pa cemo ti pomoci
Naslov: Odg: Kapija
Poruka od: Robertoo_Salgadoo poslato Jun 16, 2017, 16:44:38 POSLE PODNE
  http://imgur.com/a/M0Q8c izlazi mi ovo ali devinisao sam na pocetku ono new kapijatrb;
Naslov: Odg: Kapija
Poruka od: Stifler ツ poslato Jun 16, 2017, 18:04:30 POSLE PODNE
Nije to to,posalji mi skriptu ako zelis i ja cu ti srediti
Naslov: Odg: Kapija
Poruka od: Robertoo_Salgadoo poslato Jun 16, 2017, 23:52:40 POSLE PODNE
Koji dek od skripte da ti posaljem
Naslov: Odg: Kapija
Poruka od: Bašovski poslato Jun 16, 2017, 23:56:40 POSLE PODNE
U callbacku OnPlayerKeyStateChange dodas uvijet ukoliko igrac pritisce slovo h, ukoliko je u vozilu i ukoliko je u blizini, to mozes napisati u svega 5 redova. Valjda znas koristiti MoveObject / MoveDynamicObject ( ako koristis streamer ). Tu bi bilo pozeljno napraviti timer koji ce moveati objekat nazad nakon izvjesnog vremena.
Naslov: Odg: Kapija
Poruka od: Robertoo_Salgadoo poslato Jun 17, 2017, 00:01:46 PRE PODNE
[pawn]if(newkeys & KEY_YES)
    {
         if(IsPlayerInRangeOfPoint(playerid, 3.0, 980, 1812.85522, -2071.76001, 13.75786))
        {
        MoveDynamicObject(kapijatrb,980, 1812.77161, -2062.55542, 13.74290, 2.00);
        ZalediOdlediTimer[playerid] = SetTimer("Kapije", 7000, 0);
        }
    }[/pawn]

[pawn]Evo cmd i ono kad stisnes da se otvori

forward kapijatrb();
public kapijatrb()
{
    MoveDynamicObject(kapijatrb, 980, 1812.85522, -2071.76001, 13.75786, 2.0);
    return 1;
}[/pawn]

Onda Forward
Naslov: Odg: Kapija
Poruka od: Bašovski poslato Jun 17, 2017, 00:18:14 PRE PODNE
Citat: Robertoo_Salgadoo poslato Jun 17, 2017, 00:01:46 PRE PODNE
[pawn]if(newkeys & KEY_YES)
    {
         if(IsPlayerInRangeOfPoint(playerid, 3.0, 980, 1812.85522, -2071.76001, 13.75786))
        {
        MoveDynamicObject(kapijatrb,980, 1812.77161, -2062.55542, 13.74290, 2.00);
        ZalediOdlediTimer[playerid] = SetTimer("Kapije", 7000, 0);
        }
    }[/pawn]

[pawn]Evo cmd i ono kad stisnes da se otvori

forward kapijatrb();
public kapijatrb()
{
    MoveDynamicObject(kapijatrb, 980, 1812.85522, -2071.76001, 13.75786, 2.0);
    return 1;
}[/pawn]

Onda Forward
sta je ovdje problem? zamjeni KEY_CTRL_BACK sa KEY_YES i ubaci provjeru ispred ovih bracketa:
[pawn]if( IsPlayerInVehicle( playerid, GetPlayerVehicleID( playerid ) ) ) {[/pawn]

[pawn]if(newkeys & KEY_YES) {
   if( IsPlayerInVehicle( playerid, GetPlayerVehicleID( playerid ) ) ) {
       {
            if(IsPlayerInRangeOfPoint(playerid, 3.0, 980, 1812.85522, -2071.76001, 13.75786))
           {
           MoveDynamicObject(kapijatrb,980, 1812.77161, -2062.55542, 13.74290, 2.00);
           ZalediOdlediTimer[playerid] = SetTimer("Kapije", 7000, 0);
           }
       }
   }[/pawn]
Naslov: Odg: Kapija
Poruka od: Robertoo_Salgadoo poslato Jun 17, 2017, 00:40:52 PRE PODNE
Sad nema erora ali ne radi
kada idem ig ne pomera se
Naslov: Odg: Kapija
Poruka od: Bašovski poslato Jun 17, 2017, 08:26:49 PRE PODNE
Citat: Robertoo_Salgadoo poslato Jun 17, 2017, 00:40:52 PRE PODNE
Sad nema erora ali ne radi
kada idem ig ne pomera se
Vjerovatno su to koordinate kapije kada je zatvorena...
Naslov: Odg: Kapija
Poruka od: Slade poslato Jun 17, 2017, 17:09:06 POSLE PODNE
Pokusaj ovako

[pawn]if(newkeys & KEY_YES) {
            if(IsPlayerInRangeOfPoint(playerid, 3.0, 1812.85522, -2071.76001, 13.75786))
           {
           MoveDynamicObject(kapijatrb,980, 1812.77161, -2062.55542, 13.74290, 2.00);
           SetTimer("zatvaranjekapijetrb", 5000, 0); // 5000 - 5 sekundi - zatvaranje kapije
           }
   }[/pawn]

[pawn]forward zatvaranjekapijetrb();
public zatvaranjekapijetrb()
{
    MoveDynamicObject(kapijatrb, 980, 1812.85522, -2071.76001, 13.75786, 2.0);
    return 1;
}[/pawn]
Naslov: Odg: Kapija
Poruka od: Tosic ツ poslato Jun 18, 2017, 00:19:55 PRE PODNE
[pawn]
MoveDynamicObject(promenljiva, idobjekta, X, Y,Z, BRZINA);
[/pawn]
Takodje koristis proveru IsPlayerInRangeOfPoint i tajmer :)
Naslov: Odg: Kapija
Poruka od: Robertoo_Salgadoo poslato Jun 19, 2017, 23:36:04 POSLE PODNE
A kako da namalim da se malo sporije otvara
Naslov: Odg: Kapija
Poruka od: Napaceni Bošnjo poslato Jun 19, 2017, 23:59:53 POSLE PODNE
ovako ovaj zadnji kod ovdje ovo 2.0
[pawn]MoveDynamicObject(kapijatrb,980, 1812.77161, -2062.55542, 13.74290, //->to tu 2.00);[/pawn]

ako oces sporije stavis 1 ako oces jos sporije stavis 0.5 ja msm da more tak al ne vjerujem