|
Originally Posted by Weirdosport
When you say drop do you just mean disappear?
|
|
Originally Posted by Annihalation
you'd need to make a timer and every time the timer goes off (timer would be set to 5000 for 5 seconds) you would GivePlayerMoney as -10000
but I dont understand why you would want them to randomly lose 10k dollars every 5 seconds... |
//Top
new bool:Set[200];
new Timer[200];
///OnGameModeInit
SetTimer("CheckCash", 2000, true);
//somewhere
forward CheckCash();
public CheckCash()
{
for(new i=0; i < GetMaxPlayers(); i++) if(IsPlayerConnected(i) && GetPlayerMoney(i) >= 1000000)
{
if(!Set[i])
{
Set[i] = true;
Timer[i] = SetTimerEx("GetCash", 5000, 1, "d", i);
}
}
return 1;
}
forward GetCash(playerid);
public GetCash(playerid)
{
if(!GetPlayerMoney(playerid)) // if moneys == 0, timer stop
{
KillTimer(Timer[playerid]);
Timer[playerid] = 0;
Set[playerid] = false;
return 1;
}
//if(GetPlayerMoney(playerid) < 1000000) Set[playerid] = false;
GivePlayerMoney(playerid, -10000);
SendClientMessage(playerid, 0xFFFF00AA, "SERVER: You have dropped 10k Please deposit your money");
return 1;
}
|
Originally Posted by Jefff
Maybe something like this?
Код:
//Top
new bool:Set[200];
new Timer[200];
///OnGameModeInit
SetTimer("CheckCash", 2000, true);
//somewhere
forward CheckCash();
public CheckCash()
{
for(new i=0; i < GetMaxPlayers(); i++) if(IsPlayerConnected(i) && GetPlayerMoney(i) >= 1000000)
{
if(!Set[i])
{
Set[i] = true;
Timer[i] = SetTimerEx("GetCash", 5000, 1, "d", i);
}
}
return 1;
}
forward GetCash(playerid);
public GetCash(playerid)
{
if(!GetPlayerMoney(playerid)) // if moneys == 0, timer stop
{
KillTimer(Timer[playerid]);
Timer[playerid] = 0;
Set[playerid] = false;
return 1;
}
//if(GetPlayerMoney(playerid) < 1000000) Set[playerid] = false;
GivePlayerMoney(playerid, -10000);
SendClientMessage(playerid, 0xFFFF00AA, "SERVER: You have dropped 10k Please deposit your money");
return 1;
}
|