SA-MP Forums Archive
Payday help - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+---- Forum: Help Archive (https://sampforum.blast.hk/forumdisplay.php?fid=89)
+---- Thread: Payday help (/showthread.php?tid=114876)



Payday help - wordas - 21.12.2009

Код:
public PayDay()
{
	new string[128];
	new account,interest;
	new rent = 0;
	for(new i = 0; i < MAX_PLAYERS; i++)
	{
		if(IsPlayerConnected(i))
		{
		  if(PlayerInfo[i][pLevel] > 0)
		  {
			  if(MoneyMessage[i]==1)
				{
				  SendClientMessage(i, COLOR_LIGHTRED, "You failed to pay your debt, Jail time.");
				  GameTextForPlayer(i, "~r~Busted!", 2000, 1);
				  SetPlayerInterior(i, 6);
				  PlayerInfo[i][pInt] = 6;
			  	  SetPlayerPos(i, 264.6288,77.5742,1001.0391);
		          PlayerInfo[i][pJailed] = 1;
		          SafeResetPlayerWeapons(i);
		          SafeResetPlayerMoney(i);
				  WantedPoints[i] = 0;
				  PlayerInfo[i][pJailTime] = 240;
				  format(string, sizeof(string), "You are jailed for %d seconds.  Bail:Unable",             PlayerInfo[i][pJailTime]);
					SendClientMessage(i, COLOR_WHITE, string);
				}
				new playername2[MAX_PLAYER_NAME];
				GetPlayerName(i, playername2, sizeof(playername2));
				account = PlayerInfo[i][pAccount];
				new key = PlayerInfo[i][pPhousekey];
				if(key != 255)
				{
					rent = HouseInfo[key][hRent];
					if(strcmp(playername2, HouseInfo[key][hOwner], true) == 0)
					{
						rent = 0;
					}
					else if(rent > GetPlayerMoney(i))
					{
						PlayerInfo[i][pPhousekey] = 255;
						SendClientMessage(i, COLOR_WHITE, "You have been evicted.");
						rent = 0;
					}
					HouseInfo[key][hTakings] = HouseInfo[key][hTakings]+rent;
				}
				new tmpintrate;
				if (key != 255 && strcmp(playername2, HouseInfo[key][hOwner], true) == 0)
				{
				  if(PlayerInfo[i][pDonateRank] > 0) { tmpintrate = intrate+4; }
					else { tmpintrate = intrate+2; }//HouseInfo[key][hLevel]
				}
				else
				{
				  if(PlayerInfo[i][pDonateRank] > 0) { tmpintrate = 3; }
					else { tmpintrate = 1; }
				}
				if(PlayerInfo[i][pPayDay] >= 5)
				{
				  Tax += TaxValue;//Should work for every player online
				  PlayerInfo[i][pAccount] -= TaxValue;
					new checks = PlayerInfo[i][pPayCheck] / 5;
					if(PlayerInfo[i][pDonateRank] > 0)
					{
					  new bonus = PlayerInfo[i][pPayCheck] / 10;
					  checks += bonus;
					}
				  new ebill = (PlayerInfo[i][pAccount]/10000)*(PlayerInfo[i][pLevel]);
				  //ConsumingMoney[i] = 1;
				  //SafeGivePlayerMoney(i, checks);
				  account += checks;
				  if(PlayerInfo[i][pAccount] > 0)
				  {
				  	PlayerInfo[i][pAccount] -= ebill;
				  	SBizzInfo[4][sbTill] += ebill;
					}
					else
					{
					  ebill = 0;
					}
					interest = (PlayerInfo[i][pAccount]/1000)*(tmpintrate);
					PlayerInfo[i][pExp]++;
					PlayerPlayMusic(i);
                    PlayerInfo[i][pAccount] = account+interest;
					SendClientMessage(i, COLOR_GREEN, "|___ BANK STATMENT ___|");
					format(string, sizeof(string), " Paycheck: $%d  Tax Money: -$%d", checks, TaxValue);
					SendClientMessage(i, COLOR_WHITE, string);
					if(PlayerInfo[i][pPhousekey] != 255 || PlayerInfo[i][pPbiskey] != 255)
					{
					  format(string, sizeof(string), " Electricity Bill: -$%d", ebill);
						SendClientMessage(i, COLOR_GRAD1, string);
					}
					if(PlayerInfo[i][pMember] == 1)
					{
                    PlayerInfo[i][pAccount] = account+800;
					}
					format(string, sizeof(string), " Balance: $%d", account - checks);
					SendClientMessage(i, COLOR_WHITE, string);
					format(string, sizeof(string), " Interest Rate: 0.%d percent",tmpintrate);
					SendClientMessage(i, COLOR_GRAD2, string);
					format(string, sizeof(string), " Interest Gained $%d", interest);
					SendClientMessage(i, COLOR_GRAD3, string);
					SendClientMessage(i, COLOR_GREEN, "|--------------------------------------|");
					format(string, sizeof(string), " New Balance: $%d", PlayerInfo[i][pAccount]);
					SendClientMessage(i, COLOR_GRAD5, string);
					format(string, sizeof(string), " Rent: -$%d", rent);
					SendClientMessage(i, COLOR_GRAD5, string);
					format(string, sizeof(string), "~y~PayDay~n~~w~Check paid into your account");
					GameTextForPlayer(i, string, 5000, 1);
					rent = 0;
					PlayerInfo[i][pPayDay] = 0;
					PlayerInfo[i][pPayCheck] = 0;
					PlayerInfo[i][pConnectTime] += 1;
					if(FarmerVar[i] == 0)
					{
						FarmerPickup[i][0] = 0;
					}
					if(DrugFarmerVar[i] == 0)
					{
						DrugFarmerPickup[i][0] = 0;
					}
					if(SmugglerWork[i] == 0)
					{
						PayDaySecure[i] = 0;
					}
					if(PlayerInfo[i][pDonateRank] > 0)
					{
					  PlayerInfo[i][pPayDayHad] += 1;
					  if(PlayerInfo[i][pPayDayHad] >= 5)
					  {
					    PlayerInfo[i][pExp]++;
					    PlayerInfo[i][pPayDayHad] = 0;
					  }
					}
				}
				else
				{
				  SendClientMessage(i, COLOR_WHITE, "* You haven't played long enough to obtain a PayDay.");
				}
			}
		}
	}
	SaveAccounts();
	Checkprop();
	return 1;
}
Ok, heres my code i need to get +800$ cash if the if statment is true

Код:
if(PlayerInfo[i][pMember] == 1)
{
PlayerInfo[i][pAccount] = account+800;
}
Will This Work?


Re: Payday help - wordas - 21.12.2009

anyone?


Re: Payday help - Marcel - 21.12.2009

pawn Код:
if(PlayerInfo[i][pMember] == 1)
{
    PlayerInfo[i][pAccount] = account+800;
    GivePlayerMoney(playerid, 800);
}



Re: Payday help - wordas - 21.12.2009

Quote:
Originally Posted by Marcel
pawn Код:
if(PlayerInfo[i][pMember] == 1)
{
    PlayerInfo[i][pAccount] = account+800;
    GivePlayerMoney(playerid, 800);
}
this will go direcly to players cash but i want it to go to bank account


Re: Payday help - Marcel - 21.12.2009

Then the code you had was correct, if the pAccount variable holds the amount of cash the player has in his/her bank.


Re: Payday help - wordas - 21.12.2009

yes it does thanks


Re: Payday help - LarzI - 21.12.2009

If you think something will work, and you have time and effort to test it, do it before asking if it would work.