Eşya Kontrollü Bugsuz Karakter Değiştirme Yüzüğü

therasmus

Üye
Üye
Mesaj
119
Çözümler
10
Beğeni
67
Puan
729
Ticaret Puanı
0
Merhaba arkadaşlar,

Zamanında arayıp bulamamıştım kendim düzenledim ve kullanılabilecek hale getirdim. Bu questi sorunsuz kullanabilmeniz için src kısmına bi kaç ekleme yapmanız gerekiyor. Yaptıktan sonra gönül rahatlığı ile kullanabilirsiniz.

game/src/questlua_pc.cpp gir müsait bir yere ekle;

C++:
    int pc_change_sex_degisemen(lua_State * L)
    {
        LPCHARACTER ch = CQuestManager::instance().GetCurrentCharacterPtr();
        for (BYTE i = 0; i < WEAR_MAX_NUM; i++) {
            if (ch->GetWear(i))
            {
                lua_pushboolean(L, false);
                return 1;
            }
        }
        lua_pushboolean(L, true);
        return 1;
    }
    int pc_ticaret(lua_State * L)
    {
        LPCHARACTER ch = CQuestManager::instance().GetCurrentCharacterPtr();
        lua_pushboolean(L, ch->GetExchange() ? 1 : 0);
        return 1;
    }

    int pc_pazar(lua_State * L)
    {
        LPCHARACTER ch = CQuestManager::instance().GetCurrentCharacterPtr();
        lua_pushboolean(L, ch->GetMyShop() ? 1 : 0);
        return 1;
    }

    int pc_npc_pazar(lua_State * L)
    {
        LPCHARACTER ch = CQuestManager::instance().GetCurrentCharacterPtr();
        lua_pushboolean(L, ch->GetShopOwner() ? 1 : 0);
        return 1;
    }

    int pc_depo(lua_State * L)
    {
        LPCHARACTER ch = CQuestManager::instance().GetCurrentCharacterPtr();
        lua_pushboolean(L, ch->IsOpenSafebox() ? 1 : 0);
        return 1;
    }

game/src/questlua_pc.cpp arat;

C++:
            { "change_empire",            pc_change_empire    },

altına ekle;

C++:
            { "change_sex_degisemen",    pc_change_sex_degisemen    },
            { "ticaret",        pc_ticaret            },
            { "pazar",            pc_pazar            },
            { "npc_pazar",        pc_npc_pazar        },
            { "depo",            pc_depo                },

/usr/game/share/locale/turkey/quest gir quest_functions aç müsait bi yere ekle


Lua (Quest):
pc.change_sex_degisemen
pc.ticaret
pc.pazar
pc.depo
pc.npc_pazar

quest dosyası oluştur içine yapıştır kaydet okut; (70007 kodunu değiştirerek istediğiniz iteme verebilirsiniz.)

Lua (Quest):
quest karakter_yuzugu begin
    state start begin
        when 70007.use begin
            if pc.count_item ( 70007 ) < 1 then
                say_title ( " Bug Kontrol " )
                say( " Envanterindeki nesne kaybolmuş. " )
                return
            end
              
            if pc.ticaret() or pc.pazar() or pc.npc_pazar() or pc.depo() then
                syschat("Herhangi bir ticaret ekranı açık iken bu itemi kullanamazsınız.")
                return
            end

            if pc.change_sex_degisemen() == false then
                say_title("Karakter Değiştirme Yüzüğü ")
                say_reward("Pet, kostüm, binek de dahil olmak üzere üstünde ne varsa çıkartmalısın.")
                say("")
                return;
            end
            
            say_title("Karakter Değiştirme Yüzüğü ")
            say("Lütfen karakter değişimi yapmadan önce")
            say("tüm itemlerinizi çıkarınız.")
            say("NOT: Yüzük kullanıldıktan sonra silinir.")
            local s = select("Savaşçı ","Ninja ","Sura ","Şaman ","Kapat ")

            if pc.count_item ( 70007 ) < 1 then
                say_title ( "Bug Kontrol" )
                say( "Bug denediniz." )
                return
            end

            if s == 1 then ---------------- Savasci karakter
                say_title("Karakter Değiştirme Yüzüğü ")
                say_reward ( "Savaşçı karakterini mi tercih ediyorsun? ")
                say("Seçim senin elinde sadece bir kez seçebilirsin...")
                say("UNUTMA! BU İŞLEM SONUNDA SKİLLERİN DE SIFIRLANACAK.")
                local b = select("Evet","Hayır ")
                
                if pc.get_job() == 0 then
                    say_title("Karakter Değiştirme Yüzüğü ")
                    say("Zaten seçtiğin karaktersin. Lütfen başka karakter seç.")
                    return
                end

                if b == 1 then
                    pc.polymorph (4 , 36000000000)
                    setskin ( NOWINDOW )
                    pc . change_sex ( )
                    pc . polymorph ( "20032" )
                    pc.remove_item ( 70007 )
                    pc.clear_skill()
                    pc.set_skill_group(0)
                    set_quest_state("skill_group","run")
                    pc.warp(469300,964200)
                end
            end

            if s == 2 then ---------------- Ninja karakter
                say_title("Karakter Değiştirme Yüzüğü ")
                say_reward ( "Ninja karakterimi tercih ediyorsun? ")
                say("Seçim senin elinde sadece bir kez seçebilirsin...")
                say("UNUTMA! BU İŞLEM SONUNDA SKİLLERİN DE SIFIRLANACAK.")
                local b = select("Evet","Hayır ")
                
                if pc.get_job() == 1 then
                    say_title("Karakter Değiştirme Yüzüğü ")
                    say("Zaten seçtiğin karaktersin. Lütfen başka karakter seç.")
                    return
                end
                
                if b == 1 then
                    pc.polymorph(5 , 36000000000)
                    setskin( NOWINDOW )
                    pc.change_sex( )
                    pc.polymorph( "20032" )
                    pc.remove_item ( 70007 )
                    pc.clear_skill()
                    pc.set_skill_group(0)
                    set_quest_state("skill_group","run")
                    pc.warp(469300,964200)
                end
            end

            if s == 3 then ---------------- Sura karakter
                say_title("Karakter Değiştirme Yüzüğü ")
                say_reward ( "Sura karakterimi tercih ediyorsun? ")
                say("Seçim senin elinde sadece bir kez seçebilirsin...")
                say("UNUTMA! BU İŞLEM SONUNDA SKİLLERİN DE SIFIRLANACAK.")
                local b = select("Evet","Hayır ")

                if pc.get_job() == 2 then
                    say_title("Karakter Değiştirme Yüzüğü ")
                    say("Zaten seçtiğin karaktersin. Lütfen başka karakter seç.")
                    return
                end
                
                if b == 1 then
                    pc.polymorph(6 , 36000000000)
                    setskin( NOWINDOW )
                    pc.change_sex( )
                    pc.polymorph( "20032" )
                    pc.remove_item( 70007 )
                    pc.clear_skill()
                    pc.set_skill_group(0)
                    set_quest_state("skill_group","run")
                    pc.warp(469300,964200)
                end
            end

            if s == 4 then ---------------- Saman karakter
                say_title("Karakter Değiştirme Yüzüğü ")
                say_reward ( "Şaman karakterimi tercih ediyorsun? ")
                say("Seçim senin elinde sadece bir kez seçebilirsin...")
                say("UNUTMA! BU İŞLEM SONUNDA SKİLLERİN DE SIFIRLANACAK.")
                local b = select("Evet","Hayır ")
                
                if pc.get_job() == 3 then
                    say_title("Karakter Değiştirme Yüzüğü ")
                    say("Zaten seçtiğin karaktersin. Lütfen başka karakter seç.")
                    return
                end
                
                if b == 1 then
                    pc.polymorph (7 , 36000000000)
                    setskin ( NOWINDOW )
                    pc . change_sex ( )
                    pc . polymorph ( "20032" )
                    pc.remove_item ( 70007 )
                    pc.clear_skill()
                    pc.set_skill_group(0)
                    set_quest_state("skill_group","run")
                    pc.warp(469300,964200)
                end
            end
        end
    end
end

src kısmı da olduğu için bu bölüme açtım. yanlışsa taşınabilir. iyi kullanımlar dilerim.
 
En son bir moderatör tarafından düzenlenmiş:
Siteye sunduğunuz katkılar için teşekkürler. :)
Quest kodlarının daha okunaklı olması için girinti klavuzlarını ayarladım.
 
Paylaşım için teşekkürler
 
Arkadaşlar eğer bir içeriği beğendiyseniz “beğen” tuşuna basabilirsiniz. Yorum kısmını genelde fikir beyan etmek için kullanabilirsiniz. :)
 
Karakter yerine cinsiyet değiştiriyor aynı sorunu yaşayan başka biri var mı ?
 
questi doğru okuttuğunuza emin misiniz?

yüzüğü kullandığınızda

say("Lütfen karakter değişimi yapmadan önce")
say("tüm itemlerinizi çıkarınız.")
say("NOT: Yüzük kullanıldıktan sonra silinir.")

bu yazıları görüyo musunuz? temiz bi yüzükte deneyin isterseniz. bi ihtimal çakışma yapmış olabilir
 
questi doğru okuttuğunuza emin misiniz?

yüzüğü kullandığınızda

say("Lütfen karakter değişimi yapmadan önce")
say("tüm itemlerinizi çıkarınız.")
say("NOT: Yüzük kullanıldıktan sonra silinir.")

bu yazıları görüyo musunuz? temiz bi yüzükte deneyin isterseniz. bi ihtimal çakışma yapmış olabilir
evet hocam görüyorum
 

Dosya Eklentileri

  • kkkkk.png
    kkkkk.png
    1,2 MB · Gösterim: 262
Geri
Üst