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

Project1

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

[已经过期] 不能成功调用:ok方法,高手帮忙看看怎么回事

[复制链接]

Lv1.梦旅人

梦石
0
星屑
200
在线时间
120 小时
注册时间
2007-8-17
帖子
147
跳转到指定楼层
1
发表于 2014-2-11 10:20:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
  1. class Scene_ItemBase < Scene_MenuBase
  2. #--------------------------------------------------------------------------
  3.   # ● 生成角色窗口
  4.   #--------------------------------------------------------------------------
  5.   def create_actor_window
  6.     @actor_window = Window_MenuActor.new
  7.     @actor_window.set_handler(:ok,     method(:on_actor_ok))
  8.     @actor_window.set_handler(:cancel, method(:on_actor_cancel))
  9.   end
  10. #--------------------------------------------------------------------------
  11.   # ● 确定物品
  12.   #--------------------------------------------------------------------------
  13.   def determine_item
  14.     if item.for_friend?
  15.       show_sub_window(@actor_window)
  16.       @actor_window.select_for_item(item)
  17.     else
  18.       use_item
  19.       activate_item_window
  20.     end
  21.   end
  22. #--------------------------------------------------------------------------
  23.   # ● 角色“确定”
  24.   #--------------------------------------------------------------------------
  25.   def on_actor_ok
  26.     p "角色确定"
  27.     if item_usable?
  28.       use_item
  29.     else
  30.       Sound.play_buzzer
  31.     end
  32.   end
复制代码
  1. class Window_MenuActor < Window_MenuStatus
  2. #--------------------------------------------------------------------------
  3.   # ● 按下确定键时的处理
  4.   #--------------------------------------------------------------------------
  5.   def process_ok
  6.     $game_party.target_actor = $game_party.members[index] unless @cursor_all
  7.     call_ok_handler
  8.   end
复制代码
  1. class Window_Selectable < Window_Base
  2. #--------------------------------------------------------------------------
  3.   # ● 调用处理方法
  4.   #--------------------------------------------------------------------------
  5.   def call_handler(symbol)
  6.     @handler[symbol].call if handle?(symbol)
  7.   end
复制代码
看代码我觉得一点问题都没有。但就是不能调用成功 on_actor_ok方法,
在控制台看   运行call_handler 没问题, p @handler 查看 里面也有 :ok => on_actor_ok 方法,然后在游戏按确定还是失败的声音,并且on_actor_ok方法里的p "角色确定"没有出来.

Lv5.捕梦者 (暗夜天使)

只有笨蛋才会看到

梦石
1
星屑
21631
在线时间
9415 小时
注册时间
2012-6-19
帖子
7118

开拓者短篇九导演组冠军

2
发表于 2014-2-11 10:27:17 | 只看该作者
process_ok这里能不能p的出来?
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
200
在线时间
120 小时
注册时间
2007-8-17
帖子
147
3
 楼主| 发表于 2014-2-11 12:28:35 | 只看该作者
喵呜喵5 发表于 2014-2-11 10:27
process_ok这里能不能p的出来?

能。然后调用了父类的call_ok_handler嘛,一直到window_selectable里都能p 出来,但on_actor_ok就是不执行
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (暗夜天使)

只有笨蛋才会看到

梦石
1
星屑
21631
在线时间
9415 小时
注册时间
2012-6-19
帖子
7118

开拓者短篇九导演组冠军

4
发表于 2014-2-11 12:36:20 | 只看该作者
千昭 发表于 2014-2-11 12:28
能。然后调用了父类的call_ok_handler嘛,一直到window_selectable里都能p 出来,但on_actor_ok就是不执 ...

发工程吧……
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3298
在线时间
1120 小时
注册时间
2009-4-15
帖子
815
5
发表于 2014-2-11 16:46:38 | 只看该作者
你这个情况还跟物品(技能)是否可以使用有关,比如,物品(技能)的效果是使角色打上某个状态,如果角色已经存在该状态,那么,你就无法调用该物品(技能)
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-16 13:41

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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