示例#1
0
        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);
        }
示例#2
0
        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);
        }
示例#3
0
        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);
        }
示例#4
0
 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);