Project1

标题: 请教下如何能实现不同角色或职业使用不同的普通攻击 [打印本页]

作者: szqcbh    时间: 2012-3-22 21:55
标题: 请教下如何能实现不同角色或职业使用不同的普通攻击
本帖最后由 szqcbh 于 2012-3-22 22:01 编辑

        事情是这样的,因为自己的工程使用了后知后觉前辈的横版战斗脚本,然后发现只能设置不同武器的普通攻击动画和不同技能的动画,但是我想为不同角色的普通攻击设置不同的攻击动画,自己想到的两个解决方案一个是往横版战斗脚本里插入相应的内容,但是发现在技能栏普通攻击里面加备注设置的动画没有真位移,另一种方案是通过将不同角色或职业的普通攻击设置为不同的技能来实现。
        因为本人刚刚接触RM,脚本什么的勉强能在基础上进行一些小的改动,自己写实在是写不来,试过用各种关键字搜索也没发现相关的帖子,所以恳请各位前辈帮忙解决,自己的经验只有这些每天登陆得来的。感谢大家的帮助。dsu_plus_rewardpost_czw
作者: caihuax    时间: 2012-3-22 22:12
本帖最后由 caihuax 于 2012-3-22 22:35 编辑

如果是按职业ID来设置攻击动画的话应该可以这样
找到后知后觉大大的脚本的241行开始
  1. class RPG::Enemy < RPG::BaseItem
  2.   def animation1_id
  3.     return @animation1_id unless @animation1_id.nil?
  4.     if @actor.class_id == X #X为角色的职业ID
  5.       return (@animation1_id = Y) #Y为你想要的动画ID
  6.     elsif @actor.class_id == X #X为角色的职业ID,第二个分支及以后用elsif
  7.       return (@animation1_id = Y) #Y为你想要的动画ID
  8.     else
  9.       if /@a1id\[(\d+?)\]/ =~ @note
  10.         return (@animation1_id = $1.to_i)
  11.       else
  12.         return (@animation1_id = 0)
  13.       end
  14.     end
  15.   end
复制代码
后面的animation2_id和animation3_id同理
作者: szqcbh    时间: 2012-3-22 22:56
本帖最后由 szqcbh 于 2012-3-23 07:14 编辑
caihuax 发表于 2012-3-22 22:12 如果是按职业ID来设置攻击动画的话应该可以这样 找到后知后觉大大的脚本的241行开始后面的animation2_id和a ...

十分感谢你的帮助~ 我尝试了一下会报错

后来试了试把@actor.class_id改为@class_id就可以了,不过还是木有真位移……不知道有没有什么方法能给普通攻击加上真位移呢……
话说照这个思路来看把存储职业id的变量换成角色id的变量就能使不同的角色使用不同的动画了吧~
断网了,手机编辑,各种没信号ORZ……
作者: 嗨。猪头    时间: 2012-3-23 10:01
|YC11|同求。。一样的问题哈哈
作者: szqcbh    时间: 2012-3-23 14:18
本帖最后由 szqcbh 于 2012-3-23 14:18 编辑

问题基本解决了。。。
在脚本第273行开始,改为
  1. class Game_Actor < Game_Battler
  2.   #--------------------------------------------------------------------------
  3.   # ● 取得普通攻击的行动方动画 ID (新增定义)
  4.   #--------------------------------------------------------------------------
  5.   def animation1_id
  6.     if @name == "X" #X为角色的名字     
  7.       return (@animation1_id = Y) #Y为你想要的动画ID
  8.     elsif @name == "X" #X为角色的名字,第二个分支及以后用elsif
  9.       return (@animation1_id = Y) #Y为你想要的动画ID
  10.     end
  11.   end
  12. end
复制代码
原本的代码貌似是获取武器备注里的内容然后决定使用的动画。
这样改就能为不同的角色设置不同的普通攻击动画。
不过设置武器备注改动画就应该没用了。
自己尝试了下是可以的,暂时没发现什么问题。。。

作者: caihuax    时间: 2012-3-23 20:13
szqcbh 发表于 2012-3-22 22:56
十分感谢你的帮助~ 我尝试了一下会报错

后来试了试把@actor.class_id改为@class_id就可以了,不过还是 ...

多谢指正!|YC41|
不过横板的制作工程巨大啊,战斗动画要慢慢弄




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1