Ennek elvileg mukodnie kell
#include <a_samp>
#include <dini>
new szoveg1[128];
new Fajl[256];
enum pAdat
{
pPenz,
pAdmin,
pBan,
pNem,
pKor,
pSkin,
pLeader,
pTag,
pRang,
pHorgaszBot,
pOra,
pPerc,
pMPerc,
Float:pX,
Float:pY,
Float:pZ,
Float:pAngle
}
new JatekosInfo[MAX_PLAYERS][pAdat];
#define DIALOG_REGISTER 1
#define DIALOG_LOGIN 2
#define DIALOG_AGE 3
#define DIALOG_SEX 4
#define KEK 0x00ccffAA
#define ZOLD 0x43e85fAA
#define FEHER 0xffffffAA
#pragma tabsize 0
public OnPlayerConnect(playerid)
{
SetSpawnInfo(playerid,0,26,2269.4287,-75.1134,26.7724,178.8719,0,0,0,0,0,0);
SpawnPlayer(playerid);
format(Fajl,sizeof(Fajl),\"/Karakterek/%s.ini\",Neve(playerid));
format(szoveg1,sizeof(szoveg1),\"Üdvözöllek %s!\",Neve(playerid));
if(fexist(Fajl))
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,szoveg1,\"Ez a név már regisztrálva van!\\nKérlek jelentkezz be!\",\"Belép\",\"Kilép\");
}
else
{
ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,szoveg1,\"Ez a név még nincsen regisztrálva!\\nKérlek regisztrálj!\",\"Regisztrál\",\"Kilép\");
}
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
JatekosInfo[playerid][pX] = x;
JatekosInfo[playerid][pY] = y;
JatekosInfo[playerid][pZ] = z;
JatekosInfo[playerid][pPenz] = GetPlayerMoney(playerid);
JatekosInfo[playerid][pSkin] = GetPlayerSkin(playerid);
GetPlayerFacingAngle(playerid,JatekosInfo[playerid][pAngle]);
format(Fajl,sizeof(Fajl),\"/Karakterek/%s.ini\",Neve(playerid));
dini_IntSet(Fajl,\"Penz\",JatekosInfo[playerid][pPenz]);
dini_IntSet(Fajl,\"Skin\",JatekosInfo[playerid][pSkin]);
dini_FloatSet(Fajl,\"Latoszog\",JatekosInfo[playerid][pAngle]);
dini_FloatSet(Fajl,\"X\",Float:JatekosInfo[playerid][pX]);
dini_FloatSet(Fajl,\"Y\",Float:JatekosInfo[playerid][pY]);
dini_FloatSet(Fajl,\"Z\",Float:JatekosInfo[playerid][pZ]);
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
format(Fajl,sizeof(Fajl),\"/Karakterek/%s.ini\",Neve(playerid));
if(dialogid == DIALOG_REGISTER)
{
if(response)
{
dini_Create(Fajl);
dini_Set(Fajl,\"Jelszo\",inputtext);
dini_IntSet(Fajl,\"Penz\",25000);
dini_IntSet(Fajl,\"Admin\",0);
dini_IntSet(Fajl,\"Ban\",0);
dini_IntSet(Fajl,\"Nem\",0);
dini_IntSet(Fajl,\"Kor\",0);
dini_IntSet(Fajl,\"Skin\",0);
dini_IntSet(Fajl,\"Leader\",0);
dini_IntSet(Fajl,\"Tag\",0);
dini_IntSet(Fajl,\"Rang\",0);
dini_IntSet(Fajl,\"HorgaszBot\",0);
dini_IntSet(Fajl,\"Ora\",0);
dini_IntSet(Fajl,\"Perc\",0);
dini_IntSet(Fajl,\"MasodPerc\",0);
SpawnPlayer(playerid);
ShowPlayerDialog(playerid,DIALOG_SEX,DIALOG_STYLE_LIST,\"Regisztráció...\",\"Fiú\\nLány\",\"Folytat\",\"Kilép\");
}
else
{
dini_Remove(Fajl);
KickEx(playerid,\"Rányomtál a Kilép gombra ezért kidobott a szerver!\");
}
}
if(dialogid == DIALOG_SEX)
{
if(response)
{
if(listitem == 0)
{
dini_IntSet(Fajl,\"Nem\",1);
SendClientMessage(playerid,KEK,\"Fiú lettél!\");
SetPlayerSkin(playerid,60);
ShowPlayerDialog(playerid,DIALOG_AGE,DIALOG_STYLE_INPUT,\"Regisztráció...\",\"Hány éves vagy?\",\"Folytat\",\"Kilép\");
}
if(listitem == 1)
{
dini_IntSet(Fajl,\"Nem\",2);
SendClientMessage(playerid,KEK,\"Lány lettél!\");
SetPlayerSkin(playerid,233);
ShowPlayerDialog(playerid,DIALOG_AGE,DIALOG_STYLE_INPUT,\"Regisztráció...\",\"Hány éves vagy?\",\"Folytat\",\"Kilép\");
}
}
else{dini_Remove(Fajl), KickEx(playerid,\"Rányomtál a Kilép gombra ezért kidobott a szerver!\");}
}
if(dialogid == DIALOG_AGE)
{
if(response)
{
if(strlen(inputtext))
{
new age = strval(inputtext);
if(age > 100 || age < 18)
{
ShowPlayerDialog(playerid,DIALOG_AGE,DIALOG_STYLE_INPUT,\"Regisztráció...\",\"Rossz kor!\\nHány éves vagy?\",\"Folytat\",\"Kilép\");
}
else
{
dini_IntSet(Fajl,\"Kor\",age);
format(szoveg1,sizeof(szoveg1),\"%d éves lettél!\",age);
SendClientMessage(playerid,ZOLD,szoveg1);
GivePlayerMoney(playerid,25000);
SendClientMessage(playerid,KEK,\"Sikeresen regisztráltál!\");
}
}
else{return 0;}
}
else{dini_Remove(Fajl), KickEx(playerid,\"Rányomtál a Kilép gombra ezért kidobott a szerver!\");}
}
if(dialogid == DIALOG_LOGIN)
{
if(response)
{
new jelszo[200];
format(jelszo,sizeof(jelszo),\"%s\",dini_Get(Fajl,\"Jelszo\"));
if(strcmp(inputtext,jelszo) == 0)
{
SetPlayerSkin(playerid,JatekosInfo[playerid][pSkin]);
SetPlayerColor(playerid,FEHER);
SetSpawnInfo(playerid,0,JatekosInfo[playerid][pSkin],JatekosInfo[playerid][pX],JatekosInfo[playerid][pY],JatekosInfo[playerid][pZ],JatekosInfo[playerid][pAngle],0,0,0,0,0,0);
SpawnPlayer(playerid);
GivePlayerMoney(playerid,JatekosInfo[playerid][pPenz]);
SendClientMessage(playerid,KEK,\"Sikeresen Bejelentkeztél!\");
if(JatekosInfo[playerid][pBan] == 1){KickEx(playerid,\"Te ki lettél tiltva a szerverrõl! Ha segítség kell látogasd meg a fórumot!\");}
}
else{ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,\"Bejelentkezõ Panel\",\"Rossz jelszó!\\nJelentkezz be!\",\"Oké\",\"Kilép\");}
}
else{KickEx(playerid,\"Rányomtál a Kilép gombra ezért kidobott a szerver!\");}
}
return 1;
}
stock Neve(playerid)
{
new Nev[MAX_PLAYER_NAME];
GetPlayerName(playerid,Nev,sizeof(Nev));
return Nev;
}
stock KickEx(playerid,indok[])
{
SetTimerEx(\"KickRe\",25,0,\"d\",playerid);
SendClientMessage(playerid,0xAA3333AA,indok);
return 1;
}
forward KickRe(playerid);
public KickRe(playerid) {Kick(playerid);}