/// <summary> /// Get facts about a side's performance in the game. /// </summary> /// <param name="side">The side to get facts about.</param> /// <returns>The game facts.</returns> public GameFacts GetGameFacts(MatchSide side) { //Create the game facts instance. GameFacts facts = new GameFacts(null); facts.MatchSide = side; //See which side to get data from. if (side == MatchSide.Home) { //Fill the facts instance with data. facts.Profile = (Profile)cmbHomeProfile.SelectedItem; facts.Team = facts.Profile.Team; facts.Shots = (int)nmrHomeShots.Value; facts.ShotsOnTarget = (int)nmrHomeShotsOnTarget.Value; facts.ShotAccuracy = facts.ShotsOnTarget == 0 ? 0 : (int)(100 * (float)facts.ShotsOnTarget / (float)facts.ShotsOnTarget); facts.PassAccuracy = (int)nmrHomePassAccuracy.Value; facts.Corners = (int)nmrHomeCorners.Value; facts.Possession = (100 - trkbPossession.Value); //The goals scored and the goals conceded. foreach (ListViewItem item in lstvHomeGoals.Items) { //Find out which goals facts.GoalsScored.Add((Goal)item.Tag); } foreach (ListViewItem item in lstvAwayGoals.Items) { facts.GoalsConceded.Add((Goal)item.Tag); } } else { //Fill the facts instance with data. facts.Profile = (Profile)cmbAwayProfile.SelectedItem; facts.Team = facts.Profile.Team; facts.Shots = (int)nmrAwayShots.Value; facts.ShotsOnTarget = (int)nmrAwayShotsOnTarget.Value; facts.ShotAccuracy = facts.ShotsOnTarget == 0 ? 0 : (int)(100 * (float)facts.ShotsOnTarget / (float)facts.ShotsOnTarget); facts.PassAccuracy = (int)nmrAwayPassAccuracy.Value; facts.Corners = (int)nmrAwayCorners.Value; facts.Possession = trkbPossession.Value; //The goals scored and the goals conceded. foreach (ListViewItem item in lstvAwayGoals.Items) { facts.GoalsScored.Add((Goal)item.Tag); } foreach (ListViewItem item in lstvHomeGoals.Items) { facts.GoalsConceded.Add((Goal)item.Tag); } } //Return the facts. return facts; }
private void FillSituantionData(MatchSide side, List <Data.BattleSituation> list) { List <BattleSituation> sideSituations = sideBattleSituations[side]; for (int index = 0; index < sideSituations.Count; index++) { BattleSituation battleSituation = sideSituations[index]; Data.BattleSituation situation = new Data.BattleSituation(); situation.fatality = battleSituation.fatality; situation.kills = battleSituation.kills; situation.mvpValue = battleSituation.mvpValue; situation.playerId = battleSituation.playerId; situation.resources = battleSituation.resources; list.Add(situation); } }
public BattleViewController(BattleView v) { viewBase = v; _view = v; dataManager = DataManager.GetInstance(); side = dataManager.GetMatchSide(); //TODO:This code is temp code, when designer upgrade modelID use true modelID get towers. towerProtoData = GetTowerFromSide(); instituteProtoData = dataManager.instituteProtoData; instituteSkillData = dataManager.instituteSkillProtoData; attributeEffectData = dataManager.attributeEffectProtoData; controllType = (BattleUIControlType)dataManager.unitOperationChoose; unitLargestAmount = GameConstants.PLAYER_CANDEPLOY_UNIT_MAXCOUNT; }
public string GetBattleHeadIconStr(MatchSide side, int index) { string str = ""; if (side == MatchSide.Blue) { if (blueBattlers.Count > index) { return(blueBattlers[index].portrait); } } else if (side == MatchSide.Red) { if (redBattlers.Count > index) { return(redBattlers[index].portrait); } } return(str); }
private int GetPoolByMark(ForceMark mark) { ForceMark myForceMark = DataManager.GetInstance().GetForceMark(); MatchSide myMatchSide = DataManager.GetInstance().GetMatchSide(); MatchSide unitMatchSide = GetSideFromMark(mark); if (myMatchSide == unitMatchSide) { if (myForceMark == mark) { return(0); } else { return(2); } } else { return(1); } }
private void SetEnemySide(MatchSide side) { switch (side) { case MatchSide.NoSide: break; case MatchSide.Observe: break; case MatchSide.Red: enemySide = MatchSide.Blue; break; case MatchSide.Blue: enemySide = MatchSide.Red; break; default: break; } }
private void MatchSucceedUIData(List <Matcher> matchers) { DataManager clientData = DataManager.GetInstance(); allMatchers = matchers; clientData.SetMatchers(allMatchers); long id = clientData.GetPlayerAccountId(); MatchSide myselfSide = matchers.Find(p => p.playerId == id).side; bool myselfReady = matchers.Find(p => p.playerId == id).ready; view.intoGameButton.interactable = !myselfReady; List <MatcherData> friendData = new List <UI.FightMatchController.MatcherData>(); List <MatcherData> enemyData = new List <UI.FightMatchController.MatcherData>(); List <Matcher> friends = matchers.FindAll(p => p.side == myselfSide); List <Matcher> enemys = matchers.FindAll(p => p.side != myselfSide); long myId = DataManager.GetInstance().GetPlayerId(); foreach (Matcher friend in friends) { MatcherData data = new MatcherData(friend.name, friend.portrait, friend.ready, friend.playerId == myId, friend.playerId); friendData.Add(data); } foreach (Matcher enemy in enemys) { MatcherData data = new MatcherData(enemy.name, enemy.portrait, enemy.ready, false, enemy.playerId); enemyData.Add(data); } view.friendDatas = friendData; view.enemyDatas = enemyData; view.InitSucceedItem(); }
public void Init() { noticeRoot = transform.Find("Ani/NoticeRoot").transform; killerHead = noticeRoot.Find("KillerHeadBg/KillerHead").GetComponent <Image>(); //textBgImageBlue = noticeRoot.Find( "TextBgBlue" ).GetComponent<Image>(); //textBgImageRed = noticeRoot.Find( "TextBgRed" ).GetComponent<Image>(); desText = noticeRoot.Find("DesText").GetComponent <Text>(); beKillerHead = noticeRoot.Find("BeKillerHeadBg/BeKillerHead").GetComponent <Image>(); killImage = noticeRoot.Find("BeKillerHeadBg/KillImage").GetComponent <Image>(); killerHeadFrameBgBlue = noticeRoot.Find("KillerHeadFrameBgBlue").GetComponent <Image>(); killerHeadFrameBgRed = noticeRoot.Find("KillerHeadFrameBgRed").GetComponent <Image>(); beKillerHeadFrameBgRed = noticeRoot.Find("BeKillerHeadFrameBgRed").GetComponent <Image>(); beKillerHeadFrameBgBlue = noticeRoot.Find("BeKillerHeadFrameBgBlue").GetComponent <Image>(); DataManager client = DataManager.GetInstance(); unitsProto = client.unitsProtoData; selfSide = client.GetMatchSide(); SetEnemySide(selfSide); desText.text = ""; noticeRoot.gameObject.SetActive(false); }
public DelegateProducingSequence Match(MethodDefinition containingMethod, Instruction i, MatchSide side) { DelegateProducingSequence MakeResult(Instruction[] instructions) { return(new DelegateProducingSequence() { Instructions = instructions, CapturesLocals = CapturesLocal, OriginalLambdaContainingMethod = containingMethod, MethodLambdaWasEmittedAs = FindLambdaMethod(instructions) }); } switch (side) { case MatchSide.Start: { return(IsStartOfSequence(i, InstructionMatchers, out var instructions) ? MakeResult(instructions.ToArray()) : null); } case MatchSide.End: { return(IsEndOfSequence(i, InstructionMatchers, out var instructions) ? MakeResult(instructions.ToArray()) : null); } default: throw new ArgumentOutOfRangeException(nameof(side), side, null); } }
public void SetMatchSide(MatchSide side) { battle.side = side; }
public void SendChatMessage(string str, BattleChatType type) { if (dataManager.CurBattleIsPVE()) { return; } BattleChatC2S message = new BattleChatC2S(); List <long> enemyPlayerID = new List <long>(); if (friendlyPlayerID == -1) { List <Battler> list = dataManager.GetBattlers(); MatchSide side = dataManager.GetMatchSide(); long playerID = dataManager.GetPlayerId(); for (int i = 0; i < list.Count; i++) { if (list[i].side == side && list[i].playerId != playerID) { friendlyPlayerID = list[i].playerId; friendlyPlayerName = list[i].name; } else if (list[i].side != side) { enemyPlayerID.Add(list[i].playerId); enemyNames.Add(list[i].name); } } } if (type == BattleChatType.party) { message.battleChatType = BattleChatType.party; message.playerId.Add(friendlyPlayerID); } else if (type == BattleChatType.everyone) { message.battleChatType = BattleChatType.everyone; if (friendlyPlayerID != -1) { message.playerId.Add(friendlyPlayerID); } for (int i = 0; i < enemyPlayerID.Count; i++) { message.playerId.Add(enemyPlayerID[i]); } } else { //TODO: If have more type chat channel add here. DebugUtils.LogError(DebugUtils.Type.Chat, "Please check chat Type."); } message.chatContent = str; byte[] stream = ProtobufUtils.Serialize(message); NetworkManager.SendRequest(ServerType.SocialServer, MsgCode.BattleChatsMessage, stream); }
public static string SideName(MatchSide side) { return(SideName(side.Number - 1)); }
private bool SetHeadIcon(MatchSide side, int index) { if (side == MatchSide.Blue) { if (index == 0) { if (blueHeadList0.Count <= 0) { blueHeadList0 = controler.GetUnitHeadIcon(MatchSide.Blue, 0); } if (blueHeadList0.Count <= 0) { return(false); } for (int i = 0; i < blueUnitCard.Length; i++) { SetImageIcon(blueUnitCard[i], blueHeadList0[i]); } } else if (index == 1) { if (blueHeadList1.Count <= 0) { blueHeadList1 = controler.GetUnitHeadIcon(MatchSide.Blue, 1); } if (blueHeadList1.Count <= 0) { return(false); } for (int i = 0; i < blueUnitCard.Length; i++) { SetImageIcon(blueUnitCard[i], blueHeadList1[i]); } } } else if (side == MatchSide.Red) { if (index == 0) { if (redHeadList0.Count <= 0) { redHeadList0 = controler.GetUnitHeadIcon(MatchSide.Red, 0); } if (redHeadList0.Count <= 0) { return(false); } for (int i = 0; i < redUnitCard.Length; i++) { SetImageIcon(redUnitCard[i], redHeadList0[i]); } } else if (index == 1) { if (redHeadList1.Count <= 0) { redHeadList1 = controler.GetUnitHeadIcon(MatchSide.Red, 1); } if (redHeadList1.Count <= 0) { return(false); } for (int i = 0; i < redUnitCard.Length; i++) { SetImageIcon(redUnitCard[i], redHeadList1[i]); } } } return(true); }
public CardInstance(Card card, MatchSide side) { Card = card; Life = card.Life; _side = side; }