11.10.2012, 03:58
i don't think you can use the team name in SetPlayerTeam.
I did mine like this
then......
not sure about the undefined symbol [MAX_PLAYERS] error, maybe try defining it to the number of slots in your server
I did mine like this
PHP код:
new gTeam[MAX_PLAYERS];
#define TEAM_ClOWNS 0
#define TEAM_HOBOS 1
#define TEAM_ARMY 2
public OnPlayerRequestClass( playerid, classid )
{
switch ( classid ) // This is like a if/elseif statement.
{
case 0: // If the classid is 0
{ // Then
GameTextForPlayer( playerid, "~r~TEAM Clowns", 300, 3 );
SetPlayerPos(playerid,1961.9727,1593.4076,75.7188); //Ok
SetPlayerCameraPos(playerid,1952.6460,1604.4326,74.8940);
SetPlayerCameraLookAt(playerid,1953.5211,1602.3308,74.6773);
gTeam[playerid] = TEAM_ClOWNS;
}
case 1: // If the classid is 1
{ // Then
GameTextForPlayer( playerid, "~g~TEAM Hobos", 300, 3 );
SetPlayerPos(playerid,1961.9727,1593.4076,75.7188); //Ok
SetPlayerCameraPos(playerid,1952.6460,1604.4326,74.8940);
SetPlayerCameraLookAt(playerid,1953.5211,1602.3308,74.6773);
gTeam[playerid] = TEAM_HOBOS;
}
case 2: // If the classid is 2
{ // Then
GameTextForPlayer( playerid, "~g~TEAM Army", 300, 3 );
SetPlayerPos(playerid,1961.9727,1593.4076,75.7188); //Ok
SetPlayerCameraPos(playerid,1952.6460,1604.4326,74.8940);
SetPlayerCameraLookAt(playerid,1953.5211,1602.3308,74.6773);
gTeam[playerid] = TEAM_ARMY;
}
}
return 1;
}
PHP код:
public OnPlayerSpawn(playerid)
{
if(gTeam[playerid] == TEAM_ClOWNS)
{
SetPlayerTeam(playerid, 0);
}
if(gTeam[playerid] == TEAM_HOBOS)
{
SetPlayerTeam(playerid, 1);
}
if(gTeam[playerid] == TEAM_ARMY)
{
SetPlayerTeam(playerid, 2);
}
return 1;
}