Yeni Quest At Takası

MG Yaşı
2 Ay 1 Gün
Katılım
2 Şub 2026
Konular
224
Mesajlar
363
Tepkime puanı
54
Puan
53
Konum
İstanbul
Oyuncuların her iki tarafta da 25. seviyede olması ve at seviyelerinin en az 1 olması gerekir.
Belirlenen iteme tıklanır ve takas işlemi başlar. Anlaşılan yang yazılır ve karşı tarafa onay gider.
Karşı taraf onayladığında at takası gerçekleşir.
İki versiyonu vardır: seviye sınırlı ve seviye sınırsız (11. seviye at 35. seviye istemez, 21. seviye at 50. seviye istemez).

Kod:
quest SeumonDizayn_at_takas begin
    state start begin
        when 70049.use begin
            say_title("SeumonDizayn - At Takas Sistemi")
            if pc.get_level() < 25 then
                say_reward("Hata: En az 25 seviye olmalısın.")
                return
            end

            local isim = string.gsub(input(), "[^A-Za-z0-9]", "")
            local vid = find_pc_by_name(isim)
            
            if vid == 0 then
                syschat("Hata: Oyuncu çevrimiçi değil.")
                return
            elseif vid == pc.get_vid() then
                syschat("Hata: Kendinle ticaret yapamazsın.")
                return
            elseif pc.get_distance(vid) > 1500 then
                syschat("Hata: Oyuncu çok uzakta.")
                return
            end

            local karsi_vid_ilk = pc.select(vid)
            local karsi_level = pc.get_level()
            local karsi_at_lvl = pc.get_horse_level()
            pc.select(karsi_vid_ilk)

            if karsi_level < 25 then
                syschat("Hata: Karşı taraf en az 25 seviye olmalıdır.")
                return
            end

            local ucret = tonumber(input())
            if ucret == nil or ucret < 0 or ucret > 1999999999 then
                syschat("Hata: Geçersiz miktar.")
                return
            end

            local benim_at = pc.get_horse_level()
            local benim_isim = pc.get_name()
            local benim_vid = pc.get_vid()

            local onay = confirm(vid, benim_isim .. " (At Lv: " .. benim_at .. ") Takas Ücreti: " .. ucret .. " Yang. Kabul mü?", 20)
            
            if onay == CONFIRM_OK then
                local karsi_vid = pc.select(vid)
                local karsi_para = pc.get_gold()
                
                if karsi_para < ucret then
                    pc.select(benim_vid)
                    syschat("Hata: Karşı tarafın parası yetersiz.")
                    return
                end

                pc.change_gold(-ucret)
                pc.set_horse_level(benim_at)
                horse.unride()

                pc.select(benim_vid)
                pc.change_gold(ucret)
                pc.set_horse_level(karsi_at_lvl)
                horse.unride()

                syschat("SeumonDizayn: Takas tamamlandı! +" .. ucret .. " Yang kazandınız.")
                
                pc.select(vid)
                syschat("SeumonDizayn: Takas tamamlandı! -" .. ucret .. " Yang ödendi.")
                pc.select(benim_vid)
            else
                syschat("İstek reddedildi.")
            end
        end
    end
end

SEVİYE SINIRI VAR (11. SEVİYE AT 35. SEVİYE - 21. SEVİYE AT 50. SEVİYE İSTER)


Kod:
quest SeumonDizayn_at_takas begin
    state start begin
        when 70049.use begin
            say_title("SeumonDizayn - At Takas Sistemi")
            if pc.get_level() < 25 then
                say_reward("Hata: En az 25 seviye olmalısın.")
                return
            end

            local isim = string.gsub(input(), "[^A-Za-z0-9]", "")
            local vid = find_pc_by_name(isim)
            
            if vid == 0 then
                syschat("Hata: Oyuncu çevrimiçi değil.")
                return
            elseif vid == pc.get_vid() then
                syschat("Hata: Kendinle ticaret yapamazsın.")
                return
            elseif pc.get_distance(vid) > 1500 then
                syschat("Hata: Oyuncu çok uzakta.")
                return
            end

            local karsi_vid_ilk = pc.select(vid)
            local karsi_level = pc.get_level()
            local karsi_at_lvl = pc.get_horse_level()
            pc.select(karsi_vid_ilk)

            if karsi_level < 25 then
                syschat("Hata: Karşı taraf en az 25 seviye olmalıdır.")
                return
            end

            local ucret = tonumber(input())
            if ucret == nil or ucret < 0 or ucret > 1999999999 then
                syschat("Hata: Geçersiz miktar.")
                return
            end

            local benim_at = pc.get_horse_level()
            local benim_level = pc.get_level()
            local benim_isim = pc.get_name()
            local benim_vid = pc.get_vid()

            if benim_at >= 21 and karsi_level < 50 then
                syschat("Hata: Asker at alabilmek için karşı taraf en az 50 seviye olmalı.")
                return
            elseif benim_at >= 11 and karsi_level < 35 then
                syschat("Hata: Zırhlı at alabilmek için karşı taraf en az 35 seviye olmalı.")
                return
            end

            if karsi_at_lvl >= 21 and benim_level < 50 then
                syschat("Hata: Asker at alabilmek için en az 50 seviye olmalısın.")
                return
            elseif karsi_at_lvl >= 11 and benim_level < 35 then
                syschat("Hata: Zırhlı at alabilmek için en az 35 seviye olmalısın.")
                return
            end

            local onay = confirm(vid, benim_isim .. " (At Lv: " .. benim_at .. ") Takas Ücreti: " .. ucret .. " Yang. Kabul mü?", 20)
            
            if onay == CONFIRM_OK then
                local karsi_vid = pc.select(vid)
                local karsi_para = pc.get_gold()
                
                if karsi_para < ucret then
                    pc.select(benim_vid)
                    syschat("Hata: Karşı tarafın parası yetersiz.")
                    return
                end

                pc.change_gold(-ucret)
                pc.set_horse_level(benim_at)
                horse.unride()

                pc.select(benim_vid)
                pc.change_gold(ucret)
                pc.set_horse_level(karsi_at_lvl)
                horse.unride()

                syschat("SeumonDizayn: Takas tamamlandı! +" .. ucret .. " Yang kazandınız.")
                
                pc.select(vid)
                syschat("SeumonDizayn: Takas tamamlandı! -" .. ucret .. " Yang ödendi.")
                pc.select(benim_vid)
            else
                syschat("İstek reddedildi.")
            end
        end
    end
end
 
Geri
Üst