查看: 1820|回复: 1

[已经解决] 喵呜喵5大大的技能ID读取脚本的问题

[复制链接]
梦石
0
星屑
254
在线时间
316 小时
注册时间
2015-7-2
回帖
1629

开拓者

发表于 2016-1-20 11:29:58 | 显示全部楼层 |阅读模式

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

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

×
脚本
  1. =begin
  2. ===============================================================================
  3.   获取使用的技能 By喵呜喵5
  4. ===============================================================================
  5. 【说明】
  6. 使用的技能ID自动记录到特定变量中
  7. 修改了默认Scene_Skill中的
  8. on_item_ok
  9. 因此会与修改了相同内容的其他脚本不兼容
  10. =end
  11. class Scene_Skill < Scene_ItemBase
  12.   module M5GeSkiId
  13. #==============================================================================
  14. #  设定部分
  15. #==============================================================================

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

  17. #==============================================================================
  18. #  设定结束
  19. #==============================================================================
  20. #==============================================================================
  21. #  脚本部分
  22. #==============================================================================
  23.   end
  24.   def on_item_ok
  25.     @actor.last_skill.object = item
  26.     $game_variables[M5GeSkiId::Vid] = item.id
  27.     determine_item
  28.   end
  29. end
复制代码

使用了上述的脚本后,效果应该是对上一个使用的技能ID进行读取存入变量。
但是无论是通过战斗中调用公共事件或者是在战斗结束后按下F9,所对应的变量值都为0.
在新工程里也完全一样。
请问如何解决?
测试你的东方project认知程度?那就来玩[url=https://store.steampowered.com/app/930840/TouHouAsked/]《东方百问》[/url]吧!
东方风自作曲认知企划绝赞咕咕咕中

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

开拓者短篇九导演组冠军

发表于 2016-1-20 11:40:39 | 显示全部楼层
本帖最后由 喵呜喵5 于 2016-1-20 11:56 编辑

艾玛……这都是我多久以前写的烂代码了…………

上面这段代码仅在菜单中使用技能时生效,我重新写个


=============


[pre lang="ruby"]=begin
===============================================================================
  获取使用的技能 By喵呜喵5
===============================================================================

  【说明】

  使用的技能ID自动记录到特定变量中

=end
module M5GS20160120
#==============================================================================
#  设定部分
#==============================================================================

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

#==============================================================================
#  设定结束
#==============================================================================
end
class Scene_Skill
  alias m5_20160120_on_item_ok on_item_ok
  def on_item_ok
    m5_20160120_on_item_ok
    $game_variables[M5GS20160120::VAR] = item.id
  end
end
class Scene_Battle
  alias m5_20160120_on_skill_ok on_skill_ok
  def on_skill_ok
    $game_variables[M5GS20160120::VAR] = @skill_window.item.id
    m5_20160120_on_skill_ok
  end
end[/pre]



另外,基本上没出现在我 6R 空间脚本列表的脚本一般都是烂代码或者难以维护容易出错的代码,个人不建议使用它们

点评

樓主鐵桿喵粉XD  发表于 2016-1-20 15:01
多谢!  发表于 2016-1-20 12:45

评分

参与人数 1梦石 +1 收起 理由
VIPArcher + 1 铪铪哈

查看全部评分

回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部