赞 | 0 |
VIP | 0 |
好人卡 | 0 |
积分 | 3 |
经验 | 1900 |
最后登录 | 2022-5-15 |
在线时间 | 81 小时 |
Lv2.观梦者
- 梦石
- 0
- 星屑
- 275
- 在线时间
- 81 小时
- 注册时间
- 2016-8-25
- 帖子
- 19
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
小弟又来求教了,想在游戏中设置狩猎任务,所以需要用到击破数计算器
input_defeat_count 及 draw_defeat_count 兩個method:
#・窗口显示设定
#Window_Status备注记录内容。
#<记述>
# draw_defeat_count(actor_id, enemy_id, x, y)
# actor_id :对象角色ーID(为0则指代全体角色)
# enemy_id :对象敌人ーID(为0则指定全体敌人)
# x :横方向表示位置
# y :纵方向表示位置
#------------------------------------------------------------------------------
#・变量记录
#在事件设定中的脚本作如下格式的描述。
#<记述>
# input_defeat_count(actor_id, enemy_id, variable_id)
# actor_id :对象角色ーID(为0则指代全体角色)
# enemy_id :对象敌人ーID(为0则指定全体敌人)
# variable_id :击破数记录变量
#==============================================================================
先说draw defeat count, 小弟发现成功调用了这个method后没有正确显示文字,
Script如下:
- class Window_Base < Window
- #--------------------------------------------------------------------------
- # ● 指定变量时角色击破数表示
- # actor_id :对象角色ー(为0则指代全体角色)
- # enemy_id :对象敌人ー(为0则指代全体敌人)
- # x :横方向表示位置
- # y :纵方向表示位置
- #--------------------------------------------------------------------------
- def draw_defeat_count(actor_id, enemy_id, x, y)
- p($game_actors.defeat(enemy_id, actor_id), 2)
- draw_text(x, y, 200, line_height, $game_actors.defeat(enemy_id, actor_id))
- p("draw_defeat_count called.")
- end
- end
复制代码
在任务列表中调用draw defeat count:- def refresh_cond
- change_color(system_color)
- draw_text(self.ox+20, line_height, 120, line_height, "進展")
- draw_defeat_count(0, 0, 300, 20)
- change_color(normal_color)
-
- y = line_height * 2
- for i in [email protected]
- case @data.condition.type
- when Quest::ITEM, Quest::WEAPON, Quest::ARMOR
- draw_item_name(@data.condition.obj, self.ox+30, y)
- draw_condition_num(i, y)
- when Quest::MONEY
- txt = "#{@data.condition.obj_name}(" + @data.condition.num.to_s
- draw_text(self.ox+30, y, 240, line_height, txt)
- x = 30 + self.contents.text_size(txt).width + 4
- change_color(system_color)
- draw_text(self.ox+x, y, 80, line_height, $data_system.currency_unit)
- change_color(normal_color)
- x += self.contents.text_size($data_system.currency_unit).width + 4
- draw_text(self.ox+x, y, 40, line_height, ")")
- draw_condition(i, y)
- when Quest::SW, Quest::EV, Quest::QUEST_T, Quest::QUEST_F, Quest::CLASS, Quest::SCRIPT
- draw_text(self.ox+30, y, 240, line_height, @data.condition.obj_name)
- draw_condition(i, y)
- when Quest::VAL
- draw_text(self.ox+30, y, 240, line_height, @data.condition.obj_name)
- draw_condition_num(i, y)
- when Quest::LEVEL
- draw_text(self.ox+30, y, 240, line_height, @data.condition.obj_name)
- #x = 30 + self.contents.text_size(@data.condition.obj.name).width + 4
- #draw_actor_level(@data.condition.obj, self.ox+x, y)
- draw_condition_num(i, y)
- when Quest::ENEMY
- draw_text(self.ox+30, y, 240, line_height, @data.condition.obj_name)
- draw_condition_num(i, y)
- when Quest::ACTOR
- draw_actor_name(@data.condition.obj, self.ox+30, y)
- draw_condition(i, y)
- when Quest::SKILL
- draw_item_name(@data.condition.obj, self.ox+30, y)
- draw_condition(i, y)
- else; next # 上述以外的状况不再描述
- end
- #
- y += line_height
- end
- end
复制代码
测试结果如下:
在图中可看见成功调用了method及也能获得数值0, 2
但为什么不能显示在画面上呢?
而另外一个问题就是input_defeat_count不知道应该在那调用
完全没有头绪.....
希望可以有高手解答......爬文我已经爬了数天, 但也没什么头绪,
如果可以有一个简单的范本就最好了~其实小弟不太清楚这个script整个击杀怪物的流程具体究竟如何设置
|
|