[SERVICE] Die Questkontrolle

08/10/2011 12:44 Muco53#3016
PHP Code:
quest senir begin
    state start begin
        when 20090.chat
."Kaybolmus Sehir" begin
        say_title
("Sehir:")
        
say("")
        
say("Şehir 100 level sonrası içindir,")
        
say("Burada 120 silahı için item düşürebilirsin.")
        
say("Girmek için ekstrem broşürü alman lazım.")
        
say("")
        
say_reward("Hala gitmek istiyor musun?")
        
say("")
        
local a select("Evet""Vazgec")
        if 
== 1 then
        
if pc.get_level() >= 100 and pc.get_level() <= 250 then
        
if pc.count_item(70031) == 1 then
        
if pc.remove_item(70031 1)
        
say_title("Sehir:")
        
say("")
        
say("Pekala, seni gönderiyorum.")
        
say("Bol sanslar...")
        
wait()
        
pc.warp(7777700,7777700)
        elseif 
== 2 then
        say_title
("Sehir:")
        
say("")
        
say("Demek gitmek istemiyorsun...")
        else
        
say_title("Sehir:")
        
say("")
        
say("Uzgunum, "..pc.get_name().." seviyen")
        
say("Şehre girmek seviyen yeterli değil.")
        
end
        
elseif == 1 then
        say
("Uzgunum, "..pc.get_name().."")
        
say("Item eksik.")
        
end
        end 
Quote:
qc in malloc(): error: allocation failed
Abort (core dumped)
08/10/2011 13:58 Sp0ngeb0b ist cool#3017
PHP Code:
quest senir begin
    state start begin
        when 20090.chat
."Kaybolmus Sehir" begin
            say_title
("Sehir:")
            
say("")
            
say("Sehir 100 level sonrasi içindir,")
            
say("Burada 120 silahi için item düsürebilirsin.")
            
say("Girmek için ekstrem brosürü alman lazim.")
            
say("")
            if 
pc.get_level() >= 100 and pc.get_level() <= 250 then
                say_reward
("Hala gitmek istiyor musun?")
                
say("")
                
local a select("Evet""Vazgec")
                if 
== 1 then
                    
if pc.count_item(70031) >= 1 then
                        say_title
("Sehir:")
                        
say("")
                        
say("Pekala, seni gönderiyorum.")
                        
say("Bol sanslar...")
                        
wait()
                        
pc.remove_item(70031 1)
                        
pc.warp(7777700,7777700)
                    else
                        
say("Uzgunum, "..pc.get_name().."")
                        
say("Item eksik.")
                        return
                    
end
                
                
elseif == 2 then
                    say_title
("Sehir:")
                    
say("")
                    
say("Demek gitmek istemiyorsun...")
                    return
                
end
            end
        end
    end
end 
so its work ;)
08/10/2011 14:03 msschurmann#3018
hey ist hier alle ok schaut mal nach ^^

PHP Code:
quest spenden_aktion begin 
    state start begin 
        when 9010.chat
."Spenden Aktion" with pc.level >= 50 begin 
            say_title
(mob_name(9010)) 
            
say("Hallo, ich bin die Obdachlosen Helferin."
            
say("Es gibt viele Halbmenschen die Obdachlos"
            
say("sind oder immer knapp bei Kasse sind."
            
say("Ich will ihnen helfen, doch dafür"
            
say("benötige ich entweder Yang oder Erfahrung."
            
say("Wenn man einen hilft, erhält man besondere"
            
say("Anerkennung und ein gutes Gewissen."
            
say(""
            
wait() 
            
say_title(mob_name(9010)) 
            
say("Jetzt darfst du mir verraten, was du"
            
say("gerne möchtest?"
            
local a select("Ich möchte spenden","Ich möchte eine spende erhalten","Abbrechen"
                if 
== 1 then 
                    say_title
(mob_name(9010)) 
                    
say("Was möchtest du spenden?"
                    
local b select("Yang","Erfahrung","Abbrechen"
                        if 
== 1 then 
                            say_title
(mob_name(9010)) 
                            
say("Wie viel Yang möchtest du spenden?"
                            
say_reward("min. 100000 Yang, max. 99999999 Yang"
                            
local yang input() 
                            
local geyang " ..name.. "geyang
                            local geyang = game.get_event_flag(geyang) 
                             
                            if yang >= "
100000" then 
                                if pc.money >= 100000 and pc.money <= 99999999 then 
                                    pc.change_money(-yang) 
                                    say_reward("
Du hast " ..yang.. " Yang gespendet.") 
                                    say("") 
                                    say_reward("
Bislang hast du insgesamt " ..geyang.." Yang gespendet!") 
                                    say("") 
                             
                                    wait() 
                             
                                    say_title(mob_name(9010)) 
                                    say("
Hoffentlich sehen wir uns bald wieder.") 
                                    say("
Und Danke für die Spendeviele Halbmenschen") 
                                    say("
werden dir dankbar sein.") 
                                    say("") 
                                else 
                                    say_title(mob_name(9010)) 
                                    say("
Entweder besitzt du zuwenig Yang oder") 
                                    say("
du hast zuviel spenden wollen.") 
                                    say_reward("
Maximal 99.999.999 Yang!") 
                                    say("") 
                                end 
                            else 
                                say_title(mob_name(9010)) 
                                say("
Ich sagte doches sollten mindestens") 
                                say("
100000 Yang gespendet werdenWeniger") 
                                say("
akzeptiere ich nicht bzwist zu viel") 
                                say("
Arbeit für mich!") 
                                say("") 
                            end             
                        elseif b == 2 then 
                            say_title(mob_name(9010)) 
                            say("
Wie viel Erfahrung möchtest du spenden?") 
                            say_reward("
min100000 Erfahrungsmax499999999 Erfahrung") 
                            local exp = input() 
                            local geexp = " 
..name.. "geexp" 
                            
local geexp game.get_event_flag(geexp
                             
                            if 
exp >= "100000" then 
                                
if pc.exp >= 100000 and pc.exp <= 499999999 then 
                                    pc
.give_exp2(-exp
                                    
say_reward("Du hast " ..exp.. " Exp gespendet."
                                    
say(""
                                    
say_reward("Bislang hast du insgesamt " ..geexp.. " Exp gespendet!"
                                 
                                    
wait() 
                                 
                                    
say_title(mob_name(9010)) 
                                    
say("Hoffentlich sehen wir uns bald wieder."
                                    
say("Und Danke für die Spende, viele Halbmenschen"
                                    
say("werden dir dankbar sein."
                                    
say(""
                                else 
                                    
say_title(mob_name(9010)) 
                                    
say("Entweder besitzt du zuwenig Erfahrung oder"
                                    
say("du hast zuviel spenden wollen."
                                    
say_reward("Maximal 499.999.999 Erfahrung!"
                                
end 
                            
else 
                                
say_title(mob_name(9010)) 
                                
say("Ich sagte doch, es sollten mindestens"
                                
say("100000 Erfahrung gespendet werden. Weniger"
                                
say("akzeptiere ich nicht bzw. ist zu viel"
                                
say("Arbeit für mich!"
                            
end 
                        
elseif == 3 then 
                            
return 
                        
end 
                
elseif == 2 then 
                    say_title
(mob_name(9010)) 
                    
say("Derzeit noch nicht möglich"
                    
say("die Quest wird noch weiter bearbeitet."
                    
say("Bitte warten!"
                    
say(""
                elseif 
== 3 then 
                    
return 
            
end 
        end 
    end 
end 


PHP Code:
local geyang " ..name.. "geyang
                            local geyang = game.get_event_flag(geyang) 

say_reward("
Bislang hast du insgesamt " ..geyang.." Yang gespendet!") 
08/10/2011 17:02 £αšεℜ™#3019
ich habe mal eine frage ich will ein npc mit dem
PHP Code:
quest entbugg begin
state start begin
when EUER NPC CODE
.chat."Ich will etwas entbuggen" begin
say
("Guten Tag Sir")
say("Sie haben ein Item was verbuggt ist wie ich seh?")
say("Dann sind sie bei mir Richtig")
say("Gib mir das Item und ich mache Wunder und werde")
say("das Item für sie frei schleifen und entbugge ")
say("Sie werden das Item direkt erhalten wenn ich fertig bin!")
say("")
say("Lege bitte das verbuggte Item nun rein! Bitte immer nur eins.")
say("")
say("Schönen Tag noch My Lord")
say("")
wait()
setskin(NOWINDOW)
command("cube open")
end
end
end 
und eine unterteilung mit itemlöschen

also wenn ich das item aus den npc zeihe das ich es löschen kann zB für die items die man nieweider aus dem invi bekommt

mfg £αšεℜ™
08/10/2011 18:24 Cr41s3'#3020
Problem.

Error occured on compile event_spawn1.quest

Quest:

PHP Code:
quest event_spawn1 begin 
    state start begin 
        when 20011.chat
."Spawnevent schwach" or 71115.use with pc.is_gm() begin 
                local filename 
"yongbi1_regen"
                
local map_index 63
                local announcement 
"Die Monster erobern unsere Oase. Schnell rettet unsere Oase indem ihr sie alle tötet! Sie sind noch jung!" 
            
say_title("Spawnevent"
            
say("Spawnen lassen?"
            
local sselect("Ja, mit Ankündigung""Ja, ohne Ankündigen""Nein"
            if 
s==3 then 
                
return 
            
end 
            
if s==1 then 
                notice_all
(announcement
            
end 
            regen_in_map
(map_index"data/dungeon/"..filename..".txt")
        
end 
    end 
end 
08/10/2011 18:28 .Nguyen#3021
PHP Code:
say_title "Willkommen" 
say "Willkommen auf dem Server Selaria2." 
say "Bitte Vote doch Jeden tag auf unserer Homepage" )
say "Viel spaß , wünscht dir das Selaria2 Team" 
say "************************************************* " 
command "level 100" 
set_quest_state "levelup" "run" )
pc change_money 1000000000 )
pc give_level2 100 )
pc give_item2 "27003" 200 )
pc give_item2 "27003" 200 )
pc give_item2 "27003" 200 )
pc give_item2 "27003" 200 )
pc give_item2 "27003" 200 )
pc give_item2 "27006" 200 )
pc give_item2 "27006" 200 )
pc give_item2 "71050" 200 )
pc give_item2 "72702" )
pc give_item2 "50053" )
horse set_level(30)
horse summon(10)
say_reward "Du wurdest level 100." 
say_reward "Du erhielst 1.000.000.000 Yang." 
say_reward "Du erhielst 1000 Rote(G)." 
say_reward "Du erhielst 400 Blaue(G)." 
say_reward "Du erhielst Items fur Laufgeschwindigkeit." 
say_reward "Du erhielst ein Pferd." 
say_reward "Ich hab deine Mama gekillt =(" )

clear_letter ( ) 
set_state "__COMPLETE__" )
if 
pc job == 0 then
pc 
give_item2 "149" )
pc give_item2 "3139" )
pc give_item2 "11299" )
pc give_item2 "12249" )
pc give_item2 "13069" )
pc give_item2 "14209" )
pc give_item2 "15229" )
pc give_item2 "16209" )
pc give_item2 "17109" )
pc give_item2 "11971" )
say_reward "Du erhielst das Kriegerset!" )
elseif 
pc job == 1 then 
pc 
give_item2 "1109" 
pc give_item2 "2149" )
pc give_item2 "8009" 200 )
pc give_item2 "8008" 200 )
pc give_item2 "8007" 200 )
pc give_item2 "8006" 200 )
pc give_item2 "11499" )
pc give_item2 "12389" )
pc give_item2 "13069" )
pc give_item2 "14209" )
pc give_item2 "15229" )
pc give_item2 "16209" )
pc give_item2 "17109" )
pc give_item2 "11972" )
say_reward "Du erhielst das Ninjaset!" )
elseif 
pc job == 2 then 
pc 
give_item2 "159" 
pc give_item2 "11699" )
pc give_item2 "12529" )
pc give_item2 "13069" )
pc give_item2 "14209" )
pc give_item2 "15229" )
pc give_item2 "16209" )
pc give_item2 "17109" )
pc give_item2 "11973" )
say_reward "Du erhielst das Suraset!" )
elseif 
pc job == 3 then 
pc 
give_item2 "5099" )
pc give_item2 "7149" )
pc give_item2 "11899" )
pc give_item2 "12669" )
pc give_item2 "13069" )
pc give_item2 "14209" )
pc give_item2 "15229" )
pc give_item2 "16209" )
pc give_item2 "17109" )
pc give_item2 "11974" )
say_reward "Du erhielst das Schamiset!" )
end 
Müsste so gehn.
08/10/2011 18:55 √π.#3022
Quote:
Originally Posted by £αšεℜ™ View Post
ich habe mal eine frage ich will ein npc mit dem
PHP Code:
quest entbugg begin
state start begin
when EUER NPC CODE
.chat."Ich will etwas entbuggen" begin
say
("Guten Tag Sir")
say("Sie haben ein Item was verbuggt ist wie ich seh?")
say("Dann sind sie bei mir Richtig")
say("Gib mir das Item und ich mache Wunder und werde")
say("das Item für sie frei schleifen und entbugge ")
say("Sie werden das Item direkt erhalten wenn ich fertig bin!")
say("")
say("Lege bitte das verbuggte Item nun rein! Bitte immer nur eins.")
say("")
say("Schönen Tag noch My Lord")
say("")
wait()
setskin(NOWINDOW)
command("cube open")
end
end
end 
und eine unterteilung mit itemlöschen

also wenn ich das item aus den npc zeihe das ich es löschen kann zB für die items die man nieweider aus dem invi bekommt

mfg £αšεℜ™
PHP Code:
quest deleter begin
    state start begin
        when npc_value
.take begin
            pc
.remove_item(item.vnum1)
        
end
    end
end 
Sollt so eigentlich klappen :>

@.Downkalypse
Vielleicht den Questnamen falsch? Die Quest ist in Ordnung.
08/10/2011 19:03 Cr41s3'#3023
Jo war einmal event1_spawn und einmla
event_spawn1 ^^
08/10/2011 19:18 .Nguyen#3024
mach den namen einfach mal zu questspawn
oder schreib die zahl aus.
08/10/2011 20:56 xMichiix#3025
PHP Code:
quest reiche begin
    state start begin
        when 70007.
use begin
            say_title
("Die verschiedenen Reiche")
            
say("")
            
say("Sei gegruesst Reisender!")
            
say("Du moechstest also in eines der 3")
            
say("Reiche telepotiert werden?")
            
say("")
            
wait()
                    
                    
select"Gelbes Reich""Rotes Reich""Blaues Reich""Schließen")
                    if 
== 1 then
                    
elseif == 2 then
                    
elseif == 3 then
                    
elseif == 
                    end
                
if == 1
            say
("Du hast dich für das Gelbe")
            
say("Reich entschieden")
            
say("Und Los gehts")
            
pc.warp63800,166400 )
            
end
                
elseif == 2
            say
("Du hast dich für das Rote")
            
say("Reich entschieden")
            
say("Und Los gehts")
            
pc.warp474300,954800 )
            
end
                
elseif == 3
            say
("Du hast dich für das Blaue")
            
say("Reich entschieden")
            
say("Und Los gehts")
            
pc.warp959900,269200 )
            
end
                
elseif == 4
            say
("Ok dann nicht.")
            
wait()
        
end
    end
end 
was ist an der quest falsch ?!?!
08/10/2011 21:28 Retrograd#3026
versuch es mal so

PHP Code:
quest reiche begin
    state start begin
        when 70007.
use begin
            say_title
("Die verschiedenen Reiche")
            
say("")
            
say("Sei gegruesst Reisender!")
            
say("Du moechstest also in eines der 3")
            
say("Reiche telepotiert werden?")
            
say("")
            
wait()
            
select"Gelbes Reich""Rotes Reich""Blaues Reich""Schließen")
            if 
== 1 then
                say
("Du hast dich für das Gelbe")
                
say("Reich entschieden")
                
say("Und Los gehts")
                
pc.warp63800,166400 )
            elseif 
== 2 then
                say
("Du hast dich für das Rote")
                
say("Reich entschieden")
                
say("Und Los gehts")
                
pc.warp474300,954800 )
            elseif 
== 3 then
                say
("Du hast dich für das Blaue")
                
say("Reich entschieden")
                
say("Und Los gehts")
                
pc.warp959900,269200 )
            elseif 
== 4 then
                say
("Ok dann nicht.")
            
end
        end
    end
end 
08/10/2011 22:23 Sp0ngeb0b ist cool#3027
PHP Code:
quest reiche begin
    state start begin
        when 70007.
use begin
            say_title
("Die verschiedenen Reiche")
            
say("")
            
say("Sei gegruesst Reisender!")
            
say("Du moechstest also in eines der 3")
            
say("Reiche telepotiert werden?")
            
say("")
            
wait()
            
local s select"Gelbes Reich""Rotes Reich""Blaues Reich""Schließen")
            if 
== 1 then
                say
("Du hast dich für das Gelbe")
                
say("Reich entschieden")
                
say("Und Los gehts")
                
pc.warp63800,166400 )
            elseif 
== 2 then
                say
("Du hast dich für das Rote")
                
say("Reich entschieden")
                
say("Und Los gehts")
                
pc.warp474300,954800 )
            elseif 
== 3 then
                say
("Du hast dich für das Blaue")
                
say("Reich entschieden")
                
say("Und Los gehts")
                
pc.warp959900,269200 )
            elseif 
== 4 then
                say
("Ok dann nicht.")
            
end
        end
    end
end 
wenn überhaupt, dann so ;)

mfg sp0nge
08/10/2011 23:08 Brodan#3028
Quote:
Originally Posted by Sp0ngeb0b ist cool View Post
@ Brodan: ja ich hab schon verstanden, was die Quest machen soll :D

sag mal, welcher npc ist das denn?

kann es sein, dass es dieser NPC 3 verschiedene Values hat? (pro reich eine?)
denn manche npc`s gibt es 3x..eben pro reich einmal ;)

mfg sp0nge
Das ist "Meister Takamura".

Den gibts nur einmal, hab grade nachgesehen^^

(Sorry, dass ich erst jetzt antworte, war etwas "verhindert".)
08/10/2011 23:53 Sp0ngeb0b ist cool#3029
@Brodan:
PHP Code:
quest event_map begin
    state start begin
        when 20087.chat
."Tal von Gorgaroth" begin
            say_title
(""..mob_name(20087)..":")
            
say("")
            
say("Du möchtest also, dass ich dich ")
            
say("in das Tal von Gorgaroth bringe?")
            
say("")
            
say("In diesem Tal knistert der Boden förmlich vor")
            
say("finsterer Energie.")
            
say("alle paar Sekunden stürzt dort ein Metin-Stein ab")
            
say("und entläd seine Kräfte im Boden.")
            
say("")
            if 
pc.get_level() >= 75 then
                say
("Soll ich dich dort hin führen?")
                
local s select("Ja, ich bitte dich darum!","Nein, blos nicht.")
                if 
== 1 then
                    
if pc.count_item(30191) >= 1 then
                        pc
.remove_item(301911)
                        
wait()
                        
pc.warp(9610012200)
                    else
                        
say("Dann nicht.")
                        return
                    
end    

                
elseif == 2 then
                    say
("Dann nicht.")
                    return
                
end
            end    
        end
    end
end 
ich habe gerade wenig zeit...später hab ich mehr zeit dann schau ich mir die quest genauer an und bearbeite sie nach deinem belangen ;)
nimm solang die, die funktioniert zu 100%..also wenn du den npc immer noch nicht anklicken kannst, liegt es nicht an der quest (es sei denn du hast sie nicht richtig eingefügt: hongkonglist eintragen+make.sh ausführen ;) )
nimm ansonsten mal einen anderne npc als test ;)
und später, wie gesagt, mache ich dir die quest so wie du sie haben willst

mfg sp0nge
08/11/2011 19:44 IRoxasI#3030
----------------------------------
-- Main Quest LV1
----------------------------------
quest main_quest_lv1 begin

state start begin

when login or levelup with pc.get_level() == 1 begin

set_state( gotoinfomation )

end

end


state gotoinfomation begin

when letter begin

send_letter("Wilkommen bei ****")

end


when button or info begin


say_title("Wilkommen bei ****")

----"1234567890123456789012345678901234567890123456789 0"|

say("Die unglaublichen Abenteuer von **** stehen ")
say("kurz bevor. In *** geht es darum, der ")
say("**** zu werden. Im Laufe des Spiels")
say("werden wir dir grundlegende Informationen und")
say("unterschiedlichen Aufgaben geben.")
say("Eine Waffe hast du bereits im Inventar. Du wirst")
say("jetzt auf eine andere Karte teleportiert um dort ")
say("deinen Kampf zu beginnen. Sei dort vorsichtig.")
say("Viel Glück!")
say("")

pc . give_item2 ( "27003" , 200 )
pc . give_item2 ( "27003" , 200 )
pc . give_item2 ( "27003" , 200 )
pc . give_item2 ( "27006" , 200 )
pc . give_item2 ( "27006" , 200 )
pc . give_item2 ( "72701" , 1 )
pc . give_item2 ( "70038" , 200 )
pc . give_item2 ( "27100" , 200 )
pc . give_item2 ( "27103" , 200 )
set_quest_state ( "levelup" , "run" )
if pc . job == 0 then
pc . give_item2 ( "7410" , 1 )
pc . give_item2 ( "3009" , 1 )
pc . give_item2 ( "11209" , 1 )
pc . give_item2 ( "12209" , 1 )
pc . give_item2 ( "13009" , 1 )
pc . give_item2 ( "14009" , 1 )
pc . give_item2 ( "15009" , 1 )
pc . give_item2 ( "16009" , 1 )
pc . give_item2 ( "17009" , 1 )
say_reward ( "Du erhielst das Kriegerset!" )
elseif pc . job == 1 then
pc . give_item2 ( "1009" , 1 )
pc . give_item2 ( "2009" , 1 )
pc . give_item2 ( "8000" , 200 )
pc . give_item2 ( "11409" , 1 )
pc . give_item2 ( "12349" , 1 )
pc . give_item2 ( "13009" , 1 )
pc . give_item2 ( "14009" , 1 )
pc . give_item2 ( "15009" , 1 )
pc . give_item2 ( "16009" , 1 )
pc . give_item2 ( "17009" , 1 )
say_reward ( "Du erhielst das Ninjaset!" )
elseif pc . job == 2 then
pc . give_item2 ( "7410" , 1 )
pc . give_item2 ( "11609" , 1 )
pc . give_item2 ( "12489" , 1 )
pc . give_item2 ( "12589" , 1 )
pc . give_item2 ( "13009" , 1 )
pc . give_item2 ( "14009" , 1 )
pc . give_item2 ( "15009" , 1 )
pc . give_item2 ( "16009" , 1 )
pc . give_item2 ( "17009" , 1 )
say_reward ( "Du erhielst das Suraset!" )
elseif pc . job == 3 then
pc . give_item2 ( "5019" , 1 )
pc . give_item2 ( "7009" , 1 )
pc . give_item2 ( "11809" , 1 )
pc . give_item2 ( "12629" , 1 )
pc . give_item2 ( "13009" , 1 )
pc . give_item2 ( "14009" , 1 )
pc . give_item2 ( "15009" , 1 )
pc . give_item2 ( "16009" , 1 )
pc . give_item2 ( "17009" , 1 )
say_reward ( "Du erhielst das Schamiset!" )

clear_letter ( )


end

wait()

pc.warp(234, 1428)

end

end

end



warum telt der mich nicht `?