예제 #1
0
파일: WorldRect.cs 프로젝트: Omybot/GoBot
        public void SetWorldCenter(RealPoint center)
        {
            WorldRect  = WorldRect.SetCenter(center);
            WorldScale = new WorldScale(WorldScale.Factor, -WorldScale.RealToScreenDistance(WorldRect.X), -WorldScale.RealToScreenDistance(WorldRect.Y));

            WorldChange?.Invoke();
        }
예제 #2
0
파일: WorldRect.cs 프로젝트: Omybot/GoBot
        public void SetScreenSize(Size size)
        {
            WorldRect   = WorldRect.ExpandWidth(WorldScale.ScreenToRealDistance(size.Width));
            WorldRect   = WorldRect.ExpandHeight(WorldScale.ScreenToRealDistance(size.Height));
            _screenSize = size;

            WorldChange?.Invoke();
        }
예제 #3
0
        public SaveHelper_World(WorldChange Changes)
        {
            m_Changes = Changes.Data;
            m_Helpers = new Dictionary <Vector2Int, SaveHelper_Chunk>();

            foreach (var ChunkModify in m_Changes)
            {
                m_Helpers.Add(ChunkModify.Slot, new SaveHelper_Chunk(ChunkModify));
            }
        }
예제 #4
0
파일: WorldRect.cs 프로젝트: Omybot/GoBot
        public void SetZoomFactor(double mmPerPixel)
        {
            RealPoint center = WorldRect.Center();

            WorldRect = WorldRect.ExpandWidth(WorldRect.Width * (mmPerPixel / WorldScale.Factor));
            WorldRect = WorldRect.ExpandHeight(WorldRect.Height * (mmPerPixel / WorldScale.Factor));

            WorldScale = new WorldScale(mmPerPixel, (int)(-WorldRect.X / mmPerPixel), (int)(-WorldRect.Y / mmPerPixel));

            WorldChange?.Invoke();
        }
예제 #5
0
 public void AddChange(WorldChange change)
 {
     _worldManager.AddChange(change);
 }
예제 #6
0
 public void AddChange(WorldChange change)
 {
     world = change;
 }
예제 #7
0
 protected void OnWorldChange()
 {
     WorldChange?.Invoke();
 }