Ejemplo n.º 1
0
        public void CTFStartMessage(NodeAddedEvent e, BattleUserNode selfTank, [JoinByBattle] CTFBattleNode ctfBattle, [Context, JoinAll] CombatLogNode combatEventLog)
        {
            string battleStartMessage = combatEventLog.combatLogCTFMessages.BattleStartMessage;

            combatEventLog.uiLog.UILog.AddMessage(battleStartMessage);
        }
Ejemplo n.º 2
0
 public void SetCTFMessagePosition(NodeAddedEvent e, SingleNode <MainHUDComponent> hud, HUDNodes.SelfBattleUserAsSpectatorNode spec, [JoinByBattle] CTFBattleNode battle)
 {
     hud.component.SetMessageCTFPosition();
 }
Ejemplo n.º 3
0
 public void PlayMelodyWhenSelfBattleUserInCTF(DefineMelodyForRoundRestartEvent evt, SoundsListenerNode listener, SelfTankBattleUserInTeamNode battleUser, [JoinByTeam] TeamNode userTeam, [JoinByBattle] CTFBattleNode dm, [JoinByBattle] ICollection <TeamNode> teams, SingleNode <BattleSoundsAssetComponent> mapEffect)
 {
     this.PlayNonTeamMelodyInTeamMode(userTeam, teams, listener, mapEffect, mapEffect.component.BattleSoundsBehaviour.MinCtfScoreDiff);
 }
Ejemplo n.º 4
0
 public void AddFlagNotCountedMessageLog(FlagNotCountedDeliveryEvent e, CTFBattleNode battle, [JoinAll] CombatLogNode combatLog)
 {
     combatLog.uiLog.UILog.AddMessage(combatLog.combatLogCTFMessages.DeliveryNotCounted);
 }
        public void CTFActivation(UpdateEvent e, SelfTankNode tank, [JoinByTank, Combine] MineSlotNode slot, [JoinByModule] MineModuleNode module, [JoinAll] ICollection <SingleNode <FlagPedestalComponent> > flagPedestals, [JoinAll] CTFBattleNode battle)
        {
            Vector3 position = tank.hullInstance.HullInstance.transform.position;

            if (this.HasActivationMine(position, flagPedestals, battle))
            {
                this.EnableActivation(slot.Entity);
            }
            else
            {
                this.DisableActivation(slot.Entity);
            }
        }
        private bool HasActivationMine(Vector3 tankPosition, ICollection <SingleNode <FlagPedestalComponent> > flagPedestals, CTFBattleNode battle)
        {
            RaycastHit hit;
            bool       flag;

            if (!Physics.Raycast(tankPosition + Vector3.up, Vector3.down, out hit, MineUtil.TANK_MINE_RAYCAST_DISTANCE, LayerMasks.STATIC))
            {
                return(false);
            }
            using (IEnumerator <SingleNode <FlagPedestalComponent> > enumerator = flagPedestals.GetEnumerator())
            {
                while (true)
                {
                    if (enumerator.MoveNext())
                    {
                        SingleNode <FlagPedestalComponent> current = enumerator.Current;
                        Vector3 position = current.component.Position;
                        Vector3 vector2  = position - hit.point;
                        if (vector2.magnitude >= battle.ctfConfig.minDistanceFromMineToBase)
                        {
                            continue;
                        }
                        flag = false;
                    }
                    else
                    {
                        return(true);
                    }
                    break;
                }
            }
            return(flag);
        }
Ejemplo n.º 7
0
 public void SetScoresCTFPosition(NodeAddedEvent e, SingleNode <TeamScoreHUDComponent> hud, HUDNodes.SelfTankNode tank, [JoinByBattle] CTFBattleNode battle)
 {
     hud.component.SetCtfMode();
 }
Ejemplo n.º 8
0
 public void SetCTFMessage(NodeAddedEvent e, HUDNode hud, HUDNodes.SelfTankNode tank, SingleNode <CTFHUDMessagesComponent> messageNode, [JoinByBattle] CTFBattleNode battle)
 {
     hud.mainHUD.ShowMessageWithPriority(messageNode.component.CaptureFlagMessage, 0);
     hud.mainHUD.SetMessageCTFPosition();
 }
Ejemplo n.º 9
0
 public void InitFlags(NodeAddedEvent e, CTFBattleNode battle, [Context, JoinByBattle] RoundNode round, [Context, JoinByBattle] HUDNodes.SelfBattleUserNode self, [Context] SingleNode <FlagsHUDComponent> hud)
 {
     hud.component.BlueFlagNormalizedPosition = 0f;
     hud.component.RedFlagNormalizedPosition  = 0f;
     hud.component.gameObject.SetActive(true);
 }
Ejemplo n.º 10
0
 public void DisableFlags(NodeRemoveEvent e, CTFBattleNode battle, SingleNode <FlagsHUDComponent> hud)
 {
     hud.component.gameObject.SetActive(false);
 }
Ejemplo n.º 11
0
 public void ReplaceIcon(NodeAddedEvent e, CTFBattleNode battle)
 {
     battle.battleItemContent.SetFlagAsScoreIcon();
 }