public void addPlayerObject(Object.PlayerObject _PlayerObject, bool _OnlyToPlayerList)
        {
            if (!containsPlayerObject(_PlayerObject))
            {
                this.playerObjects.Add(_PlayerObject);

                if (!_OnlyToPlayerList)
                {
                    this.addObject(_PlayerObject);
                }
            }
        }
Beispiel #2
0
 public UpdatePlayerMessage(Object.PlayerObject _PlayerObject)
 {
     this.MessageTime  = NetTime.Now;
     this.PlayerObject = _PlayerObject;
 }
Beispiel #3
0
        public void updatePlayerObjectNeighborhood(GameTime _GameTime, Object.PlayerObject _PlayerObject)
        {
            List <Chunk.Chunk> var_ChunksInRange = new List <Chunk.Chunk>();

            foreach (Chunk.Chunk var_Chunk in this.chunksOutOfRange)
            {
                if (Vector3.Distance(var_Chunk.Position, new Vector3(_PlayerObject.Position.X, _PlayerObject.Position.Y, 0)) <= (Setting.Setting.blockDrawRange * Block.Block.BlockSize))
                {
                    var_ChunksInRange.Add(var_Chunk);
                }
            }

            foreach (Chunk.Chunk var_Chunk in var_ChunksInRange)
            {
                this.chunksOutOfRange.Remove(var_Chunk);
            }

            if (_PlayerObject != null)
            {
                Vector3 var_PlayerPos = _PlayerObject.Position;

                if (_PlayerObject.CurrentBlock != null)
                {
                    var_PlayerPos = _PlayerObject.CurrentBlock.Position;
                }
                int var_DrawSizeX = Setting.Setting.blockDrawRange;
                int var_DrawSizeY = Setting.Setting.blockDrawRange;

                for (int x = 0; x < var_DrawSizeX; x++)
                {
                    for (int y = 0; y < var_DrawSizeY; y++)
                    {
                        Vector3     var_Position = new Vector3(var_PlayerPos.X + (-var_DrawSizeX / 2 + x) * Block.Block.BlockSize, var_PlayerPos.Y + (-var_DrawSizeY / 2 + y) * Block.Block.BlockSize, 0);
                        Block.Block var_Block    = this.getBlockAtCoordinate(var_Position);
                        if (var_Block != null)
                        {
                            var_Block.update(_GameTime);
                        }
                        else
                        {
                            Region.Region var_Region = this.getRegionAtPosition(var_Position);
                            if (var_Region == null)
                            {
                                var_Region = this.createRegionAt(var_Position);
                            }
                            else
                            {
                                Chunk.Chunk var_Chunk = this.getChunkAtPosition(var_Position);
                                if (var_Chunk == null)
                                {
                                    var_Chunk = this.createChunkAt(var_Position);
                                }
                            }
                        }
                    }
                }
            }

            List <Object.Object> var_Objects = this.getObjectsInRange(_PlayerObject.Position, 600);

            foreach (Object.Object var_Object in var_Objects)
            {
                if (!this.objectsToUpdate.Contains(var_Object))
                {
                    this.objectsToUpdate.Add(var_Object);
                }
            }
        }
 public void addPlayerObject(Object.PlayerObject _PlayerObject)
 {
     this.addPlayerObject(_PlayerObject, false);
 }
 public bool containsPlayerObject(Object.PlayerObject _PlayerObject)
 {
     return(this.playerObjects.Contains(_PlayerObject));
 }
 public PlayerCommandMessage(Object.PlayerObject _PlayerObject, Commands.ECommandType _ECommandType)
 {
     this.Id           = _PlayerObject.Id;
     this.MessageTime  = NetTime.Now;
     this.ECommandType = _ECommandType;
 }