Ejemplo n.º 1
0
        public int PositionToIndex(Entity.BaseGameEntity ent)
        {
            int cellX = (int)(ent.GetEntityPosition().X / (partitionSize * 128) / partitionSize);
            int cellY = (int)(ent.GetEntityPosition().Y / (partitionSize * 128) / partitionSize);

            return(cellX * numCellsX + cellY);
        }
Ejemplo n.º 2
0
        public void AddEntity(Entity.BaseGameEntity entity)
        {
            int cellX = (int)(entity.GetEntityPosition().X / (partitionSize * 128) / partitionSize);
            int cellY = (int)(entity.GetEntityPosition().Y / (partitionSize * 128) / partitionSize);

            //Console.WriteLine("Adding entity to partition: "+ cellX + " " + cellY);
            entity.SetPartitionCell(cellX, cellY);

            cells[PositionToIndex(entity)].AddEntity(entity);
        }