示例#1
0
    public bool SetValues(MonsterData monsterData, GameWebAPI.RespDataMA_GetWorldDungeonExtraEffectM.WorldDungeonExtraEffectM[] gimmickEffectArray)
    {
        bool result = false;
        int  changeValue;
        int  num;

        ExtraEffectUtil.GetExtraEffectFluctuationValue(out changeValue, out num, monsterData, gimmickEffectArray, EffectStatusBase.ExtraEffectType.Hp, 0, true);
        this.SetParameter(monsterData.userMonster.hp, changeValue, this.hpLabel, this.hpGimmickLabel, this.hpArrow);
        if (num != 0)
        {
            result = true;
        }
        ExtraEffectUtil.GetExtraEffectFluctuationValue(out changeValue, out num, monsterData, gimmickEffectArray, EffectStatusBase.ExtraEffectType.Atk, 0, true);
        this.SetParameter(monsterData.userMonster.attack, changeValue, this.attackLabel, this.attackGimmickLabel, this.attackArrow);
        if (num != 0)
        {
            result = true;
        }
        ExtraEffectUtil.GetExtraEffectFluctuationValue(out changeValue, out num, monsterData, gimmickEffectArray, EffectStatusBase.ExtraEffectType.Def, 0, true);
        this.SetParameter(monsterData.userMonster.defense, changeValue, this.defenseLabel, this.defenseGimmickLabel, this.defenseArrow);
        if (num != 0)
        {
            result = true;
        }
        ExtraEffectUtil.GetExtraEffectFluctuationValue(out changeValue, out num, monsterData, gimmickEffectArray, EffectStatusBase.ExtraEffectType.Satk, 0, true);
        this.SetParameter(monsterData.userMonster.spAttack, changeValue, this.magicAttackLabel, this.magicAttackGimmickLabel, this.magicAttackArrow);
        if (num != 0)
        {
            result = true;
        }
        ExtraEffectUtil.GetExtraEffectFluctuationValue(out changeValue, out num, monsterData, gimmickEffectArray, EffectStatusBase.ExtraEffectType.Sdef, 0, true);
        this.SetParameter(monsterData.userMonster.spDefense, changeValue, this.magicDefenceLabel, this.magicDefenseGimmickLabel, this.magicDefenseArrow);
        if (num != 0)
        {
            result = true;
        }
        ExtraEffectUtil.GetExtraEffectFluctuationValue(out changeValue, out num, monsterData, gimmickEffectArray, EffectStatusBase.ExtraEffectType.Speed, 0, true);
        this.SetParameter(monsterData.userMonster.speed, changeValue, this.speedLabel, this.speedGimmickLabel, this.speedArrow);
        if (num != 0)
        {
            result = true;
        }
        this.luckLabel.text = monsterData.userMonster.luck;
        if (!this.disableFriendshipMaxValue)
        {
            this.friendshipLabel.text = MonsterFriendshipData.GetMaxFriendshipFormat(monsterData.userMonster.friendship, monsterData.monsterMG.growStep);
        }
        else
        {
            this.friendshipLabel.text = monsterData.userMonster.friendship;
        }
        return(result);
    }
 private static bool CheckExtraStageParams(MonsterData monsterData, GameWebAPI.RespDataMA_GetWorldDungeonExtraEffectM.WorldDungeonExtraEffectM[] effectArray)
 {
     EffectStatusBase.ExtraEffectType[] array = new EffectStatusBase.ExtraEffectType[]
     {
         EffectStatusBase.ExtraEffectType.Atk,
         EffectStatusBase.ExtraEffectType.Def,
         EffectStatusBase.ExtraEffectType.Hp,
         EffectStatusBase.ExtraEffectType.Speed,
         EffectStatusBase.ExtraEffectType.Satk,
         EffectStatusBase.ExtraEffectType.Sdef,
         EffectStatusBase.ExtraEffectType.SkillPower,
         EffectStatusBase.ExtraEffectType.SkillHit
     };
     foreach (EffectStatusBase.ExtraEffectType extraEffectType in array)
     {
         int num  = 0;
         int num2 = 0;
         if (extraEffectType == EffectStatusBase.ExtraEffectType.SkillPower || extraEffectType == EffectStatusBase.ExtraEffectType.SkillHit)
         {
             for (int j = 1; j <= 3; j++)
             {
                 ExtraEffectUtil.GetExtraEffectFluctuationValue(out num, out num2, monsterData, effectArray, extraEffectType, j, false);
                 if (num2 != 0)
                 {
                     return(true);
                 }
             }
         }
         else
         {
             ExtraEffectUtil.GetExtraEffectFluctuationValue(out num, out num2, monsterData, effectArray, extraEffectType, 0, false);
             if (num2 != 0)
             {
                 return(true);
             }
         }
     }
     return(false);
 }
    private GameWebAPI.RespDataMA_GetWorldDungeonExtraEffectM.WorldDungeonExtraEffectM[] SetStageGimmick(string StageID, string DungeonID)
    {
        GameWebAPI.RespDataMA_GetWorldDungeonExtraEffectM.WorldDungeonExtraEffectM[] array = DataMng.Instance().StageGimmick.GetExtraEffectDataList(StageID, DungeonID).ToArray();
        array = array.Where((GameWebAPI.RespDataMA_GetWorldDungeonExtraEffectM.WorldDungeonExtraEffectM item) => ExtraEffectUtil.CheckExtraStageParams(this.Data, item)).ToArray <GameWebAPI.RespDataMA_GetWorldDungeonExtraEffectM.WorldDungeonExtraEffectM>();
        int num  = 0;
        int num2 = 0;

        ExtraEffectUtil.GetExtraEffectFluctuationValue(out num, out num2, this.Data, array, EffectStatusBase.ExtraEffectType.SkillPower, 1, true);
        if (num2 == 1)
        {
            this.gimmickSkillActionUp.SetActive(true);
        }
        else if (num2 == -1)
        {
            this.gimmickSkillActionDown.SetActive(true);
        }
        ExtraEffectUtil.GetExtraEffectFluctuationValue(out num, out num2, this.Data, array, EffectStatusBase.ExtraEffectType.SkillHit, 1, true);
        if (num2 == 1)
        {
            this.gimmickSkillActionUp.SetActive(true);
        }
        else if (num2 == -1)
        {
            this.gimmickSkillActionDown.SetActive(true);
        }
        ExtraEffectUtil.GetExtraEffectFluctuationValue(out num, out num2, this.Data, array, EffectStatusBase.ExtraEffectType.SkillPower, 2, true);
        if (num2 == 1)
        {
            this.gimmickSkillSucceedUp.SetActive(true);
        }
        else if (num2 == -1)
        {
            this.gimmickSkillSucceedDown.SetActive(true);
        }
        ExtraEffectUtil.GetExtraEffectFluctuationValue(out num, out num2, this.Data, array, EffectStatusBase.ExtraEffectType.SkillHit, 2, true);
        if (num2 == 1)
        {
            this.gimmickSkillSucceedUp.SetActive(true);
        }
        else if (num2 == -1)
        {
            this.gimmickSkillSucceedDown.SetActive(true);
        }
        if (this.gimmickSkillSucceedUp2 == null || this.gimmickSkillSucceedDown2 == null)
        {
            return(array);
        }
        ExtraEffectUtil.GetExtraEffectFluctuationValue(out num, out num2, this.Data, array, EffectStatusBase.ExtraEffectType.SkillPower, 3, true);
        if (num2 == 1)
        {
            this.gimmickSkillSucceedUp2.SetActive(true);
        }
        else if (num2 == -1)
        {
            this.gimmickSkillSucceedDown2.SetActive(true);
        }
        ExtraEffectUtil.GetExtraEffectFluctuationValue(out num, out num2, this.Data, array, EffectStatusBase.ExtraEffectType.SkillHit, 3, true);
        if (num2 == 1)
        {
            this.gimmickSkillSucceedUp2.SetActive(true);
        }
        else if (num2 == -1)
        {
            this.gimmickSkillSucceedDown2.SetActive(true);
        }
        return(array);
    }