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

Project1

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

[已经解决] 请帮忙做个全敌群共用事件

[复制链接]

Lv5.捕梦者

梦石
0
星屑
36462
在线时间
10800 小时
注册时间
2009-3-15
帖子
4815
跳转到指定楼层
1
发表于 2017-3-23 13:04:09 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
那个..我有个想法..如果能把某个指定敌群编号用作全部敌群共用事件的话就可以省了要在每个敌群都重复用同一事件浪费时间的行为了 不知能不能实现?
跪求大神出手帮忙...

Lv5.捕梦者

梦石
0
星屑
33488
在线时间
5108 小时
注册时间
2012-11-19
帖子
4878

开拓者

2
发表于 2017-3-23 15:18:10 | 只看该作者
把战斗场景的 设置战斗事件 里面的敌人队伍ID,固定为你需要的敌人队伍ID就行了。
无论是哪个敌人队伍,始终只执行你固定的那个敌人队伍事件。

点评

从来没想过还有这种方法~  发表于 2017-3-23 17:29
xp vx va mv  va mz 各类型脚本/插件定制
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
36462
在线时间
10800 小时
注册时间
2009-3-15
帖子
4815
3
 楼主| 发表于 2017-3-23 15:30:00 | 只看该作者
本帖最后由 soulsaga 于 2017-3-23 15:31 编辑
芯☆淡茹水 发表于 2017-3-23 15:18
把战斗场景的 设置战斗事件 里面的敌人队伍ID,固定为你需要的敌人队伍ID就行了。
无论是哪个敌人队伍,始 ...


这是改脚本么?
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
33488
在线时间
5108 小时
注册时间
2012-11-19
帖子
4878

开拓者

4
发表于 2017-3-23 17:30:17 | 只看该作者
把下面俩敌人队伍ID改为固定的敌人队伍ID


所以无论遇见什么队伍,都会执行你更改的敌人队伍ID的事件,慎用

点评

O 认可答案..  发表于 2017-3-23 18:09

评分

参与人数 2星屑 +66 梦石 +1 收起 理由
RyanBern + 1 认可答案
soulsaga + 66 认可答案

查看全部评分

xp vx va mv  va mz 各类型脚本/插件定制
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (版主)

梦石
1
星屑
23999
在线时间
3339 小时
注册时间
2011-7-8
帖子
3926

开拓者

5
发表于 2017-3-23 17:38:39 | 只看该作者
芯☆淡茹水 发表于 2017-3-23 17:30
把下面俩敌人队伍ID改为固定的敌人队伍ID

所以改成:

  1. for index in 0...$data_troops[@troop_id].pages.size + 2 # 2 是多余的事件页数量
  2.   page = $data_troops[@troop_id].pages[index] if index < $data_troops[@troop_id].pages.size
  3.   page = $data_troops[10].pages[0] if index == $data_troops[@troop_id].pages.size # 队伍10第1页
  4.   page = $data_troops[10].pages[1] if index == $data_troops[@troop_id].pages.size + 1 # 队伍10第2页
  5.   ...
  6.   c = page.conditon
  7.   ...
复制代码


类似这样就可以尽可能减少麻烦……

点评

酱还不如专门弄几个事件队伍,哪些队伍执行A队伍事件;哪些队伍执行B队伍事件;哪些队伍执行本身事件。  发表于 2017-3-23 17:53
熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
36462
在线时间
10800 小时
注册时间
2009-3-15
帖子
4815
6
 楼主| 发表于 2017-3-23 18:48:34 | 只看该作者
本帖最后由 soulsaga 于 2017-3-24 09:50 编辑

RUBY 代码复制
  1. # ● 设置战斗事件
  2.   #--------------------------------------------------------------------------
  3.   def setup_battle_event
  4.     # 正在执行战斗事件的情况下
  5.     if $game_system.battle_interpreter.running?
  6.       return
  7.     end
  8.     # 搜索全部页的战斗事件
  9.     event_flags2 = 0
  10.     for index in 0...$data_troops[4].pages.size
  11.       # 获取事件页
  12.       page2 = $data_troops[4].pages[index]
  13.       # 事件条件可以参考 c
  14.       c = page2.condition
  15.       # 没有指定任何条件的情况下转到下一页
  16.       unless c.turn_valid or c.enemy_valid or
  17.              c.actor_valid or c.switch_valid
  18.         next
  19.       end
  20.       # 执行完毕的情况下转到下一页
  21.       if $game_temp.battle_event_flags[index]
  22.         next
  23.       end
  24.       # 确认回合条件
  25.       if c.turn_valid
  26.         n = $game_temp.battle_turn
  27.         a = c.turn_a
  28.         b = c.turn_b
  29.         if (b == 0 and n != a) or
  30.            (b > 0 and (n < 1 or n < a or n % b != a % b))
  31.           next
  32.         end
  33.       end
  34.       # 确认敌人条件
  35.       if c.enemy_valid
  36.         enemy = $game_troop.enemies[c.enemy_index]
  37.         if enemy == nil or enemy.hp * 100.0 / enemy.maxhp > c.enemy_hp
  38.           next
  39.         end
  40.       end
  41.       # 确认角色条件
  42.       if c.actor_valid
  43.         actor = $game_actors[c.actor_id]
  44.         if actor == nil or actor.hp * 100.0 / actor.maxhp > c.actor_hp
  45.           next
  46.         end
  47.       end
  48.       # 确认开关条件
  49.       if c.switch_valid
  50.         if $game_switches[c.switch_id] == false
  51.           next
  52.         end
  53.       end
  54.       event_flags = true
  55.       # 设置事件
  56.       $game_system.battle_interpreter.setup(page2.list, 0)
  57.       if page2.span <= 1
  58.         # 设置执行结束标志
  59.         $game_temp.battle_event_flags[index] = true
  60.       end
  61.       #return
  62.     end
  63.     for index2 in 0...$data_troops[@troop_id].pages.size
  64.       # 获取事件页
  65.       page = $data_troops[@troop_id].pages[index2]
  66.       # 事件条件可以参考 c
  67.       c = page.condition
  68.       # 没有指定任何条件的情况下转到下一页
  69.       unless c.turn_valid or c.enemy_valid or
  70.              c.actor_valid or c.switch_valid
  71.         next
  72.       end
  73.       # 执行完毕的情况下转到下一页
  74.       if event_flags2 == true
  75.         #event_flags2 = 0
  76.         next
  77.       end
  78.       # 确认回合条件
  79.       if c.turn_valid
  80.         n = $game_temp.battle_turn
  81.         a = c.turn_a
  82.         b = c.turn_b
  83.         if (b == 0 and n != a) or
  84.            (b > 0 and (n < 1 or n < a or n % b != a % b))
  85.           next
  86.         end
  87.       end
  88.       # 确认敌人条件
  89.       if c.enemy_valid
  90.         enemy = $game_troop.enemies[c.enemy_index]
  91.         if enemy == nil or enemy.hp * 100.0 / enemy.maxhp > c.enemy_hp
  92.           next
  93.         end
  94.       end
  95.       # 确认角色条件
  96.       if c.actor_valid
  97.         actor = $game_actors[c.actor_id]
  98.         if actor == nil or actor.hp * 100.0 / actor.maxhp > c.actor_hp
  99.           next
  100.         end
  101.       end
  102.       # 确认开关条件
  103.       if c.switch_valid
  104.         if $game_switches[c.switch_id] == false
  105.           next
  106.         end
  107.       end
  108.       # 设置事件
  109.       $game_system.battle_interpreter.setup(page.list, 0) if $game_temp.battle_event_flags[index2] != true
  110.       $game_system.battle_interpreter.setup(page.list+page2.list, 0) if event_flags == true
  111.       event_flags2 = true
  112.       # 本页的范围是 [战斗] 或 [回合] 的情况下
  113.       if page.span <= 1
  114.         # 设置执行结束标志
  115.         $game_temp.battle_event_flags[index2] = true
  116.          end
  117.       return
  118.     end
  119.   end
  120.   end

点评

这次辛辛苦苦总算改好了..脚本盲的悲哀啊..  发表于 2017-3-24 09:50
直接把我给你的图片俩地方改为4就行了,何必那么复杂。  发表于 2017-3-24 08:00
这样就有条件判断了..吧  发表于 2017-3-23 19:53
这样啊..忘了呢..  发表于 2017-3-23 19:24
那随你的喜好就行。你那通用事件是强制执行,并没经过条件判断。  发表于 2017-3-23 19:19
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-27 08:46

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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