18.10.2014, 18:44
oi, estou comeзando a programar pawn e entгo procurei por algum tutorial de registro e entгo achei usando DOF2
tentei fazer mas algo da errado ele compila tudo ok mais nгo cria o arquivo .ini do player tambйm nгo spawna o player.
tentei olhar vбrios tutoriais aqui mais a maioria й antigo e nгo funciona "corretamente" de modo que eu entenda pois cada tutorial й algo diferente sei lб :\. entгo estou pedindo ajuda aqui se alguйm puder ajudar agradeзo
e se alguйm quiser me recomendar alguma outra include para sistemas de salvamento й sу colocar aqui na thread mas nгo algo como MySql pois й bem complexo mais ainda estou no level iniciante...
tentei fazer mas algo da errado ele compila tudo ok mais nгo cria o arquivo .ini do player tambйm nгo spawna o player.
tentei olhar vбrios tutoriais aqui mais a maioria й antigo e nгo funciona "corretamente" de modo que eu entenda pois cada tutorial й algo diferente sei lб :\. entгo estou pedindo ajuda aqui se alguйm puder ajudar agradeзo
e se alguйm quiser me recomendar alguma outra include para sistemas de salvamento й sу colocar aqui na thread mas nгo algo como MySql pois й bem complexo mais ainda estou no level iniciante...
pawn Код:
enum pInfo
{
pMoney,
pAdmin,
pDeaths,
pKills
}
new PlayerInfo[MAX_PLAYERS][pInfo];
main()
{
}
public OnGameModeInit()
{
return 1;
}
public OnGameModeExit()
{
DOF2_Exit();
return 1;
}
public OnPlayerConnect(playerid)
{
new file[70], name[32];
GetPlayerName(playerid, file, sizeof(file));
format(file, sizeof(file), "Contas/%s.ini", name);
if(DOF2_FileExists(file))
{
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "LOGIN", "Bem Vindo novamente para se logar digite sua senha", "Logar-se", "Sair");
}
else
{
ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "REGISTRO", "Olб, seja bem vindo ao servidor digite uma senha para se registrar-se", "Registra-se", "Sair");
}
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
new file[64], name[32];
GetPlayerName(playerid,file,sizeof(file));
format(file, sizeof(file), "Contas/%s.ini", name);
DOF2_SetInt(file, "Kills",PlayerInfo[playerid][pKills]);
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]++;
PlayerInfo[playerid][pDeaths]++;
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
switch(dialogid)
{
case DIALOG_REGISTER:
{
if(!response) Kick(playerid);
if(!strlen(inputtext))
if(response)
{
new file[70], name[32];
GetPlayerName(playerid, file, sizeof(file));
format(file, sizeof(file), "Contas/%s.ini", name);
DOF2_CreateFile(file, inputtext);
DOF2_SetInt(file, "Kills", 0);
DOF2_SetInt(file, "Deaths", 0);
DOF2_SetInt(file, "Admin", 0);
DOF2_SetInt(file, "Money", 1000);
DOF2_SaveFile();
SetSpawnInfo(playerid, 0, 0, 1112.1842,-1434.9047,15.7981,148.2633, 0, 0, 0, 0, 0, 0);
SpawnPlayer(playerid);
}
}
case DIALOG_LOGIN:
{
if(!response) Kick(playerid);
if(response)
{
new file[64], name[32];
GetPlayerName(playerid, file, sizeof(file));
format(file, sizeof(file), "Contas/%s.ini", name);
if(DOF2_FileExists(file))
{
if(DOF2_CheckLogin(file,inputtext))
{
PlayerInfo[playerid][pMoney] = DOF2_GetInt(file, "Money");
PlayerInfo[playerid][pKills] = DOF2_GetInt(file, "Kills");
PlayerInfo[playerid][pDeaths] = DOF2_GetInt(file, "Deaths");
PlayerInfo[playerid][pAdmin] = DOF2_GetInt(file, "Admin");
SetSpawnInfo(playerid, 0, 0, 1112.1842,-1434.9047,15.7981,148.2633, 0, 0, 0, 0, 0, 0);
SpawnPlayer(playerid);
GivePlayerMoney(playerid, PlayerInfo[playerid][pMoney]);
return 1;
}
else
{
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "LOGIN", "Vocк errou sua senha tente novamente", "Logar-se", "Sair");
return 1;
}
}
}
}
}
return 1;
}