设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2386|回复: 7
打印 上一主题 下一主题

[已经解决] 请教va的1280的分辨率是怎么实现的?

[复制链接]

Lv2.观梦者

梦石
0
星屑
592
在线时间
283 小时
注册时间
2011-8-31
帖子
101
跳转到指定楼层
1
发表于 2014-3-15 23:53:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
看到有人发帖实现了1280×720的分辨率,但是我用了突破限制的dll,最大也只能是1024×768,设置更高没有用。 请教如何实现1280的分辨率?

Lv1.梦旅人

梦石
0
星屑
50
在线时间
63 小时
注册时间
2014-3-16
帖子
62
2
发表于 2014-3-16 17:43:30 | 只看该作者
http://rpg.blue/thread-216674-1-1.html         请善用搜索功能
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
592
在线时间
283 小时
注册时间
2011-8-31
帖子
101
3
 楼主| 发表于 2014-3-16 21:44:40 | 只看该作者
Dream_tim 发表于 2014-3-16 17:43
http://rpg.blue/thread-216674-1-1.html         请善用搜索功能

对方已明确说明:

      A:dll只是解除分辨率扩大指令的限制,扩大分辨率需要在脚本里手动加入,例如
          1.打开工程,按F11打开脚本编辑器
          2.找到名字为Main的脚本页,在【rgss_main { SceneManager.run }】
                             这句上面加上一句
                                                             【Graphics.resize_screen(800,600)】
                             其中800和600是分辨率参数,可以在1-1024、1-768范围内修改.

这个是不能扩大到1280的分辨率的。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
92 小时
注册时间
2013-2-23
帖子
130
4
发表于 2014-3-17 00:47:57 | 只看该作者
试试用这个DLL吧

RGSS300.rar

803.13 KB, 下载次数: 184

梦想是成为触手的新手DE☆SU(<ゝω·)绮罗星 ~☆
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
592
在线时间
283 小时
注册时间
2011-8-31
帖子
101
5
 楼主| 发表于 2014-3-17 05:29:44 | 只看该作者
sh0016 发表于 2014-3-17 00:47
试试用这个DLL吧

这个dll真心强大!不止可以扩大分辨率,更能提帧,原来的dll帧数是30+,换了这个直接60帧!

不过用这个dll扩大分辨率后,屏幕右方和下方原本有地图的地方会变成黑边,图像位移没有居中,不知道怎么解决?

点评

可以用YF的CORE脚本 http://yanflychannel.wordpress.com/rmvxa/core-scripts/ace-core-engine/  发表于 2014-3-17 22:38
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
592
在线时间
283 小时
注册时间
2011-8-31
帖子
101
6
 楼主| 发表于 2014-3-18 16:10:23 | 只看该作者
楼上给的地址打不开……
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
92 小时
注册时间
2013-2-23
帖子
130
7
发表于 2014-3-18 21:22:56 | 只看该作者
本帖最后由 sh0016 于 2014-3-18 21:29 编辑

为什么会打不开......

完整脚本,里面有些覆盖def,说不定会有其他不必要的功能,但如果也有使用YF的其他脚本推荐用完整的
  1. #==============================================================================
  2. #
  3. # ▼ Yanfly Engine Ace - Ace Core Engine v1.09
  4. # -- Last Updated: 2012.02.19
  5. # -- Level: Easy, Normal
  6. # -- Requires: n/a
  7. #
  8. #==============================================================================

  9. $imported = {} if $imported.nil?
  10. $imported["YEA-CoreEngine"] = true

  11. #==============================================================================
  12. # ▼ Updates
  13. # =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  14. # 2012.02.19 - Bug Fixed: Parallax updating works properly with looping maps.
  15. # 2012.02.10 - Bug Fixed: Forced actions no longer cancel out other actions
  16. #              that have been queued up for later.
  17. # 2012.01.08 - Font resets no longer reset bold and italic to off, but instead
  18. #              to whatever default you've set.
  19. # 2011.12.26 - New Bugfix: When using substitute, allies will no longer take
  20. #              place of low HP allies for friendly skills.
  21. # 2011.12.20 - New Bugfix: Force Action no longer cancels out an actor's queue.
  22. #              Credits to Yami for finding and making the fix for!
  23. #              Switch added for those who want removed forced action battlers.
  24. # 2011.12.15 - Updated for better menu gauge appearance.
  25. # 2011.12.10 - Bug Fixed: Right and bottom sides of the map would show
  26. #              the left and top sides of the map.
  27. #            - Bug Fixed: Viewport sizes didn't refresh from smaller maps.
  28. # 2011.12.07 - New Bugfix: Dual weapon normal attacks will now play both
  29. #              animations without one animation interrupting the other.
  30. # 2011.12.04 - Updated certain GUI extensions for increased screen size.
  31. #            - More efficient digit grouping method credits to TDS.
  32. # 2011.12.01 - Started Script and Finished.
  33. #
  34. #==============================================================================
  35. # ▼ Introduction
  36. # =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  37. # This is the core engine for Yanfly Engine Ace, made for RPG Maker VX Ace.
  38. # This script provides various changes made to the main engine including bug
  39. # fixes and GUI upgrades.
  40. #
  41. # -----------------------------------------------------------------------------
  42. # Bug Fix: Animation Overlay
  43. # -----------------------------------------------------------------------------
  44. # - It's the same bug from VX. When an all-screen animation is played against a
  45. # group of enemies, the animation bitmap is actually made multiple times, thus
  46. # causing a pretty extreme overlay when there are a lot of enemies on screen.
  47. # This fix will cause the animation to play only once.
  48. #
  49. # -----------------------------------------------------------------------------
  50. # Bug Fix: Animation Interruption
  51. # -----------------------------------------------------------------------------
  52. # - A new bug. When a character dual wields and attacks a single target, if an
  53. # animation lasts too long, it will interrupt and/or halt the next animation
  54. # from occurring. This script will cause the first animation to finish playing
  55. # and then continue forth.
  56. #
  57. # -----------------------------------------------------------------------------
  58. # Bug Fix: Battle Turn Order Fix
  59. # -----------------------------------------------------------------------------
  60. # - Same bug from VX. For those who use the default battle system, once a
  61. # turn's started, the action order for the turn becomes set and unchanged for
  62. # the remainder of that turn. Any changes to a battler's AGI will not be
  63. # altered at all even if the battler were to receive an AGI buff or debuff.
  64. # This fix will cause the speed to be updated properly upon each action.
  65. #
  66. # -----------------------------------------------------------------------------
  67. # Bug Fix: Forced Action Fix
  68. # -----------------------------------------------------------------------------
  69. # - A new bug. When a battler is forced to perform an action, the battler's
  70. # queued action is removed and the battler loses its place in battle. This
  71. # fix will resume queue after a forced action.
  72. #
  73. # -----------------------------------------------------------------------------
  74. # Bug Fix: Gauge Overlap Fix
  75. # -----------------------------------------------------------------------------
  76. # - Same bug from VX. When some values exceed certain amounts, gauges can
  77. # overextend past the width they were originally designed to fit in. This fix
  78. # will prevent any overextending from gauges.
  79. #
  80. # -----------------------------------------------------------------------------
  81. # Bug Fix: Held L and R Menu Scrolling
  82. # -----------------------------------------------------------------------------
  83. # - Before in VX, you can scroll through menus by holding down L and R buttons
  84. # (Q and W on the keyboard) to scroll through menus quickly. This fix will
  85. # re-enable the ability to scroll through menus in such a fashion. Disable it
  86. # in the module if you wish to.
  87. #
  88. # -----------------------------------------------------------------------------
  89. # Bug Fix: Substitute Healing
  90. # -----------------------------------------------------------------------------
  91. # If an actor has the substitute (cover) flag on them, they will attempt to
  92. # take the place of low HP allies when they're the target of attack. However,
  93. # this is also the case for friendly skills such as heal. This script will fix
  94. # it where if a battler targets an ally, no substitutes will take place.
  95. #
  96. # -----------------------------------------------------------------------------
  97. # New Feature: Screen Resolution Size
  98. # -----------------------------------------------------------------------------
  99. # - The screen can now be resized from 544x416 with ease and still support maps
  100. # that are smaller than 544x416. Maps smaller than 544x416 will be centered on
  101. # the screen without having sprites jumping all over the place.
  102. #
  103. # -----------------------------------------------------------------------------
  104. # New Feature: Adjust Animation Speed
  105. # -----------------------------------------------------------------------------
  106. # - RPG Maker VX Ace plays animations at a rate of 15 FPS by default. Speed up
  107. # the animations by changing a simple constant in the module.
  108. #
  109. # -----------------------------------------------------------------------------
  110. # New Feature: GUI Modifications
  111. # -----------------------------------------------------------------------------
  112. # - There are quite a lot of different modifications you can do to the GUI.
  113. # This includes placing outlines around your gauges, changing the colours of
  114. # each individual font aspect, and more. Also, you can change the default font
  115. # setting for your games here.
  116. #
  117. # -----------------------------------------------------------------------------
  118. # New Feature: Numeric Digit Grouping
  119. # -----------------------------------------------------------------------------
  120. # This will change various scenes to display numbers in groups where they are
  121. # separated by a comma every three digits. Thus, a number like 1234567 will
  122. # show up as 1,234,567. This allows for players to read numbers quicker.
  123. #
  124. # And that's all for the bug fixes and features!
  125. #
  126. #==============================================================================
  127. # ▼ Instructions
  128. # =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  129. # To install this script, open up your script editor and copy/paste this script
  130. # to an open slot below ▼ Materials/素材 but above ▼ Main. Remember to save.
  131. #
  132. #==============================================================================
  133. # ▼ Compatibility
  134. # =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  135. # This script is made strictly for RPG Maker VX Ace. It is highly unlikely that
  136. # it will run with RPG Maker VX without adjusting.
  137. #
  138. #==============================================================================

  139. module YEA
  140.   module CORE
  141.    
  142.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  143.     # - Screen Resolution Size -
  144.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  145.     # RPG Maker VX Ace has the option of having larger width and height for
  146.     # your games. Resizing the width and height will have these changes:
  147.     #
  148.     #              Default   Resized   Min Tiles Default   Min Tiles New
  149.     #    Width       544       640           17                 20
  150.     #    Height      416       480           13                 15
  151.     #
  152.     # * Note: Maximum width is 640 while maximum height is 480.
  153.     #         Minimum width is 110 while maximum height is 10.
  154.     #         These are limitations set by RPG Maker VX Ace's engine.
  155.     #
  156.     # By selecting resize, all of the default menus will have their windows
  157.     # adjusted, but scripts provided by non-Yanfly Engine sources may or may
  158.     # not adjust themselves properly.
  159.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  160.     RESIZE_WIDTH  = 640
  161.     RESIZE_HEIGHT = 416
  162.    
  163.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  164.     # - Adjust Animation Speed -
  165.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  166.     # By default, the animation speed played in battles operates at 15 FPS
  167.     # (frames per second). For those who would like to speed it up, change this
  168.     # constant to one of these values:
  169.     #   RATE   Speed
  170.     #     4      15 fps
  171.     #     3      20 fps
  172.     #     2      30 fps
  173.     #     1      60 fps
  174.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  175.     ANIMATION_RATE = 3
  176.    
  177.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  178.     # - Digit Grouping -
  179.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  180.     # Setting this to true will cause numbers to be grouped together when they
  181.     # are larger than a thousand. For example, 12345 will appear as 12,345.
  182.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  183.     GROUP_DIGITS = true
  184.    
  185.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  186.     # - Font Settings -
  187.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  188.     # Adjust the default font settings for your game here. The various settings
  189.     # will be explained below.
  190.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  191.     FONT_NAME = ["VL Gothic", "Verdana", "Arial", "Courier"]
  192.     # This adjusts the fonts used for your game. If the font at the start of
  193.     # the array doesn't exist on the player's computer, it'll use the next one.
  194.     FONT_SIZE = 24       # Adjusts font size. Default: 24
  195.     FONT_BOLD = false   # Makes font bold. Default: false
  196.     FONT_ITALIC = false  # Makes font italic. Default: false
  197.     FONT_SHADOW = false  # Gives font a shadow. Default: false
  198.     FONT_OUTLINE = true  # Gives font an outline. Default: true
  199.     FONT_COLOUR = Color.new(255, 255, 255, 255)   # Default: 255, 255, 255, 255
  200.     FONT_OUTLINE_COLOUR = Color.new(0, 0, 0, 128) # Default:   0,   0,   0, 128
  201.    
  202.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  203.     # - Forced Action Settings -
  204.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  205.     # For those who would like to allow the game to remove a forced action
  206.     # battler from the queue list, use the switch below. If you don't want to
  207.     # use this option, set the switch ID to 0.
  208.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  209.     FORCED_ACTION_REMOVE_SWITCH = 0
  210.    
  211.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  212.     # - Gauge Appearance Settings -
  213.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  214.     # You can modify the way your gauges appear in the game. If you wish for
  215.     # them to have an outline, it's possible. You can also adjust the height
  216.     # of the gauges, too.
  217.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  218.     GAUGE_OUTLINE = true
  219.     GAUGE_HEIGHT = 12
  220.    
  221.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  222.     # - Held L and R Menu Scrolling -
  223.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  224.     # VX gave the ability to scroll through menus quickly through holding the
  225.     # L and R buttons (Q and W on the keyboard). VX Ace disabled it. Now, you
  226.     # can re-enable the ability to scroll faster by setting this constant to
  227.     # true. To disable it, set this constant to false.
  228.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  229.     QUICK_SCROLLING = true
  230.    
  231.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  232.     # - System Text Colours -
  233.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  234.     # Sometimes the system text colours are boring as just orange for HP, blue
  235.     # for MP, and green for TP. Change the values here. Each number corresponds
  236.     # to the colour index of the Window.png skin found in Graphics\System.
  237.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  238.     COLOURS ={
  239.     # :text       => ID
  240.       :normal     =>  0,   # Default:  0
  241.       :system     => 16,   # Default: 16
  242.       :crisis     => 17,   # Default: 17
  243.       :knockout   => 18,   # Default: 18
  244.       :gauge_back => 19,   # Default: 19
  245.       :hp_gauge1  => 28,   # Default: 20
  246.       :hp_gauge2  => 29,   # Default: 21
  247.       :mp_gauge1  => 22,   # Default: 22
  248.       :mp_gauge2  => 23,   # Default: 23
  249.       :mp_cost    => 23,   # Default: 23
  250.       :power_up   => 24,   # Default: 24
  251.       :power_down => 25,   # Default: 25
  252.       :tp_gauge1  => 10,   # Default: 28
  253.       :tp_gauge2  =>  2,   # Default: 29
  254.       :tp_cost    =>  2,   # Default: 29
  255.     } # Do not remove this.
  256.    
  257.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  258.     # - System Text Options -
  259.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  260.     # Here, you can adjust the transparency used for disabled items, the %
  261.     # needed for HP and MP to enter "crisis" mode.
  262.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  263.     TRANSPARENCY = 160   # Adjusts transparency of disabled items. Default: 160
  264.     HP_CRISIS = 0.25     # When HP is considered critical. Default: 0.25
  265.     MP_CRISIS = 0.25     # When MP is considered critical. Default: 0.25
  266.     ITEM_AMOUNT = "×%s"  # The prefix used for item amounts.
  267.    
  268.   end # CORE
  269. end # YEA

  270. #==============================================================================
  271. # ▼ Editting anything past this point may potentially result in causing
  272. # computer damage, incontinence, explosion of user's head, coma, death, and/or
  273. # halitosis so edit at your own risk.
  274. #==============================================================================

  275. Graphics.resize_screen(YEA::CORE::RESIZE_WIDTH, YEA::CORE::RESIZE_HEIGHT)
  276. Font.default_name = YEA::CORE::FONT_NAME
  277. Font.default_size = YEA::CORE::FONT_SIZE
  278. Font.default_bold = YEA::CORE::FONT_BOLD
  279. Font.default_italic = YEA::CORE::FONT_ITALIC
  280. Font.default_shadow = YEA::CORE::FONT_SHADOW
  281. Font.default_outline = YEA::CORE::FONT_OUTLINE
  282. Font.default_color = YEA::CORE::FONT_COLOUR
  283. Font.default_out_color = YEA::CORE::FONT_OUTLINE_COLOUR

  284. #==============================================================================
  285. # ■ Numeric
  286. #==============================================================================

  287. class Numeric  
  288.   
  289.   #--------------------------------------------------------------------------
  290.   # new method: group_digits
  291.   #--------------------------------------------------------------------------
  292.   def group
  293.     return self.to_s unless YEA::CORE::GROUP_DIGITS
  294.     self.to_s.gsub(/(\d)(?=\d{3}+(?:\.|$))(\d{3}\..*)?/,'\1,\2')
  295.   end
  296.   
  297. end # Numeric

  298. #==============================================================================
  299. # ■ Switch
  300. #==============================================================================

  301. module Switch
  302.   
  303.   #--------------------------------------------------------------------------
  304.   # self.forced_action_remove
  305.   #--------------------------------------------------------------------------
  306.   def self.forced_action_remove
  307.     return false if YEA::CORE::FORCED_ACTION_REMOVE_SWITCH <= 0
  308.     return $game_switches[YEA::CORE::FORCED_ACTION_REMOVE_SWITCH]
  309.   end
  310.   
  311. end # Switch

  312. #==============================================================================
  313. # ■ BattleManager
  314. #==============================================================================

  315. module BattleManager
  316.   
  317.   #--------------------------------------------------------------------------
  318.   # overwrite method: turn_start
  319.   #--------------------------------------------------------------------------
  320.   def self.turn_start
  321.     @phase = :turn
  322.     clear_actor
  323.     $game_troop.increase_turn
  324.     @performed_battlers = []
  325.     make_action_orders
  326.   end
  327.   
  328.   #--------------------------------------------------------------------------
  329.   # overwrite method: next_subject
  330.   #--------------------------------------------------------------------------
  331.   def self.next_subject
  332.     @performed_battlers = [] if @performed_battlers.nil?
  333.     loop do
  334.       @action_battlers -= @performed_battlers
  335.       battler = @action_battlers.shift
  336.       return nil unless battler
  337.       next unless battler.index && battler.alive?
  338.       @performed_battlers.push(battler)
  339.       return battler
  340.     end
  341.   end
  342.   
  343.   #--------------------------------------------------------------------------
  344.   # overwrite method: force_action
  345.   #--------------------------------------------------------------------------
  346.   def self.force_action(battler)
  347.     @action_forced = [] if @action_forced == nil
  348.     @action_forced.push(battler)
  349.     return unless Switch.forced_action_remove
  350.     @action_battlers.delete(battler)
  351.   end
  352.   
  353.   #--------------------------------------------------------------------------
  354.   # overwrite method: action_forced?
  355.   #--------------------------------------------------------------------------
  356.   def self.action_forced?
  357.     @action_forced != nil
  358.   end
  359.   
  360.   #--------------------------------------------------------------------------
  361.   # overwrite method: action_forced_battler
  362.   #--------------------------------------------------------------------------
  363.   def self.action_forced_battler
  364.     @action_forced.shift
  365.   end
  366.   
  367.   #--------------------------------------------------------------------------
  368.   # overwrite method: clear_action_force
  369.   #--------------------------------------------------------------------------
  370.   def self.clear_action_force
  371.     @action_forced = nil if @action_forced.empty?
  372.   end
  373.   
  374. end # BattleManager

  375. #==============================================================================
  376. # ■ Game_Battler
  377. #==============================================================================

  378. class Game_Battler < Game_BattlerBase
  379.   
  380.   #--------------------------------------------------------------------------
  381.   # public instance variables
  382.   #--------------------------------------------------------------------------
  383.   attr_accessor :pseudo_ani_id
  384.   
  385.   #--------------------------------------------------------------------------
  386.   # alias method: clear_sprite_effects
  387.   #--------------------------------------------------------------------------
  388.   alias game_battler_clear_sprite_effects_ace clear_sprite_effects
  389.   def clear_sprite_effects
  390.     game_battler_clear_sprite_effects_ace
  391.     @pseudo_ani_id = 0
  392.   end
  393.   
  394.   #--------------------------------------------------------------------------
  395.   # alias method: force_action
  396.   #--------------------------------------------------------------------------
  397.   alias game_battler_force_action_ace force_action
  398.   def force_action(skill_id, target_index)
  399.     clone_current_actions
  400.     game_battler_force_action_ace(skill_id, target_index)
  401.   end
  402.   
  403.   #--------------------------------------------------------------------------
  404.   # new method: clone_current_actions
  405.   #--------------------------------------------------------------------------
  406.   def clone_current_actions
  407.     @cloned_actions = @actions.dup
  408.   end
  409.   
  410.   #--------------------------------------------------------------------------
  411.   # new method: restore_cloned_actions
  412.   #--------------------------------------------------------------------------
  413.   def restore_cloned_actions
  414.     return if @cloned_actions.nil?
  415.     @actions = @cloned_actions.dup
  416.     @cloned_actions = nil
  417.   end
  418.   
  419.   #--------------------------------------------------------------------------
  420.   # alias method: on_action_end
  421.   #--------------------------------------------------------------------------
  422.   alias game_battler_on_action_end_ace on_action_end
  423.   def on_action_end
  424.     game_battler_on_action_end_ace
  425.     restore_cloned_actions
  426.   end
  427.   
  428.   #--------------------------------------------------------------------------
  429.   # alias method: on_battle_end
  430.   #--------------------------------------------------------------------------
  431.   alias game_battler_on_battle_end_ace on_battle_end
  432.   def on_battle_end
  433.     game_battler_on_battle_end_ace
  434.     @cloned_actions = nil
  435.   end
  436.   
  437. end # Game_Battler

  438. #==============================================================================
  439. # ■ Game_Troop
  440. #==============================================================================

  441. class Game_Troop < Game_Unit
  442.   
  443.   #--------------------------------------------------------------------------
  444.   # overwrite method: setup
  445.   #--------------------------------------------------------------------------
  446.   def setup(troop_id)
  447.     clear
  448.     @troop_id = troop_id
  449.     @enemies = []
  450.     troop.members.each do |member|
  451.       next unless $data_enemies[member.enemy_id]
  452.       enemy = Game_Enemy.new(@enemies.size, member.enemy_id)
  453.       enemy.hide if member.hidden
  454.       enemy.screen_x = member.x + (Graphics.width - 544)/2
  455.       enemy.screen_y = member.y + (Graphics.height - 416)
  456.       @enemies.push(enemy)
  457.     end
  458.     init_screen_tone
  459.     make_unique_names
  460.   end
  461.   
  462. end # Game_Troop

  463. #==============================================================================
  464. # ■ Game_Map
  465. #==============================================================================

  466. class Game_Map
  467.   
  468.   #--------------------------------------------------------------------------
  469.   # overwrite method: scroll_down
  470.   #--------------------------------------------------------------------------
  471.   def scroll_down(distance)
  472.     if loop_vertical?
  473.       @display_y += distance
  474.       @display_y %= @map.height * 256
  475.       @parallax_y += distance if @parallax_loop_y
  476.     else
  477.       last_y = @display_y
  478.       dh = Graphics.height > height * 32 ? height : screen_tile_y
  479.       @display_y = [@display_y + distance, height - dh].min
  480.       @parallax_y += @display_y - last_y
  481.     end
  482.   end
  483.   
  484.   #--------------------------------------------------------------------------
  485.   # overwrite method: scroll_right
  486.   #--------------------------------------------------------------------------
  487.   def scroll_right(distance)
  488.     if loop_horizontal?
  489.       @display_x += distance
  490.       @display_x %= @map.width * 256
  491.       @parallax_x += distance if @parallax_loop_x
  492.     else
  493.       last_x = @display_x
  494.       dw = Graphics.width > width * 32 ? width : screen_tile_x
  495.       @display_x = [@display_x + distance, width - dw].min
  496.       @parallax_x += @display_x - last_x
  497.     end
  498.   end
  499.   
  500. end # Game_Map

  501. #==============================================================================
  502. # ■ Game_Event
  503. #==============================================================================

  504. class Game_Event < Game_Character
  505.   
  506.   #--------------------------------------------------------------------------
  507.   # overwrite method: near_the_screen?
  508.   #--------------------------------------------------------------------------
  509.   def near_the_screen?(dx = nil, dy = nil)
  510.     dx = [Graphics.width, $game_map.width * 256].min/32 - 5 if dx.nil?
  511.     dy = [Graphics.height, $game_map.height * 256].min/32 - 5 if dy.nil?
  512.     ax = $game_map.adjust_x(@real_x) - Graphics.width / 2 / 32
  513.     ay = $game_map.adjust_y(@real_y) - Graphics.height / 2 / 32
  514.     ax >= -dx && ax <= dx && ay >= -dy && ay <= dy
  515.   end
  516.   
  517. end # Game_Event

  518. #==============================================================================
  519. # ■ Sprite_Base
  520. #==============================================================================

  521. class Sprite_Base < Sprite
  522.   
  523.   #--------------------------------------------------------------------------
  524.   # overwrite method: set_animation_rate
  525.   #--------------------------------------------------------------------------
  526.   def set_animation_rate
  527.     @ani_rate = YEA::CORE::ANIMATION_RATE
  528.   end
  529.   
  530.   #--------------------------------------------------------------------------
  531.   # new method: start_pseudo_animation
  532.   #--------------------------------------------------------------------------
  533.   def start_pseudo_animation(animation, mirror = false)
  534.     dispose_animation
  535.     @animation = animation
  536.     return if @animation.nil?
  537.     @ani_mirror = mirror
  538.     set_animation_rate
  539.     @ani_duration = @animation.frame_max * @ani_rate + 1
  540.     @ani_sprites = []
  541.   end
  542.   
  543. end # Sprite_Base

  544. #==============================================================================
  545. # ■ Sprite_Battler
  546. #==============================================================================

  547. class Sprite_Battler < Sprite_Base
  548.   
  549.   #--------------------------------------------------------------------------
  550.   # alias method: setup_new_animation
  551.   #--------------------------------------------------------------------------
  552.   alias sprite_battler_setup_new_animation_ace setup_new_animation
  553.   def setup_new_animation
  554.     sprite_battler_setup_new_animation_ace
  555.     return if @battler.nil?
  556.     return if @battler.pseudo_ani_id.nil?
  557.     return if @battler.pseudo_ani_id <= 0
  558.     animation = $data_animations[@battler.pseudo_ani_id]
  559.     mirror = @battler.animation_mirror
  560.     start_pseudo_animation(animation, mirror)
  561.     @battler.pseudo_ani_id = 0
  562.   end
  563.   
  564. end # Sprite_Battler

  565. #==============================================================================
  566. # ■ Spriteset_Map
  567. #==============================================================================

  568. class Spriteset_Map
  569.   
  570.   #--------------------------------------------------------------------------
  571.   # overwrite method: create_viewports
  572.   #--------------------------------------------------------------------------
  573.   def create_viewports
  574.     if Graphics.width > $game_map.width * 32 && !$game_map.loop_horizontal?
  575.       dx = (Graphics.width - $game_map.width * 32) / 2
  576.     else
  577.       dx = 0
  578.     end
  579.     dw = [Graphics.width, $game_map.width * 32].min
  580.     dw = Graphics.width if $game_map.loop_horizontal?
  581.     if Graphics.height > $game_map.height * 32 && !$game_map.loop_vertical?
  582.       dy = (Graphics.height - $game_map.height * 32) / 2
  583.     else
  584.       dy = 0
  585.     end
  586.     dh = [Graphics.height, $game_map.height * 32].min
  587.     dh = Graphics.height if $game_map.loop_vertical?
  588.     @viewport1 = Viewport.new(dx, dy, dw, dh)
  589.     @viewport2 = Viewport.new(dx, dy, dw, dh)
  590.     @viewport3 = Viewport.new(dx, dy, dw, dh)
  591.     @viewport2.z = 50
  592.     @viewport3.z = 100
  593.   end
  594.   
  595.   #--------------------------------------------------------------------------
  596.   # new method: update_viewport_sizes
  597.   #--------------------------------------------------------------------------
  598.   def update_viewport_sizes
  599.     if Graphics.width > $game_map.width * 32 && !$game_map.loop_horizontal?
  600.       dx = (Graphics.width - $game_map.width * 32) / 2
  601.     else
  602.       dx = 0
  603.     end
  604.     dw = [Graphics.width, $game_map.width * 32].min
  605.     dw = Graphics.width if $game_map.loop_horizontal?
  606.     if Graphics.height > $game_map.height * 32 && !$game_map.loop_vertical?
  607.       dy = (Graphics.height - $game_map.height * 32) / 2
  608.     else
  609.       dy = 0
  610.     end
  611.     dh = [Graphics.height, $game_map.height * 32].min
  612.     dh = Graphics.height if $game_map.loop_vertical?
  613.     rect = Rect.new(dx, dy, dw, dh)
  614.     for viewport in [@viewport1, @viewport2, @viewport3]
  615.       viewport.rect = rect
  616.     end
  617.   end
  618.   
  619. end # Spriteset_Map

  620. #==============================================================================
  621. # ■ Window_Base
  622. #==============================================================================

  623. class Window_Base < Window
  624.   
  625.   #--------------------------------------------------------------------------
  626.   # overwrite method: reset_font_settings
  627.   #--------------------------------------------------------------------------
  628.   def reset_font_settings
  629.     change_color(normal_color)
  630.     contents.font.size = Font.default_size
  631.     contents.font.bold = Font.default_bold
  632.     contents.font.italic = Font.default_italic
  633.     contents.font.out_color = Font.default_out_color
  634.   end
  635.   
  636.   #--------------------------------------------------------------------------
  637.   # overwrite methods: color
  638.   #--------------------------------------------------------------------------
  639.   def normal_color;      text_color(YEA::CORE::COLOURS[:normal]);      end;
  640.   def system_color;      text_color(YEA::CORE::COLOURS[:system]);      end;
  641.   def crisis_color;      text_color(YEA::CORE::COLOURS[:crisis]);      end;
  642.   def knockout_color;    text_color(YEA::CORE::COLOURS[:knockout]);    end;
  643.   def gauge_back_color;  text_color(YEA::CORE::COLOURS[:gauge_back]);  end;
  644.   def hp_gauge_color1;   text_color(YEA::CORE::COLOURS[:hp_gauge1]);   end;
  645.   def hp_gauge_color2;   text_color(YEA::CORE::COLOURS[:hp_gauge2]);   end;
  646.   def mp_gauge_color1;   text_color(YEA::CORE::COLOURS[:mp_gauge1]);   end;
  647.   def mp_gauge_color2;   text_color(YEA::CORE::COLOURS[:mp_gauge2]);   end;
  648.   def mp_cost_color;     text_color(YEA::CORE::COLOURS[:mp_cost]);     end;
  649.   def power_up_color;    text_color(YEA::CORE::COLOURS[:power_up]);    end;
  650.   def power_down_color;  text_color(YEA::CORE::COLOURS[:power_down]);  end;
  651.   def tp_gauge_color1;   text_color(YEA::CORE::COLOURS[:tp_gauge1]);   end;
  652.   def tp_gauge_color2;   text_color(YEA::CORE::COLOURS[:tp_gauge2]);   end;
  653.   def tp_cost_color;     text_color(YEA::CORE::COLOURS[:tp_cost]);     end;
  654.   
  655.   #--------------------------------------------------------------------------
  656.   # overwrite method: translucent_alpha
  657.   #--------------------------------------------------------------------------
  658.   def translucent_alpha
  659.     return YEA::CORE::TRANSPARENCY
  660.   end
  661.   
  662.   #--------------------------------------------------------------------------
  663.   # overwrite method: hp_color
  664.   #--------------------------------------------------------------------------
  665.   def hp_color(actor)
  666.     return knockout_color if actor.hp == 0
  667.     return crisis_color if actor.hp < actor.mhp * YEA::CORE::HP_CRISIS
  668.     return normal_color
  669.   end
  670.   #--------------------------------------------------------------------------
  671.   # overwrite method: mp_color
  672.   #--------------------------------------------------------------------------
  673.   def mp_color(actor)
  674.     return crisis_color if actor.mp < actor.mmp * YEA::CORE::MP_CRISIS
  675.     return normal_color
  676.   end
  677.   
  678.   #--------------------------------------------------------------------------
  679.   # overwrite method: draw_gauge
  680.   #--------------------------------------------------------------------------
  681.   def draw_gauge(dx, dy, dw, rate, color1, color2)
  682.     dw -= 2 if YEA::CORE::GAUGE_OUTLINE
  683.     fill_w = [(dw * rate).to_i, dw].min
  684.     gauge_h = YEA::CORE::GAUGE_HEIGHT
  685.     gauge_y = dy + line_height - 2 - gauge_h
  686.     if YEA::CORE::GAUGE_OUTLINE
  687.       outline_colour = gauge_back_color
  688.       outline_colour.alpha = translucent_alpha
  689.       contents.fill_rect(dx, gauge_y-1, dw+2, gauge_h+2, outline_colour)
  690.       dx += 1
  691.     end
  692.     contents.fill_rect(dx, gauge_y, dw, gauge_h, gauge_back_color)
  693.     contents.gradient_fill_rect(dx, gauge_y, fill_w, gauge_h, color1, color2)
  694.   end
  695.   
  696.   #--------------------------------------------------------------------------
  697.   # overwrite method: draw_actor_level
  698.   #--------------------------------------------------------------------------
  699.   def draw_actor_level(actor, dx, dy)
  700.     change_color(system_color)
  701.     draw_text(dx, dy, 32, line_height, Vocab::level_a)
  702.     change_color(normal_color)
  703.     draw_text(dx + 32, dy, 24, line_height, actor.level.group, 2)
  704.   end
  705.   
  706.   #--------------------------------------------------------------------------
  707.   # overwrite method: draw_current_and_max_values
  708.   #--------------------------------------------------------------------------
  709.   def draw_current_and_max_values(dx, dy, dw, current, max, color1, color2)
  710.     total = current.group + "/" + max.group
  711.     if dw < text_size(total).width + text_size(Vocab.hp).width
  712.       change_color(color1)
  713.       draw_text(dx, dy, dw, line_height, current.group, 2)
  714.     else
  715.       xr = dx + text_size(Vocab.hp).width
  716.       dw -= text_size(Vocab.hp).width
  717.       change_color(color2)
  718.       text = "/" + max.group
  719.       draw_text(xr, dy, dw, line_height, text, 2)
  720.       dw -= text_size(text).width
  721.       change_color(color1)
  722.       draw_text(xr, dy, dw, line_height, current.group, 2)
  723.     end
  724.   end
  725.   
  726.   #--------------------------------------------------------------------------
  727.   # overwrite method: draw_actor_tp
  728.   #--------------------------------------------------------------------------
  729.   def draw_actor_tp(actor, x, y, width = 124)
  730.     draw_gauge(x, y, width, actor.tp_rate, tp_gauge_color1, tp_gauge_color2)
  731.     change_color(system_color)
  732.     draw_text(x, y, 30, line_height, Vocab::tp_a)
  733.     change_color(tp_color(actor))
  734.     draw_text(x + width - 42, y, 42, line_height, actor.tp.to_i.group, 2)
  735.   end
  736.   
  737.   #--------------------------------------------------------------------------
  738.   # overwrite method: draw_actor_param
  739.   #--------------------------------------------------------------------------
  740.   def draw_actor_param(actor, x, y, param_id)
  741.     change_color(system_color)
  742.     draw_text(x, y, 120, line_height, Vocab::param(param_id))
  743.     change_color(normal_color)
  744.     draw_text(x + 120, y, 36, line_height, actor.param(param_id).group, 2)
  745.   end
  746.   
  747.   #--------------------------------------------------------------------------
  748.   # overwrite method: draw_currency_value
  749.   #--------------------------------------------------------------------------
  750.   def draw_currency_value(value, unit, x, y, width)
  751.     cx = text_size(unit).width
  752.     change_color(normal_color)
  753.     draw_text(x, y, width - cx - 2, line_height, value.group, 2)
  754.     change_color(system_color)
  755.     draw_text(x, y, width, line_height, unit, 2)
  756.   end
  757.   
  758.   #--------------------------------------------------------------------------
  759.   # overwrite method: draw_actor_simple_status
  760.   #--------------------------------------------------------------------------
  761.   def draw_actor_simple_status(actor, dx, dy)
  762.     draw_actor_name(actor, dx, dy)
  763.     draw_actor_level(actor, dx, dy + line_height * 1)
  764.     draw_actor_icons(actor, dx, dy + line_height * 2)
  765.     dw = contents.width - dx - 124
  766.     draw_actor_class(actor, dx + 120, dy, dw)
  767.     draw_actor_hp(actor, dx + 120, dy + line_height * 1, dw)
  768.     draw_actor_mp(actor, dx + 120, dy + line_height * 2, dw)
  769.   end
  770.   
  771. end # Window_Base

  772. #==============================================================================
  773. # ■ Window_Selectable
  774. #==============================================================================

  775. class Window_Selectable < Window_Base
  776.   
  777.   #--------------------------------------------------------------------------
  778.   # overwrite method: process_cursor_move
  779.   #--------------------------------------------------------------------------
  780.   if YEA::CORE::QUICK_SCROLLING
  781.   def process_cursor_move
  782.     return unless cursor_movable?
  783.     last_index = @index
  784.     cursor_down (Input.trigger?(:DOWN))  if Input.repeat?(:DOWN)
  785.     cursor_up   (Input.trigger?(:UP))    if Input.repeat?(:UP)
  786.     cursor_right(Input.trigger?(:RIGHT)) if Input.repeat?(:RIGHT)
  787.     cursor_left (Input.trigger?(:LEFT))  if Input.repeat?(:LEFT)
  788.     cursor_pagedown   if !handle?(:pagedown) && Input.repeat?(:R)
  789.     cursor_pageup     if !handle?(:pageup)   && Input.repeat?(:L)
  790.     Sound.play_cursor if [url=home.php?mod=space&uid=370741]@Index[/url] != last_index
  791.   end
  792.   end # YEA::CORE::QUICK_SCROLLING
  793.   
  794. end # Window_Selectable

  795. #==============================================================================
  796. # ■ Window_ItemList
  797. #==============================================================================

  798. class Window_ItemList < Window_Selectable
  799.   
  800.   #--------------------------------------------------------------------------
  801.   # overwrite method: draw_item
  802.   #--------------------------------------------------------------------------
  803.   def draw_item(index)
  804.     item = @data[index]
  805.     return if item.nil?
  806.     rect = item_rect(index)
  807.     rect.width -= 4
  808.     draw_item_name(item, rect.x, rect.y, enable?(item), rect.width - 24)
  809.     draw_item_number(rect, item)
  810.   end
  811.   
  812.   #--------------------------------------------------------------------------
  813.   # overwrite method: draw_item_number
  814.   #--------------------------------------------------------------------------
  815.   def draw_item_number(rect, item)
  816.     text = sprintf(YEA::CORE::ITEM_AMOUNT, $game_party.item_number(item).group)
  817.     draw_text(rect, text, 2)
  818.   end
  819.   
  820. end # Window_ItemList

  821. #==============================================================================
  822. # ■ Window_SkillList
  823. #==============================================================================

  824. class Window_SkillList < Window_Selectable
  825.   
  826.   #--------------------------------------------------------------------------
  827.   # draw_item
  828.   #--------------------------------------------------------------------------
  829.   def draw_item(index)
  830.     skill = @data[index]
  831.     return if skill.nil?
  832.     rect = item_rect(index)
  833.     rect.width -= 4
  834.     draw_item_name(skill, rect.x, rect.y, enable?(skill), rect.width - 24)
  835.     draw_skill_cost(rect, skill)
  836.   end
  837.   
  838. end # Window_SkillList

  839. #==============================================================================
  840. # ■ Window_Status
  841. #==============================================================================

  842. class Window_Status < Window_Selectable
  843.   
  844.   #--------------------------------------------------------------------------
  845.   # overwrite method: draw_exp_info
  846.   #--------------------------------------------------------------------------
  847.   def draw_exp_info(x, y)
  848.     s1 = @actor.max_level? ? "-------" : @actor.exp
  849.     s2 = @actor.max_level? ? "-------" : @actor.next_level_exp - @actor.exp
  850.     s_next = sprintf(Vocab::ExpNext, Vocab::level)
  851.     change_color(system_color)
  852.     draw_text(x, y + line_height * 0, 180, line_height, Vocab::ExpTotal)
  853.     draw_text(x, y + line_height * 2, 180, line_height, s_next)
  854.     change_color(normal_color)
  855.     s1 = s1.group if s1.is_a?(Integer)
  856.     s2 = s2.group if s2.is_a?(Integer)
  857.     draw_text(x, y + line_height * 1, 180, line_height, s1, 2)
  858.     draw_text(x, y + line_height * 3, 180, line_height, s2, 2)
  859.   end
  860.   
  861. end # Window_Status

  862. #==============================================================================
  863. # ■ Window_ShopBuy
  864. #==============================================================================

  865. class Window_ShopBuy < Window_Selectable
  866.   
  867.   #--------------------------------------------------------------------------
  868.   # overwrite method: draw_item
  869.   #--------------------------------------------------------------------------
  870.   def draw_item(index)
  871.     item = @data[index]
  872.     rect = item_rect(index)
  873.     draw_item_name(item, rect.x, rect.y, enable?(item))
  874.     rect.width -= 4
  875.     draw_text(rect, price(item).group, 2)
  876.   end
  877.   
  878. end # Window_ShopBuy

  879. #==============================================================================
  880. # ■ Scene_Map
  881. #==============================================================================

  882. class Scene_Map < Scene_Base
  883.   
  884.   #--------------------------------------------------------------------------
  885.   # alias method: post_transfer
  886.   #--------------------------------------------------------------------------
  887.   alias scene_map_post_transfer_ace post_transfer
  888.   def post_transfer
  889.     @spriteset.update_viewport_sizes
  890.     scene_map_post_transfer_ace
  891.   end
  892.   
  893. end # Scene_Map

  894. #==============================================================================
  895. # ■ Scene_Battle
  896. #==============================================================================

  897. class Scene_Battle < Scene_Base
  898.   
  899.   #--------------------------------------------------------------------------
  900.   # alias method: check_substitute
  901.   #--------------------------------------------------------------------------
  902.   alias scene_battle_check_substitute_ace check_substitute
  903.   def check_substitute(target, item)
  904.     return false if @subject.actor? == target.actor?
  905.     return scene_battle_check_substitute_ace(target, item)
  906.   end
  907.   
  908.   #--------------------------------------------------------------------------
  909.   # overwrite method: process_forced_action
  910.   #--------------------------------------------------------------------------
  911.   def process_forced_action
  912.     while BattleManager.action_forced?
  913.       last_subject = @subject
  914.       @subject = BattleManager.action_forced_battler
  915.       process_action
  916.       @subject = last_subject
  917.       BattleManager.clear_action_force
  918.     end
  919.   end
  920.   
  921.   #--------------------------------------------------------------------------
  922.   # overwrite method: show_attack_animation
  923.   #--------------------------------------------------------------------------
  924.   def show_attack_animation(targets)
  925.     if @subject.actor?
  926.       show_normal_animation(targets, @subject.atk_animation_id1, false)
  927.       wait_for_animation
  928.       show_normal_animation(targets, @subject.atk_animation_id2, true)
  929.     else
  930.       Sound.play_enemy_attack
  931.       abs_wait_short
  932.     end
  933.   end
  934.   
  935.   #--------------------------------------------------------------------------
  936.   # overwrite method: show_normal_animation
  937.   #--------------------------------------------------------------------------
  938.   def show_normal_animation(targets, animation_id, mirror = false)
  939.     animation = $data_animations[animation_id]
  940.     return if animation.nil?
  941.     ani_check = false
  942.     targets.each do |target|
  943.       if ani_check && target.animation_id <= 0
  944.         target.pseudo_ani_id = animation_id
  945.       else
  946.         target.animation_id = animation_id
  947.       end
  948.       target.animation_mirror = mirror
  949.       abs_wait_short unless animation.to_screen?
  950.       ani_check = true if animation.to_screen?
  951.     end
  952.     abs_wait_short if animation.to_screen?
  953.   end
  954.   
  955. end # Scene_Battle

  956. #==============================================================================
  957. #
  958. # ▼ End of File
  959. #
  960. #==============================================================================
复制代码
需要的话也可以用这个简化脚本,取除了画面调整以外的其他部分
  1. #==============================================================================
  2. # ▼ Viewports/Map Fix for Modified RGSS300.dll File
  3. #   Origin of Code: Yanfly Engine Ace - Ace Core Engine v1.06
  4. # -- Last Updated: 2011.12.26
  5. # -- Level: Easy, Normal
  6. # -- Requires: n/a
  7. #
  8. #==============================================================================

  9. #==============================================================================
  10. # ■ Game_Map
  11. #==============================================================================

  12. class Game_Map

  13.   #--------------------------------------------------------------------------
  14.   # overwrite method: scroll_down
  15.   #--------------------------------------------------------------------------
  16.   def scroll_down(distance)
  17.     if loop_vertical?
  18.       @display_y += distance
  19.       @display_y %= @map.height * 256
  20.       @parallax_y += distance
  21.     else
  22.       last_y = @display_y
  23.       dh = Graphics.height > height * 32 ? height : screen_tile_y
  24.       @display_y = [@display_y + distance, height - dh].min
  25.       @parallax_y += @display_y - last_y
  26.     end
  27.   end

  28.   #--------------------------------------------------------------------------
  29.   # overwrite method: scroll_right
  30.   #--------------------------------------------------------------------------
  31.   def scroll_right(distance)
  32.     if loop_horizontal?
  33.       @display_x += distance
  34.       @display_x %= @map.width * 256
  35.       @parallax_x += distance
  36.     else
  37.       last_x = @display_x
  38.       dw = Graphics.width > width * 32 ? width : screen_tile_x
  39.       @display_x = [@display_x + distance, width - dw].min
  40.       @parallax_x += @display_x - last_x
  41.     end
  42.   end

  43. end # Game_Map

  44. #==============================================================================
  45. # ■ Spriteset_Map
  46. #==============================================================================

  47. class Spriteset_Map

  48.   #--------------------------------------------------------------------------
  49.   # overwrite method: create_viewports
  50.   #--------------------------------------------------------------------------
  51.   def create_viewports
  52.     if Graphics.width > $game_map.width * 32 && !$game_map.loop_horizontal?
  53.       dx = (Graphics.width - $game_map.width * 32) / 2
  54.     else
  55.       dx = 0
  56.     end
  57.     dw = [Graphics.width, $game_map.width * 32].min
  58.     dw = Graphics.width if $game_map.loop_horizontal?
  59.     if Graphics.height > $game_map.height * 32 && !$game_map.loop_vertical?
  60.       dy = (Graphics.height - $game_map.height * 32) / 2
  61.     else
  62.       dy = 0
  63.     end
  64.     dh = [Graphics.height, $game_map.height * 32].min
  65.     dh = Graphics.height if $game_map.loop_vertical?
  66.     @viewport1 = Viewport.new(dx, dy, dw, dh)
  67.     @viewport2 = Viewport.new(dx, dy, dw, dh)
  68.     @viewport3 = Viewport.new(dx, dy, dw, dh)
  69.     @viewport2.z = 50
  70.     @viewport3.z = 100
  71.   end

  72.   #--------------------------------------------------------------------------
  73.   # new method: update_viewport_sizes
  74.   #--------------------------------------------------------------------------
  75.   def update_viewport_sizes
  76.     if Graphics.width > $game_map.width * 32 && !$game_map.loop_horizontal?
  77.       dx = (Graphics.width - $game_map.width * 32) / 2
  78.     else
  79.       dx = 0
  80.     end
  81.     dw = [Graphics.width, $game_map.width * 32].min
  82.     dw = Graphics.width if $game_map.loop_horizontal?
  83.     if Graphics.height > $game_map.height * 32 && !$game_map.loop_vertical?
  84.       dy = (Graphics.height - $game_map.height * 32) / 2
  85.     else
  86.       dy = 0
  87.     end
  88.     dh = [Graphics.height, $game_map.height * 32].min
  89.     dh = Graphics.height if $game_map.loop_vertical?
  90.     rect = Rect.new(dx, dy, dw, dh)
  91.     for viewport in [@viewport1, @viewport2, @viewport3]
  92.       viewport.rect = rect
  93.     end
  94.   end

  95. end # Spriteset_Map

  96. #==============================================================================
  97. # ■ Scene_Map
  98. #==============================================================================

  99. class Scene_Map < Scene_Base

  100.   #--------------------------------------------------------------------------
  101.   # alias method: post_transfer
  102.   #--------------------------------------------------------------------------
  103.   alias scene_map_post_transfer_ace post_transfer
  104.   def post_transfer
  105.     @spriteset.update_viewport_sizes
  106.     scene_map_post_transfer_ace
  107.   end

  108. end # Scene_Map
复制代码

评分

参与人数 1星屑 +132 收起 理由
熊喵酱 + 132 认可答案

查看全部评分

梦想是成为触手的新手DE☆SU(<ゝω·)绮罗星 ~☆
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
63 小时
注册时间
2014-3-16
帖子
62
8
发表于 2014-3-22 15:28:46 | 只看该作者
pandeng421 发表于 2014-3-16 21:44
对方已明确说明:

      A:dll只是解除分辨率扩大指令的限制,扩大分辨率需要在脚本里手动加入,例如

额,sorry,那么我帮不上忙。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-6-23 11:03

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表