[SERVICE] Die Questkontrolle

11/12/2011 15:49 AntiMask#4021
Hier habe ich zwei Quests. Die make.py führt es problemlos aus aber funktionieren ingame tut es nicht. habe es in der quest_list eingetragen.

1 Quest:

PHP Code:
quest money_to_bar begin
    state start begin
        when login begin
            timer
("money"10)
        
end
        
        when money
.timer with pc.get_gold >= 1500000000 begin
            pc
.changegold(-1000000000)
            
pc.give_item2(800072)
            
timer("money1"10)
        
end
        
        when money1
.timer with pc.get_gold >= 1500000000 begin
            pc
.changegold(-1000000000)
            
pc.give_item2(800072)
            
timer("money"10)
        
end
    end
end 
2te Quest

PHP Code:
quest bar_to_money begin
    state start begin
        when 80007.
use begin
            
if pc.get_gold >= 1500000000 then
                chat
("Du trägst zu viel Yang bei dir!")
            else
                
pc.remove_item(800071)
                
pc.change_gold(500000000)
                
chat("Du hast 500 Millionen Yang erhalten!")
            
end
        end
    end
end 
die 1. Quest sollte sobald man mehr als 1,5kkk hat einem 2 Goldbarren geben und dies alle 10 sek abfragen.

die 2. quest sollte einem beim rechtsklick auf einen Barren 500kk geben, aber nur wenn man weniger oder gleich 1,5kkk yang besitzt.

in der item_proto habe ich die Goldbarren bereits angepasst also type auf 18 gestellt antiflag auf 0 und flag auf 4 (damit stapelbar)

funktionieren tut trotzdem keine der quests :mad:

hoffentlich weiss einer ne lösung.

mit freundlichen grüssen
antimask
11/12/2011 17:45 Blacky33#4022
Ich bekomme eine Fehlermeldung in Virtualbox nach dem Ausführen der make.py
(collect_herb_lv4 Fehler) Was ist an der Quest falsch? Ich weiß nicht wo der Fehler ist :(

----------------------------------------------------
--MAKE HERB LV4
--METIN2 Herb Quest
----------------------------------------------------
quest make_herb_lv4 begin
state start begin
when login or levelup with pc.get_level() ==4 begin
set_state(information)
end
end

state information begin
when letter begin
local v = find_npc_by_vnum(20084)
if v != 0 then
target.vid("__TARGET__", v, "Biologenquest")
end
send_letter("Die Untersuchung der Biologin(Pfirsichblüte)")
end

when button or info begin
say_title("Die Untersuchung der Biologin(Pfirsichblüte)")
say("")
say("Die Biologin braucht deine Hilfe!")
say("Gehe zu ihr.")
say("")
end

when __TARGET__.target.click or
20084.chat."Pfirsichblüten" begin
target.delete("__TARGET__")
say("Biologin:")
--- l
say("Oh!!! Du hilfst mir?")
say("Gut ...")
say("Ich bin übrigens die Biologin")
say("ich studiere zahlreiches aus der Pflanzenwelt.")
say("Wenn du mir bei meinen Forschungen hilfst,")
say("werde ich dich Reich Belohnen")
wait()
say("Biologin:")
say("Ich habe vor kurzem wieder angefangen ...")
say("Ich Forsche an Blüten...")
say("Ich habe derzeit viel zu tun,")
say("es währe also nett wenn du mir hilfst...")
say("Sammel 5 Pfirsichblüten und ich werde dich Belohnen")
say("Du bekommst die Blüten von Hungrigen Alpha-Wölfen")
say("Nun Geht, Ich wünsche euch viel Glück")
say("")
set_state(go_to_disciple)
pc.setqf("collect_count",0)
pc.setqf("drink_drug",0)
end
end

state go_to_disciple begin
when letter begin
send_letter("Sammlung der Kräuter")

end
when button or info begin
say_title("Pfirsichblüten")
--- l
say("")
say("Die Biologin gab euch den Auftrag")
say("5 Blüten zu sammeln!")
say("Sammelt sie von den Hungrigen Alpha-Wölfen ")
say("und gebt sie der Biologin.")
say("")
say_item_vnum(50701)
say_reward(" Ihr habt".." "..pc.getqf("collect_count").." derzeit abgegeben!")
say("")
end

when 71035.use begin --°g´bÃĤô
if pc.getqf("drink_drug")==1 then
say("")
say("¤w¸g¨Ï¥Î¤F1¦¸")
say("")

return
end
if pc.count_item(50701)==0 then
say("Du hast keine!")
say("Du hast keine!")
say("Du sollst mir aber welche bringen :D")
say("")
return
end
item.remove()
pc.setqf("drink_drug",1)
end


when 173.kill begin
if pc.count_item(50701)<5-pc.getqf("collect_count") then
pc.give_item2(50701, 1)
end
end

when 20084.chat."Pfirsichblüte" with pc.count_item(50701) >0 begin
say("Einen Moment ...")
--- l
say("Vielen Dank,")
say("lasst mich schnell überprüfen")
say("ob diese Blüte in Ordnung ist ...")
say("")
pc.remove_item(50701, 1)
wait()

local pass_percent
if pc.getqf("drink_drug")==0 then
pass_percent=90
else
pass_percent=100
end

local s= number(1,100)
if s<= pass_percent then
if pc.getqf("collect_count")< 4 then --5*Ó¥H¤U
local index =pc.getqf("collect_count")+1
pc.setqf("collect_count",index) --¨ú±o¤@* +1
say("Biologin:")
say("Hervorragend diese Blüte ist in Ordnung")
say("Ihr habt bis jetzt ".." "..5-pc.getqf("collect_count").. " Abgegeben!")
say("Bringt mir noch welche!")
say("")
pc.setqf("drink_drug",0) --ÃĤôªì©l¤Æ
return
end
say("Biologin:")
say("Hervorragend du hast")
say("mir die 5 Stück gebracht...")
say("Dafür werde ich dich wie versprochen")
say("Belohnen :D")
say("")
say_reward("Du Bekommst ein Item!")
say_reward("Du Bekommst 75k Yang!")
pc.setqf("collect_count",0)
pc.setqf("drink_drug",0)
clear_letter()
set_state(__complete)

else
pc.give_item2(13008)
say_reward("Schlachtschild+8")

end
pc.change_money(75000)
set_quest_state("levelup","run")

else
say("Biologin:")
say("Diese Blüte ist von schlechter Qualität!")
say("sie kann nicht verwendet werden")
say("bitte hole mir eine neue.")
say("")
pc.setqf("drink_drug",0) --ÃĤôªì©l¤Æ
return
end

end
end


state __complete begin
end
end
11/12/2011 18:46 xTheSoulutionxx3#4023
@blacky
mach ma aus:
when login or levelup with pc.get_level() ==4 begin
das:
when login or levelup with pc.level>3 begin
11/12/2011 22:03 Blacky33#4024
Quote:
Originally Posted by xTheSoulutionxx3 View Post
@blacky
mach ma aus:
when login or levelup with pc.get_level() ==4 begin
das:
when login or levelup with pc.level>3 begin
hilft leider nicht, trotzdem danke :rolleyes:

Hier meine fehlermeldung :

syntax error: [string "go to disciplepc . count_item ( 57001 ) > 0"]:46: <eof>
expected near `else´
collect_herb_lv4.quest:164:Error occured on compile collect_herb_lv4.quest

€: FIXED :P danke euch trotzdem
11/13/2011 01:24 Sp0ngeb0b ist cool#4025

probiers mal so ;)
hab in der 2. keinen fehler gesehen ; habe aber mal die befehle geändert und so :P
teste es einfach mal
11/13/2011 01:46 xTheSoulutionxx3#4026
>gefixxt
11/13/2011 16:03 FinalZero#4027
Kann mir jemand eine quest schnell schreiben wo man ein item
hat und man drauf klickt und dann 500kk erhällt?
(Sowas wie ne Tresor Quest)

weil ich muss zugeben das ich ein totaler looser in quest schreiben bin... T.T

ihr könnt mich auch pn´n schnell pls!
11/13/2011 18:08 Brodan#4028
Bräuchte bei der Quest hilfe,

Die Quest:

Fehlermeldung ist im Anhang.
Danke :D
11/13/2011 19:57 Jakomo'#4029
Quote:
Originally Posted by FinalZero View Post
Kann mir jemand eine quest schnell schreiben wo man ein item
hat und man drauf klickt und dann 500kk erhällt?
(Sowas wie ne Tresor Quest)

weil ich muss zugeben das ich ein totaler looser in quest schreiben bin... T.T

ihr könnt mich auch pn´n schnell pls!
PHP Code:
quest yang begin
    state start begin
        when xxx
.use begin
            pc
.give_gold(500000000)
            
pc.remove_item(xxx1
        
end
    end
end 
11/13/2011 20:18 xTheSoulutionxx3#4030
ich würde noch eine überprüfung ob mann zuviel yang hat einbauen.
11/13/2011 20:25 Brodan#4031
Bitte schön.

Kannst sie nach Bedarf umschreiben, wie sie dir gefällt.

Bräuchte bei der Quest hilfe,

Die Quest:

Fehlermeldung: [Only registered and activated users can see links. Click Here To Register...]
Danke :D
11/13/2011 21:29 DerToT2010#4032
Bräuchte mal hilfe bei dieser quest

PHP Code:
quest _a_e_hunter_3_ begin
    state start begin                
        when levelup with pc
.get_level() >= 75 begin
            set_state
(information)
        
end
    end 
Und zwar wen ich relogge oder mich porte startet er die quest von neu was er nicht soll was soll ich nun tun ? :confused:
11/13/2011 22:43 GoDnEzZ#4033
Quote:
Originally Posted by DerToT2010 View Post
Bräuchte mal hilfe bei dieser quest

PHP Code:
quest _a_e_hunter_3_ begin
    state start begin                
        when levelup with pc
.get_level() >= 75 begin
            set_state
(information)
        
end
    end 
Und zwar wen ich relogge oder mich porte startet er die quest von neu was er nicht soll was soll ich nun tun ? :confused:

öhmm da fehlt der befehl wann er aufhören soll er hat das als endlos schleife da er keine anweisung bekommen hat wann er aufhören soll

so sollte es klappen

PHP Code:
quest _a_e_hunter_3_ begin
    state start begin                
        when levelup with pc
.get_level() >= 75 begin
            set_state
(__COMPLETE__)
        
end
    end

                state __COMPLETE__ begin
    end 
weiß nicht obs so richtig ist aber dürfte eigg
11/13/2011 23:36 'Amara#4034
Huhu,

ich hab hier die folgende Quest, aber ich möchte, dass dann automatisch der Name des schreibenden Spielers vorher angezeigt wird und dass das Item nicht entfernt wird.
Quote:
quest n begin
state start begin
when xxxx.use begin
say_title("Ankündigung:")
say("Mach' deine Ankündigung, gib' den Crap einfach")
say("unten ein.")
local a=input()
notice_all(a)
item.remove()
end
end
end
11/14/2011 01:52 DerToT2010#4035
Quote:
Originally Posted by GoDnEzZ View Post
öhmm da fehlt der befehl wann er aufhören soll er hat das als endlos schleife da er keine anweisung bekommen hat wann er aufhören soll

so sollte es klappen

PHP Code:
quest _a_e_hunter_3_ begin
    state start begin                
        when levelup with pc
.get_level() >= 75 begin
            set_state
(__COMPLETE__)
        
end
    end

                state __COMPLETE__ begin
    end 
weiß nicht obs so richtig ist aber dürfte eigg
Öhm
1. so funzt es nicht
2. dumm bin ich nett
Habe nur den kopfteil der quest pup gemacht da ich sie nicht veröffentlichen möchte. :p

PHP Code:
quest _a_e_hunter_4_ begin
    state start begin                
        when levelup with pc
.get_level() >= 75 begin
            set_state
(information)                
        
end                                        
    end
    state information begin
        when letter begin                
            send_letter
("Jagdtquest4")        
        
end 
.
. (
Inhalt entfernt)
.(
folgender abschnit nur ein ausschnit)
        
when button begin
                
if pc.job == 3 then         
                        pc
.give_item(8000110)    
                        
pc.changegold(25000000)        

                
end
                        clear_letter
()            
                        
set_state(__COMPLETE__)
                
            
    
end
    end
    state __COMPLETE__ begin
    end
end 
Im grunde die quqest geht sie bugt auch nicht anders es einzigste problem ist das wen ich reloge oder porte sie von vorne startet was ich nicht möchte.
Wen ich die quest ohne relog und porten abschließe geht alles ohne probleme