Jump to content
  • 0

pomoc Definícia v ShowPlayerDialog


Quiter

Dotaz

Čaute,

Mám tu taký zapeklitý problém, lámem si s tým hlavu a neviem sa pohnúť ďalej...

Problém spočíva v tom, že keď dám skompilovať svoj mód, zamrzne mi Pawno.

Deje sa to len v prípade, že diaREG_SK je dlhší ako 73 znakov, pokiaľ je kratší, všetko funguje ako má. Taktiež keď použijem ShowPlayerDialog, všetko funguje (z toho usdzujem že je chyba niekde v SPD definícií)

#define SPD(%0,%1,%2,%3); \
	if(GetPlayerLang(%0) == 0) ShowPlayerDialog(%0,%1,%2,%3_HEAD_SK,%3_SK,%3_YES_SK,%3_NO_SK); \
	if(GetPlayerLang(%0) == 1) ShowPlayerDialog(%0,%1,%2,%3_HEAD_SK,%3_SK,%3_YES_SK,%3_NO_SK);

#define diaREG_HEAD_SK ""COL_DEF"** "COL_REG_HEAD" Registrácia "COL_DEF" **"
#define diaREG_YES_SK ""COL_CMD_ERROR"Registrovať"
#define diaREG_NO_SK ""COL_CMD_ERROR"Zrušiť"
#define diaREG_SK "Vitaj v Ghost Town. Ghost Town je herný mód vyvíjaný týmom Reversion.\r\n Tento mód bla bla bla. Zadaj heslo:" // \r\n tam pôvodne nebolo, myslel som že presahuje dĺžku riadku ale robí to aj s tým


SPD(playerid, D_REGISTER, DIALOG_STYLE_PASSWORD, diaREG); // pri takomto použití to zamrzne
ShowPlayerDialog(playerid, D_REGISTER, DIALOG_STYLE_PASSWORD, diaREG_HEAD_SK, diaREG_SK, diaREG_YES_SK, diaREG_NO_SK); // pri takomto použití to funguje

 

Nevedel by mi niekto poradiť čo s tým?

Link to comment
Share on other sites

2 odpovědí na tuto otázku

Recommended Posts

  • 0

Tipujem to na bug kompilera.. Nejdem to nejako skúšať, ale je to dosť možné.

Keď tú premennú 4096 buniek deklaruješ globálne, tak to bude fungovať (zaberať pamäte) rovnako keby si použil obyčajný string literal.

Link to comment
Share on other sites

  • 0

Tak problém som dočasne vyriešil ukladaním textov do premennej o veľkosti 4096... Bohužial toto riešenie mi nejak nevyhovuje, nakoľko to zaberá príliš pamäte...

Vedel by niekto o nejakom lepšom spôsobe?

Edited by Quiter
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...