[SERVICE] Die Questkontrolle

02/10/2012 23:28 [SA]Imbattle#4726
Hey kann mal jemand bitte diese quest reparieren, die will einfach nich funktionieren -.-

PHP Code:
quest quiz_gutschein begin
    state start begin
        when 20090.chat
."Gutschein Einlösen" begin
            say_title
("Heuk-Young")
            
say("")
            if 
pc.count_item(60002)<1 then
            say
("Komm wieder wenn du ein Gutschein")
            
say("hast. Du erhälst ihn von der Rangpunktequest")
            
say("oder von dem OX Wettbewerb der jede Woche statt")
            
say("findet.")
        
end
            
else if pc.count_item(60002)>0 then
            say
("Möchtest du deinen Gutschein gegen eine gute Belohnung eintauschen?")
            
local s select("Ja","Nein")
            if 
2 then
            say
("Okey bis später")
        
end
            
else
            
say("Okey, hier hast du dein Item")
            if 
1 with pc.count_item(60002)>0 then
            local items 
= {27992279932799470024710517105250513}
            
local x number(1table.getn(items))
            
pc.give_item2(items[x], 1)
            
pc.remove_item(600021)
        
end
    end
end 
Falls man nicht erkennt was die quest soll, man kann bei dem NPC 20090 das Item 60002 gegen ein zufälliges item von diesen hier 27992, 27993, 27994, 70024, 71051, 71052, 50513 eintauschen können.

€: Natürlich gibt es ein fettes thanks wenn mir jemand hilft :D
02/10/2012 23:30 depa95#4727
Dicken Thanks an "Destroyer446"

Vielen Dank für deine schnelle und Hilfreichen Hilfe


Liebe Grüße
02/11/2012 05:35 NastyTeaBag#4728
Quote:
Originally Posted by [SA]Imbattle View Post
Hey kann mal jemand bitte diese quest reparieren, die will einfach nich funktionieren -.-

PHP Code:
quest quiz_gutschein begin
    state start begin
        when 20090.chat
."Gutschein Einlösen" begin
            say_title
("Heuk-Young")
            
say("")
            if 
pc.count_item(60002)<1 then
            say
("Komm wieder wenn du ein Gutschein")
            
say("hast. Du erhälst ihn von der Rangpunktequest")
            
say("oder von dem OX Wettbewerb der jede Woche statt")
            
say("findet.")
        
end
            
else if pc.count_item(60002)>0 then
            say
("Möchtest du deinen Gutschein gegen eine gute Belohnung eintauschen?")
            
local s select("Ja","Nein")
            if 
2 then
            say
("Okey bis später")
        
end
            
else
            
say("Okey, hier hast du dein Item")
            if 
1 with pc.count_item(60002)>0 then
            local items 
= {27992279932799470024710517105250513}
            
local x number(1table.getn(items))
            
pc.give_item2(items[x], 1)
            
pc.remove_item(600021)
        
end
    end
end 
Falls man nicht erkennt was die quest soll, man kann bei dem NPC 20090 das Item 60002 gegen ein zufälliges item von diesen hier 27992, 27993, 27994, 70024, 71051, 71052, 50513 eintauschen können.

€: Natürlich gibt es ein fettes thanks wenn mir jemand hilft :D

Kannste mal schreiben welcher Fehler in Virtual Box kommt?
Oder was nicht funzt.
02/11/2012 08:42 Mijago#4729
Das zu Debuggen tat mir echt weh oô über 20 Fehler (ich zähle falsche Einrückung auch als Fehler, da diese meist weitere Fehler mit sich zieht) :D
PHP Code:
quest quiz_gutschein begin 
    state start begin 
        when 20090.chat
."Gutschein Einlösen" begin 
            say_title
("Heuk-Young[ENTER]"
            if 
pc.count_item(60002)<1 then 
                say
("Komm wieder wenn du ein Gutschein"
                
say("hast. Du erhälst ihn von der Rangpunktequest"
                
say("oder von dem OX Wettbewerb der jede Woche statt"
                
say("findet."
            elseif 
pc.count_item(60002)>0 then 
                say
("Möchtest du deinen Gutschein gegen eine gute Belohnung eintauschen?"
                
local s select("Ja","Nein"
                if 
== 2 then 
                    say
("Okey bis später"
                    return
                elseif 
== and pc.count_item(60002)>0 then 
                    say
("Okey, hier hast du dein Item"
                    
local items = {27992279932799470024710517105250513
                    
local x number(1table.getn(items)) 
                    
pc.remove_item(600021
                    
pc.give_item2(items[x], 1
                
end
            end
        end 
    end 
end 
else if gibt es nicht, das heißt elseif
Achte auf korrekte Einrückung, du hast die If's ineinander falsch verschachtelt und ein end vergessen...
In If's zeigen zwei = (also ==) an, dass etwas gleich ist, nicht eins:
Code:
if bla == bla2 then
  bla3()
end
02/11/2012 10:20 [SA]Imbattle#4730
über 20 Fehler?! xD, ja tut mir leid bin noch am lernen xD, ich dachte ich hätte es langsam raus, anscheind nich :O, danke fürs korigiren
02/11/2012 13:05 .HC'Destrox#4731
Mijago, ich würds ja noch anders machen, vor allem, weil manches dabei was du geschrieben hast... naja... sinnlos ist :D

Meine Quest :D :
Kleiner Hinweis: Vor "else" nie ein end, und "elseif" wird zusamm geschrieben ;)
€dit: Oh, das mit elseif hatte Mijago ja schon gesagt^^

** Hab mein Problem immernoch... :|

Mfg, Destroyer446
02/11/2012 13:42 Sp0ngeb0b ist cool#4732
destroyer...deine quest wird so nicht funktionieren :facepalm:
abgesehen davon ist mijagos verbesserung genau so lang wie deine & darüber hinaus präsentiert bzw. lehrt er imbattle wie er mit if, elseif, else etc. im umgang vertrauter wird ;)
02/11/2012 13:49 .HC'Destrox#4733
Wieso sollte sie nicht gehen?
Ich weiß, dass meine Quest genauso lang ist und trotzdem sind manche Abfragen nicht nötig ^^

Ich habe nichts dagegen, dass er ihn lehrt, aber vergessen wir das, vllt weißt du ja ne Möglichkeit wegen meinem Problem, statt auf einem, welches bereits geklärt ist, zu diskutieren ;)

Mfg, Destroyer446
02/11/2012 21:09 Eifelturm#4734
Ich bräuchte hierfür mal Hilfe, was fehlt?
Code:
quest weapon_trade begin
    state start begin
        when 20041.take begin
            if item.vnum == 27994, 200 then
                say_title(mob_name(20041)..":")
                say("")
                say("Gegen was möchtest du dein")
                say(item_name(item.vnum).. " tauschen?")
                say("")
                say_reward("Bonis & Steine gehen verloren!")
                say("")
                local s = select(item_name(18209), item_name(18219), item_name(18229), item_name(18589) "Abbrechen")
                if s == 1 then
                    pc.remove_item(item.vnum)
                    pc.give_item2(18209)
                if s == 1 then
                    pc.remove_item(item.vnum)
                    pc.give_item2(18219)
		if s == 1 then
		    pc.remove_item(item.vnum)
		    pc.give_item2(18229)
		elseif s==2 then
		    pc.remove_item(item.vnum)
		    pc.give_item2(18589)
                end
            end
        end
    end
02/11/2012 21:27 .HC'Destrox#4735
Also das könnte einem bei der Einrückung doch auffallen oder? ;)
Ein "end" am Ende sollte des Fehlers Lösung sein ;)

Mfg, Destroyer446
02/12/2012 02:49 richib135#4736
PHP Code:
quest pferd1 begin
    state start begin
        when 50041.
use begin
                say_title
("Kampfgaul")
                
say("Willst du dieses Item tauschen")
                
say("gegen einen Kampfgaul?")
                
local s select("Ja""Nein")
                    if 
== 1 then
horse 
advance ( )
horse advance ( )
horse advance ( )
horse advance ( )
horse advance ( )
horse advance ( )
horse advance ( )
horse advance ( )
horse advance ( )
horse advance ( )
horse advance ( )
                
say("Du hast nun einen Kampfgaul")
                
say("Viel Spaß damit")
                
say("Und vergiss ihn nicht zu Füttern")
                    if 
== 2 then
                say
("Du willst also kein Pferd")
                
say("Na gut, dann nicht")
                        return
    
end
end 



Bitte Hilfe!
02/12/2012 11:01 .HC'Destrox#4737
Das hier sollte gehen:

Mfg, Destroyer446
02/12/2012 17:26 xllMethoXx#4738

Die Belohnung wird nicht verteilt :s
Bitte um Hilfe :)!
02/12/2012 22:14 Eifelturm#4739
Hallo,
ich habe die Bank quest von Benhero benutzt, [Only registered and activated users can see links. Click Here To Register...] ich bin kein mensch der mit der Arbeit von anderen angibt, dazu bin ich zu alt.
Ich hätte gern eine Erweiterung hiervon also das man zb 10.000.000.000 yang
in der Bank reinsetzen kann.
Würde mich über eine schnelle helfende Antwort freuen.
02/12/2012 23:04 xJ3Lack_MaieRx#4740
ich denke mal ihr wisst was sie bewirken soll :D
PHP Code:
quest trade begin
    state start begin
        when 9003.take with item
.vnum == 27992 or 27993 or 27994 or 279 or 159 or 249 or 3139 or 3169 or 3189 begin
            say
("Hallo "..pc.get_name().."")
            
say("Bei mir kannst du folgende Sachen umtauschen:")
            
say("2xWeiße Perle - Blaue Perle")
            
say("2xBlaue Perle - Rote Perle")
            
say("2xRote Perle - Traktat")
            
say("Tritonschwert+9 - Mondschwert+0")
            
say("Geisterzahnklinge+9 - Heiliges Schwert+0")
            
say("Erxorzissmusschwert+9 - Schnittklinge+0")
            
say("Partisane+9 - Sonnenschwert+0")
            
say("Grollschwert+9 - Gelbdrachentöter+0")
            
say("Blaudrachentöter+9 - Drachengottklinge+0")
            
wait()
            
say("Möchtest du was tauschen ?")
            
local s select ("Ja""Nein")
            if 
== 1 then
            say
("Wähle dein Item aus")
            
local perle select ("Weiße Perle""Blaue Perle""Rote Perle""Tritonschwert+9""Geisterzahnklinge+9""Erxorzissmusschwert+9""Partisane+9""Grollschwert+9""Blaudrachentöter+9")
            elseif 
perle == and pc.count_item(27992) >= 2 then
                pc
.remove_item(279922)
                
pc.give_item2(27993)
                
chat("Du hast eine Blaue Perle erhalten.")
            elseif 
perle == and pc.count_item(27993) >= 2 then
                pc
.remove_item(279932)
                
pc.give_item2(27994)
                
chat("Du hast eine Rote Perleerhalten.")
            elseif 
perle == and pc.count_item(27994) >= 2 then
                pc
.remove_item(279942)
                
pc.give_item2(70031)
                
chat("Du hast ein Traktat erhalten.")
            elseif 
perle == and pc.count_item(279) >= 1 then
                pc
.remove_item(279)
                
pc.give_item2(220)
                
chat("Du hast ein Mondschwert+0 erhalten.")
            elseif 
perle == and pc.count_item(159) >= 1 then
                pc
.remove_item(159)
                
pc.give_item2(280)
                
chat("Du hast ein Heiliges Schwert+0 erhalten.")
            elseif 
perle == and pc.count_item(249) >= 1 then
                pc
.remove_item(249)
                
pc.give_item2(200)
                
chat("Du hast eine Schnittklinge+0 erhalten.")
            elseif 
perle == and pc.count_item(3139) >= 1 then
                pc
.remove_item(3139)
                
pc.give_item2(3190)
                
chat("Du hast ein Sonnenschwert+0 erhalten.")
            elseif 
perle == and pc.count_item(3169) >= 1 then
                pc
.remove_item(3169)
                
pc.give_item2(3180)
                
chat("Du hast ein Gelbdrachentöter+0 erhalten.")
            elseif 
perle == and pc.count_item(3189) >= 1 then
                pc
.remove_item(3189)
                
pc.give_item2(3200)
                
chat("Du hast ein Drachengottklinge+0 erhalten.")
            
end
                
if == 2 then
            setskin
(NOWINDOW)
            
end
        end
    end
end