[AJUDA] Sistema de detetive sem checkpoint . . . -
lucas_mdr1235 - 13.11.2011
ONPLAYERCONNECT
PHP код:
SetPlayerToTeamColor(playerid);
COMANDO
PHP код:
if(strcmp(cmd, "/rastrear", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pEmprego] != 1)
{
SendClientMessage(playerid, COLOR_GREY, "Voce nao e detetive !");
return 1;
}
if(UsedFind[playerid] != 0 && PlayerInfo[playerid][pDetSkill] < 401)
{
SendClientMessage(playerid, COLOR_GREY, "Voce so pode procurar novamente, daqui 2 Minutos !");
return 1;
}
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USE: /rastrear [ id ]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
new points;
new level = PlayerInfo[playerid][pDetSkill];
if(level >= 0 && level <= 50)
{ points = 8; }
else if(level >= 51 && level <= 100)
{ points = 12; }
else if(level >= 101 && level <= 200)
{ points = 16; }
else if(level >= 201 && level <= 400)
{ points = 20; }
else if(level >= 401)
{ points = 300; }
GetPlayerName(giveplayerid, sendername, sizeof(sendername));
format(string, sizeof(string), "*** %s - Foi encontrado pelo satйlite. A pessoa foi marcada no MAPA.", sendername);
SetPlayerMarkerForPlayer( playerid, giveplayerid, ( GetPlayerColor( giveplayerid ) | 0x000000FF ) );
SendClientMessage(playerid, COLOR_WARNING, string);
FindTime[playerid] = 1;
FindTimePoints[playerid] = points;
PlayerInfo[playerid][pDetSkill] ++;
UsedFind[playerid] = 1;
if(PlayerInfo[playerid][pDetSkill] == 50)
{ SendClientMessage(playerid, COLOR_YELLOW, "* Seu nivel de detetive agora й 2, Voce pode procurar mais rapido e encontrar mais rapido."); }
else if(PlayerInfo[playerid][pDetSkill] == 100)
{ SendClientMessage(playerid, COLOR_YELLOW, "* Seu nivel de detetive agora й 3, Voce pode procurar mais rapido e encontrar mais rapido."); }
else if(PlayerInfo[playerid][pDetSkill] == 200)
{ SendClientMessage(playerid, COLOR_YELLOW, "* Seu nivel de detetive agora й 4, Voce pode procurar mais rapido e encontrar mais rapido."); }
else if(PlayerInfo[playerid][pDetSkill] == 400)
{ SendClientMessage(playerid, COLOR_YELLOW, "* Seu nivel de detetive agora й 5, Voce pode procurar mais rapido e encontrar mais rapido."); }
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, "Invalido NICK/ID !");
}
}
return 1;
}
SETPLAYERTOTEAMCOLOR
PHP код:
public SetPlayerToTeamColor(playerid)
{
if (PlayerInfo[playerid][pEquipe] == 3)//Civis
{
SetPlayerColor(playerid, COLOR_WHITE);
}
else if(PlayerInfo[playerid][pHTrabalhar] == 1)
{
SetPlayerColor(playerid, COLOR_HELPER);
}
else if(PlayerInfo[playerid][pATrabalhar] == 1 && PlayerInfo[playerid][pAdmInvisivel] != 1)
{
SetPlayerColor(playerid, COLOR_ADMIN);
}
else if (PlayerInfo[playerid][pMembro] == 1 || PlayerInfo[playerid][pLider] == 1)
{
SetPlayerColor(playerid, COLOR_COP);
}
else if (PlayerInfo[playerid][pMembro] == 2 || PlayerInfo[playerid][pLider] == 2)
{
SetPlayerColor(playerid, COLOR_EXERCITO);
}
else if (PlayerInfo[playerid][pMembro] == 3 || PlayerInfo[playerid][pLider] == 3)
{
SetPlayerColor(playerid, COLOR_COP);
}
else if (PlayerInfo[playerid][pMembro] == 4 || PlayerInfo[playerid][pLider] == 4)
{
SetPlayerColor(playerid, COLOR_COP);
}
else if (PlayerInfo[playerid][pMembro] == 5 || PlayerInfo[playerid][pLider] == 5)
{
SetPlayerColor(playerid, COLOR_COP);
}
else if (PlayerInfo[playerid][pMembro] == 6 || PlayerInfo[playerid][pLider] == 6)
{
SetPlayerColor(playerid, COLOR_SALMOM);
}
else if (PlayerInfo[playerid][pMembro] == 7 || PlayerInfo[playerid][pLider] == 7)
{
SetPlayerColor(playerid, COLOR_LIGHTRED);
}
else if (PlayerInfo[playerid][pMembro] == 8 || PlayerInfo[playerid][pLider] == 8)
{
SetPlayerColor(playerid, COLOR_DRIFT);
}
else if (PlayerInfo[playerid][pMembro] == 9 || PlayerInfo[playerid][pLider] == 9)
{
SetPlayerColor(playerid, COLOR_ASSASSINOS);
}
else if (PlayerInfo[playerid][pMembro] == 10 || PlayerInfo[playerid][pLider] == 10)
{
SetPlayerColor(playerid, COLOR_ASSASSINOS1);
}
else if (PlayerInfo[playerid][pMembro] == 11 || PlayerInfo[playerid][pLider] == 11)
{
SetPlayerColor(playerid, COLOR_TAXI);
}
else if (PlayerInfo[playerid][pMembro] == 12 || PlayerInfo[playerid][pLider] == 12)
{
SetPlayerColor(playerid, COLOR_REPORTER);
}
else if (PlayerInfo[playerid][pMembro] == 13 || PlayerInfo[playerid][pLider] == 13)
{
SetPlayerColor(playerid, COLOR_ALQAEDA);
}
else if (PlayerInfo[playerid][pMembro] == 14 || PlayerInfo[playerid][pLider] == 14)
{
SetPlayerColor(playerid, COLOR_TALIBAN);
}
else if (PlayerInfo[playerid][pMembro] == 15 || PlayerInfo[playerid][pLider] == 15)
{
SetPlayerColor(playerid, COLOR_GROOVE);
}
else if (PlayerInfo[playerid][pMembro] == 16 || PlayerInfo[playerid][pLider] == 16)
{
SetPlayerColor(playerid, COLOR_VAGOS);
}
else if (PlayerInfo[playerid][pMembro] == 17 || PlayerInfo[playerid][pLider] == 17)
{
SetPlayerColor(playerid, COLOR_BALLAS);
}
else if (PlayerInfo[playerid][pMembro] == 18 || PlayerInfo[playerid][pLider] == 18)
{
SetPlayerColor(playerid, COLOR_PCC);
}
else if (PlayerInfo[playerid][pMembro] == 19 || PlayerInfo[playerid][pLider] == 19)
{
SetPlayerColor(playerid, COLOR_CV);
}
else if (PlayerInfo[playerid][pMembro] == 20 || PlayerInfo[playerid][pLider] == 20)
{
SetPlayerColor(playerid, COLOR_AZTECAS);
}
SetPlayerMarkerForPlayer( playerid, playerid, ( GetPlayerColor( playerid ) & 0xFFFFFF00 ) );
}
PHP код:
if(FindTime[i] > 0)
{
if(FindTime[i] == FindTimePoints[i]) { FindTime[i] = 0; FindTimePoints[i] = 0; SetPlayerMarkerForPlayer( i, i, ( GetPlayerColor( i ) & 0xFFFFFF00 ) ); PlayerPlaySound(i, 1056, 0.0, 0.0, 0.0); GameTextForPlayer(i, "~r~RedMarker gone", 2500, 1); }
else
{
format(string, sizeof(string), "%d", FindTimePoints[i] - FindTime[i]);
GameTextForPlayer(i, string, 1500, 6);
FindTime[i] += 1;
}
}
o problema que o servidor e rpg e quando player ta logando ta marcando ele no mapa e uso um sistem de cores para org como resolver esse problema
Re: [AJUDA] Sistema de detetive sem checkpoint . . . -
Pharrel - 13.11.2011
pawn Код:
//OnPlayerConnect
SetPlayerColor(playerid, 0xFFFFFF00);
//quando logar
SetPlayerToTeamColor(playerid);