[SERVICE] Die Questkontrolle

02/22/2012 22:35 xxalbanxx3#4831
PHP Code:
quest pvpsystem begin
    state start begin
        when login 
or levelup with pc.get_level() >= 15 begin
            set_state
(information)
        
end
    end
    
    state information begin
        when letter begin
            send_letter
("PvP Punkte")
        
end
        
        when button 
or info begin
            say_title
("PvP Guard:")
            
say("Hallo, ich bin dein PvP Guard.")
            
say("Ich helfe dir durch das PvP Punkte System.")
            
say("Das Prinzip ist einfach erklärt:")
            
say("Wenn du andere Spieler tötest,")
            
say("bekommst du sogenannte PvP Taler.")
            
say("Für eine bestimmte Anzahl an Punkten kannst du")
            
say("bei mir einige schöne Sachen erstehen.")
            
say("Wenn du Spieler eines anderen Reiches tötest,")
            
say("bekommst du mehr Taler,")
            
say("als wenn du einen Spieler deines Reiches tötest.")
            
say("")
            
wait()
            
say_title("PvP Guard:")
            
say_reward("Töten eines Spielers eines anderen Reiches = +100 Taler")
            
say_reward("Töten eines Spielers deines Reiches = +75 Taler")
            
say_reward("Getötet werden = -50 Taler")
            
pc.setqf("counter"0)
            
set_state(kd)
        
end
    end
    
    state kd begin
        when letter begin
            send_letter
("PvP Panel aktivieren")
        
end
        
        when button 
or info begin
            say_title
("PvP Guard:")
            
say("Hier wirst du in Zukunft verschiedene")
            
say("Auswahlmöglichkeiten zur Verfügung haben,")
            
say("wie zum Beispiel die Anzahl deiner Kills, etc. .")
            
say("Als kleines Startkapital bekommst du 1000 PvP Taler.")
            
say("")
            
say_reward("Du hast 1000 PvP Taler erhalten.")
            
say("")
            
pc.setqf("counter"pc.getqf("counter")+1000)
            
pc.setqf("killcounter"pc.getqf("killcounter")+1)
            
pc.setqf("deathcounter"pc.getqf("deathcounter")+1)
            
set_state(lolol)
        
end
    end
    
    state lolol begin
        when login begin
            cleartimer
("checkDeathTimerMain")
            
timer('checkDeathTimerMain'2
        
end
    
        when letter begin
            send_letter
("PvP Panel")
        
end
    
        when button 
or info begin
            say_title
("PvP Panel:")
            
say("Wähle eine Möglichkeit aus:")
            
local z select("FAQ""Deine Kills""Shop""Abbrechen")
            if 
== 1 then
                say_title
("PvP Panel:")
                
say("Hier findest du häufig gestellte Fragen")
                
say("und selbstverständlich auch ihre Antworten.")
                
say("Entscheide dich für eine der Fragen.")
                
local x select("Wie Taler bekommen?""Was ist K/D?""Minus Taler""Abbrechen")
                if 
== 1 then
                    say_title
("PvP Panel:")
                    
say("Du bekommst Taler,")
                    
say("wenn du andere Spieler tötest.")
                    
say("Es wird unter den Spielern in 2 Kategorien unterschieden.")
                    
say_reward("Töten eines Spielers eines anderen Reiches = +100 Taler")
                    
say_reward("Töten eines Spielers deines Reiches = +75 Taler")
                    
say_reward("Getötet werden = -50 Taler")
                    
say("")
                elseif 
== 2 then
                    say_title
("PvP Panel:")
                    
say("K/D bedeuted Kills per Death.")
                    
say("Das heisst,")
                    
say("wie viele Male du Leute getötet hast")
                    
say("geteilt durch")
                    
say("wie viele Male du gestorben bist.")
                    
say("Je mehr Leute du killst, umso höher")
                    
say("ist deine K/D.")
                    
say_reward("Anzahl Kills / Anzahl Tode")
                    
say("")
                elseif 
== 3 then
                    say_title
("PvP Panel:")
                    
say("Minus Taler bekommst du,")
                    
say("wenn du getötet wirst.")
                    
say("Egal, aus welchem Reich dein Mörder kommt,")
                    
say("werden dir 50 Taler abgezogen.")
                    
say("Diese Minus Taler lassen sich selbstverständlich")
                    
say("Durch normale Taler ausgleichen.")
                    
say_reward("Getötet werden = -50 Taler")
                    
say_reward("Minus Taler lassen sich ausgleichen.")
                
end
            
elseif == 2 then
                say_title
("PvP Panel:")
                
say("Hier kannst du deine wichtigsten PvP Daten einsehen.")
                
say("")
                
local killc pc.getqf("killcounter")
                
local deathc pc.getqf("deathcounter")
                
local kdratio killc/deathc
                say_reward
("Kills: "..killc)
                
say_reward("Tode: "..deathc)
                
say_reward("K/D: "..kdratio)
                
say("")
                return
            elseif 
== 3 then
                say_title
("PvP Panel:")
                
say("Hier kannst du für PvP Punkte einkaufen.")
                
say("")
                
local q select("Rangpunkte""Abbrechen")
                if 
== 1 then
                    local oldAlignment 
pc.get_alignment()
                    
say_title("PvP Panel:")
                    
say("Du willst Rangpunkte kaufen?")
                    
say("Dann bist du hier genau richtig!")
                    
local e select("500 Rang""1000 Rang""2000 Rang""Abbrechen")
                    if 
== 1 then
                        say_title
("PvP Panel:")
                        
say("Du willst also 500 Rangpunkte für 1000 Taler kaufen?")
                        
say("Bist du dir sicher?")
                        
local m select("Ja""Nein")
                        if 
== 2 then return end
                        say_title
("PvP Panel:")
                        
say_reward("Du hast 500 Rangpunkte erhalten!")
                        
say_reward("Dein Kontostand ist um 1000 Taler gesunken!")
                        
pc.change_alignment(oldAlignment+500)
                        
pc.setqf("counter"pc.getqf("counter")-1000)
                    elseif 
== 2 then
                        say_title
("PvP Panel:")
                        
say("Du willst also 1000 Rangpunkte für 2000 Taler kaufen?")
                        
say("Bist du dir sicher?")
                        
local n select("Ja""Nein")
                        if 
== 2 then return end
                        say_title
("PvP Panel:")
                        
say_reward("Du hast 1000 Rangpunkte erhalten!")
                        
say_reward("Dein Kontostand ist um 2000 Taler gesunken!")
                        
pc.change_alignment(oldAlignment+1000)
                        
pc.setqf("counter"pc.getqf("counter")-2000)                                  
                    elseif 
== 3 then
                        say_title
("PvP Panel:")
                        
say("Du willst also 2000 Rangpunkte für 4000 Taler kaufen?")
                        
say("Bist du dir sicher?")
                        
local o select("Ja""Nein")
                        if 
== 1 then
                            say_title
("PvP Panel:")
                            
say_reward("Du hast 2000 Rangpunkte erhalten!")
                            
say_reward("Dein Kontostand ist um 4000 Taler gesunken!")
                            
pc.change_alignment(oldAlignment+2000)
                            
pc.setqf("counter"pc.getqf("counter")-4000)                                        
                        
end
                    end
                end
            end
            
return
        
end
        
        when kill begin
            
if npc.is_pc() then
                
if npc_is_same_empire then
                    pc
.setqf("killcounter",pc.getqf("killcounter")+1)
                    
pc.setqf("counter",pc.getqf("counter")+50)
                    
chat("Du hast 50 PvP Taler erhalten!")
                else
                    
pc.setqf("killcounter",pc.getqf("killcounter")+1)
                    
pc.setqf("counter",pc.getqf("counter")+75)
                    
chat("Du hast 75 PvP Taler erhalten!")
                
end
            end
        end
        
        when checkDeathTimerMain
.timer begin
            cleartimer
("checkDeathTimerSub")
            
pvpsystem.checkDeath()            
            
timer("checkDeathTimerSub"2)
        
end
        
        when checkDeathTimerSub
.timer begin
            cleartimer
("checkDeathTimerMain")
            
pvpsystem.checkDeath()            
            
timer("checkDeathTimerMain"2)
        
end
        
        
function checkDeath()
            if 
pc.is_dead() and npc.is_pc() then
                pc
.setqf("counter"pc.getqf("counter")-50)
                
pc.setqf("deathcounter"pc.getqf("deathcounter")+1)
                
chat("Du bist tot! Du verlierst 50 Taler!")            
            
end
            
return
        
end
    end
end 
Die quest funktioniert nicht so wie sie soll! Also wenn man sich was kauft mit den Talern dann kann man es so oft kaufen wie man will egal wieviel coins man hat und wenn man tot ist kommt unten im chat die ganze zeit du verliest 50 taler so lang bist man aufsteht!
02/23/2012 12:04 xJ3Lack_MaieRx#4832
wenn id emake.sh machen dann kommt:
Calls unclared funktion!
pc.mount_bonus
Error ocurrend on compile file:
quest:
falls es an der questfunktion liegt, wie füge ich die ein??
02/23/2012 15:31 .Delta#4833
local b

statt
locale b

...
02/23/2012 15:39 Apokipa#4834
Hallo.. This is my first quest so i need help :( It's just a test-quest...What's the matter with it?

quest goodorritterlich begin
state start begin
when 40004.use begin

say_title("Change allignment:")
say("You want to change allignment??")
if pc.job ==0 then
say("just test")

local s=select("Good","Ritterlich")
if ss=1 then
pc.change_alignment(4000)
say("You became good")
end

if ss=2 then
pc.change_alignment(20000)
say("You became Ritterlich")
end
end
end
02/23/2012 15:54 RealMadrid94rk#4835
PHP Code:
quest goodorritterlich begin
    state start begin
        when 40004.
use begin
            say_title
("Change allignment:")
            
say("You want to change allignment??")

            if 
pc.job ==0 then
                say
("just test")
                
local s=select("Good","Ritterlich")

                if 
s==1 then
                    pc
.change_alignment(4000)
                    
say("You became good")
                
end -- end if2

                
if s==2 then
                    pc
.change_alignment(20000)
                    
say("You became Ritterlich")
                
end -- end if3
            end 
-- end if1
        end 
-- end when
    end 
-- end state
ned 
-- end quest 
02/23/2012 17:17 [SA]Imbattle#4836
Quote:
Originally Posted by [SA]Imbattle View Post
Hallo,

ich hab hier ne Reittier quest, die funktioniert auch hab ich selber gemacht, aber jezt hab ich das problem das ich wenn ich die map wechsele das ich nichtmehr auf dem reittier sitze, das reittier liegt aber immer noch in diesem sonder slot im inventar also da wo auch exp ring und so landet, dann wenn man rechtsklick macht und auf absitzen klickt dann liegt das item immer noch im sonder inventar -.- ist es irgendwie möglich das wenn man die map wechselt das man dann sofort wieder aufsteigt und das wenn man auf absitzen klickt das dann das siegel wieder im inventar liegt?

Falls das möglich ist wärs nett wenn mir gleich noch jemand bonis mit einfügen könnte :D am besten einfach ein TP bonus von 10K damit ich es testen kann, den boni ändern kann ich selber :P

Die Quest:

PHP Code:
est siegel begin
    state start begin
        when 71114.
use    begin
            pc
.mount(20110,9999999)
    
end

        when 71116.
use    begin
            pc
.mount(20111,9999999)
    
end

        when 71118.
use    begin
            pc
.mount(20112,9999999)
    
end

        when 71120.
use    begin
            pc
.mount(20113,9999999)
    
end

        when 71115.
use    begin
            pc
.mount(20120,9999999)
    
end

        when 71117.
use    begin
            pc
.mount(20122,9999999)
    
end
        when 71119.
use    begin
            pc
.mount(20121,9999999)
    
end
        when 71121.
use    begin
            pc
.mount(20114,9999999)
    
end
        when 71122.
use    begin
            pc
.mount(20123,9999999)
        
end
    end
end 
€: das Item hat nicht den type 18 sondern den type 16, dann noch ein paar änderungen bei flag antiflag und so und es ist wieder ein questitem nur das es im sonder slot landet wo auch exp ring und so landet.
kommt schon so schwer ist es nicht
02/23/2012 18:24 xxalbanxx3#4837
Quote:
Originally Posted by xxalbanxx3 View Post
PHP Code:
quest pvpsystem begin
    state start begin
        when login 
or levelup with pc.get_level() >= 15 begin
            set_state
(information)
        
end
    end
    
    state information begin
        when letter begin
            send_letter
("PvP Punkte")
        
end
        
        when button 
or info begin
            say_title
("PvP Guard:")
            
say("Hallo, ich bin dein PvP Guard.")
            
say("Ich helfe dir durch das PvP Punkte System.")
            
say("Das Prinzip ist einfach erklärt:")
            
say("Wenn du andere Spieler tötest,")
            
say("bekommst du sogenannte PvP Taler.")
            
say("Für eine bestimmte Anzahl an Punkten kannst du")
            
say("bei mir einige schöne Sachen erstehen.")
            
say("Wenn du Spieler eines anderen Reiches tötest,")
            
say("bekommst du mehr Taler,")
            
say("als wenn du einen Spieler deines Reiches tötest.")
            
say("")
            
wait()
            
say_title("PvP Guard:")
            
say_reward("Töten eines Spielers eines anderen Reiches = +100 Taler")
            
say_reward("Töten eines Spielers deines Reiches = +75 Taler")
            
say_reward("Getötet werden = -50 Taler")
            
pc.setqf("counter"0)
            
set_state(kd)
        
end
    end
    
    state kd begin
        when letter begin
            send_letter
("PvP Panel aktivieren")
        
end
        
        when button 
or info begin
            say_title
("PvP Guard:")
            
say("Hier wirst du in Zukunft verschiedene")
            
say("Auswahlmöglichkeiten zur Verfügung haben,")
            
say("wie zum Beispiel die Anzahl deiner Kills, etc. .")
            
say("Als kleines Startkapital bekommst du 1000 PvP Taler.")
            
say("")
            
say_reward("Du hast 1000 PvP Taler erhalten.")
            
say("")
            
pc.setqf("counter"pc.getqf("counter")+1000)
            
pc.setqf("killcounter"pc.getqf("killcounter")+1)
            
pc.setqf("deathcounter"pc.getqf("deathcounter")+1)
            
set_state(lolol)
        
end
    end
    
    state lolol begin
        when login begin
            cleartimer
("checkDeathTimerMain")
            
timer('checkDeathTimerMain'2
        
end
    
        when letter begin
            send_letter
("PvP Panel")
        
end
    
        when button 
or info begin
            say_title
("PvP Panel:")
            
say("Wähle eine Möglichkeit aus:")
            
local z select("FAQ""Deine Kills""Shop""Abbrechen")
            if 
== 1 then
                say_title
("PvP Panel:")
                
say("Hier findest du häufig gestellte Fragen")
                
say("und selbstverständlich auch ihre Antworten.")
                
say("Entscheide dich für eine der Fragen.")
                
local x select("Wie Taler bekommen?""Was ist K/D?""Minus Taler""Abbrechen")
                if 
== 1 then
                    say_title
("PvP Panel:")
                    
say("Du bekommst Taler,")
                    
say("wenn du andere Spieler tötest.")
                    
say("Es wird unter den Spielern in 2 Kategorien unterschieden.")
                    
say_reward("Töten eines Spielers eines anderen Reiches = +100 Taler")
                    
say_reward("Töten eines Spielers deines Reiches = +75 Taler")
                    
say_reward("Getötet werden = -50 Taler")
                    
say("")
                elseif 
== 2 then
                    say_title
("PvP Panel:")
                    
say("K/D bedeuted Kills per Death.")
                    
say("Das heisst,")
                    
say("wie viele Male du Leute getötet hast")
                    
say("geteilt durch")
                    
say("wie viele Male du gestorben bist.")
                    
say("Je mehr Leute du killst, umso höher")
                    
say("ist deine K/D.")
                    
say_reward("Anzahl Kills / Anzahl Tode")
                    
say("")
                elseif 
== 3 then
                    say_title
("PvP Panel:")
                    
say("Minus Taler bekommst du,")
                    
say("wenn du getötet wirst.")
                    
say("Egal, aus welchem Reich dein Mörder kommt,")
                    
say("werden dir 50 Taler abgezogen.")
                    
say("Diese Minus Taler lassen sich selbstverständlich")
                    
say("Durch normale Taler ausgleichen.")
                    
say_reward("Getötet werden = -50 Taler")
                    
say_reward("Minus Taler lassen sich ausgleichen.")
                
end
            
elseif == 2 then
                say_title
("PvP Panel:")
                
say("Hier kannst du deine wichtigsten PvP Daten einsehen.")
                
say("")
                
local killc pc.getqf("killcounter")
                
local deathc pc.getqf("deathcounter")
                
local kdratio killc/deathc
                say_reward
("Kills: "..killc)
                
say_reward("Tode: "..deathc)
                
say_reward("K/D: "..kdratio)
                
say("")
                return
            elseif 
== 3 then
                say_title
("PvP Panel:")
                
say("Hier kannst du für PvP Punkte einkaufen.")
                
say("")
                
local q select("Rangpunkte""Abbrechen")
                if 
== 1 then
                    local oldAlignment 
pc.get_alignment()
                    
say_title("PvP Panel:")
                    
say("Du willst Rangpunkte kaufen?")
                    
say("Dann bist du hier genau richtig!")
                    
local e select("500 Rang""1000 Rang""2000 Rang""Abbrechen")
                    if 
== 1 then
                        say_title
("PvP Panel:")
                        
say("Du willst also 500 Rangpunkte für 1000 Taler kaufen?")
                        
say("Bist du dir sicher?")
                        
local m select("Ja""Nein")
                        if 
== 2 then return end
                        say_title
("PvP Panel:")
                        
say_reward("Du hast 500 Rangpunkte erhalten!")
                        
say_reward("Dein Kontostand ist um 1000 Taler gesunken!")
                        
pc.change_alignment(oldAlignment+500)
                        
pc.setqf("counter"pc.getqf("counter")-1000)
                    elseif 
== 2 then
                        say_title
("PvP Panel:")
                        
say("Du willst also 1000 Rangpunkte für 2000 Taler kaufen?")
                        
say("Bist du dir sicher?")
                        
local n select("Ja""Nein")
                        if 
== 2 then return end
                        say_title
("PvP Panel:")
                        
say_reward("Du hast 1000 Rangpunkte erhalten!")
                        
say_reward("Dein Kontostand ist um 2000 Taler gesunken!")
                        
pc.change_alignment(oldAlignment+1000)
                        
pc.setqf("counter"pc.getqf("counter")-2000)                                  
                    elseif 
== 3 then
                        say_title
("PvP Panel:")
                        
say("Du willst also 2000 Rangpunkte für 4000 Taler kaufen?")
                        
say("Bist du dir sicher?")
                        
local o select("Ja""Nein")
                        if 
== 1 then
                            say_title
("PvP Panel:")
                            
say_reward("Du hast 2000 Rangpunkte erhalten!")
                            
say_reward("Dein Kontostand ist um 4000 Taler gesunken!")
                            
pc.change_alignment(oldAlignment+2000)
                            
pc.setqf("counter"pc.getqf("counter")-4000)                                        
                        
end
                    end
                end
            end
            
return
        
end
        
        when kill begin
            
if npc.is_pc() then
                
if npc_is_same_empire then
                    pc
.setqf("killcounter",pc.getqf("killcounter")+1)
                    
pc.setqf("counter",pc.getqf("counter")+50)
                    
chat("Du hast 50 PvP Taler erhalten!")
                else
                    
pc.setqf("killcounter",pc.getqf("killcounter")+1)
                    
pc.setqf("counter",pc.getqf("counter")+75)
                    
chat("Du hast 75 PvP Taler erhalten!")
                
end
            end
        end
        
        when checkDeathTimerMain
.timer begin
            cleartimer
("checkDeathTimerSub")
            
pvpsystem.checkDeath()            
            
timer("checkDeathTimerSub"2)
        
end
        
        when checkDeathTimerSub
.timer begin
            cleartimer
("checkDeathTimerMain")
            
pvpsystem.checkDeath()            
            
timer("checkDeathTimerMain"2)
        
end
        
        
function checkDeath()
            if 
pc.is_dead() and npc.is_pc() then
                pc
.setqf("counter"pc.getqf("counter")-50)
                
pc.setqf("deathcounter"pc.getqf("deathcounter")+1)
                
chat("Du bist tot! Du verlierst 50 Taler!")            
            
end
            
return
        
end
    end
end 
Die quest funktioniert nicht so wie sie soll! Also wenn man sich was kauft mit den Talern dann kann man es so oft kaufen wie man will egal wieviel coins man hat und wenn man tot ist kommt unten im chat die ganze zeit du verliest 50 taler so lang bist man aufsteht!
Brauche immer noch Hilfe

PHP Code:
quest drachenraum begin
    state start begin
        when login 
or levelup with pc.level >120 begin
            set_state
(drachenraum)
        
end
    end
        
    state drachenraum begin
        when 80009.
use begin
            say
("Drachenraum!")
            
say("Hallo mein Freund!")
            
say("Du scheinst nun stärker zu sein,")
            
say("als je zu vor. Ich glaube du bist nun")
            
say("bereit um zum Drachenraum zu gehen!")
            
say("Du musst aber Level 120+ sein.")
            
say("")
            
say("Möchtest du zum Drachenraum?")
            
say("")
                
            
local aselect("Teleportier mich!""Nein ich bleib hier!")
            if 
1==a then
                say
("Ok")
                
say("Viel Glück")
                
wait()
                
pc.warp(8432001066800)
            elseif 
2==a then
                say
("Ok")
                
say("Eine Weise Entscheidung!")
            
end


        end
            

    end

end
end
end 
Brauche hilfe mit der quest
02/23/2012 19:31 Retrograd#4838
so müsste es klappen ich weiß nicht wo du die ends herholst

PHP Code:
quest drachenraum begin 
    state start begin 
        when login 
or levelup with pc.level >120 begin 
            set_state
(drachenraum
        
end 
    end 

    state drachenraum begin 
        when 80009.
use begin 
            say
("Drachenraum!"
            
say("Hallo mein Freund!"
            
say("Du scheinst nun stärker zu sein,"
            
say("als je zu vor. Ich glaube du bist nun"
            
say("bereit um zum Drachenraum zu gehen!"
            
say("Du musst aber Level 120+ sein."
            
say(""
            
say("Möchtest du zum Drachenraum?"
            
say(""

            
local aselect("Teleportier mich!""Nein ich bleib hier!"
            if 
1==a then 
                say
("Ok"
                
say("Viel Glück"
                
wait() 
                
pc.warp(8432001066800
            elseif 
2==a then 
                say
("Ok"
                
say("Eine Weise Entscheidung!"
            
end 
        end
    end
end 
02/23/2012 20:12 xxalbanxx3#4839
Quote:
Originally Posted by Retrograd View Post
so müsste es klappen ich weiß nicht wo du die ends herholst

PHP Code:
quest drachenraum begin 
    state start begin 
        when login 
or levelup with pc.level >120 begin 
            set_state
(drachenraum
        
end 
    end 

    state drachenraum begin 
        when 80009.
use begin 
            say
("Drachenraum!"
            
say("Hallo mein Freund!"
            
say("Du scheinst nun stärker zu sein,"
            
say("als je zu vor. Ich glaube du bist nun"
            
say("bereit um zum Drachenraum zu gehen!"
            
say("Du musst aber Level 120+ sein."
            
say(""
            
say("Möchtest du zum Drachenraum?"
            
say(""

            
local aselect("Teleportier mich!""Nein ich bleib hier!"
            if 
1==a then 
                say
("Ok"
                
say("Viel Glück"
                
wait() 
                
pc.warp(8432001066800
            elseif 
2==a then 
                say
("Ok"
                
say("Eine Weise Entscheidung!"
            
end 
        end
    end
end 
PHP Code:
quest Reittier begin 
    state start begin 
        when 71900.
use begin  
            pc
.mount(21990)  
            
pc.mount_bonus(apply.MAX_HP,50000,900
            
pc.mount_bonus(apply.DEF_GRADE_BONUS,150,900
        
end 
    end 
end 
kannst du mir damit noch helfen
02/23/2012 20:33 richib135#4840
Habe problem mit folgender Quest:


PHP Code:
quest vote begin
    state start begin
        when 50011.
use begin
            
if pc get_level ( ) < 70 then 
                say 
("Dein Level ist leider nocht zu niedrig, komm wieder mit LvL70!"
            else 
                
say_title("Votetruhe:")
                
say("")
                
say("Hallo.")
                
say("Ich bin die Votetruhe!")
                
say("Ich gebe dir 2 Truhen zur Wahl!")
                
say("Du kannst dich entscheiden, zwischen:")
                
say("Votetruhe1, und Votetruhe2!")
                
say("Um mehr Informationen über diese Truhen")
                
say("zu erhalten, klick bitte auf Informationen!")
                
say("")
                
say_reward("Was möchtest du nun machen??")
                
                
local s select("Truhe aussuchen""Informationen""Beenden")
                    if 
== 3 then
                say
("Ok, bis später")
                        return
                    
end
                    
if == 2 then
                say_title
("Informationen")
                
say("")
                
say("Aus der Votetruhe1 können Items raus kommen")
                
say("Folgende Items können raus kommen:")
                
say("Gelbe, Blaue und Grüne Diamanten, Rote Schreibfeder")
                
say("Feuer-Blume, Goldener Pilz, Piranha-Planze")
                
say(" 6/7 Boni switchen/einfügen und Regenbogenstein")
                
say("")
                
say("Aus der Votetruhe2 kommen Bonis raus")
                
say("Folgende Bonis können raus kommen:")
                
say("blabla")
                
say("blablabla")
                
say("blablablabla")
                
say("blablablablala")
                
say("")
                
local s select("Beenden")
                    if 
== 1 then
                        
return
                    
end
                    
if == 1 then
                say_title
("Truhe")
                
say("")
                
say_reward("Was für eine Truhe möchtest du?")
                
                
local s select("Votetruhe1""Votetruhe2""Beenden")
                    if 
== 1 then
                    pc
.remove_item(500111)
                    
pc.give_item2(456781)
                
end
                    
if == 2 then
                    pc
.remove_item(500111)
                    
pc.give_item2(456791)
        
end
    end
end 
Bitte Hilfe!
02/23/2012 23:39 RealMadrid94rk#4841
Habe versucht einzustellen, dass man nur jede Stunde durch die Quest in die Map kann. Aber klappt nicht so wie ich es will >.>

PHP Code:
----------------------------------------------------
--
Tempel des Drachen
----------------------------------------------------
quest drachenraum begin
    state start begin
        when logout with pc
.get_map_index() >= (82*10000begin
            pc
.setqf("punishment"1)
        
end
        
        when login with pc
.get_map_index() >= (82*10000) and pc.getqf("punishment") == 1 begin
            pc
.setqf("punishment"0)
            
pc.warp (153600,1203200)
        
end
        
        when 30121.chat
."Ich will den Drachen töten" with pc.get_map_index() == 73 and game.get_event_flag("dragontemple_open") == 1 begin
            pc
.setqf("punishment"0)
            if 
game.get_event_flag("dragontemple_used") == 1 then
                
if get_time()>pc.getqf("duration"then
                    say_title
(mob_name(30121))
                    
say("")
                    
say("Der Raum ist gesperrt, versuch es später noch ein mal.")
                    return;
                
end
                
                say_title
(mob_name(30121))
                
say("")
                
say("Tut mir Leid, der Raum ist reseviert.")
                
say("Wenn du ein Passwort hast für den Zugang")
                
say("gebe es jetzt bitte ein.")
                
local password input()
                if 
game.get_event_flag("dragontemple_password") == tonumber(passwordthen
                    say_title
(mob_name(30121))
                    
say("")
                    
say("Das Passwort stimmt überein.")
                    
say("Ich bringe dich in die Kammer")
                    
wait()
                    
say_title(mob_name(30121))
                    
say("")
                    
say("Wenn du willst kann ich dich sofort,")
                    
say("in den Drachnraum bringen.")
                    
say("Gib mir einfach 3 "..item_name(30179))
                    
say("")
                    
say_item_vnum(30179)
                    
                    
local s select("Hier, nimm sie und bring mich rein""Abbrechen")
                    if 
== 1 then
                        
if pc.count_item(30179) >= 3 then
                            pc
.remove_item(301793)
                            
pc.warp(8436001066900, (82*10000))
                        else
                            
say("Du hast nur "..pc.count_item(30179).." von 3 benötigten")
                            
sammeln pc.count_item(30179)
                            
say("Sammle bitte noch "..sammeln.." "..item_name(30179))
                            
say("")
                            
say_item_vnum(30179)
                        
end
                    
else
                        return
                    
end
                
else
                    
say_title(mob_name(30121))
                    
say("")
                    
say("Das Passwort stimmt nicht überein.")
                    return
                
end
            
elseif pc.has_guild() and game.get_event_flag("dragontemple_used") == 0 then
                say_title
(mob_name(30121))
                
say("")
                
say("Du willst also den Drachen bekämpfen?")
                
say("Dann gib bitte erst ein Passwort(nur Zahlen) ein")
                
say("um den Raum zu schützen. Geb das Passwort")
                
say("einfach deinen Gruppenmitgliedern und sie")
                
say("können mit in den Raum")
                
say("Gib es bitte jetzt ein.")
                
local password tonumber(input())
                
say_title(mob_name(30121))
                
say("")
                
say("Um jetzt in den Drachenraum zu kommen")
                
say("brauche ich 3 "..item_name(30179))
                
say("")
                
say_item_vnum(30179)
                
say("")
                
pc.setqf("duration",0)
                
                
local s select("Hier, nimm sie und bring mich rein""Abbrechen")
                if 
== 1 then
                    
if pc.count_item(30179) >= 3 then
                        pc
.remove_item(301793)
                        
pc.setqf("duration",get_time()+60*60)
                        if 
game.get_event_flag("dragontemple_notfinished") == 0 then
                            local ret 
DragonLair.startRaid(82)
                        else
                            
pc.warp(8436001066900, (82*10000))
                        
end
                        game
.set_event_flag("dragontemple_used"1)
                        
game.set_event_flag("dragontemple_notfinished"1)
                        
game.set_event_flag("dragontemple_password"password)
                        
timer("not_finished"60)
                    else
                        
say("Du hast nur "..pc.count_item(30179).." von 3 benötigten")
                        
sammeln pc.count_item(30179)
                        
say("Sammle bitte noch "..sammeln.." "..item_name(30179))
                        
say("")
                        
say_item_vnum(30179)
                        
say("")
                        return
                    
end
                
elseif == 2 then
                    
return                                
                
end
            
elseif not pc.has_guild() then
                say_title
(mob_name(30121))
                
say("")
                
say("Du benötigst eine starke Gilde")
                
say("um gegen den Drachen zu kämpfen.")
            
end
        end
        
        when 2493.kill with pc
.get_map_index() >= (82*10000begin
            notice_all
("Der Drache wurde von "..pc.get_name().." getötet!")
            
notice_all("Herzlichen Glückwunsch!")
            
notice_all("Ihr werdet in 30 Sekunden raus teleportiert!")
            
timer("set_unused"30)
        
end
        
        when not_finished
.timer begin
            notice
("Die Zeit ist abgelaufen. Ihr werdet nun nach draußen teleportiert!")
            
game.set_event_flag("dragontemple_used"0)
            
pc.warp (153600,1203200)
        
end
        
        when set_unused
.timer begin
            game
.set_event_flag("dragontemple_used"0)
            
game.set_event_flag("dragontemple_notfinished"0)
            
DragonLair.endRaid(82*10000)
            
pc.warp (153600,1203200)
        
end
        
    end
end 
02/24/2012 08:29 Synfonia#4842
Quote:
Originally Posted by JeeX View Post
Ich bräuchte auch eine hilfe :/
Es geht um 2 Quests:...
Code:
quest check_trans_ticket begin
	state start begin
		when 20096.take with item.vnum() = 70045 begin
			pc.warp(460800,1049600)			
		end
	end
end
20096 = Säule im Feuerland
Ich würde aber lieber einen Gegenstand (70045) einbinden, so das ich denn einfach auf die Säule drauf ziehe wie im DT und einfach weiter komme, nur ich hab keine Ahnung wie ich das anstelle... und die Quest hier klappt leider auch nicht... -.-
1. Zwischen Koordinaten kommen Kommata, keine Einrück-Tabs.
2. when [Objekt].take with item.vnum() = [Schlüssel-Vnum] begin
02/24/2012 10:10 Lеlouch#4843
PHP Code:
syntax error : [string "start"]:11unexpected symbol near `=='
glyphensteine.quest:48:Abort trap (core dumped) 
Wo liegt das Problem?

PHP Code:
quest WondaTauschQuest begin
    state start begin
    when 20086.chat
."Glyphensteine Sammlerin" begin
            say_reward
("Glyphensteine Sammlerin:")
            
say("Hallo, ich bin Wonda-Rim. Ich")
            
say("sammel seltene Steine oder auch")
            
say("Fossilien, die oft auch für euch")
            
say("oder anderen Wertlos erscheinen")
            
say("Derzeit bin ich sehr an")
            
say("Glyphensteine interessiert.")
            
say("")
            
say_gold("Besitzt du Glyphensteine?")
            
say("")
            
local e == select("Ja","Nein")
            if 
== e then
                
return
            elseif 
== e then
                say
("")
            
say_reward("Wonda-Rim")
            
say("Du hast einen Glyphenstein, wie")
            
say("schön. Was möchtest du dafür?")
            
say("")
            
local s select("10.000.000 Yang""8.000.000 Exp""Weiße Perle""Blaue Perle""Blutrote Perle""Drei Muschel""Doch nicht!")
            if 
== s then
                pc
.remove_item(30178)
                
pc.change_money(10000000)
            elseif 
== s then
                pc
.remove_item(30178)
                
pc.give_exp2(8000000)
            elseif 
== s then
                pc
.remove_item(30178)
                
pc.give_item2(27992)
            elseif 
== s then
                pc
.remove_item(30178)
                
pc.give_item2(27993)
            elseif 
== s then
                pc
.remove_item(30178)
                
pc.give_item2(27994)
            elseif 
== s then
                pc
.remove_item(30178)
                
pc.give_item2(27987)
                
pc.give_item2(27987)
                
pc.give_item2(27987)
            elseif 
== s then
                
return
            
end
        end
    end
end 
02/24/2012 13:28 RealMadrid94rk#4844
Quote:
Originally Posted by cReez' View Post
PHP Code:
syntax error : [string "start"]:11unexpected symbol near `=='
glyphensteine.quest:48:Abort trap (core dumped) 
Wo liegt das Problem?

PHP Code:
quest WondaTauschQuest begin
    state start begin
    when 20086.chat
."Glyphensteine Sammlerin" begin
            say_reward
("Glyphensteine Sammlerin:")
            
say("Hallo, ich bin Wonda-Rim. Ich")
            
say("sammel seltene Steine oder auch")
            
say("Fossilien, die oft auch für euch")
            
say("oder anderen Wertlos erscheinen")
            
say("Derzeit bin ich sehr an")
            
say("Glyphensteine interessiert.")
            
say("")
            
say_gold("Besitzt du Glyphensteine?")
            
say("")
            
local e == select("Ja","Nein")
            if 
== 2 then
                
return
            elseif 
== 1 then
                say
("")
            
say_reward("Wonda-Rim")
            
say("Du hast einen Glyphenstein, wie")
            
say("schön. Was möchtest du dafür?")
            
say("")
            
local s select("10.000.000 Yang""8.000.000 Exp""Weiße Perle""Blaue Perle""Blutrote Perle""Drei Muschel""Doch nicht!")
            if 
== 1 then
                pc
.remove_item(30178)
                
pc.change_money(10000000)
            elseif 
== 2 then
                pc
.remove_item(30178)
                
pc.give_exp2(8000000)
            elseif 
== 3 then
                pc
.remove_item(30178)
                
pc.give_item2(27992)
            elseif 
== 4 then
                pc
.remove_item(30178)
                
pc.give_item2(27993)
            elseif 
== 5 then
                pc
.remove_item(30178)
                
pc.give_item2(27994)
            elseif 
== 6 then
                pc
.remove_item(30178)
                
pc.give_item2(27987)
                
pc.give_item2(27987)
                
pc.give_item2(27987)
            elseif 
== 7 then
                
return
            
end
        end
    end
end 
Wenn du zB. 1 == s amchst, dann heißt es, wenn die Variable 1 dem buchtaben s entspricht wird die aktion ausgefürt.
Aber richtig sollte es ja sein, wenn die variable s der zahl 1 entspricht.
02/25/2012 00:44 richib135#4845
Also ich will zu folgender Quest einen Timer:

PHP Code:
quest vote begin
    state start begin
        when 45678.
use begin
            
if pc get_level ( ) < 85 then 
                say 
("Dein LvL ist zu niedrig, du kanst sie erst mit LvL 85 öffnen")
            else 
                
say_title("Votetruhe")
                
say("")
                
say("Du kannst diese Votetruhe tauschen")
                
say("gegen eine Itemtruhe.")
                
say("Aus der Itemtruhe können wertvolle")
                
say("Items herauskommen.")
                
say("Folgende Items kann diese Truhe beinhalten:")
                
say("Gelbe, Blaue und Grüne Diamanten, Rote Schreibfeder")
                
say("Feuer-Blume, Goldener Pilz, Piranha-Planze")
                
say(" 6/7 Boni switchen/einfügen und Regenbogenstein")
                
say("")
                
say_reward("Möchtest du nun eine Itemtruhe?")
                
local s select("Ja""Nein")
                    if 
== 1 then
                    pc
.remove_item(456781)
                    
pc.give_item2(500111)
                else
                        return
                    
end
            end
        end
        end
        end 
Also, ich will das man die Truhe nur alle 24 Stunden öffnen kann.
Wer weis wie das geht, bitte sagt es mir, wäre sehr sehr dankbar !

Mit freundlichen Grüßen!