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

Project1

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

[已经过期] 求“扩展”一下增加敌人数量的脚本……

[复制链接]

Lv2.观梦者

梦石
0
星屑
325
在线时间
252 小时
注册时间
2014-4-11
帖子
265
跳转到指定楼层
1
发表于 2017-2-9 19:54:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 眼中目之瞳 于 2017-2-9 19:56 编辑

脚本原地址https://rpg.blue/forum.php?mod=viewthread&tid=276996
代码中有“敌人成员一,敌人成员二,敌人成员三”的设定,能否做到当“敌人成员一”死亡后开启一个指定的开关【后续敌人成员的开关依次类推】?

RUBY 代码复制
  1. # 脚本作者 dujian15
  2. module TroopE #设置敌群
  3.  
  4.  
  5.   #设置这一部分,下面的如果不懂脚本可以不用管。
  6.  
  7. AddEnemy = [] #对应的数组是一个二元数组。
  8.  
  9. #troop_id 是你想插入的对应的敌群id
  10. #enemy_id 是你想插入的敌人的id可以重复
  11.  
  12.  
  13.  
  14. #AddEnemy[troop_id] = [enemy_id1,enemy_id2...] 可以重复
  15.  
  16. AddEnemy[33] = [34,32,35] #33号敌群需要增加的敌人的id名 可以重复 剩下的你可以自己来写.
  17.  
  18. end
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25. #encoding:utf-8
  26. #==============================================================================
  27. # ■ Game_Troop
  28. #------------------------------------------------------------------------------
  29. #  管理敌群和战斗相关资料的类,也可执行如战斗事件管理之类的功能。
  30. #   本类的实例请参考 $game_troop 。
  31. #==============================================================================
  32.  
  33. class Game_Troop < Game_Unit
  34.  
  35.   def setup(troop_id)
  36.     clear
  37.     @troop_id = troop_id
  38.     @enemies = []
  39.  
  40.  
  41.     troop.members.each do |member|
  42.       next unless $data_enemies[member.enemy_id]
  43.       enemy = Game_Enemy.new(@enemies.size, member.enemy_id)
  44.       enemy.hide if member.hidden
  45.       enemy.screen_x = member.x
  46.       enemy.screen_y = member.y
  47.       @enemies.push(enemy)
  48.  
  49.  
  50.     end
  51.  
  52.  
  53.     add_enemy( troop_id )  
  54.  
  55.     init_screen_tone
  56.     make_unique_names
  57.   end  
  58.  
  59.   #--------------------------------------------------------------------------
  60.   # ● 敌人上限破8 总合 15
  61.   #--------------------------------------------------------------------------  
  62.  
  63.  
  64.   def add_enemy( troop_id )
  65.        @troop_id = troop_id
  66.        if TroopE::AddEnemy[@troop_id].size != 0 then
  67.        for i in  1 .. TroopE::AddEnemy[@troop_id].size
  68.           @enemy1_id = TroopE::AddEnemy[@troop_id][i - 1]
  69.           enemy1 = Game_Enemy.new(@enemies.size, @enemy1_id)   
  70.           @enemies.push(enemy1)   
  71.           end
  72.        end
  73.        end
  74.   end


RUBY 代码复制
  1. #==============================================================================
  2. # ■ VX 敌人战斗坐标永续固定的设定。
  3. # By:小E
  4. #==============================================================================
  5. #==============================================================================
  6. # ■ module Eienshinken Ver1.1
  7. #    版本更新履历
  8. #    Ver1.1: 添加开关控制,想自动排列时再自动排列。
  9. #------------------------------------------------------------------------------
  10. #  敌人X,Y坐标的设定模块。
  11. #==============================================================================
  12. module Eienshinken
  13. #--------------------------------------------------------------------------
  14. # ● 敌人的X坐标改变。
  15. #    顺序排列依次:敌人成员一,敌人成员二,敌人成员三等等。
  16. #    扩展请自己添加数组。
  17. #--------------------------------------------------------------------------
  18.   #ENEMY_X = [200,100,40,280,145,235,270,320]
  19.   ENEMY_X = [240,250,260,270,280,160,170,180,190,200,80,90,100,110,120]
  20. #--------------------------------------------------------------------------
  21. # ● 敌人的Y坐标改变。
  22. #    顺序排列依次:敌人成员一,敌人成员二,敌人成员三等等。
  23. #    扩展请自己添加数组。
  24. #--------------------------------------------------------------------------
  25.   #ENEMY_Y = [180,100,260,180,270,80,310,70]
  26.   ENEMY_Y = [300,250,200,150,100,300,250,200,150,100,300,250,200,150,100]
  27. #--------------------------------------------------------------------------
  28. # ● 改变敌人位置的坐标开关
  29. #    设置开关编号。游戏中用开关控制是否打开功能。
  30. #--------------------------------------------------------------------------
  31.   ENEMY_XY_SWITCH = 1
  32. end
  33. #==============================================================================
  34. # ■ Scene_Battle
  35. #------------------------------------------------------------------------------
  36. #  处理战斗画面的类。
  37. #==============================================================================
  38. class Scene_Battle < Scene_Base
  39.   alias :eienshinken_start :start
  40.   def start
  41.     if true #$game_switches[Eienshinken::ENEMY_XY_SWITCH]
  42.       for i in 0...$game_troop.members.size
  43.         $game_troop.members[i].screen_x = Eienshinken::ENEMY_X[i]
  44.         $game_troop.members[i].screen_y = Eienshinken::ENEMY_Y[i]
  45.       end
  46.       eienshinken_start
  47.     else
  48.       eienshinken_start
  49.     end
  50.   end
  51. end



Lv2.观梦者

梦石
0
星屑
325
在线时间
252 小时
注册时间
2014-4-11
帖子
265
2
 楼主| 发表于 2017-2-11 21:08:59 | 只看该作者
自顶一次吧……
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-17 03:46

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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