[[menu_npc]]

Práce s menu

Vítám Vás u další lekce scriptovaní. V této lekci si povíme něco o menu a taky trošku nakousneme labely. Myslím, že vše pochopíte rychle. Taky bych chtěl poděkovat hrači O´Neill, který mě velmi motivuje pokračovat v praci.

Menu jsou ve scriptech NPC velmi důležité. Jsou totiž jako jeden z mála prostředků jak s NPC „komunikovat“ ba naopak s hráči.

Funkce

  • menu “<možnost menu>“,<label>{,“<možnost menu>“,<label>…};
    • možnost menu - je text který se zobrazí v seznamu možností daného menu. Jejich počet je teoretický neomezený, ale netestoval bych kolik toho vydrží. Všobecně platí, že max. 255 znaku.
    • label - je to řádek scriptu, na který se skočí při výběru dané možnosti. Existuje ještě tzv. „jump zero“ značí se „-“. A jeho funkce je prostá. Program pokračuje dál v běhu a nikam neskače. V příkladu to půjde velmi dobře pochopit. Určitě stoji za zmínku vysvětlit co jsou to ty labely.


Label

  • Labely jsou řádky scriptu, které označují jednotlivé bloky scriptu. Každý rozsáhlejší script je rozdělen do mnoha bloků.
  • Labely se zapisují nasledovne:
  • Label1: - na samostatném řádku, a znamená to, že zde zacína blok Label1
  • Labelum se budu věnovat jěště později, tohle nám prozatím stačí.

Příklad

prontera.gat,100,100,0	script	Honza	120,{
      mes "Ahoj ja jsem Honza jak ti mohu pomoci?";
      menu "Chci se zeptat co tu delas?",label1,"Ahoj Honzo jak se mas?",label2,"Radsi nic",-;
      mes "Kdyz nic tak nic no...";
      close;

label1:  mes "Ja se tu jen tak poflakuju a cekam na k3dT az dojde s hospody slibil mi particku sachu /gg";      
         close;
label2:  mes "Ja se mam super diky za optani co ty?"
         menu "Mam se fajn",label3,"Je to bida",-;
         mes "Nj dneska je to bida to mas pravdu se podivej co ten Paroubek dela.";
         close;
label3:  mes "Tak to je super";
         close;
 }

Poznámka

Názvy labelu muhou byt libovolné. Ale doporučuji používat pouze písmena anglické abecedy a číslice.

  • O´Neill

Dovolil jsem jsi malou ukazku.Neni to dokonale.Jeste vim o par muskach,ale zatim to neumim vylepsit.To prijde:)

O´Neill ukázka

prontera.gat,155,170,4	script	LmenuNpc	742,1{
	mes "Ahoj";
	mes "Chces mi rikat";
	mes "LmenuNpc";
	next;
	mes "nebo radsi Oneill";
	next;
	mes "???";
	menu "LmenuNpc",label1,"Oneill",label2,"Socka",-;
	next;
	mes "Zmiz nez ti dam ranu!!!";
	close;

label1:	next;
	mes "Ok,vybral sis tedy LmenuNpc";
	next;
	mes "[LmenuNpc]";
	mes "Co by jsi tedy odeme chtel?";
	menu "Zeptat se co tu delas",label3,"Nic nechci",-;
	next;
	mes "[LmenuNpc";
	mes "Tak se mej";
	close;

label3:	next;
	mes "[LmenuNpc]";
	mes "Jsem tu proto,aby si muj stvoritel vyzkousel delat menu NPC postav";
	menu "Zajimave",label4,"Nezajem",-;
	next;
	mes "[LmenuNpc]";
	mes "Nulo";
	close;

label4:	next;
	mes "[LmenuNpc]";
	mes "Taky si myslim:)";
	next;
	mes "[LmenuNpc]";
	mes "Mej se";
	close;

label2: next;
	mes "Sem rad,ze si vybral jmeno Oneill";
	mes "LmenuNpc je nazev pro Nooba";
	next;
	mes "[Oneill]";
	mes "Co Te zajima?";
	menu "Proc tu jsi?",label5,"Nic...",-;
	next;
	mes "[Oneill]";
	mes "Hm...";
	close;

label5:	next;
	mes "[Oneill]";
	mes "Stojim tu uz dlouho";
	next;
	mes "[Oneill]";
	mes "A poradne se tu nudim:(";
	next;
	mes "[Oneill]";
	mes "Zkus me rict nejaky vtip,treba me pobavis";
	input @vtip$;
	next;
	mes "[Oneill]";
	mes "Uz ani--> "+ @vtip$;
	mes "<-- me nepobavi:(";
	next;
	mes "[Oneill]";
	mes "Ale dik za snahu";
	next;
	mes "[Oneill]";
	mes "Zatim cau";
	close;
}
 

Vytvořil Typhoon | Provozováno na dokuwiki | Optimalizováno pro Firefox, Opera, Chrome. |  podpora. | Některé z obrázků mohou spadat pod ochrannou známku Gravity Corp. & Lee Myoungjin.  | Vygenerováno během: 0.078 s |   | Copyright 2011-2024