emirhanHCL 1
emirhanHCL
kralhakan2009 1
kralhakan2009
Vahsi Uzman 1
Vahsi Uzman
farkmt2official 1
farkmt2official
mannaxxx 1
mannaxxx
Bvural41 1
Bvural41
Agora Metin2 1
Agora Metin2
Hikaye Ekle

üzerindeki zırh kontrolü

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
merhaba bir quest yazıyorum ve şu kuralı koymam gerekiyor.

eğer kişi görevdeyken zırhını çıkarır veya değiştirirse görev iptal olacak. aynı şekilde kostumude.

local WEAR_COSTUME_BODY_INDEX = 19
if pc.get_wear(WEAR_COSTUME_BODY_INDEX) == nil and pc.getqf("event") == 1 then
pc.remove_item(50180,50)
chat(" aaaaaaaaaaaaaa")
pc.setqf("event",0)
set_state(start)
elseif pc.get_armor() == 0 and pc.getqf("state") == 1 then
pc.remove_item(50180,50)
chat(" aaaaaa")
pc.setqf("state",0)
set_state(start)


böyle yaptım çalışıyor. Ancak zırhı veya kostumu çıkarınca görev iptal ouyor. başka bir zırh veya kostumle değişince olmuyor.
 
Kod:
    questlua_pc.cpp açılır  müsait bir yere eklenir.
    
    int pc_equip_slot0(lua_State* L)
    {
        LPCHARACTER ch = CQuestManager::instance().GetCurrentCharacterPtr();

        LPITEM item = ch->GetInventoryItem(lua_tonumber(L, 1));
        lua_pushboolean(L, (item)?ch->EquipItem(item):false);
        return 1;
    }

    int pc_unequip_slot0(lua_State* L)
    {
        LPCHARACTER ch = CQuestManager::instance().GetCurrentCharacterPtr();

        LPITEM item = ch->GetWear(lua_tonumber(L, 1));
        lua_pushboolean(L, (item)?ch->UnequipItem(item):false);
        return 1;
    }
    
    en alta inilir ve müsait bir yere eklenir.
    
                { "equip_slot0",        pc_equip_slot0        },
            { "unequip_slot0",        pc_unequip_slot0    },
            
quest_function listesine

pc.equip_slot0
pc.unequip_slot0

eklenir son olarak quest içinde kullanımı için

pc.equip_slot0(1)
pc.unequip_slot0(1)

sayıları arttırabilirsiniz işinize yarar umarım.
 
Kod:
    questlua_pc.cpp açılır  müsait bir yere eklenir.
   
    int pc_equip_slot0(lua_State* L)
    {
        LPCHARACTER ch = CQuestManager::instance().GetCurrentCharacterPtr();

        LPITEM item = ch->GetInventoryItem(lua_tonumber(L, 1));
        lua_pushboolean(L, (item)?ch->EquipItem(item):false);
        return 1;
    }

    int pc_unequip_slot0(lua_State* L)
    {
        LPCHARACTER ch = CQuestManager::instance().GetCurrentCharacterPtr();

        LPITEM item = ch->GetWear(lua_tonumber(L, 1));
        lua_pushboolean(L, (item)?ch->UnequipItem(item):false);
        return 1;
    }
   
    en alta inilir ve müsait bir yere eklenir.
   
                { "equip_slot0",        pc_equip_slot0        },
            { "unequip_slot0",        pc_unequip_slot0    },
           
quest_function listesine

pc.equip_slot0
pc.unequip_slot0

eklenir son olarak quest içinde kullanımı için

pc.equip_slot0(1)
pc.unequip_slot0(1)

sayıları arttırabilirsiniz işinize yarar umarım.
teşekkürler deneyeceğim çok sağol
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

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

Geri
Üst