Jump to content
  • 0

pomoc Registračka


Mikoo

Dotaz

Zdravím

 

Dnes som sa pozrel do pawna dorabal som niečo do GM a keď som ho išiel vyskušať tak všetko v poho išlo až nato že ked som sa zaregistroval a po chvili som odišiel a vratil som sa s5 a jak som sa prihlasoval tak že zadali ste nespravne heslo.. A robilo mi to na každy učet čo som vytvoril..

Popredu ďakujem...

Link to comment
Share on other sites

15 odpovědí na tuto otázku

Recommended Posts

  • 0
  • Globální moderátor

Skús dať PC do servisu...  nie vážne, ako ti to máme povedať? neukázal si kód, kód určuje ako sa program správa, to že napíšeš že je niečo zle nestačí, postni sem kód a budeme ti vedieť pomôcť

Link to comment
Share on other sites

  • 0

 

 

#include <a_samp>

#include <y_ini>

 

//--registraèka---

#define DIALOG_REGISTER 1

#define DIALOG_LOGIN 2

#define DIALOG_SUCCESS_1 3

#define DIALOG_SUCCESS_2 4

//--

#define PATH "/Users/%s.ini"

//--

#define COL_WHITE "{FFFFFF}"

#define COL_RED "{F81414}"

#define COL_GREEN "{00FF22}"

#define COL_LIGHTBLUE "{00CED1}"

//-----

enum pInfo

{

pPass,

pCash,

pKills,

pDeaths,

pAdmin

}

new PlayerInfo[MAX_PLAYERS][pInfo];

//-------------------------------------------------------------------|

stock UserPath(playerid)

{

new string[128],playername[MAX_PLAYER_NAME];

GetPlayerName(playerid,playername,sizeof(playername));

format(string,sizeof(string),PATH,playername);

return string;

}

//--

stock udb_hash(buf[]) {

new length=strlen(buf);

new s1 = 1;

new s2 = 0;

new n;

for (n=0; n<length; n++)

{

s1 = (s1 + buf[n]) % 65521;

s2 = (s2 + s1) % 65521;

}

return (s2 << 16) + s1;

}

//--------koniec registracky---------//

 

public OnPlayerConnect(playerid){

//-------join message-------|

new pname[MAX_PLAYER_NAME], string[150 + MAX_PLAYER_NAME];

GetPlayerName(playerid, pname, sizeof(pname));

format(string, sizeof(string), "{00FF00}Hráè {FFFFFF}%s {00FF00}[{FFFFFF}%d{00FF00}] prišiel na server!", pname,playerid);

SendClientMessageToAll(0xAAAAAAAA, string);

//-----------registraèja---------------|

if(fexist(UserPath(playerid)))

{

INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);

ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,""COL_WHITE"Login",""COL_WHITE"Zadajte heslo pre prihlasenie!","Login","Konec");

}

else

{

ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,""COL_WHITE"Register",""COL_WHITE"Zadajte heslo pre zaregistrovanie nového uètu!","Register","Konec");

}

return true;

}

 

public OnPlayerDisconnect(playerid, reason){

//---------register----------|

new INI:File = INI_Open(UserPath(playerid));

INI_SetTag(File,"Informacie");

INI_WriteInt(File,"Cash",GetPlayerMoney(playerid));

INI_WriteInt(File,"Kills",PlayerInfo[playerid][pKills]);

INI_WriteInt(File,"Deaths",PlayerInfo[playerid][pDeaths]);

INI_WriteInt(File,"AdminLevel",PlayerInfo[playerid][pAdmin]);

INI_Close(File);

//---------------------------|

new pname[MAX_PLAYER_NAME], string[120 + MAX_PLAYER_NAME];

GetPlayerName(playerid, pname, sizeof(pname));

switch(reason)

{

case 0: format(string, sizeof(string), "{00FF00}Hráè {FFFFFF}%s {00FF00}[{FFFFFF}%d{00FF00}] opustil server. [spadla hra]", pname,playerid);

case 1: format(string, sizeof(string), "{00FF00}Hráè {FFFFFF}%s {00FF00}[{FFFFFF}%d{00FF00}] opustil server. [Odišiel]", pname,playerid);

case 2: format(string, sizeof(string), "{00FF00}Hráè {FFFFFF}%s {00FF00}[{FFFFFF}%d{00FF00}] opustil server. [Kick/Ban]", pname,playerid);

}

SendClientMessageToAll(0xAAAAAAAA, string);

return true;

}

 

public OnPlayerDeath(playerid, killerid, reason){

//---------------------------|

PlayerInfo[killerid][pKills]++;

PlayerInfo[playerid][pDeaths]++;

//---------------------------|

if(playerid != killerid) SetPlayerWantedLevel(killerid, GetPlayerWantedLevel(killerid) + 1);

return true;

}

 

forward LoadUser_data(playerid,name[],value[]);

public LoadUser_data(playerid,name[],value[])

{

INI_Int("Password",PlayerInfo[playerid[pPass];

INI_Int("Cash",PlayerInfo[playerid][pCash]);

INI_Int("Kills",PlayerInfo[playerid][pKills]);

INI_Int("Deaths",PlayerInfo[playerid[pDeaths]);

INI_Int("Admin",PlayerInfo[playerid][pAdmin]);

return 1;

}

//------------------------------------------------------------------------------

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) {

switch(dialogid)

{

case DIALOG_REGISTER:

{

if (!response) return Kick(playerid);

if(response)

{

if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, ""COL_WHITE"Register",""COL_RED"You have entered an invalid password.\n"COL_WHITE"Zadajte heslo pre založenie noveho uètu.","Register","Konec");

new INI:File = INI_Open(UserPath(playerid));

INI_SetTag(File,"Informacie");

INI_WriteInt(File,"Password",udb_hash(inputtext));

INI_WriteInt(File,"Cash",0);

INI_WriteInt(File,"Kills",0);

INI_WriteInt(File,"Deaths",0);

INI_WriteInt(File,"AdminLevel",0);

INI_Close(File);

ShowPlayerDialog(playerid, DIALOG_SUCCESS_1, DIALOG_STYLE_MSGBOX,""COL_WHITE"Dokonèenie!",""COL_GREEN"Ïakujeme že ste sa u nás zaregistrovaly!","Ok","");

}

}

 

case DIALOG_LOGIN:

{

if ( !response ) return Kick ( playerid );

if( response )

{

if(udb_hash(inputtext) == PlayerInfo[playerid][pPass])

{

INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);

GivePlayerMoney(playerid, PlayerInfo[playerid][pCash]);

ShowPlayerDialog(playerid, DIALOG_SUCCESS_2, DIALOG_STYLE_MSGBOX,""COL_WHITE"Dokonèenie!",""COL_GREEN"Uspešne ste sa prihlasily!","Ok","");

}

else

{

ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,""COL_WHITE"Login",""COL_RED"Zadali ste nesprávne heslo!\n"COL_WHITE"Zadajte nižšie svoje heslo pre prihlásenie!","Login","Konec");

}

return 1;

}

}

}

return true;

}

 

 

 

Okj tu je kod

Edited by Mikoo
Link to comment
Share on other sites

  • 0

Kde nacitavas heslo do premeny PlayerInfo[playerid][pPass] ?

 

Nikde to nevidim a ked nenacitavas tak ta premena ma hodnotu 0

Edited by Mattsy
Link to comment
Share on other sites

  • 0

podle zkušenosti co mi řekl Skydick 

 

tak musíš si udělat funkci přes kterou budeš vše načítat.

 

příklad

public loadaccount_user(playerid, name[], value[])
{
    INI_String("Password", pInfo[playerid][Pass],129); /*we will use INI_String to load user's password.
    ("Password",.. will load user's password inside of user's path. 'pInfo[playerid][Pass]',...We have defined our user's variable above called, pInfo. Now it's time to use it here to load user's password. '129',... 129 is a length of a hashed user's password. Whirlpool will hash 128 characters + NULL*/
    INI_Int("AdminLevel",pInfo[playerid][Adminlevel]);/*We will use INI_Int to load user's admin level. INI_Int stands for INI_Integer. This load an admin level. */
    INI_Int("VIPLevel",pInfo[playerid][VIPlevel]);//As explained above
    INI_Int("Money",pInfo[playerid][Money]); //As explained above
    INI_Int("Scores",pInfo[playerid][Scores]);//As explained above
    INI_Int("Kills",pInfo[playerid][Kills]);//As explained above
    INI_Int("Deaths",pInfo[playerid][Deaths]);//As explained above
    return 1;
}

příklad z http://forum.sa-mp.com/showthread.php?t=352703

Link to comment
Share on other sites

  • 0
podle zkušenosti co mi řekl Skydick 

 

tak musíš si udělat funkci přes kterou budeš vše načítat.

 

příklad

public loadaccount_user(playerid, name[], value[])
{
    INI_String("Password", pInfo[playerid][Pass],129); /*we will use INI_String to load user's password.
    ("Password",.. will load user's password inside of user's path. 'pInfo[playerid][Pass]',...We have defined our user's variable above called, pInfo. Now it's time to use it here to load user's password. '129',... 129 is a length of a hashed user's password. Whirlpool will hash 128 characters + NULL*/
    INI_Int("AdminLevel",pInfo[playerid][Adminlevel]);/*We will use INI_Int to load user's admin level. INI_Int stands for INI_Integer. This load an admin level. */
    INI_Int("VIPLevel",pInfo[playerid][VIPlevel]);//As explained above
    INI_Int("Money",pInfo[playerid][Money]); //As explained above
    INI_Int("Scores",pInfo[playerid][Scores]);//As explained above
    INI_Int("Kills",pInfo[playerid][Kills]);//As explained above
    INI_Int("Deaths",pInfo[playerid][Deaths]);//As explained above
    return 1;
}
příklad z http://forum.sa-mp.com/showthread.php?t=352703[/quote

 

 

Steam wallet: Ja to tam mam keby volačo, ale nechapem prečo ma nechce lognuť...

Link to comment
Share on other sites

  • 0

Lebo jen kopíruješ a nemáš ani ponětí co jak funguje. To, že si zkopíruješ 6 let starou registračku, kde je ještě k tomu debilní udb_hash z tebe neudělá profi pawnera. Řeknu ti krutou pravdu, po které ti rozplynu tvou vizi o dokonalém módu. Nejsi dostatečně zralý na to, aby jsi dělal takovou věc. Protože po téměř ročním kopírování a zakládáním primitivních topiců o pomoc jsi nijak nepostoupil ani se nezdokonalil. Neříkám poprvé ani naposledy - smaž to zkurvené pawno. A keby volačo, tu funkci tam máš, ale nikde ji nepoužíváš. Jaké překvapení když nevíš ani co to dělá.

  • Líbí se mi to! (+1) 1
Link to comment
Share on other sites

  • 0
Lebo jen kopíruješ a nemáš ani ponětí co jak funguje. To, že si zkopíruješ 6 let starou registračku, kde je ještě k tomu debilní udb_hash z tebe neudělá profi pawnera. Řeknu ti krutou pravdu, po které ti rozplynu tvou vizi o dokonalém módu. Nejsi dostatečně zralý na to, aby jsi dělal takovou věc. Protože po téměř ročním kopírování a zakládáním primitivních topiců o pomoc jsi nijak nepostoupil ani se nezdokonalil. Neříkám poprvé ani naposledy - smaž to zkurvené pawno. A keby volačo, tu funkci tam máš, ale nikde ji nepoužíváš. Jaké překvapení když nevíš ani co to dělá.

 

 

Prosim ťa ukludni sa... Čo nezmažeš sam seba ? Keď si bol ty takyto začiatočknik čo si robil ? To iste tak neviem čo tu riešiš kamoško... Tak sa ukludni... A keď mieniš mať taketo nazory tak sa sem ani nekukaj.. Ďakujem za pochopenie...

Link to comment
Share on other sites

  • 0
  • Globální moderátor

Jenže on naráží na to, že vzhledem k tomu, jak dlouho tu si, je ratio topic-help s tvými znalostmi velmi nebalancované. Ano, každý začínal kopírováním, ale ty jsi ignorant a odmítáš pochopit ty řádky. 

Link to comment
Share on other sites

  • 0
Jenže on naráží na to, že vzhledem k tomu, jak dlouho tu si, je ratio topic-help s tvými znalostmi velmi nebalancované. Ano, každý začínal kopírováním, ale ty jsi ignorant a odmítáš pochopit ty řádky.

 

Som proste taký no.. Čo ti mam nato povedať ?

Link to comment
Share on other sites

  • 0

Prosim ťa ukludni sa... Čo nezmažeš sam seba ? Keď si bol ty takyto začiatočknik čo si robil ? To iste tak neviem čo tu riešiš kamoško... Tak sa ukludni... A keď mieniš mať taketo nazory tak sa sem ani nekukaj.. Ďakujem za pochopenie...

 

~> Víš, ale on to sem nevkládá z nudy, ono to je celkem pravda. Mi řekni alespoň 10 řádků, které jsou čistě jen tvoje. Stěží pochybuji, že najdeš tři. Jako, neříkám, že se ze CTRL C+V nejde naučit... ale, z CTRL A+C+V se nenaučíš už vůbec.

 

Tutoriály jsou od toho, abys pochopil JAK SE S TÍM PRACUJE, ne co máš přesně dělat...

 

Som proste taký no.. Čo ti mam nato povedať ?

~> Začal bych něco ve stylu "omlouvám se, odteď slibuji, že se budu víc snažit a neskopíruji jediný řádek z návodů či jiných scriptů"...

Link to comment
Share on other sites

  • 0

Ahoj,

doporučil bych ti se posunout na samé začátky programování. Mohu ti doporučit i nějaké návody pro nováčky (proměnné, podmínky, cykly). Pokud nepochopíš o co jde, pak nemá smysl pokračovat k dalším, obtížnějším tématům (tzn znovu přečíst návod, pokud to nepomůže znova a znova, popřípadě přehodnotit smysl věnování se programování).

Pomůže ti to jednak v pawn, tak i při přechodu na jiný jazyk. S logikou ti tu asi nikdo nedokáže pomoct a vykašli se na CTR C, CTRL V.

Link to comment
Share on other sites

  • 0
  • Globální moderátor

pro ostatní - trochu slušně, jsme lidi.

 

pro tebe - je sice pěkné že se snažíš, ale jak psali, neumíš vůbec nic a děláš takto "složité" věci. svojí větou

 

Neviem načitavať premeny...

 

 

jsi to všem potvrdil. Toto je úplně ten největší základ jakéhokoliv programování, scriptování apod. Koukni na základy a vykašli se na složitosti ;) Je tu spousta skvělých návodů. Nejsou na kopírování, ale pochopení...

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...