#define gAliada "/GGSALIADAS/%s.ini"
CMD:caa(playerid, params[])
{
if(!DOF2_FileExists(gAliada1) && !DOF2_FileExists(gAliada2))
{
if(!strlen(params))
return SendClientMessage(playerid, COR_USOCORRETO, "USO: /caa [texto]");
format(fixStr, sizeof(fixStr), "** GANG ALIADA: %s %s (ID: %d): {FFFFFF} %s **",
AccountName(playerid), GetPlayerNameEx(playerid), playerid, params);
SendMessageToAliada(0xa427ceAA, fixStr);
}
return true;
}
/* Aconselho que vocк tenha a diretiva 'pawn.cmd', pois com ela, vocк nгo precisarб adicionar o macro do parвmetro 'isnull'. */
/* Caso, nгo tiver a diretiva e quiser adicionar o macro, faзa da seguinte forma: */
/* Adicione ao topo do seu GameMode: */
#if !defined isnull
#define isnull(%1) \
((!(%1[0])) || (((%1[0]) == '\1') && (!(%1[1]))))
#endif
/* Agora, faзa tudo normal. */
enum PoInfo {
bool:Aliada1,
bool:Aliada2
};
new Player[MAX_PLAYERS][PoInfo];
CMD:caa(playerid, params[])
{
if(!Player[playerid][Aliada1] && Player[playerid][Aliada2])
return SendClientMessage(playerid, -1, "As gangues aliadas, nгo sгo compatнveis.");
{
if(!isnull(params))
{
new str[128];
format(str, sizeof(str), "** GANG ALIADA: %s %s (ID: %d): {FFFFFF} %s **"/*Adicione uma vнrgula e faзa suas formataзхes de acordo com suas funзхes feitas :) */);
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(Player[i][Aliada1] && Player[i][Aliada2])
{
SendClientMessage(i, -1, str);
}
}
}
}
else
return SendClientMessage(playerid, -1, "Digite: /caa [TEXTO]");
}
return true;
}
Vocк criou um enumerador para armazenar as funзхes?
Se sim, faзa da seguinte forma... Verifique se a setagem й em valores integers ou em valores lуgicos(booleano, verdadeiro ou falso) Vamos supor que a setagem й em um valor lуgico. Obs.: Tudo isso й apenas uma base. PHP код:
|
Nгo tem como eu fazer essa verificaзгo se й aliada pelo DOF2 ? Do jeito que mandei acima.
|
O DOF2, serve apenas para armazenar os dados inseridos de uma conta para um arquivo de texto.
Se o jogador entrar com essa conta, ela serб checada dentro dos arquivos de texto e as informaзхes serгo setadas, apenas isso. As verificaзхes, vocк deve fazer com as funзхes das condicionais padrхes, nada de DOF2 se encaixa nessa performance. Talvez por algum lado, o DOF2 possa ser um tipo de "condicional", mas no meu ponto de vista, nгo й um ponto vantajoso utilizar o DOF2 como condicional para verificar a existкncia de funзхes que podem ser feitas com as condicionais nativamente existentes dentro da linguagem. |
Estou tentando fazer um chat para as gangs aliada. As gangs aliadas й salva em DOF2.
PHP код:
PHP код:
|
SendMessageToAliada(cor, const str[])
{
each(Players->new i)
if(Player[i][pLogged])
if(!DOF2_FileExists(gAliada1) && !DOF2_FileExists(gAliada2))
SendClientMessage(i, cor, str);
}
Vocк criou um enumerador para armazenar as funзхes?
Se sim, faзa da seguinte forma... Verifique se a setagem й em valores integers ou em valores lуgicos(booleano, verdadeiro ou falso) Vamos supor que a setagem й em um valor lуgico. Obs.: Tudo isso й apenas uma base. |
enum teste{
checagem,
Testando
}
new Player[MAX_PLAYERS][teste]; //Veja, eu enumerei a funзгo junto com a variбvel "Player"
if (Player[playerid][Testando] == 1)
{
//cod
}
cmd:macho(playerid)
{
if(Player[playerid][checagem] == 1)
{
SendClientMessage(playerid, -1, "Vocк nгo pode virar um macho, pois estб com o nнvel de checagem igual a 1");
}
return 1;
}
if(strcmp(cmd,"/cpcc",true)==0){ if(PlayerInfo[playerid][piRrecruta] || PlayerInfo[playerid][piRladrao] || PlayerInfo[playerid][piRassassino] || PlayerInfo[playerid][piRassassinoP] || PlayerInfo[playerid][piRtraficante] || PlayerInfo[playerid][piRterrorista] || PlayerInfo[playerid][piRsubdono] || PlayerInfo[playerid][piRdono] || IsPlayerAdmin(playerid)) { //new msg[256]; strmid(tmp,cmdtext,6,strlen(cmdtext)); if(!strlen(tmp)) { SendClientMessage(playerid,Vermelho, "[ x ] Uso correto: /caa[ texto ]"); return 1; } else { format(string, sizeof(string), "[ Chat - Aliados] %s (%d): %s", PlayerName(playerid), playerid, tmp); ABroadCastCAA(-1,string,1); return 1; } }else{ SendClientMessage(playerid,Vermelho,"| ERRO | Somente aliados podem usar o chat pode usar este comando."); return 1; } } |
forward ABroadCastCAA(COLOR,const string[],level); // Chat do clan. |
public ABroadCastiR(COLOR,const string[],level)
{
foreach(Player, i)
{
if(PlayerInfo[i][piRrecruta] || PlayerInfo[i][piRladrao] || PlayerInfo[i][piRassassino] || PlayerInfo[i][piRassassinoP] || PlayerInfo[i][piRtraficante] || PlayerInfo[i][piRterrorista] || PlayerInfo[i][piRsubdono] || PlayerInfo[i][piRdono] || IsPlayerAdmin(i))
{
SendClientMessage(i, COLOR, string);
}
}
return 1;
}
new File:temp;
new index = 0;
new tmp[256];
Comando em sн em cima.
Colocar isso гo pede os '' Forward '' PHP код:
@@@@EDIT !! Se der erro tente colocar isso PHP код:
|
new PlayerInfo[MAX_PLAYERS][FUNCTION_ENUM]