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

Project1

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

[已经过期] 3个关于战斗的问题

[复制链接]

Lv4.逐梦者

梦石
0
星屑
7917
在线时间
956 小时
注册时间
2015-2-10
帖子
248
跳转到指定楼层
1
发表于 2015-2-10 12:46:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
三个问题如下:
①如何移动战斗中敌人的位置?当然也可以告诉我如何设置8个以上的敌人……
②如何使战斗中敌人连续行动?
③如何设置一种状态,中了这种状态就没法使用物理特技。
我知道要用脚本……请把脚本发过来……当然不用脚本也好……

Lv1.梦旅人

梦石
0
星屑
50
在线时间
206 小时
注册时间
2014-2-8
帖子
396
2
发表于 2015-2-10 14:42:00 | 只看该作者
1。队伍中不就能调吗
2。队伍里貌似可以做到吧
3。这个判断状态用脚本,如果魔法倒还能设置,可以考虑用0%的物理攻击的状态代替吗
刚接触RPG的新人们裤艾来这里!在这里能够帮助你们提高自身的能力,让大家来帮助每个人实现自己的创意、构想!
也许你只是正在看RPG教程的新人,或者是正在努力学着制作自己的RPG的制作者,或者是狂热的RPG游戏喜爱者,
但都不重要!
加入我们,我们会帮助你实现梦想,或者帮助你更好的运用RPG并且创造个人的一片天地!周末我们会不定时间开放RM技术讨论活动或者RM经验交流课!
加入我们,我们愿意与你共同创造奇迹,共同进步!
QQ群号:329443038  
或者联系QQ:573932914
我们和你站在同一线!
要求只有:常能上线
我们会用十分的热情接纳你!
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
7917
在线时间
956 小时
注册时间
2015-2-10
帖子
248
3
 楼主| 发表于 2015-2-10 15:49:51 | 只看该作者
①我说的是要在战斗中更换,我想实现以下:
跟敌人战斗,达到一定条件后,战场上敌人退下,换上另一波敌人,但是敌人设置量只能是8个,我这两波敌人加起来超过8人,使用‘敌人变身’的话也有问题……因为我想实行一个事件,里面敌人位置很重要,所以请告诉我在战斗中更换敌人位置的方法。
②貌似行……
③不可以啊,我设置了一下,里面魔法和物理特技要区分开,否则后期会出问题……
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (版主)

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

开拓者

4
发表于 2015-2-12 21:21:45 | 只看该作者
设置连续的两次战斗事件?
熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复 支持 反对

使用道具 举报

Lv1.梦旅人

薄凉看客

梦石
0
星屑
50
在线时间
1269 小时
注册时间
2010-6-20
帖子
1316
5
发表于 2015-2-14 00:52:47 | 只看该作者
1. 增加一个变量即可解决
class Game_Battler
  attr_writer :_move_
  def _move_
    @_move_ = [] unless @_move_
    return @_move_
  end
end
然后就调整 Game_Actor
                Game_Enemy
中的 screen_x  screen_y 方法!
比如
alias screen_x_old screen_x
def screen_x
  return screen_x_old + self._move_[0].nil? 0 : self._move_[0]
end
alias screen_y_old screen_y
def screen_y
  return screen_y_old + self._move_[1].nil? 0 : self._move_[1]
end
然后需要移动的时候
actor._move_ = [x, y]
x y 均指 偏移量,可以为 负值。

2.  Scene_Battle 4 中的 make_action_orders 方法 (生成行动循序)
你可以再加一次,也就是行动多次。
这也是部分版本 【连击】 脚本的原理。
比如
# 添加敌人到 @action_battlers 序列
for enemy in $game_troop.enemies
  @action_battlers.push(enemy)
  @action_battlers.push(enemy)
end
# 添加角色到 @action_battlers 序列
for actor in $game_party.actors
  @action_battlers.push(actor)
  @action_battlers.push(actor)
end
你会发现 每个敌人、角色 都会行动两次!!

3. Scene_Battle 4中的 make_skill_action_result(生成特技行动结果)
示例
  1. class Scene_Battle
  2.   alias make_skill_action_result_old make_skill_action_result
  3.   def make_skill_action_result
  4.     if @active_battler.states.include?(状态ID) and
  5.       $data_skills[@active_battler.current_action.skill_id].atk_f == 100
  6.       return
  7.     end
  8.     make_skill_action_result_old
  9.   end
  10. end
复制代码

评分

参与人数 1星屑 +100 收起 理由
hys111111 + 100 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
7917
在线时间
956 小时
注册时间
2015-2-10
帖子
248
6
 楼主| 发表于 2015-6-16 09:57:48 | 只看该作者
嗯,已经解决。
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-12 01:55

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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