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

Project1

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

[已经解决] 嘲讽后如何改变敌人单体伤害技能的攻击目标

[复制链接]

Lv2.观梦者

梦石
0
星屑
582
在线时间
917 小时
注册时间
2013-3-13
帖子
557
跳转到指定楼层
1
发表于 2014-4-14 13:53:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 crow2006 于 2014-4-14 13:55 编辑

  #--------------------------------------------------------------------------
  # ● 作成技能或是物品的目标的扩张
  #--------------------------------------------------------------------------
  def make_obj_targets2(obj, targets)
########################################################################
    for member in $game_party.members
      if member.state?(229) #MT释放嘲讽技能之后自身获得的状态编号
        if not battler.actor? and obj.base_damage > 0 and obj.scope == 1 #敌方施放单体伤害技能
???? #这里应当如何写?让敌人单体伤害技能的攻击目标强制变为我方队员中携带229号状态的角色
        end
      end
    end
########################################################################
    if obj.extension.include?("全区域")
      targets = []
      targets += opponents_unit.existing_members
      targets += friends_unit.existing_members
    end
    if obj.extension.include?("自分以外")
      targets.delete($game_party.members[battler.index]) if battler.actor?
      targets.delete($game_troop.members[battler.index]) unless battler.actor?
    end
    return targets.compact
  end

点评

我也是这个想法,强制改变攻击目标。我再试试看。谢谢你。  发表于 2014-4-27 07:44
不过确认随机攻击要攻击哪个人的确是那个地方没错的,我的想法是在有229号状态的情况下把目标强制改为有状态的那个人,LZ你试试p看看  发表于 2014-4-27 01:19

Lv2.观梦者

永无止境的旅程

梦石
0
星屑
503
在线时间
1552 小时
注册时间
2012-6-19
帖子
1226

开拓者贵宾

2
发表于 2014-4-14 17:21:03 | 只看该作者
本帖最后由 丿梁丶小柒 于 2014-4-14 17:22 编辑

嘲讽技能不必这样写,LZ可以参考我这个。

在Game_Actor里搜索def odds
然后照我下面的这样写下去
  1.   def odds  #吸引力
  2.     if self.state?(x) #当获得指定x编号的状态时
  3.     return 100      #当获得指定状态时吸引最大
  4.   else
  5.     return 4 - self.class.position   #正常状态时的吸引力
  6.     end
  7.   end
复制代码

点评

我现在就是这个。但是不能做到100%。  发表于 2014-4-14 23:11

评分

参与人数 1星屑 +50 收起 理由
怪蜀黍 + 50 少少的奖励

查看全部评分

[url=https://rpg.blue/thread-389697-1-1.html]https://rpg.blue/https://rpg.blue/data/attachment/forum/201602/26/220128cfbxxs47xth4xkz4.jpg[/url]
<font size="5">[color=Green][url=https://rpg.blue/forum.php?mod=viewthread&tid=396208&extra=page%3D1][color=DeepSkyBlue]全新配套ACT系统,每周末一大更新,尽请期待。[/color][/url][/color]
回复 支持 反对

使用道具 举报

Lv2.观梦者

永无止境的旅程

梦石
0
星屑
503
在线时间
1552 小时
注册时间
2012-6-19
帖子
1226

开拓者贵宾

3
发表于 2014-4-15 12:16:51 | 只看该作者
是不是百分之100  这个是用于设定嘲讽技能的,嘲讽技能也不至于100%,不过只是提高吸引力而已。
如果是剧情使用的话可以使用战斗指令强制敌人攻击战斗排在第几位的伙伴。

点评

只有改变目标才是真正的100%,而我想要的就是这样一种效果。  发表于 2014-4-15 13:17
[url=https://rpg.blue/thread-389697-1-1.html]https://rpg.blue/https://rpg.blue/data/attachment/forum/201602/26/220128cfbxxs47xth4xkz4.jpg[/url]
<font size="5">[color=Green][url=https://rpg.blue/forum.php?mod=viewthread&tid=396208&extra=page%3D1][color=DeepSkyBlue]全新配套ACT系统,每周末一大更新,尽请期待。[/color][/url][/color]
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
582
在线时间
917 小时
注册时间
2013-3-13
帖子
557
4
 楼主| 发表于 2014-4-26 09:40:43 | 只看该作者
有人能够解答一下吗
回复 支持 反对

使用道具 举报

Lv1.梦旅人

星君

梦石
0
星屑
83
在线时间
2980 小时
注册时间
2011-10-9
帖子
2317

贵宾短篇七萝莉正太组冠军

5
发表于 2014-4-26 15:34:57 | 只看该作者
本帖最后由 皮卡星 于 2014-4-26 08:37 编辑
  1.   def random_target
  2.     roulette = []
  3.     for member in existing_members
  4.       member.odds.times do
  5.         roulette.push(member)
  6.       end
  7.     end
  8.     return roulette.size > 0 ? roulette[rand(roulette.size)] : nil
  9.   end
复制代码
参考Game_Unit的52行开始
这段就是决定随机目标的写法了,虽然没测试不过大概可以这样写:
  1.   def random_target
  2.     roulette = []
  3.     for member in existing_members
  4.       if member.state?(229)
  5.         return member
  6.       else
  7.         member.odds.times do
  8.           roulette.push(member)
  9.         end
  10.       end
  11.     end
  12.     return roulette.size > 0 ? roulette[rand(roulette.size)] : nil
  13.   end
复制代码
没经过测试,不知道可不可以,LZ试试

点评

感谢,但是经过测试,无效。  发表于 2014-4-27 00:45

评分

参与人数 1星屑 +100 收起 理由
怪蜀黍 + 100 依然很感谢

查看全部评分


回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
582
在线时间
917 小时
注册时间
2013-3-13
帖子
557
6
 楼主| 发表于 2014-4-27 09:16:36 | 只看该作者
本帖最后由 crow2006 于 2014-4-28 00:57 编辑

  #--------------------------------------------------------------------------
  # ● 嘲讽
  #     index : 位置
  #--------------------------------------------------------------------------
  def chaofeng_target(index)  
########################################嘲讽后强制改变目标
    for member in existing_members
      return member if member.state?(235) #猎人印记
      return member if member.state?(229) #援护队友
    end
#######################################     
    member = members[index]
    return member if member != nil and member.exist?
    return existing_members[0]
  end


      elsif obj.for_one?        # 敌单体
        targets.push(opponents_unit.chaofeng_target(@target_index)) #嘲讽


解决了,在直接目标选择这里设置即可。

点评

蛋疼的目标判断2333,总之成功就好  发表于 2014-4-27 15:50
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-15 12:21

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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