Exemplo n.º 1
0
    public void QuestSkillCalculate(int skillID, GameEntityControllRemote opSender, GameEntityControllRemote opTarget)
    {
        Skill skill = GetSkillByID(skillID);

        if (skill == null)
        {
            HDebug.Error("null skill " + skill);
            return;
        }
        opSender.DoReleaseSkill(skill);
        calculateResult result = calculateSkill(skill, opSender, opTarget);

        if ((result.type & resultEnum.enum1) == resultEnum.enum1)
        {
            opTarget.CaughtDamage(result.damagePart.finalDamage, DamageTypeEnum.ColdWeapon);
        }
        if ((result.type & resultEnum.enum2) == resultEnum.enum2)
        {
        }
    }
Exemplo n.º 2
0
    public void QuestSkillCalculate(int skillID, GameEntity sender)
    {
        Skill skill = GetSkillByID(skillID);

        if (skill == null)
        {
            HDebug.Error("null skill " + skill);
            return;
        }

        //因为策划的因素,在demo演示阶段正式立项前均采用最快法则完成技能处理
        switch (skillID)
        {
        case 1:
            pingA(sender);
            break;

        case 2:
            addHujia(skill, sender);
            break;

        case 3:
            becomeInvisible(skill, sender);
            break;

        case 4:
            doLeidianshu(sender);
            break;

        case 5:
            doZhaohuan(skill, sender);
            break;

        case 6:
            doShanxian(skill, sender);
            break;
        }
    }