new dam_timer[MAX_PLAYERS]; //timer-eknek egy tömbpublic OnPlayerStateChange(playerid, newstate, oldstate) //ha állást vált{if(newstate != PLAYER_STATE_DRIVER) return 0; //ha nem õ a sofõrdam_timer[playerid] = SetTimerEx(\"repair\", 500, true, \"i\", playerid); //elindítja a timert, fél másodpercenként, azaz 500ms-enként fut lereturn 1;}forward repair(playerid);public repair(playerid){SetVehicleHealth(GetPlayerVehicleID(playerid), 1000); //1000 lesz a kocsireturn 1;}public OnPlayerExitVehicle(playerid){KillTimer(dam_timer[playerid]); //kilövi a timertreturn 1;}
Nem teszteltem, de ha hiba van akkor szólj: new dam_timer[MAX_PLAYERS]; //timer-eknek egy tömbpublic OnPlayerStateChange(playerid, newstate, oldstate) //ha állást vált{if(newstate != PLAYER_STATE_DRIVER) return 0; //ha nem õ a sofõrdam_timer[playerid] = SetTimerEx(\"repair\", 500, true, \"i\", playerid); //elindítja a timert, fél másodpercenként, azaz 500ms-enként fut lereturn 1;}forward repair(playerid);public repair(playerid){SetVehicleHealth(GetPlayerVehicleID(playerid), 1000); //1000 lesz a kocsireturn 1;}public OnPlayerExitVehicle(playerid){KillTimer(dam_timer[playerid]); //kilövi a timertreturn 1;} [/quote]én nem pont erre gondoltam de lehet ez kellett neki csak ez a kód nem jó...ha 100x beszáll 1 ember akármilyen jármûbe létrehoz 100 timert ami mindig fut...szóval eléggé terhelné a szervert egy idõ utánhttp://wiki.sa-mp.com/wiki/KillTimerde felesleges játékosonként 1-1 timer inkább ciklust használnék erre
ha elolvasnád ott van a killtimer :facepalm: 1,2 pedig a ciklus az megfagyaszthatja 1-2 másodpercre a szervert ha sok a jármû. [/quote]bocs, tényleg ott van a KillTimer, nem figyeltem nem is a jármûveken kell végig menni :facepalm: itt sem a jármûvekre adtál timert
new dam_timer[MAX_PLAYERS]; //timer-eknek egy tömb public OnPlayerStateChange(playerid, newstate, oldstate) //ha állást vált { if(newstate == PLAYER_STATE_DRIVER){ dam_timer[playerid] = SetTimerEx(\"repair\", 500, true, \"i\", playerid); //elindítja a timert, fél másodpercenként, azaz 500ms-enként fut le } return 1; } forward repair(playerid); public repair(playerid) { SetVehicleHealth(GetPlayerVehicleID(playerid), 1000); //1000 lesz a kocsi return 1; } public OnPlayerExitVehicle(playerid) { KillTimer(dam_timer[playerid]); //kilövi a timert return 1; }
for(new i; i < GetMaxPlayers(); i++){if(GetPlayerState(i) == PLAYER_STATE_DRIVER) { RepairVehicle(GetPlayerVehicle(i)); }}
new i = 1*
public RepairAllPlayerVehicle(){ for(new i; i < GetMaxPlayers(); i++) { if(GetPlayerState(i) == PLAYER_STATE_DRIVER) { RepairVehicle(GetPlayerVehicle(i)); } } return 1;}
SetTimer(\"RepairAllPlayerVehicle\",500,true);
SetTimer(\"RepairAllPlayerVehicle\",500,true); [/quote] new Float:hp;public RepairAllPlayerVehicle(){ for(new i; i < MAX_VEHICLES; i++) { GetVehicleHealth(i,hp); if(hp < 350) SetVehicleHealth(i,350); }} ui: bocs telon nem tudok elrendezest.
new Float:hp;public RepairAllPlayerVehicle(){ for(new i; i < MAX_VEHICLES; i++) { GetVehicleHealth(i,hp); if(hp < 350) SetVehicleHealth(i,350); }}