Advertisement
Guest User

Login/Register System

a guest
Aug 26th, 2012
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 6.30 KB | None | 0 0
  1. #define DIALOG_REGISTER 1
  2. #define DIALOG_LOGIN 2
  3.  
  4.  
  5.  
  6. public OnPlayerConnect(playerid)
  7. {
  8.     new Spielerdatei[64];
  9.     new name[MAX_PLAYER_NAME];
  10.     GetPlayerName(playerid,name,sizeof(name));
  11.     format (Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
  12.     if(dini_Exists(Spielerdatei))
  13.     {
  14.         ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Einloggen","Account wurde gefunden \nBitte gib dein Passwort ein","Login","Abbrechen");
  15.        
  16.     }
  17.     else
  18.     {
  19.         ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,"Registrieren","Wähle dein gewünschtes Passwort","Register","Abbrechen");
  20.        
  21.     }
  22.     return 1;
  23. }
  24.  
  25.  
  26.  
  27. public OnPlayerDisconnect(playerid, reason)
  28. {
  29.     if(GetPVarInt(playerid,"loggedin")==1)
  30.     {
  31.         SpielerSpeichern(playerid);
  32.         return 1;
  33.     }
  34.     return 1;
  35. }
  36.  
  37.  
  38. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  39. {
  40.     if(dialogid==DIALOG_LOGIN)
  41.     {
  42.         if(response==0)
  43.         {
  44.             SendClientMessage(playerid,hellrot,"Du wurdest vom Server gekickt \nGrund : Login Abgebrochen");
  45.             Kick(playerid);
  46.             return 1;
  47.         }
  48.  
  49.  
  50.         if(response==1)
  51.         {
  52.             if(!strlen(inputtext))
  53.             {
  54.                 SendClientMessage(playerid, hellblau, "Dein Passwort war nicht lang genug");
  55.                 ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Einloggen","Account wurde gefunden \nBitte gib dein Passwort ein","Login","Abbrechen");
  56.                 return 1;
  57.             }
  58.             else
  59.             {
  60.                 Login(playerid, inputtext);
  61.                 if(GetPVarInt(playerid,"Startbonus")==0)
  62.                 {
  63.                     SendClientMessage(playerid,BLAU,"Du hast dein Startbonus noch nicht eingelöst! Löse den Startbonus mit /startbonus ein!");
  64.                 }
  65.                 return 1;
  66.  
  67.             }
  68.  
  69.         }
  70.  
  71.         return 1;
  72.  
  73.  
  74.     }
  75.     if(dialogid==DIALOG_REGISTER)
  76.     {
  77.         if(response==0)
  78.         {
  79.             SendClientMessage(playerid,hellrot,"Du wurdest vom Server gekickt \nGrund : Registrierung Abgebrochen");
  80.             Kick(playerid);
  81.             return 1;
  82.         }
  83.  
  84.  
  85.         if(response==1)
  86.         {
  87.             if(!strlen(inputtext))
  88.             {
  89.                 SendClientMessage(playerid, hellblau, "Dein Passwort war nicht lang genug");
  90.                 ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,"Registrieren","Wähle dein gewünschtes Passwort","Register","Abbrechen");
  91.                 return 1;
  92.             }
  93.             else
  94.             {
  95.                 Register(playerid, inputtext);
  96.                 SendClientMessage(playerid,BLAU,"Herzlich Willkommen auf Houston Reallife. Mit /startbonus bekommst du ein Willkommensgeschenk");
  97.                 return 1;
  98.             }
  99.  
  100.         }
  101.  
  102.         return 1;
  103.     }
  104.  
  105.  
  106.  
  107. stock Register(playerid, key[])
  108. {
  109.     new Spielerdatei[64];
  110.     new name[MAX_PLAYER_NAME];
  111.     GetPlayerName(playerid,name,sizeof(name));
  112.     format (Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
  113.     dini_Create(Spielerdatei);
  114.     dini_Set(Spielerdatei,"Passwort",key);
  115.     SendClientMessage(playerid, hellblau,"Dein Account wurde Erfolgreich angelegt.");
  116.     dini_IntSet(Spielerdatei,"Level",1);
  117.     SetPVarInt(playerid,"loggedin",1);
  118.     return 1;
  119. }
  120.  
  121. stock Login(playerid, key[])
  122. {
  123.         new Spielerdatei[64];
  124.     new name[MAX_PLAYER_NAME];
  125.     GetPlayerName(playerid,name,sizeof(name));
  126.     format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
  127.     if(!strcmp(key,dini_Get(Spielerdatei,"Passwort"),false)) //Liest das Passwort aus. Wenn es Falsch ist wird der Teil nach dem else Angezeigt. (False steht für Groß und Kleinschreibung nicht Beachten)
  128.     {
  129.         LoadAccount(playerid);
  130.         SendClientMessage(playerid,hellblau,"Erfolgreich eingeloggt");
  131.         SetPVarInt(playerid,"loggedin",1);
  132.         return 1;
  133.     }
  134.     else
  135.     {
  136.         SendClientMessage(playerid,hellrot,"Falsches Passwort.");
  137.         ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Einloggen","Account wurde gefunden   \nBitte gib dein Passwort ein","Login","Abbrechen");
  138.         return 1;
  139.     }
  140. }
  141.  
  142. stock LoadAccount(playerid)
  143. {
  144.     new Spielerdatei[64];
  145.     new name[MAX_PLAYER_NAME];
  146.     GetPlayerName(playerid,name,sizeof(name));
  147.     format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
  148.     SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level"));
  149.     GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld"));
  150.     SetPlayerSkin(playerid,dini_Int(Spielerdatei,"Skin"));
  151.     //SetPVarInt(playerid,"Respekt",dini_Int(Spielerdatei,"Respekt"));
  152.     SetPVarInt(playerid,"Skin",dini_Int(Spielerdatei,"Skin"));
  153.     SetPVarInt(playerid,"Adminlevel",dini_Int(Spielerdatei,"Adminlevel"));
  154.     SetPVarInt(playerid,"Fraktion",dini_Int(Spielerdatei,"Fraktion"));
  155.     SetPVarInt(playerid,"Mute",dini_Int(Spielerdatei,"Mute"));
  156.     SetPVarInt(playerid,"Banned",dini_Int(Spielerdatei,"Banned"));
  157.     SetPVarInt(playerid,"Startbonus",dini_Int(Spielerdatei,"Startbonus"));
  158.     SetPVarInt(playerid,"AdminFahrzeug",dini_Int(Spielerdatei,"AdminFahrzeug"));
  159.     SetPVarInt(playerid,"AdminDuty",dini_Int(Spielerdatei,"AdminDuty"));
  160.     SetPVarInt(playerid,"SupportTicket",dini_Int(Spielerdatei,"SupportTicket"));
  161.     if(GetPVarInt(playerid,"Banned")==1)
  162.     {
  163.         SendClientMessage(playerid,Rot,"Du wurdest vom Server gebannt. Melde dich im Forum unter www.forum.de , wenn dies zu Unrecht geschehen ist.");
  164.         Kick(playerid);
  165.     }
  166.     return 1;
  167. }
  168.  
  169. stock SpielerSpeichern(playerid)
  170. {
  171.     if(GetPVarInt(playerid,"loggedin")==1)
  172.     {
  173.         new Spielerdatei[64];
  174.         new name[MAX_PLAYER_NAME];
  175.         GetPlayerName(playerid,name,sizeof(name));
  176.         format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
  177.         dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid));
  178.         dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
  179.         dini_IntSet(Spielerdatei,"Skin",GetPlayerSkin(playerid));
  180.         //dini_IntSet(Spielerdatei,"Respekt",GetPVarInt(playerid,"Respekt"));
  181.         dini_IntSet(Spielerdatei,"Adminlevel",GetPVarInt(playerid,"Skin"));
  182.         dini_IntSet(Spielerdatei,"Adminlevel",GetPVarInt(playerid,"Adminlevel"));
  183.         dini_IntSet(Spielerdatei,"Fraktion",GetPVarInt(playerid,"Fraktion"));
  184.         dini_IntSet(Spielerdatei,"Mute",GetPVarInt(playerid,"Mute"));
  185.         dini_IntSet(Spielerdatei,"Banned",GetPVarInt(playerid,"Banned"));
  186.         dini_IntSet(Spielerdatei,"Startbonus",GetPVarInt(playerid,"Startbonus"));
  187.         dini_IntSet(Spielerdatei,"AdminFahrzeug",GetPVarInt(playerid,"AdminFahrzeug"));
  188.         dini_IntSet(Spielerdatei,"AdminDuty",GetPVarInt(playerid,"AdminDuty"));
  189.         dini_IntSet(Spielerdatei,"SupportTicket",GetPVarInt(playerid,"SupportTicket"));
  190.         return 1;
  191.     }
  192.     return 1;
  193. }
  194.  
  195. stock isPlayerAnAdmin(playerid,rank)
  196. {
  197.     if(GetPVarInt(playerid,"Adminlevel")>=rank)return 1;
  198.     return 0;
  199. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement