Jump to content

pomoc Přepínání dialogů.


Denonymous

Recommended Posts

Čau, potřeboval bych prosím od někoho poradit..

 

Přepínají se mě dialogy. 

 

Použil jsem inc od Morta.

 

Klik

 

No prostě jdu do banky, do pickupu, zobrazí se mě dialog, v tom dialogu otevřu další dialog, a jak jsem na tom pickupu tak se mě otevře ten dialog kterej byl na začátku, prostě nestihnu nic vložit, vybrat, vždycky se ukáže ten první. Přepínají se nějak ? Nebo co to je ?

 

Díky. Čau.

 

Errory nehází :)

 

 

Link to comment
Share on other sites

~> Jelikož callback OnPlayerPickUpPickup() se po nějakém čase "refreshuje". Kdyby to nedělal, tak přijdeš k jednomu pickupu, dialog se otevře, něco uděláš, dialog se zavře, ale jakmile přijdeš k jinému pickupu nebo jen počkáš na to samém, už by se nic nestalo.

~> Musíš nějak kontrolovat, aby se mu neotevřel další dialog, dokud je furt na tom pickupu a dokud má už otevřený dialog. Stačí na to jedna proměnná. Jakmile se otevře dialog, tak té proměnné přiřadíš hodnotu true, a false jí dáš až před nějakou návratovou hodnotou(zavřel dialog).

Edited by SkiBig18
Link to comment
Share on other sites

Přesně jak říká Scydo... Spíš bych ti ale doporučil na příkaz přes funkci IsPlayerInRangeOfPoint, ale to je na tobě.

Edited by Daniels
Link to comment
Share on other sites

Díky moc, ale takovýmu odbornýmu textu nevim co si z toho mam vzít, sorry. :d

 

Nějak si ještě zkusim poradit a pokusím se o to co jsi napsal. :d

 

//EDIT

 

Docela to odpovídá jako kdyby to bylo na mě ten SkiBiguv podpis. :d

Edited by Denonymous
Link to comment
Share on other sites

skibig myslel toto.

 

 

new bool:Dialog[MAX_PLAYERS_EX];
 
ShowPlayerDialogEx(playerid, dialogid, style, caption[], info[], button1[], button2[])
{
           if(Dialog[playerid] == false)
           ShowPlayerDialog(playerid, dialogid, style, caption, info, button1, button2);
           Dialog[playerid] = true;
}
Link to comment
Share on other sites

skibig myslel toto.

 

 

 

new bool:Dialog[MAX_PLAYERS_EX];
 
ShowPlayerDialogEx(playerid, dialogid, style, caption[], info[], button1[], button2[])
{
           if(Dialog[playerid] == false)
           ShowPlayerDialog(playerid, dialogid, style, caption, info, button1, button2);
           Dialog[playerid] = true;
}

 

~> No myslel jsem trošku hodně něco jiného, ale budiž, taky možnost.

 

Nějak si ještě zkusim poradit a pokusím se o to co jsi napsal. :d

~> Ten include je stejně starý několik let, vřele bych doporučil si udělat vlastní script, a nebo alespoň vylepšil ten include, po případě najít novější návod.

Link to comment
Share on other sites

  • Globální moderátor

Hlavně nezapomenout vynulovat při odklikání, jinak chudáci příchozí hráči nebo ještě sám dotyčnej už další dialog neotevře :(

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