Kill-Mob Quest - Need some Help

01/27/2013 21:16 FusionPT#1
Hi guys,

In this quest i ask the player to kill 10 dogs, almost everything is working, the only "bug" in the quest is that when the player reads a second time the quest the counter goes back to 0. Any way to prevent this?

Code:
state missao_lv5 begin
		when letter begin
			send_letter("Missão de Caça Lv. 5")
		end

		when info begin
			say("Missão de Caça Lv. 5")
			say("Mata 10 Cães Selvagens Ferozes para")
			say("receberes as seguintes recompensas:")
			say_reward(" - 500.000 Yang")
			say_reward(" - 3000 Experiência")
			say("")
	        	pc.setqf("state", 10)
	        	q.set_counter("Cão Selvagem Feroz", 10)
		end

		when 171.kill begin
			local count = pc.getqf("state") - 1
			if count <= 10 then
				pc.setqf("state", count)
	            q.set_counter("Cão Selvagem Feroz", count)
			end
			if count == 0 then
			    say_title("Missão de Caça Lv. 5")
			    say("Completas-te a Missão com sucesso!")
				say("Acabas-te de receber:")
				say_reward(" - 500.000 Yang")
				say_reward(" - 3000 Experiência")
				pc.change_money(500000)
				pc.give_exp(3000)
				clear_letter()
				set_state(start_lv10)
			end
		end
end
Cumpz,
ExyloN
12/08/2013 10:09 3ro#2
f5
12/08/2013 10:25 .Boa Hancock#3
[Only registered and activated users can see links. Click Here To Register...]
Post it here
12/08/2013 11:12 -Zuko#4
Change the rewards and translated the Quest
PHP Code:
quest Kill1 begin 
    state start begin 
        when levelup with pc
.get_level() >= 1 begin 
            set_state
(killmonster
        
end 
    end 
    state killmonster begin 
        when letter begin 
            send_letter
("Töte Wildhunde!"
            
pc.setqf("state"0
            
q.set_counter("Verbleibend",10
        
end 
        when info 
or button begin 
            say_title
("Töte 10 Wildhunde!"
            
say_reward"Es fehlen noch ".." "..10 pc.getqf("state").." Wildhunde ."
            
say(""
        
end 
        when 101.kill begin 
            local count 
pc.getqf("state") + 

            
if count <= 10 then 
                pc
.setqf("state"count
                
q.set_counter("Verbleibend"10 count

                if 
count == 10 then 
                    say_title
("Aufgabe abgeschlossen!"
                    
say("Alle 10 Wildhunde wurden getötet."
                    
say("Erhalte deine Belohnung:"
                    
say_reward("2880 Erfahrungspunkte")
                    
say_reward("Ausserdem: 5000 Yang")
                    
pc.give_exp2(2880)
                    
pc.change_money(5000)
                    
set_state__COMPLETE__ 
                
end 
            end 
        end 
    end 
    state __COMPLETE__ begin 
    end 
end 
12/08/2013 14:02 .Xilent#5
Quote:
Originally Posted by -Zuko View Post
Change the rewards and translated the Quest
PHP Code:
quest Kill1 begin 
    state start begin 
        when levelup with pc
.get_level() >= 1 begin 
            set_state
(killmonster
        
end 
    end 
    state killmonster begin 
        when letter begin 
            send_letter
("Töte Wildhunde!"
            
pc.setqf("state"0
            
q.set_counter("Verbleibend",10
        
end 
        when info 
or button begin 
            say_title
("Töte 10 Wildhunde!"
            
say_reward"Es fehlen noch ".." "..10 pc.getqf("state").." Wildhunde ."
            
say(""
        
end 
        when 101.kill begin 
            local count 
pc.getqf("state") + 

            
if count <= 10 then 
                pc
.setqf("state"count
                
q.set_counter("Verbleibend"10 count

                if 
count == 10 then 
                    say_title
("Aufgabe abgeschlossen!"
                    
say("Alle 10 Wildhunde wurden getötet."
                    
say("Erhalte deine Belohnung:"
say_reward("2880 Erfahrungspunkte")
say_reward("Ausserdem: 5000 Yang")
pc.give_exp2(2880)
pc.change_money(5000)
                    
set_state__COMPLETE__ 
                
end 
            end 
        end 
    end 
    state __COMPLETE__ begin 
    end 
end 
Dürfte so nicht funktionieren, da der Questname mit einem Großbuchstaben beginnt.