[SERVICE] Die Questkontrolle

02/05/2015 13:57 rollback#11011
Quote:
Originally Posted by VeyZ View Post
[...]

Funktioniert leider immernoch nicht ..

@[Sensenmann]
Schau mal bitte deine Nachrichten an :)
Hab keinen Fehler gefunden, aber eine Sache war noch doof formatiert:

PHP Code:
quest userpanel begin
    state start begin
        when 40002.
use begin 
            say
("Userpanel:")
            
local head select("Warpring""Lager""Informationscenter""Abbrechen")
            if 
head == 4 then
                
return
            elseif 
head == 1 then
                say
("Teleportpanel")
                
local on select("Map1""Map2""Farmmap""Weiter""Abbrechen")
                if 
on == 5 then
                    
return
                elseif 
on == 1 then
                    say
("In welches Reich möchtest du?")
                    
local map1 select ("Rot""Blau""Gelb""Doch nicht")
                    if 
map1 == 4 then
                        
return
                    elseif 
map1 == 1 then
                        pc
.warp(474462954500)
                    elseif 
map1 == 2 then
                        pc
.warp(959913269179)
                    elseif 
map1 == 3 then
                        pc
.warp(63369166149)
                    
end
                
elseif on == 2 then
                    say
("In welches Reich möchtest du?")
                    
local map2 select("Rot""Blau""Gelb""Doch nicht")
                    if 
map2 == 4 then
                        
return
                    elseif 
map2 == 1 then
                        pc
.warp(352967882032)
                    elseif 
map2 == 2 then
                        pc
.warp(145310240385)
                    elseif 
map2 == 3 then
                        pc
.warp(863763245995)
                    
end
                
elseif on == 3 then
                    say
("Wohin genau?")
                    
local eis select("Mitte""Doch nicht")
                    if 
eis == 2 then
                        
return
                    elseif 
eis == 1 then
                        pc
.warp(296800547100)
                    
end
                
elseif on == 4 then
                    say
("noch leer")
                
end
            
elseif head == 2 then
                game
.open_safebox()
                
setskin(NOWINDOW)
            elseif 
head == 3 then
                say
("Wähle in den Kategorien!")
                
local s select("Team""Dropps""Events""Reboots""Doch nicht")
                if 
== 5 then
                    
return
                elseif 
== 1 then
                    say
("[SL]iD0P3")
                    
say("[GA] - Gesucht")
                    
say("[GM] - Gesucht")
                    
say("[BA] - Gesucht")
                    
say("[MOD] - Gesucht")
                elseif 
== 2 then
                    say
("Auf der Farmmap droppt ihr verscheidene bunte Perlen die ihr zum erhöhen eurer Gegenstände benötigt.")
                    
say("Die Farmmap erreicht ihr über das Userpanel -> Warpring")
                elseif 
== 3 then
                    say
("Events wird es geben, wir planen in Zukunft jeden Tag um 19.00 Uhr ein OX-Event zu machen.")
                    
say("Gewinnen könnt ihr dort Pets,Ringe,Coins usw.")
                elseif 
== 4 then
                    say
("Reboots werden immer frühzeitig im Forum und ingame angekündigt.")
                    
say("Loggt euch bitte rechtzeitig aus damit ihr keine Items verliert.")
                
end
            end
        end
    end
end 
Was für einen Fehler bekommst du denn beim compilen?

Hab keine Nachricht von dir ... :o
02/05/2015 17:14 .Mosh36#11012
PHP Code:
quest userpanel begin
    state start begin
        when 40002.
use begin 
            say
("Userpanel:")
            
local head select("Warpring""Lager""Informationscenter""Abbrechen")
            if 
head == 4 then
                
return
            elseif 
head == 1 then
                say
("Teleportpanel")
                
local on select("Map1""Map2""Farmmap""Weiter""Abbrechen")
                if 
on == 5 then
                    
return
                elseif 
on == 1 then
                    say
("In welches Reich möchtest du?")
                    
local map1 select ("Rot""Blau""Gelb""Doch nicht")
                    if 
map1 == 4 then
                        
return
                    elseif 
map1 == 1 then
                        pc
.warp(474462954500)
                    elseif 
map1 == 2 then
                        pc
.warp(959913269179)
                    elseif 
map1 == 3 then
                        pc
.warp(63369166149)
                    
end
                
elseif on == 2 then
                    say
("In welches Reich möchtest du?")
                    
local map2 select("Rot""Blau""Gelb""Doch nicht")
                    if 
map2 == 4 then
                        
return
                    elseif 
map2 == 1 then
                        pc
.warp(352967882032)
                    elseif 
map2 == 2 then
                        pc
.warp(145310240385)
                    elseif 
map2 == 3 then
                        pc
.warp(863763245995)
                    
end
                
elseif on == 3 then
                    say
("Wohin genau?")
                    
local eis select("Mitte""Doch nicht")
                    if 
eis == 2 then
                        
return
                    elseif 
eis == 1 then
                        pc
.warp(296800547100)
                    
end
                
elseif on == 4 then
                    say
("noch leer")
                
end
            
elseif head == 2 then
                game
.open_safebox()
                
setskin(NOWINDOW)
            elseif 
head == 3 then
                say
("Wähle in den Kategorien!")
                
local s select("Team""Dropps""Events""Reboots""Doch nicht")
                if 
== 5 then
                    
return
                elseif 
== 1 then
                    say
("[SL]iD0P3")
                    
say("[GA] - Gesucht")
                    
say("[GM] - Gesucht")
                    
say("[BA] - Gesucht")
                    
say("[MOD] - Gesucht")
                elseif 
== 2 then
                    say
("Auf der Farmmap droppt ihr verscheidene bunte Perlen die ihr zum erhöhen eurer Gegenstände benötigt.")
                    
say("Die Farmmap erreicht ihr über das Userpanel -> Warpring")
                elseif 
== 3 then
                    say
("Events wird es geben, wir planen in Zukunft jeden Tag um 19.00 Uhr ein OX-Event zu machen.")
                    
say("Gewinnen könnt ihr dort Pets,Ringe,Coins usw.")
                elseif 
== 4 then
                    say
("Reboots werden immer frühzeitig im Forum und ingame angekündigt.")
                    
say("Loggt euch bitte rechtzeitig aus damit ihr keine Items verliert.")
                
end
            end
        end
    end
end 
Die Quest funktioniert immernoch nicht..
Weiß auch nicht warum in VB erscheint kein fehler nach dem einfügen der Quest..
02/05/2015 17:29 rollback#11013
Quote:
Originally Posted by [iD0P3] View Post
PHP Code:
quest userpanel begin
    state start begin
        when 40002.
use begin 
            say
("Userpanel:")
            
local head select("Warpring""Lager""Informationscenter""Abbrechen")
            if 
head == 4 then
                
return
            elseif 
head == 1 then
                say
("Teleportpanel")
                
local on select("Map1""Map2""Farmmap""Weiter""Abbrechen")
                if 
on == 5 then
                    
return
                elseif 
on == 1 then
                    say
("In welches Reich möchtest du?")
                    
local map1 select ("Rot""Blau""Gelb""Doch nicht")
                    if 
map1 == 4 then
                        
return
                    elseif 
map1 == 1 then
                        pc
.warp(474462954500)
                    elseif 
map1 == 2 then
                        pc
.warp(959913269179)
                    elseif 
map1 == 3 then
                        pc
.warp(63369166149)
                    
end
                
elseif on == 2 then
                    say
("In welches Reich möchtest du?")
                    
local map2 select("Rot""Blau""Gelb""Doch nicht")
                    if 
map2 == 4 then
                        
return
                    elseif 
map2 == 1 then
                        pc
.warp(352967882032)
                    elseif 
map2 == 2 then
                        pc
.warp(145310240385)
                    elseif 
map2 == 3 then
                        pc
.warp(863763245995)
                    
end
                
elseif on == 3 then
                    say
("Wohin genau?")
                    
local eis select("Mitte""Doch nicht")
                    if 
eis == 2 then
                        
return
                    elseif 
eis == 1 then
                        pc
.warp(296800547100)
                    
end
                
elseif on == 4 then
                    say
("noch leer")
                
end
            
elseif head == 2 then
                game
.open_safebox()
                
setskin(NOWINDOW)
            elseif 
head == 3 then
                say
("Wähle in den Kategorien!")
                
local s select("Team""Dropps""Events""Reboots""Doch nicht")
                if 
== 5 then
                    
return
                elseif 
== 1 then
                    say
("[SL]iD0P3")
                    
say("[GA] - Gesucht")
                    
say("[GM] - Gesucht")
                    
say("[BA] - Gesucht")
                    
say("[MOD] - Gesucht")
                elseif 
== 2 then
                    say
("Auf der Farmmap droppt ihr verscheidene bunte Perlen die ihr zum erhöhen eurer Gegenstände benötigt.")
                    
say("Die Farmmap erreicht ihr über das Userpanel -> Warpring")
                elseif 
== 3 then
                    say
("Events wird es geben, wir planen in Zukunft jeden Tag um 19.00 Uhr ein OX-Event zu machen.")
                    
say("Gewinnen könnt ihr dort Pets,Ringe,Coins usw.")
                elseif 
== 4 then
                    say
("Reboots werden immer frühzeitig im Forum und ingame angekündigt.")
                    
say("Loggt euch bitte rechtzeitig aus damit ihr keine Items verliert.")
                
end
            end
        end
    end
end 
Die Quest funktioniert immernoch nicht..
Weiß auch nicht warum in VB erscheint kein fehler nach dem einfügen der Quest..
hast du das item auf type 18 gestellt?
02/05/2015 17:43 NexuzChaos#11014
Quote:
Originally Posted by .JayZoN View Post
In Zeile 21 hat eine Klammer gefehlt.

Danke erstmal für die Antwort. Die Quest lässt sich jetzt auf jeden Fall implementieren, jedoch bekommt man keine Nachricht, wenn man die Partisane erhalten hat. Wieso ?

Edit: Hat sich erledigt. Am Schluss wurde die VNUm vom Biologen angegeben. Also danke für die Korrektur. Hat man den Fehler eigentlich anhand des Fehler des VPC erkannt oder hast du dir die Quest komplett durchgelesen ? Ich hatte gesehen, dass du den Befehl für die Mobs, die das Item droppen verkürzt hast. :)
02/05/2015 17:50 .Mosh36#11015
Quote:
hast du das item auf type 18 gestellt?
Ja, habe es gerade nochmal überprüft..
Bist du gerade in Skype erreichbar das du dir das mal anschauen kannst?
02/05/2015 18:04 rollback#11016
Quote:
Originally Posted by [iD0P3] View Post
Ja, habe es gerade nochmal überprüft..
Bist du gerade in Skype erreichbar das du dir das mal anschauen kannst?
Ja, einfach adden.
02/05/2015 20:45 NexuzChaos#11017
Ein Ausschnitt aus meiner Quest...

Das ist der Schluss meiner Quest, die ich einbauen will.
Ohne das lässt sich die Quest implementieren. (ab state nächstes begin)
Mit dem hier kommt in VPC der Fehler:
Error ocurred on compile "meine Quest"
Ich habe 45 Minuten nach einer Lösung gesucht und keine gefunden...
Ich versuche erst seit kurzem eigene Quests zu schreiben.
02/05/2015 20:49 rollback#11018
nächstes -> naechstes
02/05/2015 20:52 NexuzChaos#11019
Quote:
Originally Posted by [Sensenmann] View Post
nächstes -> naechstes
Bereits ausprobiert. Funktioniert nicht.
02/05/2015 21:50 Darryus98#11020
Quote:
Originally Posted by Darryus98 View Post
Quest
Code:
 quest cal_militar begin 
   state start begin 
      when 20349.chat."Cal militar" with horse.get_grade()==1 and horse.get_level()==10 begin 
         if horse.is_dead() then 
            say("Calul tau e mort!") 
            say("Readul la viata intai.") 
            say("") 
         elseif pc.level<=54 then 
            say("Nivelul tau este prea mic.") 
            say("") 
         elseif horse.get_level()<=9 then 
            say("Calul tau este prea mic!") 
            say("Antreneaza-ti calul mai intai.") 
            say("") 
         elseif pc.countitem("50050")<1 then 
            say("Nu ai nici o medalie!") 
            say("Fa rost de una intai.") 
            say("") 
            setstate(need_item50050) 
         elseif pc.countitem("50051")<1 then 
            say("Nu ai niic o imagine de cal !") 
            say("") 
         elseif horse.get_level()==10 and not horse.is_dead() and pc.countitem("50050")>=1 and pc.level>=55 then 
            say("Trebuie sa omori 200 de Arcas Demon") 
            say("in 30 de Minute.") 
            say("Doar asa pot fi sigur ca esti calificat") 
            say("pentru a primi un cal militar!") 
            say("") 
            say("Vrei sa incepi testul?") 
            say("") 
            local b=select("Da", "Ehm, nu.") 
            if 1==b then 
               if pc.countitem("50050")>=1 then 
                  pc.removeitem("50050", 1) 
                  setstate(test) 
               end 
            elseif 2==b then 
               say("Revino cand esti pregatit.") 
            else 
               say("UNKNOWN BUTTON ["..b.."]") 
            end 
         else 
            say("") 
            say("Mult noroc.") 
            say("") 
         end 
      end 
   end 
   state need_item50050 begin 
      when letter begin 
         setskin(NOWINDOW) 
         makequestbutton("Medalie de Calarit") 
         q.set_title("Medalie de Calarit") 
         q.start() 
      end 
      when button begin 
         say(locale.NOTICE_COLOR.."Medalie de Calarit"..locale.NORMAL_COLOR) 
         say("Fa rost de o Medalie de Calarit!") 
         setstate(start) 
         q.done() 
      end 
      when info begin 
         say(locale.NOTICE_COLOR.."Medalie de Calarit"..locale.NORMAL_COLOR) 
         say("Fa rost de o Medalie de Calarit!") 
         setstate(start) 
         q.done() 
      end 
   end 
   state test begin 
      when letter begin 
         q.set_counter("1002   ", 200-pc.getqf("kill_count")) 
      end 
      when 2105.party_kill begin 
         pc.setqf("kill_count", pc.getqf("kill_count")+1) 
         q.set_counter("1002   ", 200-pc.getqf("kill_count")) 
         if get_time()>=pc.getqf("limit_time") then 
            setstate(failure) 
         end 
      end 
      when 2107.party_kill begin 
         pc.setqf("kill_count", pc.getqf("kill_count")+1) 
         q.set_counter("1002   ", 200-pc.getqf("kill_count")) 
         if get_time()>=pc.getqf("limit_time") then 
            setstate(failure) 
            q.done() 
         end 
      end 
      when letter begin 
         q.set_clock("Timp ramas:", pc.getqf("limit_time")-get_time()) 
      end 
      when enter begin 
         pc.setqf("limit_time", get_time()+30*60) 
         pc.setqf("kill_count", 0) 
      end 
      when leave begin 
         q.done() 
      end 
      when letter begin 
         setskin(NOWINDOW) 
         makequestbutton("Omoara Demoni Arcas") 
         q.set_title("Omoara Demoni Arcas") 
         q.start() 
      end 
      when button begin 
         say(locale.NOTICE_COLOR.."Omoara Demoni Arcas"..locale.NORMAL_COLOR) 
         say("Trebuie sa omori 200 de Arcas Demon") 
         say("in 30 de Minute.") 
         say("Membrii grupei te pot ajuta.") 
      end 
      when info begin 
         say(locale.NOTICE_COLOR.."Omoara Demoni Arcas"..locale.NORMAL_COLOR) 
         say("Trebuie sa omori 200 de Arcas Demon") 
         say("in 30 de Minute.") 
         say("Membrii grupei te pot ajuta.") 
      end 
      when 2105.party_kill with pc.getqf("kill_count") >= 100 and pc.getqf("kill_count") >= 100 and pc.getqf("limit_time")>=get_time() begin 
         setstate(report) 
      end 
      when 2107.party_kill with pc.getqf("kill_count") >= 100 and pc.getqf("kill_count") >= 100 and pc.getqf("limit_time")>=get_time() begin 
         setstate(report) 
      end 
      when 20349.chat."Cal Militar" begin 
         say("Trebuie sa omori 200 de Arcas Demon") 
         say("in 30 de Minute.") 
         say("Membrii grupei te pot ajuta.") 
      end 
   end 
   state report begin 
      when letter begin 
         setskin(NOWINDOW) 
         makequestbutton("Ai reusit") 
         q.set_title("Ai reusit") 
         q.start() 
      end 
      when button begin 
         say(locale.NOTICE_COLOR.."Ai reusit"..locale.NORMAL_COLOR) 
         say("Intoarcete la grajdar.") 
      end 
      when info begin 
         say(locale.NOTICE_COLOR.."Ai reusit"..locale.NORMAL_COLOR) 
         say("Intoarcete la grajdar.") 
      end 
      when 20349.chat."HORSE QUEST STATE REPAIR" with horse.get_grade()!=1 begin 
         setstate(start) 
         q.done() 
      end 
      when 20349.chat."Am reusit!" with horse.get_grade()==1 begin 
         say("Felicitari!") 
         say("Acum am nevoie de timp pentru a face contractul!") 
         say("Revino in 10 minute.") 
         say("Si adu 500.000 Yang.") 
         if is_test_server() then 
            pc.setqf("make_time", get_time()+10) 
         else 
            pc.setqf("duration",get_time()+60*10*) 
         end 
         setstate(wait) 
      end 
   end 

      when 20349.chat."HORSE UPGRADE QUEST STATE REPAIR" with horse.get_grade()!=1 begin 
         setstate(start) 
         q.done() 
      end 
      when 20349.chat."Contractul?" with horse.get_grade()==1 begin 
         say("Inca nu am terminat contractul") 
         say("Revino mai tarziu.") 
      end 
   end 
   state buy begin 
      when letter begin 
         setskin(NOWINDOW) 
         makequestbutton("Contractul este gata!") 
         q.set_title("Contractul este gata!") 
         q.start() 
      end 
      when button begin 
         say(locale.NOTICE_COLOR.."Contractul este gata!"..locale.NORMAL_COLOR) 
         say("Dute la grajdar si ia-l!") 
         say("Si nu uita cei 500.000 Yang.") 
      end 
      when info begin 
         say(locale.NOTICE_COLOR.."Contractul este gata!"..locale.NORMAL_COLOR) 
         say("Dute la grajdar si ia-l!") 
         say("Si nu uita cei 500.000 Yang.") 
      end 
      when 20349.chat."HORSE UPGRADE QUEST STATE REPAIR" with horse.get_grade()!=1 begin 
         setstate(start) 
         q.done() 
      end 
      when 20349.chat."HORSE UPGRADE QUEST STATE REPAIR" with horse.get_grade()==1 and horse.get_level()!=10 begin 
         setstate(start) 
         q.done() 
      end 
      when 20349.chat."Contractul meu?" with horse.get_grade()==1 and horse.get_level()==10 begin 
         say("COntractul tau este pregatit.") 
         say("Te costa 500.000 Yang.") 
         local b=select("Cumpara", "Mai tarziu", "Anuleaza") 
         if 1==b then 
            if pc.money>=500000 then 
               if pc.countitem("50051")>=1 then 
                  char_log(0, "HORSE_UPGRADE", "BEGIN") 
                  pc.changemoney(-500000) 
                  char_log(0, "HORSE_UPGRADE", "DEC money 500000") 
                  pc.removeitem("50051", 1) 
                  char_log(0, "HORSE_UPGRADE", "DEC 50051 1") 
                  horse.unride() 
                  horse.advance() 
                  horse.ride() 
                  char_log(0, "HORSE_UPGRADE", "INC horse_advance 1") 
                  pc.give_item2("50052", 1) 
                  char_log(0, "HORSE_UPGRADE", "INC 50052 1") 
                  char_log(0, "HORSE_UPGRADE", "END") 
                  say("Felicitari!") 
                  say("Acum ai un cal militar.") 
                  say("Hranestel mereu.") 
                  say("") 
                  setstate(start) 
                  q.done() 
               else 
                  say("") 
               end 
            else 
               say("") 
            end 
         elseif 2==b then 
            say("Ouk pe mai incolo.") 
         elseif 3==b then 
            say("Esti sigur ca vrei sa anulezi Questul?") 
            local b=select("Da", "Nu") 
            if 1==b then 
               setstate(start) 
               q.done() 
            elseif 2==b then 
            else 
               say("UNKNOWN BUTTON ["..b.."]") 
            end 
         else 
            say("UNKNOWN BUTTON ["..b.."]") 
         end 
      end 
   end 
   state failure begin 
      when letter begin 
         setskin(NOWINDOW) 
         makequestbutton("Misiune esuata") 
         q.set_title("Misiune esuata") 
         q.start() 
      end 
      when button begin 
         say(locale.NOTICE_COLOR.."Misiune esuata"..locale.NORMAL_COLOR) 
         say("Nu ai reusit sa treci testul") 
         say("") 
         say("Dute la grajdar, pentru a repeta misiunea!") 
         setstate(start) 
         q.done() 
      end 
      when info begin 
         say(locale.NOTICE_COLOR.."Misiune esuata"..locale.NORMAL_COLOR) 
         say("Nu ai reusit sa treci testul") 
         say("") 
         say("Dute la grajdar, pentru a repeta misiunea!") 
         setstate(start) 
         q.done() 
      end 
   end 
   state __COMPLETE__ begin 
      when enter begin 
         q.done() 
      end 
   end 
end
Error
Code:
cal_militar.quest:162: syntax error : [string "reporthorse . get_grade ( ) == 1"]:8: unexpected symbol near `)'
Abort (core dumped)
Hilfe bitte ^-^ :handsdown:
^-^
02/05/2015 21:50 rollback#11021
Ich wollte einen Questbefehl erstellen, mit dem man Ingame Questbefehle eingeben kann damit die direkt ausgeführt werden ... hat leider nicht so ganz geklappt. Vielleicht kann mir ja jemand helfen:

PHP Code:
function execute_command_from_input()
    
local input1 input()
    
local input2 input()
    return 
input1..input2
end 
(2 inputs für längere befehle)

Die beiden Inputs erscheinen auch, wenn ich in eine Quest "execute_command_from_input()" Eintrage, aber der eingegebene Befehl wird nicht ausgeführt ...
02/05/2015 23:08 ASFIREx3#11022
Quote:
Originally Posted by ASFIREx3 View Post
Hallo, hab n kleines problem.. Für Gilde erstellen nur mit einem bestimmtes, jedoch zeigt er mir fehler an beim compilen.

Jemand ne idee was fehler sein könnte? o.O

[Only registered and activated users can see links. Click Here To Register...]

#
02/05/2015 23:22 .Delta#11023
schreib das pc.remove_item(2, 1)
vor das end darüber.
also
pc.remove_item(2, 1)
end
02/05/2015 23:57 NexuzChaos#11024
Ich habe meine Quest ein bisschen weiter bearbeitet und wie solls anders sein als Neuling, natürlich wieder ein Fehler drinn, welchen ich nicht finde.
VPC spuckt folgendes aus:
betrunkener_buerger.quest:148:syntax error: [string betrunkener_buerger2]:8:´=´ expected near ´<eof>´

02/06/2015 06:54 G.I Duke#11025
Quote:
Originally Posted by NexuzChaos View Post
Ich habe meine Quest ein bisschen weiter bearbeitet und wie solls anders sein als Neuling, natürlich wieder ein Fehler drinn, welchen ich nicht finde.
VPC spuckt folgendes aus:
betrunkener_buerger.quest:148:syntax error: [string betrunkener_buerger2]:8:´=´ expected near ´<eof>´

Wie wärs denn mit der kompletten Quest statt nur einem Teil
davon?