Welcome to PGMZ! My goal is to make it easy for everyone to find and share great plugins for creating amazing games. As a plugin developer myself, I'm excited to grow this community with all of you.
AWY Motion Maker - AWY_MotionMaker.js
Plugin desc : Provides a function that allows you to create your own motions separate from the movement route.
License : MIT License
Author : あわやまたな (Awaya_Matana)
Website : https://awaya3ji.seesaa.net/
Desc page : https://awaya3ji.seesaa.net/article/500579516.html
File name : AWY_MotionMaker.js
Help of plugin :
* @target MZ * @orderAfter FesSpin * @plugindesc Provides a function that allows you to create your own motions separate from the movement route. * @author あわやまたな (Awaya_Matana) * @url https://awaya3ji.seesaa.net/article/500579516.html * @help Ver.4.2.0 * 【How to use】 * Convert "Set Movement Route" directly * under the plugin command "Set Motion" to motion. * To put it simply, it is "another movement route." * You can add movement to your character at any time you like. * * 【Specification】 * Please note that motion has different specifications from the movement route. * ・All commands are executed within one frame unless there is a wait time. * ・Proceeds even while the character is moving. * * Therefore, the basic idea is to create movement while adding wait commands. * * 【Scripts (Event)】 * this.character(characterId).isMotionPlaying() //Each Character * $gamePlayer.isMotionPlaying() //Player * //Is the motion playing? * * 【Scripts (Movement Route)】 * this.pauseMotion(); //Pause the motion. * this.replayMotion(); //Resume the motion. * this.clearMotion(); //Erase motion. * this.lockPattern(true/false/integer between 0 and 2); * //Fix the animation pattern so that it does not change arbitrarily. * While it is valid, the pattern will not be updated at all regardless * of whether there is a stepping animation or walking animation. * Enable if true or blank, disable if false. * In the case of numbers, the pattern is immediately reflected and then locked. * this.setAppDir(0/2/4/6/8); * //Change the apparent direction. * You can see its usefulness by taking a "1 Step Forward" after this script. * Current direction without input. Cancel with 0. * * 【Scripts (Motion)】 * You can use everything that can be used in "Set Movement Route". * * ※The following commands are not required, but may be useful in some cases. * //LoopStart //This is the starting point of the loop. * //LoopEnd //This is the end point of the loop. Subsequent commands will be executed only once at the end. * //Pause //Pause. It will not proceed unless restarted from the plugin command. * * Be sure to include a double slash before the command. * * @param replaceDirCommands * @text Replace Direction Commands * @desc Use the "Set Motion" turn commands as the "apparent direction". (Including "Direction Fix ON/OFF") * @type boolean * @default true * * @param loopStart * @text Loop Start Point Command * @desc Entering this value after the double slash marks the start of the loop. * @default LoopStart * * @param loopEnd * @text Loop End Point Command * @desc Entering this value after the double slash marks the end of the loop. * @default LoopEnd * * @param pause * @text Pause Command * @desc Entering this value after a double slash will cause a pause. * @default Pause * * @command setMotion * @text Set Motion * @desc Converts the movement route into motion. * * @arg characterId * @text Character ID * @desc If left blank, the movement route will be followed. * * @arg loop * @text Number of Loops * @desc If left blank, the movement route option will be followed. * Infinite loop with either 無限, infinity, or -1 * @type combo * @option infinity * * @arg speed * @text Speed * @desc Specify as a percentage. 100 is the same size. * @default 100 * * @arg script * @text Script * @desc This is a script that is always executed when the motion ends or is interrupted. * @type multiline_string * * @command clearMotion * @text Clear Motion * @desc Erase motion. * * @arg characterId * @text Chacacter ID * @desc If it is left blank, it will be the last target. * * @command pauseMotion * @text Pause Motion * @desc Pause the motion. * Motion is not deleted. * * @arg characterId * @text Chacacter ID * @desc If it is left blank, it will be the last target. * * @command replayMotion * @text Repaly Motion * @desc Resumes a paused motion. * * @arg characterId * @text Chacacter ID * @desc If it is left blank, it will be the last target. * * @command setMotionLoop * @text Set Motion Loop * @desc Override loop settings. * * @arg characterId * @text Chacacter ID * @desc If it is left blank, it will be the last target. * * @arg loop * @text Number of Loops * @desc Infinite loop with either 無限, infinity, or -1 * @type combo * @option infinity * @default 1 * * @command setMotionSpeed * @text Set Motion Speed * @desc Change playback speed. * This is the playback speed for each motion. * * @arg characterId * @text Chacacter ID * @desc If it is left blank, it will be the last target. * * @arg speed * @text Speed * @desc Specify as a percentage. 100 is the same size. * @default 100 * * @command setMotionMasterSpeed * @text Set Motion Master Speed * @desc Change master speed. * This is the playback speed common to all motions. * * @arg characterId * @text Chacacter ID * @desc If it is left blank, it will be the last target. * * @arg speed * @text Speed * @desc Specify as a percentage. 100 is the same size. * @default 100 * * @command setMotionScript * @text Set Motion Script * @desc Overwrite the script. * * @arg characterId * @text Chacacter ID * @desc If it is left blank, it will be the last target. * * @arg script * @text Script * @desc This is a script that is always executed when the motion ends or is interrupted. * @type multiline_string * * @command waitForCompletion * @text Wait for Completion * @desc Wait until the motion ends. * * @arg characterId * @text Chacacter ID * @desc If it is left blank, it will be the last target. *