Пример #1
0
 /// <summary>
 /// ダメージ処理
 /// </summary>
 /// <param name="damage"></param>
 /// <param name="battler"></param>
 public static void SkillDamage(int damage, BattlerSerializable battler)
 {
     Damage(damage, battler);
     //睡眠状態なら睡眠状態を解除する
     if (DeadCheck(battler) == false && StatusDictionary.IsSleep(battler))
     {
         RemoveStatus(StatusConsts.SLEEP, battler);
     }
 }
Пример #2
0
        public FlightsService()
        {
            Airlines = new AirlineDictionary();
            Airports = new AirportDictionary();
            Statuses = new StatusDictionary();

            _serviceUrl = "http://flydata.avinor.no/XmlFeed.asp?TimeFrom={0}&TimeTo={1}&airport={2}";
            _lastUpdate = "&lastUpdate=2009-03-10T15:03:00";
            _direction = "&direction={0}";
        }
Пример #3
0
        public FlightsService()
        {
            Airlines = new AirlineDictionary();
            Airports = new AirportDictionary();
            Statuses = new StatusDictionary();

            _serviceUrl = "http://flydata.avinor.no/XmlFeed.asp?TimeFrom={0}&TimeTo={1}&airport={2}";
            _lastUpdate = "&lastUpdate=2009-03-10T15:03:00";
            _direction  = "&direction={0}";
        }
Пример #4
0
        public FlightsService()
        {
            Airlines = new AirlineDictionary();
            Airports = new AirportDictionary();
            Statuses = new StatusDictionary();

            _airlineService = new AirlineNamesService();
            _airportService = new AirportNamesService();
            _statusService  = new StatusService();

            _resourceUrl = "XmlFeed.asp?TimeFrom={0}&TimeTo={1}&airport={2}";
        }
 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();
     }
 }
        private void AddStatusIcon(int uniqId)
        {
            var battler = BattlerDictionary.GetBattlerByUniqId(uniqId);
            var sprite  = GetSprite(uniqId);

            battler.status.ForEach(state =>
            {
                //まだ画面にステータスを表示させてない場合
                var stateStruct = sprite.Statuses.Find(f => f.Status.type == state.type);
                if (stateStruct == null)
                {
                    //ステータス表示させる必要がある時のみ
                    if (StatusDictionary.IsViewStatus(state.type))
                    {
                        StateStruct addStateStruct = new StateStruct
                        {
                            Status         = state,
                            StateTransform = Object.Instantiate((GameObject)Resources.Load("Prefabs/Battle/StateIcon"))
                                             .transform
                        };
                        var icon = addStateStruct.StateTransform.transform;

                        icon.GetComponent <Image>().sprite = Resources.Load <Sprite>("Sprites/Icons/Status/" + StatusDictionary.StatusIconName(state.type));

                        /*icon.GetComponent<Image>().sprite =
                         *  AssetDatabase.LoadAssetAtPath<Sprite>("Assets/Resources/Sprites/Icons/Status/" +
                         *                                        StatusDictionary.StatusIconName(state.type));*/


                        addStateStruct.StateTransform.transform.SetParent(sprite.StatusTransform,
                                                                          false);
                        sprite.Statuses.Add(addStateStruct);
                        StateIconValueRefresh(addStateStruct, state);
                        AddStateAnimation(uniqId, addStateStruct);
                    }
                }
                //すでに画面に表示させている場合は更新する
                else
                {
                    StateIconValueRefresh(stateStruct, state);
                }
            });
        }
Пример #7
0
 private static void WakeUpCheck(List <SkillDamages> damageses)
 {
     foreach (var damagese in damageses)
     {
         var battler = BattlerDictionary.GetBattlerByUniqId(damagese.targetUniqId);
         if (StatusDictionary.IsSleep(battler))
         {
             if (damagese.isHit)
             {
                 //HPにダメージを与えたか検索
                 var damage = damagese.SkillDamage.Find(x => x.valueTarget == SkillValueTarget.HP);
                 if (damage != null && damage.damage > 0)
                 {
                     RemoveStatus(StatusConsts.SLEEP, battler);
                 }
             }
         }
     }
 }
Пример #8
0
        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;
            }
        }
 public DesignTimeFlightsService()
 {
     Airports = new AirportDictionary();
     Airlines = new AirlineDictionary();
     Statuses = new StatusDictionary();
 }
 public DesignTimeFlightsService()
 {
     Airports = new AirportDictionary();
     Airlines = new AirlineDictionary();
     Statuses = new StatusDictionary();
 }
Пример #11
0
 public T GetStatus()
 {
     return(StatusDictionary.FirstOrDefault(x => x.Value == Status).Key);
 }
Пример #12
0
 private static void StateTurnDelete(List <BattlerSerializableStatus> statuses)
 {
     statuses.RemoveAll(x => StatusDictionary.IsTurnStatus(x.type) && x.turn <= 0);
 }