/// <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); } }
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}"; }
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); } }); }
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); } } } } }
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 T GetStatus() { return(StatusDictionary.FirstOrDefault(x => x.Value == Status).Key); }
private static void StateTurnDelete(List <BattlerSerializableStatus> statuses) { statuses.RemoveAll(x => StatusDictionary.IsTurnStatus(x.type) && x.turn <= 0); }