Rank System not working.
#1

I just threw together myself a rank system that goes by how much money you have when you spawn. But its telling me I'm a lower rank than I really am, I gave myself $2500 (minimum ammount for second rank) but its teling me I'm still the first class..

Here's onplayerspawn: (you'll notice I only put it under one team incase something like this happend :P)
Код:
public OnPlayerSpawn(playerid)
{
	if (gTeam[playerid] == TEAM_TOURIST)
{
  SetPlayerTeam(playerid, TEAM_TOURIST);
  	SetPlayerColor(playerid, COLOR_YELLOWGREEN);
  	if(GetPlayerMoney(playerid) >= -1) {
  	SendClientMessage(playerid,COLOR_LIGHTGREEN,"You've spawned as a Private");
  	return 1;
  	}
  	else if(GetPlayerMoney(playerid) >= 2499) {
	SendClientMessage(playerid,COLOR_LIGHTGREEN,"You've spawned as a Private First Class");
	return 1;
	}
	else if(GetPlayerMoney(playerid) >= 4999) {
	SendClientMessage(playerid,COLOR_LIGHTGREEN,"You've spawned as a Corporal");
	return 1;
	}
	else if(GetPlayerMoney(playerid) >= 7499) {
	SendClientMessage(playerid,COLOR_LIGHTGREEN,"You've spawned as a Sergeant");
	return 1;
	}
	else if(GetPlayerMoney(playerid) >= 19999) {
	SendClientMessage(playerid,COLOR_LIGHTGREEN,"You've Spawned as a General");
	return 1;
	}
}
	else if (gTeam[playerid] == TEAM_HOBOS)
{
  SetPlayerTeam(playerid, TEAM_HOBOS);
  SetPlayerColor(playerid, COLOR_DARKRED);

}
	else if (gTeam[playerid] == TEAM_NAVY)
{
  SetPlayerTeam(playerid, TEAM_NAVY);
  SetPlayerColor(playerid, COLOR_DARKGREEN);
}
	else if (gTeam[playerid] == TEAM_POLICE)
{
  SetPlayerTeam(playerid, TEAM_POLICE);
  SetPlayerColor(playerid, COLOR_NAVY);
}
	else if (gTeam[playerid] == TEAM_TRIAD)
{
  SetPlayerTeam(playerid, TEAM_TRIAD);
  SetPlayerColor(playerid, COLOR_DARKORANGE);
}
	else if (gTeam[playerid] == TEAM_MAFIA)
{
  SetPlayerTeam(playerid, TEAM_MAFIA);
  SetPlayerColor(playerid, COLOR_MAGENTA);
}
	else if (gTeam[playerid] == TEAM_AIR)
{
	SetPlayerTeam(playerid, TEAM_AIR);
	SetPlayerColor(playerid,COLOR_LIGHTBLUE);
}
	return 1;
}
Reply
#2

Try this.

pawn Код:
public OnPlayerSpawn(playerid)
{
    switch(gTeam[playerid])
    {
      case TEAM_HOBOS:
      {
            SetPlayerTeam(playerid, TEAM_HOBOS);
            SetPlayerColor(playerid, COLOR_DARKRED);
      }
      case TEAM_NAVY:
      {
            SetPlayerTeam(playerid, TEAM_NAVY);
            SetPlayerColor(playerid, COLOR_DARKGREEN);
      }
      case TEAM_POLICE:
      {
            SetPlayerTeam(playerid, TEAM_POLICE);
            SetPlayerColor(playerid, COLOR_NAVY);
      }
      case TEAM_TRIAD:
      {
            SetPlayerTeam(playerid, TEAM_TRIAD);
            SetPlayerColor(playerid, COLOR_DARKORANGE);
      }
      case TEAM_MAFIA:
      {
            SetPlayerTeam(playerid, TEAM_MAFIA);
            SetPlayerColor(playerid, COLOR_MAGENTA);
      }
      case TEAM_AIR:
      {
            SetPlayerTeam(playerid, TEAM_AIR);
            SetPlayerColor(playerid,COLOR_LIGHTBLUE);
      }
      case TEAM_TOURIST:
      {
            SetPlayerTeam(playerid, TEAM_TOURIST);
            SetPlayerColor(playerid, COLOR_YELLOWGREEN);
      }
    }
   
    new money = GetPlayerMoney(playerid);
    if(money <= 0)
        return SendClientMessage(playerid,COLOR_LIGHTGREEN,"You've spawned as a Private");
    if(money <= 2500)
        return SendClientMessage(playerid,COLOR_LIGHTGREEN,"You've spawned as a Private First Class");
    if(money <= 5000)
        return SendClientMessage(playerid,COLOR_LIGHTGREEN,"You've spawned as a Corporal");
    if(money <= 7500)
        return SendClientMessage(playerid,COLOR_LIGHTGREEN,"You've spawned as a Sergeant");
    if(money >= 20000)
        return SendClientMessage(playerid,COLOR_LIGHTGREEN,"You've Spawned as a General");
}
Reply
#3

Yeah, but I need to also assign certain weapons to each team to each rank, thats why I did that the way I did it :P
Reply
#4

Bump
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)