Skripta koju koristim: 4CRP
Detaljan opis problema: Kako da stavim kada doniram 100k na banderu i naprimer 10 igraca oko nje da dobiju po 10k.Ili njih 100 pored xD dobiju po 1k ako se donira 100k kako to ?
Dio skripte:
ovako sam stavi da se podeli
new banderamoney = moneys / MAX_PLAYERS;
Komentar:
//na vrh
forward bandera();
//kraj skripte
public bandera()
{
foreach(Player, i)
{
if(IsPlayerInRangeOfPoint(i, 5.0, koordinate))
{
GivePlayerMoney(i, 10000);
}
}
return 1;
}
i u komandi samo stavis ovako bandera();
Ali to je da svi oko 5m dobiju po 10k a ja to necu ako shvatas ocu da svi u blizini oko 5m naprimer ima ih 20 a nako donira 100k i da dobiju svi po 5k da se 100k podeli na 20 igraca ravnomerno ili 25 igraca da se podeli ravnomerno.
onda u komand stavis novac igraca podeljeno sa igracima u okolini, i onda posaljes novac
Bleaks malo pazljivije citaj ja to i hocu ali nzm kako ja sam stavio da se novac podeli ako ako ima 1 igrac u okolini a ja doniram 100k on dobije 1k a ako ima 2 igraca 2k.
posalji mi komandu
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
if(strcmp(cmd, "/bandera", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(!IsPlayerInRangeOfPoint(playerid, 3,1134.5807,-935.7620,44.0378)) return SCM(playerid, COLOR_GRAD1, "Nisi kod bandere!");
if(PlayerInfo[playerid][pLevel] < 5)
{
SCM(playerid, COLOR_GREY, "Moras biti Level 6 da bi donirao!");
return 1;
}
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SCM(playerid, COLOR_GRAD1, "Koristi: /bandera [money]");
return 1;
}
if(PlayerInfo[playerid][pLocal] == 106)
{
SCM(playerid, COLOR_GRAD1, "Komanda nije dozvoljena na ovoj lokaciji");
return 1;
}
moneys = strval(tmp);
if(moneys < 100000)
{
SCM(playerid, COLOR_GRAD1, "Morate imati minimum $100.000");
return 1;
}
if(GetPlayerMoney(playerid) < moneys)
{
SCM(playerid, COLOR_GRAD1, "Nemate toliko novca.");
return 1;
}
GivePlayerMoney(playerid, -moneys);
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "%s je donirao Banderi Srece sumu od $%d.",sendername, moneys);
SCMToAll(COLOR_GRAD2, string);
PayLog(string);
format(string, sizeof(string), "Bandera rece se aktivirala i deli pare igracima pored nje.");
SCMToAll(TEAM_BLUE_COLOR, string);
foreach(Player, i)
{
new pcount;
new banderamoney = moneys / MAX_PLAYERS;
if(IsPlayerInRangeOfPoint(i,10,1134.5807,-935.7620,44.0378))
{
pcount ++;
GivePlayerMoney(i, banderamoney);
SCM(i, COLOR_GRAD2, "Dokle ces vise da gledas u mene !?");
format(string, sizeof(string), "~r~Dokle ~b~ces ~Y~vise ~g~da ~r~gledas ~b~u mene !?");
GameTextForPlayer(i, string, 5000, 0);
}
}
}
return 1;
}
BUMP!
if(strcmp(cmd, "/bandera", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(!IsPlayerInRangeOfPoint(playerid, 3,1134.5807,-935.7620,44.0378)) return SCM(playerid, COLOR_GRAD1, "Nisi kod bandere!");
if(PlayerInfo[playerid][pLevel] < 5)
{
SCM(playerid, COLOR_GREY, "Moras biti Level 6 da bi donirao!");
return 1;
}
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SCM(playerid, COLOR_GRAD1, "Koristi: /bandera [money]");
return 1;
}
if(PlayerInfo[playerid][pLocal] == 106)
{
SCM(playerid, COLOR_GRAD1, "Komanda nije dozvoljena na ovoj lokaciji");
return 1;
}
moneys = strval(tmp);
if(moneys < 100000)
{
SCM(playerid, COLOR_GRAD1, "Morate imati minimum $100.000");
return 1;
}
if(GetPlayerMoney(playerid) < moneys)
{
SCM(playerid, COLOR_GRAD1, "Nemate toliko novca.");
return 1;
}
GivePlayerMoney(playerid, -moneys);
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "%s je donirao Banderi Srece sumu od $%d.",sendername, moneys);
SCMToAll(COLOR_GRAD2, string);
PayLog(string);
format(string, sizeof(string), "Bandera rece se aktivirala i deli pare igracima pored nje.");
SCMToAll(TEAM_BLUE_COLOR, string);
foreach(Player, i)
{
new pcount;
new banderamoney = moneys / MAX_PLAYERS;
if(IsPlayerInRangeOfPoint(i,10,1134.5807,-935.7620,44.0378))
{
igracikodbandere++;
new banderamoney = moneys / igracikodbandere;
SafeGivePlayerMoney(i, banderamoney);
}
}
}
return 1;
}