[SERVICE] Die Questkontrolle

03/12/2016 21:20 Ðαrkbøζζ#12211
Brauche dringend Hilfe, wie schaffe ich es das diese Quest erst aufgerufen wird wenn die Jagdquest1 erledigt wurde ? Danke im Voraus!!!

PHP Code:
quest jagd2 begin
    state start begin
        when login 
or levelup with pc.get_level() >= 3 begin
            set_state
(info1)
        
end
    end
    state info1 begin
        when letter begin
            send_letter
("Jagd Teil 2")
        
end
        when button 
or info begin
            say
("Hallo "..pc.get_name().." hier kannst")
            
say("du auswaehlen ob du lieber 20 Hungrige")
            
say("Wildhunde oder 10 Hungrige Woelfe toeten")
            
say("moechtest")
            
say("")
            
say("Waehle klug")
            
local a select("20 Hungrige Wildhunde""10 Hungrige Woelfe")
                if 
== 1 then
                    say
("Du willst also lieber 20 Hungrige Wildhunde")
                    
say("toeten als 10 Hungrige Woelfe und auch diese Belohnung")
                    
say("erhalten")
                    
say_reward("Toete 20 Hungrige Wildhunde")
                    
say("")
                    
pc.setqf("state1"0)
                    
q.set_counter("count1"20)
                    
set_state(Wildhund)
                else
                    
say("Du willst also lieber 10 Hungrige Woelfe")
                    
say("toeten als 20 Hungrige Wildhunde und auch")
                    
say("diese Belohnung erhalten")
                    
say_reward("Toete 10 Hungrige Woelfe")
                    
say("")
                    
pc.setqf("state1"0)
                    
q.set_counter("count2"10)
                    
set_state(Wolf)
                
end
        end
    end
    state Wildhund begin
        when letter begin
            send_letter
("Jagd Teil 2")
        
end
    
        when info 
or button begin
            say_title
("Wie viele noch?")
            
say("Hier erfaehrst du wie viele Monster du noch toeten musst")
            
say("")
            
say_reward("Du hast schon "..pc.getqf("state1").." von 20 Hungrige Wildhunden getoetet!")
        
end
        when 171.kill begin
            local count1 
pc.getqf("state1") + 1
            
if count1 <= 20 then
                pc
.setqf("state1"count1)
                
q.set_counter("Hungriger Wildhund"count1)
            
end
            
if count1 == 20 then
                set_state
(fertig)
            
end
        end
    end
    state Wolf begin
        when letter begin
            send_letter
("Jagd Teil 2")
        
end
    
        when info 
or button begin
            say_title
("Wie viele noch?")
            
say("Hier erfaehrst du wie viele Monster du noch toeten musst")
            
say("")
            
say_reward("Du hast schon "..pc.getqf("count2").." von 10 Hungrigen Woelfen getoetet!")
        
end
        when 172.kill begin
            local count2 
pc.getqf("state2") + 1
            
if count2 <= 10 then
                pc
.setqf("state2"count2)
                
q.set_counter("Hungriger Woelfe"count2)
            
end
            
if count2 == 10 then
                set_state
(fertig)
            
end
        end
    end
    state fertig begin
        when letter begin
            send_letter
("Fertig!")
        
end
        when button 
or info begin
            say_title
("Glueckwunsch")
            
say("Du hast die Quest erfolgreich abgeschlossen!")
            
say("Du erhaelst:")
            
say_reward("80 Erfahrungspunkte")
            
say_reward("Ausserdem: Einen Schild+6")
            
pc.give_item2(130061)
            
pc.give_exp2(80)
            
set_state(__complete)
            
clear_letter()
        
end
    end
    state __complete begin
    end
end 
03/12/2016 22:17 .Delta#12212
ans ende der jg1, wenn jg1 abgeschlossen ist:
PHP Code:
set_quest_state("jagd2""run"
und jagd2 dann so starten:
PHP Code:
quest jagd2 begin
    state start begin
    end
    state run begin
        when login 
...
    
end
    
.
    .
    . 
03/12/2016 22:44 Ðαrkbøζζ#12213
Dank dir vielmals!
Wird direkt getestet!

#Edit:

Quote:
ans ende der jg1, wenn jg1 abgeschlossen ist:
PHP-Code:
set_quest_state("jagd2", "run")
und jagd2 dann so starten:
PHP-Code:
quest jagd2 begin
state start begin
end
state run begin
when login ...
end
.
.
.
Leider funktioniert es nicht so ganz, Quest 1 startet und wird abgeschlossen aber dann kommt Quest 2 nicht. Hab bestimmt irgendwie falsch eingefügt das ganze, wärst du so gut nochmal zu schauen? Danke!


Jagd1.quest

Jagd2.quest
03/12/2016 23:24 .Delta#12214
Du musst den exakten questnamen hinschreiben, also jagd2 bitte klein schreiben ;)

Nach einem Relog nach Ende der Quest ist Jagd2 dann da.

Wenn du das sofort haben willst, musste halt ne bedingung einbauen
PHP Code:
if pc.get_level() >= 3 then
    set_quest_state
("jagd2""info1")
else
    
set_quest_state("jagd2""run")
end 
03/13/2016 12:40 OoKaMi_#12215
Hey com,
ich brauche Hilfe bei meiner quest.
Und zwar möchte ich das per item ein npc als Zufall gespownt wird. Also es sollen 3 verschiedene geben aber so das halt nur einer als Zufall gespawnt wird. Hier meine quest.

Quest test begin
state start begin
when 70021.use begin
if pc.get_map_index () == 352 then
item.remove ()
mob.spawn(9001, 194, 116, 0, 0)
end
end
end

Estate soll noch npc vnum 9002 & 9003 hinzugefügt werden. Und das nach 5 min der npc wieder verschwindet.
Ich hoffe es kann mir jemand machen.

MFG
03/13/2016 12:54 gerald500#12216
Quote:
Originally Posted by OoKaMi_ View Post
Hey com,
ich brauche Hilfe bei meiner quest.
Und zwar möchte ich das per item ein npc als Zufall gespownt wird. Also es sollen 3 verschiedene geben aber so das halt nur einer als Zufall gespawnt wird. Hier meine quest.

Quest test begin
state start begin
when 70021.use begin
if pc.get_map_index () == 352 then
item.remove ()
mob.spawn(9001, 194, 116, 0, 0)
end
end
end

Estate soll noch npc vnum 9002 & 9003 hinzugefügt werden. Und das nach 5 min der npc wieder verschwindet.
Ich hoffe es kann mir jemand machen.

MFG
also ich würde das so machen:

Code:
Quest test begin
	state start begin
		when 70021.use with pc.get_map_index == 352 begin
			item.remove ()
			local mobs = {9001,9002,9003}
			local mob = mobs[math.random(1,table.getn(mobs))]
			mob.spawn(mob, 194, 116, 0, 0)
		end
	end
end
kannst die mob liste unendlich oft erweitern

mfg
03/13/2016 13:35 OoKaMi_#12217
Quote:
Originally Posted by gerald500 View Post
also ich würde das so machen:

Code:
Quest test begin
	state start begin
		when 70021.use with pc.get_map_index == 352 begin
			item.remove ()
			local mobs = {9001,9002,9003}
			local mob = mobs[math.random(1,table.getn(mobs))]
			mob.spawn(mob, 194, 116, 0, 0)
		end
	end
end
kannst die mob liste unendlich oft erweitern

mfg

Danke, und es wirt aber nur ein npc gespawnt ?
03/13/2016 14:11 gerald500#12218
Quote:
Originally Posted by OoKaMi_ View Post
Danke, und es wirt aber nur ein npc gespawnt ?
genau so ist es das erkennt man doch oder ?
03/13/2016 15:02 .ERDLING.#12219
Quote:
Originally Posted by gerald500 View Post
genau so ist es das erkennt man doch oder ?
Er möchte jedoch, dass er nach 5 Minuten wieder verschwindet^^
03/13/2016 15:04 gerald500#12220
Quote:
Originally Posted by .ERDLING. View Post
Er möchte jedoch, dass er nach 5 Minuten wieder verschwindet^^

ist aber unmöglich ohne source code außer man klickt den npc an.
03/13/2016 15:26 OoKaMi_#12221
Wenn es per Source gemacht werden müsste, müsste mir jemand den Code dazu schreiben. Einfügen kann ich es dann, bloss nicht selbst schreiben.

Und leider geht die quest nicht...
03/13/2016 16:34 gerald500#12222
Quote:
Originally Posted by OoKaMi_ View Post
Wenn es per Source gemacht werden müsste, müsste mir jemand den Code dazu schreiben. Einfügen kann ich es dann, bloss nicht selbst schreiben.

Und leider geht die quest nicht...
Hab klammer auf und klammer zu bei pc.get_map_index vergessen sorry versuchs so :

Code:
Quest test begin
	state start begin
		when 70021.use with pc.get_map_index() == 352 begin
			item.remove ()
			local mobs = {9001,9002,9003}
			local mob = mobs[math.random(1,table.getn(mobs))]
			mob.spawn(mob, 194, 116, 0, 0)
		end
	end
end
03/13/2016 16:40 OoKaMi_#12223
Nee funktioniert trotzdem nicht. Es werden keine npcs gespawnt.
03/13/2016 16:42 xxApe#12224
:P
03/13/2016 16:48 gerald500#12225
Quote:
Originally Posted by OoKaMi_ View Post
Nee funktioniert trotzdem nicht. Es werden keine npcs gespawnt.
dann machst du was falsch habs getestet bei mir funktioniert das adde mich mal einfach in skype:gerald5867 ich machs dir kurz