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

Project1

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

[已经解决] 地图文件

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
322 小时
注册时间
2011-6-24
帖子
274
跳转到指定楼层
1
发表于 2016-5-24 13:55:58 手机端发表。 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
我想给事件增加个 hp  ,然后把设定好的hp值存入地图文件里,在加载地图文件时可以读出来(p $game_map.events[2].hp)

Lv1.梦旅人

梦石
0
星屑
195
在线时间
50 小时
注册时间
2015-9-17
帖子
22
2
发表于 2016-5-24 17:12:24 | 只看该作者
那你应该给事件增加hp而不是在地图文件里
  1. class Game_Event < Game_Character
  2.   attr_accessor :hp
  3.   alias old_initialize initialize
  4.   def initialize(map_id, event)
  5.     @hp = 0
  6.     old_initialize(map_id, event)
  7.   end
  8. end
复制代码

点评

为什么要这么麻烦呢,地图文件应该没这个功能的。存取文件还要做个存取文件的脚本。做成脚本不是挺方便的吗。  发表于 2016-5-25 12:24
我是这样弄的啊,这个还是要设置hp=100 if mapid =18and event.id=5,我想把这先存进文件里,在读取文件时读取出来,而不是在脚本里读取  发表于 2016-5-25 09:49
我觉得他是想作全局使用  发表于 2016-5-24 21:59
回复 支持 反对

使用道具 举报

Lv4.逐梦者 (版主)

梦石
0
星屑
9532
在线时间
5073 小时
注册时间
2013-6-21
帖子
3580

开拓者贵宾剧作品鉴家

3
发表于 2016-5-25 13:27:49 | 只看该作者
RUBY 代码复制
  1. class Game_Event < Game_Character
  2.   attr_writer :hp
  3.   #--------------------------------------------------------------------------
  4.   # ● 对象初始化
  5.   #--------------------------------------------------------------------------
  6.   alias rb_initialize_160525 initialize
  7.   def initialize(*arg)
  8.     rb_initialize_160525(*arg)
  9.     @hp = 0
  10.   end
  11.   #--------------------------------------------------------------------------
  12.   # ● 取得名字
  13.   #--------------------------------------------------------------------------
  14.   def get_name
  15.     return @event.name
  16.   end
  17.   def hp
  18.     return @hp || 0
  19. end
  20.  
  21. #==============================================================================
  22. # ■ Game_Map
  23. #==============================================================================
  24. class Game_Map
  25.   #--------------------------------------------------------------------------
  26.   # ● 设置事件
  27.   #--------------------------------------------------------------------------
  28.   alias rb_setup_events_160525 setup_events
  29.   def setup_events
  30.     rb_setup_events_160525
  31.     for i in @map.events.keys
  32.       @events[i].hp = $1.to_i if @events[i].get_name =~ /<HP\s*=\s*(\d+)\s*>/
  33.     end
  34.   end
  35. end

未测试。

用法:在事件编辑器左上角的事件名称里面写<HP=100>即可设定该事件的HP是100。

目前此功能不支持事件翻页,即一个事件的所有页的HP都是一样的,如果要让同一事件的不同事件页对应的HP不同请另行告知。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
195
在线时间
50 小时
注册时间
2015-9-17
帖子
22
4
发表于 2016-5-25 22:30:08 | 只看该作者
图灵 发表于 2016-5-24 17:12
那你应该给事件增加hp而不是在地图文件里

这个不需要判断地图 应该自动会存到存档里 你可以参考RyanBern的 用名称设置或者用我这个使用$game_map.events[ID号].hp = xxx 设置
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-9-22 10:02

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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