❤❣ღ rpg maker mv收集 ❤❣ღ
㊕rpg maker mv新功能☪

〄数据库道具上限提升 ✿自动三层级地图
☪高分辨率游戏画面 触屏控制✿
____________________________________________
多设备支持:
输出Windows exe文件、Mac App文件、安卓Apk和iOS ipa✿
Mac、android、windows☪

即使你不用懂编程☪、不用会代码,依然能制作属于自己游戏✿
————————————————
转载于插件の素材の等资源,免费下载☪
✉开发: KADOKAWA ✿ Yoji Ojima
✉发行: Degica
 

循环MV动画脚本

// ================================================ =============================

//循环动画

//通过Shaz

//

// ================================================ =============================

 

/ *:

 * @plugindesc允许动画地图上圈上

 *也可以让动画(正常或循环)低于播放/后面的字符

 * @author Shaz

 *

 * @帮帮我

 *

 *插件命令:

 * LoopAnim启动事件animid#启动循环动画上一个事件

 * LoopAnim停止事件#停止动画循环

 *

 * SetAnimLoc事件定位#设置动画的位置

 *

 *事件=号特定事件

 *事件= 0“这个”事件

 *事件= -1球员

 *事件= $ gameVariables.value(X),以得到变量x的事件ID

 *

 *位置=下面或背后 - 玩角色背后的精灵动画

 *位置=上方或前方 - 性格精灵的面前放动画

 *默认是在性格精灵的面前放动画

 * /

/*:

 * @plugindesc Allows animations on the map to loop

 * Also allows animations (normal or looping) to play below/behind characters

 * @author Shaz

 *

 * @help

 *

 * Plugin Command:

 *   LoopAnim start event animid   # Start a looping animation on an event

 *   LoopAnim stop event           # Stop animation loop

 *

 *   SetAnimLoc event location     # Set location of animation

 *

 *   event = number for specific event

 *   event = 0 for "this" event

 *   event = -1 for player

 *   event = $gameVariables.value(x) to get the event id from variable x

 *

 *   location = below or behind - play animation behind character sprite

 *   location = above or front - play animation in front of character sprite

 *              default is to play animation in front of character sprite

 */

 

(function() {

  var _Game_Interpreter_pluginCommand = Game_Interpreter.prototype.pluginCommand;

  Game_Interpreter.prototype.pluginCommand = function(command, args) {

    _Game_Interpreter_pluginCommand.call(this, command, args);

 

    if (command.toUpperCase() === 'LOOPANIM') {

      var character = this.character(eval(args[1]));

      if (character) {

        switch (args[0].toUpperCase()) {

          case 'START':

            character.loopAnimStart(args[2]);

            break;

          case 'STOP':

            character.loopAnimStop();

        }

      }

    }

 

    if (command.toUpperCase() === 'SETANIMLOC') {

      var character = this.character(eval(args[0]));

      if (character) {

        character.setAnimLoc(args[1] || 'above');

      }

    }

  }

 

  var _Game_CharacterBase_initMembers = Game_CharacterBase.prototype.initMembers;

  Game_CharacterBase.prototype.initMembers = function() {

    _Game_CharacterBase_initMembers.call(this);

    this._loopAnimId = 0;

    this._animZ = 8;

  };

 

  Game_CharacterBase.prototype.loopAnimStart = function(animId) {

    this._loopAnimId = animId;

    this.requestAnimation(animId);

  };

 

  Game_CharacterBase.prototype.loopAnimStop = function() {

    this._loopAnimId = 0;

  };

 

  Game_CharacterBase.prototype.setAnimLoc = function(location) {

    switch (location.toUpperCase()) {

      case 'BELOW':

      case 'BEHIND':

        this._animZ = 0;

        break;

      default:

        this._animZ = 8;

    }

  }

 

  Game_CharacterBase.prototype.animZ = function() {

    return this._animZ;

  }

 

  Sprite_Character.prototype.isAnimationPlaying = function() {

    if (this._animationSprites.length > 0) {

      result = true;

    } else if (this._character._loopAnimId > 0) {

      this._character.requestAnimation(this._character._loopAnimId);

      this.setupAnimation();

      this._animationSprites[this._animationSprites.length - 1].z = this._character.animZ();

      result = true;

    } else {

      result = false;

    };

    return result;

  };

})();


 
评论
 
热度(1)