コード例 #1
0
ファイル: BattleLogic.cs プロジェクト: yuto1492/mon_rogelike
        public static void SetState(string type, BattlerSerializable battler, int turn = 0)
        {
            var state = battler.status.Find(x => x.type == type);

            if (state == null)
            {
                BattlerSerializableStatus battlerSerializableStatus = new BattlerSerializableStatus();
                battlerSerializableStatus.type  = type;
                battlerSerializableStatus.value = 1;
                battlerSerializableStatus.turn  = turn;
                battler.status.Add(battlerSerializableStatus);
                BattlePresenter.GetInstance().BattlerSpriteModel.GetData(battler.uniqId).Status.OnNext(Unit.Default);
            }
        }
コード例 #2
0
 private void StateIconValueRefresh(StateStruct stateStruct, BattlerSerializableStatus state)
 {
     //数値表示させる場合
     if (StatusDictionary.IsValueView(state.type))
     {
         var text = stateStruct.StateTransform.Find("Value");
         text.GetComponent <TextMeshProUGUI>().text  = state.value.ToString();
         text.GetComponent <TextMeshProUGUI>().color = StatusDictionary.StatusValueColor(state.type);
     }
     //ターン数表示させる場合
     if (StatusDictionary.IsTurnStatus(state.type))
     {
         var text = stateStruct.StateTransform.Find("TurnValue");
         text.GetComponent <TextMeshProUGUI>().text = state.turn.ToString();
     }
 }
コード例 #3
0
ファイル: BattleLogic.cs プロジェクト: yuto1492/mon_rogelike
        private static void StatusDamage(SkillDamage damage, BattlerSerializable battler)
        {
            var status = battler.status.Find(x => x.type == damage.valueTarget);

            if (status == null)
            {
                BattlerSerializableStatus battlerSerializableStatus = new BattlerSerializableStatus();
                battlerSerializableStatus.type  = damage.valueTarget;
                battlerSerializableStatus.value = damage.damage;
                if (StatusDictionary.IsTurnStatus(damage.valueTarget))
                {
                    battlerSerializableStatus.turn = damage.turn;
                }
                battler.status.Add(battlerSerializableStatus);
                BattlePresenter.GetInstance().BattlerSpriteModel.GetData(battler.uniqId).Status.OnNext(Unit.Default);
            }
            else
            {
                status.value += damage.damage;
            }
        }
コード例 #4
0
 private static void StateTurnCount(BattlerSerializableStatus state)
 {
     state.turn -= 1;
 }