//Reparat de DaEdRiC-FoX!!!
//Nu sterge Creditele!!
#include <a_samp>
#include <foreach>
new BigEar[MAX_PLAYERS];
new Diceid[MAX_PLAYERS];
new Dicem[MAX_PLAYERS];
FormatNumber(number)
{
new Str[15];
format(Str, 15, "%d", number);
if (strlen(Str) < sizeof(Str))
{
if (number >= 1000 && number < 10000)
strins( Str, ",", 1, sizeof(Str));
else if (number >= 10000 && number < 100000)
strins(Str, ",", 2, sizeof(Str));
else if (number >= 100000 && number < 1000000)
strins(Str, ",", 3, sizeof(Str));
else if (number >= 1000000 && number < 10000000)
strins(Str, ",", 1, sizeof(Str)),strins(Str, ",", 5, sizeof(Str));
else if (number >= 10000000 && number < 100000000)
strins(Str, ",", 2, sizeof(Str)),strins(Str, ",", 6, sizeof(Str));
else if (number >= 100000000 && number < 1000000000)
strins(Str, ",", 3, sizeof(Str)),strins(Str, ",", 7, sizeof(Str));
else if (number >= 1000000000 && number < 10000000000)
strins(Str, ",", 1, sizeof(Str)),
strins(Str, ",", 5, sizeof(Str)),
strins(Str, ",", 9, sizeof(Str));
else format(Str, 10, "%d", number);
}
else format( Str, 15, "<BUG>" );
return Str;
}
CMD:dice(playerid, params[])
{
if(gPlayerLogged[playerid] == 0) return SendClientMessage(playerid, COLOR_LIGHTRED, "You need to login first.");
if(IsPlayerConnected(playerid))
{
//if(!IsPlayerInRangeOfPoint(playerid, 100, 2016.2699,1017.7790,996.8750)) return SendClientMessage(playerid, COLOR_WHITE,"{FFB870}Nu te afli in casino!"); // Aici daca iei ''//'' poti folosi comanda doar in casino.
new id,money,sendername[25],giveplayer[25],string[184];
if(sscanf(params, "ud",id,money)) return SCM(playerid,COLOR_WHITE,"Syntax: /dice <name/playerid> <Money>");
if(id == INVALID_PLAYER_ID) return SCM(playerid, COLOR_WHITE, "{FFFFCC}Error: Player not connected.");
if(money < 1 || money > 1000000) return SCM(playerid,COLOR_WHITE,"{F05E6C}Limita de bani este de $1,000,000.");
if(IsPlayerConnected(id))
{
if(GetPlayerCash(playerid) < money) return SCM(playerid,COLOR_WHITE,"{FFB870}Nu ai destui bani.");
if(GetPlayerCash(id) < money) return SCM(playerid,COLOR_WHITE,"{FFB870}Acel jucator nu are destui bani.");
if(id == playerid) return SendClientMessage(playerid, COLOR_WHITE, "{FFB870}Nu poti juca.");
if(ProxDetectorS(10.0, playerid, id))
{
GetPlayerName(id, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
SendClientMessage(playerid, COLOR_WHITE, "{F05E6C}Cerere de barbut trimisa");
format(string, sizeof(string), "{F05E6C}%s te-a invitat sa joci barbut cu el pe %s$. Scrie /accept dice %d pentru a juca.",sendername,FormatNumber(money),playerid);
SendClientMessage(id, COLOR_WHITE, string);
Diceid[id] = playerid;
Dicem[id] = money;
}
else return SendClientMessage(playerid, COLOR_WHITE, "{FFFFFF}Acel jucator nu este langa tine.");
}
}
return 1;
}
CMD:accept(playerid, params[])
{
if(gPlayerLogged[playerid] == 0) return SendClientMessage(playerid, COLOR_LIGHTRED, "You need to login first.");
if(IsPlayerConnected(playerid))
{
new x_job[256],id,sendername[25],giveplayer[25],string[300];
if(sscanf(params, "s[256]u",x_job,id))
{
SendClientMessage(playerid, COLOR_WHITE, "Syntax: /accept <Name> <Name/Playerid>");
SendClientMessage(playerid, COLOR_WHITE, "Available names: Dice");
return 1;
}
if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_WHITE, "{FFFFCC}Error: Player not connected.");
if(strcmp(x_job,"dice",true) == 0)
{
//if(!IsPlayerInRangeOfPoint(playerid, 100, 2016.2699,1017.7790,996.8750)) return SendClientMessage(playerid, COLOR_WHITE,"{FFB870}Nu te afli in casino!");
if(Diceid[playerid] == 999) return SCM(playerid,COLOR_WHITE,"{FFFFFF}Nu ai primit nici o cerere de barbut.");
if(Diceid[playerid] != id) return SCM(playerid,COLOR_WHITE,"{FFFFFF}Acel jucator nu te-a invitat sa joci barbut cu el.");
if(GetPlayerCash(playerid) < Dicem[playerid]) return SCM(playerid,COLOR_WHITE,"{FFFFFF}Nu ai destui bani.");
if(GetPlayerCash(id) < Dicem[playerid]) return SCM(playerid,COLOR_WHITE,"{FFB870}Acel jucator nu are destui bani.");
if(ProxDetectorS(10.0, playerid, Diceid[playerid]))
{
new dice1[MAX_PLAYERS],dice2[MAX_PLAYERS],dice3[MAX_PLAYERS],dice4[MAX_PLAYERS];
dice1[playerid] = random(6) + 1;
dice2[Diceid[playerid]] = random (6) + 1;
dice3[playerid] = random (6) + 1;
dice4[Diceid[playerid]] = random (6) + 1;
GetPlayerName(playerid,sendername,sizeof(sendername));
GetPlayerName(Diceid[playerid],giveplayer,sizeof(giveplayer));
if(dice1[playerid] + dice1[playerid] > dice2[Diceid[playerid]] + dice4[Diceid[playerid]])
{
format(string,sizeof(string),"{CA99CE}%s rolls %d %d. %s rolls %d %d. %s won %s$.",sendername,dice1[playerid],dice3[playerid],giveplayer,dice2[Diceid[playerid]],dice4[Diceid[playerid]],sendername,FormatNumber(Dicem[playerid]));
ProxDetector(10.0,playerid, string, COLOR_WHITE,COLOR_WHITE,COLOR_WHITE,COLOR_WHITE,COLOR_WHITE);
format(string, sizeof(string), "{048E24}(-) Ai pierdut $%s!",FormatNumber(Dicem[playerid]));
SendClientMessage(Diceid[playerid], COLOR_WHITE, string);
format(string, sizeof(string), "{048E24}(+) Ai castigat $%s!",FormatNumber(Dicem[playerid]));
SendClientMessage(playerid, COLOR_WHITE, string);
GivePlayerCash(playerid,Dicem[playerid]);
GivePlayerCash(Diceid[playerid],-Dicem[playerid]);
}
if(dice2[Diceid[playerid]] + dice4[Diceid[playerid]] > dice1[playerid] + dice3[playerid])
{
format(string,sizeof(string),"{CA99CE}%s rolls %d %d. %s rolls %d %d. %s won %s$.",giveplayer,dice2[Diceid[playerid]],dice2[Diceid[playerid]],sendername,dice1[playerid],dice3[playerid],giveplayer,FormatNumber(Dicem[playerid]));
ProxDetector(10.0,playerid, string, COLOR_WHITE,COLOR_WHITE,COLOR_WHITE,COLOR_WHITE,COLOR_WHITE);
format(string, sizeof(string), "{048E24}(-) Ai pierdut $%s!",FormatNumber(Dicem[playerid]));
SendClientMessage(playerid, COLOR_WHITE, string);
format(string, sizeof(string), "{048E24}(+) Ai castigat $%s!",FormatNumber(Dicem[playerid]));
SendClientMessage(Diceid[playerid], COLOR_WHITE, string);
GivePlayerCash(playerid,-Dicem[playerid]);
GivePlayerCash(Diceid[playerid],Dicem[playerid]);
}
if(dice2[Diceid[playerid]] + dice4[Diceid[playerid]] == dice1[playerid] + dice3[playerid])
{
format(string,sizeof(string),"{CA99CE}%s rolls %d %d. %s rolls %d %d. No one won.",giveplayer,dice2[Diceid[playerid]],dice4[Diceid[playerid]],sendername,dice1[playerid],dice3[playerid]);
ProxDetector(10.0,playerid, string, COLOR_WHITE,COLOR_WHITE,COLOR_WHITE,COLOR_WHITE,COLOR_WHITE);
}
Update(playerid, pCashx);
Update(Diceid[playerid], pCashx);
Diceid[playerid] = 999;
Dicem[playerid] = 0;
}
else return SendClientMessage(playerid, COLOR_WHITE, "{FFB870}Player is not near you.");
return 1;
}
}
return 1;
}
//Astea sunt in caz de aveti nevoie
forward ProxDetector(Float:radi, playerid, string[],col1,col2,col3,col4,col5);
public ProxDetector(Float:radi, playerid, string[],col1,col2,col3,col4,col5)
{
if(IsPlayerConnected(playerid))
{
new Float:posx, Float:posy, Float:posz;
new Float:oldposx, Float:oldposy, Float:oldposz;
new Float:tempposx, Float:tempposy, Float:tempposz;
GetPlayerPos(playerid, oldposx, oldposy, oldposz);
foreach(Player,i)
{
if(GetPlayerInterior(playerid) == GetPlayerInterior(i) && GetPlayerVirtualWorld(playerid) == GetPlayerVirtualWorld(i))
{
if(!BigEar[i])
{
GetPlayerPos(i, posx, posy, posz);
tempposx = (oldposx -posx);
tempposy = (oldposy -posy);
tempposz = (oldposz -posz);
if (((tempposx < radi/16) && (tempposx > -radi/16)) && ((tempposy < radi/16) && (tempposy > -radi/16)) && ((tempposz < radi/16) && (tempposz > -radi/16)))
{
SendClientMessage(i, col1, string);
}
else if (((tempposx < radi/8) && (tempposx > -radi/8)) && ((tempposy < radi/8) && (tempposy > -radi/8)) && ((tempposz < radi/8) && (tempposz > -radi/8)))
{
SendClientMessage(i, col2, string);
}
else if (((tempposx < radi/4) && (tempposx > -radi/4)) && ((tempposy < radi/4) && (tempposy > -radi/4)) && ((tempposz < radi/4) && (tempposz > -radi/4)))
{
SendClientMessage(i, col3, string);
}
else if (((tempposx < radi/2) && (tempposx > -radi/2)) && ((tempposy < radi/2) && (tempposy > -radi/2)) && ((tempposz < radi/2) && (tempposz > -radi/2)))
{
SendClientMessage(i, col4, string);
}
else if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
{
SendClientMessage(i, col5, string);
}
}
else
{
SendClientMessage(i, col1, string);
}
}
}
}
return 1;
}
forward ProxDetectorS(Float:radi, playerid, targetid);
public ProxDetectorS(Float:radi, playerid, targetid)
{
if(IsPlayerConnected(playerid)&&IsPlayerConnected(targetid))
{
new Float:posx, Float:posy, Float:posz;
new Float:oldposx, Float:oldposy, Float:oldposz;
new Float:tempposx, Float:tempposy, Float:tempposz;
GetPlayerPos(playerid, oldposx, oldposy, oldposz);
GetPlayerPos(targetid, posx, posy, posz);
tempposx = (oldposx -posx);
tempposy = (oldposy -posy);
tempposz = (oldposz -posz);
if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
{
return 1;
}
}
return 0;
}L-am reparat eu, copie tot ce este aici si inlocuieste cu tot ce ai tu acolo.