Project1

标题: 【原版移植】RMVA近大远小改良版 [打印本页]

作者: qq645260214    时间: 2014-2-11 11:42
标题: 【原版移植】RMVA近大远小改良版
啥也不说,自己看

=begin

近大远小
原作 BY 亿万星辰 for RM XP
修改 BY qq645260214 for RM VA

使用方法:在地图名中加入“!”这个标志,这样就会按照近大远小来处理人物,否则效果不变。
此脚本对NPC同样适用

=end
class Sprite_Character < Sprite_Base
  alias stars_update update
  def update
    stars_update
    id = $game_map.map_id
    name = $data_mapinfos[id].name
    if name.include?("!")
      rate =  @character.y.to_f / $game_map.height.to_f + 0.5 # ← 这个值是到达屏幕最上方时的人物比例 1.0为默认大小 最下方比例则为 1+这个值
      if name.include?("!")
      rage = name.split(/!/)[1]
      min_rate = rage.split(/~/)[0].to_f
      max_rate = rage.split(/~/)[1].to_f
      rate =  min_rate + (@character.y.to_f / $game_map.height.to_f * (max_rate - min_rate))
     self.zoom_x = self.zoom_y = rate
   end
    end
  end
end
#==============================================================================
# 本脚本来自www.66RPG.com,使用和转载请保留此信息
#==============================================================================




我只修改了一下,使它可以修改放大率,方法与RMXP相同即在地图名称上加“!”表示近大远小“X.X~X.X”表示放大率,上截图


作者: Fakmab    时间: 2014-2-11 11:47
表示对我没有用处
作者: 柍若    时间: 2014-2-22 10:46
本帖最后由 柍若 于 2014-2-22 14:46 编辑

真的是原创?和辰叔原来那个1.1版本的一模一样,变量名一样,连空格都没改,只是把★改成!……
我只修改了一下,使它可以修改放大率

这个是您原话没错吧……如果只是全移植的话(而且这个脚本没什么好移植的,基本把地图的data文件名改了就能用),您为何说这功能是您修改出来的……

现在6R的搜索系统怪怪的,直接搜好像找不到1.1版的近大远小了

算了,这是原版,请和楼主版本比较。
  1. #==============================================================================
  2. # 本脚本来自www.66rpg.com,转载和使用请保留此信息
  3. #==============================================================================

  4. #==============================================================================
  5. # 近大远小 V 1.1 BY 亿万星辰
  6. #==============================================================================
  7. # 似乎很多人都很喜欢类似天之痕里人物在地图上的位置的不同,人物大小的相应改变。
  8. # 所以写了这个……一开始我还说很难实现……  =。= 汗,被自己推翻了……
  9. # 看来勇于探索的精神还是要有的……
  10. #
  11. # 不废话了,说下使用方法:
  12. # 因为考虑到不可能所有的地图都用到这个效果,所以使用了这样的方法。如果想要实现
  13. # 这个效果的,那么请在地图名中加入“★”这个标志,这样就会按照近大远小来处理人
  14. # 物,否则效果不变。

  15. # 根据一位朋友的建议,不可能每幅地图的比例都一样,所以加设了下面的一些设置,
  16. # 下面举几个例子,大家一看便知:

  17. #        MAP001            无近大远小效果
  18. #        MAP001★0.5~1.0   屏幕最上方比例为原始大小的0.5倍,最下方为1.0倍
  19. #        MAP001★1.0~2.0   屏幕最上方比例为原始大小的1.0倍,最下方为2.0倍

  20. # 另外,人物在放大后会略显毛边儿,这也是没办法的,呵呵~~
  21. # 此脚本对NPC同样适用……具体可参考演示。

  22. # 不过也有不足,即使这样修改了大小,游戏中的各种人物还是占据一格的大小,当人变
  23. # 小时, 彼此之间距离会有些大……
  24. #==============================================================================

  25. class Sprite_Character < Sprite_Base
  26. alias stars_update update
  27. def update
  28.    stars_update
  29.    id = $game_map.map_id
  30.    name = $data_mapinfos[id].name
  31.    if name.include?("★")
  32.      rage = name.split(/★/)[1]
  33.      min_rate = rage.split(/~/)[0].to_f
  34.      max_rate = rage.split(/~/)[1].to_f
  35.      rate =  min_rate + (@character.y.to_f / $game_map.height.to_f * (max_rate - min_rate))
  36.      self.zoom_x = self.zoom_y = rate
  37.    end
  38. end
  39. end

  40. #==============================================================================
  41. # 本脚本来自www.66RPG.com,使用和转载请保留此信息
  42. #==============================================================================
复制代码
楼主,劝你趁早改成移植非原创为好。
_(:з」∠)_




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1