Metin2 Biyolog Tek Tık Sistemi | Gamesfrm.com
 

Metin2 Biyolog Tek Tık Sistemi

RuLing

İşsiz Moderatör
Yönetici
Haber Editörü
Sosyal Editör
Katılım
28 May 2018
Mesajlar
3,895
Tepki puanı
224
Konum
Diyarbakır
Merhaba arkadaşlar,

Genellikle wslik serverlerin ya da oyuncularını uğraştırmak istemeyen server sahiplerinin kullandığı metin2 biyolog tek tık sistemini aşağıdaki quest ile yapabilirsiniz.

Kod:
quest biyolog_islemleri begin
    state start begin
        function kotrol()
            if pc.getqf("30lvl_biyolog") == 1 and
                pc.getqf("40lvl_biyolog") == 1 and
                    pc.getqf("50lvl_biyolog") == 1 and
                        pc.getqf("60lvl_biyolog") == 1 and
                            pc.getqf("70lvl_biyolog") == 1 and
                                pc.getqf("80lvl_biyolog") == 1 and
                                    pc.getqf("85lvl_biyolog") == 1 and
                                        pc.getqf("90lvl_biyolog") == 1 and
                                            pc.getqf("92lvl_biyolog") >= 1
                                                and pc.getqf("94lvl_biyolog") >= 1 then
                return true
            else
                return false
            end
        end
        function biyologlar()
            if pc.getqf("30lvl_biyolog") != 1 then
                say_turuncu("Biyolog Etkisi (1)")
                say_title("")
                say_sari("Hareket Hızı +10% (Kalıcı)")
                affect.add_collect(apply.MOV_SPEED, 10, 60*60*24*365*60)
                pc.setqf("30lvl_biyolog",1)
                syschat("+10% Hareket Hızı Kazandın !")
                wait()
                return true
            elseif pc.getqf("40lvl_biyolog") != 1 then
                say_turuncu("Biyolog Etkisi (2)")
                say_title("")
                say_sari("Saldırı Hızı +5%(Kalıcı)")
                affect.add_collect(apply.ATT_SPEED,5,60*60*24*365*60)
                pc.setqf("40lvl_biyolog",1)
                syschat("+5% Saldiri Hizi Kazandin !")
                wait()
                return true
            elseif pc.getqf("50lvl_biyolog") != 1 then
                say_turuncu("Biyolog Etkisi (3)")
                say_title("")
                say_sari("Savunma +60 (Kalıcı)")
                affect.add_collect(apply.DEF_GRADE_BONUS,60,60*60*24*365*60)
                pc.setqf("50lvl_biyolog",1)
                syschat("+60% Savunma (Defans) Kazandin !")
                wait()
                return true
            elseif pc.getqf("60lvl_biyolog") != 1 then
                say_turuncu("Biyolog Etkisi (4)")
                say_title("")
                say_sari("Saldırı Değeri +50 (Kalıcı)")
                affect.add_collect(apply.ATT_GRADE_BONUS,50,60*60*24*365*60)
                pc.setqf("60lvl_biyolog",1)
                syschat("+50% Saldiri Degeri Kazandin !")
                wait()
                return true
            elseif pc.getqf("70lvl_biyolog") != 1 then
                say_turuncu("Biyolog Etkisi (5)")
                say_title("")
                say_sari("+11% Hareket Hızı (Kalıcı)")
                say_sari("+10% Hasar Azaltma (Kalıcı)")
                affect.remove_collect(apply.MOV_SPEED, 10, 60*60*24*365*60)
                affect.add_collect(apply.MOV_SPEED,21,60*60*24*365*60)
                affect.add_collect_point(POINT_DEF_BONUS,10,60*60*24*365*60)
                pc.setqf("70lvl_biyolog",1)
                syschat("+11% Hareket Hızı ve +10% Hasar Azaltma Kazandın !")
                wait()
                return true
            elseif pc.getqf("80lvl_biyolog") != 1 then
                say_turuncu("Biyolog Etkisi (6)")
                say_title("")
                say_sari("Saldırı Hızı +15% (Kalıcı)")
                say_sari("+10% Saldırı Değeri (Kalıcı)")
                affect.remove_collect(apply.ATT_SPEED, 5, 60*60*24*365*60)
                affect.add_collect(apply.ATT_SPEED,11,60*60*24*365*60)
                affect.add_collect_point(POINT_ATT_BONUS,10,60*60*24*365*60)
                pc.setqf("80lvl_biyolog",1)
                syschat("+6% Saldırı Hızı ve +10% Saldırı Değeri Kazandın !")
                wait()
                return true
            elseif pc.getqf("85lvl_biyolog") != 1 then
                say_turuncu("Biyolog Etkisi (7)")
                say_title("")
                say_sari("Saldırı Hızı +15% (Kalıcı)")
                say_sari("+10% Saldırı Değeri (Kalıcı)")
                affect.add_collect_point(POINT_RESIST_WARRIOR,10,60*60*24*365*60)
                affect.add_collect_point(POINT_RESIST_ASSASSIN,10,60*60*24*365*60)
                affect.add_collect_point(POINT_RESIST_SURA,10,60*60*24*365*60)
                affect.add_collect_point(POINT_RESIST_SHAMAN,10,60*60*24*365*60)
                pc.setqf("85lvl_biyolog",1)
                syschat("10% Yarı İnsan Savunması Kazandın !")
                wait()
                return true
            elseif pc.getqf("90lvl_biyolog") != 1 then
                say_turuncu("Biyolog Etkisi (8)")
                say_title("")
                say_sari("+10% Yarı İnsan Saldırı Hazarı (Kalıcı)")
                affect.add_collect_point(POINT_ATTBONUS_HUMAN,10,60*60*24*365*60)
                pc.setqf("90lvl_biyolog",1)
                syschat("10% Yarı İnsan Saldırı Hazarı Kazandın !")
                wait()
                return true
            elseif pc.getqf("92lvl_biyolog") < 1 then
                say_turuncu("Biyolog Etkisi (9)")
                say_title("")
                say_reward("Almak İstediğin Bonusu Seç ;")
                local s = select ("+1000 HP"," Savunma Değeri +120 ","Saldırı Değeri +50")
                if s == 1 then
                    affect.add_collect(apply.MAX_HP,1000,60*60*24*365*60)
                    pc.setqf("92lvl_biyolog",1)
                    syschat("+1000 HP Aldın !")
                    say_turuncu("Biyolog Etkisi (9)")
                    say_title("")
                    say_sari("Seçimin : +1000 HP")
                    wait()
                    return true
                elseif s == 2 then
                    affect.add_collect(apply.DEF_GRADE_BONUS,120,60*60*24*365*60)
                    pc.setqf("92lvl_biyolog",2)
                    syschat("+120 Savunma Aldın !")
                    say_turuncu("Biyolog Etkisi (9)")
                    say_title("")
                    say_sari("Seçimin : Savunma Değeri +120")
                    wait()
                    return true
                elseif s == 3 then
                    affect.remove_collect(apply.ATT_GRADE_BONUS, 50, 60*60*24*365*60)
                    affect.add_collect(apply.ATT_GRADE_BONUS,100,60*60*24*365*60)
                    pc.setqf("92lvl_biyolog",3)
                    syschat("+50 Saldiri Aldın !")
                    say_turuncu("Biyolog Etkisi (9)")
                    say_title("")
                    say_sari("Seçimin : Saldırı Değeri +50")
                    wait()
                    return true
                end
            elseif pc.getqf("94lvl_biyolog") < 1 then
                say_turuncu("Biyolog Etkisi (10)")
                say_title("")
                say_reward("Almak İstediğin Bonusu Seç ;")
                local s = select ("+1100 HP","Savunma Değeri +140","Saldırı Değeri +60")
                if s == 1 then
                    affect.add_collect(apply.MAX_HP,1100,60*60*24*365*60)
                    pc.setqf("94lvl_biyolog",1)
                    syschat("+1100 HP Aldın !")
                    say_turuncu("Biyolog Etkisi (10)")
                    say_title("")
                    say_sari("Seçimin : +1100 HP")
                    wait()
                    return true
                elseif s == 2 then
                    affect.add_collect(apply.DEF_GRADE_BONUS,140,60*60*24*365*60)
                    pc.setqf("94lvl_biyolog",2)
                    syschat("+140 Savunma Aldın !")
                    say_turuncu("Biyolog Etkisi (10)")
                    say_title("")
                    say_sari("Seçimin : Savunma Değeri +140")
                    wait()
                    return true
                elseif s == 3 then
                    affect.add_collect(apply.ATT_GRADE_BONUS,60,60*60*24*365*60)
                    pc.setqf("94lvl_biyolog",3)
                    syschat("+60 Saldiri Aldın !")
                    say_turuncu("Biyolog Etkisi (10)")
                    say_title("")
                    say_sari("Seçimin : Saldırı Değeri +60")
                    wait()
                    return true
                end
            end
            return true
        end
        when 20084.chat."Biyolog Etkileri" begin
            if biyolog_islemleri.kotrol() == true then
                say_title(mob_name(npc.get_race()))
                say_reward("Bütün biyolog etkilerini almışsın,")
                say_reward("Daha fazla alabileceğin bir etki yok.")
                return
            end
            say_title(mob_name(npc.get_race()))
            say("Merhaba "..pc.get_name()..",")
            say_reward("Biyolog etkilerini almaya başlamak istermisin?")
            local mix = select("Tamam, Başlayalım","Hayır, Kalsın")
            if mix == 2 then
                say_title(mob_name(npc.get_race()))
                say_reward("Etkileri istediğin zaman gelip alabilirsin ..")
                return
            else
                while biyolog_islemleri.kotrol() != true do
                    biyolog_islemleri.biyologlar()
                end
                say_turuncu("Etkiler Tamamlandı!")
                say_title("")
                say_reward("Tebrikler,")
                say_reward("Bütün etkileri aldın, iyi oyunlar.")
                return
            end
        end
    end
end

Yukarıdaki quest dışında şu kodları quest kısmında ilgili yerlere ekleyin.

quest_functions açılır ve içerisine eklenir.
Kod:
say_sari
say_turuncu

questlib.lua açılır ve içerisine eklenir.

Kod:
function say_sari(name) say(color256(255, 255, 0)..name..color256(255, 255, 0)) end
function say_turuncu(name) say(color256(255, 128, 0)..name..color256(255, 125, 0)) end

yapamayan olursa mesaj atabilir.
 
Üst