03.01.2014, 08:40
If i withdraw/deposit/transfer. the reality is a player must be stand at deposit/withdraw/transfer spot. but this not. i can do it everywhere. i hope all of you can help me.
This the code
This the code
Код:
if(strcmp(cmd, "/withdraw", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(BizzInfo[PlayerInfo[playerid][InBusiness]][bType] == 8 || IsPlayerNearBank(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /withdraw [Amount]");
format(string, sizeof(string), " You have $%d in your bank account.", PlayerInfo[playerid][pAccount]);
SendClientMessage(playerid, COLOR_GRAD3, string);
return 1;
}
new cashdeposit = strvalEx(tmp);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /withdraw [Amount]");
format(string, sizeof(string), " You have $%d in your bank account.", PlayerInfo[playerid][pAccount]);
SendClientMessage(playerid, COLOR_GRAD3, string);
return 1;
}
if(cashdeposit > PlayerInfo[playerid][pAccount] || cashdeposit < 1)
{
SendClientMessage(playerid, COLOR_GRAD2, " You don't have that much!");
return 1;
}
if(cashdeposit < 20)
{
SendClientMessage(playerid, COLOR_GREY, "You can only withdraw a minimum of $20!");
return 1;
}
PlayerInfo[playerid][pCash] = PlayerInfo[playerid][pCash]+cashdeposit;
GivePlayerMoney(playerid,cashdeposit);
PlayerInfo[playerid][pAccount] = PlayerInfo[playerid][pAccount]-cashdeposit;
format(string, sizeof(string), " You have withdrawn $%d from your bank account, Total: $%d ", cashdeposit,PlayerInfo[playerid][pAccount]);
SendClientMessage(playerid, COLOR_YELLOW, string);
return 1;
}
}
return 1;
}
Код:
if(strcmp(cmd, "/transfer", true) == 0 || strcmp(cmd, "/wiretransfer", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pLevel] < 3)
{
SendClientMessage(playerid, COLOR_GRAD1, " You must be level 3!");
return 1;
}
if(BizzInfo[PlayerInfo[playerid][InBusiness]][bType] != 8)
{
SendClientMessage(playerid, COLOR_GREY, " You are not at the bank!");
return 1;
}
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /transfer [PlayerID/PartOfName] [amount]");
return 1;
}
giveplayerid = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /transfer [PlayerID/PartOfName] [amount]");
return 1;
}
moneys = strvalEx(tmp);
if(IsPlayerConnected(giveplayerid))
{
if(gPlayerLogged[giveplayerid] == 0)
{
SendClientMessage(playerid, COLOR_GREY, " That player has not logged in!");
return 1;
}
if(giveplayerid == playerid)
{
SendClientMessage(playerid, COLOR_GREY, " You can't transfer money to yourself!");
return 1;
}
if(giveplayerid != INVALID_PLAYER_ID)
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
new playermoney = PlayerInfo[playerid][pAccount] ;
if(moneys > 0 && playermoney >= moneys)
{
PlayerInfo[playerid][pAccount] -= moneys;
PlayerInfo[giveplayerid][pAccount] += moneys;
format(string, sizeof(string), " You have transferred $%d to %s's account.", moneys, giveplayer,giveplayerid);
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
SendClientMessage(playerid, COLOR_GRAD1, string);
format(string, sizeof(string), " You have recieved $%d to into your account from %s", moneys, sendername, playerid);
SendClientMessage(giveplayerid, COLOR_GRAD1, string);
format(string, sizeof(string), "%s transferred $%d to %s", sendername, moneys, giveplayer);
if(moneys >= 500000)
{
ABroadCast(COLOR_YELLOW,string,1);
}
PlayerPlaySound(giveplayerid, 1052, 0.0, 0.0, 0.0);
PayLog(string);
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " Invalid transaction amount!");
}
}
}
else
{
format(string, sizeof(string), " %d is not an active player !", giveplayerid);
SendClientMessage(playerid, COLOR_GRAD1, string);
}
}
return 1;
}
if(strcmp(cmd,"/bankpercent",true)==0)
{
if(IsPlayerConnected(playerid))
{
if(BizzInfo[PlayerInfo[playerid][InBusiness]][bType] != 8)
{
SendClientMessage(playerid, COLOR_GREY, " You are not in a bank!");
return 1;
}
format(string, sizeof(string), "* The Bank Tax is currently %d percent.", BizzInfo[PlayerInfo[playerid][InBusiness]][bPercent]);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
}
return 1;
}
Код:
if(strcmp(cmd, "/deposit", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(BizzInfo[PlayerInfo[playerid][InBusiness]][bType] == 8 || IsPlayerNearBank(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /deposit [Amount]");
format(string, sizeof(string), "You currently have $%d in your Bank Account.", PlayerInfo[playerid][pAccount]);
SendClientMessage(playerid, COLOR_YELLOW, string);
return 1;
}
new cashdeposit = strvalEx(tmp);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /deposit [Amount]");
format(string, sizeof(string), "You currently have $%d in your Bank Account.", PlayerInfo[playerid][pAccount]);
SendClientMessage(playerid, COLOR_YELLOW, string);
return 1;
}
if(cashdeposit > PlayerInfo[playerid][pCash] || cashdeposit < 1)
{
SendClientMessage(playerid, COLOR_GREY, "You don't have that much Money on you.");
return 1;
}
if(cashdeposit < 20)
{
SendClientMessage(playerid, COLOR_GREY, "You can only deposit a minimum of $20!");
return 1;
}
new curfunds = PlayerInfo[playerid][pAccount];
new percent = BizzInfo[PlayerInfo[playerid][InBusiness]][bPercent];
PlayerInfo[playerid][pCash] = PlayerInfo[playerid][pCash]-cashdeposit;
GivePlayerMoney(playerid,-cashdeposit);
PlayerInfo[playerid][pAccount] = PlayerInfo[playerid][pAccount]-cashdeposit*percent/100;
new fee = cashdeposit*percent/100;
PlayerInfo[playerid][pAccount] = cashdeposit+PlayerInfo[playerid][pAccount];
BizzInfo[PlayerInfo[playerid][InBusiness]][bTill] += fee;
SendClientMessage(playerid, COLOR_WHITE, "|___ BANK STATEMENT ___|");
format(string, sizeof(string), " Old Balance: $%d", curfunds);
SendClientMessage(playerid, COLOR_GRAD2, string);
format(string, sizeof(string), " Percent Fee: $%d",fee);
SendClientMessage(playerid, COLOR_GRAD4, string);
format(string, sizeof(string), " Deposit: $%d",cashdeposit);
SendClientMessage(playerid, COLOR_GRAD5, string);
SendClientMessage(playerid, COLOR_GRAD6, "|------------------------------------------|");
format(string, sizeof(string), " New Balance: $%d", PlayerInfo[playerid][pAccount]);
SendClientMessage(playerid, COLOR_WHITE, string);
return 1;
}
}
return 1;
}


