Search the Community
Showing results for tags 'onplayerkeystatechange'.
-
Zdravím všechny. Dneska jsem na mém serveru něco zkoušel a přišel jsem na chyby. Nevím jestli mám špatně napsaný kód. V OnPlayerKeyStateChange mám detekci pokud hráč stiskl klávesu: if(IsKeyJustDown(KEY_SPRINT,newkeys,oldkeys)) V tomto případě se jedná o mezerník. V této podmínce mám další podmínky na zjištění, jestli je hráč poblíž bodu: například takto: if(IsPlayerInRangeOfPoint(playerid,1.0,1715.7653, -1917.6493, 19.1346)) v teto podmínce pak ukazuji hráči dialog. Zjistil jsem, když stisknu mezerník, tak dialog se normálně zobrazí, ale někdy dojde k bugnutí, že se zobrazí i znovu po zavření a takto neustále dokola se volá. Nevíte čím to může být, popřípadě jde to nějak ošetřit? Přijde mi to dost otravné to zavírat a pomalu se pohybovat. popřípadě můj celý kód: public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) { if(IsKeyJustDown(KEY_SPRINT,newkeys,oldkeys)){//po stisknutí mezerníku if(IsPlayerInRangeOfPoint(playerid,1.0,1692.7938,-1949.8245,14.1172)){//železniční doprava spawn ApplyDynamicActorAnimation(VlakySHerec, "PED", "IDLE_CHAT",4.1,0,0,0,0,0); ShowPlayerDialog(playerid,DIALOG_OBSLUHA,DIALOG_STYLE_LIST,"Dopravní obsluha",obsluhatext,"Vybrat","{FF0000}Odejít"); } } } Díky všem kdo mi nějak pomůže
-
Zdravím vás potřebuji menší (větší) help. Vlastně jde o to nastavení Random Akcí přes OnPlayerKeyStateChange A prostě to nejde. Poprosil bych někoho aby mě to sekládal možná jsem mimo že jedu od rána . Co potřebuji narvat do jednoho ? new pozice = random(4); switch(pozice) { case 0: SetPlayerPos(playerid,1,2,3); case 1: SetPlayerPos(playerid,1,2,3); case 2: SetPlayerPos(playerid,1,2,3); case 3: SetPlayerPos(playerid,1,2,3); } + public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) { if(newkeys == KEY_WALK){ if(IsPlayerInSphere(playerid,1,2,3, 3) == 1){ } } + COMMAND:go(playerid, params[]) { #pragma unused params if(Utecem[playerid]) return SendClientMessage(playerid,COLOR_ADMIN,"{FFA500}[ INFORMACE ] {FFFFFF}Tuto Akci mužeš provést až za 2 minuty. !"); SetTimerEx("Utek",120000,false,"i",playerid);Utecem[playerid] = true;]; return 1; } Níže uvidíte zbytek Kodu pro Přehled Potřebuji to dát pod klávesu Takže prostě tyhle 3 věci potřebuji nějak chytře narvat do jednoho. Kdyby někdo udělal jako Tut byl bych vděčný rád bych to nějak pochopil Samostatně to udělám v pohodě ale když mám toto narvat do jednoho tak : 26 Erroru není pěknej pohled Zbytek kodu pro zlepšení přehledu: //Proměna new Utecem [MAX_PLAYERS]; //Spawn Utecem [playerid] = false; Public forward Utek (playerid);public Utek(playerid){ Utecem[playerid] = false; SendClientMessage(playerid,COLOR_ZELENA,"{FFA500}[ INFORMACE ] Příkaz mužeš se znovu pokusit o útěk"); return 1; } Doufám že jsem to podal zřetelně a někdo to chápe Prosím nejlepe KOD z Tutorialem
-
Zdar mám takový problém nevím jestli je jen u mě nebo je to nějaký bug xka.. v callbacku OnPlayerKeyStateChange if(newkeys == KEY_WALK) { Nemovitosti(); Povolani(); } Nelze uplatnovat klávesu k povoláním dříve než použiju klávesu u nemovitostí. Dělá mi to i když pozice prohodím však opačně.
- 7 odpovědí
-
- 0.3x
- onplayerkeystatechange
-
(a 1 další)
Tagged with: