#include <a_samp>#include \"../include/gl_common.inc\"forward PosUp(playerid);forward Bezar();new Kapu;new nyitva;new bez;public OnFilterScriptInit(){print(\"\\n-Kapu Script-\\n\");Kapu = CreateObject(980, 1643.5, -1715.19995, 16.4, 0, 0, 90);return 1;}public OnPlayerSpawn(playerid){SetTimerEx(\"PosUp\", 3000, true, \"i\", playerid);} public OnPlayerCommandText(playerid, cmdtext[]){new cmd[256];new idx;cmd = strtok(cmdtext, idx);if(strcmp(\"/parkolohelp\", cmd, true) == 0){SendClientMessage(playerid,-1,\"Parkoló: Állj oda a kocsival az ajtó elé, ha van pénzed kinyílik\");}return 0;}public PosUp(playerid){new Float:x, Float:y, Float:z;GetPlayerPos(playerid,x,y,z);if(IsPlayerInRangeOfPoint(playerid,6.0,1643.5, -1715.19995, 16.4)){ if(nyitva == 1) return 0; if(!IsPlayerInAnyVehicle(playerid)) return 0; if(GetPlayerMoney(playerid) >= 300) { MoveObject(Kapu,1643.5, -1715.19995, 6.4,3); GivePlayerMoney(playerid,-300); nyitva = 1; bez = SetTimerEx(\"Bezar\", 7000, true, \"i\"); SendClientMessage(playerid,-1,\"Parkold le az autódat de ne a kapu mellé\"); } else return SendClientMessage(playerid,-1,\"300$ Kell a kinyitásához\");}return 1;}public Bezar(){MoveObject(Kapu,1643.5, -1715.19995, 16.4,3);KillTimer(bez);nyitva = 0;return 1;}
#include a_sampnew Kapu, nyitva = 0, bez;public OnFilterScriptInit(){Kapu = CreateObject(980, 1643.5, -1715.19995, 16.4, 0.0, 0.0, 0.0, 90);return 1;}public OnFilterScriptExit(){DestroyObject(Kapu);nyitva = 0;return 1;}public OnPlayerCommandText(playerid, cmdtext[]){if(!strcmp(\"/parkolohelp\", cmdtext, true)) return SendClientMessage(playerid, -1, \"Parkoló: Állj oda a kocsival az ajtó elé, ha van pénzed kinyílik!\");return 0;}public OnPlayerUpdate(playerid){new Float: p[3];GetPlayerPos(playerid, p[0], p[1], p[2]);if(IsPlayerInRangeOfPoint(playerid, 6.0, 1643.5, -1715.19995, 16.4)){ if(!IsPlayerInAnyVehicle(playerid)) return 0; if(nyitva == 1) return 0; if(GetPlayerMoney(playerid) >= 300) { MoveObject(Kapu, 1643.5, -1715.19995, 6.4, 3.0); GivePlayerMoney(playerid, GetPlayerMoney(playerid) - 300); nyitva = 1; bez = SetTimer(\"Bezar\", 7000, false); SendClientMessage(playerid, -1, \"Parkold le az autódat, de ne a kapu mellé!\"); } else SendClientMessage(playerid, -1, \"300$ Kell a kinyitásához\");}return 1;}public Bezar();public Bezar(){MoveObject(Kapu, 1643.5, -1715.19995, 16.4, 3.0);KillTimer(bez);nyitva = 0;return 1;}
forward Close();
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys){ if(PRESSED(KEY_HANDBRAKE)) { if(IsPlayerInRangeOfPoint(sugár, x,y,z)) { if(IsPlayerInAnyVehicle(playerid)) { new penz; penz = GetPlayerMoney(playerid); if(penz>=[szám]) return SendClientMessage(playerid, 0xFFFFFF, \"Nincs elég pénzed.\"); { MoveObject(objectid, x, y, z, sebesség,x(forgás),y(forgás),z(forgás)); SetTimer(\"Close\", [idõ], false); SendClientMessage(playerid, 0xFFFFFF, \"Üdv. a parkolóban!\"); } } } } return 1;}
public Close(){ MoveObject(objectid, x, y, z, sebesség,x(forgás),y(forgás),z(forgás)); return 1;}
CMD:open(playerid, params[]){ if(IsPlayerInRangeOfPoint(sugár, x,y,z)) { MoveObject(objectid, x, y, z, sebesség,x(forgás),y(forgás),z(forgás)); SetTimer(\"Close\", [idõ], false); SendClientMessage(playerid, 0xFFFFFF, \"Üdv. a parkolóban!\"); } return 1;}
Én azt mondom hogy az egészet tedd be úgy hogy a SPACE gomb megnyomásával kinyíljon a kaputehát: forward Close(); public OnPlayerKeyStateChange(playerid, newkeys, oldkeys){ if(PRESSED(KEY_HANDBRAKE)) { if(IsPlayerInRangeOfPoint(sugár, x,y,z)) { if(IsPlayerInAnyVehicle(playerid)) { new penz; penz = GetPlayerMoney(playerid); if(penz>=[szám]) return SendClientMessage(playerid, 0xFFFFFF, \"Nincs elég pénzed.\"); { MoveObject(objectid, x, y, z, sebesség,x(forgás),y(forgás),z(forgás)); SetTimer(\"Close\", [idõ], false); SendClientMessage(playerid, 0xFFFFFF, \"Üdv. a parkolóban!\"); } } } } return 1;} public Close(){ MoveObject(objectid, x, y, z, sebesség,x(forgás),y(forgás),z(forgás)); return 1;} És egy gyalogos command mert a \"KEY_HANDBRAKE\" csak kocsiban mûködik: CMD:open(playerid, params[]){ if(IsPlayerInRangeOfPoint(sugár, x,y,z)) { MoveObject(objectid, x, y, z, sebesség,x(forgás),y(forgás),z(forgás)); SetTimer(\"Close\", [idõ], false); SendClientMessage(playerid, 0xFFFFFF, \"Üdv. a parkolóban!\"); } return 1;} Nem teljesen önmûködõ de legalább az OnPlayerUpdate bizonytalanságát kikerültük