[Ajuda] Como faзo para salvar ? +rep
#1

Peguei esse cуdigo do leonardo1434
pawn Код:
#include a_samp
#include sscanf2
#include zcmd

/*
ban - FUlano foi banido pelo admin %
/kick - Fulano foi kickado pelo admin %
/avisar - Fulano foi aviso pelo admin % 1/3
/daradmin - Fulano foi promovido a level % de admin
/liberarnick - Liberar nick pro outro muda o nick
/mudarnick - mUDA o nick
/e outros comandos ai que eu eskeci!
*/


enum info
{
  admin
}
new stats[MAX_PLAYERS][info];
new liberar[MAX_PLAYERS] = 0;

CMD:dardmin(playerid,params[])
{
   new ID,Level,lol[128],nome[MAX_PLAYER_NAME];
   if(stats[playerid][admin] == 0 && !IsPlayerAdmin( playerid )) return SendClientMessage(playerid,-1,"Sem Autorizaзгo!");
   if(sscanf(params,"ui",ID,Level)) return SendClientMessage(playerid,-1,"/daradmin [ID] [LEVEL]!");
   if(stats[playerid][admin] < stats[playerid][admin]) return SendClientMessage(playerid,-1,"Sem Autorizaзгo!");
   if (!IsPlayerConnected(ID)) return SendClientMessage(playerid,-1,"Jogador nгo estб conectado! ");
   if ( Level < 0 || Level > 5 )  return SendClientMessage(playerid,-1,"Admin level entre 0 - 5 ");
   stats[ID][admin] = Level;
   GetPlayerName(playerid,nome,sizeof(nome));
   GetPlayerName(ID,nome,sizeof(nome));
   format(lol,sizeof(lol),"%s setou como admin %s level %d",nome,nome,stats[ID][admin]);
   SendClientMessageToAll(-1,lol);
   return 1;
}
CMD:ban(playerid,params[])
{
   new ID,MOTIVO,lol[128],nome[MAX_PLAYER_NAME];
   if(stats[playerid][admin] == 0 && !IsPlayerAdmin( playerid ))return SendClientMessage(playerid, -1,"vocк nгo й admin");
   if(sscanf(params,"us[128]",ID,MOTIVO)) return SendClientMessage(playerid,-1,"/ban [ID] [MOTIVO] ");
   GetPlayerName(playerid,nome,sizeof(nome));
   GetPlayerName(ID,nome,sizeof(nome));
   format(lol,sizeof(lol),"Administrador %s Baniu o jogador % motivo : %s",nome,nome,MOTIVO);
   SendClientMessageToAll(-1,lol);
   GetPlayerName(playerid,nome,sizeof(nome));
   format(lol,sizeof(lol),"Administrador %s lhe baniu por %s",nome,MOTIVO);
   Ban(ID);
   
   return 1;
}
CMD:kick(playerid,params[])
{
   new ID,MOTIVO,lol[128],nome[MAX_PLAYER_NAME];
   if(stats[playerid][admin] == 0 && !IsPlayerAdmin( playerid ))return SendClientMessage(playerid, -1,"vocк nгo й admin");
   if(sscanf(params,"us[128]",ID,MOTIVO)) return SendClientMessage(playerid,-1,"/kick [ID] [MOTIVO] ");
   GetPlayerName(playerid,nome,sizeof(nome));
   GetPlayerName(ID,nome,sizeof(nome));
   format(lol,sizeof(lol),"Administrador %s kickou jogador % motivo : %s",nome,nome,MOTIVO);
   SendClientMessageToAll(-1,lol);
   GetPlayerName(playerid,nome,sizeof(nome));
   format(lol,sizeof(lol),"Administrador %s lhe kickou por %s",nome,MOTIVO);
   Kick(ID);

   return 1;
}
CMD:liberarnick(playerid,params[])
{
   new ID,lol[128],nome[MAX_PLAYER_NAME];
   if(stats[playerid][admin] == 0 && !IsPlayerAdmin( playerid ))return SendClientMessage(playerid, -1,"vocк nгo й admin");
   if(sscanf(params,"us[128]",ID)) return SendClientMessage(playerid,-1,"/liberarnick [ID]");
   GetPlayerName(playerid,nome,sizeof(nome));
   GetPlayerName(ID,nome,sizeof(nome));
   format(lol,sizeof(lol),"Administrador %s liberou %s para mudar seu nome!",nome,nome);
   SendClientMessageToAll(-1,lol);
   liberar[ID] = 1;
   
   return 1;
}
CMD:mudarnick(playerid,params[])
{
   new lol[24],lol2[128],nome[MAX_PLAYER_NAME],nome2[MAX_PLAYER_NAME];
   if(liberar[playerid] == 0) return SendClientMessage(playerid, -1,"Um administrador nгo liberou vocк para mudar de nome !");
   if(sscanf(params,"s[24]",lol)) return SendClientMessage(playerid,-1,"/mudarnick [NICK]");
   GetPlayerName(playerid,nome,sizeof(nome));
   SetPlayerName(playerid,lol);
   GetPlayerName(playerid,nome2,sizeof(nome2));
   format(lol2,sizeof(lol2),"%s mudou seu nome para %s!",nome,nome2);
   SendClientMessageToAll(-1,lol2);
   liberar[playerid] = 0;

   return 1;
}
mais eu nгo sei fazer salvar para que quando relogue nгo perca o seu admin
Reply
#2

Й sу usar uma include de salvamento, tгo simples...
Reply
#3

da uma vista de olhos https://sampforum.blast.hk/showthread.php?tid=404285
Reply
#4

Quote:
Originally Posted by PT
Посмотреть сообщение
uso dof2 pode fazer um exemplo ai n de como faзo ?
Reply
#5

Quote:
Originally Posted by LE4NDrO
Посмотреть сообщение
uso dof2 pode fazer um exemplo ai n de como faзo ?
Se vocк usa o dof2, й sу salvar isso

Quote:

enum info
{
admin
}

Ou acrescenta "admin" na variбvel dos players se for gf edit.
Reply
#6

Quote:
Originally Posted by PlantBR
Посмотреть сообщение
Se vocк usa o dof2, й sу salvar isso



Ou acrescenta "admin" na variбvel dos players se for gf edit.
faz uma base para min saber..
Reply
#7

dini_IntSet(filename[],Tag[],Valor)

Ex:
pawn Код:
dini_IntSet("MultiKill.ini","Admin",1); // Salva o Valor 1 na Tag Admin do arquivo MultiKill.ini que fica na Pasta Script Files
dini_Int(filename[],tag[])
Ex:
pawn Код:
GivePlayerMoney(playerid, dini_Int("MultiKill.ini","Dinheiro")); // Le o a Tag Dinheiro e da o valor em dinheiro para o jogador;
Outros Exemplos de Ler:
pawn Код:
stats[playerid][admin] = dini_Int("MultiKill.ini","Admin");
Outro exemplo de salvar:
pawn Код:
dini_Int("MultiKill.ini","Admin",stats[playerid][admin]);
Veja esse tutorial.

Para converter dini para dof2:

Quote:

dini_Exists -> DOF2_FileExists
dini_Create -> DOF2_CreateFile
dini_Remove -> DOF2_RemoveFile
dini_IntSet -> DOF2_SetInt
dini_Set -> DOF2_SetString
dini_FloatSet -> DOF2_SetFloat
dini_BoolSet -> DOF2_SetBool
dini_Int -> DOF2_GetInt
dini_Get -> DOF2_GetString
dini_Float -> DOF2_GetFloat
dini_Bool -> DOF2_GetBool,

Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)