Project1

标题: 300分问一个脚本问题 [打印本页]

作者: 做游戏的新手    时间: 2008-8-30 23:47
标题: 300分问一个脚本问题
如何判断物品是否为1号? [LINE]1,#dddddd[/LINE]版务信息:本贴由楼主自主结贴~
作者: 水蓝    时间: 2008-8-30 23:51
提示: 作者被禁止或删除 内容自动屏蔽
作者: 搁·浅    时间: 2008-8-30 23:53
提示: 作者被禁止或删除 内容自动屏蔽
作者: Swimming    时间: 2008-8-31 01:25
在系统里不是设定好了吗
作者: 玄月    时间: 2008-8-31 01:28
lz的签名乃…………多啦A梦,还有,此帖竟然还有10点VIP奖励!!!
话说回来,真不知道你问什么
作者: 蛋糕    时间: 2008-8-31 01:30
20VIP你省著花
作者: 灯笼菜刀王    时间: 2008-8-31 02:57
吃到老还是新手- -,问这种没头没尾的伸手党问题。

判断战斗中使用物品的ID是否为1号
$data_items[@active_battler.current_action.item_id].id == 1

判断平时使用物品的ID是否为1号
@itemlist_window.item.id == 1

作者: 做游戏的新手    时间: 2008-8-31 03:41
以下引用灯笼菜刀王于2008-8-30 18:57:00的发言:

吃到老还是新手- -,问这种没头没尾的伸手党问题。

判断战斗中使用物品的ID是否为1号
$data_items[@active_battler.current_action.item_id].id == 1

判断平时使用物品的ID是否为1号
@itemlist_window.item.id == 1



[本贴由作者于 2008-8-30 18:59:05 最后编辑]

踹飞
我说IF
作者: 寺田贵信之怒    时间: 2008-8-31 04:21
提示: 作者被禁止或删除 内容自动屏蔽
作者: ★_茄孓    时间: 2008-8-31 04:32
我想LZ应该是想在使用物品时判断ID吧?
把该脚本放入Main前
  1. class Scene_Item
  2.   def update_item
  3.     if Input.trigger?(Input::B)
  4.       $game_system.se_play($data_system.cancel_se)
  5.       $scene = Scene_Menu.new(0)
  6.       return
  7.     end
  8.     if Input.trigger?(Input::C)
  9.       @item = @item_window.item
  10.       $item_id = @item.id
  11.       unless @item.is_a?(RPG::Item)
  12.         $game_system.se_play($data_system.buzzer_se)
  13.         return
  14.       end
  15.       unless $game_party.item_can_use?(@item.id)
  16.         $game_system.se_play($data_system.buzzer_se)
  17.         return
  18.       end
  19.       $game_system.se_play($data_system.decision_se)
  20.       if @item.scope >= 3
  21.         @item_window.active = false
  22.         @target_window.x = (@item_window.index + 1) % 2 * 304
  23.         @target_window.visible = true
  24.         @target_window.active = true
  25.         if @item.scope == 4 || @item.scope == 6
  26.           @target_window.index = -1
  27.         else
  28.           @target_window.index = 0
  29.         end
  30.       else
  31.         if @item.common_event_id > 0
  32.           $game_temp.common_event_id = @item.common_event_id
  33.           $game_system.se_play(@item.menu_se)
  34.           if @item.consumable
  35.             $game_party.lose_item(@item.id, 1)
  36.             @item_window.draw_item(@item_window.index)
  37.           end
  38.           $scene = Scene_Map.new
  39.           return
  40.         end
  41.       end
  42.       return
  43.     end
  44.   end
  45.   def update_target
  46.     if Input.trigger?(Input::B)
  47.       $game_system.se_play($data_system.cancel_se)
  48.       unless $game_party.item_can_use?(@item.id)
  49.         @item_window.refresh
  50.       end
  51.       @item_window.active = true
  52.       @target_window.visible = false
  53.       @target_window.active = false
  54.       return
  55.     end
  56.     if Input.trigger?(Input::C)
  57.       $item_id = @item_window.item.id
  58.       if $game_party.item_number(@item.id) == 0
  59.         $game_system.se_play($data_system.buzzer_se)
  60.         return
  61.       end
  62.       if @target_window.index == -1
  63.         used = false
  64.         for i in $game_party.actors
  65.           used |= i.item_effect(@item)
  66.         end
  67.       end
  68.       if @target_window.index >= 0
  69.         target = $game_party.actors[@target_window.index]
  70.         used = target.item_effect(@item)
  71.       end
  72.       if used
  73.         $game_system.se_play(@item.menu_se)
  74.         if @item.consumable1
  75.           $game_party.lose_item(@item.id, 1)
  76.           @item_window.draw_item(@item_window.index)
  77.         end
  78.         @target_window.refresh
  79.         if $game_party.all_dead?
  80.           $scene = Scene_Gameover.new
  81.           return
  82.         end
  83.         if @item.common_event_id > 0
  84.           $game_temp.common_event_id = @item.common_event_id
  85.           $scene = Scene_Map.new
  86.           return
  87.         end
  88.       end
  89.       unless used
  90.         $game_system.se_play($data_system.buzzer_se)
  91.       end
  92.       return
  93.     end
  94.   end
  95. end
复制代码


然后用物品里的公共事件来用$item_id判断物品ID即可
if $item_id == 1
p "sa"
end [LINE]1,#dddddd[/LINE]系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
作者: 灯笼菜刀王    时间: 2008-8-31 04:35
以下引用做游戏的新手于2008-8-30 19:41:54的发言:
踹飞
我说IF

反踹飞,if不会自己加嘛- -




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