Example #1
0
    private void ActivateBossResult(int i, ref BossStatChanger changer)
    {
        SingleContract contract = contracts[i];

        switch (contract.ResultClass)
        {
        case ResultClass.BossHealth:
            changer.changedHealthAmount += (int)contract.ResultValue;
            PlayerStatus.instance.AddEffectQueue(new ContractEffect(ResultClass.BossHealth, contract.ResultValue, false));
            break;
        }
    }
Example #2
0
    private BossStatChanger BossContractCheck()
    {
        BossStatChanger changer = new BossStatChanger();

        for (int i = 0; i < contracts.Count; i++)
        {
            SingleContract contract = contracts[i];

            if (contract.ConditionClass != ConditionClass.MaxHealth)
            {
                continue;
            }
            if (contract.isAgree == false)
            {
                continue;
            }

            switch (contract.ConditionType)
            {
            case ConditionType.Less:
                if (PlayerStatus.instance.MaxHealth < contract.ConditionValue)
                {
                    ActivateBossResult(i, ref changer);
                }
                break;

            case ConditionType.Greater:
                if (PlayerStatus.instance.MaxHealth >= contract.ConditionValue)
                {
                    ActivateBossResult(i, ref changer);
                }
                break;
            }
        }

        return(changer);
    }