[Ajuda] Criandor de orgs .
#1

Criei umas organizaзхes com esse programa aqui http://205.196.122.72/xr3q72c8blcg/4...5es+-+v2.0.rar

Fiz uma organizaзao civil mais se nao to conseguindo colocar ela pra funcionar...

Quote:

// This is a comment
// uncomment the line below if you want to write a filterscript
//#define FILTERSCRIPT

#include <a_samp>
#include <DOF2> //Adicionando o DOF2

#if defined FILTERSCRIPT
#define Civil 0
#define C_Civil 0xFFFFFFAA
enum PlayerDados
{
Organizacao,
Cargo
}
new pDados[MAX_PLAYERS][PlayerDados]; //Criamos a varнavel que amarzenarб os Dados do player

public OnFilterScriptInit()
{
print("\n--------------------------------------");
print(" Blank Filterscript by your name here");
print("--------------------------------------\n");
return 1;
}

public OnFilterScriptExit()
{
return 1;
}

#else

main()
{
print("\n----------------------------------");
print(" Blank Gamemode by your name here");
print("----------------------------------\n");
}

#endif

public OnGameModeInit()
{
// Don't use these lines if it's a filterscript
SetGameModeText("Blank Script");
AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
return 1;
}

public OnGameModeExit()
{
DOF2_Exit();
return 1;
}

public OnPlayerRequestClass(playerid, classid)
{
SpawnPlayer(playerid); //Ao aparecer aqueles setinhas (<<< >>> SPAWN), o jgador irб levar Spawn
SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
return 1;
}

public OnPlayerConnect(playerid)
{
new arquivo[34], playername[MAX_PLAYER_NAME]; //Criamos as vбriaveos que irгo armazenar o arquivo e o nome do jogador
GetPlayerName(playerid, playername, sizeof(playername)); //Getamos o nome do player
format(arquivo, sizeof(arquivo), "Orgs/%s", playername); //Formatamos o arquivo de acordo com o nome do player (Contas/NOME)
pDados[playerid][Organizacao] = DOF2_GetInt(arquivo, "Organizaзгo");
pDados[playerid][Cargo] = DOF2_GetInt(arquivo, "Cargo");
SpawnPlayer(playerid); //Dб SPAWN no player
return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
new arquivo[34], playername[MAX_PLAYER_NAME]; //Criamos as vбriaveos que irгo armazenar o arquivo e o nome do jogador
GetPlayerName(playerid, playername, sizeof(playername)); //Getamos o nome do player
format(arquivo, sizeof(arquivo), "Orgs/%s", playername); //Formatamos o arquivo de acordo com o nome do player (Contas/NOME)
if(DOF2_FileExists(arquivo)) //Se a Conta existir
{
DOF2_SetInt(arquivo, "Organizaзгo", pDados[playerid][Organizacao]); //Setamos o valor de "pDados[playerid][Organizacao]" no "arquivo", com a TAG "Organizaзгo"
DOF2_SetInt(arquivo, "Cargo", pDados[playerid][Cargo]); //Setamos o valor de "pDados[playerid][Cargo]" no "arquivo", com a TAG "Cargo"
}
else //Se a conta nгo esxitir
{
DOF2_CreateFile(arquivo); //Cria o arquivo com os Dados do player
DOF2_SetInt(arquivo, "Organizaзгo", pDados[playerid][Organizacao]); //Setamos o valor de "pDados[playerid][Organizacao]" no "arquivo", com a TAG "Organizaзгo"
DOF2_SetInt(arquivo, "Cargo", pDados[playerid][Cargo]); //Setamos o valor de "pDados[playerid][Cargo]" no "arquivo", com a TAG "Cargo"
}
return 1;
}

public OnPlayerSpawn(playerid)
{
if(pDados[playerid][Organizacao] == 0)
{
SetPlayerPos(playerid, );
}
return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
return 1;
}

public OnVehicleSpawn(vehicleid)
{
return 1;
}

public OnVehicleDeath(vehicleid, killerid)
{
return 1;
}

public OnPlayerText(playerid, text[])
{
return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/mycommand", cmdtext, true, 10) == 0)
{
// Do something here
return 1;
}
return 0;
}

public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
return 1;
}

public OnPlayerExitVehicle(playerid, vehicleid)
{
return 1;
}

public OnPlayerStateChange(playerid, newstate, oldstate)
{
return 1;
}

public OnPlayerEnterCheckpoint(playerid)
{
return 1;
}

public OnPlayerLeaveCheckpoint(playerid)
{
return 1;
}

public OnPlayerEnterRaceCheckpoint(playerid)
{
return 1;
}

public OnPlayerLeaveRaceCheckpoint(playerid)
{
return 1;
}

public OnRconCommand(cmd[])
{
return 1;
}

public OnPlayerRequestSpawn(playerid)
{
return 1;
}

public OnObjectMoved(objectid)
{
return 1;
}

public OnPlayerObjectMoved(playerid, objectid)
{
return 1;
}

public OnPlayerPickUpPickup(playerid, pickupid)
{
return 1;
}

public OnVehicleMod(playerid, vehicleid, componentid)
{
return 1;
}

public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
{
return 1;
}

public OnVehicleRespray(playerid, vehicleid, color1, color2)
{
return 1;
}

public OnPlayerSelectedMenuRow(playerid, row)
{
return 1;
}

public OnPlayerExitedMenu(playerid)
{
return 1;
}

public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
{
return 1;
}

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
return 1;
}

public OnRconLoginAttempt(ip[], password[], success)
{
return 1;
}

public OnPlayerUpdate(playerid)
{
new arquivo[34], playername[MAX_PLAYER_NAME]; //Criamos as vбriaveos que irгo armazenar o arquivo e o nome do jogador
GetPlayerName(playerid, playername, sizeof(playername)); //Getamos o nome do player
format(arquivo, sizeof(arquivo), "Orgs/%s", playername); //Formatamos o arquivo de acordo com o nome do player (Contas/NOME)
if(DOF2_FileExists(arquivo)) //Se a Conta existir
{
DOF2_SetInt(arquivo, "Organizaзгo", pDados[playerid][Organizacao]); //Setamos o valor de "pDados[playerid][Organizacao]" no "arquivo", com a TAG "Organizaзгo"
DOF2_SetInt(arquivo, "Cargo", pDados[playerid][Cargo]); //Setamos o valor de "pDados[playerid][Cargo]" no "arquivo", com a TAG "Cargo"
}
else //Se a conta nгo esxitir
{
DOF2_CreateFile(arquivo); //Cria o arquivo com os Dados do player
DOF2_SetInt(arquivo, "Organizaзгo", pDados[playerid][Organizacao]); //Setamos o valor de "pDados[playerid][Organizacao]" no "arquivo", com a TAG "Organizaзгo"
DOF2_SetInt(arquivo, "Cargo", pDados[playerid][Cargo]); //Setamos o valor de "pDados[playerid][Cargo]" no "arquivo", com a TAG "Cargo"
}
return 1;
}

public OnPlayerStreamIn(playerid, forplayerid)
{
return 1;
}

public OnPlayerStreamOut(playerid, forplayerid)
{
return 1;
}

public OnVehicleStreamIn(vehicleid, forplayerid)
{
return 1;
}

public OnVehicleStreamOut(vehicleid, forplayerid)
{
return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 666)
{
new playername[MAX_PLAYER_NAME], string[128]; //Variaveis que irб armazenar o nome e "string"
GetPlayerName(playerid, playername, sizeof(playername)); //Geta o nome do player que aparaceu o dialog
if(response) //Se ele clicar em SIM...
{
pDados[playerid][Organizacao] = GetPVarInt(playerid, "OrgConvidado"); //Seta a organizaзгo de acordo com a PVarInt do comando /convida
pDados[playerid][Cargo] = 1; //Seta o cargo a 1
format(string, sizeof(string), "%s aceitou seu Convite.", playername); //Formata uma mensagem com o nome do player que aceitou
SendClientMessage(GetPVarInt(playerid, "QuemConvidou"), 0x00FF00FF, string); //Envia a mensgaem a quem convidou
format(string, sizeof(string), "%s й o mais novo membro da Organizaзгo.", playername); //Formata uma mensgaem com o nome do player que aceitou
SendFamilyMessage(pDados[playerid][Organizacao], GetPlayerColor(playerid), string); //Manda a mensagem para a organizaзгo do player
SendClientMessage(playerid, 0x00FF00FF, "Vocк aceitou o Convite."); //Manda uma mensagem amigavel ao player que aceitou :P
DeletePVar(playerid, "OrgConvidado"); //Deleta o PVar
DeletePVar(playerid, "QuemConvidou"); //Deleta o PVar
SpawnPlayer(playerid); //Spawn nele!
}
else //Se ele ciclar em NГO...
{
format(string, sizeof(string), "%s rejeitou seu Convite.", playername); //Formata a mensgaem com o nome do player que rejeitou o convite
SendClientMessage(GetPVarInt(playerid, "QuemConvidou"), 0x00FF00FF, string); //Envia a mensagem a quem convidou o player
SendClientMessage(playerid, 0x00FF00FF, "Vocк rejeitou o Convite."); //Manda uma mensagem amigavel ao player que rejeitou :P
DeletePVar(playerid, "OrgConvidado"); //Deleta o PVar
DeletePVar(playerid, "QuemConvidou"); //Deleta o PVar
}
}
return 1;
}

public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
return 1;
}
CMD:membros(playerid)
{
new playername[MAX_PLAYER_NAME], string[128]; //Criamos variaveis que irгo armazenar o nome e mensganes formatadas
if(pDados[playerid][Organizacao] >= 1)
{
SendClientMessage(playerid, 0xBFC0C2FF, "(=-=-=-=-=-=-=({FFD700}Membros Online{BFC0C2})=-=-=-=-=-=-=)");
for(new i = 0; i < MAX_PLAYERS; i++) //Criamos um loop de acordo com o MAX_PLAYERS
{
if(IsPlayerConnected(i)) //Verifica se o "i" (player) do loop estб online
{
if(pDados[i][Organizacao] == pDados[playerid][Organizacao]) //Verifica se a organizaзгo do player (do loop) й igual a do player que digitou o comando
{
GetPlayerName(i, playername, sizeof(playername)); //Geta o nome do player(loop)...
if(pDados[i][Cargo] <= 4) //Verifica se o player do loop e cargo 4 ou menos
{
format(string, sizeof(string), "Membro: %s, Cargo: %d", playername, pDados[i][Cargo]); //Formata uma mensgaem com o nome e cargo do player (loop)
SendClientMessage(playerid, GetPlayerColor(playerid), string); //Envia a mensagem do player que digitou o comando
}
else
{
if(pDados[i][Cargo] == 6) //Verifica se o player й Lнder e formata/envia uma mensagem diferente/destacada
{
format(string, sizeof(string), "Membro: %s, Cargo: Lнder", playername);
SendClientMessage(playerid, GetPlayerColor(playerid), string);
}
else if(pDados[i][Cargo] == 5) //Verifica se o player й Lнder e formata/envia uma mensagem diferente/destacada
{
format(string, sizeof(string), "Membro: %s, Cargo: Sub-Lнder", playername);
SendClientMessage(playerid, GetPlayerColor(playerid), string);
}
}
}
}
}
}
else
{
SendClientMessage(playerid, 0xAD0000AA, "Vocк nгo pertence a nenhuma Organizaзгo.");
}
return 1; //Returnando a 1, nunca se esqueзa!
}
CMD:radio(playerid, params[])
{
new text[128], string[128], playername[MAX_PLAYER_NAME]; //Criando variavйs...
if(sscanf(params, "s", text)) return SendClientMessage(playerid, 0xAD0000AA, "USE: /radio [MENSAGEM]");
if(pDados[playerid][Organizacao] == 0) return SendClientMessage(playerid, 0xAD0000AA, "Vocк nгo participa de nenhuma organizaзгo!"); //Verifica se o player й CIVIL, se for, returna a mensagem
GetPlayerName(playerid, playername, sizeof(playername)); //Geta o nome de quem usou o comando
format(string, sizeof(string), "(Rбdio) %s [Cargo: %d] diz: %s", playername, pDados[playerid][Cargo], text); //Formata uma mensagem com o nome do player, cargo e a mensgem
SendFamilyMessage(pDados[playerid][Organizacao], COR_RAD, string); //Envia a mensagem a organizaзгo do player
return 1; //Returnando a 1, nunca se esqueзa!
}
CMD:radio(playerid, params[])
{
new text[128], string[128], playername[MAX_PLAYER_NAME]; //Criando variavйs...
if(sscanf(params, "s", text)) return SendClientMessage(playerid, 0xAD0000AA, "USE: /radio [MENSAGEM]");
if(pDados[playerid][Organizacao] == 0) return SendClientMessage(playerid, 0xAD0000AA, "Vocк nгo participa de nenhuma organizaзгo!"); //Verifica se o player й CIVIL, se for, returna a mensagem
GetPlayerName(playerid, playername, sizeof(playername)); //Geta o nome de quem usou o comando
format(string, sizeof(string), "(Rбdio) %s [Cargo: %d] diz: %s", playername, pDados[playerid][Cargo], text); //Formata uma mensagem com o nome do player, cargo e a mensgem
SendFamilyMessage(pDados[playerid][Organizacao], COR_RAD, string); //Envia a mensagem a organizaзгo do player
return 1; //Returnando a 1, nunca se esqueзa!
}
CMDromover(playerid, params[])
{
new id, cargo, string[128], playername[MAX_PLAYER_NAME], idname[MAX_PLAYER_NAME]; //Cria as vбriveis...
if(pDados[playerid][Cargo] != 6) return SendClientMessage(playerid, 0xAD0000AA, "Vocк nгo й lider"); //Verifica se o player que digitou o comando й lнder
if(sscanf(params, "dd", id, cargo)) return SendClientMessage(playerid, 0xAD0000AA, "USE: /promover [ID]");
if(!IsPlayerConnected(id)) return SendClientMessage(playerid, 0xAD0000AA, "Este jogador nгo estб online."); //Verifica se o player que serб promovido estб online
if(pDados[id][Organizacao] != pDados[playerid][Organizacao]) return SendClientMessage(playerid, 0xAD0000AA, "Este jogador nгo й da mesma Organizaзгo que vocк."); //Verifica se o "id" й da mesma organizaзгo do lнder
if(playerid == id) return SendClientMessage(playerid, 0xAD0000AA, "Vocк nгo pode promover a vocк mesmo."); //Verifica se o "id" й ele mesmo (playerid)
if(cargo >= 1 || cargo <= 5) //Verifica se o cargo estб entre 1 a 5
{
pDados[id][Cargo] = cargo; //Seta o cargo do player de acordo com o "cargo" que o lнder digitou
GetPlayerName(playerid, playername, sizeof(playername)); //Geta o nome do player que digitou o comando
GetPlayerName(id, idname, sizeof(idname)); //Geta o nome de quem recebeu a promoзгo
format(string, sizeof(string), "%s promoveu o membro %s para o Cargo %d.", playername, idname, cargo); //Formata a mesgaem com quem prommoveu, quem foi promovido e o cargo
SendFamilyMessage(pDados[playerid][Organizacao], GetPlayerColor(playerid), string); //Envia a mensagem para a organizaзгo
format(string, sizeof(string), "%s te promoveu para o Cargo %d.", playername, cargo); //Formata a mensgame...
SendClientMessage(id, GetPlayerColor(playerid), string); //Envia a mesngaem para quem foi promovido
}
else //Caso o cargo nгo esta de 1 a 5, envia a mensagem abaixo:
{
SendClientMessage(playerid, 0xAD0000AA, "Cargos de 1 a 5");
return 1;
}
return 1; //Returnando a 1, nunca se esqueзa!
}
CMD:demitir(playerid, params[])
{
new id, motivo[128], string[128], playername[MAX_PLAYER_NAME], idname[MAX_PLAYER_NAME]; //Criando variaveis :P
if(pDados[playerid][Cargo] != 6) return SendClientMessage(playerid, 0xAD0000AA, "Vocк nгo й lider"); //Verifica se o player que digitou o comando й lider
if(sscanf(params, "ds", id, motivo)) return SendClientMessage(playerid, 0xAD0000AA, "USE: /demitir [ID] [MOTIVO]");
if(!IsPlayerConnected(id)) return SendClientMessage(playerid, 0xAD0000AA, "Este jogador nгo estб online."); //Verifica se quem serб demitido estб online
if(pDados[id][Organizacao] != pDados[playerid][Organizacao]) return SendClientMessage(playerid, 0xAD0000AA, "Este jogador nгo й da mesma Organizaзгo que vocк."); //Verifica se o "id" й da mesma organizaзгo do lнder
if(playerid == id) return SendClientMessage(playerid, 0xAD0000AA, "Vocк nгo pode demitir a vocк mesmo."); //Verifica se o "id" й ele mesmo (playerid)
pDados[id][Organizacao] = 0;
pDados[id][Cargo] = 0; //Seta o cargo od player a 0
GetPlayerName(playerid, playername, sizeof(playername)); //Geta o nome de quem demitiu
GetPlayerName(id, idname, sizeof(idname)); //Geta o nome de quem foi demitido
format(string, sizeof(string), "%s demitiu o membro %s da Organizaзгo.", playername, idname); //Formata uma mensagem com o nome de quem demitiu e quem foi demitido
SendFamilyMessage(pDados[playerid][Organizacao], GetPlayerColor(playerid), string); //Envia a mensagem para a organizaзгo
format(string, sizeof(string), "%s te demitiu da Organizaзгo. Motivo: %s.", playername, motivo); //Formata uma mensagem com o nome de quem demitiu e o motivo
SendClientMessage(id, GetPlayerColor(playerid), string); //Envia a mensagem para quem foi demitido
SpawnPlayer(id); //Spawn no nego!
return 1; //Returnando a 1, nunca se esqueзa!
}
CMD:darlider(playerid, params[])
{
new id, org, string[256], quemdeu[MAX_PLAYER_NAME], quemganhou[MAX_PLAYER_NAME]; //Cria vбriaveis que irб armazenar o id do lнder, a organizaзгo, o nome etc...
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, 0xAD0000AA, "{00E5FF}Vocк nгo estб autorizado a usar este Comando."); //Verifica se o player estб logado na RCON, se nгo, returna a mensagem
if(sscanf(params, "ii", id, org)) return SendClientMessage(playerid, 0xAD0000AA, "USE: /darlider [ID] [ORGANIZAЗГO]");
if(!IsPlayerConnected(id)) return SendClientMessage(playerid, 0xAD0000AA, "Este jogador nгo estб online."); //Verifica se o player que iria ser setado lнder estб online
GetPlayerName(id, quemganhou, sizeof(quemganhou)); //Geta o nome de quem ganhou a lideanзa
GetPlayerName(playerid, quemdeu, sizeof(quemdeu)); //Geta o nome do admin que deu o lнder
format(string, sizeof(string), "Vocк deu lнder da Organizaзгo %s para %s(ID: %d)", GetOrgName(org), quemganhou, id); //Formata uma mensagem com o nome de quem ganhou a lideranзa, o nome da orgnizaзгo que foi setada e o "id"
SendClientMessage(playerid, 0x00F6F6AA, string); //Manda a mensgem formatada para quem digitou o comando (quem deu o lнder)
format(string, sizeof(string), "%s(ID: %d) te deu lнder da Organizaзгo %s.", quemdeu, playerid, GetOrgName(org)); //Formata uma mensgame com quem deu a lideranзa, o "playerid" e o nome organizaзгo setada
SendClientMessage(id, 0x00F6F6AA, string); //Envia a mensgaem formatada para que recebeu a lideranзa
format(string, sizeof(string), "%s(ID: %d) й o novo lнder da Organizaзгo %s.", quemganhou, id, GetOrgName(org)); //Formata a mensagem...
SendClientMessageToAll(0x00F6F6AA, string); //Envia a mensagem para todos Online
pDados[id][Organizacao] = org; //Seta a organizaзгo do "id"
pDados[id][Cargo] = 6; //Seta o cargo (lideranзa) do "id"
SpawnPlayer(id); //Spawna o player que rebeu a lideranзa
return 1; //Returnando a 1, nunca se esqueзa!
}

Reply
#2

C:\Users\Leo\Desktop\Sv\gamemodes\Organizaзaoleo.p wn(6 : warning 217: loose indentation
C:\Users\Leo\Desktop\Sv\gamemodes\Organizaзaoleo.p wn(70) : error 017: undefined symbol "pDados"
C:\Users\Leo\Desktop\Sv\gamemodes\Organizaзaoleo.p wn(70) : warning 215: expression has no effect
C:\Users\Leo\Desktop\Sv\gamemodes\Organizaзaoleo.p wn(70) : error 001: expected token: ";", but found "]"
C:\Users\Leo\Desktop\Sv\gamemodes\Organizaзaoleo.p wn(70) : error 029: invalid expression, assumed zero
C:\Users\Leo\Desktop\Sv\gamemodes\Organizaзaoleo.p wn(70) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase


4 Errors.
Reply
#3

Quando for cуdigos muito grande assim use o pastebin amigo.
Reply
#4

Usa esse programa:
AQUI
Reply
#5

Comece deletando callbacks nгo usadas, depois idente o cуdigo, e entгo poste o cуdigo novamente.
Reply


Forum Jump:


Users browsing this thread: 6 Guest(s)