示例#1
0
        public Map2Manager(Map2Gui mapGui)
        {
            _mapGui = mapGui;

            _marioMapObj = new Map2Object(Config.ObjectAssociations.MarioMapImage, 1);
            _marioMapObj.UsesRotation = true;

            _holpMapObj = new Map2Object(Config.ObjectAssociations.HolpImage, 2);

            _intendedNextPositionMapObj = new Map2Object(Config.ObjectAssociations.IntendedNextPositionImage, 2);
            _intendedNextPositionMapObj.UsesRotation = true;

            _pointMapObj = new Map2Object(Config.ObjectAssociations.IntendedNextPositionImage, 2);
            _pointMapObj.UsesRotation = true;

            _cameraMapObj = new Map2Object(Config.ObjectAssociations.CameraMapImage, 1);
            _cameraMapObj.UsesRotation = true;
            _floorTriangleMapObj       = new TriangleMap2Object(Color.FromArgb(200, Color.Cyan), 3);
            _ceilingTriangleMapObj     = new TriangleMap2Object(Color.FromArgb(200, Color.Red), 2);

            _cogFloorTris = new List <TriangleMap2Object>();
            for (int i = 0; i < 4; i++)
            {
                _cogFloorTris.Add(new TriangleMap2Object(Color.FromArgb(200, Color.Cyan), 3));
            }

            _cog2FloorTris = new List <TriangleMap2Object>();
            for (int i = 0; i < 4; i++)
            {
                _cog2FloorTris.Add(new TriangleMap2Object(Color.FromArgb(200, Color.Magenta), 3));
            }

            _cogWallTris = new List <TriangleMap2Object>();
            for (int i = 0; i < 12; i++)
            {
                _cogWallTris.Add(new TriangleMap2Object(Color.FromArgb(200, Color.Green), 3));
            }

            _triObjectWalls  = new List <List <TriangleMap2Object> >();
            _triObjectFloors = new List <List <TriangleMap2Object> >();
            for (int numSides = SHAPE_MIN_SIDES; numSides <= SHAPE_MAX_SIDSE; numSides++)
            {
                (List <TriangleShape> floors, List <TriangleShape> walls) = GetTriShapes(numSides);

                List <TriangleMap2Object> wallTris = new List <TriangleMap2Object>();
                foreach (TriangleShape tri in walls)
                {
                    wallTris.Add(new TriangleMap2Object(Color.FromArgb(200, Color.Green), 3));
                }
                _triObjectWalls.Add(wallTris);

                List <TriangleMap2Object> floorTris = new List <TriangleMap2Object>();
                foreach (TriangleShape tri in floors)
                {
                    floorTris.Add(new TriangleMap2Object(Color.FromArgb(200, Color.Cyan), 3));
                }
                _triObjectFloors.Add(floorTris);
            }
        }
示例#2
0
 public void RemoveMapObject(Map2Object mapObj)
 {
     _mapObjects.Remove(mapObj);
     _mapGraphics.RemoveMapObject(mapObj);
 }
示例#3
0
 public void AddMapObject(Map2Object mapObj)
 {
     _mapObjects.Add(mapObj);
     _mapGraphics.AddMapObject(mapObj);
 }