Inheritance: System.EventArgs
コード例 #1
0
ファイル: BraceFace.cs プロジェクト: ErraticUnicorn/MOSH
 private void updateOffsets(object sender, CameraOffsetEventArgs e)
 {
     mX += e.dx_offset;
     mY += e.dy_offset;
 }
コード例 #2
0
ファイル: WorldManager.cs プロジェクト: ErraticUnicorn/MOSH
        public static void updateCameraOffset(Hero p_hero)
        {
            Point l_cameraOffset = new Point();
            l_cameraOffset.X = (int) (p_hero.getXCenter() - m_gd.Viewport.Width / m_scaleFactor / 2);
            l_cameraOffset.Y = (int) (p_hero.getYCenter() - m_gd.Viewport.Height / m_scaleFactor / 2);

            int l_maxCameraX = (int) (m_currentRoom.background.Width * m_currentRoom.background.TileWidth - m_gd.Viewport.Width / m_scaleFactor);
            int l_maxCameraY = (int) (m_currentRoom.background.Height * m_currentRoom.background.TileHeight - m_gd.Viewport.Height / m_scaleFactor);

            if (l_cameraOffset.X < 0) { l_cameraOffset.X = 0; }
            if (l_cameraOffset.Y < 0) { l_cameraOffset.Y = 0; }
            if (l_cameraOffset.X > l_maxCameraX) { l_cameraOffset.X = l_maxCameraX; }
            if (l_cameraOffset.Y > l_maxCameraY) { l_cameraOffset.Y = l_maxCameraY; }

            Point l_previousCameraOffset;
            l_previousCameraOffset.X = m_currentCameraOffset.X;
            l_previousCameraOffset.Y = m_currentCameraOffset.Y;

            int l_dx_offset = l_cameraOffset.X - l_previousCameraOffset.X;
            int l_dy_offset = l_cameraOffset.Y - l_previousCameraOffset.Y;

            //update
            m_currentCameraOffset = l_cameraOffset;
            if (!(l_dx_offset == 0 && l_dy_offset == 0))
            {
                CameraOffsetEventArgs args = new CameraOffsetEventArgs();
                args.dx_offset = l_dx_offset;
                args.dy_offset = l_dy_offset;
                if (OffsetChanged != null)
                {
                    OffsetChanged(null, args);  //call all registered listeners
                }
            }
        }
コード例 #3
0
ファイル: PopInOutSprite.cs プロジェクト: ErraticUnicorn/MOSH
 /// <summary>
 /// Used for listening to camera offset update events, so the sprite
 /// stays in a constant position on screen whenever the character moves
 /// (giving the appearance of a HUD)
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 protected virtual void updateOffsets(object sender, CameraOffsetEventArgs e)
 {
     if (this.isSmoothMoving())
     {
         this.smoothMoveCameraAdjust(e.dx_offset, e.dy_offset);
     }
     this.setX(this.getX() + e.dx_offset);
     this.setY(this.getY() + e.dy_offset);
     this.setPopLocations(this.getHideX() + e.dx_offset, this.getHideY() + e.dy_offset,
         this.getAppearX() + e.dx_offset, this.getAppearY() + e.dy_offset);
 }