[SERVICE] Die Questkontrolle

03/07/2011 15:21 .2good4you111#1621
Quote:
Originally Posted by Body aka. iOS Apple View Post
Hey Leute
Ich hab ne frage...
Und zwar mit dieser Quest:
PHP Code:
quest Reittier begin
    state start begin
        when 30125.
use begin 
        say_title
("Zahn des Weißen Löwen")
        
say("")
        
local s select("Weißen Löwen rufen""Weißen Löwen wegschicken")
            if 
== 1 then
            affect
.remove_collect() 
            
horse.ride()
            
chat("Du hast dein Weißen Löwen Erfolgreich gerufen!")
            
pc.mount(20114,90000
            
affect.add_collect(apply.ATT_GRADE_BONUS,250,900)
            
affect.add_collect(apply.DEF_GRADE_BONUS,100,900)
        
end
        
if == 2 then
            chat
("Du hast dein Weißen Löwen Erfolgreich weg geschickt")
            
pc.unmount()
            
horse.unsummon()
            
affect.remove_collect()
        
end
        end
    end
end 
Bekommt man ja mehr deff und mehr angriff aber wie kann ich es machen das wen ich wieder absteige die werte weg gehen?
wer es mir richtig beantwortet 20 e*gold...

Try diesen Befehl:
affect.remove_good()
03/07/2011 15:32 .ZiPPO#1622
Quote:
Originally Posted by .2good4you111 View Post
Try diesen Befehl:
affect.remove_good()
danke erstmal aber wie setz ich den ein an welcher stelle?
Kenne mich bei questen nicht soo gut aus :D
sorry
03/07/2011 16:47 ~shaylan~#1623
mach es dir nicht so schwer mit den apply, das geht viel einfacher

PHP Code:
affect.add_collect(ID,wert,time
und als beispiel

PHP Code:
affect.add_collect(5410060*15
effekt: Verteidigung wird für 15 minuten um 100 erhöht.

Grüße
03/07/2011 18:10 LxR'EsoZiaL#1624
Quote:
Originally Posted by ~АLeЖ~ View Post

Bei der Quest habe ich gemerkt das ich SEHR große Probleme mit "ends" hab ^^.
Ähm ich weiß das es einwenig arbeit ist aber immerhin habt ihr euch selbst freiwillig für diesen Questkontrolljob bereitgestellt >.<.
03/07/2011 18:17 .Delta#1625
Das erste das mir aufgefallen ist, dass ein " gefehlt hat ( kann min hier im forum sehr leicht wenn man es als PHP anschaut ;) )
Probiers aus, ansonsten sag mir die Fehlermeldung
PHP Code:
        -- Userpannel Item
         when 2.
use begin
            say_title
("Willkommen im Kontrollzentrum")
            
say_reward("Wie kann ich dir "..pc.get_name().." weiterhelfen")
            
local a select("Pferde-Tool","Abbrechen") -- ,"Teleport-Tool","Verwandlungs-Tool","Event-Tool","Verwarnen","Frei"
            
if == 2 then
                say
("Nagut, vielleicht beim nächsten mal")
                return
            
end
            
if == 1 then
            say_title
("Hallo "..pc.get_name()..",")
            
say("Welche Art von Reittieren willst du genau reiten?")
            
local bad select ("Pferde","neue Reittiere","Shadow Reittiere","besondere Reittiere","Abbrechen")
                if 
bad == 1 then
                say_title
("Pferde Reitten")
                
say("Welches darf es genau sein?")
                
local pferde select ("Ponys","Kampfpferde","Militärpferde","Abbrechen")
                        if 
pferde == 1 then
                        say_title
("Pony Reitten")
                        
say("Welche Farbe darfs den sein?")
                        
local pony select ("Braun","Schwarz","Weiß","Abbrechen")
                        if 
pony == 1 then
                        pc
.mount(BRAUNES_PONY_VALUE)
                        
chat("Du Reittest jezt auf ein  Braunen Pony!")
                    
end
                        
if pony == 2 then
                        pc
.mount(Schwarzes_PONY_VALUE)
                        
chat("Du Reittest jezt auf ein  Schwarzen Pony!")
                    
end
                        
if pony == 3 then
                        pc
.mount(Weißes_PONY_VALUE)
                        
chat("Du Reittest jezt auf ein  Weißen Pony!")
                    
end
                        
if pony == 4 then
                        say
("Nagut, vielleicht beim nächsten mal")
                        return
                    
end
                end 
-- der Pony Reihe
                
                        
if pferde == 2 then
                        say_title
("Kampfpferd Reitten")
                        
say("Welche Farbe darfs den sein?")
                        
local Kampfpferd select ("Braun","Schwarz",Weiß","Abbrechen")
                        if Kampfpferd == 1 then
                        pc.mount(BRAUNES_Kampfpferd_VALUE)
                        chat("
Du Reittest jezt auf ein  Braunen Kampfpferd!")
                    end
                        if Kampfpferd == 2 then
                        pc.mount(Schwarzes_Kampfpferd_VALUE)
                        chat("
Du Reittest jezt auf ein  Schwarzen Kampfpferd!")
                    end
                        if Kampfpferd == 3 then
                        pc.mount(Weißes_Kampfpferd_VALUE)
                        chat("
Du Reittest jezt auf ein  Weißen Kampfpferd!")
                    end
                        if Kampfpferd == 4 then
                        say("
Nagutvielleicht beim nächsten mal")
                        return
                    end
                end -- der Kampfpferd Reihe
                
                        if pferde == 3 then
                        say_title("
Militärpferd Reitten")
                        say("
Welche Farbe darfs den sein?")
                        local mili = select ("
Braun","Schwarz",Weiß","Abbrechen")
                        if 
mili == 1 then
                        pc
.mount(BRAUNES_Militärpferd_VALUE)
                        
chat("Du Reittest jezt auf ein  Braunen Militärpferd!")
                    
end
                        
if mili == 2 then
                        pc
.mount(Schwarzes_Militärpferd_VALUE)
                        
chat("Du Reittest jezt auf ein  Schwarzen Militärpferd!")
                    
end
                        
if mili == 3 then
                        pc
.mount(Weißes_Militärpferd_VALUE)
                        
chat("Du Reittest jezt auf ein  Weißen Militärpferd!")
                    
end
                        
if mili == 4 then
                        say
("Nagut, vielleicht beim nächsten mal")
                        return
                    
end
                end 
-- der Militärpferd Reihe
            
                
if pferde == 4 then
                say
("Nagut, vielleicht beim nächsten mal")
                return
            
end
        end 
-- der Pferde Reihe
        
            
if bad == 2 then
            say_title
("Hey ".. pc.get_name() ..".")
            
say("Welches Reittier willst du Benutzen")
            
local reittiere select("Schlachtenlöwe","Kriegskeiler","Sturmtiger","Streitwolf","Abbrechen")
        if 
reittiere == 1 then
            say_reward
("Du hast Dein Schlachtenlöwe gerufen")
            
pc.mount(20113)
            
end
        
if reittiere == 2 then
            say_reward
("Du hast Dein Kriegskeiler gerufen")
            
pc.mount(20110)
            
end
        
if reittiere == 3 then
            say_reward
("Du hast Dein Sturmtiger gerufen")
            
pc.mount(20112)
            
end
        
if reittiere == 4 then
            say_reward
("Du hast Dein Streitwolf gerufen")
            
pc.mount(20111)
            
end
        
if reittiere == 5 then
            say
("Nagut, vielleicht beim nächsten mal")
            return
            
end
        end 
-- der Reittier Reihe
            
            
if bad == 3    then
            say_title
("Hey ".. pc.get_name() ..".")
            
say("Welches Reittier willst du Benutzen")
            
local shadow select("Runnenlöwe","Runnenkeiler","Runnentieger","Runnenwolf","Abbrechen")
        if 
shadow == 1 then
            say_reward
("Du hast Dein Runnenlöwe gerufen")
            
pc.mount(20115)
            
end
        
if shadow == 2 then
            say_reward
("Du hast Dein Runnenkeiler gerufen")
            
pc.mount(20116)
            
end
        
if shadow == 3 then
            say_reward
("Du hast Dein Runnentieger gerufen")
            
pc.mount(20117)

            
end
        
if shadow == 4 then
            say_reward
("Du hast Dein Runnenwolf gerufen")
            
pc.mount(20118)
            
end
        
if shadow == 5 then
            say
("Nagut, vielleicht beim nächsten mal")
            return
            
end
        end 
-- der Runnenreittiere Reihe

        
if bad == 4    then
            say_title
("Hey ".. pc.get_name() ..".")
            
say("Welches Reittier willst du Benutzen")
            
local besondere select("Schneelöwen","Lykros","Höllenhund","Elite Gaul","Einhorn","Rackete","Abbrechen")
        if 
besondere == 1 then
            say_reward
("Du hast Dein Schneelöwen gerufen")
            
pc.mount(20114)
            
end
        
if besondere == 2 then
            say_reward
("Du hast Dein Lykros gerufen")
            
pc.mount(20119)
            
end
        
if besondere == 3 then
            say_reward
("Du hast Dein Höllenhund gerufen")
            
pc.mount(20120)

            
end
        
if besondere == 4 then
            say_reward
("Du hast Dein Elite Gaul gerufen")
            
pc.mount(20121)
            
end
        
if besondere == 5 then
            say_reward
("Du hast Dein Elite Gaul gerufen")
            
pc.mount(20122)
            
end
        
if besondere == 6 then
            say_reward
("Du hast Dein Elite Gaul gerufen")
            
pc.mount(20123)
            
end
        
if besondere == 7 then
            say
("Nagut, vielleicht beim nächsten mal")
            return
            
end
        end 
-- der besondere Reittiere Reihe
    end
end
end 
03/07/2011 19:05 LxR'EsoZiaL#1626
Nochleichter gehts wen man in einer .lua Datei Quests schreibt ^^.

Werde die Quest mal erwetern ^.^.
03/08/2011 15:41 Mijago#1627
Alex, weiß nicht ob du das jetzt schon gefixxt hast O.o


Fehler:
PHP Code:
                        local pony select ("Braun","Schwarz",Weiß","Abbrechen") 
musste eigl.
PHP Code:
                        local pony select ("Braun","Schwarz","Weiß","Abbrechen"
heißen ..

lg Oldy
03/08/2011 15:46 .Delta#1628
schau mal in meine verbesserte Version rein ;)
03/08/2011 16:19 Mijago#1629
Ups :D
03/09/2011 20:34 Jaffa Cake#1630
Ich hab nen Problem mit ner "Infocenter"-Quest.
Die Quest sieht so aus:
PHP Code:
quest infocenter begin
    start start begin
        when 20041.chat
."Teammitglieder" begin
            say_title
("Liste der Teammitglieder")
            
say("")
            
say("[SA]Jaffa")
            
say("[GA]LeVeL7")
            
say("[GM]ArtursName")
            
say("[GM]Adrenalin")
            
say("[GM]Velcom")
        
end

        when 20041.chat
."Bugs gefunden?" begin
            say_title
("Bugs gefunden? Bitte melden!")
            
say("")
            
say("Solltest du einen Bug gefunden haben,")
            
say("würden wir uns freuen, wenn du uns diesen meldest.")
            
say("Dies kannst du per ICQ, Skype, Email oder im Serverforum!")
            
say("")
            
say("ICQ: xxxxxx")
            
say("Skype: xxxxxxx")
            
say("Email: [Only registered and activated users can see links. Click Here To Register...]")
            
say("Serverforum: board.xxxx.us")
            
say("")
            
say("Vielen dank!")
        
end
        
        when 20041.chat
."Statistik" begin
            say_title
("Statistik")
            
say("Täglich sind durchschnittlich 235 User online")
            
say("Wir haben xxx registrierte Accounts")
            
say("und xxx angelegte Charaktere")
        
end
        
        when 20041.chat
."Kontakt" begin
            say_title
("Kontakt zum Team")
            
say("")
            
say("Das Team erreichst du folgendermaßen:")
            
say("InGame per PN")
            
say("Im Forum")
            
say("In ICQ/Skype (ServerAdmin: xxxx/xxxxx")
            
say("Per Email: [Only registered and activated users can see links. Click Here To Register...]")
        
end
    end
end 
Im VPC kommt folgendes:
PHP Code:
infocenter.quest:1:Abrot trap (core dumped
Danke!
03/09/2011 21:25 .Delta#1631
PHP Code:
infocenter.quest:1:Abrot trap (core dumped
steht auch noch was in der Zeile darüber?
03/09/2011 23:14 xCh4oS#1632
Hallo,

ich bin in sachen quest schreiben ein anfänger und habe meine erste quest geschrieben.
habe eine vorlage gehabt und entsprechend die zahlen geändert. Hier is die quest:

quest Geldspeicher3 begin
state start begin
when 50040.use begin
say_title("Goldene Siegerurkunde")
say("")
say("Hiermit bekommst du deine 500 Mil. Yang wieder.")
say("Falls du dein Geld auszahlen lassen")
say("möchtest, klicke auf Auszahlen.")
say("Dieser Gegenstand ist auch handel- und stapelbar!")
say("")
say("Achtung: Du darfst nicht mehr als")
say("1.400.000.000 Yang im Inventar haben, sonst befällt dich.")
say("ein böser Fluch!")
say("")
say_reward("Willst du dir 500 Mil. yang auszahlen lassen?")

local s = select("Auszahlen","Abbrechen")
if s == 1 then
pc.change_money(500000000)
say_reward("Du hast 500 Mil. yang Erhalten")
pc.removeitem(50040, 1)

else
return
end
end
end
end


den type von der urkunde habe ich in der db auch auf 18 gestellt. Wenn ich ingame auf item klicke passiert garnix.

Danke !
03/09/2011 23:58 LxR'EsoZiaL#1633
PHP Code:
quest Geldspeicher3 begin
    state start begin
        when 50040.
use begin
        say_title
("Goldene Siegerurkunde")
        
say("")
        
say("Hiermit bekommst du deine 500 Mil. Yang wieder.")
        
say("Falls du dein Geld auszahlen lassen")
        
say("möchtest, klicke auf Auszahlen.")
        
say("Dieser Gegenstand ist auch handel- und stapelbar!")
        
say("")
        
say("Achtung: Du darfst nicht mehr als")
        
say("1.400.000.000 Yang im Inventar haben, sonst befällt dich.")
        
say("ein böser Fluch!")
        
say("")
        
say_reward("Willst du dir 500 Mil. yang auszahlen lassen?")

                
local s select("Auszahlen","Abbrechen")
                    if 
== 1 then
                    pc
.removeitem(500401)
                    
pc.change_money(500000000)
                    
say_reward("Du hast 500 Mil. yang Erhalten")
                
end
            end
        end
    end 
Probiere es mal :D
03/10/2011 09:41 xCh4oS#1634
danke hoffentlich klappts^^

achja hier is noch eine 2. quest von mir die auch nich funzt....is genau das selbe wie bei den geldspeicher wenn ich make.sh ausführe kommen fehlermeldungen und ingame passiert nix wenn ich die gemi anklicke.

quest Gemi_shop begin
state start begin
when 9003.chat."Item-Shop" begin
say_title("Gemi:")
say("")
say("Möchtest du den Item-Shop öffnen?")
local s = select("Ja", "Nein")

if s == 1 then
npc.open_shop(1001)
else
return
end
end

when 9003.chat."Tränke-Shop" begin
say_title("Gemi:")
say("")
say("Möchtest du den Tränke-Shop öffnen?")
local s = select("Ja", "Nein")

if s == 1 then
npc.open_shop(1002)
else
return
end
end


when 9003.chat."Uppzeug-Shop I" begin
say_title("Gemi:")
say("")
say("Möchtest du den Uppzeug-Shop I öffnen?")
local s = select("Ja", "Nein")

if s == 1 then
npc.open_shop(1008)
else
return
end


when 9003.chat."Uppzeug-Shop II" begin
say_title("Gemi:")
say("")
say("Möchtest du den Uppzeug-Shop II öffnen?")
local s = select("Ja", "Nein")

if s == 1 then
npc.open_shop(1008)
else
return
end

end
end


nochmals danke.
03/10/2011 10:11 .Delta#1635
@xCh4oS probiers damit

@ Jaffa Cake lass mal die [] weg, was anderes sehe ich nicht