Szerző Téma: lefagyasztás/megállítás  (Megtekintve 1039 alkalommal)

lefagyasztás/megállítás
« Dátum: 2013. július 14. - 03:23:22 »
+1 Show voters
Hellotok lenne egy nagyon alap,vagy nem biztos hogy nagyon alap kérdésem!
Hogy tudom a játékost x idõre lefagyasztani?

Nem elérhető FBI

lefagyasztás/megállítás
« Válasz #1 Dátum: 2013. július 14. - 03:36:36 »
+1 Show voters
Szerintem ezek kellenek hozzá:

TogglePlayerControllable(playerid, 0); = Ezzel lefagyasztjuk a játékost.


SetTimer = Ezzel megadjuk hogy a játékos mennyi ideig legyen lefagyasztva.


Wikis linkek:


TogglePlayerControllable:
http://wiki.sa-mp.com/wiki/Function:TogglePlayerControllable

SetTimer:
http://wiki.sa-mp.com/wiki/SetTimer


lefagyasztás/megállítás
« Válasz #2 Dátum: 2013. július 14. - 09:17:14 »
+1 Show voters
Egyszerû példa:
 
CMD:freeze(playerid, params[])
{
new targetid, ido;
if(sscanf(params, \"ui\", targetid, ido)) return SendClientMessage(playerid, -1, \"Használat: /freeze [JátékosID] [idõ(mp)]\");
TogglePlayerControllable(targetid, 0)
SetTimerEx(\"UnsetFreeze\", ido*1000, false, \"i\", targetid); // ido*1000 = másodpercek | ido*1000*60 = percek
}
public UnsetFreeze(playerid)
{
Toggleplayercontrollable(playerid, 1);
}

lefagyasztás/megállítás
« Válasz #3 Dátum: 2013. július 14. - 10:27:49 »
+1 Show voters
köszönöm a válaszaitokat:!
 
SetTimerEx(\"UnsetFreeze\", 2000, false, \"i\", targetid);//akkor 1000/s?és utána megint tud majd mozogni?:D UnsetFreeze  ez mi?:|

Nem elérhető FBI

lefagyasztás/megállítás
« Válasz #4 Dátum: 2013. július 14. - 10:53:43 »
+1 Show voters
Idézetet írta: rcsbakos2 date=1373790469\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"39742\" data-ipsquote-contentclass=\"forums_Topic
köszönöm a válaszaitokat:!
 
SetTimerEx(\"UnsetFreeze\", 2000, false, \"i\", targetid);//akkor 1000/s?és utána megint tud majd mozogni?:D UnsetFreeze  ez mi?:|

 

Szerintem a UnsetFreeze azt jelenti hogyha a játékos beírja újra hogy /freeze akkor felfogja olvasztani a szerver(Már nem lesz lefagyasztva).

Egyébként ha szeretnéd hogy már ne legyen lefagyasztva a játékos akkor:

 
Toggleplayercontrollable(playerid, 1);

 
Itt van 2 példa:

Ha azt szeretnéd hogy a játékos le legyen fagyasztva akkor:

 
CMD:freeze(playerid, params[])
{
SendClientMessage(playerid, COLOR_GREEN, \"Te lelettél fagyasztva!\");
TogglePlayerControllable(targetid, 0)
}

 
Ha azt szeretnéd hogy a játékos már ne legyen lefagyasztva.
 
CMD:unfreeze(playerid, params[])
{
SendClientMessage(playerid, COLOR_GREEN, \"Te már nem vagy lefagyasztva\") // A játékosnak írunk egy üzenetet.
TogglePlayerControllable(targetid, 1)
}

 
Remélem tudtam segíteni!

Üdvözlettel: FBI


OFF: Ha hiba van benne akkor elnézést, kérek mert laptopról írtam, és a laptopon nem mûködnek jól a gombok.

lefagyasztás/megállítás
« Válasz #5 Dátum: 2013. július 14. - 13:18:53 »
0 Show voters
öm nekem nem ez kell:S
Hanem pl.:beül a kocsiba a játékos akkor fagyassza le 2másodpercre és utána automatikusan eltudjon indulni vagyis mozogni tudjon

lefagyasztás/megállítás
« Válasz #6 Dátum: 2013. július 15. - 15:12:54 »
0 Show voters
Kocsiba ülés, és ezután fagyasztás:
 
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
TogglePlayerControllable(playerid, 0); // lefagyasztjuk
SetTimerEx(\"UnsetFreeze\", 2000, false, \"i\", playerid); //elindítunk egy idõítõt
return 1;
}
public UnsetFreeze(playerid)
{
TogglePlayerControllable(playerid, 1);
return 1; // feloldjuk a fagyasztást
}

 
A kódot nem teszteltem.
Ha meg olyan kell, hogy az autó motorja ne induljon csak akkor katt ide.
« Utoljára szerkesztve: 2013. július 15. - 15:17:12 írta dipsnark »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal