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

Project1

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

[有事请教] 请问让技能动画大小根据敌人图像大小而改变的方法

[复制链接]

Lv3.寻梦者

梦石
0
星屑
3657
在线时间
1133 小时
注册时间
2017-4-6
帖子
278

开拓者

跳转到指定楼层
1
发表于 2021-10-24 15:49:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
比如我增加了一个保护盾的持续动画,如果该状态应用到角色身上动画大小刚刚好,应用到敌人身上就太小了,请问有什么插件可以解决这一问题吗?

Lv4.逐梦者

梦石
0
星屑
5672
在线时间
602 小时
注册时间
2020-2-20
帖子
223
2
发表于 2021-10-24 16:17:54 | 只看该作者
给他单独做一个技能……
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2866
在线时间
446 小时
注册时间
2016-9-26
帖子
1223
3
发表于 2021-10-24 16:20:14 | 只看该作者
把敌人做得跟我方角色一样大
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3053
在线时间
318 小时
注册时间
2015-4-30
帖子
92
4
发表于 2021-10-28 20:52:19 | 只看该作者
仅供参考,不支持战斗画面以外的场景使用。

JAVASCRIPT 代码复制下载
  1. //        RMMV_AnimationScaling_v1_6_2.js
  2.  
  3. /*:
  4. @--- 目录 ---
  5. @param 缩放比例
  6.  
  7. @--- 参数 ---
  8. @param scaling
  9. @parent 缩放比例
  10. @default 25
  11. @desc 调整动画效果在游戏中的贴图比例,大小默认为原图的 25%
  12.  
  13. @--- 说明 ---
  14. @help
  15. 这家伙很懒,什么都不想说。
  16.  
  17. */
  18.  
  19. var MV = MV || {};
  20. var pm = PluginManager.parameters('RMMV_AnimationScaling_v1_6_2');
  21. MV.scaling = Number(pm.scaling);
  22.  
  23. // 自定义函数:判断动图附身的目标是否为角色单位
  24. Sprite_Animation.prototype.isActor = function(target) {
  25.         var result = [];
  26.         result[0] = target.constructor.name;
  27.         result[1] = target.parent.constructor.name;
  28.         result[2] = 'Sprite_Enemy';
  29.         result[3] = 'Sprite_Actor';
  30.         return result[0] === result[2] ? false : result[1] === result[3];
  31. };
  32.  
  33. // 原脚本函数: 更新动画帧
  34. Sprite_Animation.prototype.updateCellSprite = function(sprite, cell) {
  35.     var pattern = cell[0];
  36.     if (pattern >= 0) {
  37.         var sx = pattern % 5 * 192;
  38.         var sy = Math.floor(pattern % 100 / 5) * 192;
  39.         var mirror = this._mirror;
  40.                 var scale = this.isActor(this._target)? MV.scaling/100 : 1;        //         <<<        插入参数:如果动图目标是角色单位就缩小比列,否则还原比列
  41.         sprite.bitmap = pattern < 100 ? this._bitmap1 : this._bitmap2;
  42.         sprite.setFrame(sx, sy, 192, 192);
  43.         sprite.x = cell[1];
  44.  
  45.                 // sprite.y = cell[2];                                                                                                                // 原脚本
  46.                 sprite.y = cell[2] * scale;                                                                                                //         <<<        修改
  47.         sprite.rotation = cell[4] * Math.PI / 180;
  48.  
  49.                 // sprite.scale.x = cell[3] / 100;                                                                        // 原脚本
  50.                 sprite.scale.x = cell[3] * scale/ 100;                                                       //         <<<        修改
  51.         if(cell[5]){
  52.             sprite.scale.x *= -1;
  53.         }
  54.         if(mirror){
  55.             sprite.x *= -1;
  56.             sprite.rotation *= -1;
  57.             sprite.scale.x *= -1;
  58.         }       
  59.                 // sprite.scale.y = cell[3] / 100;                                                                        // 原脚本
  60.                 sprite.scale.y = cell[3] * scale/ 100;                                                        //         <<<        修改
  61.         sprite.opacity = cell[6];
  62.         sprite.blendMode = cell[7];
  63.         sprite.visible = true;
  64.     } else {
  65.         sprite.visible = false;
  66.     }
  67. };

回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-18 14:00

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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