Nao salva as Contas -
AlucardSnow - 19.01.2013
Olha eu aqui denovo para minha tristeza hehe =)
2 problemas =)
As contas nao salvam, nao vгo para a pasta
Tem vez que vocк nasce e a camera fica travada e vc andando...
Linhas das cordenada :
Код:
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 OnPlayerRequestClass(playerid, classid)
{
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;
}
Codigo do Sistema POR COMPLETO!!
pawn Код:
#include <a_samp>
#include <Double-O-Files_2>
#define DIALOG_REGISTER 1
#define DIALOG_LOGIN 2
enum pInfo
{
pKills,
pDeaths,
pMoney,
pAdmin
}
new PlayerInfo[MAX_PLAYERS][pInfo];
//
public OnPlayerConnect(playerid)
{
new file[64]; // We declare the size of the file
GetPlayerName(playerid,file,sizeof(file)); // We get the file name
format(file,sizeof(file),DOF2_File(file));// Here we get the path from DOF2_File (/Users)
if(DOF2_FileExists(file)) // We check if the player is registered
{
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,"Welcome.Please log-in","{FFFFFF}Type your {00FF22}password {FFFFFF}here to log-in","Log-in","Quit");
// The log-in dialog will pop up
}
else // If not registered
{
ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,"Please register!","{FFFFFF}Type your {00FF22}password {FFFFFF}here to register.","Register","Quit");
// The register dialog will pop up
}
return 1;
}
//
public OnPlayerDisconnect(playerid, reason)
{
new file[64]; // We declare the size of the file
GetPlayerName(playerid,file,sizeof(file)); // We get the file name
format(file,sizeof(file),DOF2_File(file));// We get the user path from DOF2_File (folder Users)
DOF2_SetInt(file, "Kills",PlayerInfo[playerid][pKills]); // We set/update the players settings.
DOF2_SetInt(file, "Deaths",PlayerInfo[playerid][pDeaths]);
DOF2_SetInt(file, "Money",PlayerInfo[playerid][pMoney]);
DOF2_SetInt(file, "AdminLevel",PlayerInfo[playerid][pAdmin]);
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
PlayerInfo[killerid][pKills]++; // Will increase the killerid kills
PlayerInfo[playerid][pDeaths]++; // Will increase the playerid ( the one who died ) the deaths.
return 1;
}
//
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
switch(dialogid) // We switch our dialog id's
{
case DIALOG_REGISTER: // If the dialog_register shows up ( id 1111)
{
if(!response) Kick(playerid); // If he click on Quit, he will get kicked
if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,"Please register!","{FFFFFF}Type your {00FF22}password {FFFFFF}here to register.","Register","Quit");
// If he doesn't type anything, the dialog will show again.
if(response) // If he click on Register
{
new file[64]; // We declare the size of the file
GetPlayerName(playerid,file,sizeof(file)); // We get the file name
format(file,sizeof(file),DOF2_File(file)); // We get the path name from DOF2_File, that means from Users folder.
DOF2_CreateFile(file, inputtext); // Creates the file and the password.
DOF2_SetInt(file, "Kills", 0); // When the player register his kills will be set to 0, you can change
DOF2_SetInt(file, "Deaths", 0); // His deaths will be set to 0, you can change
DOF2_SetInt(file, "Money", 1000); // His money will be set to 1000, you can change
DOF2_SetInt(file, "AdminLevel", 0); // His Admin Level will be set to 0, you can change
DOF2_SaveFile(); // Saves the file.
SetSpawnInfo(playerid, 0, 0, 1722.5123, -1912.7931, 13.5647, 269.15, 0, 0, 0, 0, 0, 0); // Sets where the player will spawn, this coordinates are from the Unity Station in Los Santos
SpawnPlayer(playerid); // After registering, the player will spawn.
}
}
case DIALOG_LOGIN: // If dialog_login (id 2222) shows up
{
if(!response) Kick(playerid); // If he click on Quit, he will get kicked.
if(response) // If he click on Log-in
{
new file[64]; // We declare the size of the file
GetPlayerName(playerid,file,sizeof(file)); // We get the file name
format(file,sizeof(file),DOF2_File(file)); // We get the user path from DOF2_File ( folder Users )
if(DOF2_FileExists(file)) // If he is registered
{
if(DOF2_CheckLogin(file,inputtext)) // We check if the password match
{
PlayerInfo[playerid][pKills] = DOF2_GetInt(file,"Kills"); // We load our settings
PlayerInfo[playerid][pDeaths] = DOF2_GetInt(file,"Deaths");
PlayerInfo[playerid][pMoney] = DOF2_GetInt(file,"Money");
PlayerInfo[playerid][pAdmin] = DOF2_GetInt(file,"AdminLevel");
SetSpawnInfo(playerid, 0, 0, 1722.5123, -1912.7931, 13.5647, 269.15, 0, 0, 0, 0, 0, 0); // We set the spawn (Unity Station)
SpawnPlayer(playerid); // The player spawns after log-in
GivePlayerMoney(playerid, PlayerInfo[playerid][pMoney]); // We give the player his money
return 1;
}
else // If the password don't match, they will get an error
{
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,"Wrong Password!","{F81414}You have typed a wrong password\n{FFFFFF}Type your password here to log-in!","Log-in","Quit");
}
}
}
}
}
return 1;
}
// /\
Re: Nao salva as Contas -
Schocc - 19.01.2013
Em OnPlayerDisconnect
DOF2_SaveFile();
Re: Nao salva as Contas -
AlucardSnow - 19.01.2013
Nao deu certo
Sem erro de compilamento
pawn Код:
public OnPlayerDisconnect(playerid, reason)
{
DOF2_SaveFile();
new file[64]; // We declare the size of the file
GetPlayerName(playerid,file,sizeof(file)); // We get the file name
format(file,sizeof(file),DOF2_File(file));// We get the user path from DOF2_File (folder Users)
DOF2_SetInt(file, "Kills",PlayerInfo[playerid][pKills]); // We set/update the players settings.
DOF2_SetInt(file, "Deaths",PlayerInfo[playerid][pDeaths]);
DOF2_SetInt(file, "Money",PlayerInfo[playerid][pMoney]);
DOF2_SetInt(file, "AdminLevel",PlayerInfo[playerid][pAdmin]);
return 1;
}
Re: Nao salva as Contas -
Schocc - 19.01.2013
Coloque na ultima linha:
pawn Код:
public OnPlayerDisconnect(playerid, reason)
{
new file[64]; // We declare the size of the file
GetPlayerName(playerid,file,sizeof(file)); // We get the file name
format(file,sizeof(file),DOF2_File(file));// We get the user path from DOF2_File (folder Users)
DOF2_SetInt(file, "Kills",PlayerInfo[playerid][pKills]); // We set/update the players settings.
DOF2_SetInt(file, "Deaths",PlayerInfo[playerid][pDeaths]);
DOF2_SetInt(file, "Money",PlayerInfo[playerid][pMoney]);
DOF2_SetInt(file, "AdminLevel",PlayerInfo[playerid][pAdmin]);
DOF2_SaveFile();
return 1;
}
Re: Nao salva as Contas -
AlucardSnow - 19.01.2013
Eu entro do /q e nao adianta nada
Shocc acho que й outra parte do codigo.
Revisa ele todo la encima =D
Acho que nao ta DEFININDO para que pasta vai os arquivos
Re: Nao salva as Contas -
Schocc - 19.01.2013
Achei cade o local de salvamento do usuario??
Re: Nao salva as Contas -
Schocc - 19.01.2013
Use uma diretiva
#define USER_PATCH "ExemploPasta/%s.ini"
format( USER_FILE_VAR, sizeof( USER_FILE_VAR ), USER_PATCH, nome );
Re: Nao salva as Contas -
AlucardSnow - 19.01.2013
Nao entendi
o nome da pasta й Contas
me passa essa linha formada pois nao entendi '-'
Re: Nao salva as Contas -
Schocc - 19.01.2013
Veja como exemplo meu
filterscript
Vai ter uma base de uma boa forma..