Jump to content

Skills over P - Skill loop problem


Recommended Posts

Hi guys!

Today i successfully installed new level of skills (S). I already resolved problem with effects that player Cast, but i want to change Loop effect as well.

I want to, that Aura of Sword should have different colors on 1, M1, G1, P1 and S.
Playersettingmodule.py:

chrmgr.RegisterEffect(chrmgr.EFFECT_WEAPON+1, "equip_right_hand", "d:/ymir work/pc/warrior/effect/geom_sword_loop.mse")
chrmgr.RegisterEffect(chrmgr.EFFECT_WEAPON+2, "equip_right_hand", "d:/ymir work/pc/warrior/effect/geom_spear_loop.mse")

But Metin2 basically work just with one kind of effect on every level of skill.

Please, can someone help me to separate this loop effect? I want to do it for Aura and some other look effect like Enchanted Blade for example.

I have no problem to pay for it!!

-

Sorry for my english.

Best Regards,

Jacob

Link to comment
Share on other sites

yea, i already resolved aura loop with this:

Spoiler



void CInstanceBase::__Warrior_SetGeomgyeongAffect(bool isVisible)
{
    if (isVisible)
    {
        if (IsWearingDress())
            return;

        if (m_kWarrior.m_dwGeomgyeongEffect)
            __DetachEffect(m_kWarrior.m_dwGeomgyeongEffect);

        m_GraphicThingInstance.SetReachScale(1.5f);
        UINT iEffect = EFFECT_WEAPON + WEAPON_ONEHAND;
        if (m_GraphicThingInstance.IsTwoHandMode())
        {
            iEffect = EFFECT_WEAPON + WEAPON_TWOHAND;
            DWORD dwSkillGrade = 0, dwSlotIndex = 0;
            if (CPythonPlayer::Instance().GetSkillSlotIndex(4, &dwSlotIndex))
            {
                if (dwSlotIndex < SKILL_MAX_NUM)
                {
                    dwSkillGrade = CPythonPlayer::Instance().GetSkillGrade(dwSlotIndex);
                    if (dwSkillGrade == 0)
                        iEffect = EFFECT_AFFECT + 50;
                    else if (dwSkillGrade == 1)
                        iEffect = EFFECT_AFFECT + 51;
                    else if (dwSkillGrade == 2)
                        iEffect = EFFECT_AFFECT + 52;
                    else if (dwSkillGrade == 3)
                        iEffect = EFFECT_AFFECT + 53;
                    else if (dwSkillGrade == 4)
                        iEffect = EFFECT_AFFECT + 54;
                }
            }
        }
        else
        {
            DWORD dwSkillGrade = 0, dwSlotIndex = 0;
            if (CPythonPlayer::Instance().GetSkillSlotIndex(4, &dwSlotIndex))
            {
                if (dwSlotIndex < SKILL_MAX_NUM)
                {
                    dwSkillGrade = CPythonPlayer::Instance().GetSkillGrade(dwSlotIndex);
                    if (dwSkillGrade == 0)
                        iEffect = EFFECT_AFFECT + 50;
                    else if (dwSkillGrade == 1)
                        iEffect = EFFECT_AFFECT + 51;
                    else if (dwSkillGrade == 2)
                        iEffect = EFFECT_AFFECT + 52;
                    else if (dwSkillGrade == 3)
                        iEffect = EFFECT_AFFECT + 53;
                    else if (dwSkillGrade == 4)
                        iEffect = EFFECT_AFFECT + 54;
                }
            }
        }

        m_kWarrior.m_dwGeomgyeongEffect = __AttachEffect(iEffect);
    }
    else
    {
        m_GraphicThingInstance.SetReachScale(1.0f);

        __DetachEffect(m_kWarrior.m_dwGeomgyeongEffect);
        m_kWarrior.m_dwGeomgyeongEffect = 0;
    }
}


 

Now it's ok for aura. But how can i do something like that for other spells, which are using loop. Like Enchanted Blade, Dragon's Strenght and etc.
Because i did not find void like that for other spells, just for aura.

  • Good 1
  • Love 1
Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

Announcements



×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.