예제 #1
0
        public override void Init()
        {
            thisModelTranslator = ScenePrivate.FindReflective <ISGMTranslator>("Stargate." + _translator_name).FirstOrDefault();
            if (thisModelTranslator == null)
            {
                Log.Write(LogLevel.Error, "Need a gate model specific translator for the mesh names.");
                return;
            }

            AnalyzeGateStructure();
            numberBase = symbols.Count - 1;
            busy       = false;

            thisGateControl = ScenePrivate.FindReflective <IGateControl>("Stargate.SG_Control").FirstOrDefault();
            if (thisGateControl == null)
            {
                Log.Write(LogLevel.Error, "Gate Controller not found in scene.");
                return;
            }

            thisEventHorizon = ScenePrivate.FindReflective <IEventHorizon>("Stargate.SG_EventHorizon").FirstOrDefault();
            if (thisEventHorizon == null)
            {
                Log.Write(LogLevel.Warning, "Gate will not establish an event horizon. Object or script missing.");
            }

            thisGateControl.ConnectGate(this);
        }
예제 #2
0
        public override void Init()
        {
            thisGateControl = ScenePrivate.FindReflective <IGateControl>("Stargate.SG_Control").FirstOrDefault();
            if (thisGateControl == null)
            {
                Log.Write(LogLevel.Error, "Gate Controller not found in scene.");
                return;
            }

            thisGateControl.ConnectDHD(this);
            ScenePrivate.Chat.Subscribe(0, Chat.User, OnChat);
        }
예제 #3
0
 public AccessController(IAccessBusiness accessBusiness, IGateControl gateControl)
 {
     _accessBusiness = accessBusiness;
     _gateControl    = gateControl;
 }