public void AddMessageAutoReturnedFlag(FlagReturnEvent e, NotCarriedFlagNode flag, [JoinByTeam] TeamNode flagTeam, [JoinAll] SingleNode <SelfBattleUserComponent> selfUser, [JoinByTeam] Optional <TeamNode> selfTeam, [JoinAll] CombatLogNode combatEventLog) { CombatLogCTFMessagesComponent combatLogCTFMessages = combatEventLog.combatLogCTFMessages; string newValue = GetOwnFlag(selfTeam, flagTeam, combatLogCTFMessages); string messageText = combatLogCTFMessages.AutoReturned.Replace(CombatLogCTFMessagesComponent.OWN, newValue); combatEventLog.uiLog.UILog.AddMessage(messageText); }
public void AddMessageLog(FlagEvent e, FlagNode flag, [JoinByTank] TankNode tank2Team, [JoinByTeam] TeamNode tankTeam, FlagNode flag2User, [JoinByTank] TankNode tank2User, [JoinByUser] UserNode user, FlagNode flag2Team, [JoinByTeam] TeamNode flagTeam, [JoinAll] SingleNode <SelfBattleUserComponent> selfUser, [JoinByTeam] Optional <TeamNode> selfTeam, [JoinAll] CombatLogNode combatLog) { CombatLogCTFMessagesComponent combatLogCTFMessages = combatLog.combatLogCTFMessages; string newValue = GetOwnFlag(selfTeam, flagTeam, combatLogCTFMessages); Color teamColor = CombatEventLogUtil.GetTeamColor(tankTeam.colorInBattle.TeamColor, combatLog.combatEventLog); string messageText = CombatEventLogUtil.ApplyPlaceholder(GetMessage(e, flag.Entity, combatLogCTFMessages).Replace(CombatLogCTFMessagesComponent.OWN, newValue), "{user}", user.userRank.Rank, user.userUid.Uid, teamColor); combatLog.uiLog.UILog.AddMessage(messageText); }
private static string GetMessage(FlagEvent e, Entity flag, CombatLogCTFMessagesComponent logCtfMessages) { Type objA = e.GetType(); if (ReferenceEquals(objA, typeof(FlagPickupEvent))) { return(!flag.HasComponent <Tanks.Battle.ClientCore.Impl.FlagHomeStateComponent>() ? logCtfMessages.PickedUp : logCtfMessages.Took); } if (ReferenceEquals(objA, typeof(FlagDropEvent))) { return(!((FlagDropEvent)e).IsUserAction ? logCtfMessages.Lost : logCtfMessages.Dropped); } if (ReferenceEquals(objA, typeof(FlagDeliveryEvent))) { return(logCtfMessages.Delivered); } if (!ReferenceEquals(objA, typeof(FlagReturnEvent))) { throw new ArgumentException(); } return(logCtfMessages.Returned); }
private static string GetOwnFlag(Optional <TeamNode> selfTeam, TeamNode flagTeam, CombatLogCTFMessagesComponent logCtfMessages) => !selfTeam.IsPresent() ? ((flagTeam.colorInBattle.TeamColor != TeamColor.BLUE) ? logCtfMessages.RedFlag : logCtfMessages.BlueFlag) : ((flagTeam.teamGroup.Key != selfTeam.Get().teamGroup.Key) ? logCtfMessages.EnemyFlag : logCtfMessages.OurFlag);