Szerző Téma: Korházba spawnolás!  (Megtekintve 609 alkalommal)

Korházba spawnolás!
« Dátum: 2015. szeptember 06. - 12:49:09 »
0 Show voters
Sziasztok azt hogyan lehetne megcsinálni hogyha valaki meghal azt egy adott interirorba spawnolja,nálam a korházba és levonja a korházi költséget?
« Utoljára szerkesztve: 2015. szeptember 10. - 19:15:55 írta Szabi9 »

Korházba spawnolás!
« Válasz #1 Dátum: 2015. szeptember 06. - 18:36:15 »
0 Show voters
Pénz levonás:
GivePlayerMoney(playerid, -100); // ez 100 $-t fog levonni
Én úgy csinálnám, hogy amikor meghal, akkor egy változóba beállítja, hogy meghalt,  és amikor lespawnol akkor leellenőrzi, hogy meghalt-e, és ha igen, akkor betegye a kórházba.

Korházba spawnolás!
« Válasz #2 Dátum: 2015. szeptember 10. - 16:41:11 »
0 Show voters
Szia!! :) :) én így oldottam meg :) :)
 

forward NoKorhaz(playerid);//Ezt tedd pl: a NoKorhaz callback elé (én a mod elejére szoktam rakni)
stock IsKorhazban(playerid)// ezt akárhova írhatod (én a mod végére szoktam rakni)
{
if(pInfo[playerid][pKorhaz] > 0) // ez azt csinálja,hogy lekérdezi hogy a pKorhaz nagyobbe 0-nál
    return 1;
else
    return 0;
}
enum pAdat// Ez tárolja el hogy kórházban van (relog miatt jól jön!!)
{
      pKorhaz,//ezt tedd oda ahol tárolja a játékos adatait!!!!
};
 
// Ez a random spawnoláshoz kell én így szeretem és nem egyhejre dobja őket
new Float:KorhazSpawn[1][3] =
{
{1571.9646,-1809.2296,13.3828}
};//Ha több koordinitát adsz meg akkor írd át ezt KorhazSpawn[1](ugye egy koordináta van megadva!)és ha pl 3- van
// akkor így kell kinézni KorhazSpawn[3](TIPP!! ha nem tudod ;) :) )
public OnPlayerDeath(playerid, killerid, reason)// ugye ha meghal akkor mit csináljon
{
pInfo[playerid][pKorhaz] = 1;// ez az mentésnél a pKorhazat 1-re állítja
return 1;
}
 
// ugye ha meghal akkor respawnol!
public OnPlayerSpawn(playerid)
{
    // ez azt csinálja ha a pKorhaz érték nagyobb mint 0 akkor berakja a kórházban spawnolja
if(IsKorhazban(playerid))// ez a stock amit láttál, hogy lekérdezi nagyobbe 0-nál, ha nagyobb akkor ide spawnolja
{
Msg(playerid,ZOLD\"Mivel meghaltál így a koróházban ébredtél!\");// meghalt és lespawnolt így küldtünk neki egy üzenetet
new rand = random(sizeof(KorhazSpawn));// a rand szónak a hosszóságát beállítjuk a kórházspawn értékre (koordinitákra)
SetPlayerInterior(playerid,12): //ezt te állítsd be én random számot írtam
SetPlayerVirtualWorld(playerid,12); //ezt te állítsd be én random számot írtam
SetPlayerPos(playerid, KorhazSpawn[rand][0], KorhazSpawn[rand][1],KorhazSpawn[rand][2]);//ez ugye random kiválasztja a KorhazSpawn változóbol egy koordinátát
SetTimerEx(\"NoKorhaz\", 6000, 0, \"i\", playerid);// Milyen CallBackot hívjon meg | Mennyi idő múlva hívja meg | Ismétlődés (0 = nem ismétlődik | 1 =ismétlődés) \"i\"(passz :D) | playerid ugye a játékosnak
// ez a timer hogy mikor engedje ki  playert a kórházból
// 6000 az 6 másodperc
// 1000 mili sec 1 másodperc
// ezt neked kell beállítani hogy mennyi időre tegye be
}
// ha nem nagyobb, ugye 0 akkor arra a koordinátára spawnolja ahol kilépett
 
// EZ CSAK AKKOR KELL HA MENTI A POZÍCIÓT HA KILÉP DE EZT TE TUDOD HOGY HOGY VAN MEGCSINÁLVA!!
// EZ CSAK AKKOR KELL HA MENTI A POZÍCIÓT HA KILÉP DE EZT TE TUDOD HOGY HOGY VAN MEGCSINÁLVA!!
/*else
{
if(Regisztralva[playerid] == 1)
{
   SetPlayerPos(playerid, pInfo[ playerid ][ spawnx ] , pInfo[ playerid ][ spawny ] , pInfo[ playerid ][ spawnz ]);
   SetPlayerVirtualWorld(playerid, 0);
   SetPlayerInterior(playerid, 0);
   Nevekki(playerid);
}
}*/
return 1;
}
public NoKorhaz(playerid)// ez amit megfog hívni a timer
{
pInfo[playerid][pKorhaz] = 0;// it a kórház értéket vissza állítjuk 0-ra mert felépült
SetPlayerPos(playerid, 1479.7136,-1739.9442,13.5469);//ez azt csinálja ha felépül hova spawnolja
SetPlayerInterior(playerid, 0);//interiort beállítjuk 0-a
SetPlayerVirtualWorld(playerid, 0)// VirtualWorld-ot szintén 0-a állítjuk
Msg(playerid,-1,\"Felépültél!\");// és végül küldönk neki egy üzenetet hogy felépült
return 1;
}

 
Remélem érthető volt és tudtam segíteni :)

Korházba spawnolás!
« Válasz #3 Dátum: 2015. szeptember 10. - 19:11:35 »
0 Show voters
Koszi tema megoldva

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal