[R]Fertigkeitsbuch-Quests

11/16/2013 11:34 Mr. 'Avenue™#1
############################
Keine Difs mehr benötigt, um irgendwas an
den FB's zu ändern (z.B. Chance, Interval,
Exp,..)
############################


-------------------------------------------------
Query, um Bücher auf type 18 zu stellen:
Code:
UPDATE item_proto SET type=18 WHERE type=17 AND vnum >= 50401 AND vnum <= 50511;
-------------------------------------------------

Quest #1
Fertigkeitsbücher klappen 100%
Fertigkeitsbücher benötigen keine EXP
Fertigkeitsbücher haben keine Zeitbeschränkung


PHP Code:
--[[
Fertigkeitsbücher klappen 100%
Fertigkeitsbücher benötigen keine EXP
Fertigkeitsbücher haben keine Zeitbeschränkung
]]--

quest fbread begin
    state start begin
        
function learnskill(skill)
            
local SkillLevel pc.get_skill_level(skill)
            if 
SkillLevel 1 then
                syschat
("<System> Das kannst du nicht lesen.")
                return
            
end
            
if SkillLevel 20 then
                syschat
("<System> Diese Fertigkeit hast du noch nicht erlernt.")
                return
            
end
            
if SkillLevel 29 then
                syschat
("<System> Du hast diese Fertigkeit bereits gelernt.")
                return
            
end
            pc
.set_skill_level(skillSkillLevel+1)
            
syschat("<System> Du hast das Fertigkeitsbuch erfolgreich gelesen.")
            
item.remove()
            if 
pc.is_skill_book_no_delay() then
                pc
.remove_skill_book_no_delay()
            
end
        end
        when 50401.
use or 50402.use or 50403.use or 50404.use or 50405.use or
             
50416.use or 50417.use or 50418.use or 50419.use or 50420.use or
             
50431.use or 50432.use or 50433.use or 50434.use or 50435.use or 
             
50446.use or 50447.use or 50448.use or 50449.use or 50450.use or 
             
50461.use or 50462.use or 50463.use or 50464.use or 50465.use or 50466.use or 
             
50476.use or 50477.use or 50478.use or 50479.use or 50480.use or 50481.use or 
             
50491.use or 50492.use or 50493.use or 50494.use or 50495.use or 50496.use or 
             
50506.use or 50507.use or 50508.use or 50509.use or 50510.use or 50511.use begin
            fbread
.learnskill(item.get_vnum()-50400)
        
end
    end
end 



Quest #2
Fertigkeitsbücher klappen 50%
Fertigkeitsbücher benötigen keine EXP
Fertigkeitsbücher haben Zeitbeschränkung


PHP Code:
--[[
Fertigkeitsbücher klappen 50%
Fertigkeitsbücher benötigen keine EXP
Fertigkeitsbücher haben Zeitbeschränkung
]]--

quest fbread begin
    state start begin
        
function learnskill(skill)
            
local x number(1,2)
            if 
1 then
                syschat
("<System> Du hast das Buch nicht verstanden")
                return
            
end
            local SkillLevel 
pc.get_skill_level(skill)
            if 
SkillLevel 1 then
                syschat
("<System> Das kannst du nicht lesen.")
                return
            
end
            
if SkillLevel 20 then
                syschat
("<System> Diese Fertigkeit hast du noch nicht erlernt.")
                return
            
end
            
if SkillLevel 29 then
                syschat
("<System> Du hast diese Fertigkeit bereits gelernt.")
                return
            
end
            pc
.set_skill_level(skillSkillLevel+1)
            
syschat("<System> Du hast das Fertigkeitsbuch erfolgreich gelesen.")
            
item.remove()
            if 
pc.is_skill_book_no_delay() then
                pc
.remove_skill_book_no_delay()
            
end
        end
        when 50401.
use or 50402.use or 50403.use or 50404.use or 50405.use or
             
50416.use or 50417.use or 50418.use or 50419.use or 50420.use or
             
50431.use or 50432.use or 50433.use or 50434.use or 50435.use or 
             
50446.use or 50447.use or 50448.use or 50449.use or 50450.use or 
             
50461.use or 50462.use or 50463.use or 50464.use or 50465.use or 50466.use or 
             
50476.use or 50477.use or 50478.use or 50479.use or 50480.use or 50481.use or 
             
50491.use or 50492.use or 50493.use or 50494.use or 50495.use or 50496.use or 
             
50506.use or 50507.use or 50508.use or 50509.use or 50510.use or 50511.use begin
            fbread
.learnskill(item.get_vnum()-50400)
        
end
    end
end 
11/16/2013 11:35 React™#2
Danke dir sehr nützlich das habe ich gesucht
11/16/2013 12:50 .Krusty#3
Der Quest Aufbau sieht trotzdem irgendwie sehr einfach, Danke fürs Releasen.
11/16/2013 13:24 deltous'fabius#4
Das kommt auch in den Sammelthread für kleinere Releases.
Ave auch für dich gelten die regeln!
11/16/2013 16:35 x'Radon#5
Ich finde da es viele suchen sollten es hier bleiben da es eher ein größeres release ist. Nur weils ne Quest ist, muss es nicht gleich in Sammelnthread.
11/16/2013 17:33 .Risan.#6
Sehr schön gecodet ;)
11/17/2013 00:44 MartPwnS#7
Wer trotzdem die DIF für die 34k game haben will soll mich anschreiben.
11/17/2013 02:49 .MaisKolben™#8
Quote:
Originally Posted by MartPwnS View Post
Wer trotzdem die DIF für die 34k game haben will soll mich anschreiben.
N1 work macht dieser MartPwnS :3.

Danke für die Quest, aber ich bevorzuge da die DIF.


Mit freundlichen Grüßen
.MaisKolben™
11/17/2013 04:00 #SoNiice#9
Wieso führst du:

Code:
if pc.is_skill_book_no_delay() then
                pc.remove_skill_book_no_delay()
            end
aus..? Ergibt in deinen Quests keinen Sinn :|
11/17/2013 10:25 Mr. 'Avenue™#10
Quote:
Originally Posted by Hühnchenkopf View Post
Wieso führst du:

Code:
if pc.is_skill_book_no_delay() then
                pc.remove_skill_book_no_delay()
            end
aus..? Ergibt in deinen Quests keinen Sinn :|
Ich weiß nicht, habs glaub ich mal in ner Quest so gesehen :s


-----------------------------------------
PHP Code:
quest bookread begin
    state start begin
        
function learnskill(skill)
            
local SkillLevel pc.get_skill_level(skill)
            if 
SkillLevel 1 then
                syschat
("<System> Das kannst du nicht lesen.")
                return
            
end
            
if SkillLevel 20 then
                syschat
("<System> Diese Fertigkeit hast du noch nicht erlernt.")
                return
            
end
            
if SkillLevel 29 then
                syschat
("<System> Du hast diese Fertigkeit bereits gelernt.")
                return
            
end
            pc
.set_skill_level(skillSkillLevel+1)
            
syschat("<System> Du hast das Fertigkeitsbuch erfolgreich gelesen.")
            
pc.remove_item(item.get_vnum(), 1)
        
end
        when 50401.
use or 50402.use or 50403.use or 50404.use or 50405.use or
             
50416.use or 50417.use or 50418.use or 50419.use or 50420.use or
             
50431.use or 50432.use or 50433.use or 50434.use or 50435.use or 
             
50446.use or 50447.use or 50448.use or 50449.use or 50450.use or 
             
50461.use or 50462.use or 50463.use or 50464.use or 50465.use or 50466.use or 
             
50476.use or 50477.use or 50478.use or 50479.use or 50480.use or 50481.use or 
             
50491.use or 50492.use or 50493.use or 50494.use or 50495.use or 50496.use or 
             
50506.use or 50507.use or 50508.use or 50509.use or 50510.use or 50511.use begin
            bookread
.learnskill(item.get_vnum()-50400)
        
end
        
--[[Führung]]--
        
when 50301.use or 50302.use or 50303.use begin
            local book_tab 
= {203040}
            
local skill 121
            local SkillLevel 
pc.get_skill_level(skill)
            
local maxbook book_tab[item.get_vnum()-50300]
            if 
SkillLevel >= 40 then
                syschat
("<System> Das beherrschst diese Lehre bereits.")
                return
            
end
            
if item.get_vnum() == 50302 or item.get_vnum() == 50303 then
                local xtab 
= {20,30}
                if 
SkillLevel xtab[item.get_vnum()-50301then
                    syschat
("<System> Das kannst du nicht mit diesem Buch lernen.")
                    return
                
end
            end
            
if SkillLevel >= maxbook then
                syschat
("<System> Das kannst du nicht mit diesem Buch lernen.")
                return
            
end
            pc
.remove_item(item.get_vnum(), 1)
            
pc.set_skill_level(skillSkillLevel+1)
            
syschat("<System> Du hast das Buch erfolgreich gelesen.")
        
end
        
--[[Sprachen]]--
        
when 50311.use or 50312.use or 50313.use begin
            local skill 
item.get_vnum()-50185
            local SkillLevel 
pc.get_skill_level(skill)
            
local blacklist = {50312,50311,50313}
            if 
item.get_vnum() == blacklist[pc.get_empire()] then
                syschat
("<System> Du beherrschst deine eigene Sprache bereits.")
                return
            
end
            
if SkillLevel >= 40 then
                syschat
("<System> Du beherrschst diese Sprache bereits.")
                return
            
end
            pc
.remove_item(item.get_vnum(), 1)
            
pc.set_skill_level(skillSkillLevel+1)
            
syschat("<System> Du hast das Buch erfolgreich gelesen.")
        
end
        
--[[Combo]]--
        
when 50304.use or 50305.use or 50306.use begin
            local skill 
122
            local SkillLevel 
pc.get_skill_level(skill)
            if 
SkillLevel >= 2 then
                syschat
("<System> Du beherrscht diese Lehre bereits.")
                return
            
end
            pc
.remove_item(item.get_vnum(), 1)
            
pc.set_skill_level(skillSkillLevel+1)
            
syschat("<System> Du hast das Buch erfolgreich gelesen.")
        
end
    end
end 
#updated (mit Sprachen, Führung & Combo)