VX 스크립트

Screen Resolution
Version 0.4 (beta)

윈도우의 크기를 조절 하는 스크립트입니다.

우선 아래 스크립트를 main 위쪽에 추가 하시구요.


WIDTH = 640
HEIGHT = 480
DELTA_WIDTH   = (WIDTH - 544).abs
DELTA_HEIGHT = (HEIGHT - 416).abs

class Game_Map
  def 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 - WIDTH
      w2 = @map.width * 32 - WIDTH
      if w1 <= 0 or w2 <= 0
        return 0
      else
        return @parallax_x * w1 / w2 / 8
      end
    end
  end
end

class Spriteset_Map
  def create_viewports
    @viewport1 = Viewport.new(0, 0, WIDTH, HEIGHT)
    @viewport2 = Viewport.new(0, 0, WIDTH, HEIGHT)
    @viewport3 = Viewport.new(0, 0, WIDTH, HEIGHT)
    @viewport2.z = 50
    @viewport3.z = 100
  end
end

class Spriteset_Battle
  def create_viewports
    @viewport1 = Viewport.new(0, 0, WIDTH, HEIGHT)
    @viewport2 = Viewport.new(0, 0, WIDTH, HEIGHT)
    @viewport3 = Viewport.new(0, 0, WIDTH, HEIGHT)
    @viewport2.z = 50
    @viewport3.z = 100
  end
end

class Game_Player < Game_Character
  CENTER_X = (WIDTH / 2 - 16) * 8     # 画面中央の X 座標 * 8
  CENTER_Y = (HEIGHT / 2 - 16) * 8
end

class Sprite_Timer < Sprite
  def initialize(viewport)
    super(viewport)
    self.bitmap = Bitmap.new(88, 48)
    self.bitmap.font.name = "Arial"
    self.bitmap.font.size = 32
    self.x = WIDTH - self.bitmap.width
    self.y = 0
    self.z = 200
    update
  end
end

class Sprite_Base < Sprite
  def 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 = WIDTH / 2
        @animation_oy = HEIGHT / 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

class Window_Base < Window
  def x=(x)
    super(x + DELTA_WIDTH / 2)
  end
 
  def y=(y)
    super(y + DELTA_HEIGHT/ 2)
  end
end


class Scene_Battle < Scene_Base
  def create_info_viewport
    @info_viewport = Viewport.new(0, 288, WIDTH, HEIGHT)
    @info_viewport.z = 100
    @status_window = Window_BattleStatus.new
    @party_command_window = Window_PartyCommand.new
    @actor_command_window = Window_ActorCommand.new
    @status_window.viewport = @info_viewport
    @party_command_window.viewport = @info_viewport
    @actor_command_window.viewport = @info_viewport
    @status_window.x = 128
    @actor_command_window.x = 544
    @info_viewport.visible = false
  end
end

class Scene_Item < Scene_Base
   def start
    super
    create_menu_background
    @viewport = Viewport.new(0, 0, WIDTH, HEIGHT)
    @help_window = Window_Help.new
    @help_window.viewport = @viewport
    @item_window = Window_Item.new(0, 56, 544, 360)
    @item_window.help_window = @help_window
    @item_window.active = false
    @target_window = Window_MenuStatus.new(0,  0)
    hide_target_window
  end
 
  def show_target_window(right)
    @item_window.active = false
    width_remain = WIDTH - @target_window.width
    @target_window.x = right ? width_remain : 0
    @target_window.visible = true
    @target_window.active = true
    if right
      @viewport.rect.set(0, 0, width_remain, HEIGHT)
      @viewport.ox = 0
    else
      @viewport.rect.set(@target_window.width, 0, width_remain, HEIGHT)
      @viewport.ox = @target_window.width
    end
  end
 
  def hide_target_window
    @item_window.active = true
    @target_window.visible = false
    @target_window.active = false
    @viewport.rect.set(0, 0, WIDTH, HEIGHT)
    @viewport.ox = 0
  end
end

class Scene_Skill < Scene_Base
  def start
    super
    create_menu_background
    @actor = $game_party.members[@actor_index]
    @viewport = Viewport.new(0, 0, WIDTH, HEIGHT)
    @help_window = Window_Help.new
    @help_window.viewport = @viewport
    @status_window = Window_SkillStatus.new(0, 56, @actor)
    @status_window.viewport = @viewport
    @skill_window = Window_Skill.new(0, 112, 544, 304, @actor)
    @skill_window.viewport = @viewport
    @skill_window.help_window = @help_window
    @target_window = Window_MenuStatus.new(0, 0)
    hide_target_window
  end
 
  def show_target_window(right)
    @skill_window.active = false
    width_remain = WIDTH - @target_window.width
    @target_window.x = right ? width_remain : 0
    @target_window.visible = true
    @target_window.active = true
    if right
      @viewport.rect.set(0, 0, width_remain, HEIGHT)
      @viewport.ox = 0
    else
      @viewport.rect.set(@target_window.width, 0, width_remain, HEIGHT)
      @viewport.ox = @target_window.width
    end
  end

  def hide_target_window
    @skill_window.active = true
    @target_window.visible = false
    @target_window.active = false
    @viewport.rect.set(0, 0, WIDTH, HEIGHT)
    @viewport.ox = 0
  end
end






main 섹션의 제일 위부분에 아래 스크립트를 추가해주세요 ^^

Graphics.resize_screen(WIDTH, HEIGHT)

Comment '5'
  • ?
    뉴펜슬 2008.01.30 23:24

    아 저기위에있는 높이와 넓이를 자기가 원하는 정도록 하면 되군요.

  • ?
    ps인간 2008.01.31 11:44
    Graphics.resize_screen(WIDTH, HEIGHT)
    가안되시면
    Graphics.resize_screen(640, 480)으로 바꾸어주세요 이것도 안되면.. 모릅니다 ^^
    '
    그리고 타이틀에 문제가 잇는게아니라 사이즈가 안맞아서.. 그러니 rpgxp용 타이틀로 바꾸시면 됩니다(웬강좌?)
  • ?
    ps인간 2008.01.31 12:11
    문제점이 있네요.... 많약 그렇게 한다면 맵이  바탕화면 설정처럼 바둑판식으로 되네요ㅠㅠ
    아방스님 이거 문제입니다 ㅡㅡ
  • ?
    에스테반 2011.01.08 19:22

    이거 문제 있나요?

  • ?
    에드문드 2014.06.17 16:32
    해상도 스크립트군요.

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 3 습작 2012.12.24 5408
37 온라인 넷VX - 온라인 스크립트 29 아방스 2009.01.06 6750
36 전투 사이드뷰 애드온 7 비극ㆍ 2010.08.21 6758
35 전투 파이널 판타지 XIII 배틀 시스템 [출처:RRR포럼] 56 file WolV 2010.02.03 6795
34 전투 Spin Battle System [완성버젼] 38 file 할렘 2009.11.14 6835
33 HUD 심플한 맵 이름 띄우기 53 file RPGbooster 2008.10.08 6862
32 메뉴 모그메뉴 스킨입니다. 1 file 아부리 2009.02.16 6866
31 메뉴 몬스터도감 심플버전! 52 file 카르와푸딩의아틀리에 2009.06.30 6907
30 전투 전투배경을 자신이 원하는 형태로 45 file 아방스 2008.01.23 7141
29 미니맵 미니맵 띠우는 스크립트 ^^ 37 file 아방스 2008.06.02 7247
28 전투 ORBS_v1[1].06 전투시스템. 22 file 할렘 2009.02.06 7407
27 전투 VX SRPG 한글번역 (최종수정) 26 file 에틴 2010.08.25 7418
26 전투 사이드 뷰 시스템 [시트르산님 제공] 56 아방스 2010.11.29 7499
25 타이틀/게임오버 타이틀 메뉴 스크립트 50 아방스 2009.01.20 7503
24 배틀할때 몬스터의 HP표시 !! 5 file 미카엘 2008.08.17 7517
23 전투 Requiem SBABS (Requiem Squad Based Battle System) 14 vk 2009.02.07 7542
22 이동 및 탈것 8 방향 이동스크립트 + 스프라이트 효과 12 file 레오 2009.02.06 7562
21 전투 PRABS 2.0 액션배틀시스템 58 file RPGbooster 2008.10.08 7575
20 이동 및 탈것 2D 횡스크롤 스크립트 56 file 사람이라면? 2010.08.15 7575
19 메뉴 메뉴변경 스크립트 34 아방스 2008.01.24 7939
18 맵/타일 RPG 만들기 VX 로 구현한 3D~ 42 아방스 2008.09.02 8405
Board Pagination Prev 1 ... 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 Next
/ 32