查看: 1826|回复: 4

[已经解决] 关于远小近大的脚本怎么让主角不受影响?

[复制链接]
梦石
0
星屑
50
在线时间
39 小时
注册时间
2014-10-30
回帖
7
发表于 2014-11-24 14:52:44 | 显示全部楼层 |阅读模式

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

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

×
=begin



近大远小

原作 BY 亿万星辰 for RM XP

修改 BY gaofei677 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+这个值

      self.zoom_x = self.zoom_y = rate

    end

  end

end

#==============================================================================

# 本脚本来自www.66RPG.com,使用和转载请保留此信息

#==============================================================================
  请问怎么样才能让主角不受这个影响
梦石
0
星屑
136
在线时间
1050 小时
注册时间
2006-5-3
回帖
602
发表于 2014-11-24 15:22:55 | 显示全部楼层
这个是我改的脚本,过会儿看看,不过好奇为什么楼主需要主角不受影响?
漏夏同人
《咱的夏天》
下载地址:http://tieba.baidu.com/p/2681607456
人员招募:http://rpg.blue/thread-339747-1-1.html
回复

使用道具 举报

梦石
0
星屑
50
在线时间
39 小时
注册时间
2014-10-30
回帖
7
 楼主| 发表于 2014-11-24 15:39:15 | 显示全部楼层
gaofei677 发表于 2014-11-24 15:22
这个是我改的脚本,过会儿看看,不过好奇为什么楼主需要主角不受影响?

因为主角是光标
回复

使用道具 举报

…あたしは天

梦石
0
星屑
2308
在线时间
4033 小时
注册时间
2010-10-4
回帖
10548

开拓者贵宾

发表于 2014-11-24 17:17:52 | 显示全部楼层
未测试。另外以后发脚本请用代码框

[pre lang="ruby" line="1"]class Sprite_Character < Sprite_Base
  alias stars_update update
  def update
    stars_update
    return if @character.equal? $game_player
    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+这个值
      self.zoom_x = self.zoom_y = rate
    end
  end
end [/pre]

点评

谢谢  发表于 2014-11-24 19:30

评分

参与人数 1梦石 +1 收起 理由
VIPArcher + 1 认可答案

查看全部评分

回复

使用道具 举报

梦石
0
星屑
136
在线时间
1050 小时
注册时间
2006-5-3
回帖
602
发表于 2014-11-24 17:34:19 | 显示全部楼层
本帖最后由 gaofei677 于 2014-11-24 17:39 编辑
ziye31321 发表于 2014-11-24 15:39
因为主角是光标
  1. =begin
  2. 近大远小
  3. 原作 BY 亿万星辰 for RM XP
  4. 修改 BY gaofei677 for RM VA  (主角不受影响版)
  5. 使用方法:在地图名中加入“!”这个标志,这样就会按照近大远小来处理人物,否则效果不变。
  6. 此脚本对NPC同样适用
  7. =end

  8. class Sprite_Character < Sprite_Base
  9.   alias stars_update update
  10.   def update
  11.     stars_update
  12.     id = $game_map.map_id
  13.     name = $data_mapinfos[id].name
  14.     if name.include?("!")
  15.       return if self.character == $game_player # ← 把$game_player改为nil则主角也会受此效果影响
  16.       rate =  @character.y.to_f / $game_map.height.to_f + 0.5 # ← 这个值是到达屏幕最上方时的人物比例 1.0为默认大小 最下方比例则为 1+这个值
  17.       self.zoom_x = self.zoom_y = rate
  18.     end
  19.   end
  20. end

  21. #==============================================================================
  22. # 本脚本来自rm.66RPG.com,使用和转载请保留此信息
  23. #==============================================================================
复制代码

点评

谢谢  发表于 2014-11-24 19:30

评分

参与人数 1梦石 +1 收起 理由
VIPArcher + 1 认可答案

查看全部评分

漏夏同人
《咱的夏天》
下载地址:http://tieba.baidu.com/p/2681607456
人员招募:http://rpg.blue/thread-339747-1-1.html
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部