pLider, pMembro e pCargo
CMD:convidar(playerid, params[])
{
new ID, string[128];
if(PlayerInfo[playerid][pCargo] != 6) return SendClientMessage(playerid, 0xFF6347FF, "[SERVER] Vocк nгo o Lнder de uma Organizaзгo!");
if(sscanf(params, "u", ID)) return SendClientMessage(playerid, CINZA, "[SERVER] USE: /convidar [ID]");
if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, 0xFF6347FF , "[SERVER] Este jogador nгo estб online.");
if(PlayerInfo[ID][pMembro] != CIVIL) return SendClientMessage(playerid, 0xFF6347FF , "[SERVER] Este jogador jб estб em uma Organizaзгo.");
if(playerid == ID) return SendClientMessage(playerid, 0xFF6347FF , "[SERVER] Vocк nгo pode convidar si mesmo.");
format(string, sizeof(string), "[SERVER] Vocк convidou %s para a sua Organizaзгo.", PlayerName(ID));
SendClientMessage(playerid, 0x00BFFFFF , string);
format(string, sizeof(string), "[SERVER] %s estб lhe Convidando para fazer parte da Organizaзгo: %s \nDeseja aceitar?", PlayerName(playerid), NomeORG(playerid)); //Formata um dialog com o nome de que convidou e o nome da organizaзгo
ShowPlayerDialog(ID, DIALOG_CONVITE, DIALOG_STYLE_MSGBOX, "Convite para organizaзгo", string, "Confirmar", "Cancelar");
SetPVarInt(ID, "Convidado", PlayerInfo[playerid][pMembro]);
SetPVarInt(ID, "Convidou", playerid);
Roupa_Farda[0][ID] = false;
Roupa_Farda[1][ID] = false;
PlayerInfo[ID][pSpawn] = 2;
SendClientMessage(ID, %s convidou %s , para sua organizaзгo. Organizaзгo: %s", PlayerName(playerid), PlayerName(ID), NomeORG(playerid));
return true;
}
CMD:promover(playerid, params[])
{
new string[128];
new ID, cargo;
if(PlayerInfo[playerid][pCargo] != 6) return SendClientMessage(playerid, CINZA, "Vocк nгo o Lнder de uma Organizaзгo!");
if(sscanf(params, "ud", ID, cargo)) return SendClientMessage(playerid, CINZA, "USE: /promover [ID] [CARGO]");
if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, 0xFF6347FF , "Este jogador nгo estб online.");
if(PlayerInfo[ID][pMembro] != PlayerInfo[playerid][pMembro]) return SendClientMessage(playerid, 0xFF6347FF , "Este jogador nгo faz parte da sua organizaзгo");
if(playerid == ID) return SendClientMessage(playerid, 0xFF6347FF , "Vocк nгo pode promover a vocк mesmo.");
if(cargo < 1 || cargo > 5) return SendClientMessage(playerid, 0xFF6347FF , "Cargo deve estar entre 1 e 5 || SubLнderes: 444 e 555");
PlayerInfo[ID][pCargo] = cargo;
format(string, sizeof(string), "%s promoveu o membro %s para o Cargo %d.", PlayerName(playerid), PlayerName(ID), cargo);
ChatOrganizacao(PlayerInfo[playerid][pMembro], 0x00BFFFFF , string);
format(string, sizeof(string), "%s te promoveu para o Cargo %d.", PlayerName(playerid), cargo);
SendClientMessage(ID, 0x00BFFFFF , string);
return true;
}
CMD:demitir(playerid, params[])
{
new ID, string[128], Texto[30];
if(PlayerInfo[playerid][pCargo] != 6) return SendClientMessage(playerid, CINZA, "Vocк nгo o Lнder de uma Organizaзгo!");
if(sscanf(params, "us[128]", ID, Texto)) return SendClientMessage(playerid, CINZA, "USE: /demitir [ID] [MOTIVO]");
if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, 0xFF6347FF , "Este jogador nгo estб online.");
if(PlayerInfo[ID][pMembro] != PlayerInfo[playerid][pMembro]) return SendClientMessage(playerid, 0xFF6347FF , "Este jogador nгo й da mesma Organizaзгo que vocк.");
if(playerid == ID) return SendClientMessage(playerid, 0xFF6347FF , "Vocк nгo pode demitir a vocк mesmo.");
PlayerInfo[ID][pMembro] = CIVIL;
PlayerInfo[ID][pCargo] = 0;
format(string, sizeof(string), "%s demitiu o membro %s da Organizaзгo.", PlayerName(playerid),
PlayerName(ID));
ChatOrganizacao(PlayerInfo[playerid][pMembro], 0xFF6347FF , string);
format(string, sizeof(string), "%s te demitiu da Organizaзгo. Motivo: %s.", PlayerName(playerid), Texto);
SendClientMessage(ID, 0xFF6347FF , string);
Skin_Farda[0][ID] = false;
Skin_Farda[1][ID] = false;
PlayerInfo[ID][pSpawn] = 0;
SpawnPlayer(ID);
return true;
}
Lider = Ninguйm
SubLider = Ninguem
SubLider2 = Ninguem
Membro1 = Ninguйm
Membro2 = Ninguйm
Membro3 = Ninguйm
Membro4 = Ninguйm
Membro5 = Ninguйm
Membro6 = Ninguйm
Membro7 = Ninguйm
Membro8 = Ninguйm
Membro9 = Ninguйm
Membro10 = Ninguйm
Membro11 = Ninguйm
Membro12 = Ninguйm
Membro13 = Ninguйm
Membro14 = Ninguйm
Membro15 = Ninguйm
Membro16 = Ninguйm
| userid | orgid | cargo |
53 21 0
12 21 1
1 21 0
----------------------------
cargos:
0-> membro
1-> Lider
---------------------------
orgid:
21->balas
---------------------------
//userid й o id da conta do jogador de seu servidor!
--------------------------
//o resto da tabela vai de acordo com a funcionalidade do seu sistema!
enum ORG_INFO
{
OrgID,
bool:Cargo
}
new PlayerOrg[MAX_PLAYERS][ORG_INFO];
Bom armazenar daquela maneira йs horrenda! estude sobre banco de relacionamentos!
crie tabelas como: PHP код:
crie variantes mais intuitivas, melhoradas e otimizadas como: PHP код:
|
Opa lega, obrigado pelas sacadas, uma pergunta pode me ajudar ir mais a fundo? Tirar algumas duvidas via MP etc? Ou qualquer meio de comunicaзгo que vocк estiver mais apto.
Desde jб agradeзo sua atenзгo cara. Fica com Deus, um forte abraзo. Vlw atй |
Razor Guigo#9812