Fehlerhafte Quest

11/07/2014 08:37 XeBuscade#1
Morgen Leute,
ich habe da eine Quest, bei der man eig nicht viel machen muss, bis auf 40 Eisgolems killen, aber wenn man die Quest annimmt, und man dann einen Mapwechsel macht, erscheint die Quest als nicht angenommen.

Hier die Quest:

Code:
quest Rache_für_Mirine begin
	state start begin
		when login or levelup with pc.level >= 45 and pc.level <= 50 begin
			set_state(gotomirine)
		end
	end
	state gotomirine begin
		when letter begin
			send_letter("Rache für Mirine")

			local v = find_npc_by_vnum(20006)

			if v != 0 then
				target.vid("__TARGET__", v, "Mirine")
			end
		end
		when button or info begin
            say("Mirine:")
			say("Mirine möchte ihren Bruder Rächen.")
			say("Gehe bitte zu ihr.")
		end
		
		when __TARGET__.target.click begin
			target.delete("__TARGET__")

			say("Mirine:")
            say("Hallo, Fremder.")
			say("Hilf mir bitte.")
			say("Ich habe den Tod meines Bruders")
			say("noch nicht überwunden.")
            wait()
            say("Könntest du für mich ins")
			say("Eisland ziehen und 40 Eisgolems")
			say("töten?")
			say_reward("Töte 40 Eisgolems")
			say("")
			set_state(kill)	
			
			pc.setqf("state", 0)
			q.set_counter("Restanzahl Eisgolems", 0)
			
		end

	end

	state kill begin
		when letter begin
			send_letter("Töte Eisgolems.")
		end
		when button or info begin
			say_title("")
			say("Du musst 40 Eisgolems töten")
			say("")
			say_reward(""..pc.getqf("state").." von 40 der Art Eisgolems getötet")
			say("")
		end
		when 1107.kill begin
			local count = pc.getqf("state") + 1

			if count <= 40 then
				pc.setqf("state", count)
				q.set_counter("Restanzahl Eisgolems", 40 - count)

				if count == 40 then
					say_title("Mirine:")
					say("")
                    say("Komm nun bitte zu mir.")
					set_state(gototeacher2)
				end
			end
		end
		when 20006.chat."Eisgolems jagen erledigt." with pc.getf("kill","state") <= 40 begin
			say_title("Mirine:")
            say("")

			if pc.is_gm() then
				wait()
				say_title("Mirine:")
				say("Aufgabe überspringen?")
				local s = select("Ja", "Nein")
				if s == 1 then
					set_state(gototeacher2)
				end
			end
		end
		when 20006.chat."Rache für deinen Bruder." with pc.getf("gototeacher2","state") >= 40 begin
			say_title("Mirine:")
			say("Danke.")
			say("Ich hoffe nun kann ich wieder Schlafen.")
			say("Hier deine Belohnung:")
			set_state(gototeacher2)
		end
	end
	state gototeacher2 begin
		when letter begin
			local v=find_npc_by_vnum(20006)
			if 0==v then
			else
				target.vid("__TARGET__", v, "Gehe zu Mirine")
			end
		end
		when letter begin
			send_letter("Töte die Mutiger Schw. Orkriese")
		end
		when button or info begin
			say_title("Töte die Mutiger Schw. Orkriese")
			say("Mirine hat dich gebeten")
			say("20 Mutiger Schw. Orkriese")
			say("zu töten.")
		end
		when __TARGET__.target.click begin
			target.delete("__TARGET__")
			say("Mirine hat dich gebeten")
			say("20 Mutiger Schw. Orkriese")
			say("zu töten.")
            say_reward("Du erhältst 3.000.000 Erfahrungspunkte.")
			pc.give_exp2(3000000)
			pc.change_money(66000)
            say_reward("Du erhältst 66.000 Yang.")
			pc.give_item2(50037,1)
			say_reward("Du erhältst Sechseckige Schatztruhe.")
            set_quest_state("levelup","run")
			set_state(__COMPLETE__)
			
		end
	end
	state __COMPLETE__ begin
	end
end
Wo liegt mein Fehler?
11/07/2014 08:45 -Zhui-#2
Kommt eig. hier rein: [Only registered and activated users can see links. Click Here To Register...]