08.12.2018, 05:57
Boa madrugada pra todos,
Eu queria saber se da pra usar a funзгo dini_exists pra checar se um arquivo nгo existe
Se esse arquivo .ini nгo existir(que seria a conta do jogador), eu gostaria que essa dialog aparecesse pra ele
Se esse arquivo .ini existir, eu gostaria que aparecesse essa dialog
Eu sei que deve ser coisa boba se der pra fazer, mas й que estou aprendendo mesmo, quem puder me ajudar +REP
Me desculpem pelos cуdigos grandes e obrigado desde jб!
Eu queria saber se da pra usar a funзгo dini_exists pra checar se um arquivo nгo existe
Se esse arquivo .ini nгo existir(que seria a conta do jogador), eu gostaria que essa dialog aparecesse pra ele
pawn Код:
ShowPlayerDialog(playerid, bemvindo, DIALOG_STYLE_MSGBOX,"Seja bem vindo ao Magic RPG", "Sistemas ъnicos e inovadores em breve, clique em entrar para comeзar a jogar", "Entrar", "Sair");
pawn Код:
format(msgsdialog, sizeof(msgsdialog), "%s, seu nick estб disponivel para jogar com a gente, digite uma senha e clique em registrar", aname);
ShowPlayerDialog(playerid, registrar, 3, "Registro:", msgsdialog, "Registrar", "Sair");
pawn Код:
public OnPlayerRequestClass(playerid, classid)
{
new aname[MAX_PLAYER_NAME];
GetPlayerName(playerid, aname, MAX_PLAYER_NAME);
format(file, sizeof(file), pcontas, aname);
SetPlayerSkin(playerid,dini_Int(file, "Skin"));
PlayerPlaySound(playerid, 1185, 0.0, 0.0, 0.0);
ShowPlayerDialog(playerid, bemvindo, DIALOG_STYLE_MSGBOX,"Seja bem vindo ao Magic RPG", "Sistemas ъnicos e inovadores em breve, clique em entrar para comeзar a jogar", "Entrar", "Sair");
SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
PlayAudioStreamForPlayer(playerid, "https://dl.dropboxusercontent.com/s/qxbn5atckiag2yn/Major%20Lazer%20-%20Light%20It%20Up%20%28feat.%20Nyla%20_%20Fuse%20ODG%29%20-%20128K%20MP3.mp3");
GameTextForPlayer(playerid,"Magic RPG", 2000, 1);
ApplyAnimation(playerid,"STRIP", "STR_Loop_A", 1.800001, 1, 0, 0, 1, 600);
return 1;
}
pawn Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == bemvindo)
{
if(response == 1)
{
new aname[MAX_PLAYER_NAME];
GetPlayerName(playerid, aname, sizeof(aname));
format(file, sizeof(file), pcontas, aname);
if(playerinfo[playerid][logado] == 0){
if(!dini_Exists(file))
{
format(msgsdialog, sizeof(msgsdialog), "%s, seu nick estб disponivel para jogar com a gente, digite uma senha e clique em registrar", aname);
ShowPlayerDialog(playerid, registrar, 3, "Registro:", msgsdialog, "Registrar", "Sair");
}
if(dini_Exists(file))
{
format(msgsdialog, sizeof(msgsdialog), "Seja bem vindo novamente %s, digite sua senha e clique em entrar", aname);
ShowPlayerDialog(playerid, entrar, 3, "Login:", msgsdialog, "Entrar", "Sair");
}
}
}else{
new str[256];
new aname[MAX_PLAYER_NAME];
GetPlayerName(playerid, aname, MAX_PLAYER_NAME);
format(str, sizeof(str), "%s saiu do servidor (Registro/Login)", aname);
SendClientMessageToAll(vermelho1, str);
Kick(playerid);
}
}
if(dialogid == registrar)
{
new aname[MAX_PLAYER_NAME];
GetPlayerName(playerid, aname, sizeof(aname));
format(file, sizeof(file), pcontas, aname);
if(response == 1)
{
if(strlen(inputtext) < senhaminima || strlen(inputtext) > senhamaxima)
{
format(msgsdialog, sizeof(msgsdialog), "Vocк deve utilizar uma senha que tenha de 5 a 20 caracteres");
ShowPlayerDialog(playerid, registrar, 3, "Registro:", msgsdialog, "Registrar", "Sair");
return 1;
}
dini_Create(file);
dini_Set(file, "Senha", encrypt(inputtext));
dini_Set(file, "Skin", "0");
dini_Set(file, "Profissao", "0");
dini_Set(file, "ContaBancaria", "0");
dini_Set(file, "SaldoBancario", "0");
dini_Set(file, "Celular", "0");
dini_Set(file, "HabTerrestre", "0");
dini_Set(file, "HabAerea", "0");
dini_Set(file, "HabNautica", "1");
dini_Set(file, "Preso", "0");
dini_Set(file, "Casa", "0");
dini_Set(file, "Carta", "0");
dini_Set(file, "Lembrete", "Nada");
dini_Set(file, "Level","0");
dini_IntSet(file,"Continuar",0);
dini_Set(file, "Combustivel", "20");
dini_IntSet(file, "Conhecido", 1);
dini_IntSet(file, "Porte", 0);
dini_Set(file, "Multas", "0");
dini_IntSet(file, "Carteira", 0);
dini_IntSet(file, "Level", 5);
dini_IntSet(file, "Admin", 0);
GivePlayerGrana(playerid,500);
ShowPlayerDialog(playerid, cidades, DIALOG_STYLE_MSGBOX, "Registro:", "Em qual cidade vocк quer morar?", "Los Santos", "San Fierro");
PlayerPlaySound(playerid, 1057, 0, 0, 0);
playerinfo[playerid][logado] = 1;
}else{
format(msgsdialog, sizeof(msgsdialog), "%s, para jogar vocк terб que criar uma conta, digite uma senha e clique em registrar", aname);
ShowPlayerDialog(playerid, registrar, 3, "Registro:", msgsdialog, "Registrar", "Sair");
}
}
if(dialogid == entrar)
{
new aname[MAX_PLAYER_NAME];
GetPlayerName(playerid, aname, sizeof(aname));
format(file, sizeof(file), pcontas, aname);
if(response == 1)
{
new senhaconta[256];
senhaconta = dini_Get(file, "Senha");
if(strcmp(encrypt(inputtext), senhaconta, true) == 0)
{
padmin[playerid] = dini_Int(file, "Admin");
SetSpawnInfo(playerid, 1, dini_Int(file, "Skin"), dini_Int(file, "CasaX"), dini_Int(file, "CasaY"), dini_Int(file, "CasaZ"), 354.1657, 0, 0, 0, 0, 0, 0);
if(dini_Int(file, "Continuar") == 1){
SendClientMessage(playerid, oliva1, "(INFO) Para voltar a sua ultima posiзгo ao sair do servidor utilize /continuar");
}
if(dini_Int(file2,"Conhecido") == 2){
new str[256];
format(str, sizeof(str), "(INFO) Bem vindo novamente %s!", aname);
SendClientMessage(playerid, oliva1, str);
}
if(padmin[playerid] > 0)
{
new string[128];
new nomeadmin[MAX_PLAYER_NAME];
GetPlayerName(playerid, nomeadmin, sizeof(nomeadmin));
format(string, sizeof(string), "~w~%s ~p~o~r~n~g~l~y~i~b~n~g~e", nomeadmin);
for(new i=0; i<MAX_PLAYERS; i++)
{
GameTextForPlayer(i, string , 5000, 1);
}
}
if(strcmp(aname, "[MR]Mage", true) == 0 || strcmp(aname, "Mage", true) == 0){
padmin[playerid] = 5;
}
playerinfo[playerid][logado] = 1;
GivePlayerGrana(playerid, dini_Int(file, "Dinheiro"));
SpawnPlayer(playerid);
GameTextForPlayer(playerid, "~r~Logado com sucesso", 8000, 3);
PlayerPlaySound(playerid, 1057, 0, 0, 0);
}else{
playerinfo[playerid][errousenha]++;
if(playerinfo[playerid][errousenha] >= 3)
{
format(msgsdialog, sizeof(msgsdialog), "(INFO) %s Foi kickado automaticamente por errar a senha trкs vezes", aname, 5);
SendClientMessageToAll(verde1, msgsdialog);
Kick(playerid);
}else{
format(msgsdialog, sizeof(msgsdialog), "Senha incorreta, caso erre a senha mais duas vezes vocк serб expulso do servidor");
ShowPlayerDialog(playerid, entrar, 3, "Login:", msgsdialog, "Entrar", "Sair");
}
}
}else{
format(msgsdialog, sizeof(msgsdialog), "Logue para poder jogar, digite sua senha e clique em entrar",aname);
ShowPlayerDialog(playerid, entrar, 3, "Login:", msgsdialog, "Entrar", "Sair");
}
}
if(dialogid == cidades)
{
new aname[MAX_PLAYER_NAME];
GetPlayerName(playerid, aname, sizeof(aname));
format(file, sizeof(file), pcontas, aname);
if(response == 1){
{
dini_FloatSet(file,"CasaX",Float:1693.4847);
dini_FloatSet(file,"CasaY",Float:-2331.4468);
dini_FloatSet(file,"CasaZ",Float:-2.6797);
SetSpawnInfo(playerid, 1, dini_Int(file, "Skin"), dini_Int(file, "CasaX"), dini_Int(file, "CasaY"), dini_Int(file, "CasaZ"), 270.6406, 0, 0, 0, 0, 0, 0);
SpawnPlayer(playerid);
}
}else{
dini_FloatSet(file,"CasaX",Float:1693.4847);
dini_FloatSet(file,"CasaY",Float:-2331.4468);
dini_FloatSet(file,"CasaZ",Float:-2.6797);
SetSpawnInfo(playerid, 1, dini_Int(file, "Skin"), dini_Int(file, "CasaX"), dini_Int(file, "CasaY"), dini_Int(file, "CasaZ"), 270.6406, 0, 0, 0, 0, 0, 0);
SpawnPlayer(playerid);
}
return 1;
}
return 1;
}