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

Project1

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

[已经解决] 怎么设置部份敌人的两次行动

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
38 小时
注册时间
2007-7-26
帖子
50
跳转到指定楼层
1
发表于 2012-1-3 20:38:37 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
设定需要,部份敌人想设置成2次行动。分别使用不同的技能攻击。
还有部份敌人的自动回复

Lv2.观梦者

梦石
0
星屑
448
在线时间
628 小时
注册时间
2011-9-27
帖子
3996
2
发表于 2012-1-3 20:46:46 | 只看该作者
来源地址
http://rpg.blue/forum.php?mod=vi ... D100%26typeid%3D100
  1. #==============================================================================
  2. # ★ ExEnemy_DoubleAction
  3. #------------------------------------------------------------------------------
  4. #  设置让敌人一定机率出现连续行动。
  5. #==============================================================================

  6. # 能够连续行动的敌人识別用文字。
  7. # 在敌人的「备注」栏中填写:
  8. # 识別用文字 + [机率],也就是说:可以设定不同敌人的机率
  9. # 出现连续行动的机率、每回合判断一次。
  10. # 例) 50%机率出现连续行动 => *DOUBLE_ACTION[50]
  11. EXENM_DOUBLEACT_SIGNATURE = "*DOUBLE_ACTION"

  12. # 连续行動的默认机率。
  13. # 当识別用文字中没有设置时调用的机率、请指定为1~100(%)。
  14. EXENM_DOUBLEACT_PROBARITY = 100

  15. #------------------------------------------------------------------------------

  16. class Game_Enemy
  17.   alias _exedblact_initialize initialize
  18.   #--------------------------------------------------------------------------
  19.   # ○ 定義實例變量 (追加定义)
  20.   #--------------------------------------------------------------------------
  21.   attr_accessor :attacked                 # 「已经攻击一次」标记
  22.   #--------------------------------------------------------------------------
  23.   # ○ 初始化对象 (追加定义)
  24.   #     index    : 隊伍中索引
  25.   #     enemy_id : 敵人 ID
  26.   #--------------------------------------------------------------------------
  27.   def initialize(index, enemy_id)
  28.     _exedblact_initialize(index, enemy_id)
  29.     @attacked = false
  30.   end
  31.   #--------------------------------------------------------------------------
  32.   # ☆ 判定能否连续行动
  33.   #--------------------------------------------------------------------------
  34.   def double_action?
  35.     return false if @attacked
  36.     sig = EXENM_DOUBLEACT_SIGNATURE
  37.     return false unless enemy.note[/#{Regexp.quote sig}\[?(\d*)\]?/].to_a[0]
  38.     prob = $1.to_i
  39.     prob = EXENM_DOUBLEACT_PROBARITY if prob == 0
  40.     @attacked = true
  41.     return rand(100) < prob
  42.   end
  43. end

  44. class Game_Troop
  45.   alias _exedblact_increase_turn increase_turn
  46.   #--------------------------------------------------------------------------
  47.   # ○ 增加回合数 (追加定义)
  48.   #--------------------------------------------------------------------------
  49.   def increase_turn
  50.     _exedblact_increase_turn
  51.     for enemy in members
  52.       enemy.attacked = false
  53.     end
  54.   end
  55. end

  56. class Scene_Battle
  57.   alias _exedblact_set_next_active_battler set_next_active_battler
  58.   #--------------------------------------------------------------------------
  59.   # ○ 設置下一戰鬥者行動 (追加定义)
  60.   #--------------------------------------------------------------------------
  61.   def set_next_active_battler
  62.     if @active_battler.is_a?(Game_Enemy)
  63.       return @active_battler.make_action if @active_battler.double_action?
  64.     end
  65.     _exedblact_set_next_active_battler
  66.   end
  67. end
复制代码

double_action_93663054.zip

250.9 KB, 下载次数: 48

回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
38 小时
注册时间
2007-7-26
帖子
50
3
 楼主| 发表于 2012-1-3 21:23:39 | 只看该作者
脚本已导入,但是还是不明白备注要写一些什么?
能举例一下么?
比如1%的两次行动和100%的两次运行?
我在备注填写:100%机率出现连续行动  没出现效果
我在备注填写:100%机率出现连续行动 => *DOUBLE_ACTION[100]  没出现效果
我在备注填写:EXENM_DOUBLEACT_PROBARITY = 100 还是没效果

点评

*DOUBLE_ACTION  发表于 2012-1-3 21:29
回复

使用道具 举报

Lv2.观梦者

梦石
0
星屑
448
在线时间
628 小时
注册时间
2011-9-27
帖子
3996
4
发表于 2012-1-3 21:32:51 | 只看该作者
本帖最后由 小白玩家 于 2012-1-3 21:33 编辑
死去活来 发表于 2012-1-3 21:23
脚本已导入,但是还是不明白备注要写一些什么?
能举例一下么?
比如1%的两次行动和100%的两次运行?


范例里不是讲了,没设置几率的敌人,出现连续行动的几率是100

1.jpg (72.18 KB, 下载次数: 18)

1.jpg
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
38 小时
注册时间
2007-7-26
帖子
50
5
 楼主| 发表于 2012-1-3 21:52:29 | 只看该作者
本帖最后由 死去活来 于 2012-1-3 21:56 编辑

还是不行,备注不写也是一动

脚本.jpg (6.88 KB, 下载次数: 20)

脚本.jpg

不写.jpg (4.39 KB, 下载次数: 21)

不写.jpg

情况1.jpg (3.89 KB, 下载次数: 18)

情况1.jpg

情况2.jpg (4.67 KB, 下载次数: 21)

情况2.jpg

情况3.jpg (4.81 KB, 下载次数: 19)

情况3.jpg
回复

使用道具 举报

Lv2.观梦者

梦石
0
星屑
448
在线时间
628 小时
注册时间
2011-9-27
帖子
3996
6
发表于 2012-1-3 21:57:54 | 只看该作者
本帖最后由 小白玩家 于 2012-1-3 22:02 编辑
死去活来 发表于 2012-1-3 21:52
还是不行,备注不写也是一动


*DOUBLE_ACTION
100%
*DOUBLE_ACTION[50]
50%
没有备注
只攻击一次
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
38 小时
注册时间
2007-7-26
帖子
50
7
 楼主| 发表于 2012-1-3 22:44:51 | 只看该作者
总算成功了,太谢谢了

点评

是你笨笨~  发表于 2012-1-3 22:49
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-12-13 00:38

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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