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

Project1

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

[已经解决] 请问如何在释放技能1前执行公共事件1一次用脚本实现

[复制链接]

Lv3.寻梦者

梦石
0
星屑
2065
在线时间
209 小时
注册时间
2018-4-23
帖子
119
跳转到指定楼层
1
发表于 2019-1-27 17:28:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
请问如何在释放技能1前执行公共事件1一次用脚本实现

Lv4.逐梦者

梦石
2
星屑
6639
在线时间
501 小时
注册时间
2018-3-23
帖子
533

R考场第七期银奖

2
发表于 2019-1-27 18:04:45 | 只看该作者
RUBY 代码复制
  1. #==============================================================================
  2. # ■ RGSS3 行动开始前执行公共事件 Ver1.01 by 星潟
  3. #------------------------------------------------------------------------------
  4. # 通常,物品或技能要执行公共事件的话,会在效果释放完毕后执行。
  5. # 但是使用这个脚本的设定,就会在释放前执行公共事件
  6. #
  7. # 与通常公共事件的执行不同,
  8. # 在没有进入战斗的时候没有效果,这点需要注意。
  9. #------------------------------------------------------------------------------
  10. # ★使用举例
  11. #------------------------------------------------------------------------------
  12. # <行动开始前执行:5>
  13. #
  14. # 这样就会在行动开始前先执行5号公共事件。
  15. #==============================================================================
  16. # Ver1.01 行动开始前执行公共事件脚本针对强制行动做了修改
  17. #         修正了无法读取行动而导致错误的问题。
  18. #         (如果采取了强制行动,将取消原本的行动)
  19. #         (与“将行动者或对象ID存储进变量”等脚本同时使用时
  20. #          请将该脚本在脚本编辑器中的位置置于它们之上)
  21. #==============================================================================
  22. module B_A_COMMON
  23.  
  24.   #指定行动开始前释放公共事件的设定名称
  25.  
  26.   WORD = "行动开始前执行"
  27.  
  28. end
  29. class Game_Troop < Game_Unit
  30.   #--------------------------------------------------------------------------
  31.   # バトルイベントのセットアップ
  32.   #--------------------------------------------------------------------------
  33.   def setup_b_a_common_event(common_event_id)
  34.  
  35.     #指定したコモンイベントIDのリストをセットする。
  36.  
  37.     @interpreter.setup($data_common_events[common_event_id].list)
  38.  
  39.   end
  40. end
  41. class Scene_Battle < Scene_Base
  42.   #--------------------------------------------------------------------------
  43.   # スキル/アイテムの使用
  44.   #--------------------------------------------------------------------------
  45.   alias use_item_b_a_common use_item
  46.   def use_item
  47.  
  48.     #行動前コモンイベント配列データを取得。
  49.  
  50.     array = @subject.current_action.item.b_a_common_events
  51.  
  52.     #各コモンイベントを処理。
  53.  
  54.     array.each {|i| $game_troop.setup_b_a_common_event(i);process_event} unless array.empty?
  55.  
  56.     #本来の処理を実行。
  57.  
  58.     use_item_b_a_common if @subject && @subject.current_action && @subject.current_action.item
  59.  
  60.   end
  61. end
  62.  
  63. class RPG::UsableItem < RPG::BaseItem
  64.   #--------------------------------------------------------------------------
  65.   # 行動前コモンイベント
  66.   #--------------------------------------------------------------------------
  67.   def b_a_common_events
  68.  
  69.     #既にデータがある場合、そのデータを返す
  70.  
  71.     return @b_a_common_events if @b_a_common_events != nil
  72.  
  73.     #ターン開始時コモンイベントデータの配列を生成
  74.  
  75.     @b_a_common_events = []
  76.  
  77.     #メモ欄からキーワードを元にデータを生成
  78.  
  79.     memo = self.note.scan(/<#{B_A_COMMON::WORD}[::](\S+)>/).flatten
  80.  
  81.     #配列が空でない場合は処理を実行
  82.  
  83.     if memo != nil && !memo.empty?
  84.  
  85.       #配列を文字列として取得
  86.  
  87.       data = memo[0].split(/\s*,\s*/)
  88.  
  89.       #配列内の数字をターン開始時コモンイベントデータの配列に
  90.       #文字列から数値化して移し替える
  91.  
  92.       data.each {|i| @b_a_common_events.push(i.to_i)}
  93.  
  94.     end
  95.  
  96.     #ターン開始時コモンイベントデータの配列を返す
  97.  
  98.     @b_a_common_events
  99.  
  100.   end
  101. end


以上脚本的使用方法为:在技能备注中写<行动开始前执行:id>就会执行id号公共事件。

评分

参与人数 1星屑 +30 收起 理由
VIPArcher + 30 认可答案

查看全部评分

祝好。
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2065
在线时间
209 小时
注册时间
2018-4-23
帖子
119
3
 楼主| 发表于 2019-1-27 22:09:32 | 只看该作者
MCCF 发表于 2019-1-27 18:04
#==============================================================================
# ■ RGSS3 行动开始 ...

感谢大哥 膜拜
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-4-27 09:20

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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