查看: 2559|回复: 1

[已经解决] 如何获取当前目标使用的技能ID

[复制链接]
梦石
0
星屑
723
在线时间
530 小时
注册时间
2010-6-9
回帖
668
发表于 2014-1-22 18:15:24 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 负零 于 2014-1-22 18:51 编辑

1、我能找到的目测这句最像,但用的时候没办法用,subject代表的意义我不是很清楚:
我预期达到的效果是写一个类,包含这么一个方法——通过CASE判断当前选中的技能ID调用对应的“技能效果”方法。
不知是否是CASE这个——$data_skills[subject.attack_skill_id]
应该如何判断请各位指导小弟。
2、另外附加一个小疑问——
MOD_CHAIN=["A","D","S","Shift","Z","X","Q","W","Right","Left","Down","Up"]
  3=>[MOD_CHAIN[rand(11)],"Z","A","S","D"]
第二行散列表中MOD_CHAIN[rand(11)]这个首次是随机,但后面再调用时似乎就是第一次随机到的值而不会改变?这是什么原理?

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

开拓者短篇九导演组冠军

发表于 2014-1-22 22:42:03 | 显示全部楼层
搜索了一下,翻到了自己好久以前写的脚本……
唔,虽然写的不好不过你应该看的懂怎么获取技能ID了吧?

[pre lang="ruby" line="1"]=begin
===============================================================================
  获取使用的技能 By喵呜喵5
===============================================================================
【说明】
使用的技能ID自动记录到特定变量中
修改了默认Scene_Skill中的
on_item_ok
因此会与修改了相同内容的其他脚本不兼容
=end
class Scene_Skill
  module M5GeSkiId
#==============================================================================
#  设定部分
#==============================================================================

  Vid = 1  #获取技能ID的变量

#==============================================================================
#  设定结束
#==============================================================================
#==============================================================================
#  脚本部分
#==============================================================================
  end
  def on_item_ok
    @actor.last_skill.object = item
    $game_variables[M5GeSkiId::Vid] = item.id
    determine_item
  end
end[/pre]

第二个问题的话,我觉得是每次哈希开始赋值的那一刻进行了计算求值,之后调用的时候就固定是那个值了?
对这一块稍微有些不了解……你可以去翻翻这个帖子第二页的那些回复或者问问他们,他们应该比我清楚
http://rpg.blue/thread-344661-1-2.html

点评

好的,谢谢!  发表于 2014-1-23 18:06

评分

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

查看全部评分

回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部