기타

화면 해상도(640 X 480) 스크립트

by 쿠쿠밥솥 posted Jan 10, 2012
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄

중복이면 바로 삭제할께염 ㅇㅅㅇ

 

일단 이 스크립트는 검정여백을 없애주는 스크립트 입니다.

 

스크립트 사용 전↓

 

 

스크립트 사용 후↓

 

아 그리구...

Graphics/System/Title.png

이... 이파일 크기를 가로 640 세로 480으로 해야합니다...

스크립트

 

 

 

 

#==============================================================================
# ** TDS Resolution Change[VX]
# Version: 1.8
#------------------------------------------------------------------------------
# This script changes the resolution from the default VX resolution
# of 544 x 416 to 640 x 480 RMXP Resolution
#==============================================================================
#--------------------------------------------------------------------------
# * Graphics - Rezise Screen
#--------------------------------------------------------------------------
Graphics.resize_screen(640, 480)
#==============================================================================
# ▼ Game Objects
#------------------------------------------------------------------------------
# All clases below the Game Objects tab
#==============================================================================
#==============================================================================
# ** Game_Map
#------------------------------------------------------------------------------
#  This class handles maps. It includes scrolling and passage determination
# functions. The instance of this class is referenced by $game_map.
#==============================================================================
class Game_Map
  #--------------------------------------------------------------------------
  # * Scroll Setup
  #-------------------------------------------------------------------------- 
  alias tds_vx_resolution_change_setup_scroll setup_scroll
  def setup_scroll
    tds_vx_resolution_change_setup_scroll   
    @scroll_direction = 2
    @scroll_rest = 0
    @scroll_speed = 4
    @margin_x = (width - 20) * 256 / 2      # Screen non-display width /2
    @margin_y = (height - 15) * 256 / 2     # Screen non-display height /2
  end 
 
  #--------------------------------------------------------------------------
  # * Calculate X coordinate for parallax display
  #     bitmap : Parallax bitmap
  #-------------------------------------------------------------------------- 
  alias tds_vx_resolution_change_calc_parallax_x calc_parallax_x
  def calc_parallax_x(bitmap)
    tds_vx_resolution_change_calc_parallax_x(bitmap)   
    if bitmap == nil
      return 0
    elsif @parallax_loop_x
      return @parallax_x / 16
    elsif loop_horizontal?
      return 0
    else
      w1 = bitmap.width - 640
      w2 = @map.width * 32 - 640
      if w1 <= 0 or w2 <= 0
        return 0
      else
        return @parallax_x * w1 / w2 / 8
      end
    end
  end
 
  #--------------------------------------------------------------------------
  # * Calculate Y coordinate for parallax display
  #     bitmap : Parallax bitmap
  #--------------------------------------------------------------------------
  alias tds_vx_resolution_change_calc_parallax_y calc_parallax_y 
  def calc_parallax_y(bitmap)
    tds_vx_resolution_change_calc_parallax_y(bitmap)   
    if bitmap == nil
      return 0
    elsif @parallax_loop_y
      return @parallax_y / 16
    elsif loop_vertical?
      return 0
    else
      h1 = bitmap.height - 480
      h2 = @map.height * 32 - 480
      if h1 <= 0 or h2 <= 0
        return 0
      else
        return @parallax_y * h1 / h2 / 8
      end
    end
  end
 
  #--------------------------------------------------------------------------
  # * Scroll Down
  #     distance : scroll distance
  #     *Note: Could not be aliased because it causes the scrolling to look
  #            Unnatural
  #-------------------------------------------------------------------------- 
  def scroll_down(distance)
    if loop_vertical?
      @display_y += distance
      @display_y %= @map.height * 256
      @parallax_y += distance
    else
      last_y = @display_y
      @display_y = [@display_y + distance, (height - 15) * 256].min
      @parallax_y += @display_y - last_y
    end
  end
  #--------------------------------------------------------------------------
  # * Scroll Right
  #     distance : scroll distance
  #     *Note: Could not be aliased because it causes the scrolling to look
  #            Unnatural
  #-------------------------------------------------------------------------- 
  def scroll_right(distance)
    if loop_horizontal?
      @display_x += distance
      @display_x %= @map.width * 256
      @parallax_x += distance
    else
      last_x = @display_x
      @display_x = [@display_x + distance, (width - 20) * 256].min
      @parallax_x += @display_x - last_x
    end
  end
end
#==============================================================================
# ** Game_Player
#------------------------------------------------------------------------------
#  This class handles maps. It includes event starting determinants and map
# scrolling functions. The instance of this class is referenced by $game_map.
#==============================================================================
class Game_Player < Game_Character
  #--------------------------------------------------------------------------
  # * Constants
  #-------------------------------------------------------------------------- 
  CENTER_X = (640 / 2 - 16) * 8     # Screen center X coordinate * 8
  CENTER_Y = (480 / 2 - 16) * 8     # Screen center X coordinate * 8 
  #--------------------------------------------------------------------------
  # * Set Map Display Position to Center of Screen
  #     x : x-coordinate
  #     y : y-coordinate
  #-------------------------------------------------------------------------- 
  alias tds_vx_resolution_change_center center 
  def center(x, y)
    tds_vx_resolution_change_center(x, y)   
    display_x = x * 256 - CENTER_X                    # Calculate coordinates
    unless $game_map.loop_horizontal?                 # No loop horizontally?
      max_x = ($game_map.width - 20) * 256            # Calculate max value
      display_x = [0, [display_x, max_x].min].max     # Adjust coordinates
    end
    display_y = y * 256 - CENTER_Y                    # Calculate coordinates
    unless $game_map.loop_vertical?                   # No loop vertically?
      max_y = ($game_map.height - 15) * 256           # Calculate max value
      display_y = [0, [display_y, max_y].min].max     # Adjust coordinates
    end
    $game_map.set_display_pos(display_x, display_y)   # Change map location
  end
end
#==============================================================================
# ▼ Sprites
#------------------------------------------------------------------------------
# All clases below the Sprites tab
#==============================================================================
#==============================================================================
# ** Sprite_Base
#------------------------------------------------------------------------------
#  A sprite class with animation display processing added.
#==============================================================================
class Sprite_Base < Sprite
  #--------------------------------------------------------------------------
  # * Start Animation
  #-------------------------------------------------------------------------- 
  alias tds_vx_resolution_change_start_animation start_animation 
  def start_animation(animation, mirror = false)
    tds_vx_resolution_change_start_animation(animation, mirror = false)   
    dispose_animation
    @animation = animation
    return if @animation == nil
    @animation_mirror = mirror
    @animation_duration = @animation.frame_max * 4 + 1
    load_animation_bitmap
    @animation_sprites = []
    if @animation.position != 3 or not @@animations.include?(animation)
      if @use_sprite
        for i in 0..15
          sprite = ::Sprite.new(viewport)
          sprite.visible = false
          @animation_sprites.push(sprite)
        end
        unless @@animations.include?(animation)
          @@animations.push(animation)
        end
      end
    end
    if @animation.position == 3
      if viewport == nil
        @animation_ox = 640 / 2
        @animation_oy = 480 / 2
      else
        @animation_ox = viewport.rect.width / 2
        @animation_oy = viewport.rect.height / 2
      end
    else
      @animation_ox = x - ox + width / 2
      @animation_oy = y - oy + height / 2
      if @animation.position == 0
        @animation_oy -= height / 2
      elsif @animation.position == 2
        @animation_oy += height / 2
      end
    end
  end
end
#==============================================================================
# ** Spriteset_Map
#------------------------------------------------------------------------------
#  This class brings together map screen sprites, tilemaps, etc. It's used
# within the Scene_Map class.
#==============================================================================
class Spriteset_Map
  #--------------------------------------------------------------------------
  # * Create Viewport
  #-------------------------------------------------------------------------- 
  alias tds_vx_resolution_change_create_viewports create_viewports
  def create_viewports
    tds_vx_resolution_change_create_viewports   
    @viewport1 = Viewport.new(0, 0, 640, 480)
    @viewport2 = Viewport.new(0, 0, 640, 480)
    @viewport3 = Viewport.new(0, 0, 640, 480)
    @viewport2.z = 50
    @viewport3.z = 100
  end
end

 

 

 

여기까지임니당...