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

Project1

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

[已经解决] 关于挑衅技能!

[复制链接]
头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
3 小时
注册时间
2010-6-14
帖子
65
跳转到指定楼层
1
发表于 2010-8-17 09:50:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽

Lv1.梦旅人

梦石
0
星屑
50
在线时间
29 小时
注册时间
2010-7-5
帖子
483
2
发表于 2010-8-17 09:59:58 | 只看该作者
挑衅是什么。。。仇恨值之类的东西吗。。。←孤陋寡闻的某只。。。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
90
在线时间
308 小时
注册时间
2010-8-10
帖子
794
3
发表于 2010-8-17 10:05:12 | 只看该作者
不懂,是仇恨?!
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
3 小时
注册时间
2010-6-14
帖子
65
4
 楼主| 发表于 2010-8-17 10:10:34 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
29 小时
注册时间
2010-7-5
帖子
483
5
发表于 2010-8-17 10:13:33 | 只看该作者
那样用变量的随机数不久可以了?。。。。。。
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
3 小时
注册时间
2010-6-14
帖子
65
6
 楼主| 发表于 2010-8-17 10:21:34 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
29 小时
注册时间
2010-7-5
帖子
483
7
发表于 2010-8-21 16:03:57 | 只看该作者
我想我明白LZ的意思了,收回5L的话。。。
好吧我直接发脚本上来算了,注意是天干宝典乙的
  1. # ============================================================================
  2. # 嘲讽脚本 v1.1 by 叶子
  3. # 特别鸣谢:
  4. # 柳柳 (是柳柳解决了最关键的技术问题,叶子我充其量只是个策划者和打字员)
  5. # SailCat (从SailCat的脚本中学到不少RGSS知识,只是叶子天生愚钝,还是菜鸟一个)
  6. # ......
  7. # ============================================================================
  8. #脚本用途:
  9. #实现嘲讽效果(废话)
  10. #通过一个极其简单的判断,让怪物固定攻击某一角色
  11. #区别于事件的强制行动,怪物该用技能时还是会用技能
  12. #由于判断极其简单,所以可以自己将这个判断替换Scene_Battle 4中相应内容
  13. #原理:
  14. #怪物中了特定的状态后(默认20到23号状态),
  15. #自动寻找与它有相同状态(20到23号)的角色,
  16. #找到后就以该角色为目标,找不到就照原样行动
  17. #脚本使用说明:
  18. #方法一.直接复制后插入到Main前面(方便快速,懒人最爱)
  19. #方法二.将脚本中标明的更改内容复制,替换Scene_Battle 4中相应内容(可能可以减少冲突,推荐)
  20. #1.创建4个状态,默认分别为20至23号(要改的话改相应内容...只有两处)
  21. #2.4个状态设置成两两互斥(例如20号状态在右边状态栏里的21,22,23号状态全部设置成“-”)
  22. #3.设置n个回合xx%解除(注意:只有被嘲讽者和嘲讽者同时存在这个状态时,嘲讽才生效)
  23. #4.带有嘲讽效果的特技,数据库里设定附加状态21到24号状态其中一个,带公共事件:给使用者加上同一个状


  24. #(公共事件不太好判断谁是使用者,而Sailcat的“23种战斗特效的公共事件版”的脚本就可以判断,建议使用)
  25. # ============================================================================
  26. class Scene_Battle
  27. #--------------------------------------------------------------------------
  28. # ● 生成基本行动结果
  29. #--------------------------------------------------------------------------
  30. def make_basic_action_result
  31.    # 攻击的情况下
  32.    if @active_battler.current_action.basic == 0
  33.      # 设置攻击 ID
  34.      @animation1_id = @active_battler.animation1_id
  35.      @animation2_id = @active_battler.animation2_id
  36.      # 行动方的战斗者是敌人的情况下
  37.      if @active_battler.is_a?(Game_Enemy)
  38.        if @active_battler.restriction == 3
  39.          target = $game_troop.random_target_enemy
  40.        elsif @active_battler.restriction == 2
  41.           target = $game_party.random_target_actor
  42.        else
  43.          #=====以下更改内容=========
  44.          target_got = false
  45.          for a in $game_party.actors
  46.            if (@active_battler.state?(20) and a.state?(20))\
  47.              or (@active_battler.state?(21) and a.state?(21))\
  48.              or (@active_battler.state?(22) and a.state?(22))\
  49.              or (@active_battler.state?(23) and a.state?(23))
  50.                target = a
  51.                target_got = true
  52.            end
  53.          end
  54.          unless target_got
  55.              index = @active_battler.current_action.target_index
  56.              target = $game_party.smooth_target_actor(index) #原有内容
  57.          end
  58.         #=====以上更改内容=========
  59.       end
  60.      end
  61.      # 行动方的战斗者是角色的情况下
  62.      if @active_battler.is_a?(Game_Actor)
  63.        if @active_battler.restriction == 3
  64.          target = $game_party.random_target_actor
  65.        elsif @active_battler.restriction == 2
  66.          target = $game_troop.random_target_enemy
  67.        else
  68.          index = @active_battler.current_action.target_index
  69.          target = $game_troop.smooth_target_enemy(index)
  70.        end
  71.      end
  72.      # 设置对像方的战斗者序列
  73.      @target_battlers = [target]
  74.      # 应用通常攻击效果
  75.      for target in @target_battlers
  76.        target.attack_effect(@active_battler)
  77.      end
  78.      return
  79.    end
  80.    # 防御的情况下
  81.    if @active_battler.current_action.basic == 1
  82.      # 帮助窗口显示"防御"
  83.      @help_window.set_text($data_system.words.guard, 1)
  84.      return
  85.    end
  86.    # 逃跑的情况下
  87.    if @active_battler.is_a?(Game_Enemy) and
  88.       @active_battler.current_action.basic == 2
  89.      #  帮助窗口显示"逃跑"
  90.      @help_window.set_text("逃跑", 1)
  91.      # 逃跑
  92.      @active_battler.escape
  93.      return
  94.    end
  95.    # 什么也不做的情况下
  96.    if @active_battler.current_action.basic == 3
  97.      # 清除强制行动对像的战斗者
  98.      $game_temp.forcing_battler = nil
  99.      # 移至步骤 1
  100.      @phase4_step = 1
  101.      return
  102.    end
  103. end
  104. #--------------------------------------------------------------------------
  105. # ● 设置物品或特技对像方的战斗者
  106. #     scope : 特技或者是物品的范围
  107. #--------------------------------------------------------------------------
  108. def set_target_battlers(scope)
  109.    # 行动方的战斗者是敌人的情况下
  110.    if @active_battler.is_a?(Game_Enemy)
  111.      # 效果范围分支
  112.      case scope
  113.      when 1  # 敌单体
  114.        index = @active_battler.current_action.target_index
  115.        #==以下更改内容===============
  116.          target_got = false
  117.          for a in $game_party.actors
  118.            if (@active_battler.state?(20) and a.state?(20))\
  119.              or (@active_battler.state?(21) and a.state?(21))\
  120.              or (@active_battler.state?(22) and a.state?(22))\
  121.              or (@active_battler.state?(23) and a.state?(23))
  122.                @target_battlers.push(a)
  123.                target_got = true
  124.            end
  125.          end
  126.          unless target_got
  127.          @target_battlers.push($game_party.smooth_target_actor(index)) #原有内容
  128.          end
  129.       #==以上更改内容===============
  130.      when 2  # 敌全体
  131.        for actor in $game_party.actors
  132.          if actor.exist?
  133.            @target_battlers.push(actor)
  134.          end
  135.        end
  136.      when 3  # 我方单体
  137.        index = @active_battler.current_action.target_index
  138.        @target_battlers.push($game_troop.smooth_target_enemy(index))
  139.      when 4  # 我方全体
  140.        for enemy in $game_troop.enemies
  141.          if enemy.exist?
  142.            @target_battlers.push(enemy)
  143.          end
  144.        end
  145.      when 5  # 我方单体 (HP 0)
  146.        index = @active_battler.current_action.target_index
  147.        enemy = $game_troop.enemies[index]
  148.        if enemy != nil and enemy.hp0?
  149.          @target_battlers.push(enemy)
  150.        end
  151.      when 6  # 我方全体 (HP 0)
  152.        for enemy in $game_troop.enemies
  153.          if enemy != nil and enemy.hp0?
  154.            @target_battlers.push(enemy)
  155.          end
  156.        end
  157.      when 7  # 使用者
  158.        @target_battlers.push(@active_battler)
  159.      end
  160.    end
  161.    # 行动方的战斗者是角色的情况下
  162.    if @active_battler.is_a?(Game_Actor)
  163.      # 效果范围分支
  164.      case scope
  165.      when 1  # 敌单体
  166.        index = @active_battler.current_action.target_index
  167.        @target_battlers.push($game_troop.smooth_target_enemy(index))
  168.      when 2  # 敌全体
  169.        for enemy in $game_troop.enemies
  170.          if enemy.exist?
  171.            @target_battlers.push(enemy)
  172.          end
  173.        end
  174.      when 3  # 我方单体
  175.        index = @active_battler.current_action.target_index
  176.        @target_battlers.push($game_party.smooth_target_actor(index))
  177.      when 4  # 我方全体
  178.        for actor in $game_party.actors
  179.          if actor.exist?
  180.            @target_battlers.push(actor)
  181.          end
  182.        end
  183.      when 5  # 我方单体 (HP 0)
  184.        index = @active_battler.current_action.target_index
  185.        actor = $game_party.actors[index]
  186.        if actor != nil and actor.hp0?
  187.          @target_battlers.push(actor)
  188.        end
  189.      when 6  # 我方全体 (HP 0)
  190.        for actor in $game_party.actors
  191.          if actor != nil and actor.hp0?
  192.            @target_battlers.push(actor)
  193.          end
  194.        end
  195.      when 7  # 使用者
  196.        @target_battlers.push(@active_battler)
  197.      end
  198.    end
  199. end
  200. end
复制代码

点评

等等,好像多了一个end。。。 你去看下有米有出错,是不是最后多了一个end  发表于 2010-8-21 16:04

评分

参与人数 1星屑 +200 收起 理由
六祈 + 200 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-15 19:23

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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