[UNSOLVED] Spawn and Death bug?
#1

We have one bug?

One player killing two player >> Two player got 0% health >> Two player dont die >> Two player like falling (animation) in foot with 0% health>> One Player trying killing Two player, to die, but cant >> Admin slapping two player >> Two player will spawning.

Is that bug?
Or?

Код:
public OnPlayerSpawn(playerid)
{
  switch(gClass[playerid])
  {
    case 0:
    {
      SetPlayerColor(playerid, 0xcc0000ff); // Red
      new rand = random(sizeof(gTeamUSA));
      SetPlayerPos(playerid, gTeamUSA[rand][0],gTeamUSA[rand][1],gTeamUSA[rand][2]);
      PlayerInfo[playerid][pTeam] = 1;
      SetPlayerInterior(playerid,0);
    }
    case 1:
    {
      SetPlayerColor(playerid, 0x000099ff); // Blue
      new rand = random(sizeof(gTeamEstonia));
      SetPlayerPos(playerid, gTeamEstonia[rand][0],gTeamEstonia[rand][1],gTeamEstonia[rand][2]);
      PlayerInfo[playerid][pTeam] = 2;
      SetPlayerInterior(playerid,0);
    }
		case 2:
    {
      SetPlayerColor(playerid, 0x009900ff); // Green
      new rand = random(sizeof(gTeamGerman));
      SetPlayerPos(playerid, gTeamGerman[rand][0],gTeamGerman[rand][1],gTeamGerman[rand][2]);
      PlayerInfo[playerid][pTeam] = 3;
      SetPlayerInterior(playerid,0);
    }
    case 3:
    {
      SetPlayerColor(playerid, 0xffffffff); // White
      new rand = random(sizeof(gTeamRussia));
      SetPlayerPos(playerid, gTeamRussia[rand][0],gTeamRussia[rand][1],gTeamRussia[rand][2]);
      PlayerInfo[playerid][pTeam] = 4;
      SetPlayerInterior(playerid,0);
    }
  }
	return 1;
}
Код:
public OnPlayerDeath(playerid, killerid, reason)
{
  if(PlayerInfo[killerid][pTeam] == PlayerInfo[playerid][pTeam])
  {
    new string[256];
  	new killername[MAX_PLAYER_NAME];
		GetPlayerName(killerid, killername, sizeof(killername));
		format(string, sizeof(string), "[ADMCMD] %s have been kicked by Anti-Teamkill, reason: Teamkilling", killername);
  	SendClientMessageToAll(COLOR_LIGHTRED, string);
		PlayerInfo[killerid][pKills] --;
		Kick(killerid);
  	return 1;
  }
	SendDeathMessage(killerid, playerid, reason);
	PlayerInfo[killerid][pKills] ++;
	PlayerInfo[playerid][pDeaths] ++;
	SetPlayerScore(killerid, GetPlayerScore(killerid) + 1);
	RankChecker(killerid);
	GivePlayerMoney(killerid, 550);
	GivePlayerMoney(playerid, -150);
	return 1;
}
Reply
#2

Show your RankChecker(). Since pawn is single threaded, that function may hold everything back. Else its just lag
Reply
#3

Код:
public RankChecker(killerid)
{
	if(PlayerInfo[killerid][pKills] < 0) { PlayerInfo[killerid][pRank] = 0; }
  else if(PlayerInfo[killerid][pKills] < 50) { PlayerInfo[killerid][pRank] = 1; }
 	else if(PlayerInfo[killerid][pKills] < 100) { PlayerInfo[killerid][pRank] = 2; }
 	else if(PlayerInfo[killerid][pKills] < 200) { PlayerInfo[killerid][pRank] = 3; }
 	else if(PlayerInfo[killerid][pKills] < 300) { PlayerInfo[killerid][pRank] = 4; }
 	else if(PlayerInfo[killerid][pKills] < 400) { PlayerInfo[killerid][pRank] = 5; }
 	else if(PlayerInfo[killerid][pKills] < 500) { PlayerInfo[killerid][pRank] = 6; }
 	else if(PlayerInfo[killerid][pKills] < 600) { PlayerInfo[killerid][pRank] = 7; }
	return 1;
}
Reply
#4

bump.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)