Forum

> > CS2D > Scripts > NPC Menü
Forums overviewCS2D overview Scripts overviewLog in to reply

German NPC Menü

25 replies
Page
To the start Previous 1 2 Next To the start

old NPC Menü

TheKevKev
User Off Offline

Quote
Hey,
das ist für heute meine letzte Frage und zwar möchte ich NPC bauen/schreiben wie in Rpg Tibia das man da hingeht und "e" drückt. Dann soll ein Menü kommen. Sodass man was kaufen kann :). Nur habe ich noch das Problem wegen den Koordinaten das kapiere ich auch nicht :(. Naja wäre nochmal schön wenn mir einer helfen kann wie man das schreiben soll.
.
1. z.B auf 6/1 soll ein NPC stehen.
2. wenn man "e" drückt soll ein Menü aufploben also aufgehen sodass man was kaufen kann

PS: Kann mir noch jemand erklären wie das geht mit den Koordinaten das irgendwie 1/1 = 2001/1794 ist. Es stimmt nicht das ist mir klar aber wäre schon gut wenn es mir jemand *hust* erklären würde.

Mfg
TheKevKev.

old Re: NPC Menü

Bowlinghead
User Off Offline

Quote
Versuch es mal mit :

1
2
3
4
5
6
7
function VARIABLE(id,"x","y")
	if (x==0 and y==0) then
		if title =="Blablabla" then
			if b==1 then
			parse ("equip"..id.." 45")
			if b==2 then
...........

Das ist ein Beispiel. Das müßte so eigendlich funktionieren, nur mit denn Koordinaten ändern, und noch das Menü machen und noch
1
if player(id,"money")=> 10000 then
vor denn
1
parse ("equip"..id.." 45")
machen.
Das Geld (Im bsp.) solltest du dann aber noch ändern!
Ich hoffe das hat dir geholfen, bin noch Noob im Scripten (Hab gerade mal mein 1. Script mit Hilfe geschafft)

Hab jetzt vergessen wie man Geld abzieht! Hab zwar mal ein Script gemacht wo das geht, habs aber vergessen!
Sorry :D.
Ich glaube
1
2
if player(id,"money")=> 10000 then
parse ("setmoney"..id.." -10000")

Aber im String (Also "") gibt es aber glaube ich nur Buchstaben, also behandelt er das -10000 wie ein Wort. Aber was weiß ich :D. Warte andere Antworten ab. Falls es hilft, guck unter sys/lua/info.txt. Da steht bestimmt nochmal alles!
Denn NPC (Ich schätze du meintest eine Person, kein NPC wie Zombie) kannst du einfach mit einem Sprite einfügen!

Ich hoffe ich konnte dir helfen ^^.


~EDIT:~

Achja, die Variable (In diesen fall VARIABLE) mußt du beim
1
addhook ("menu","VARIABLE")
verwenden!
Denn rest müßtest du einfach in einem anderen Menü-Script abgucken können (z.B. sys/lua/samples/classes.lua)

old Re: NPC Menü

TheKevKev
User Off Offline

Quote
OK danke aber was ist mit:
1
function VARIABLE

?? muss man das ersetzten und wie geht das jetzt mit den Koordinaten ? was ist den 1/1.
weil ich kann ja nicht bei if (x==1 and y==0) then eintragen ? oder doch *hä*

old Re: NPC Menü

Bowlinghead
User Off Offline

Quote
Auf welchen Tile soll der NPC sein?
z.B.

13/42

Das heißt

13 = x
42 = y

Also
1
x==13 and y==42

Falls du in der Schule aufgepasst hättest wüßtest du, das x die Linie von
Links nach Rechts

und

das y die Linie von
Oben
nach
Unten
ist

Und x kommt immer als erstes!

VARIABLE ist einfach nur ein Name denn man beliebig ändern kann. Du kannst auch "DieseVariablehatkeinensinnundisteinfachnurübertriebenLANG" nehmen.

~EDIT:~

Achja, vergess die "end"s nicht!
Jedes "if" und jede "function" braucht ein end

old Re: NPC Menü

TheKevKev
User Off Offline

Quote
ja das wusste ich aber viele sagen das man das umrechnen muss weil ein tile 32x 32 ist und ja ich habe in der schule aufgepasst ich weiß wo x und y ist xD.

Edit:
und b==1 ist F1 oder ?

old Re: NPC Menü

Bowlinghead
User Off Offline

Quote
Ja, keine ahnung mit denn tiles ... Ich bin neu in der Lua Welt ^^.
Ich glaube pro TILE, weil ein Knopf (Also trigger_use) kann man ja auch nur "Oben","Unten","Rechts","Links" machen, und nicht jeden Tile. Aber was wir hier machen hat damit ja GARNICHTS zu tun, ausser vllt. das man 'E' drücken muss
Also
b==1 ist die erste Waffe die man kaufen kann! Wenn du das mit F1 machen willst, musst du das addhook "serveraction" nehmen :D.

Also wenn die erste Waffe bei dir "Deagle" ist, dann ist b==1 die Deagle :D.
Du kannst es auch wie im Sample machen (Unnötig verKOMPLIZIERT) xD< Nein das war unwitzig!
Achja, vllt weisst du es,
Wie kann ich es machen, das z.B. BEI NUR F1 das Menü kommt, bei keinen anderen. Wie geht das? Falls du's nicht weiß, egal.


~EDIT:~
>b = button

old Re: NPC Menü

TheKevKev
User Off Offline

Quote
du meinst wie die die Npc hingesetzt haben ?
oda what ?
oder DC soll mir helfen :o)

old Re: NPC Menü

Bowlinghead
User Off Offline

Quote
Die NPC's also das Bild machst du einfach im Editor! Mit Sprite! Und dann mach dort (Beliebig) ein DynWall damit man nicht "in" denn Player gehen kann!

Ich meine, wie die das gemacht haben!
Wenn du deren Script benutzt auf deinen Server, sieht das ja keiner (lach).

old Re: NPC Menü

TheKevKev
User Off Offline

Quote
hmm naja ich glaube ich mache lieber einfachere Dinge xD.
Bin nicht gut im Scripten, ich verstehe gerade mal ein paar sachen :D. Danke trotzdem

old Re: NPC Menü

Bowlinghead
User Off Offline

Quote
Jo Hab da was gefunden :D.
Was soll denn der NPC gewirken? Ein Menü (Wie in meinen ersten Upload "Kauf Menü")? Eine Aktion (z.B. Explosion)?
Mach das doch einfach so
Behandle (Da wo der NPC steht) das doch einfach als Knopf:

1
2
3
4
5
6
addhook("use","use_")
function use_(id,event,data,x,y)
if (x == 1 and y == 1) then
menu(id,"Waffen-Menü,RPG|LOL,Laser|Übertrieben?")
end
end

Jetzt hast du sogar das Menü schon eingebaut!!!

Jetzt fehlt nur noch die Menü-Action!
Die könnte dann so aussehen:

1
2
3
4
5
6
7
8
9
10
11
12
13
addhook("menu","menu_")
function menu_(id,title,b)
if title=="Waffen-Menü" then
-- RPG Launcher Settings
if b==1 then
parse ("equip"..id.." 49")
end
-- Laser Settings
if b==2 then
parse ("equip"..id.." 45")
end
end
end

>So müsste es laufen, habs noch nicht getestet :D.
Jetzt musst du nur noch deine Waffen eintragen, dein Menü-Namen ändern und die Position ändern.
(Sorry das ich nicht getabt habe, ich kann das so schlecht hier!)

old Re: NPC Menü

TheKevKev
User Off Offline

Quote
ja ein menü. ey du bist ein gedankenleser

Edit:
Danke noch weil irgendwie kann ich gar nciht so richtig Scripten ist manchmal schwierig

Es geht nicht habe alles reingemacht aber wenn ich use drücke geht nichts
edited 1×, last 29.04.11 07:06:13 pm

old Re: NPC Menü

Bowlinghead
User Off Offline

Quote
Du kannst gucken was falsch ist, wenn du die Console öffnest (Indem du auf "^") drückst!
Hab ich bei meinen Fragen auch gemacht!
Mach das mal bitte!

Und probiere mal das:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
function menu_settings
menu(id,"Waffen Menü,RPG|Text,Laser|Text")
end

addhook("use","use_")
function use_(id,event,data,x,y)
if (x == 1 and y == 1) then
menu_settings(id)
end
end

addhook("menu","menu_")
function menu_(id,title,b)
if title=="Waffen-Menü" then
-- RPG Launcher Settings
if b==1 then
parse ("equip"..id.." 49")
end
-- Laser Settings
if b==2 then
parse ("equip"..id.." 45")
end
end
end

Du musst nur die Koordinaten ändern!

Vergess die (id)s nicht! Die sind wichtig!

Achja,:
Woher ich das weiss mit denn Menü?
user TheKevKev has written
1. z.B auf 6/1 soll ein NPC stehen.
2. wenn man "e" drückt soll ein Menü aufploben also aufgehen sodass man was kaufen kann


LOL
------------------------------------------------
--- WERBUNG xDDDD: ---------------------
------------------------------------------------
Ich sag dir aber schonmal wie man sachen kauft (Also das man Geld verliert :D):
1. Lade dir mein 1. Script runter "Kauf Menü".
2. Guck in meinen Script, wie ich es gemacht habe
3. Setzte es bei dir ein :D.

old Re: NPC Menü

TheKevKev
User Off Offline

Quote
ich habe die scheiß *sry* Koordinaten geändert aber es kommt kein Menü

old Re: NPC Menü

Bowlinghead
User Off Offline

Quote
Dann mach mal schritt eins, also guck in der Console !!!
Da müßte dann eigendlich sowas stehen wie "LUAERROR:10: end expectet (to near 'function') <eof>.
Das wäre ein typischer Fehler, bei denn man ein end vergessen hat!

old Re: NPC Menü

TheKevKev
User Off Offline

Quote
Ja bei deinem SCript kommt ein ERROR das Beispiel wo du mir gegeben hast:
LUUA ERROR:sys/lua/NPC.lua.:2 : '(' expected near 'menu'

old Re: NPC Menü

Bowlinghead
User Off Offline

Quote
LOL, ja verbesser das! Aber da ich sowieso gerade schreibe mach ichs mal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
function menu_settings
--[[ EINE LÜCKE ZWISCHEN "menu" UND "(" IST VERGESSEN WORDEN]]
menu (id,"Waffen Menü,RPG|Text,Laser|Text")
end

addhook("use","use_")
function use_(id,event,data,x,y)
if (x == 1 and y == 1) then
menu_settings(id)
end
end

addhook("menu","menu_")
function menu_(id,title,b)
if title=="Waffen-Menü" then
-- RPG Launcher Settings
if b==1 then
parse ("equip"..id.." 49")
end
-- Laser Settings
if b==2 then
parse ("equip"..id.." 45")
end
end
end

Tu das nächstes mal bitte in code
[code]Blablabla[/ code]
nur beim 2. Code die leertaste weg!

old Re: NPC Menü

TheKevKev
User Off Offline

Quote
ich musste die leertaste hinmachen weil das system ein smiley gemacht hat was hätte ich den tun sollen :D.
bescheid sagen das höchstens

Edit:
Der fehler kommt immer noch habe es probiert

old Re: NPC Menü

Bowlinghead
User Off Offline

Quote
Wie? Nimm doch einfach
1
2
3
! Dann kommen keine Smileys!
Siehst du:
[code] :D  :(  ;)  :O  :cry:  :oops:  :cool:  o_O  :P  :talk:  :roll:  :halfhead:  :sick: :>::cookie::us::notok::ok::*::'::o: ]:)  :par-t:  :ugly:

------------------

Probier mal das! Aber ich glaube an der stelle muss ein trigger_use sein! Probier beides aus (Einmal ohne trigger_use, und einmal mit)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
function menu_settings
menu (id,"Waffen Menu,RPG|Text,Laser|Text")
end

addhook ("usebutton","usebutton_")
function usebutton_(id,x,y)
	if x==1 and y==1 then
	menu_settings
	end
end


addhook("menu","menu_")
function menu_(id,title,b)
	if title=="Waffen Menu" then
-- RPG Launcher Settings
		if b==1 then
		parse ("equip"..id.." 49")
		end
-- Laser Settings
		if b==2 then
parse ("equip"..id.." 45")
		end
	end
end

Wenn es nicht geht, wie gesagt mach mal mit nehm triggr_use!
Wenn es nicht geht, was steht in der Console?
To the start Previous 1 2 Next To the start
Log in to reply Scripts overviewCS2D overviewForums overview