When Funktion; HELP

11/28/2012 01:51 JeeX#1
Hier Probleme bei einer When Funktion einer meiner Quests... :(
PHP Code:
        when __TARGET__.target.click or 20011.chat."Uriels Brief" with pc.level >= 75 begin
            say_title
("Uriel")
            
say("Besorge mir je ein Stück von u, v, w, x, y, z")
            
say("und du wirst reichlich belohnt!")
                return
        for 
uvwxyz,do
                
local amount pc.count_item(i)
        if 
amount 1 then
            pc
.remove_item(i,1)
            
pc.give_item2(ITEM)
            
pc.setqf("poison_traded_"..tostring(i),1)
            
pc.setqf("give_note",1)
        
end
    end
        
if pc.getqf("give_note") == 1 then
            say_title
("Uriel:")
            
say("")
            for 
uvwxyz,do
        if 
pc.getqf("poison_traded_"..tostring(i)) == 1 then
            say
("Danke das du mir die Items besorgt hast")
        else
        
say("Du hast noch nicht alle Items zusammen!")
        
end
    end 
Der Zweck dieser Quest is, das ich zu Uriel von nem anderen NPC geschickt werde und dann öffnet sich diese When Funktion...
Hierbei soll er als erstes denn Auftrag öffnen (Blabla.. du sollst mir dies und das besorgen...)
Dann wenn ich Ihn nochmal anklicke, soll stehen... Du hast noch die alle Items usw...
und wenn ich alle die verlangt wurden gesammelt habe.. und ihn nochmal anspreche,.. dann soll er mir 1 Item geben!

Ich bin nicht so der "Quest-Writer" das wäre nur eine sehr wichtige Quest.

Ich hoffe das das was ich bis jetzt zusammengeschrieben hab ned all zu Schwachsinnig ist... und ich komm einfach ned weiter.. ich hoffe jemand kann mich dabei unterstützen!

Lg JeeX
11/28/2012 01:57 ©by Noa#2
wieso hast du meine berichtigte quest oben nochmal gepostet?
€dit. dann mach das minus "q.set_counter("SchwarzerOrk", -count) " vor dem count weg, dannnach sollte es wieder gehen
11/28/2012 02:02 JeeX#3
Sry, hab mich da mit nem Thread // meinen Tabs verwechselt... hab da grad nicht drauf geachtet :S xD Hatte da gerade beide im Edit <-
habs grad ausgebessert..
11/28/2012 02:04 ©by Noa#4
hast du noch Probleme bei der kill quest?
11/28/2012 02:05 JeeX#5
N bisschen.. :S
Wenn ich einen Relogg mache, dann ist die Quest komischerweise komplett verschwunden :S
Weder in der Anzeige noch in Missimenü.. :S

edit: das mit dem Counter und der - zahl ist schon mal weg^^
11/28/2012 02:13 ©by Noa#6
PHP Code:
quest hmr begin 
    state start begin 
        when login with pc
.level >= 35 begin 
            set_state
(information
        
end 
    end 

    state information begin 
        when letter begin 
            send_letter
("Halbmondring"
        
end 

        when info 
or button begin 
            say
(""
            
say("Guten Tag Abenteurer,"
            
say("möchtest du dir einen Halbmondring verdienen?"
            
say(""
            
say_red("Dann töte 1000 Schwarze Orks"
            
say(""
            
pc.setqf("state"1000
            
q.set_counter("SchwarzerOrk"1000
            
clear_letter()
            
setstate(brief
        
end 
    end 
    state brief begin
        when letter begin
            send_letter
("Töte SchwarzeOrks")
        
end
        when button 
or info begin
            say_title
("Töte SchwarzeOrks")
            
say()
            
say_reward("Du musst noch "..pc.getqf("state").." von 1000 Töten")
        
end
        
        when 636.kill begin 
            local count 
pc.getqf("state") - 
            
if count <= 1000 then 
                pc
.setqf("state"count
                
q.set_counter("SchwarzerOrk"count
            
end 
            
if count == 0 then 
                clear_letter
()
                
set_state(reward)
            
end
        end
    end
    state reward begin
        when letter begin
            send_letter
("Die Belohnung")
        
end
        when button 
or info begin
            say_title
("Die Belohnung"
            
say(""
            
say(""
            
say("Für deine Verdienste, gebe ich dir ..."
            
say(""
            
say_reward(say_item_vnum(71135)) 
            
pc.give_item2(711351
            
clear_letter() 
            
set_state(end
        
end 
    end 
    state end begin 
    end 
end 
beim nächsten mal, kannst du ruhig nerven wenn etwas nicht geht.
11/29/2012 00:44 JeeX#7
Error occured on compile hmr.quest

:(
11/29/2012 02:16 ©by Noa#8
screen wär nicht schlecht
12/01/2012 15:52 JeeX#9
Naja er schreibt mir nur

Error occured on compile hmr.quest

sonst steht nix dabei..
12/02/2012 00:33 ©by Noa#10
Ich weis nicht ob der letzte state(end) als Funktion gezählt wird, also hab ich es geändert, vll Funktioniert es so.
PHP Code:
quest hmr begin 
    state start begin 
        when login with pc
.get_level >= 35 begin
            set_state
(information
        
end 
    end 

    state information begin 
        when letter begin 
            send_letter
("Halbmondring"
        
end 

        when info 
or button begin 
            say
(""
            
say("Guten Tag Abenteurer,"
            
say("möchtest du dir einen Halbmondring verdienen?"
            
say(""
            
say_red("Dann töte 1000 Schwarze Orks"
            
say(""
            
pc.setqf("state"1000
            
q.set_counter("ork"1000
            
clear_letter()
            
setstate(brief
        
end 
    end 
    state brief begin
        when letter begin
            send_letter
("Töte SchwarzeOrks")
        
end
        when button 
or info begin
            say_title
("Töte SchwarzeOrks")
            
say()
            
say_reward("Du musst noch "..pc.getqf("state").." von 1000 Töten")
        
end
        
        when kill 
and npc.get_race== 636 begin 
            local count 
pc.getqf("state") - 
            
if count <= 1000 then 
                pc
.setqf("state"count
                
q.set_counter("ork"count
            
end 
            
if count == 0 then 
                clear_letter
()
                
set_state(reward)
            
end
        end
    end
    state reward begin
        when letter begin
            send_letter
("Die Belohnung")
        
end
        when button 
or info begin
            say_title
("Die Belohnung"
            
say(""
            
say(""
            
say("Für deine Verdienste, gebe ich dir ..."
            
say(""
            
pc.give_item2(711351
            
clear_letter() 
            
set_state(ende
        
end 
    end 
    state ende begin 
    end 
end 
12/02/2012 01:37 JeeX#11
PHP Code:
QUEST hmr
STATE 
start
WHEN  
login
        with pc 
get_level >= 35
STATE 
information
WHEN  
letter
WHEN  
info or
WHEN  button
STATE 
brief
WHEN  
letter
WHEN  
button or
WHEN  info
WHEN  
kill
when doesn
't have begin-end clause. (and)
hmr.quest:36:Error occured on compile hmr.quest 
schon eine tükische Quest ^^