CMD:liberarfamilia(playerid, params[]) { if (PlayerInfo[playerid][pAdmin] < 3000) return 1; if (!gPlayerLogged[playerid]) return SendClientMessage(playerid, COLOR_GRAD1, " Vocк nгo estб logado !"); new para1; if(sscanf(params, "u", para1)) { SendClientMessage(playerid, COLOR_GRAD1, "USE: /liberarfamilia [ID do Player]"); return true; } GetPlayerName(para1, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); if(IsPlayerConnected(para1)) { if(para1 != INVALID_PLAYER_ID) { new string[128]; format(string, sizeof string, "{FFD700}[Familia VIP] {FFFFFF} Admin %s te deu autorizaзгo para criar uma Famнlia", sendername); SendClientMessage(para1, COLOR_DBLUE, string); PlayerInfo[para1][pFamiliavip] += 1; format(string, sizeof string, "{FFD700}[Familia VIP]: {FFFFFF} Vocк setou 1 mкs de Familia VIP para %s", giveplayer); SendClientMessage(playerid, COLOR_DBLUE, string); } } return true; }
if(strcmp(x_nr,"criar",true) == 0){ if (PlayerInfo[playerid][pAdmin] < 3000) return 1; if (!gPlayerLogged[playerid]) if(PlayerInfo[playerid][pFamiliavip] < 1) { SendClientMessage(playerid, COLOR_GREY, "Vocк nгo tem nenhuma autorizaзгo para criar uma familia compre usando /menuvip"); return true; } PlayerInfo[playerid][pFamiliavip] -= 1; tmp = strtok(params, idx); if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_GRAD1, "USE: /familia Criar [Nome da famнlia]"); createFamilia(playerid, tmp, PlayerName(playerid)); }
Posta o comando inteiro de criar familia e oque tem nesse createFamilia
|
CMD:familia(playerid, params[]){ MEGAString[0] = EOS; new idx, tmp[128], x_nr[76] ; new string[128]; x_nr = strtok(params, idx); if(isnull(x_nr)){ if(PlayerInfo[playerid][pFamiliaLeader] != 1 || PlayerInfo[playerid][pFamiliaSubLeader] != 1) return ForT:familia(playerid, "ajuda"); SendClientMessage(playerid, COLOR_WHITE, "Comandos da familia:"); SendClientMessage(playerid, COLOR_GREY, "/familias /familia /aceitarfamilia /sairfamilia"); SendClientMessage(playerid, COLOR_GREY, "OBS: Para falar no chat da familia, use {FFFFFF}@ [Texto]"); return true; } if(strcmp(x_nr,"ajuda",true) == 0){ strcat(MEGAString, "{1E90FF}Uso correto do comando: {FFFFFF}/familia [Nome]\n\n"); strcat(MEGAString, "{B4B5B7}Nomes disponнveis:\n"); strcat(MEGAString, "{1E90FF}• Ajuda: {B4B5B7}Mostra os comandos da famнlia\n"); strcat(MEGAString, "{1E90FF}• Criar: {B4B5B7}Usado para criar uma famнlia\n"); strcat(MEGAString, "{1E90FF}• DarSub: {B4B5B7}Promove alguйm para sub-lнder\n"); strcat(MEGAString, "{1E90FF}• RetirarSub: {B4B5B7}Remover alguйm de sub-lнder\n"); strcat(MEGAString, "{1E90FF}• Info: {B4B5B7}Usado para ver as informaзхes da famнlia\n"); strcat(MEGAString, "{1E90FF}• Depositar: {B4B5B7}Para depositar dinheiro ao cofre da famнlia\n"); strcat(MEGAString, "{1E90FF}• Sacar: {B4B5B7}Para sacar dinheiro do cofre da famнlia\n"); strcat(MEGAString, "{1E90FF}• Spawn: {B4B5B7}Setar o local de spawn da famнlia\n"); strcat(MEGAString, "{1E90FF}• Carro: {B4B5B7}Usado para comprar um carro para a famнlia\n"); strcat(MEGAString, "{1E90FF}• Convidar: {B4B5B7}Usado para convidar alguйm para a famнlia\n"); strcat(MEGAString, "{1E90FF}• Expulsar: {B4B5B7}Usado para expulsar alguйm da famнlia\n"); strcat(MEGAString, "{1E90FF}• Membros: {B4B5B7}Usado ver todos membros online da famнlia\n"); strcat(MEGAString, "{1E90FF}• Sair: {B4B5B7}Usado para sair da famнlia\n"); strcat(MEGAString, "{1E90FF}• Limpar: {B4B5B7}Usado para limpar a vaga de um membro da famнlia\n"); strcat(MEGAString, "{1E90FF}• Destruir: {B4B5B7}Usado para destruir a famнlia"); ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "Comandos da famнlia", MEGAString, "Fechar", ""); } if(strcmp(x_nr,"sair",true) == 0){ if(PlayerInfo[playerid][pFamiliaID] == 0) return SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo й de um famнlia!"); if(PlayerInfo[playerid][pFamiliaLeader] == 1){ SendClientMessage(playerid, COLOR_LIGHTBLUE, #Vocк saiu da famнlia!); PlayerInfo[playerid][pFamiliaID] = 0; PlayerInfo[playerid][pFamiliaSubLeader] = 0; } return 1; } if(strcmp(x_nr,"criar",true) == 0){ if (PlayerInfo[playerid][pAdmin] < 3000) return 1; if (!gPlayerLogged[playerid]) if(PlayerInfo[playerid][pFamiliavip] < 1) { SendClientMessage(playerid, COLOR_GREY, "Vocк nгo tem nenhuma autorizaзгo para criar uma familia compre usando /menuvip"); return true; } PlayerInfo[playerid][pFamiliavip] -= 1; tmp = strtok(params, idx); if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_GRAD1, "USE: /familia Criar [Nome da famнlia]"); createFamilia(playerid, tmp, PlayerName(playerid)); }
#define DIALOG_FAMILIA_AJUDA 1001
CMD:familia(playerid, params[]) {
new funcao[50], nomefamilia[50];
if(sscanf(params, "s[50]", funcao)) return SendClientMessage(playerid, -1, "[ ERRO ] {FF0000}use: /familia [ajuda - criar - sair]");
if(strfind(funcao, "ajuda", true) != -1) {
FamiliaAjuda(playerid);
}
if(strfind(funcao, "sair", true) != -1) {
if(PlayerInfo[playerid][pFamiliaID] == 0) return SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo й de uma famнlia!");
if(PlayerInfo[playerid][pFamiliaLeader] == 1) {
SendClientMessage(playerid, COLOR_LIGHTBLUE, #Vocк saiu da famнlia!);
PlayerInfo[playerid][pFamiliaID] = 0;
PlayerInfo[playerid][pFamiliaSubLeader] = 0;
}
}
if(strfind(funcao, "criar", true) != -1) {
if(sscanf(params, "s[50]s[50]", funcao, nomefamilia)) return SendClientMessage(playerid, COLOR_GRAD1, "USE: /familia criar [nome da famнlia]");
createFamilia(playerid, nomefamilia, PlayerName(playerid));
}
return 1;
}
stock FamiliaAjuda(playerid) {
new bradoks[1060];
strcat(bradoks, "{FF0000}Comandos\t{ffffff}Informaзхes\n");
strcat(bradoks, "{1E90FF}• Ajuda:\t{B4B5B7}Mostra os comandos da famнlia\n");
strcat(bradoks, "{1E90FF}• Criar:\t{B4B5B7}Usado para criar uma famнlia\n");
strcat(bradoks, "{1E90FF}• DarSub:\t{B4B5B7}Promove alguйm para sub-lнder\n");
strcat(bradoks, "{1E90FF}• RetirarSub:\t{B4B5B7}Remover alguйm de sub-lнder\n");
strcat(bradoks, "{1E90FF}• Info:\t{B4B5B7}Usado para ver as informaзхes da famнlia\n");
strcat(bradoks, "{1E90FF}• Depositar:\t{B4B5B7}Para depositar dinheiro ao cofre da famнlia\n");
strcat(bradoks, "{1E90FF}• Sacar:\t{B4B5B7}Para sacar dinheiro do cofre da famнlia\n");
strcat(bradoks, "{1E90FF}• Spawn:\t{B4B5B7}Setar o local de spawn da famнlia\n");
strcat(bradoks, "{1E90FF}• Carro:\t{B4B5B7}Usado para comprar um carro para a famнlia\n");
strcat(bradoks, "{1E90FF}• Convidar:\t{B4B5B7}Usado para convidar alguйm para a famнlia\n");
strcat(bradoks, "{1E90FF}• Expulsar:\t{B4B5B7}Usado para expulsar alguйm da famнlia\n");
strcat(bradoks, "{1E90FF}• Membros:\t{B4B5B7}Usado ver todos membros online da famнlia\n");
strcat(bradoks, "{1E90FF}• Sair:\t{B4B5B7}Usado para sair da famнlia\n");
strcat(bradoks, "{1E90FF}• Limpar:\t{B4B5B7}Usado para limpar a vaga de um membro da famнlia\n");
strcat(bradoks, "{1E90FF}• Destruir:\t{B4B5B7}Usado para destruir a famнlia");
ShowPlayerDialog(playerid, DIALOG_FAMILIA_AJUDA, DIALOG_STYLE_TABLIST_HEADERS, "{ffffff}Comandos da {FFD700}Familia", bradoks, "Fechar", "");
return 1;
}
Saber resolver sei sim porйm o difнcil й ser VIDENTE, PAI DE SANTO, MANDINGUEIRO ou sei lб.
Apenas re-fiz seu comando pois nгo sei oque tem dentro de createFamilia entгo nгo tem como te ajudar muito. E alйm do mais strcmp com ZCMD й a mais HUSAHUSA |
createFamilia(playerid, familianame[], familialeader[]){ new file[78], Str[78], f = 1 ; while(f < MAX_FAMILIAS){ format(file, sizeof file, "Familias/Familia%d.ini", f); if(!DOF2_FileExists(file)){ DOF2_CreateFile(file); DOF2_SetInt(file, "ID", f); DOF2_SetString(file, "Name", familianame); DOF2_SetString(file, "Leader", familialeader); DOF2_SetString(file, "SubLeader", "Ninguйm"); DOF2_SetFloat(file, "SpawnX", 0); DOF2_SetFloat(file, "SpawnY", 0); DOF2_SetFloat(file, "SpawnZ", 0); DOF2_SetInt(file, "Int", 0); DOF2_SetInt(file, "World", 0); DOF2_SetInt(file, "Money", 0); DOF2_SetInt(file, "Time", gettime() + (1 * 2592000)); DOF2_SetInt(file, "VIP", 0); for(new veh; veh < 5; veh++){ format(Str, 22, "Vehicle%d", veh); DOF2_SetInt(file, Str, 0); format(Str, 22, "VehicleX%d", veh); DOF2_SetFloat(file, Str, 0); format(Str, 22, "VehicleY%d", veh); DOF2_SetFloat(file, Str, 0); format(Str, 22, "VehicleZ%d", veh); DOF2_SetFloat(file, Str, 0); format(Str, 22, "VehicleA%d", veh); DOF2_SetFloat(file, Str, 0); format(Str, 22, "VehicleColor1%d", veh); DOF2_SetInt(file, Str, 0); format(Str, 22, "VehicleColor2%d", veh); DOF2_SetInt(file, Str, 0); } for(new a; a < MAX_MEMBERS; a++){ format(Str, 25, "Membro%d", a); DOF2_SetString(file, Str, "Ninguйm"); } PlayerInfo[playerid][pFamiliaID] = f; PlayerInfo[playerid][pFamiliaLeader] = f; DOF2_SaveFile(); format(Str, sizeof Str, "[FAMНLIA]: {FFFFFF}%s {2641FE}criou a famнlia {FFFFFF}%s.", PlayerName(playerid), familianame); SendClientMessageToAll(COLOR_DBLUE, Str); carregarFamilias(); return 1; } f++; } return 1; }
CMD:familia(playerid, params[]){
MEGAString[0] = EOS;
new idx,
tmp[128],
x_nr[76]
;
new string[128];
x_nr = strtok(params, idx);
if(isnull(x_nr)){
if(PlayerInfo[playerid][pFamiliaLeader] != 1 || PlayerInfo[playerid][pFamiliaSubLeader] != 1)
return ForT:familia(playerid, "ajuda");
SendClientMessage(playerid, COLOR_WHITE, "Comandos da familia:");
SendClientMessage(playerid, COLOR_GREY, "/familias /familia /aceitarfamilia /sairfamilia");
SendClientMessage(playerid, COLOR_GREY, "OBS: Para falar no chat da familia, use {FFFFFF}@ [Texto]");
return true;
}
if(strcmp(x_nr,"ajuda",true) == 0){
strcat(MEGAString, "{1E90FF}Uso correto do comando: {FFFFFF}/familia [Nome]\n\n");
strcat(MEGAString, "{B4B5B7}Nomes disponнveis:\n");
strcat(MEGAString, "{1E90FF}• Ajuda: {B4B5B7}Mostra os comandos da famнlia\n");
strcat(MEGAString, "{1E90FF}• Criar: {B4B5B7}Usado para criar uma famнlia\n");
strcat(MEGAString, "{1E90FF}• DarSub: {B4B5B7}Promove alguйm para sub-lнder\n");
strcat(MEGAString, "{1E90FF}• RetirarSub: {B4B5B7}Remover alguйm de sub-lнder\n");
strcat(MEGAString, "{1E90FF}• Info: {B4B5B7}Usado para ver as informaзхes da famнlia\n");
strcat(MEGAString, "{1E90FF}• Depositar: {B4B5B7}Para depositar dinheiro ao cofre da famнlia\n");
strcat(MEGAString, "{1E90FF}• Sacar: {B4B5B7}Para sacar dinheiro do cofre da famнlia\n");
strcat(MEGAString, "{1E90FF}• Spawn: {B4B5B7}Setar o local de spawn da famнlia\n");
strcat(MEGAString, "{1E90FF}• Carro: {B4B5B7}Usado para comprar um carro para a famнlia\n");
strcat(MEGAString, "{1E90FF}• Convidar: {B4B5B7}Usado para convidar alguйm para a famнlia\n");
strcat(MEGAString, "{1E90FF}• Expulsar: {B4B5B7}Usado para expulsar alguйm da famнlia\n");
strcat(MEGAString, "{1E90FF}• Membros: {B4B5B7}Usado ver todos membros online da famнlia\n");
strcat(MEGAString, "{1E90FF}• Sair: {B4B5B7}Usado para sair da famнlia\n");
strcat(MEGAString, "{1E90FF}• Limpar: {B4B5B7}Usado para limpar a vaga de um membro da famнlia\n");
strcat(MEGAString, "{1E90FF}• Destruir: {B4B5B7}Usado para destruir a famнlia");
ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "Comandos da famнlia", MEGAString, "Fechar", "");
}
if(strcmp(x_nr,"sair",true) == 0){
if(PlayerInfo[playerid][pFamiliaID] == 0)
return SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo й de um famнlia!");
if(PlayerInfo[playerid][pFamiliaLeader] == 1){
SendClientMessage(playerid, COLOR_LIGHTBLUE, #Vocк saiu da famнlia!);
PlayerInfo[playerid][pFamiliaID] = 0;
PlayerInfo[playerid][pFamiliaSubLeader] = 0;
}
return 1;
}
if(strcmp(x_nr,"criar",true) == 0){
if (PlayerInfo[playerid][pAdmin] < 3000) return 1;
if (!gPlayerLogged[playerid])
if(PlayerInfo[playerid][pFamiliavip] < 1)
{
SendClientMessage(playerid, COLOR_GREY, "Vocк nгo tem nenhuma autorizaзгo para criar uma familia compre usando /menuvip");
return true;
}
PlayerInfo[playerid][pFamiliavip] -= 1;
tmp = strtok(params, idx);
if(!strlen(tmp))
return SendClientMessage(playerid, COLOR_GRAD1, "USE: /familia Criar [Nome da famнlia]");
createFamilia(playerid, tmp, PlayerName(playerid));
}
if(strcmp(x_nr,"darsub",true) == 0){
tmp = strtok(params, idx);
if(!strlen(tmp))
return SendClientMessage(playerid, COLOR_GRAD1, "USE: /familia DarSub [playerid]");
if(PlayerInfo[playerid][pFamiliaLeader] == 0)
return SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo й um lнder de uma famнlia!");
new id = strval(tmp);
if(!IsPlayerConnected(id))
return SendClientMessage(playerid, COLOR_GRAD1, "Este jogador nгo estб conectado!");
PlayerInfo[id][pFamiliaSubLeader] = PlayerInfo[playerid][pFamiliaLeader];
for(new i; i < MAX_MEMBERS; ++i){
if(strcmp(PlayerName(id), MemberList[PlayerInfo[playerid][pFamiliaLeader]][i], true) == 0){
// if(PlayerInfo[id][pFamiliaID] == PlayerInfo[playerid][pFamiliaLeader]){
if(strcmp(FamiliaInfo[PlayerInfo[playerid][pFamiliaLeader]][fSubLeader], "Ninguйm", true) == 0){
//if(strcmp(MemberList[PlayerInfo[playerid][pFamiliaLeader]][i], "Ninguйm", false)){
ClearMember(PlayerName(id), PlayerInfo[playerid][pFamiliaLeader]);
new file[78];
format(file, sizeof file, "Familias/Familia%d.ini", PlayerInfo[playerid][pFamiliaLeader]);
format(FamiliaInfo[PlayerInfo[playerid][pFamiliaLeader]][fSubLeader], 25, PlayerName(id));
DOF2_SetString(file, "SubLeader", PlayerName(id));
DOF2_SaveFile();
format(string, 256, "Voce deu sub lider da sua familia para %s", PlayerName(id));
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string, 256, "Voce foi promovido para sub lider da familia %s", FamiliaInfo[PlayerInfo[playerid][pFamiliaLeader]][fName]);
SendClientMessage(id, COLOR_LIGHTBLUE, string);
return 1;
}
else{
SendClientMessage(playerid, -1, #Vocк jб tem um sub-lнder remova-o para promover outro!);
return 1;
}
}
else {
SendClientMessage(playerid, COLOR_GRAD1, "Vocк sу pode dar sub-lнder para membro da sua famнlia!");
return 1;
}
}
//SendClientMessage(playerid, COLOR_GRAD1, "Vocк sу pode dar sub-lнder para membro da sua famнlia!");
return 1;
}
if(strcmp(x_nr,"retirarsub",true) == 0){
tmp = strtok(params, idx);
if(!strlen(tmp))
return SendClientMessage(playerid, COLOR_GRAD1, "USE: /familia retirarsub [playerid]");
if(PlayerInfo[playerid][pFamiliaLeader] == 0)
return SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo й um lнder de uma famнlia!");
new id = strval(tmp);
if(!IsPlayerConnected(id))
return SendClientMessage(playerid, COLOR_GRAD1, "Este jogador nгo estб conectado!");
if(PlayerInfo[id][pFamiliaID] != PlayerInfo[playerid][pFamiliaID])
return SendClientMessage(playerid, COLOR_GRAD1, " Esta pessoa nгo й da sua famнlia.");
if(strcmp(FamiliaInfo[PlayerInfo[playerid][pFamiliaLeader]][fSubLeader], PlayerName(id), true) == 0){
strmid(FamiliaInfo[PlayerInfo[playerid][pFamiliaLeader]][fSubLeader], "Ninguйm", 0, strlen("Ninguйm"), MAX_PLAYER_NAME);
new file[78];
format(file, sizeof file, "Familias/Familia%d.ini", PlayerInfo[playerid][pFamiliaLeader]);
DOF2_SetString(file, "SubLeader", "Ninguйm");
DOF2_SaveFile();
SendClientMessage(playerid, COLOR_LIGHTBLUE, "Voce retirou o sub lider da sua familia");
format(string, 256, "Voce foi retirado de sub lider da familia %s", FamiliaInfo[PlayerInfo[playerid][pFamiliaLeader]][fName]);
SendClientMessage(id, COLOR_LIGHTBLUE, string);
InviteFamilia(PlayerName(id), PlayerInfo[PlayerInfo[playerid][pFamiliaLeader]][pFamiliaID]);
PlayerInfo[id][pFamiliaSubLeader] = 0;
}
else{
SendClientMessage(playerid, COLOR_GRAD1, "Este jogador nгo й Sub-Lнder da sua famнlia");
}
return 1;
}
if(strcmp(x_nr,"info",true) == 0){
ShowInfoFamilia(playerid, PlayerInfo[playerid][pFamiliaID]);
}
if(strcmp(x_nr,"depositar",true) == 0){
tmp = strtok(params, idx);
if(!strval(tmp))
return SendClientMessage(playerid, COLOR_GRAD1, "USE: /familia Depositar [Quantidade]");
if(strval(tmp) > PlayerInfo[playerid][pCash])
return SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo tem essa quantia!");
FamiliaInfo[PlayerInfo[playerid][pFamiliaID]][fMoney] += strval(tmp);
GivePlayerMoney(playerid, -strval(tmp));
format(string, sizeof string, "Vocк depositou $%s no cofre da sua famнlia!", ConvertMoney(strval(tmp)));
SendClientMessage(playerid, COLOR_GRAD1, string);
salvarFamilia(PlayerInfo[playerid][pFamiliaID]);
}
if(strcmp(x_nr,"sacar",true) == 0){
tmp = strtok(params, idx);
if(!strval(tmp))
return SendClientMessage(playerid, COLOR_GRAD1, "USE: /familia Sacar [Quantidade]");
if(PlayerInfo[playerid][pFamiliaLeader] == 0)
return SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo й um lнder de uma famнlia!");
if(strval(tmp) > FamiliaInfo[PlayerInfo[playerid][pFamiliaID]][fMoney])
return SendClientMessage(playerid, COLOR_GRAD1, "Sua famнlia nгo tem tudo isso!");
FamiliaInfo[PlayerInfo[playerid][pFamiliaID]][fMoney] = FamiliaInfo[PlayerInfo[playerid][pFamiliaID]][fMoney]-strval(tmp);
GivePlayerMoney(playerid, strval(tmp));
format(string, sizeof string, "Vocк sacou $%s no cofre da sua famнlia!", ConvertMoney(strval(tmp)));
SendClientMessage(playerid, COLOR_GRAD1, string);
salvarFamilia(PlayerInfo[playerid][pFamiliaID]);
}
if(strcmp(x_nr,"spawn",true) == 0){
new i = PlayerInfo[playerid][pFamiliaLeader];
if(i == 0)
return SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo й um lнder de uma famнlia!");
new Float:X, Float:Y, Float:Z;
GetPlayerPos(playerid, X, Y, Z);
FamiliaInfo[i][fSpawnX] = X;
FamiliaInfo[i][fSpawnY] = Y;
FamiliaInfo[i][fSpawnZ] = Z;
FamiliaInfo[i][fInt] = GetPlayerInterior(playerid);
FamiliaInfo[i][fWorld] = GetPlayerVirtualWorld(playerid);
DestroyDynamicPickup(FamiliaInfo[i][fPickup]);
FamiliaInfo[idx][fPickup] = CreateDynamicPickup(1314, 23, FamiliaInfo[i][fSpawnX], FamiliaInfo[i][fSpawnY], FamiliaInfo[i][fSpawnZ]);
DestroyDynamic3DTextLabel(FamiliaInfo[i][fText]);
format(string, 78, "HQ da famнlia %s", FamiliaInfo[i][fName]);
FamiliaInfo[idx][fText] = CreateDynamic3DTextLabel(string, 0xCD853FFF, FamiliaInfo[i][fSpawnX], FamiliaInfo[i][fSpawnY], FamiliaInfo[i][fSpawnZ], 15.0);
format(string, sizeof string, "Vocк setou o spawn da sua famнlia nas posiзхes X: %f, Y: %f, Z:%f, Interior: %d, World: %d", FamiliaInfo[i][fSpawnX], FamiliaInfo[i][fSpawnY], FamiliaInfo[i][fSpawnZ], FamiliaInfo[i][fInt], FamiliaInfo[i][fWorld]);
SendClientMessage(playerid, 0x1E90FFFF, string);
salvarFamilia(i);
carregarFamilias();
}
if(strcmp(x_nr,"carro",true) == 0){
if(IsPlayerInRangeOfPoint(playerid, 5.0, FamiliaInfo[PlayerInfo[playerid][pFamiliaID]][fSpawnX], FamiliaInfo[PlayerInfo[playerid][pFamiliaID]][fSpawnY], FamiliaInfo[PlayerInfo[playerid][pFamiliaID]][fSpawnZ])){
strcat(MEGAString, "Veiculo\tNome\tCusto da compra/troca\n");
for(new i; i < 5; i++){
new text[25];
if(FamiliaInfo[PlayerInfo[playerid][pFamiliaID]][fVehicle][i] == 0)
text = "Nenhum";
else
format(text, 25, veehName[GetVehicleModel(FamiliaInfo[PlayerInfo[playerid][pFamiliaID]][fVehicle][i])-400]);
format(string, 128, "{1E90FF}Veiculo%d:\t%s\t{33AA33}$100.000\n", i+1, text);
strcat(MEGAString, string);
}
ShowPlayerDialog(playerid, 2510, 5, "Escolha um slot para comprar/trocar de carro", MEGAString, "Selecionar","Fechar");
}
else{
SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo estб proximo a HQ da sua famнlia!");
}
}
if(strcmp(x_nr,"convidar",true) == 0){
tmp = strtok(params, idx);
if(!strlen(tmp))
return SendClientMessage(playerid, COLOR_GRAD1, "USE: /familia Convidar [playerid]");
if(PlayerInfo[playerid][pFamiliaLeader] == 0)
return SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo й um lнder de uma famнlia!");
new id = strval(tmp);
if(PlayerInfo[id][pFamiliaID] > 1 || PlayerInfo[id][pFamiliaLeader] > 1 || PlayerInfo[id][pFamiliaSubLeader] > 1)
return SendClientMessage(playerid, COLOR_GRAD1, " Este jogador jб й membro de uma famнlia.");
if(!IsPlayerConnected(id))
return SendClientMessage(playerid, COLOR_GRAD1, "Este jogador nгo estб conectado!");
format(string, sizeof(string), " Vocк convidou %s para a sua famнlia. Aguarde atй que ele aceite.", PlayerName(id));
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), " Vocк foi convidado por %s para a famнlia %s.", PlayerName(playerid), FamiliaInfo[PlayerInfo[playerid][pFamiliaID]][fName]);
SendClientMessage(id, COLOR_LIGHTBLUE, string);
SendClientMessage(id, COLOR_LIGHTBLUE, "Caso queira aceitar, digite /familia aceitar. Senгo, digite /familia recusar");
InviteOffer2[id] = playerid;
}
if(strcmp(x_nr,"aceitar",true) == 0){
if(PlayerInfo[playerid][pFamiliaID] == 1)
return SendClientMessage(playerid, COLOR_GRAD1, " Vocк jб й de uma famнlia.");
if(InviteOffer2[playerid] == -1)
return SendClientMessage(playerid, COLOR_GRAD1, " Vocк nгo foi convidado para uma famнlia.");
InviteFamilia(PlayerName(playerid), PlayerInfo[InviteOffer2[playerid]][pFamiliaID]);
PlayerInfo[playerid][pFamiliaID] = PlayerInfo[InviteOffer2[playerid]][pFamiliaID];
format(string, sizeof(string), " Vocк aceitou o convite de %s para a famнlia %s. Seja bem vindo.", PlayerName(InviteOffer2[playerid]), FamiliaInfo[PlayerInfo[InviteOffer2[playerid]][pFamiliaID]][fName]);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), " O player %s aceitou o seu convite para participar da sua famнlia.", PlayerName(playerid));
SendClientMessage(InviteOffer2[playerid], COLOR_LIGHTBLUE, string);
InviteOffer2[playerid] = -1;
}
if(strcmp(x_nr,"recusar",true) == 0){
if(InviteOffer2[playerid] == -1)
return SendClientMessage(playerid, COLOR_GRAD1, " Vocк nгo foi convidado para uma famнlia.");
format(string, sizeof string, " O jogador %s recusou o seu convite para a sua famнlia.", PlayerName(playerid));
SendClientMessage(InviteOffer2[playerid], COLOR_LIGHTBLUE, " Vocк recusou o convite para a famнlia.");
SendClientMessage(playerid, COLOR_LIGHTBLUE, " Vocк recusou o convite para a famнlia.");
InviteOffer2[playerid] = -1;
}
if(strcmp(x_nr,"expulsar",true) == 0){
tmp = strtok(params, idx);
if(!strlen(tmp))
return SendClientMessage(playerid, COLOR_GRAD1, "USE: /familia Expulsar [playerid]");
if(PlayerInfo[playerid][pFamiliaLeader] == 0)
return SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo й um lнder de uma famнlia!");
new id = strval(tmp);
if(PlayerInfo[id][pFamiliaID] != PlayerInfo[playerid][pFamiliaID])
return SendClientMessage(playerid, COLOR_GRAD1, " Esta pessoa nгo й da sua famнlia.");
new iString[128];
format(iString, sizeof(iString), " Vocк expulsou %s da sua famнlia.", PlayerName(id));
SendClientMessage(playerid, COLOR_LIGHTBLUE, iString);
format(iString, sizeof(iString), " Vocк foi expulso da famнlia pelo lнder %s.", PlayerName(playerid));
SendClientMessage(id, COLOR_LIGHTBLUE, iString);
PlayerInfo[id][pFamiliaID] = 0;
PlayerInfo[id][pFamiliaSubLeader] = 0;
PlayerInfo[id][pFamiliaLeader] = 0;
ClearMember(PlayerName(id), PlayerInfo[playerid][pFamiliaID]);
}
if(strcmp(x_nr,"membros",true) == 0){
if(PlayerInfo[playerid][pFamiliaID] == 0)
return SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo й de uma famнlia!");
SendClientMessage(playerid, -1, "Membros Online:");
foreach(Player, i){
if(PlayerInfo[i][pFamiliaID] == PlayerInfo[playerid][pFamiliaID]){
new cargo[20];
if(PlayerInfo[i][pFamiliaLeader] > 1)
cargo = "[Lнder]";
else if(PlayerInfo[i][pFamiliaSubLeader] > 1)
cargo = "[Sub-Lнder]";
else cargo = " ";
format(string, sizeof string, "%s %s", PlayerName(i), cargo);
SendClientMessage(playerid, COLOR_GRAD1, string);
}
}
}
return 1;
}
#define MAX_FAMILIAS 500
#define MAX_MEMBERS 50
ID = 1 Name = bradoks Leader = Leonardo_Bradoks SubLeader = Ninguйm SpawnX = 0.00000000 SpawnY = 0.00000000 SpawnZ = 0.00000000 Int = 0 World = 0 Money = 0 Time = 1541387402 VIP = 0 Vehicle0 = 0 VehicleX0 = 0.00000000 VehicleY0 = 0.00000000 VehicleZ0 = 0.00000000 VehicleA0 = 0.00000000 VehicleColor10 = 0 VehicleColor20 = 0 Vehicle1 = 0 VehicleX1 = 0.00000000 VehicleY1 = 0.00000000 VehicleZ1 = 0.00000000 VehicleA1 = 0.00000000 VehicleColor11 = 0 VehicleColor21 = 0 Vehicle2 = 0 VehicleX2 = 0.00000000 VehicleY2 = 0.00000000 VehicleZ2 = 0.00000000 VehicleA2 = 0.00000000 VehicleColor12 = 0 VehicleColor22 = 0 Vehicle3 = 0 VehicleX3 = 0.00000000 VehicleY3 = 0.00000000 VehicleZ3 = 0.00000000 VehicleA3 = 0.00000000 VehicleColor13 = 0 VehicleColor23 = 0 Vehicle4 = 0 VehicleX4 = 0.00000000 VehicleY4 = 0.00000000 VehicleZ4 = 0.00000000 VehicleA4 = 0.00000000 VehicleColor14 = 0 VehicleColor24 = 0 Membro0 = Ninguйm 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 Membro17 = Ninguйm Membro18 = Ninguйm Membro19 = Ninguйm Membro20 = Ninguйm Membro21 = Ninguйm Membro22 = Ninguйm Membro23 = Ninguйm Membro24 = Ninguйm Membro25 = Ninguйm Membro26 = Ninguйm Membro27 = Ninguйm Membro28 = Ninguйm Membro29 = Ninguйm Membro30 = Ninguйm Membro31 = Ninguйm Membro32 = Ninguйm Membro33 = Ninguйm Membro34 = Ninguйm Membro35 = Ninguйm Membro36 = Ninguйm Membro37 = Ninguйm Membro38 = Ninguйm Membro39 = Ninguйm Membro40 = Ninguйm Membro41 = Ninguйm Membro42 = Ninguйm Membro43 = Ninguйm Membro44 = Ninguйm Membro45 = Ninguйm Membro46 = Ninguйm Membro47 = Ninguйm Membro48 = Ninguйm Membro49 = Ninguйm
#define MAX_FAMILIAS 500
#define MAX_MEMBERS 50
#define DIALOG_FAMILIA_AJUDA 1012
CMD:familia(playerid, params[]) {
new funcao[50], nomefamilia[50];
if(sscanf(params, "s[50]", funcao)) return SendClientMessage(playerid, -1, "[ ERRO ] {FF0000}use: /familia [ajuda - criar - sair]");
if(strfind(funcao, "ajuda", true) != -1) {
FamiliaAjuda(playerid);
}
if(strfind(funcao, "sair", true) != -1) {
if(PlayerInfo[playerid][pFamiliaID] == 0) return SendClientMessage(playerid, -1, "Vocк nгo й de uma famнlia!");
if(PlayerInfo[playerid][pFamiliaLeader] == 1) {
SendClientMessage(playerid, -1, "#Vocк saiu da famнlia!");
PlayerInfo[playerid][pFamiliaID] = 0;
PlayerInfo[playerid][pFamiliaSubLeader] = 0;
}
}
if(strfind(funcao, "criar", true) != -1) {
if(sscanf(params, "s[50]s[50]", funcao, nomefamilia)) return SendClientMessage(playerid, -1, "USE: /familia criar [nome da famнlia]");
createFamilia(playerid, nomefamilia, GetPlayerNome(playerid));
}
return 1;
}
stock FamiliaAjuda(playerid) {
new bradoks[1060];
strcat(bradoks, "{FF0000}Comandos\t{ffffff}Informaзхes\n");
strcat(bradoks, "{1E90FF}• Ajuda:\t{B4B5B7}Mostra os comandos da famнlia\n");
strcat(bradoks, "{1E90FF}• Criar:\t{B4B5B7}Usado para criar uma famнlia\n");
strcat(bradoks, "{1E90FF}• DarSub:\t{B4B5B7}Promove alguйm para sub-lнder\n");
strcat(bradoks, "{1E90FF}• RetirarSub:\t{B4B5B7}Remover alguйm de sub-lнder\n");
strcat(bradoks, "{1E90FF}• Info:\t{B4B5B7}Usado para ver as informaзхes da famнlia\n");
strcat(bradoks, "{1E90FF}• Depositar:\t{B4B5B7}Para depositar dinheiro ao cofre da famнlia\n");
strcat(bradoks, "{1E90FF}• Sacar:\t{B4B5B7}Para sacar dinheiro do cofre da famнlia\n");
strcat(bradoks, "{1E90FF}• Spawn:\t{B4B5B7}Setar o local de spawn da famнlia\n");
strcat(bradoks, "{1E90FF}• Carro:\t{B4B5B7}Usado para comprar um carro para a famнlia\n");
strcat(bradoks, "{1E90FF}• Convidar:\t{B4B5B7}Usado para convidar alguйm para a famнlia\n");
strcat(bradoks, "{1E90FF}• Expulsar:\t{B4B5B7}Usado para expulsar alguйm da famнlia\n");
strcat(bradoks, "{1E90FF}• Membros:\t{B4B5B7}Usado ver todos membros online da famнlia\n");
strcat(bradoks, "{1E90FF}• Sair:\t{B4B5B7}Usado para sair da famнlia\n");
strcat(bradoks, "{1E90FF}• Limpar:\t{B4B5B7}Usado para limpar a vaga de um membro da famнlia\n");
strcat(bradoks, "{1E90FF}• Destruir:\t{B4B5B7}Usado para destruir a famнlia");
ShowPlayerDialog(playerid, DIALOG_FAMILIA_AJUDA, DIALOG_STYLE_TABLIST_HEADERS, "{ffffff}Comandos da {FFD700}Familia", bradoks, "Fechar", "");
return 1;
}
createFamilia(playerid, familianame[], familialeader[]) {
new file[78], Str[78], f = 1;
while(f < MAX_FAMILIAS){
format(file, sizeof file, "Familias/Familia%d.ini", f);
if(!DOF2_FileExists(file)) {
DOF2_CreateFile(file);
DOF2_SetInt(file, "ID", f);
DOF2_SetString(file, "Name", familianame);
DOF2_SetString(file, "Leader", familialeader);
DOF2_SetString(file, "SubLeader", "Ninguйm");
DOF2_SetFloat(file, "SpawnX", 0);
DOF2_SetFloat(file, "SpawnY", 0);
DOF2_SetFloat(file, "SpawnZ", 0);
DOF2_SetInt(file, "Int", 0);
DOF2_SetInt(file, "World", 0);
DOF2_SetInt(file, "Money", 0);
DOF2_SetInt(file, "Time", gettime() + (1 * 2592000));
DOF2_SetInt(file, "VIP", 0);
for(new veh; veh < 5; veh++) {
format(Str, 22, "Vehicle%d", veh);
DOF2_SetInt(file, Str, 0);
format(Str, 22, "VehicleX%d", veh);
DOF2_SetFloat(file, Str, 0);
format(Str, 22, "VehicleY%d", veh);
DOF2_SetFloat(file, Str, 0);
format(Str, 22, "VehicleZ%d", veh);
DOF2_SetFloat(file, Str, 0);
format(Str, 22, "VehicleA%d", veh);
DOF2_SetFloat(file, Str, 0);
format(Str, 22, "VehicleColor1%d", veh);
DOF2_SetInt(file, Str, 0);
format(Str, 22, "VehicleColor2%d", veh);
DOF2_SetInt(file, Str, 0);
}
for(new a; a < MAX_MEMBERS; a++) {
format(Str, 25, "Membro%d", a);
DOF2_SetString(file, Str, "Ninguйm");
}
PlayerInfo[playerid][pFamiliaID] = f;
PlayerInfo[playerid][pFamiliaLeader] = f;
DOF2_SaveFile();
format(Str, sizeof Str, "[FAMНLIA]: {FFFFFF}%s {2641FE}criou a famнlia {FFFFFF}%s.", GetPlayerNome(playerid), familianame);
SendClientMessageToAll(-1, Str);
carregarFamilias();
return 1;
}
f++;
}
return 1;
}
stock GetPlayerNome(playerid) {
new aname[MAX_PLAYER_NAME];
GetPlayerName(playerid, aname, sizeof(aname));
return aname;
}