Project1

标题: 什么脚本代码可以使用物品? [打印本页]

作者: qmario    时间: 2015-2-6 15:13
标题: 什么脚本代码可以使用物品?
对象是单体,对主角一个人使用。
作者: wolves    时间: 2015-2-6 15:56
  1. module Item_use
  2.   def self.used(items_ID,actor_ID)
  3.     # 如果物品用完的情况下
  4.     if $game_party.item_number(items_ID) == 0
  5.       # 演奏冻结 SE
  6.       $game_system.se_play($data_system.buzzer_se)
  7.       return
  8.     end
  9.     # 目标是全体的情况下
  10.     if actor_ID == -1
  11.       # 对同伴全体应用物品使用效果
  12.       used = false
  13.       for i in $game_party.actors
  14.         used |= i.item_effect($data_items[items_ID])
  15.       end
  16.     end
  17.     # 目标是单体的情况下
  18.     if actor_ID >= 0
  19.       # 对目标角色应用物品的使用效果
  20.       target = $game_party.actors[actor_ID]
  21.       used = target.item_effect($data_items[items_ID])
  22.     end
  23.     # 使用物品的情况下
  24.     if used
  25.       # 演奏物品使用时的 SE
  26.       $game_system.se_play($data_items[items_ID].menu_se)
  27.       # 消耗品的情况下
  28.       if $data_items[items_ID].consumable
  29.         # 使用的物品数减 1
  30.         $game_party.lose_item(items_ID, 1)
  31.       end
  32.       # 全灭的情况下
  33.       if $game_party.all_dead?
  34.         # 切换到游戏结束画面
  35.         $scene = Scene_Gameover.new
  36.         return
  37.       end
  38.       # 公共事件 ID 有效的情况下
  39.       if $data_items[items_ID].common_event_id > 0
  40.         # 预约调用公共事件
  41.         $game_temp.common_event_id = $data_items[items_ID].common_event_id
  42.         # 切换到地图画面
  43.         $scene = Scene_Map.new #自己喜欢改就改
  44.         return
  45.       end
  46.     end
  47.     # 无法使用物品的情况下
  48.     unless used
  49.       # 演奏冻结 SE
  50.       $game_system.se_play($data_system.buzzer_se)
  51.     end
  52.   end
  53. end
复制代码
使用:
Item_use.used(物品编号,使用对象)
使用对象0是队伍中第一个角色




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1