[SERVICE] Die Questkontrolle

05/06/2011 22:15 .Delta#2251
wieso machst du das so kompliziert?
nimm doch einfach die Quest von Night, der hat sowas in der Art pub gemacht
05/06/2011 22:32 xTheSoulutionxx3#2252
will aber das der alle ostereier annimmt
05/06/2011 22:35 .Delta#2253
hm ich verstehe deine "Quest" nicht.
Du hast da vllt was durcheinander gescriptet :D

was willst du haben: dass ALLE Eier aus dem Inventar entfernt werden?
also alle verschiedenen sorten auf einmal?
oder was genau?
05/06/2011 22:36 xTheSoulutionxx3#2254
ja alles eier also nicht nur 50168 sondern die andern auch
05/06/2011 22:40 xTheSoulutionxx3#2255
also das der wie bei metin2 de alle sorten annimmt also nicht nur die eine sondern auch die andern immer 5 von jeder sorte
05/06/2011 22:57 amnesi#2256
@ .Delta

Mein Problem is i. wie noch immer nich gelöst selbst mit deiner Quest nich :(
wenn ich das Item das 1. mal anklicke sitze ich auf dem Keiler und habe 50 deff mehr
z.b. 150 aber wenn ich dann das 2. mal auf das Siegel klicke steht zwar im chat
das die deff wieder zurückgesetzt wurde aber es passiert nix..
Wenn ich dann das nächste item einsetze habe ich wieder 50 deff mehr also 200 usw usw... hoffe ihr/du kannst mir helfen :)
05/07/2011 00:38 lfcmaus#2257
pc in mallaoc ()
ist der fehler und das die quest

PHP Code:
quest easter begin
    state start begin
        when 40007.chat
"Hallo Hâsel" begin
        
            
if game.get_event_flag("rabbit") <1 then
                say_title
(""..mob_name(40007)..".:")
                
say("Die Zeit wird bald kommen in der")
                
say("Ich deine Hilfe benötige.")
                
say("")
                
say("Meine kleinen helfer sind schon")
                
say("fleißig am trainieren.")
                
say("")
                
say("Wie weit wohl die Bäuerin ist!?")
                
say("")
            else
                
say_title(""..mob_name(40007)..".:")
                
say("Sei gegrüßt!")
                
say("Ist es nicht wunderbar wie bunt")
                
say("die Welt im Frühling ist?")
                
say("Die Blumen blühen die Bäume sprießen,")
                
say("die Vögel singen und Ich muss mich um")
                
say("das Osterfest kümmern!")
                
say("")
                
say_gold(""..pc.get_name()..".:")
                
say_white("Ostern!?")
                
say_white("Was passiert da?")
                
say("")
                
wait()
                
say_title(""..mob_name(40007)..".:")
                
say("Zu Ostern bekomm ich vom Drachengott")
                
say("ein paar magische Kräfte,mit denen ich")
                
say("den Menschen ein wenig Glück in die Herzen")
                
say("zaubere.Ich lasse große Bunte Eier in")
                
say("der Stadt der Hasen verstecken,Wer sie zerhaut")
                
say("findet in Ihnen kleine bemahlte Eier.")
                
say("Leider fehlen mir dieses Jahr viele Eier")
                
say("zum bemahlen,aber Ich kann hier einfach nicht")
                
say("weg.Aber du könntest mir welche bei der")
                
say("Bauerin von der Messe holen!")
                
say("")
                
say_reward("Möchtest du mir helfen Eier zu besorgen?")
                
                
local auswahl select ("Ja klaro""Ich mag Ostern nicht")
                
                if 
auswahl == 1 then
                    say_title
(""..mob_name(40007)..".:")
                    
say("Danke,Ich vertraue dir hiermit einen")
                    
say("meiner Körbe an bitte verliere Ihn nicht!")
                    
say("Sag der Bäuerin einfach Hâsel schickt dich")
                    
say("und bring soviele Eier mit wie möglich!")
                    
set_state(information)
                    
pc.give_item2(50180)
                if 
auswahl == 2 then
                    say_title
(""..mob_name(40007)..".:")
                    
say("Hm, okay dann wird Ostern dieses Jahr")    
                    
say("wohl ausfallen.Schade...")
                
end
            end
        end
    state information begin
        when letter begin
            local v 
find_npc_by_vnum(9010)
            if 
!= 0 then
                target
.vid("__TARGET__"v"Quest")
            
end
            send_letter
("Die bitte von Hâsel")
        
end
        
        when button 
or info begin
            say_title
("Schriftrolleninhalt:")
            
say("")
            
say("Lord Hâsel möchte das du dich")
            
say("auf die Handelsmesse begibst")
            
say("und nach der Bäuerin suchst!")
            
say("Sie züchtet Hühner und wird dir")
            
say("ein paar Eier für das Osterfest")
            
say("mit geben.")
        
end    
        when __TARGET__
.target.click or
            
9010.chat."Hâsel schickt mich" begin
            target
.delete("__TARGET__")
            
say_title(""..mob_name(9010)..".:")
            
say("Ah mein alter Freund Hâsel schickt")
            
say("dich also!?")
            
say("")
            
say_gold(""..pc.get_name()..".:")
            
say_white("Ja,Er bereitet so ein Osterfest vor.")
            
say_title(""..mob_name(9010)..".:")
            
say("Ach Hâsel, auf Ihn ist wirklich verlass.")
            
say("Wie jedes Jahr kommt er um diese Zeit und")
            
say("fragt mich nach Eiern,wenn Er es dieses Jahr")
            
say("nicht einmal schafft alleine vorbei zukommen,")
            
say("scheind er ja was großes vor zuhaben.")
            
say("")
            
wait()
            
say_title(""..mob_name(9010)..".:")
            
say("Ok dann gib mir mal das Körbchen da.")
            
say("Hat er etwas gesagt wie viele er brauch?")
            
            
local menge select ("Ja,soviele wie möglich""Nicht wirklich,nur ein Paar halt")
            
            if 
menge == 1 then
                say_title
(""..mob_name(9010)..".:")
                
say("Stimmt er brauch ja immer sehr viele,")
                
say("dumme Frage von mir,entschuldige,werd halt Alt.")
                
say("")
                
say("So hier haste welche mehr passen nicht rein.")
                
pc.remove_item(50180)
                
pc.give_item2(50181)
                
chat("Du erhälst: Einen vollen Korb mit Eiern von der Bäuerin")
                
set_state(go_to_rabbit)
            if 
menge == 2 then
                say_title
(""..mob_name(9010)..".:")
                
say("Ach nun lüg mich nicht an ich kenne")
                
say("Hâsel viele Jahre er brauch immer unmengen an")
                
say("Eiern,ich pack dir den Korb einfahc voll.")
                
say("")
                
pc.remove_item(50180)
                
pc.give_item2(50181)
                
chat("Du erhälst: Einen vollen Korb mit Eiern von der Bäuerin")
                
set_state(go_to_rabbit)
            
end
        end
    state go_to_rabbit begin
        when letter begin
            local v 
find_npc_by_vnum(40007)
            if 
!= 0 then
                target
.vid("__TARGET__"v"Quest")
            
end
            send_letter
("Begib dich nun zu Hâsel")
        
end    
        when button 
or info begin
            say_title
("Schriftrolleninhalt:")
            
say("")
            
say("Der Korb ist reichlich gefühlt,dass wird")
            
say("Lord Hâsel aber gefallen,da hat er ja eine Menge")
            
say("zum bemahlen.Na dan auf den Weg,aber lass")
            
say("lieber kein Ei zu bruch gehen.")
        
end
        when __TARGET__
.target.click or
            
40007.chat."Da bin ich wieder" begin
            target
.delete("__TARGET__")
            if 
pc.count_item(50181) <0 then
                say_title
(""..mob_name(40007)..".:")
                
say("Oh das freut mich aber,ging ja recht flott.")
                
say("Beschädigt ist auch keins,danke Dir!")
                
say("")
                
say("Ostern kann nun kommen,werd mcih gleich an")
                
say("das bemahlen machen.")
                
pc.remove_item(50181)
                
pc.get_item2(90015,1)
                
chat("Lord Hâsel drückt dir ein paar Münzen in die Hand")
                
clear_letter()
                
set_state(__complete)
            else
                
say_title(""..mob_name(40007)..".:")
                
say("Tolle Karotte...")
                
say("Hast dne Korb also verloren!?")
                
say("Ach man sone Hasenschnauze bist Du!Echt.")
                
say("Da möchte man einmal mit Profis arbeiten >.<")
                
say("Den Korb musst du mir bezahlen!")
                
say("")
                
chat("Lord Hâsel ist sauer und Du bezahlst den Korb -100 Yang")
                
pc.cange_money(-100)
                
clear_letter()
                
set_state(__complete)                
            
end
        end
    state __complete begin
    end
end 
wo liegt der fehler?
05/07/2011 09:16 .SpecialZ##2258
Vorweg:

Ist nicht meine Quest - Und ich finde keine Tutorials dazu.

Ist dieses Ding funktionstüchtig, und vor allem, wie kann ich die Droprate anpassen ?

Grüße !

PHP Code:
quest alternativ begin
    state start begin
        when kill with not npc
.is_pc() begin
            local s
=number(1,1000)
            if 
s<=2 then
                game
.drop_item("27987"1)
            
end
            
if s>=and s<=4 then
                game
.drop_item("71094"1)
            
end
            
if s>=and s<=6 then
                game
.drop_item("71001"1)
            
end
            
if s>=and s<=8 then
                game
.drop_item("50513"1)
            
end
        end
    end
end 
05/07/2011 09:27 √π.#2259
Letzter Absatz:

Quote:
Originally Posted by lfcmaus View Post
PHP Code:
        when __TARGET__.target.click or
            
40007.chat."Da bin ich wieder" begin
            target
.delete("__TARGET__")
            if 
pc.count_item(50181) <0 then
                say_title
(""..mob_name(40007)..".:")
                
say("Oh das freut mich aber,ging ja recht flott.")
                
say("Beschädigt ist auch keins,danke Dir!")
                
say("")
                
say("Ostern kann nun kommen,werd mcih gleich an")
                
say("das bemahlen machen.")
                
pc.remove_item(50181)
                
pc.give_item2(90015,1)
                
chat("Lord Hâsel drückt dir ein paar Münzen in die Hand")
                
clear_letter()
                
set_state(__complete)
            else
                
say_title(""..mob_name(40007)..".:")
                
say("Tolle Karotte...")
                
say("Hast dne Korb also verloren!?")
                
say("Ach man sone Hasenschnauze bist Du!Echt.")
                
say("Da möchte man einmal mit Profis arbeiten >.<")
                
say("Den Korb musst du mir bezahlen!")
                
say("")
                
chat("Lord Hâsel ist sauer und Du bezahlst den Korb -100 Yang")
                
pc.change_gold(-100)
                
clear_letter()
                
set_state(__complete)                
            
end
        end 
Sonst schauts ordentlich aus
05/07/2011 13:03 Avulsed#2260
Quote:
Originally Posted by .SpecialZ# View Post
Vorweg:

Ist nicht meine Quest - Und ich finde keine Tutorials dazu.

Ist dieses Ding funktionstüchtig, und vor allem, wie kann ich die Droprate anpassen ?

Grüße !

PHP Code:
quest alternativ begin
    state start begin
        when kill with not npc
.is_pc() begin
            local s
=number(1,1000) <- Die 2. Zahl (1000bestimmt die Droprateumso höher der Wert desto niedriger der Drop.
            if 
s<=2 then
                game
.drop_item("27987"1)
            
end
            
if s>=and s<=4 then
                game
.drop_item("71094"1)
            
end
            
if s>=and s<=6 then
                game
.drop_item("71001"1)
            
end
            
if s>=and s<=8 then
                game
.drop_item("50513"1)
            
end
        end
    end
end 
Joa, sollte funktionieren. Wie du die Droprate änderst hab ich in das Script geschrieben.
05/07/2011 23:13 SelGomez™#2261
PHP Code:
quest lagerlager begin
state start begin
when 70010.
use
say("Wenn du das Lager offnen willst")
say("brauchst du ein Lagerschein")
say("Hast du ein Lagerschein?")
local b=select ("Ja""Nein")
if 
1==b then
game
.open_safebox()
else
say("Du hast kein Lagerscheind, sorry!")
return
if  
2==b then
if pc.give_item("70010")
say("Du hast nun ein Lagerschein")
return
end
end
end
end 
Mein fehler:

Quest zeigt es mir an, mit diesem fehler:
lagerlager.quest:4:Abort trap (core dumped)
05/07/2011 23:22 √π.#2262
3. Zeile, when 70010.use begin
05/07/2011 23:34 SelGomez™#2263
PHP Code:
quest bosstester begin
    state start begin
        when 70007.
use begin
            say
("Welcher Boss willst du Spawnen?")
            
local blub select("Oberork""Neunschwanz""Sensi""Blauertod""Flammenkönig")
            
local x pc.get_local_x()
            
local y pc.get_local_y()
            if 
blub == 1 then
                say
("Das Kostet dich 20Mio")
                
say("Willst du immer noch?")
                
local a select ("Ja""Nein")
                if 
== 1 then
                    pc
.changegold(-20000000)
                    
mob.spawn(691xy1)
                else
                    return
                
end
            
elseif blub == 2 then
                say
("Das Kostet dich 20Mio")
                
say("Willst du immer noch?")
                
local b select ("Ja""Nein")
                if 
== 1 then
                    pc
.changegold(-20000000)
                    
mob.spawn(1901xy1)
                else
                    return
                
end
            
elseif blub == 3 then
                say
("Das Kostet dich 20Mio")
                
say("Willst du immer noch?")
                
local c select ("Ja""Nein")
                if 
== 1 then
                    pc
.changegold(-20000000)
                    
mob.spawn(1093xy1)
                else
                    return
                
end
            
elseif blub == 4 then
                say
("Das Kostet dich 20Mio")
                
say("Willst du immer noch?")
                
local d select ("Ja""Nein")
                if 
== 1 then
                    pc
.changegold(-20000000)
                    
mob.spawn(1095xy1)
                else
                    return
                
end
            
elseif blub == 5 then
                say
("Das Kostet dich 20Mio")
                
say("Willst du immer noch?")
                
local e select ("Ja""Nein")
                if 
== 1 then
                    pc
.changegold(-20000000)
                    
mob.spawn(2206xy1)
                else
                    return
                
end
            end
        end
    end
end 
Ich möchte hier eintragen das Jeder Boss ein bestimmtes lvl braucht um ihn Zu Spawnen.
Ich weis leider nicht wo und welcher befehl
05/07/2011 23:39 amnesi#2264
PHP Code:
quest bosstester begin
    state start begin
        when 70007.
use begin
            say
("Welcher Boss willst du Spawnen?")
            
local blub select("Oberork""Neunschwanz""Sensi""Blauertod""Flammenkönig")
            
local x pc.get_local_x()
            
local y pc.get_local_y()
            if 
blub == 1 then
                say
("Das Kostet dich 20Mio")
                
say("Willst du immer noch?")
                
local a select ("Ja""Nein")
                if 
== 1 then
                    
if pc.get_level() == 50 then
                    pc
.changegold(-20000000)
                    
mob.spawn(691xy1)
                    
end
                
else
                    return
                
end
            
elseif blub == 2 then
                say
("Das Kostet dich 20Mio")
                
say("Willst du immer noch?")
                
local b select ("Ja""Nein")
                if 
== 1 then
                    
if pc.get_level() == 50 then
                    pc
.changegold(-20000000)
                    
mob.spawn(1901xy1)
                    
end
                
else
                    return
                
end
            
elseif blub == 3 then
                say
("Das Kostet dich 20Mio")
                
say("Willst du immer noch?")
                
local c select ("Ja""Nein")
                if 
== 1 then
                    
if pc.get_level() == 50 then
                    pc
.changegold(-20000000)
                    
mob.spawn(1093xy1)
                    
end
                
else
                    return
                
end
            
elseif blub == 4 then
                say
("Das Kostet dich 20Mio")
                
say("Willst du immer noch?")
                
local d select ("Ja""Nein")
                if 
== 1 then
                    
if pc.get_level() == 50 then
                    pc
.changegold(-20000000)
                    
mob.spawn(1095xy1)
                    
end
                
else
                    return
                
end
            
elseif blub == 5 then
                say
("Das Kostet dich 20Mio")
                
say("Willst du immer noch?")
                
local e select ("Ja""Nein")
                if 
== 1 then
                    
if pc.get_level() == 50 then
                    pc
.changegold(-20000000)
                    
mob.spawn(2206xy1)
                    
end
                
else
                    return
                
end
            end
        end
    end
end 
So müsste es gehen :)
habs aber nicht getestet^^
05/07/2011 23:47 SelGomez™#2265
Quote:
Originally Posted by MasterBozZ View Post
PHP Code:
quest lagerlager begin
state start begin
when 70010.
use
say("Wenn du das Lager offnen willst")
say("brauchst du ein Lagerschein")
say("Hast du ein Lagerschein?")
local b=select ("Ja""Nein")
if 
1==b then
game
.open_safebox()
else
say("Du hast kein Lagerscheind, sorry!")
return
if  
2==b then
if pc.give_item("70010")
say("Du hast nun ein Lagerschein")
return
end
end
end
end 
Mein fehler:

Quest zeigt es mir an, mit diesem fehler:
lagerlager.quest:4:Abort trap (core dumped)
Hat nicht funktioniert.
Das Item Ingame zeigt keine reaktion , auch wenn keine fehlermeldung angezeigt wirt.