Energysystem

10/06/2013 20:36 VeRoX ™#1
Hey!
Ich habe ein Problem mit dem Energysystem!
Also ich benutze die Files von xGr33n und einen 2013er Client!
Am Anfang als ich die Files aufgesetzt hatte war das Energysystem ein wenig Fail!
D.h wenn ich als bsp. ein ss+3 raufgezogen habe stand dort: " dieses item ist nicht geeignet"!
Dann habe ich meine andere energysystem quest reingepackt und nun klappt garnichts mehr! D.h nur wenn ich items rauf ziehe passiert nichts!Aber wenn ich 30 stc. habe kann ich die trozdem zu einem Kristall machen!
Wo liegt das Problem?
Hier die Quest:
PHP Code:
quest energiesystem begin
    state start begin
        when 20001.chat
."Eine neue Technik" with (game.get_event_flag("energy") == or pc.is_gm() == truebegin
            say_title
("Alchemist")
            
say("Ich habe es geschafft!")
            
say("Endlich konnte ich eine vollkommen neue Technik")
            
say("entwickeln.")
            
say("Ich habe es möglich gemacht, Gegenstände")
            
say("weiterzuverarbeiten und pure Energie aus ihnen zu")
            
say("ziehen. Absolut brillant!")
            
wait()
            
say_title("Alchemist")
            
say("Zerstört man einen Gegenstand mithilfe meiner")
            
say("Technik, erhält man Energiesplitter. Fügt man 30")
            
say("dieser Splitter zusammen, erhält man einen")
            
say("machtvollen Energiekristall! Reine, ungefilterte")
            
say("Energie, gebündelt in einem Edelstein. Diese")
            
say("Kraft fließt in deine gesamte Ausrüstung.")
            
say("Hast du Interesse daran?")
            
wait()
            
say_title("Alchemist")
            
say("Bring Ausrüstungsgegenstände wie Waffen, Schmuck")
            
say("und Kleidung, die du auf deiner")
            
say("Jagt findest, zu mir. Ich werde sie zu")
            
say("Energiesplittern verarbeiten.")
            
say("Zukunft und Hoffnung unseres Reiches liegen in")
            
say("dieser Technik. Wir werden unbesiegbar!")
            
set_state("make")
        
end
    end
    state make begin
        when 20001.chat
."Energiesplitter extrahieren" with (game.get_event_flag("energy") == or pc.is_gm() == truebegin
            say_title
("Alchemist")
            
say("Hat es funktioniert? Hast du Energiesplitter")
            
say("bekommen?")
            
say("Bring mir mehr Gegenstände und ich werde ")
            
say("sie mithilfe der Alchemie zerbrechen.")
            
say("Meine Technik ist noch nicht ganz ausgefeilt.")
            
say("Deswegen kann ich dir nicht garantieren, wie")
            
say("viele Splitter du erhälst.")
            
wait()
            
say_title("Alchemist")
            
say("Es gibt eine Bedingung: Sowohl dein eigener als")
            
say("auch der Level des Gegenstandes muss")
            
say("mindestens 35 sein.")
            
say("Hm, schauen wir einfach mal...")
            
wait()
            if 
pc.get_level() < 35 then
                say_title
("Alchemist")
                
say("Du bist noch nicht stark genug! Komm wieder,")
                
say("wenn du mindestens Level 35 erreicht hast.")
            else -- 
NICHT DE
                say_title
("Alchemist")
                
say("Ok du bist Stark genug für meine neue")
                
say("Entdeckung.")        
            
end
            
        end
        
        when 20001.chat
."Energiekristall herstellen" with (game.get_event_flag("energy") == or pc.is_gm() == truebegin
            say_title
("Alchemist")
            
say("Hast du deine Kraftreserven etwa schon")
            
say("aufgebraucht? Du solltest nicht so hart arbeiten")
            
say("und dein Leben leichtsinnig aufs Spiel setzen.")
            
say("Um einen Energiekristall herzustellen, benötige")
            
say("ich 30 Energiesplitter.")
            
wait()
            if 
pc.get_level() < 35 then
                say_title
("Alchemist")
                
say("Du bist noch nicht stark genug! Komm wieder,")
                
say("wenn du mindestens Level 35 erreicht hast.")
            else
                if 
pc.count_item(51001) >= 30 then
                    say_title
("Alchemist")
                    
say("Sehr schön du hast alle benötigten 30")
                    
say("Energiesplitter. Daraus kann ich einen")
                    
say("Energiekristall herstellen.")
                    
say("Warte bitte einen Moment. Ich werde es")
                    
say("versuchen, aber ich kann nicht garantieren,")
                    
say("dass es funktioniert.")
                    
wait()
                    
say_title("Alchemist")
                    
say("Alles ist bereit, um die Splitter zu einem")
                    
say("Energiekristall zu verschmelzen.")
                    
say("Doch von irgendwas muss ich leben und")
                    
say("meine Werkzeuge fallen nicht einfach so vom")
                    
say("Himmel. Ich verlange einen kleinen")
                    
say("Unkostenbeitrag von 1000 Yang. Bist du bereit, zu")
                    
say("bezahlen?")
                    if 
select("Selbstverständlich!","Nein, jetzt nicht") == 2 then
                        
return
                    
end
                    
                    pc
.change_money(-1000)
                    
pc.remove_item(51001,30)
                    
                    if 
number(0,1) == 1 then
                        say_title
("Alchemist")
                        
say("Ich wusste meine Technik ist brilliant!")
                        
say("Hier ist dein Energiekristall.")
                        
say("Ein Prachtexemplar! Spürst du die Kraft?")
                        
pc.give_item2(51002,1)
                    else -- 
NICHT DE
                        say_title
("Alchemist")
                        
say("Leider hat es nicht geklappt")
                        
say("einen Energiekristall herzustellen!")
                        return
                    
end
                    
                
else -- NICHT DE
                    say_title
("Alchemist")
                    
say("Du hast leider nicht alle benötigten 30")
                    
say("Energiesplitter. Daraus kann ich nichts")
                    
say("herstellen.")
                    return
                
end
                
            end
        end

        when 20001.take with game
.get_event_flag("energy") == or pc.is_gm() == 1 begin
            
if pc.get_level() < 35 then
                say_title
("Alchemist")
                
say("Du bist noch nicht stark genug, um die Kraft, die")
                
say("den Energiesplittern innewohnt, zu beherrschen.")
                
say("Komm wieder wenn du mindestens Level 35")
                
say("erreicht hast.")
                return
            
end
            
            
if item.get_type() == or item.get_type() == 2 then
            
--                2070 2239
--                80 369
--                1040 1189
--                3070 3249
--                5040 5359
--                4030 4069
--                7070 7219
--                11250 11299
--                11450 11499
--                11650 11699
--                11850 11899
--                12240 12699

                local maxlvl 
mysql_query("SELECT limitvalue0 FROM player.item_proto WHERE vnum='"..item.get_vnum().."' LIMIT 1;")
                
test_chat(maxlvl[1][1])
                if 
tonumber(maxlvl[1][1]) < 35 then 
                    
-- NICHT DE
                    say_title
("Alchemist")
                    
say("Dieses Item ist nicht geeignet!")
                    return
                
end
            
                say_title
("Alchemist")
                
say(string.trim(item.get_name()))
                
say("Soll ich diesen Gegenstand zerstören?")
                if 
select("Ja!","Nein, noch nicht!") == 2 then
                    
return
                else
                    
local anzahl number(0,15)
                    if 
anzahl 0 then
                        say_title
("Alchemist")
                        
say("Sagenhaft! Ich konnte "..anzahl.." Energiesplitter finden.")
                        
say("Bitte sehr.")
                        
pc.give_item2(51001anzahl)
                    else
                        
say_title("Alchemist")
                        
say("Ich habe versagt - leider konnte ich keinen")
                        
say("Energiesplitter extrahieren. Vielleicht klappt es")
                        
say("beim nächsten Versuch.")
                        return
                    
end
                    item
.remove()
                
end
                
            
else -- NICHT DE
                say_title
("Alchemist")
                
say("Dieses Item ist nicht geeignet!")
            
end
        end
        
        when login begin
            
if getenergytime() < 50000 then
                test_chat
("[Energy]Restzeit: "..getenergytime())
                
setenergytime(getenergytime() + get_time())
                
cmdchat("energysystem "..getenergytyp().."|"..getenergyvalue().."#"..getenergytime())
            
end
        end
        when logout begin
            
if getenergytime() > get_time() then
                local energy 
getenergytime() - get_time()
                if 
energy 0 then
                    setenergytime
(energy)
                
end
            end
        end
        
        when 51002.
use begin
            
if getenergytime() > get_time() then
                chat
("Du benutzst schon die Energie eines Energiekristalls!")
                return
            
end
            
            local anz 
number(1,10)
            
boni_list = {}
            
boni_list [1] = {apply.ATTBONUS_HUMAN,    15}
            
boni_list [2] = {apply.ATTBONUS_MONSTER,    10}
            
boni_list [3] = {apply.CRITICAL_PCT,    10}
            
boni_list [4] = {apply.PENETRATE_PCT,    10}
            
boni_list [5] = {apply.MAX_HP,    1000}
            
boni_list [6] = {apply.MAX_SP,    2000}
            
boni_list [7] = {apply.HP_REGEN,    30}
            
boni_list [8] = {apply.STEAL_HP,    10}
            
boni_list [9] = {apply.ATT_GRADE_BONUS,    75}
            
boni_list [10] = {apply.ATT_GRADE_BONUS,    50}
            
            
test_chat(anz)
            
test_chat(boni_list[anz][1])
            
test_chat(boni_list[anz][2])

            
affect.add_collect(boni_list[anz][1],boni_list[anz][2],7200)
            
setenergy(anz,boni_list[anz][2],get_time() + 7200)

            
cmdchat("energysystem "..anz.."|"..boni_list[anz][2].."#"..(get_time() + 7200))
            
            
setenergytime(get_time() + 7200)
            
            
item.remove()
            
chat("Du spürst die Energie des Kristalls, die sich auf deinen Körper überträgt..")
            
        
end
    end
end 
bitte helft mir
10/06/2013 20:44 Ky0n'#2
Nutzte doch dafür den Stickythread: [Only registered and activated users can see links. Click Here To Register...]

Der macht seine Arbeit sehr gut und gründlich.
10/06/2013 22:24 DerForenLeser#3
Das Event muss erst als GM aktiviert werden.
10/07/2013 05:59 Xijezu#4
Quote:
Originally Posted by |||||||||| View Post
Nutzte doch dafür den Stickythread: [Only registered and activated users can see links. Click Here To Register...]

Der macht seine Arbeit sehr gut und gründlich.
#closed