06.03.2017, 18:08
Hello guys! so there is a problem in my script when a player get spawned or killed and when he spawns his money is getting increased not decreased can someone tell me what the causes of it?
public OnPlayerSpawn(playerid)
{
if(GetPlayerTeam(playerid) == TEAM_COPS)
{
SetPlayerColor(playerid, 0x0000FFFF);
SetPlayerHealth(playerid, 100);
SetPlayerPos(playerid, -1616.7162,681.8493,7.1875);
SendClientMessage(playerid, 0xf8f8f8fff, "-SpawnInfo- {Ffffff}You been spawned as {000375}Cop! {FFFFFF}Type {000375}/pcmds {FFFFFF}to get Police's Commands.");
SendClientMessage(playerid, 0xf8f8f8fff, "-Info- {Ffffff}Go get some freaking {3af75b}Racers!");
GivePlayerWeapon(playerid, 24, 500);
GivePlayerWeapon(playerid, 25, 500);
GivePlayerWeapon(playerid, 28, 500);
}
else if(GetPlayerTeam(playerid) == TEAM_RACERS)
{
SetPlayerColor(playerid, 0x800000FF);
SetPlayerHealth(playerid, 100);
SetPlayerPos(playerid, -2634.1814,1360.3250,9.0281);
SendClientMessage(playerid, 0xf8f8f8fff, "-SpawnInfo- {Ffffff}You been spawned as {3af75b}Racer! {FFFFFF}Type {000375}/rcmds {FFFFFF}to get Robber's Commands.");
SendClientMessage(playerid, 0xf8f8f8fff, "-Info- {Ffffff}Go get some freaking {000375}Cops!");
GivePlayerWeapon(playerid, 24,500);
GivePlayerWeapon(playerid, 28,500);
GivePlayerWeapon(playerid, 20,500);
}
if(GetPlayerTeam(playerid) == TEAM_VIP)
{
if(PlayerInfo[playerid][pVIP] >= 1)
{
SetPlayerColor(playerid, 0x00FFFFFF);
SetPlayerArmour(playerid, 100);
SetPlayerHealth(playerid, 100);
SetPlayerPos(playerid, -1495.7765,919.8442,7.1875);
SendClientMessage(playerid, 0xf8f8f8fff, "-SpawnInfo- {Ffffff}You been spawned as {00CED1}V.I.P! {FFFFFF}Type {00CED1}/vipcmds {FFFFFF}to get V.I.P's Commands.");
SendClientMessage(playerid, 0xf8f8f8fff, "-Info- {Ffffff}Go get some freaking {3af75b}Racers {FFFFFF}And {000375}Cops!");
GivePlayerWeapon(playerid, 24, 500);
GivePlayerWeapon(playerid, 26, 500);
GivePlayerWeapon(playerid, 28, 500);
GivePlayerWeapon(playerid, 34, 500);
}
else
{
SendClientMessage(playerid, 0xf8f8f8fff,"ERROR: {FFFFFF}You can't spawn as VIP, if you didn't Donate to the server! Type /kill + F4 to change your Class!");
}
}
TextDrawShowForPlayer(playerid, Textdraw0);
TextDrawShowForPlayer(playerid, Textdraw1);
TextDrawShowForPlayer(playerid, Textdraw2);
TextDrawShowForPlayer(playerid, Textdraw3);
TextDrawShowForPlayer(playerid, Textdraw6);
TextDrawShowForPlayer(playerid, Textdraw7);
TextDrawShowForPlayer(playerid, Textdraw5);
TextDrawShowForPlayer(playerid, Textdraw4[playerid]);
TextDrawShowForPlayer(playerid, Textdraw8[playerid]);
TextDrawShowForPlayer(playerid, Textdraw9[playerid]);
TextDrawShowForPlayer(playerid, Textdraw10[playerid]);
TextDrawShowForPlayer(playerid, Textdraw11[playerid]);
TextDrawShowForPlayer(playerid, Textdraw12[playerid]);
TextDrawShowForPlayer(playerid, Textdraw13);
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
if ( killerid != INVALID_PLAYER_ID ) // If the killerid are NOT an invalid player
{ // Then
new string[250]; new name[MAX_PLAYER_NAME]; new kname[MAX_PLAYER_NAME]; new weapon[128];
GetPlayerName(playerid, name,sizeof(name));
GetPlayerName(killerid, kname,sizeof(kname));
GetWeaponName(reason, weapon,sizeof(weapon));
if ( GetPlayerTeam( killerid ) == GetPlayerTeam( playerid ) ) // If killerid's team == playerid's team ( who has been killed )
{ // Then
SetPlayerHealth( killerid, 0 ); // Kills the killer ( Setting the health to -1 ).
GameTextForPlayer(killerid, "!~R~TEAM-KILLING ~W~Isn't Allowed!",30000,6); // Sends a message to the killer with a white colour ( -1 ), with the message " No teamkilling. ".
GivePlayerMoney( killerid, -5000 ); // Take $5000 from the killerid, because teamkilling,
}
else // Another team killed the player
{
GameTextForPlayer(killerid, "!~R~NICE SHOT ~G~ $2000$ ~B~ +3SCORES!~W~!",3000,3); // Sends a message to the killer with a white colour ( -1 ) with the message "Nice Shot! ".
format(string,sizeof(string),"-DM- {F00f00}%s(%i) {ffffff}has killed {ff0ff0}%s(%i) {FFFFFF}and got {f44f44}3+ Scores {FFFFFF}& 2XP!",kname,killerid,name,playerid);
SendClientMessageToAll(0xf8f8f8fff,string);
GivePlayerMoney(killerid, 2000);
SetPlayerScore(killerid,GetPlayerScore(killerid)+3);
PlayerInfo[killerid][pKills] += 1;
PlayerInfo[playerid][pDeaths] += 1;
PlayerInfo[killerid][pXP] += 2;
PlayerInfo[killerid][pScore] += 3;
PlayerInfo[killerid][pCash] += 2000;
}
}
SendDeathMessage( killerid, playerid, reason );
return 1;
}