public void ClientCommand(IEdict entity, string[] args)
        {
            var ent = _EntityManager.FindEntity <BasePlayer>(entity);

            if (ent != null)
            {
                ent.ClientCommand(args);
            }
        }
        public void ClientDisconnect(IEdict entity)
        {
            var ent = _EntityManager.FindEntity <BasePlayer>(entity);

            if (ent == null)
            {
                return;
            }

            ent.Disconnect();
        }
        public IPlayerState GetPlayerState(IEdict player)
        {
            var p = _EntityManager.FindEntity <BasePlayer>(player);

            if (p == null)
            {
                return(null);
            }

            return(p.PlayerState);
        }
Exemple #4
0
        public T FindEntity <T>(IEdict edict) where T : class
        {
            foreach (var e in _EntityList)
            {
                if (e.Edict.Equals(edict))
                {
                    return(e as T);
                }
            }

            return(null);
        }
        public void ClientActive(IEdict entity, bool bLoadGame)
        {
            var ent = _EntityManager.FindEntity <BasePlayer>(entity);

            if (ent == null)
            {
                return;
            }

            ent.InitalSpawn();
            ent.Spawn();
        }
Exemple #6
0
        private BaseEntityServer CreateEntity(String className, IEdict edict, int index = -1)
        {
            BaseEntityServer ent = null;

            try
            {
                ent           = MefServer.GetExportedValue <BaseEntityServer>(className);
                ent.ClassName = className;
            }
            catch (Exception e)
            {
                _ConsoleManager.WriteLine(Color.Red, String.Format("Failed to create entity {0}: {1}", className, e.Message));
                return(null);
            }

            if (edict == null)
            {
                _EngineServer.CreateEdict(ent, index);
            }
            else
            {
                ent.Edict = edict;
            }

            _EntityList.Add(ent);

            ent.PostCreate();

            if (ent.IsServerOnly)
            {
                Debug.Assert(false); //todo fix to work
                ent.Edict.SetSlotAndSerial(1, -1);
            }
            else
            {
                int slot = _EngineServer.IndexOfEdict(ent.Edict);
                ent.Edict.SetSlotAndSerial(slot, _EntSerials[slot]);
            }

            return(ent);
        }
 public void MarkEntitiesAsTouching(IEdict e1, IEdict e2)
 {
 }
 public void SetDebugEdictBase(IEdict edict)
 {
 }
Exemple #9
0
 public T CreatePlayer <T>(IEdict edict) where T : class
 {
     return(CreateEntity("player", edict) as T);
 }
 public int GetReplayDelay(IEdict player, ref int entity)
 {
     return(0);
 }
 public bool ClientConnect(IEdict pEntity, string name, string address, ref string reject)
 {
     return(true);
 }
 public float ProcessUsercmds(IEdict player, byte[] buf, int numcmds, int totalcmds, int dropped_packets, bool ignore, bool paused)
 {
     return(0.0f);
 }
 public void ClientSetupVisibility(IEdict viewEntity, IEdict client, ref string pvs)
 {
 }
 public void ClientSettingsChanged(IEdict edict)
 {
 }
        public void ClientPutInServer(IEdict entity, string playerName)
        {
            var player = _EntityManager.CreatePlayer <BasePlayer>(entity);

            player.PlayerName = playerName;
        }
 public void FreeContainingEntity(IEdict edict)
 {
 }
 public IEntity EdictToBaseEntity(IEdict edict)
 {
     return(null);
 }
 public void ClientEarPosition(IEdict pEntity, ref Interfaces.Shared.M_Vector earOrigin)
 {
 }