Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: Milos25 poslato Mart 01, 2013, 18:39:49 POSLE PODNE

Naslov: [Pomoc] Rent
Poruka od: Milos25 poslato Mart 01, 2013, 18:39:49 POSLE PODNE
Skripta koju koristim: NBE
Detaljan opis problema: Svi koji iznajme bicikli ili skuter niko ih ne vrati pa sam hteo da napravim za bicikli i skuter nesto ovako kao na slici ali nzm kako
Dio skripte:
Neke slike/video za lakse dobivanje pomoci(neobavezno): http://www.zaslike.com/viewer.php?file=35ck693pk1jbqu29gy.png
Naslov: Odg: [Pomoc] Rent
Poruka od: FlasH poslato Mart 01, 2013, 18:55:18 POSLE PODNE
NapraviÅ¡ dialog,timere za svaki odreÄ'eni dio npr. 5,10 ..
Dodaš kada ga renta da mu uzme novac,i u timer koji napraviš da respawna auto i njemu postavi rent na 0.
Naslov: Odg: [Pomoc] Rent
Poruka od: Milos25 poslato Mart 01, 2013, 19:02:13 POSLE PODNE
Lako je tebi reci kad si profi skripter :) ja znam samo da ubacim a da napravim komandu ( Tesko )
Naslov: Odg: [Pomoc] Rent
Poruka od: FlasH poslato Mart 01, 2013, 19:24:20 POSLE PODNE
Ja sam od "profia" daleko,ja trebam još puno raditi da bi znao kao neki ovdje ..
Evo ti jedan dio:


Na vrh:

#define DIALOG_RENT 131

Komanda:

COMMAND:komanda(playerid, params[])
{
    ShowPlayerDialog(playerid, DIALOG_RENT, DIALOG_STYLE_LIST, "Rent", "Rent na 5 minuta - 50 $\nRent na 10 minuta - 100 $\nRent na 15 minuta - 150 $\nRent na 20 minuta - 200 $\nRent na 30 minuta - 300 $\nRent na 60 minuta - 500 $", "Rentaj", "Izlaz");
return 1;
}


Pod,"OnDialogResponse":

       
if(dialogid == DIALOG_RENT)
{
if(response)
{
if(listitem == 0)
{
      SendClientMessage(playerid, TVOJA_BOJA, "Rentao si vozilo na 5 min i platio 50 $,nakon tog vremena ce se respawnati.");
                // Timer itd
}
if(listitem == 1)
{
    SendClientMessage(playerid, TVOJA_BOJA, "Rentao si vozilo na 10 min i platio 100 $,nakon tog vremena ce se respawnati.");
                // Timer itd
}
if(listitem == 2)
{
    SendClientMessage(playerid, TVOJA_BOJA, "Rentao si vozilo na 15 min i platio 150 $,nakon tog vremena ce se respawnati.");
                // Timer itd
}
if(listitem == 3)
{
SendClientMessage(playerid, TVOJA_BOJA, "Rentao si vozilo na 20 min i platio 200 $,nakon tog vremena ce se respawnati.");
                // Timer itd
}
if(listitem == 4)
{
SendClientMessage(playerid, TVOJA_BOJA, "Rentao si vozilo na 30 min i platio 300 $,nakon tog vremena ce se respawnati.");
                // Timer itd
}
if(listitem == 5)
{
    SendClientMessage(playerid, TVOJA_BOJA, "Rentao si vozilo na 60 min i platio 500 $,nakon tog vremena ce se respawnati.");
// Timer itd
}
}
return 1;
}
Naslov: Odg: [Pomoc] Rent
Poruka od: Milos25 poslato Mart 01, 2013, 19:48:25 POSLE PODNE
cek jedna stvar mi nije jasna kako sad da napravim da se vozilo vrati na mesto posle odredjenog vremena i da moze pokrenuti svoje vozilo kada odabere nesto od ponudjenog a da dotada ne moze da pomeri vozilo
Naslov: Odg: [Pomoc] Rent
Poruka od: _HarDy_ poslato Mart 01, 2013, 19:55:09 POSLE PODNE
TogglePlayerControllable(playerid, 1);
U svakom ispod Response ..

a za respawn

SetVehicleToRespawn(Ime vozila[playerid]);


Ovo "ime vozila" tu stavis kako si stavio za rent vozila npr "RentCar" onda stavis (RentCar[playerid])
Naslov: Odg: [Pomoc] Rent
Poruka od: FlasH poslato Mart 01, 2013, 19:56:23 POSLE PODNE
Napraviš te tajmere i u svaki dodaš kod da ga respawna i da igraću postavi ključ renta na 0,tj. da više nema rent vozila.

Kod za respawn:

new carid = GetPlayerVehicleID(playerid);
SetVehicleToRespawn(carid);
Naslov: Odg: [Pomoc] Rent
Poruka od: Milos25 poslato Mart 01, 2013, 22:32:08 POSLE PODNE
Izvinite sto smaram

napravio sam sve i sad mu jos ostalo kad istekne vreme da se vozilo vrati gde mu je mesto i nije mi bas jasno kako to da uradim

Evo naprimer 5 minuta sam nazvo: rentp

I kako ja sad da napravim kada prodje 5 minuta da se vozilo vrati na svoje mesto
Naslov: Odg: [Pomoc] Rent
Poruka od: FlasH poslato Mart 01, 2013, 22:33:21 POSLE PODNE
Pa dao sam ti gore kod ? :(

new carid = GetPlayerVehicleID(playerid);
SetVehicleToRespawn(carid);
Naslov: Odg: [Pomoc] Rent
Poruka od: Milos25 poslato Mart 01, 2013, 22:38:59 POSLE PODNE
video sam ali sta sa tim kako gde ubacim kako to da povezem sa tajmerom ? ( izvini jos jednom )
Naslov: Odg: [Pomoc] Rent
Poruka od: FlasH poslato Mart 01, 2013, 22:39:56 POSLE PODNE
Citat: Milos25 poslato Mart 01, 2013, 22:38:59 POSLE PODNE
video sam ali sta sa tim kako gde ubacim kako to da povezem sa tajmerom ? ( izvini jos jednom )

Pa napraviš public i unutra staviš .. Kada istekne vrijeme od timera da respawna auto ..
Naslov: Odg: [Pomoc] Rent
Poruka od: Milos25 poslato Mart 01, 2013, 22:58:26 POSLE PODNE
Ubacio sam ali dobijam ovaj error

pwn(17174) : warning 202: number of arguments does not match definition

Evo te linije

new carid = GetPlayerVehicleID();

bio sam dobijao i error jer je ovde pisalo ovako: new carid = GetPlayerVehicleID(playerid); dobijao sam zbog playerid probo sam i da stavim "i" i dalje sam imo dok nisam uklonio
Naslov: Odg: [Pomoc] Rent
Poruka od: FlasH poslato Mart 01, 2013, 23:13:43 POSLE PODNE
Primjer:

COMMAND:test(playerid, params[])
{
SetTimer("Testamo",1000,1);
return 1;
}

forward Testamo(playerid);
public Testamo(playerid)
{
new carid = GetPlayerVehicleID(playerid);
SetVehicleToRespawn(carid);
return 1;
}
Naslov: Odg: [Pomoc] Rent
Poruka od: Milos25 poslato Mart 02, 2013, 21:11:46 POSLE PODNE
Izvini sto smaram ( ali mucim se ceo dan i nikako da namestim )

Jel mozes da mi napises sve od pocetka do kraja gde sta ide i kako ( Da bude ovako kao sto sam napiso: Kad neko proba da rent a vec je neko rent da mu pise ( kad istekne vreme da se moze opet rent ))

Izvini jos jednom
Naslov: Odg: [Pomoc] Rent
Poruka od: Milos25 poslato Mart 02, 2013, 22:01:21 POSLE PODNE
Izvinite sto spam

Resio sam problem ali sada imam drugi problem

Kako da namestim kada neko rent vozilo i sidje sa njega da ne mora opet da rent ( cim sidjem i opet sednem opet moram rent )

I kada je neko vec rent da ne moze drugi da rent
Naslov: Odg: [Pomoc] Rent
Poruka od: Milos25 poslato Mart 03, 2013, 15:16:42 POSLE PODNE
Izvinite sto nije proslo 24h ali potrebno mi je hitno

bump
Naslov: Odg: [Pomoc] Rent
Poruka od: FlasH poslato Mart 03, 2013, 15:25:10 POSLE PODNE
foreach (Player, i)
{
if(Varijabla[i] == GetPlayerVehicleID(playerid)) // postavi prema svome GM ovo "Varijabla"
{
SendClientMessage(playerid, TVOJA_BOJA, "Ovo vozilo je netko vec iznajmio");
return 1;
}
}


Ovako probaj ..
Naslov: Odg: [Pomoc] Rent
Poruka od: Milos25 poslato Mart 03, 2013, 17:47:25 POSLE PODNE
cim ustanem i opet sednem opet moram rent ( ako mozete da mi pomognete moram da otvorim srw za 30 min )
Naslov: Odg: [Pomoc] Rent
Poruka od: FlasH poslato Mart 03, 2013, 18:15:26 POSLE PODNE
Citat: Milos25 poslato Mart 03, 2013, 17:47:25 POSLE PODNE
cim ustanem i opet sednem opet moram rent ( ako mozete da mi pomognete moram da otvorim srw za 30 min )

Ovako probaj,ne znam hoće raditi ..
Napraviš provjeru na OnPlayerStateChange ovako npr.


if(newcar >= OVDJE VARIJABLA KAKO TI JE DEFINIRANO VOZILO)
{
if (Varijabla[playerid] != newcar)
{
// Ovdje stavis dialog od renta
// Ovdje stavis da ga freeza
}
}