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

Project1

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

[已经解决] 【XP】连击的问题

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
53 小时
注册时间
2011-11-13
帖子
67
跳转到指定楼层
1
发表于 2011-12-20 13:43:36 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
用了彩虹神剑脚本,但是这样的话一击中就全中,一miss就全miss了。。。
能不能修改一下呢?或者说有其他能用的普通攻击连击脚本?
我也试过RTAB整合版,但是脚本全部复制上之后,一轮到我攻击敌人就消失了,不知是不是冲突?
奇迹も、魔法も、あるんだよ

Lv1.梦旅人

梦石
0
星屑
50
在线时间
28 小时
注册时间
2011-1-14
帖子
262
来自 7楼
发表于 2012-1-6 21:16:44 | 只看该作者
本帖最后由 赤夜玄魔 于 2012-1-7 01:20 编辑
tosaka 发表于 2012-1-5 14:25
[@]赤夜玄魔[/@]
这个修改后的脚本命中还是要么都中,要么都miss。。

不应该啊,估计是调用RM默认的命中判定的问题吧,按理说随机数100,应该是可以的,主要看你能不能把握中间值吧,过多就都打不中,过少就打中,中间值应该会奏效吧。
你得掌握命中判定,才能有MISS和有伤害,实在是不行,我抽空写一下吧。
其实这个脚本还算好理解的,可以自己试试改下命中计算方式。

收回以上的话……
改好了……结果是我弄错了……真是不好意思……
如果再出错的话,再PM我吧,理解这个脚本的伤害计算方式,把我给弄晕了,由于我的脚本是从柳大的游戏中提取后更改,并非原来的彩虹脚本,你修改时可能会有出错的现象,如果有错的话,你就发工程给我吧。
  1.   
  2. 首先在class Game_Temp
  3. 中的
  4. def initialize
  5. 下面添加:
  6. $ynmiss = 0
  7. $missbug = {}
  8. 然后,把彩虹脚本中的这一块
  9. def update_animation
  10. 整块改成: def update_animation
  11.      if @_animation_duration > 0
  12.        frame_index = @_animation.frame_max - @_animation_duration
  13.        cell_data = @_animation.frames[frame_index].cell_data
  14.        position = @_animation.position
  15.        animation_set_sprites(@_animation_sprites, cell_data, position)
  16.        #=======================================
  17.        # 修改:弹出伤害,权重计算
  18.       #=======================================
  19.        for timing in @_animation.timings
  20.          if timing.frame == frame_index
  21.            t = 1.0 * animation_process_timing(timing, @_animation_hit)          #p t,"当前权重", @all_quanzhong,"总权重"
  22.            if @battler_damage.is_a?(Numeric) and t != 0
  23.              t *= @battler_damage
  24.              t /= @all_quanzhong
  25.              #p t,"当前伤害",@battler_damage,"总伤害"
  26.              t = t.to_i
  27.              #p t,@battler_damage,@all_quanzhong
  28.              lsb = $missbug
  29.               if frame_index == @_last_frame and lsb.hp> 0# 最后一次闪光的话,伤害修正
  30.                 lsb.hp += @damagemissbug - @_total_damage - t
  31.                 #★这里得说一下,RMXP原始的伤害经过这个脚本的计算后,会因为闪光的次数减少,每一次减少1点伤害。
  32.                 #★这里只是为了显示的伤害和实际的伤害一致而设定的。
  33.                 #p "最后闪光",lsb.hp
  34.                 #lsc = @_total_damage+t;p "闪避后的原始伤害",@damagemissbug,"实际上伤害",lsc
  35.               end
  36.              lsa = (rand(100) > $ynmiss)
  37.               if lsa == true and lsb.hp> 0
  38.                 #if @battler.is_a?(Game_Actor)
  39.                 #lsb = $missbug
  40.                 #else
  41.                 #lsb = $missbug
  42.                 #end
  43.                 lsb.hp += t
  44.                 @damagemissbug -= t #★减去闪避掉的伤害
  45.                 #p "我闪开了",lsb.hp
  46.                 damage("Miss",false)
  47.               else
  48.                 damage(t,@battler_critical)
  49.               end
  50.            # 防止重复播放miss
  51.            elsif !@battler_damage.is_a?(Numeric) and timing.flash_scope != 0
  52.              damage(@battler_damage,@battler_critical)
  53.            end
  54.          end
  55.          lsa = false
  56.        end
  57.      else
  58.        dispose_animation
  59.      end
  60.    end
复制代码
找到
  1. def animation(animation, hit, battler_damage="", battler_critical=false)
  2. 在@battler_damage = battler_damage下面添加:
  3. @damagemissbug = battler_damage


  4. 全局搜索
  5. animation(animation, @battler.animation_hit,@battler.damage, @battler.critical)
  6. 前面添加
  7. $missbug = @battler

复制代码

  1. 全局搜索:
  2. if hit_result == true
  3. 在所有这个前面添加:
  4. hit_result = true
复制代码

  1. 搜索hit_result = (rand(100) < attacker.hit)
  2. 改成$ynmiss = attacker.hit
  3. 搜索if skill.atk_f > 0
  4. 将离这个最近的这一句
  5. hit_result = (rand(100) < hit)
  6. 改成:
  7. $ynmiss = hit

  8. 找到
  9. hit_result = (rand(100) < item.hit)
  10. 也改成
  11. $ynmiss = hit
复制代码
效果图

评分

参与人数 1星屑 +200 梦石 +2 收起 理由
各种压力的猫君 + 200 + 2 认可答案

查看全部评分

话说,熟人变少了,还是马甲变多了?
我将乘风而去,万丈深渊。新生命阻止我的冲动……好吧,我再活一年,但是……这是最后的一年……
……强烈支持国产游戏……

遵冥冥之意,然果有奇效!
我好像玩够了,该走了……

强烈反对国产脑残动画片在电视台播出……
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
28 小时
注册时间
2011-1-14
帖子
262
2
发表于 2011-12-26 20:53:02 | 只看该作者
本帖最后由 赤夜玄魔 于 2012-1-7 01:13 编辑

节约资源,脚本请看7楼。

点评

谢谢了。。。 我还是改用RTAB吧,貌似出问题是因为战斗背景。。。 不过还是感谢您的回答。  发表于 2011-12-30 12:58
话说,熟人变少了,还是马甲变多了?
我将乘风而去,万丈深渊。新生命阻止我的冲动……好吧,我再活一年,但是……这是最后的一年……
……强烈支持国产游戏……

遵冥冥之意,然果有奇效!
我好像玩够了,该走了……

强烈反对国产脑残动画片在电视台播出……
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
28 小时
注册时间
2011-1-14
帖子
262
3
发表于 2011-12-26 20:58:25 | 只看该作者
本帖最后由 赤夜玄魔 于 2012-1-7 01:13 编辑

请看7楼。
话说,熟人变少了,还是马甲变多了?
我将乘风而去,万丈深渊。新生命阻止我的冲动……好吧,我再活一年,但是……这是最后的一年……
……强烈支持国产游戏……

遵冥冥之意,然果有奇效!
我好像玩够了,该走了……

强烈反对国产脑残动画片在电视台播出……
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
17 小时
注册时间
2011-3-24
帖子
9
4
发表于 2011-12-30 12:08:11 | 只看该作者
这个还是没用啊。。没法分开判定的说
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
17 小时
注册时间
2011-3-24
帖子
9
5
发表于 2011-12-30 14:13:03 | 只看该作者
赤夜玄魔 发表于 2011-12-26 20:58
还真漏了……
特技那边的命中判定中还有一个这个 hit_result = (rand(100) < hit)

求修改~谢谢了

点评

什么?  发表于 2011-12-31 15:27
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
17 小时
注册时间
2011-3-24
帖子
9
6
发表于 2012-1-5 14:25:23 | 只看该作者
[@]赤夜玄魔[/@]
这个修改后的脚本命中还是要么都中,要么都miss。。
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-5-4 02:21

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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