查看: 2076|回复: 3

[已经解决] case里面能不能用类似alias的方法?

[复制链接]
梦石
0
星屑
9292
在线时间
2504 小时
注册时间
2011-5-20
回帖
14521

开拓者

发表于 2015-2-9 23:15:51 | 显示全部楼层 |阅读模式

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

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

×
楼主在技术区看到的Va的技能升级和技能位的脚本都以覆盖的形式修改了原来的case部分就导致了两个脚本一起用时插前面的那一个在打开窗口时会卡死的BUG,解决方法楼主目前只想到了把那部分择出来结合在一起重写,不知道有没有办法在case里直接用类似alias的方法呢。。(其实就是想省8行)@taroxd @VIPArcher @TV  
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png

梦石
1
星屑
23246
在线时间
9564 小时
注册时间
2012-6-19
回帖
7018

开拓者短篇九导演组冠军

发表于 2015-2-9 23:20:19 | 显示全部楼层
本帖最后由 喵呜喵5 于 2015-2-9 23:21 编辑
  1. alias old_method method
  2. def method(p)
  3.   case p
  4.   when 1
  5.     p "1"
  6.     old_method(p)
  7.   else old_method(p)
  8.   end
  9. end
复制代码

点评

else那行不用;吗  发表于 2015-2-10 03:18

评分

参与人数 1梦石 +1 收起 理由
VIPArcher + 1 else好像少了个换行?

查看全部评分

回复

使用道具 举报

无限の剣制

梦石
0
星屑
10450
在线时间
5019 小时
注册时间
2013-2-28
回帖
4942

开拓者贵宾

发表于 2015-2-9 23:42:16 | 显示全部楼层
  1. class Scene_Menu < Scene_MenuBase
  2.   alias miao_opo on_personal_ok
  3.   def on_personal_ok
  4.     case @command_window.current_symbol
  5.     when :skillsp
  6.       SceneManager.call(Scene_SetBattleSkill)
  7.     when :addskill
  8.       SceneManager.call(Scene_AddSkill)
  9.     end
  10.     miao_opo
  11.   end
  12. end
复制代码
手机打的,未测试

点评

如果是else下面有两行的缩成一行也不用加符号?0.0  发表于 2015-2-10 12:28
else 不需要换行  发表于 2015-2-10 07:37

评分

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

查看全部评分

回复

使用道具 举报

梦石
0
星屑
9292
在线时间
2504 小时
注册时间
2011-5-20
回帖
14521

开拓者

 楼主| 发表于 2015-2-10 12:31:46 | 显示全部楼层
VIPArcher 发表于 2015-2-9 06:42
手机打的,未测试

问题解决0.0(为什么一个帖子只能@一次···)
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部