[TuT] Register/Login system by Vilko

Započeo Vilko
28. Dec. 2010. Zaključano
12,331
pregleda
50
postova
Bebek
4
Made Man
28. Dec. 2010.
Evo posto su svi Dialog Register/Login sustavi za GF ili raven, ja sam odlucio napraviti za sve modove.

Pa da zapocmemo 😄


Trebate 2 include Dini i Dudb


Ovo stavljate pod definiranje includa, a include stavljate u Pawno/Include folder

#include
#include

Kada idete compile vjerovatno cete dobiti warning, ali nista strasno, popravit cemo to ovako

#pragma unused ret_memcpy


Ako ste to uspili savrsen ste skripter 🙂


Idemo na iduci korak
Sada treba dodati pamcenje Novaca, levela, admina i ostalog.


enum pInfo
{
   pAdminLevel,
   pCash,
   pScore,
}
new PlayerInfo;

Tako ce vam se zapamtiti Admin, Novac i Level.


Definirajte ovo new gPlayerLogged;
Pa onda ovo #define SERVER_USER_FILE "igraci/%s.ini"


E sada idemo na mao tezi korak


Ispod OnPlayerConnect morate staviti za konektiranje (logiranje) na server


    gPlayerLogged = 0;
   new name, file;
   GetPlayerName(playerid, name, sizeof(name));
   format(file, sizeof(file), SERVER_USER_FILE, name);
   if (!dini_Exists(file))
   {
       ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "Niste registrirani", "Dobrodosli, niste registrirani. Molim registrirajte se za daljnju igru", "Register", "Leave");
   }
   if(fexist(file))
   {
       ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Vi ste registrirani", "Dobrodosli, vi ste registrirani. Logirajte se", "Login", "Leave");
   }
return 1;
}


E sada pod OnPlayerDisconnect stavljamo ovo, sto nam daje kada se odlogujemo da nam zapamti sattistike

new name, file;
   GetPlayerName(playerid, name, sizeof(name));
   format(file, sizeof(file), SERVER_USER_FILE, name);
   if(gPlayerLogged == 1)
   {
       dini_IntSet(file, "Level", PlayerInfo);
       dini_IntSet(file, "Novac", PlayerInfo);
       dini_IntSet(file, "AdminLevel",PlayerInfo);
   }
   gPlayerLogged = 0;




I najlakse sada je Dialog 🙂




public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if (dialogid == 1)
   {
       new name, file, string;
       GetPlayerName(playerid, name, sizeof(name));
       format(file, sizeof(file), SERVER_USER_FILE, name);
       if(!response) return Kick(playerid);
       if (!strlen(inputtext)) return
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "Niste registrirani", "Dobrodosli, niste registrirani. Molim registrirajte se za daljnju igru", "Register", "Leave");
       dini_Create(file);
       dini_IntSet(file, "Lozinka", udb_hash(inputtext));
       dini_IntSet(file, "AdminLevel",PlayerInfo = 0);
       dini_IntSet(file, "Novci",PlayerInfo = 500);
       dini_IntSet(file, "Level",PlayerInfo = 0);
       format(string, 128, ": Registrirali ste se %s s sifrom %s, automatski ste logirani.", name, inputtext);
       SendClientMessage(playerid, COLOR_YELLOW, string);
       gPlayerLogged = 1;
   }
if (dialogid == 2)
   {
       new name, file, string;
       GetPlayerName(playerid, name, sizeof(name));
       format(file, sizeof(file), SERVER_USER_FILE, name);
       if(!response) return Kick(playerid);
       if (!strlen(inputtext)) return ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Vi ste registrirani", "Dobrodosli, vi ste registrirani. Logirajte se", "Login", "Leave");
       new tmp;
       tmp = dini_Int(file, "Lozinka");
       if(udb_hash(inputtext) != tmp) {
           SendClientMessage(playerid, COLOR_RED, "Pogresna lozinka.");
           ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Vi ste registrirani", "Dobrodosli, vi ste registrirani. Logirajte se", "Login", "Leave");
       }
       else
       {
           gPlayerLogged = 1;
           PlayerInfo = dini_Int(file, "AdminLevel");
           SetPlayerScore(playerid, PlayerInfo);
           GivePlayerMoney(playerid, dini_Int(file, "Novci")-GetPlayerMoney(playerid));
           SendClientMessage(playerid,COLOR_RED, ": Logirani ste!!");
       }
   }
return 1;
}

Tutorijal napravio Vilko. Evo neke slikice:

http://slike.hr/slike/samp001_67407.png.html
http://slike.hr/slike/samp002_98169.png.html
http://slike.hr/slike/samp003_7a7f2.png.html
http://slike.hr/slike/samp004_eaeb0.png.html
http://slike.hr/slike/samp005_145e1.png.html

Deleted User
Obrisan korisnik
28. Dec. 2010.
Svaka čast, ovo je dobro zato Å¡to radi za SVE modove  😁
Bebek
4
Made Man
28. Dec. 2010.
>> |Hawks| wrote on December 28, 2010, 12:55 pm:
Svaka čast, ovo je dobro zato Å¡to radi za SVE modove  😁

Radio sam ovo od 22.12 😄 I pito sam danas Correllija oce napravit tut, i onda sam skuzio u cemu je greska u ovom mom. Sve sam mogo napravit, ali mi se nije spremalo. Nisam napravio definiciju gdje da se spremaju datoteke 😄
Deleted User
Obrisan korisnik
28. Dec. 2010.
izvini ali sta je ovo?

http://forum.sa-mp.com/showthread.php?t=167937
Bebek
4
Made Man
28. Dec. 2010.
black_dota wrote on December 28, 2010, 1:06 pm:

Neam ja acc na samp forumu. Ja imam FS sto sam koristio na SGRP i po tome sam radio ovaj tut 🙂 Izmjenito je par stvari, i nepise ime autora
Deleted User
Obrisan korisnik
28. Dec. 2010.
Vilko | ♦ ♣ ♥ ♠ » wrote on December 28, 2010, 1:06 pm:

Neam ja acc na samp forumu. Ja imam FS sto sam koristio na SGRP i po tome sam radio ovaj tut 🙂 Izmjenito je par stvari, i nepise ime autora
jao koga ti lazes kao nemas na samp forumu acc

a isti tut samo prevedeno na Hrvatski jezik
Daffy
4
Enforcer
28. Dec. 2010.
lol 😄 Copy/paste
CroSector | Tequila
5
Crime Lord
28. Dec. 2010.
Vilko jos ti je ostalo "Leave"...
Bebek
4
Made Man
28. Dec. 2010.
Quote from December 28, 2010, 6:56 pm:
Vilko jos ti je ostalo "Leave"...


Vilko | ♦ ♣ ♥ ♠ » wrote on December 28, 2010, 1:08 pm:
Neam ja acc na samp forumu. Ja imam FS sto sam koristio na SGRP i po tome sam radio ovaj tut 🙂 Izmjenito je par stvari, i nepise ime autora


Procitaj to i sve ce ti biti jasno. Preveo sam i promjenio par stavri i prilagodio 0.3c, tj 0.3b 🙂
Deleted User
Obrisan korisnik
28. Dec. 2010.
Vilko | ♦ ♣ ♥ ♠ » wrote on December 28, 2010, 6:56 pm:
Vilko jos ti je ostalo "Leave"...


Vilko | ♦ ♣ ♥ ♠ » wrote on December 28, 2010, 1:08 pm:
Neam ja acc na samp forumu. Ja imam FS sto sam koristio na SGRP i po tome sam radio ovaj tut 🙂 Izmjenito je par stvari, i nepise ime autora


Procitaj to i sve ce ti biti jasno. Preveo sam i promjenio par stavri i prilagodio 0.3c, tj 0.3b 🙂
ali opet mu nisi stavio credits a i ta fs je mozda sa samp foruma/balkan sampa skinuta/radjena po tutu i sad kao si ti pravio
Bebek
4
Made Man
28. Dec. 2010.
Quote from December 28, 2010, 6:56 pm:
Vilko jos ti je ostalo "Leave"...


Vilko | ♦ ♣ ♥ ♠ » wrote on December 28, 2010, 1:08 pm:
Neam ja acc na samp forumu. Ja imam FS sto sam koristio na SGRP i po tome sam radio ovaj tut 🙂 Izmjenito je par stvari, i nepise ime autora


Procitaj to i sve ce ti biti jasno. Preveo sam i promjenio par stavri i prilagodio 0.3c, tj 0.3b 🙂
ali opet mu nisi stavio credits a i ta fs je mozda sa samp foruma/balkan sampa skinuta/radjena po tutu i sad kao si ti pravio

Ali opet ja neznam jel on pravio! Davno je to izaslo i skino sam bas s ovog foruma, bilo je sve na engleskom. Te teme vise nema, a i nema credista u FSu!
bero
5
Underboss
28. Dec. 2010.
A sta se sad bunite covijek zeli pomoc onima kojima ovo treba a vi ga sad guzite zbog toga jer je nesto prekopirao i preveo vam!
The Langdon
4
Enforcer
29. Dec. 2010.
Koga ti lazes OMG.... Sve si u zarez kopirao i samo preveo LOL....
samo je promjenjeno ime foldera u koji se spremaju igraci, a sve ostalo je u detalj KOPIRANO 😉
Deleted User
Obrisan korisnik
29. Dec. 2010.
e ali zezno si se nisi rekao ovo sto cu ja sad:

da bi se spremali accounti morate prvo napraviti folder:"igraci" u scriptfiles
kizla
3
Hustler
30. Dec. 2010.
C:\Documents and Settings\User\Desktop\Login_sistem.pwn(17) : fatal error 100: cannot read from file: "dini"

Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase

1 Error.

Sta sada ...

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava

© 2026 SmartShark. All rights reserved.

Powered by Momentum|v2026.3.001 Alpha