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

Project1

 找回密码
 注册会员
搜索

[VA]关于事件为主限制玩家战斗使用道具的方法(不完美)

查看数: 2158 | 评论数: 6 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2015-9-17 09:52

正文摘要:

本帖最后由 御曹司 于 2015-9-17 10:34 编辑 相信很多玩家玩RPG都会玩命刷钱买药、然后BOSS就用拼命嗑药堆打过。 那样虽然实用不过我觉得那样趣味性太差、对玩家的耐心是折磨。 所以一直想着解决方法。后来在一 ...

回复

guaneva 发表于 2015-9-22 18:49:46
哎哟!好长好复杂,技术含量太高,我先看看再说。
dongdongdjh 发表于 2015-9-18 13:39:11
本帖最后由 dongdongdjh 于 2015-9-18 13:40 编辑
御曹司 发表于 2015-9-18 12:52
其实我还想知道(´゚Д゚`)
这个脚本的具体用途、以及其作用机理。。。


赋予每个战斗中的角色一个变量 初始值为1
点击物品选项 该值减1 如果取消则该值加1
不取消则1-1=0,
也就是说该角色使用一次物品后对应的变量变为0,则该角色的物品选项状态变为不激活,也就是不能点击状态。
每次战斗开始,重置变量为1。
不可能没效果啊。

点评

物品选项增加了状态判定,如果变量==0则状态不激活。  发表于 2015-9-18 13:44
御曹司 发表于 2015-9-18 12:52:59
dongdongdjh 发表于 2015-9-18 08:28
插main前就可以用,没什么设置的。我也没学过ruby,全靠看汉化版的F1.

其实我还想知道(´゚Д゚`)
这个脚本的具体用途、以及其作用机理。。。

点评

我插进去并没有什么效果额。。。  发表于 2015-9-18 12:57
dongdongdjh 发表于 2015-9-18 08:28:12
御曹司 发表于 2015-9-17 22:34
我一直在想事件解决方法、
非常感谢大大百忙之中给我写的脚本,,,,
这个是用来记录角色ID就能避免上面 ...

插main前就可以用,没什么设置的。我也没学过ruby,全靠看汉化版的F1.
御曹司 发表于 2015-9-17 22:34:04
dongdongdjh 发表于 2015-9-17 19:21
module BattleManager
  def self.battle_start
    $game_system.battle_count += 1

我一直在想事件解决方法、
非常感谢大大百忙之中给我写的脚本,,,,
这个是用来记录角色ID就能避免上面粉字解决的 方法了吗
那个...
可以详细说说这个的用法和用途吗(|||゚д゚)
我RUBY语言会的很少,,,
dongdongdjh 发表于 2015-9-17 19:21:21
RUBY 代码复制
  1. module BattleManager
  2.   def self.battle_start
  3.     $game_system.battle_count += 1
  4.     $game_party.on_battle_start
  5.     $game_troop.on_battle_start
  6.     $game_troop.enemy_names.each do |name|
  7.       $game_message.add(sprintf(Vocab::Emerge, name))
  8.     end
  9.     if @preemptive
  10.       $game_message.add(sprintf(Vocab::Preemptive, $game_party.name))
  11.     elsif @surprise
  12.       $game_message.add(sprintf(Vocab::Surprise, $game_party.name))
  13.     end
  14.     for i in 1..4                 #这里可以
  15.       $game_variables[i] = 1      #用迭代
  16.     end                           #不太熟所以用for写了
  17.     wait_for_message
  18.   end
  19. end  
  20. class Scene_Battle < Scene_Base
  21.   alias on_item_ok_20150917 on_item_ok
  22.   def on_item_ok
  23.     on_item_ok_20150917
  24.     $game_variables[BattleManager.actor.index+1] -= 1 #index是0,所以从1号变量开始,可以改
  25.   end
  26.   alias on_item_cancel_20150917 on_item_cancel
  27.   def on_item_cancel
  28.     on_item_cancel_20150917
  29.     $game_variables[BattleManager.actor.index+1] += 1
  30.   end
  31. end
  32. class Window_ActorCommand < Window_Command
  33.   def add_item_command
  34.     @itsw = $game_variables[BattleManager.actor.index+1] == 0 ? false : true
  35.     add_command(Vocab::item, :item,@itsw)
  36.   end
  37. end


写了一个,你可以试试,是不是你要的效果。
应该是可以不占用变量的,我本想用数组的,但是没写成功。

评分

参与人数 1星屑 +200 收起 理由
恐惧剑刃 + 200 塞糖

查看全部评分

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

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

GMT+8, 2024-5-23 19:03

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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