TuZaKK 1
TuZaKK
recepk78 1
recepk78
Reklam vermek için turkmmo@gmail.com

Kostüm ve Başlık Görevi - Lua

  • Konuyu başlatan Konuyu başlatan Black Widow
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 6
  • Görüntüleme Görüntüleme 1K
Daha önceden kendi yazmış olduğum bir lua'yı sizlerle paylaşıyorum.

Düzenlenmesi gereken kod bloğu ;

Kod:
function senecekler()


Sisteme dair görüntü ;


77ygOr.jpg







İndirmeden kodları incelemek isteyenler için ;

​
Kod:
quest kostum_baslik begin
    state start begin
        function senecekler()
            local secenek = {}
            secenek.erkek_kostum = {41324, 41328, 41330, 41332, 41334}        -- erkek kostümleri
            secenek.erkek_baslik = {41324, 41328, 41330, 41332, 41334}        -- erkek başlıkları
            secenek.bayan_kostum = {41324, 41328, 41330, 41332, 41334}        -- bayan kostümleri
            secenek.bayan_baslik = {41324, 41328, 41330, 41332, 41334}        -- bayan başlıkları
            secenek.istenilen_item = 90005                                    -- istenilen nesne
            secenek.istenilen_miktar = {100, 200, 300, 400, 500}            -- istenilen nesne miktarı
            secenek.gorev_isimleri = {"Kostum & Başlık Görev -1","Kostum & Başlık Görev -2","Kostum & Başlık Görev -3","Kostum & Başlık Görev -4","Kostum & Başlık Görev -5"}
            return secenek
        end
        function bilgilendirme(bilgiler)
            local flag = kostum_baslik.senecekler()
            local istenilen, miktar = flag.istenilen_item, flag.istenilen_miktar
            local kostum, baslik = flag.erkek_kostum, flag.erkek_baslik
            if pc.get_sex() == 2 then
                kostum, baslik = flag.bayan_kostum, flag.bayan_baslik
            end
            local bilgi = {
                [1] = {""..miktar[1].." adet "..item_name(istenilen).." karşılığında, [ENTER]"..item_name(kostum[1]).." ve "..item_name(baslik[1]).." ödülü [ENTER]alabilirsin. İstediğim "..item_name(istenilen).." getirdiğinde[ENTER]üzerime sürükleyerek ödülünü alabilirsin. "},
                [2] = {""..miktar[2].." adet "..item_name(istenilen).." karşılığında, [ENTER]"..item_name(kostum[2]).." ve "..item_name(baslik[2]).." ödülü [ENTER]alabilirsin. İstediğim "..item_name(istenilen).." getirdiğinde[ENTER]üzerime sürükleyerek ödülünü alabilirsin. "},
                [3] = {""..miktar[3].." adet "..item_name(istenilen).." karşılığında, [ENTER]"..item_name(kostum[3]).." ve "..item_name(baslik[3]).." ödülü [ENTER]alabilirsin. İstediğim "..item_name(istenilen).." getirdiğinde[ENTER]üzerime sürükleyerek ödülünü alabilirsin. "},
                [4] = {""..miktar[4].." adet "..item_name(istenilen).." karşılığında, [ENTER]"..item_name(kostum[4]).." ve "..item_name(baslik[4]).." ödülü [ENTER]alabilirsin. İstediğim "..item_name(istenilen).." getirdiğinde[ENTER]üzerime sürükleyerek ödülünü alabilirsin. "},
                [5] = {""..miktar[5].." adet "..item_name(istenilen).." karşılığında, [ENTER]"..item_name(kostum[5]).." ve "..item_name(baslik[5]).." ödülü [ENTER]alabilirsin. İstediğim "..item_name(istenilen).." getirdiğinde[ENTER]üzerime sürükleyerek ödülünü alabilirsin. "},
            }
            bilgiler = tonumber(bilgiler)
            return bilgi[bilgiler]
        end
        when 20090.chat."Kostum & Başlık Görevleri" begin
            local flag = kostum_baslik.senecekler()
            local gorevler = flag.gorev_isimleri
            say_title("[WINDOW_SIZE width;350|height;370]")
            say_title(mob_name(npc.get_race()))
            say("Mavi Ejderha, Cadı, Azrail, Kırmızı Ejderha vb.")
            say("Oyundaki Bosslardan gerekli görev malzemelerini")
            say("elde edebilirsiniz.")
            say("")
            say_sari("Hangi görev için bilgi istiyorsun ?")
            local bilgiler = select(gorevler[1],gorevler[2],gorevler[3],gorevler[4],gorevler[5],"Vazgeç ")
            if bilgiler == 6 then return end
            local bilgixx = kostum_baslik.bilgilendirme(bilgiler)
            local kostum, baslik = flag.erkek_kostum, flag.erkek_baslik
            if pc.get_sex() == 2 then
                kostum, baslik = flag.bayan_kostum, flag.bayan_baslik
            end
            say_title("[WINDOW_SIZE width;350|height;370]")
            say_title(mob_name(npc.get_race()))
            say_reward(bilgixx[1])
            if bilgiler == 1 then say_item_vnum(kostum[1]) say_item_vnum(baslik[1]) return end
            if bilgiler == 2 then say_item_vnum(kostum[2]) say_item_vnum(baslik[2]) return end
            if bilgiler == 3 then say_item_vnum(kostum[3]) say_item_vnum(baslik[3]) return end
            if bilgiler == 4 then say_item_vnum(kostum[4]) say_item_vnum(baslik[4]) return end
            if bilgiler == 5 then say_item_vnum(kostum[5]) say_item_vnum(baslik[5]) return end
        end
        function kontrol(gelen,miktar)
            if pc.count_item(gelen) < miktar then
                say_sari("Envanterinde "..miktar.." adet "..item_name(gelen).." bulunmamaktadır.")
                wait()
                say_title(mob_name(npc.get_race()))
                say_reward("İşleminiz iptal edilmiştir.")
                return true
            end
        end
        when 20090.take with item.vnum == 90005 begin
            local flag = kostum_baslik.senecekler()
            local gorevler = flag.gorev_isimleri
            local istenilen, miktar = flag.istenilen_item, flag.istenilen_miktar
            local kostum, baslik = flag.erkek_kostum, flag.erkek_baslik
            if pc.get_sex() == 2 then
                kostum, baslik = flag.bayan_kostum, flag.bayan_baslik
            end
            say_title("[WINDOW_SIZE width;350|height;370]")
            say_title(mob_name(npc.get_race()))
            say_reward("Merhaba "..pc.get_name()..",")
            say_reward("Envanterinde toplam "..pc.count_item(istenilen).." adet "..item_name(istenilen).." bulunmakta.")
            wait()
            if pc.count_item(istenilen) < miktar[1] then
                say_title(mob_name(npc.get_race()))
                say("")
                say_reward("Minimum "..miktar[1].." adet "..item_name(istenilen).." ile ödül alabilirsin.")
                return
            end
            say_title(mob_name(npc.get_race()))
            say("")
            say_sari("Bu durumda şu görevlerin ödüllerini alabilirsin;")
            if pc.count_item(istenilen) >= miktar[5] then
                local bilgiler = select(gorevler[1],gorevler[2],gorevler[3],gorevler[4],gorevler[5],"Vazgeç ")
                if bilgiler == 6 then return end
                say_title("[WINDOW_SIZE width;350|height;370]")
                say_title(mob_name(npc.get_race()))
                if bilgiler == 1 then
                    if kostum_baslik.kontrol(istenilen,miktar[1]) == true then return end
                    say_reward(""..miktar[1].." adet "..item_name(istenilen).." karşılığında,")
                    say_reward(""..item_name(kostum[1]).." adet "..item_name(baslik[1]).." vereceğim.")
                    say_item_vnum(kostum[1])
                    say_item_vnum(baslik[1])
                    say("")
                    say("")
                    say("")
                    say("")
                    local onay = select("Almak İstiyorum","Hayır, Kalsın")
                    if onay == 2 then return end
                    if kostum_baslik.kontrol(istenilen,miktar[1]) == true then return end
                    pc.remove_item(istenilen, miktar[1])
                    pc.give_item2_select(kostum[1])
                    pc.give_item2_select(baslik[1])
                    return
                elseif bilgiler == 2 then
                    if kostum_baslik.kontrol(istenilen,miktar[2]) == true then return end
                    say_reward(""..miktar[2].." adet "..item_name(istenilen).." karşılığında,")
                    say_reward(""..item_name(kostum[2]).." adet "..item_name(baslik[2]).." vereceğim.")
                    say_item_vnum(kostum[2])
                    say_item_vnum(baslik[2])
                    say("")
                    say("")
                    say("")
                    say("")
                    local onay = select("Almak İstiyorum","Hayır, Kalsın")
                    if onay == 2 then return end
                    if kostum_baslik.kontrol(istenilen,miktar[2]) == true then return end
                    pc.remove_item(istenilen, miktar[2])
                    pc.give_item2_select(kostum[2])
                    pc.give_item2_select(baslik[2])
                    return
                elseif bilgiler == 3 then
                    if kostum_baslik.kontrol(istenilen,miktar[3]) == true then return end
                    say_reward(""..miktar[3].." adet "..item_name(istenilen).." karşılığında,")
                    say_reward(""..item_name(kostum[3]).." adet "..item_name(baslik[3]).." vereceğim.")
                    say_item_vnum(kostum[3])
                    say_item_vnum(baslik[3])
                    say("")
                    say("")
                    say("")
                    say("")
                    local onay = select("Almak İstiyorum","Hayır, Kalsın")
                    if onay == 2 then return end
                    if kostum_baslik.kontrol(istenilen,miktar[3]) == true then return end
                    pc.remove_item(istenilen, miktar[3])
                    pc.give_item2_select(kostum[3])
                    pc.give_item2_select(baslik[3])
                    return
                elseif bilgiler == 4 then
                    if kostum_baslik.kontrol(istenilen,miktar[4]) == true then return end
                    say_reward(""..miktar[4].." adet "..item_name(istenilen).." karşılığında,")
                    say_reward(""..item_name(kostum[4]).." adet "..item_name(baslik[4]).." vereceğim.")
                    say_item_vnum(kostum[4])
                    say_item_vnum(baslik[4])
                    say("")
                    say("")
                    say("")
                    say("")
                    local onay = select("Almak İstiyorum","Hayır, Kalsın")
                    if onay == 2 then return end
                    if kostum_baslik.kontrol(istenilen,miktar[4]) == true then return end
                    pc.remove_item(istenilen, miktar[4])
                    pc.give_item2_select(kostum[4])
                    pc.give_item2_select(baslik[4])
                    return
                elseif bilgiler == 5 then
                    if kostum_baslik.kontrol(istenilen,miktar[5]) == true then return end
                    say_reward(""..miktar[5].." adet "..item_name(istenilen).." karşılığında,")
                    say_reward(""..item_name(kostum[5]).." adet "..item_name(baslik[5]).." vereceğim.")
                    say_item_vnum(kostum[5])
                    say_item_vnum(baslik[5])
                    say("")
                    say("")
                    say("")
                    say("")
                    local onay = select("Almak İstiyorum","Hayır, Kalsın")
                    if onay == 2 then return end
                    if kostum_baslik.kontrol(istenilen,miktar[5]) == true then return end
                    pc.remove_item(istenilen, miktar[5])
                    pc.give_item2_select(kostum[5])
                    pc.give_item2_select(baslik[5])
                    return
                end
            elseif pc.count_item(istenilen) >= miktar[4] then
                local bilgiler = select(gorevler[1],gorevler[2],gorevler[3],gorevler[4],"Vazgeç ")
                if bilgiler == 5 then return end
                say_title("[WINDOW_SIZE width;350|height;370]")
                say_title(mob_name(npc.get_race()))
                if bilgiler == 1 then
                    if kostum_baslik.kontrol(istenilen,miktar[1]) == true then return end
                    say_reward(""..miktar[1].." adet "..item_name(istenilen).." karşılığında,")
                    say_reward(""..item_name(kostum[1]).." adet "..item_name(baslik[1]).." vereceğim.")
                    say_item_vnum(kostum[1])
                    say_item_vnum(baslik[1])
                    say("")
                    say("")
                    say("")
                    say("")
                    local onay = select("Almak İstiyorum","Hayır, Kalsın")
                    if onay == 2 then return end
                    if kostum_baslik.kontrol(istenilen,miktar[1]) == true then return end
                    pc.remove_item(istenilen, miktar[1])
                    pc.give_item2_select(kostum[1])
                    pc.give_item2_select(baslik[1])
                    return
                elseif bilgiler == 2 then
                    if kostum_baslik.kontrol(istenilen,miktar[2]) == true then return end
                    say_reward(""..miktar[2].." adet "..item_name(istenilen).." karşılığında,")
                    say_reward(""..item_name(kostum[2]).." adet "..item_name(baslik[2]).." vereceğim.")
                    say_item_vnum(kostum[2])
                    say_item_vnum(baslik[2])
                    say("")
                    say("")
                    say("")
                    say("")
                    local onay = select("Almak İstiyorum","Hayır, Kalsın")
                    if onay == 2 then return end
                    if kostum_baslik.kontrol(istenilen,miktar[2]) == true then return end
                    pc.remove_item(istenilen, miktar[2])
                    pc.give_item2_select(kostum[2])
                    pc.give_item2_select(baslik[2])
                    return
                elseif bilgiler == 3 then
                    if kostum_baslik.kontrol(istenilen,miktar[3]) == true then return end
                    say_reward(""..miktar[3].." adet "..item_name(istenilen).." karşılığında,")
                    say_reward(""..item_name(kostum[3]).." adet "..item_name(baslik[3]).." vereceğim.")
                    say_item_vnum(kostum[3])
                    say_item_vnum(baslik[3])
                    say("")
                    say("")
                    say("")
                    say("")
                    local onay = select("Almak İstiyorum","Hayır, Kalsın")
                    if onay == 2 then return end
                    if kostum_baslik.kontrol(istenilen,miktar[3]) == true then return end
                    pc.remove_item(istenilen, miktar[3])
                    pc.give_item2_select(kostum[3])
                    pc.give_item2_select(baslik[3])
                    return
                elseif bilgiler == 4 then
                    if kostum_baslik.kontrol(istenilen,miktar[4]) == true then return end
                    say_reward(""..miktar[4].." adet "..item_name(istenilen).." karşılığında,")
                    say_reward(""..item_name(kostum[4]).." adet "..item_name(baslik[4]).." vereceğim.")
                    say_item_vnum(kostum[4])
                    say_item_vnum(baslik[4])
                    say("")
                    say("")
                    say("")
                    say("")
                    local onay = select("Almak İstiyorum","Hayır, Kalsın")
                    if onay == 2 then return end
                    if kostum_baslik.kontrol(istenilen,miktar[4]) == true then return end
                    pc.remove_item(istenilen, miktar[4])
                    pc.give_item2_select(kostum[4])
                    pc.give_item2_select(baslik[4])
                    return
                end
            elseif pc.count_item(istenilen) >= miktar[3] then
                local bilgiler = select(gorevler[1],gorevler[2],gorevler[3],"Vazgeç ")
                if bilgiler == 4 then return end
                say_title("[WINDOW_SIZE width;350|height;370]")
                say_title(mob_name(npc.get_race()))
                if bilgiler == 1 then
                    if kostum_baslik.kontrol(istenilen,miktar[1]) == true then return end
                    say_reward(""..miktar[1].." adet "..item_name(istenilen).." karşılığında,")
                    say_reward(""..item_name(kostum[1]).." adet "..item_name(baslik[1]).." vereceğim.")
                    say_item_vnum(kostum[1])
                    say_item_vnum(baslik[1])
                    say("")
                    say("")
                    say("")
                    say("")
                    local onay = select("Almak İstiyorum","Hayır, Kalsın")
                    if onay == 2 then return end
                    if kostum_baslik.kontrol(istenilen,miktar[1]) == true then return end
                    pc.remove_item(istenilen, miktar[1])
                    pc.give_item2_select(kostum[1])
                    pc.give_item2_select(baslik[1])
                    return
                elseif bilgiler == 2 then
                    if kostum_baslik.kontrol(istenilen,miktar[2]) == true then return end
                    say_reward(""..miktar[2].." adet "..item_name(istenilen).." karşılığında,")
                    say_reward(""..item_name(kostum[2]).." adet "..item_name(baslik[2]).." vereceğim.")
                    say_item_vnum(kostum[2])
                    say_item_vnum(baslik[2])
                    say("")
                    say("")
                    say("")
                    say("")
                    local onay = select("Almak İstiyorum","Hayır, Kalsın")
                    if onay == 2 then return end
                    if kostum_baslik.kontrol(istenilen,miktar[2]) == true then return end
                    pc.remove_item(istenilen, miktar[2])
                    pc.give_item2_select(kostum[2])
                    pc.give_item2_select(baslik[2])
                    return
                elseif bilgiler == 3 then
                    if kostum_baslik.kontrol(istenilen,miktar[3]) == true then return end
                    say_reward(""..miktar[3].." adet "..item_name(istenilen).." karşılığında,")
                    say_reward(""..item_name(kostum[3]).." adet "..item_name(baslik[3]).." vereceğim.")
                    say_item_vnum(kostum[3])
                    say_item_vnum(baslik[3])
                    say("")
                    say("")
                    say("")
                    say("")
                    local onay = select("Almak İstiyorum","Hayır, Kalsın")
                    if onay == 2 then return end
                    if kostum_baslik.kontrol(istenilen,miktar[3]) == true then return end
                    pc.remove_item(istenilen, miktar[3])
                    pc.give_item2_select(kostum[3])
                    pc.give_item2_select(baslik[3])
                    return
                end
            elseif pc.count_item(istenilen) >= miktar[2] then
                local bilgiler = select(gorevler[1],gorevler[2],"Vazgeç ")
                if bilgiler == 3 then return end
                say_title("[WINDOW_SIZE width;350|height;370]")
                say_title(mob_name(npc.get_race()))
                if bilgiler == 1 then
                    if kostum_baslik.kontrol(istenilen,miktar[1]) == true then return end
                    say_reward(""..miktar[1].." adet "..item_name(istenilen).." karşılığında,")
                    say_reward(""..item_name(kostum[1]).." adet "..item_name(baslik[1]).." vereceğim.")
                    say_item_vnum(kostum[1])
                    say_item_vnum(baslik[1])
                    say("")
                    say("")
                    say("")
                    say("")
                    local onay = select("Almak İstiyorum","Hayır, Kalsın")
                    if onay == 2 then return end
                    if kostum_baslik.kontrol(istenilen,miktar[1]) == true then return end
                    pc.remove_item(istenilen, miktar[1])
                    pc.give_item2_select(kostum[1])
                    pc.give_item2_select(baslik[1])
                    return
                elseif bilgiler == 2 then
                    if kostum_baslik.kontrol(istenilen,miktar[2]) == true then return end
                    say_reward(""..miktar[2].." adet "..item_name(istenilen).." karşılığında,")
                    say_reward(""..item_name(kostum[2]).." adet "..item_name(baslik[2]).." vereceğim.")
                    say_item_vnum(kostum[2])
                    say_item_vnum(baslik[2])
                    say("")
                    say("")
                    say("")
                    say("")
                    local onay = select("Almak İstiyorum","Hayır, Kalsın")
                    if onay == 2 then return end
                    if kostum_baslik.kontrol(istenilen,miktar[2]) == true then return end
                    pc.remove_item(istenilen, miktar[2])
                    pc.give_item2_select(kostum[2])
                    pc.give_item2_select(baslik[2])
                    return
                end
            elseif pc.count_item(istenilen) >= miktar[1] then
                local bilgiler = select(gorevler[1],"Vazgeç ")
                if bilgiler == 2 then return end
                say_title("[WINDOW_SIZE width;350|height;370]")
                say_title(mob_name(npc.get_race()))
                if bilgiler == 1 then
                    if kostum_baslik.kontrol(istenilen,miktar[1]) == true then return end
                    say_reward(""..miktar[1].." adet "..item_name(istenilen).." karşılığında,")
                    say_reward(""..item_name(kostum[1]).." adet "..item_name(baslik[1]).." vereceğim.")
                    say_item_vnum(kostum[1])
                    say_item_vnum(baslik[1])
                    say("")
                    say("")
                    say("")
                    say("")
                    local onay = select("Almak İstiyorum","Hayır, Kalsın")
                    if onay == 2 then return end
                    if kostum_baslik.kontrol(istenilen,miktar[1]) == true then return end
                    pc.remove_item(istenilen, miktar[1])
                    pc.give_item2_select(kostum[1])
                    pc.give_item2_select(baslik[1])
                    return
                end
            end
        end
    end    
end


Güle güle kullanmanız dileğiyle.
​

HOCAM LUAYI EKLEDİM FAKAT Bİ TÜRLÜ OLMUYOR. NPCDEN SEÇİYORUM FAKAT DİREK KAPANIYOR BUNU NASIL ÇÖZEBİLİRİM ACABA
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst