Criaзгo e salvamento de dados -
Duun - 01.09.2018
Bom dia galera, desculpa ficar pedindo coisas aqui pra vocкs, mais й por que eu estou tendo muita dificuldade em fazer um sisteminha simples pro meu GM. Eu atй peguei um GM pra estudar, que tem esse sistema, mais o GM tem 40k de linhas e eu me confundo muito, tem muita coisa nгo consigo aprender como funciona.
Eu queria aprender a fazer 3 organizaзхes no meu servidor.
Salvar os dados da organizaзгo ( cada organizaзгo teria um ID igual os players )
Ou seja, eu teria que declarar no topo do GM
Por que isso seria necessбrio para salvar a organizaзгo numa pasta na scriptfiles chamada ORGS
ai dentro da pasta ficaria os arquivos de cada org, e
dentro desses arquivos informaзхes como os membros, lider, safe drogas / armas, dinheiro da org etc. ( usando dof2 )
sinceramente essa ultima parte eu tenho mais duvida, como fazer esse salvamento de dados, atualmente uso dof2 no meu gm pra salvar a senha e o nome do player no registro login, mais nгo consigo usar essa base para salvar a ORG.
e a outra coisa que eu to tentando fazer e tambйm nгo ta dando certo й as gangzones, mais isso eu posso deixar pra fazer depois. alguйm ai tem alguma base de organizaзхes desse jeito ?
Re: Criaзгo e salvamento de dados -
Duun - 01.09.2018
Код:
#include <a_samp>
#include <dof2>
enum ORGINFO
{
pOrg[3], pLider[3] // numero de orgs
pMembro, OrgGrana, OrgDroga
}
new pOrgInfo[MAX_PLAYERS][ORGINFO], Orgs[256];
CriarOrg(playerid)
{
format(Orgs, sizeof(Orgs), "ORGS/%s.ini", pInfo[playerid][pOrg]);
DOF2_SetInt(ORGS, "Lider = ninguйm", 0);
DOF2_SetInt(ORGS, "Membro = ninguйm", 1);
DOF2_SetInt(ORGS, "Safe droga= nenhum", 98);
DOF2_SetInt(ORGS, "Safe grana= nenhum", 98);
DOF2_SetInt(ORGS, "Organizacao", 98);
DOF2_SaveFile();
}
// -----------------------------------------------------------------------------
LerOrg(playerid)
{
format(Orgs, sizeof(Orgs), "ORGS/%s.ini", pOrgInfo[playerid][pOrg]);
pOrgInfo[playerid][pLider] = DOF2_GetInt(ORGS, "Lider");
pOrgInfo[playerid][pOrg] = DOF2_GetInt(ORGS, "Organizacao");
pOrgInfo[playerid][pSkin] = DOF2_GetInt(ORGS, "Membro");
pOrgInfo[playerid][pGrana] = DOF2_GetInt(ORGS, "Safe grana");
pOrgInfo[playerid][pNivel] = DOF2_GetInt(ORGS, "Safe droga");
*/
}
// -----------------------------------------------------------------------------
SalvarOrg(playerid)
{
format(Orgs, sizeof(Orgs), "ORGS/%s.ini", pInfo[playerid][pOrg]);
DOF2_SetInt(Orgs, "Lider", pOrgInfo[playerid][pLider]);
DOF2_SetInt(Orgs, "Organizacao", pOrgInfo[playerid][pOrg]);
DOF2_SetInt(Orgs, "Membro", pOrgInfo[playerid][pMembro]);
DOF2_SetInt(Orgs, "Safe grana", pOrgInfo[playerid][OrgGrana]);
DOF2_SetInt(Orgs, "Safe droga", pOrgInfo[playerid][OrgDroga]);
DOF2_SaveFile();
}
// -----------------------------------------------------------------------------
GetNome(playerid)
{
new pNome[MAX_PLAYER_NAME];
GetPlayerName(playerid, pNome, 24);
return pNome;
}
Seria mais ou menos assim pessoal ? Para criar/salvar organizaзхes com ID's ?
Ou teria que fazer desta forma, usando MAX_ORGS?
Код:
#include <a_samp>
#include <dof2>
#define MAX_ORGS 3
enum ORGINFO
{
pOrg[3], pLider[3] // numero de orgs
pMembro, OrgGrana, OrgDroga
}
new pOrgInfo[MAX_ORGS][ORGINFO], Orgs[256];
CriarOrg(MAX_ORGS)
{
format(Orgs, sizeof(Orgs), "ORGS/%s.ini", pInfo[playerid][pOrg]);
DOF2_SetInt(ORGS, "Lider = ninguйm", 0);
DOF2_SetInt(ORGS, "Membro = ninguйm", 1);
DOF2_SetInt(ORGS, "Safe droga= nenhum", 98);
DOF2_SetInt(ORGS, "Safe grana= nenhum", 98);
DOF2_SetInt(ORGS, "Organizacao", 98);
DOF2_SaveFile();
}
// -----------------------------------------------------------------------------
LerOrg(MAX_ORGS)
{
format(Orgs, sizeof(Orgs), "ORGS/%s.ini", pOrgInfo[playerid][pOrg]);
pOrgInfo[playerid][pLider] = DOF2_GetInt(ORGS, "Lider");
pOrgInfo[playerid][pOrg] = DOF2_GetInt(ORGS, "Organizacao");
pOrgInfo[playerid][pSkin] = DOF2_GetInt(ORGS, "Membro");
pOrgInfo[playerid][pGrana] = DOF2_GetInt(ORGS, "Safe grana");
pOrgInfo[playerid][pNivel] = DOF2_GetInt(ORGS, "Safe droga");
*/
}
// -----------------------------------------------------------------------------
SalvarOrg(MAX_ORGS)
{
format(Orgs, sizeof(Orgs), "ORGS/%s.ini", pInfo[playerid][pOrg]);
DOF2_SetInt(Orgs, "Lider", pOrgInfo[playerid][pLider]);
DOF2_SetInt(Orgs, "Organizacao", pOrgInfo[playerid][pOrg]);
DOF2_SetInt(Orgs, "Membro", pOrgInfo[playerid][pMembro]);
DOF2_SetInt(Orgs, "Safe grana", pOrgInfo[playerid][OrgGrana]);
DOF2_SetInt(Orgs, "Safe droga", pOrgInfo[playerid][OrgDroga]);
DOF2_SaveFile();
}
// -----------------------------------------------------------------------------
GetNome(playerid)
{
new pNome[MAX_PLAYER_NAME];
GetPlayerName(playerid, pNome, 24);
return pNome;
}
Re: Criaзгo e salvamento de dados -
SIZET - 01.09.2018
Use MAX_ORGS para salvar a Organizaзгo do player coloque na conta dele.
PHP код:
#define MAX_ORGS 3
enum oInfo
{
Lider[24],
Membro[10][24],
Saldo,
};
new OrgInfo[MAX_ORGS][oInfo];
Veja esses videos do Leonardo lб estб o que vocк quer!
https://www.youtube.com/watch?v=sivkROoMTdo
Exite umas 4 partes essa de cima e parte 1
Re: Criaзгo e salvamento de dados -
Duun - 01.09.2018
certo vou ver aqui
Re: Criaзгo e salvamento de dados -
SIZET - 01.09.2018
Acho que jб vi esses videos dele e nгo tem o /Promover se nгo tiver use essa base abaixo se tiver usa a de baixo tbm -'
PHP код:
enum oInfo
{
bool:Recruta,
bool:Assaltante,
bool:Traficante,
bool:Terrorista,
bool:Lider
};
new InfoOrg[MAX_PLAYERS][oInfo];
CMD:promoverorg(playerid, params[])
{
if(!IsPlayerAdmin(playerid))
return SendClientMessage(playerid, -1, "| ERRO | Vocк nгo tem permissгo!");
if(sscanf(params, "ud", id, Cargo))
return SendClientMessage(playerid, -1, "| ERRO | Use: /PromoverOrg [ID] [Cargo]");
if(!IsPlayerConnected(id))
return SendClientMessage(playerid, -1, "| ERRO | ID Invбlido!");
if(Cargo < 1 || Cargo > 5)
return SendClientMessage(playerid, -1, "| ERRO | Cargo Invбlido [1-5]!");
if(Cargo == 1)
{
InfoOrg[id][Recruta] = true;
}
if(Cargo == 2)
{
InfoOrg[id][Assaltante] = true;
}
if(Cargo == 3)
{
InfoOrg[id][Traficante] = true;
}
if(Cargo == 4)
{
InfoOrg[id][Terrorista] = true;
}
if(Cargo == 5)
{
InfoOrg[id][Lider] = true;
}
return 1;
}