public void Run(BattleResult result, Transform parent) { this.textField.text = ""; // -- Observable.EveryUpdate().Subscribe(_ => { transform.position = Vector2.MoveTowards( transform.position, parent.position, SPEED * Time.deltaTime ); }).AddTo(this); // -- var OnTriggerEnterPlayer = this.OnTriggerEnter2DAsObservable() .Select(collision => collision.tag) .Where(tag => tag == "Player") .Subscribe(_ => { // todo: あとで適当な文章に入れ替える this.textField.text = result.ToString(); GetComponent <UnityEngine.UI.Image>().enabled = false; var handle = SoundManager.Instance.PlaySe(GetVoiceName(result)); if (result == BattleResult.Tie) { handle.panning = 0.5f; } else { handle.panning = parent.GetComponent <PlayerInput>().GetSide() == Side.Right ? 1f : -1f; } // Debug.Log(parent.GetComponent<PlayerInput>().GetSide()); // -- Observable.Timer(TimeSpan.FromSeconds(1.5f)).Subscribe(time => { Destroy(gameObject); }); }).AddTo(this); }
static void DisplayBattleResult(BattleResult result) { Console.WriteLine(result.ToString()); Console.WriteLine("=============战斗过程==============="); foreach (var action in result.Actions) { Console.Write(BattleActionView.Show(action)); Console.Write(" || "); //foreach (var r in action.Result.Roles) //{ // Console.Write("{0} {1}/{2}\t", r.Name, r.Hp, r.MaxHp); //} if (action.Result.Type == "QUERY") { Console.WriteLine(); Console.WriteLine("-----------------------------------"); } } Console.WriteLine("战斗结果:队伍{0}胜利", result.Winner); }
public void SendBattleResult(BattleResult battleResult) { myTcpClient.WriteData(battleResult.ToString()); }
/// <summary> /// /kcsapi/api_req_sortie/battleresult /// /kcsapi/api_req_combined_battle/battleresult /// </summary> /// <param name="responseJson"></param> /// <param name="battleResult"></param> void BattleResult(string responseJson,BattleResult.Result battleResult) { #if DEBUG if (battleResult != null) Debug.WriteLine(battleResult.ToString()); else Debug.WriteLine("BattleResult is null"); #endif _parent.EndWaitForNightBattle(); var binfo = _logBattle.Finish(responseJson, _memberShip, _memberDeck, _masterShip, _memberBasic); _parent.AddBattleResult(binfo); _statusManager.FinishBattle(); //戦闘で受けた友軍ダメージを反映する _memberShip.ApplyBattleResult(battleResult); //推測戦闘結果 if (battleResult != null) { var st = battleResult.BattleState; var st2 = KCB2.BattleResult.Result.BattleResultStateString(st); //HP減少分をUIへ反映 _parent.UpdateShipList(_memberShip.ShipList); _parent.UpdateDeckMemberList(_memberShip, _memberDeck.DeckList); if (binfo.ShipDropped.Length > 0 && !Properties.Settings.Default.HideDroppedShip) UpdateDetailStatus("評価{0}({2})で戦闘を終了、{1}がドロップしました", binfo.Rank, binfo.ShipDropped, st2); else UpdateDetailStatus("評価{0}({1})で戦闘を終了しました", binfo.Rank, st2); if (binfo.Rank != KCB2.BattleResult.Result.BattleResultStateShortString(st)) { string fn = string.Format("./{0}.missing.battleresult", DateTime.Now.Ticks.ToString()); Debug.WriteLine("BattleResult Missing log:" + fn); using (var sw = new System.IO.StreamWriter(fn, true, Encoding.UTF8)) { sw.WriteLine("Result(Official):{0}\r\nResult(Self):{1}\r\n\r\n{2}", binfo.Rank, st2, battleResult.ToString()); } } } else { //戦闘解析データがない場合は評価しない。 _parent.UpdateShipList(_memberShip.ShipList); _parent.UpdateDeckMemberList(_memberShip, _memberDeck.DeckList); if (binfo.ShipDropped.Length > 0 && !Properties.Settings.Default.HideDroppedShip) UpdateDetailStatus("評価{0}で戦闘を終了、{1}がドロップしました", binfo.Rank, binfo.ShipDropped); else UpdateDetailStatus("評価{0}で戦闘を終了しました", binfo.Rank); } _parent.NotifyFinishBattle("戦闘"); }