15.08.2010, 18:20
AndFicheiros 0.5 Beta(Sistema de Salvar)
![](/imageshack/img256/637/251i.png)
By: andmeida10
Desde o mais simples, ao mais complexo.
![](/imageshack/img256/637/251i.png)
By: andmeida10
Desde o mais simples, ao mais complexo.
__________________________________________________ ________________
O Que Й??
:: Esta й uma include, que dб para ir desde o mais simples, ao mais complexo. Vocк pode so salvar a ID da skin do Player, ou pode mesmo gerir um AdminSystem com ele.
__________________________________________________ ________________
Funcхes:
:: AndEscrever(ficheiro,string); -> Escreve algo num ficheiro
:: AndCriar(ficheiro); -> Cria um Ficheiro
:: AndAbrirLer(ficheiro); -> Abre para Ler um Ficheiro
:: AndFechar(ficheiro); -> Fecha/Salva um ficheiro
:: AndLerFicheiro(ficheiro,string); -> Lк um ficheiro
:: AndExiste(ficheiro); -> Verifica se um Ficheiro Existe
:: AndPegarChave(linha); -> Pega uma chave de um ficheiro
:: AndPegarValor(linha); -> Pega um valor de um ficheiro
:: AndTamanho(ficheiro); -> Verifica o tamanho de um ficheiro
__________________________________________________ ________________
Como Usar:
Topo do GM:
pawn Code:
#include <AndFicheiros> // Desta maneira vocк poderб usar todas as funcхes. APENAS SE VOCК ADICIONAR ISTO
No fundo do GM:
pawn Code:
stock NomeArquivo(playerid,variavel) // Define a funcгo
{
new andmeida20[120];// define o new para o string
GetPlayerName(playerid,cariavel,sizeof(variavel)); // Pega o Nome
format(andmeida20,sizeof(andmeida20),"%s.ini",variavel); // faz o format da string
}
Agora em OnPlayerCommandText:
pawn Code:
if (strcmp("/AndCriar", cmdtext, true, 10) == 0)
{
new variavel[MAX_PLAYER_NAME]; // cria o new da variavel
NomeArquivo(playerid,variavel); // faz tudo o que definimos acima
new File: NomeCriar = AndCriar(variavel); //Cria o ficheiro
}
pawn Code:
if (strcmp("/AndEscrever", cmdtext, true, 10) == 0)
{
new variavel[MAX_PLAYER_NAME]; // cria o new da variavel
NomeArquivo(playerid); // faz tudo o que pedimos acima
new File: NomeCriar = AndCriar(andmeida10); //Cria o ficheiro
if(AndExiste(NomeCriar)) // verifica se existe o ficheiro
{
new string[120]; // da o new da string
format(string,sizeof(string),"SkinID=%d\r\n",GetPlayerSkin(playerid)); // da o format de pegar a skin do player
AndEscrever(NomeCriar,string); // Escreve o format / string
AndFechar(NomeCriar); // fecha/salva o ficheiro
}
}
pawn Code:
if (strcmp("/AndAbrirLer", cmdtext, true, 10) == 0)
{
new variavel[MAX_PLAYER_NAME]; // cria o new da variavel
NomeArquivo(playerid); // faz tudo o que definimos acima
new File: NomeCriar = AndAbrirLer(andmeida10); // Abre o ficheiro para ler
if(!AndExiste(NomeCriar)) return SendClientMessage(playerid,0xFFFFFFFF,"Esse ficheiro nao existe"); // Verifica se o ficheiro existe
new BaseDados[256], Valor[256], Chave[256]; // dб os new nescessarios para salvar uma chave e valor
while(AndLerFicheiro(NomeCriar,BaseDados)) // Abre o ficheiro para ler/editar
{
Chave = AndPegarChave(BaseDados); // Define o que usar para pegar a chave
if(strcmp(Chave , "SkinID" , true) == 0) // Procura se existe a chave procurada
{
Valor = AndPegarValor(BaseDados); // Pega o valor de SkinID
SetPlayerSkin(playerid,strval(Valor); // Seta a skin do player para o valor que estб no ficheiro
}
}
AndFechar(NomeCriar); // fecha / salva o ficheiro
}
pawn Code:
if (strcmp("/AndTamanho", cmdtext, true, 10) == 0)
{
new variavel[MAX_PLAYER_NAME]; // define a variavel
NomeArquivo(playerid); // faz tudo o que fizemos acima
new File: NomeCriar = AndAbrirLer(andmeida10); // Abre o ficheiro para ler
new string[256]; // da o string para pegar o tamanho
format(string,sizeof(string),"O seu ficheiro tem %i bytes", AndTamanho(NomeCriar)); // pega o tamanho e seta ele para a string
SendClientMessage(playerid,0xFFFFFFFF,string); // envia a mensagem ao player com o tamanho do ficheiro
AndFechar(NomeCriar); // fecha/salva o ficheiro
}
__________________________________________________ ________________
Download
![](/imageshack/img64/3687/250z.png)
PS's:
:: Qualquer problema, por favor me informe por MP.
::Qualquer Bug, por favor me informe por MP