Jump to content
  • 0

pomoc registračka


tRaY

Dotaz

Popis problému:

Čaute, robím registračku, fungovala všetko bolo v pohode, akonáhle som pridal zcmd príkazy tak registračný dialog sa ani nezobrazí.

Skúšal som si printovať že kde sa to sekne, ale neukázalo mi to nič, akoby tomu niečo bránilo.

Dám tu sem OnPlayerConnect

 

Chyby/varování kompilátoru a při běhu:

-

 

Kód:

 

public OnPlayerConnect(playerid)
{
	new string[156],meno[30];
	GetPlayerName(playerid,meno,30);
	format(string,156,"{FF0077}%s (%d){999999} sa pripojil.",meno,playerid);
	print(string);
	SendClientMessageToAll(0xFF0077FF,string);
format(meno,sizeof(meno),DOF2_File(meno));
	if(DOF2_FileExists(meno))
	{
	 print("if");
		ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD,"Vitaj späť","{FFFFFF}Napíš heslo pre prihlásenie:","Prihlásiť","Odísť");print("Dialog");
	}
	else
	{
	 print("if2");
		ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD,"Vitaj na servery","{FFFFFF}Napíš heslo pre registráciu:","Registrovať","Odísť");print("Dialog 2");
	}
	return 1;
}

 

 

 

Dodatečné poznámky:

--

Link to comment
Share on other sites

23 odpovědí na tuto otázku

Recommended Posts

  • 0

spravil som test bez tych prikazov a s nimi a bez nich to ide ale s nimi ne takže to je v tých príkazoch, dám sem tie príkazy

new bool:anketa;
new anketaano;
new anketane;
new anketatext[240];
forward anketatimer();
CMD:anketa(playerid,params[])
{
	if(isnull(params)) return SendClientMessage(playerid, 0xFF0000FF, "Použitie: /anketa -text-");
	if(anketa==true) return SendClientMessage(playerid, 0xFF0000FF, "Práve prebieha anketa");
	new string[300],name[24];
	GetPlayerName(playerid,name,sizeof(name));
	format(anketatext,240,"%s",params);
	anketa=true;
	anketaano=0;
	anketane=0;
	format(string,sizeof(string),"%s založil anketu: %s",name,anketatext);
	SendClientMessageToAll(0x44FF00FF,string);
	SetTimer("anketatimer",30000,false);
	return CMD_SUCCESS;
}
	
CMD:ano(playerid,params[])
{
	if(anketa==false) return SendClientMessage(playerid, 0xFF0000FF, "Žiadna anketa neprebieha");
	new string[240];
	anketaano++;
	format(string,240,"%s | %d ANO | %d NE",anketatext,anketaano,anketane);
	SendClientMessage(playerid,0x44FF00FF,string);
	return CMD_SUCCESS;
}
	
CMD:ne(playerid,params[])
{
	if(anketa==false) return SendClientMessage(playerid, 0xFF0000FF, "Žiadna anketa neprebieha");
	new string[240];
	anketane++;
	format(string,240,"%s | %d ANO | %d NE",anketatext,anketaano,anketane);
	SendClientMessage(playerid,0x44FF00FF,string);
	return CMD_SUCCESS;
}
	
public anketatimer()
{
	new string[240];
	format(string,240,"Anketa: %s | %d ANO | %d NE",anketatext,anketaano,anketane);
	print(string);
	SendClientMessageToAll(0x44FF00FF,string);
	anketa=false;
	return 1;
}

//EDIT: a počas skúšania som menil aj zcmd aj izcmd ale ani jedno

Edited by tRaY
Link to comment
Share on other sites

  • 0

tRay ? prečo mám taký pocit, že sa snažíš okoprírovať SP, ale strácaš sa pri dof2 ?

 

Nevadí .. your problem.. idem k veci

1.Prečo za každým /ano alebo /nie vypisuješ stav ankety do chatu ? Nestačí ti spraviť jednoducho textdraw ktorý prepíšeš ?

2.Tvoj kód:

“format(meno,sizeof(meno),DOF2_File(meno));

if(DOF2_FileExists(meno))”

Ja osobne by som si naformátoval rasej

format(meni,sizeof(meno),Mod/Hraci/%s.ini,meno); ale názor ti neberem a pozoe ešte na jednu vec: meno[30] dĺžka nicku = 24, tak ak to prehánaš s menom atp. tak sa nečuduj.

Link to comment
Share on other sites

  • 0

na sp ani nehrám a ani som tam nikdy nejako moc nehral :d takže ani poriadne neviem ako to tam funguje xD

 

1. za každým ano | ne to vypisujem hráčovy aby vedel aký je stav ankety

a to meno som chcel mať rezervu ale ani neviem prečo :) vyskúšam

 

- vyriešim to tak že tam nedám tu anketu, a potom to spravim trochu inak :)

 

ďakujem za pomoc

Link to comment
Share on other sites

  • 0

tRay ? prečo mám taký pocit, že sa snažíš okoprírovať SP, ale strácaš sa pri dof2 ?

Nevadí .. your problem.. idem k veci

1.Prečo za každým /ano alebo /nie vypisuješ stav ankety do chatu ? Nestačí ti spraviť jednoducho textdraw ktorý prepíšeš ?

2.Tvoj kód:

“format(meno,sizeof(meno),DOF2_File(meno));

if(DOF2_FileExists(meno))”

Ja osobne by som si naformátoval rasej

format(meni,sizeof(meno),Mod/Hraci/%s.ini,meno); ale názor ti neberem a pozoe ešte na jednu vec: meno[30] dĺžka nicku = 24, tak ak to prehánaš s menom atp. tak sa nečuduj.

 

Čo s tým má nejaké kopírovanie alebo dĺžka nicku? Pouč ma. Veď GetPlayerName() si vezme z toho reťazca maximálnu dĺžku a to ostatné je problém len toho kto píše ten kód. Alebo nie?

Edited by Matthew_Bennet
Link to comment
Share on other sites

  • 0

Keď dá do premennej meno[20] a getplayer name má max 24

 

Ide o to, že keď si dá Server/hraci/....txt

tak mu z tých 30 ostane 6 volnych a server/hraci ma samostatne viac nie ?

Link to comment
Share on other sites

  • 0

dobre, už si s tým neviem rady, dávam tam aj primitívny príkaz ako je /kill cez zcmd,izcmd,y_commands

a vždy keď sa pripojím na server tak mi nezobrazí tie registračné dialogy... niekto kto by vedel čo by s tým mohlo byť?

registrácia mi samostatne funguje a v príkazoch chyba nieje..

 

//EDIT: + keď som vymazal ten príkaz tak to tiež nefunguje..takže to robí ten include

Edited by tRaY
Link to comment
Share on other sites

  • 0

Ukáž mi DOF2_File a DOF2_FileExists funkcie z includu, možno to crashuje niečo z toho. icon_e_biggrin.gif

Edited by Kubko
Link to comment
Share on other sites

  • 0

ako myslíš, dam ti tu nejaké veci:

if(DOF2_FileExists(meno))
	{
		ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD,"Vitaj späť","{FFFFFF}Napíš heslo pre prihlásenie:","Prihlásiť","Odísť");print("Dialog");
	}
	else
	{
		ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD,"Vitaj na servery","{FFFFFF}Napíš heslo pre registráciu:","Registrovať","Odísť");print("Dialog 2");
	}

a potom je tam stále toto:

	new meno[24];
	GetPlayerName(playerid,meno,sizeof(meno));
 	format(meno,sizeof(meno),DOF2_File(meno));

a to je tak všetko

a ako myslíš z includu ?

Link to comment
Share on other sites

  • 0

jn, musíš urobiť "Nový Register" icon_e_biggrin.gif

public OnPlayerConnect(playerid)
{
    new nick[MAX_PLAYER_NAME], string[128];
    GetPlayerName(playerid,nick,sizeof(nick));
    format(string,sizeof(string),"%s.dat",nick);
    if(DOF2_FileExists(string))
    {
     print("if");
        ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD,"Vitaj späť","{FFFFFF}Napíš heslo pre prihlásenie:","Prihlásiť","Odísť");print("Dialog");
    }
    else
    {
     print("if2");
        ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD,"Vitaj na servery","{FFFFFF}Napíš heslo pre registráciu:","Registrovať","Odísť");print("Dialog 2");
    }
    return 1;
}

Malo by to ísť.. Keby si vedel čo všetko znamená, a nie skopírovať s samp fóra no.. :/ A čo som tam tak čítal.. Tak DOF2_File() čo si tam mal, číta súbory s priečinka "Users" :) Takže ti to ísť ani nemohlo

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

  • 0

Tak vidíš weSmart28.png  Podľa mňa v tom formáte.. Formátoval si DOF2_File, ja som formátoval cestu k súboru ;) Nabudúce čítaj aj texty čo píšu pri tom tutoriále ;)

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

  • 0

Čo už :d Tam, kde to skopíroval je že to je v priečinku Users, lenže on keď toto neprečítal, a ten priečinok nevytvoril, tak jasné že mu to celé nešlo :d

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...