[SERVICE] Die Questkontrolle

07/08/2013 11:14 .Meayro*#8491
Jetzt kommt zwar keine Fehlermeldung,aber bei Uriel steht nicht "Ich Will den Drachen töten"

Also kann ich die Quest i.wie nicht starten. Weiß jmd das Problem ?
07/08/2013 12:03 G.I Duke#8492
Kann mir einer sagen warum der Counter nicht zählt?


danke im voraus.
07/08/2013 12:36 TheMad#8493
Quote:
Originally Posted by ΞΠ∪Μ View Post
versuch's mal so
PHP Code:
local beruf mysql_query("SELECT beruf from player.player WHERE name = '"..pc.get_name().."'")
local beruftonumber(beruf[1][1]) 
select gibt immer den typ string zurück und für gewöhnlich kann man kein string mit einer zahl vergleichen

toll, es klappt^^ vielen dank
07/08/2013 13:10 OldTime2#8494
Quote:
Originally Posted by .мαяfυ™ View Post
Kann mir einer sagen warum der Counter nicht zählt?


danke im voraus.


probier es mal so :D


07/08/2013 14:03 G.I Duke#8495
Quote:
Originally Posted by OldTime2 View Post
probier es mal so :D


Ne funktioniert leider auch nicht.. danke trz. benötige ich weiterhin Hilfe.

MfG
07/08/2013 15:01 OldTime2#8496
Quote:
Originally Posted by .мαяfυ™ View Post
Ne funktioniert leider auch nicht.. danke trz. benötige ich weiterhin Hilfe.

MfG
probier es mal nomma :D

07/08/2013 17:26 SATunE#8497
Die level_erreicht.quest funktioniert irgentwie nicht...

PHP Code:
quest levelup begin
    state start begin
        when login 
or levelup begin
            
if pc.get_level()==50 or if pc.get_level()==65 or if pc.get_level()==75 or if pc.get_level()==80 or if pc.get_level()==85 or if pc.get_level()==90 or if pc.get_level()==95 or if pc.get_level()==100 or if pc.get_level()==105 then
            notice_all
(""..pc.get_name ().." hat soeben Level "..pc.get_level().." erreicht!")
            
notice_all("Glückwunsch!")
            
end
        end
    end
end 
07/08/2013 17:43 G.I Duke#8498
Quote:
Originally Posted by SATunE View Post
Die level_erreicht.quest funktioniert irgentwie nicht...

PHP Code:
quest levelup begin
    state start begin
        when login 
or levelup begin
            
if pc.get_level()==50 or if pc.get_level()==65 or if pc.get_level()==75 or if pc.get_level()==80 or if pc.get_level()==85 or if pc.get_level()==90 or if pc.get_level()==95 or if pc.get_level()==100 or if pc.get_level()==105 then
            notice_all
(""..pc.get_name ().." hat soeben Level "..pc.get_level().." erreicht!")
            
notice_all("Glückwunsch!")
            
end
        end
    end
end 
PHP Code:
quest levelup begin 
    state start begin 
        when levelup with pc
.get_level() == 50 or pc.get_level() == 65 or pc.get_level() == 75 or pc.get_level() == 80 or pc.get_level() == 85 or pc.get_level() == 90 or pc.get_level() == 95 or pc.get_level() == 100 or pc.get_level() == 105 begin
            notice_all
(""..pc.get_name ().." hat soeben Level "..pc.get_level().." erreicht!"
            
notice_all("Glückwunsch!"
            
end 
        end 
    end 
end 
MfG
07/08/2013 17:43 ProfessorEnte#8499
Quote:
Originally Posted by SATunE View Post
Die level_erreicht.quest funktioniert irgentwie nicht...

PHP Code:
quest levelup begin
    state start begin
        when login 
or levelup begin
            
if pc.get_level()==50 or if pc.get_level()==65 or if pc.get_level()==75 or if pc.get_level()==80 or if pc.get_level()==85 or if pc.get_level()==90 or if pc.get_level()==95 or if pc.get_level()==100 or if pc.get_level()==105 then
            notice_all
(""..pc.get_name ().." hat soeben Level "..pc.get_level().." erreicht!")
            
notice_all("Glückwunsch!")
            
end
        end
    end
end 
PHP Code:
quest levelup begin
    state start begin
        when login 
or levelup begin
            
if pc.get_level()==50 or pc.get_level()==65 or pc.get_level()==75 or pc.get_level()==80 or pc.get_level()==85 or pc.get_level()==90 or pc.get_level()==95 or pc.get_level()==100 or pc.get_level()==105 then
                notice_all
(""..pc.get_name ().." hat soeben Level "..pc.get_level().." erreicht!")
                
notice_all("Glückwunsch!")
            
end
        end
    end
end 
ohne die ganzen if's nach or

Edit: tja zu langsam :(
07/08/2013 17:45 |★|554#8500
Quote:
Originally Posted by ProfessorEnte View Post
PHP Code:
quest levelup begin
    state start begin
        when login 
or levelup begin
            
if pc.get_level()==50 or pc.get_level()==65 or pc.get_level()==75 or pc.get_level()==80 or pc.get_level()==85 or pc.get_level()==90 or pc.get_level()==95 or pc.get_level()==100 or pc.get_level()==105 then
                notice_all
(""..pc.get_name ().." hat soeben Level "..pc.get_level().." erreicht!")
                
notice_all("Glückwunsch!")
            
end
        end
    end
end 
ohne die ganzen if's nach or

Edit: tja zu langsam :(
PHP Code:
        when login or levelup begin 
Loggste dich mit Level 50 aus und wieder ein (Mapwechsel reicht auch schon) und jedes mal kommt erneut die Message.
Nur
PHP Code:
when levelup begin 
07/08/2013 18:39 SATunE#8501
noch jemand was zu verbessern oder seid ihr jetzt fertig? :D
Danke, sie funktioniert jetzt! *-*
07/08/2013 19:29 thomaswebdesigner#8502
Hello, I'm trying to create a quest for level1. When I kill the mob, the counter doesn't work! It stays always in the number 5(the number you''re supose to kill)

Quote:
----------------------------------------------
-- Missao Newby --
-- Quest by RulleZ --
-- Copyright LegendsOfMetin2 --
----------------------------------------------
quest newbie begin
state start begin
when login with pc.level >= 1 and pc.level <= 1 begin
set_state(information)
end
end

state information begin
when letter begin
send_letter("Missão do Novato")
end

when info or button begin
say_size(450,400) -- Window size
setbgimage("quest_bg.tga") -- Sets background image from path: d:/ymir work/ui/game/questboard/
say("")
say("")
say("")
say("")
say("")
say("")
say("")
say_color("turquoise", " Missão do Novato")
set_text_color("green")
say(" Completa esta missão e serás recompensado!")
say(" A tua tarefa é matar um inimigo perigoso.")
say(" Ele tem o nome de Gnoll Magician.")
say(" Tens de matar:")
say(" 5 Gnoll Magicians!")
say("")
say_color("turquoise", " Recompensas:")
say_color("turquoise", " Um nivel.")
say_color("turquoise", " Montada de Leão.")
say_color("turquoise", " 1.000.000 Yangs.")
pc.setqf("state", 5)
q.set_counter("Gnoll Magician", 5)
end

when 3004.kill begin
local count = pc.getqf("state") - 1
if count <= 5 then
pc.setqf("state", count)
q.set_counter("Gnoll Magician", count)
end
if count == 0 then
say_title(" Missão do Novato")
say_color("green", " Concluiste a missão com sucesso!")
say_color("green", " Recompensa:")
say_reward(" 1.000.000 Yang")
say_reward(" Um nivel!")
say_reward(" Montada de Leão!")
pc.change_money(1000000)
pc.give_exp2(100)
pc.give_item2(71120, 1)
if pc.job == 0 then
clear_letter()
set_state(__COMPLETE__)

end
end
end
end

state __COMPLETE__ begin
end
end
07/08/2013 23:15 Noa_#8503
Kann mir einer helfen?
wenn ich die id 101 kille wird game.set_event_flag("hrk",game.get_event_flag("hrk ")+1) nicht ausgefürt, wenn ich jedoch eine neuen hole und den kille, wird es um 1 erhöht,
es soll so ablaufen das wenn ich diesen wildhund kille, dann 10 monster gerufen werden, wenn die tot sind geht es in die nächste stufe und andere monster kommen.
PHP Code:
        when kill with not npc.is_pc() and pc.get_map_index()==112 begin
            
if npc.get_race()==101 and game.get_event_flag("hrk")==0 then
                notice_all
(pc.get_name().. " hat den Dungeon gestartet")
                
game.set_event_flag("hrk",game.get_event_flag("hrk")+1)
                --
server_timer("hell_check",3,get_server_timer_arg())
                
chat(game.get_event_flag("hrk"))
                for 
i=1,table.getn(tabelle_mobs[game.get_event_flag("hrk")]) do
                    
mob.spawn(tabelle_mobs[game.get_event_flag("hrk")][i], pc.get_local_x() , pc.get_local_y(), 111)
                
end
            end
            chat
(""..game.get_event_flag("hrk").."")
            
game.set_event_flag("hell_m_count",game.get_event_flag("hell_m_count")+1)
            if 
game.get_event_flag("hell_m_count")>=10 then
                game
.set_event_flag("hell_m_count",0)
                
game.set_event_flag("hrk",game.get_event_flag("hrk")+1)
                --
server_timer("hell_check",3,get_server_timer_arg())
                if 
game.get_event_flag("hrk")==6 then
                    
--falls runde 6 erreicht wurderunden reset auf 0
                    game
.set_event_flag("hrk",0)
                    
notice_all("Geschafft")
                
end
            end
        end 
07/08/2013 23:23 Noisy-Boy#8504
PHP Code:
----------------------------------------------
-- 
Jagdquest 1
-- Made with 1337_Noize's Jagdquestmaker
----------------------------------------------
quest jagen begin
    state start begin
        when levelup or login with pc.level >= 2 begin
            set_state(information)
        end
    end

    state information begin
        when letter begin
            send_letter("Jagdquest ab Level 2")
        end

        when info or button begin
            say("Jagdquest 1")
            say("Stelle deine Jagdkuenste")
            say("unter Beweiß und erhalte")
            say("eine Belohnung,")
            say_reward("Erlege 10 Wildhunde")
            say_reward("Belohnung: Ruestung deiner Klasse +6")
            say("")
            pc.setqf("state", 10)
            q.set_counter("Wildhund", 10)
        end

        when 101.kill begin
            local count = pc.getqf("state") - 1
            if count <= 10 then
                pc.setqf("state", count)
                q.set_counter("Wildhund", count)
            end
            if count == 0 then
                say_title("Jagdquest ab Level 2")
                say("Du hast die Quest erfolgreich abgeschlossen!")
                if pc . job == 0 then 
                    pc.give_item2(11206, 1)    
                    say("Du erhälst:")
                    say_reward("Moenchsplattenpanzer+6")
                elseif pc . job == 1 then  
                    pc.give_item2(11406, 1)    
                    say("Du erhälst:")
                    say_reward("Azuranzug+6")
                elseif pc . job == 2 then  
                    pc.give_item2(11606, 1)    
                    say("Du erhälst:")
                    say_reward("Requiem-Plattenpanzer+6") 
                elseif pc . job == 3 then  
                    pc.give_item2(11806, 1)    
                    say("Du erhälst:")
                    say_reward("Azurkleidung+6")    
                end    
                clear_letter()
                set_state(ausgeführt1)
            end
        end
    end

    state ausgeführt1 begin
        when levelup or login with pc.level >= 3 begin
            set_state(info1)
        end    
    end
    
    state info1 begin
        when letter begin
            send_letter(Jagdquest ab Level 3)
        end    
        
        when info or button begin
            say("Jagdquest ab Level 3")
            say("Stelle deine Jagdkuenste")
            say("unter Beweiß und erhalte")
            say("eine Belohnung,")
            say_reward("Erlege 10 Hungrige Woelfe")
            say_reward("Belohnung: Helm deiner Klasse +6")
            say("")
            pc.setqf("state", 10)
            q.set_counter(Hungriger Wolf", 10)
        end
        when 172.kill begin
            local count = pc.getqf("state") - 1
            if count <= 10 then
                pc.setqf("state", count)
                q.set_counter("Hungriger Wolf", count)
            end
            if count == 0 then
                say_title("Jagdquest ab Level 3")
                say("Du hast die Quest erfolgreich abgeschlossen!")
                if pc . job == 0 then 
                    pc.give_item2(12206, 1)    
                    say("Du erhälst:")
                    say_reward("Traditioneller Helm+6")
                elseif pc . job == 1 then  
                    pc.give_item2(12346, 1)    
                    say("Du erhälst:")
                    say_reward("Lederkapuze+6")
                elseif pc . job == 2 then  
                    pc.give_item2(12486, 1)    
                    say("Du erhälst:")
                    say_reward("Blutiger Helm+6") 
                elseif pc . job == 3 then  
                    pc.give_item2(12626, 1)    
                    say("Du erhälst:")
                    say_reward("Mönchshut+6")    
                end    
                clear_letter()
                set_state(__COMPLETE__)
            end
        end
    end
    
    state __COMPLETE__ begin
    end
end 
Was ist daran falsch ;D Ich will mir Jagdquest für die LvL 2-10 erstellen, aber als ich für lvl 3 eingefügt habe ist wohl etwas kaputt gegangen :D
07/08/2013 23:27 ProfessorEnte#8505
Quote:
Originally Posted by ΞΠ∪Μ View Post
Kann mir einer helfen?
wenn ich die id 101 kille wird game.set_event_flag("hrk",game.get_event_flag("hrk ")+1) nicht ausgefürt, wenn ich jedoch eine neuen hole und den kille, wird es um 1 erhöht,
es soll so ablaufen das wenn ich diesen wildhund kille, dann 10 monster gerufen werden, wenn die tot sind geht es in die nächste stufe und andere monster kommen.
PHP Code:
        when kill with not npc.is_pc() and pc.get_map_index()==112 begin
            
if npc.get_race()==101 and game.get_event_flag("hrk")==0 then
                notice_all
(pc.get_name().. " hat den Dungeon gestartet")
                
game.set_event_flag("hrk",game.get_event_flag("hrk")+1)
                --
server_timer("hell_check",3,get_server_timer_arg())
                
chat(game.get_event_flag("hrk"))
                for 
i=1,table.getn(tabelle_mobs[game.get_event_flag("hrk")]) do
                    
mob.spawn(tabelle_mobs[game.get_event_flag("hrk")][i], pc.get_local_x() , pc.get_local_y(), 111)
                
end
            end
            chat
(""..game.get_event_flag("hrk").."")
            
game.set_event_flag("hell_m_count",game.get_event_flag("hell_m_count")+1)
            if 
game.get_event_flag("hell_m_count")>=10 then
                game
.set_event_flag("hell_m_count",0)
                
game.set_event_flag("hrk",game.get_event_flag("hrk")+1)
                --
server_timer("hell_check",3,get_server_timer_arg())
                if 
game.get_event_flag("hrk")==6 then
                    
--falls runde 6 erreicht wurderunden reset auf 0
                    game
.set_event_flag("hrk",0)
                    
notice_all("Geschafft")
                
end
            end
        end 
Hey,
hatte damit auch des oefteren Probleme.
Bei mir hats geholfen wenn ich das alles erst in einer variable speicher.
Sprich:

PHP Code:
 local hrk_ game.get_event_flag("hrk")+1
 game
.set_event_flag("hrk",hrk_
Sag bescheid obs geht, ansonsten ueberleg ich nochmal laenger.

Mfg,
ProfessorEnte