Van egy parancsom amit óránként egyszer kéne csak engednie.
Eleje:
forward rabolas(playerid);
forward rabolasido(playerid);
Parancs:
CMD:atmrabol(playerid, params[])
{
if(/*IsPlayerInRangeOfPoint(playerid,1.0,2032.0376,1319.3666,10.8203) || IsPlayerInRangeOfPoint(playerid,1.0, 2158.7371,939.8642,10.8203) || IsPlayerInRangeOfPoint(playerid,1.0, 2183.2349,2161.5310,10.8203) || IsPlayerInRangeOfPoint(playerid,1.0,2086.3616,2047.7804,11.0579) || */IsPlayerInRangeOfPoint(playerid,2.0,-1460.46008,2591.58179,55.47830))
{
if((GetTickCount() - atmrabol) < 3600000)
{
new szStr[128],
CurrTick = GetTickCount() - atmrabol;
format(szStr, sizeof(szStr), \"Nemrég használták a parancsot, ahhoz hogy használhasd, várnod kell %.3f másodpercet!\", float(CurrTick / 1000));
cmd_me(playerid, \"kirabolja azt ATM-et.\");
SendClientMessage(playerid,PIROS,\"Sikerült feltörnöd az ATM-et, a pénz a földön szedd össze.\");
TogglePlayerControllable(playerid,0);
SetPVarInt(playerid,\"rabol\",1);
RendorUzenet(PIROS, \"Központ:Minden egységnek figyelem kirabolták ez egyik ATM-et!\");
SetTimerEx(\"rabolas\",15000,0,\"i\",playerid);
atmrabol = GetTickCount();
return 1;
}
}else SendClientMessage(playerid,ZOLD,\"Nem vagy ATM közelében!\");
return 1;
}
Vége:
forward rabolas(playerid);
public rabolas(playerid)
{
pInfo[playerid][pMoney] += 10000;
TogglePlayerControllable(playerid,1);
SendClientMessage(playerid,NARANCS,\"Sikerült ki szedned 10.000$ az ATM-bõl, menekülj el mielött ide érnek a rendõrök!\");
cmd_me(playerid, \"kirabolta az ATM-et.\");
}
forward rabolasido(playerid);
public rabolasido(playerid)
{
SendClientMessage(playerid,ZOLD,\"Le telt az 1 óra újra rabolhatsz ATM-et!\");
SetPVarInt(playerid,\"rabol\",0);
return 1;
}
Õ ennek így kell így jön ki az 1 óra 60*60*1000=1 óra. Nem tudom mért kell 1000-el megszorozni de meg kell nem is az a baja hogy 1 óra után nem tudom kirabolni hanem hogy utána kitudom egybõl.
Ha eltudod készíteni más formában és mûködik az is jó nekem csak mûködjön. óránként lehessen csak!
Ha én beírom hogy /atmrabol akkor utána te se tudd használni 1 óráig meg senki más se.
Kiszedtem a timert rakj bele mûködõt :)
CMD:atmrabol(playerid, params[])
{
if(/*IsPlayerInRangeOfPoint(playerid,1.0,2032.0376,1319.3666,10.8203) || IsPlayerInRangeOfPoint(playerid,1.0, 2158.7371,939.8642,10.8203) || IsPlayerInRangeOfPoint(playerid,1.0, 2183.2349,2161.5310,10.8203) || IsPlayerInRangeOfPoint(playerid,1.0,2086.3616,2047.7804,11.0579) || */IsPlayerInRangeOfPoint(playerid,2.0,-1460.46008,2591.58179,55.47830))
{
cmd_me(playerid, \"kirabolja azt ATM-et.\");
SendClientMessage(playerid,PIROS,\"Sikerült feltörnöd az ATM-et, a pénz a földön szedd össze.\");
TogglePlayerControllable(playerid,0);
SetPVarInt(playerid,\"rabol\",1);
RendorUzenet(PIROS, \"Központ:Minden egységnek figyelem kirabolták ez egyik ATM-et!\");
SetTimerEx(\"rabolas\",15000,0,\"i\",playerid);
return 1;
}
}else SendClientMessage(playerid,ZOLD,\"Nem vagy ATM közelében!\");
return 1;
}
Dupla hozzászólás automatikusan összefûzve. ( 2013. április 19. - 23:14:31 )
Megoldottam.