Merry Christmas, everyone! 😀
Yanfly Engine Plugins is a plugin library made for RPG Maker MV, a wonderful piece of software to help you make that role playing game of your dreams. You can find out more about RPG Maker MV here.
“Harold” returns with yet another boss fight, but this time, he’s feeling extra confident! For what reason is he so confident and what kind of tricks does he have to play against our heroes?
You can grab the copy/paste code for the new Memory Shield Redux and the Memory Sword here:
The plugins needed for this effect are the Battle Engine Core, Action Sequence Pack 1, Action Sequence Pack 2, Action Sequence Pack 3, Buffs & States Core, Skill Core, and Skill Cooldowns.
For the Memory Shield Redux:
<Custom Apply Effect> // Clear all of the stored memory skills. $gameTemp._memorySkills = []; // Set the state counter to display how many memory skills are stored. user.setStateCounter(stateId, $gameTemp._memorySkills.length); </Custom Apply Effect> <Custom Select Effect> // Check if this is a skill that targets an opponent and isn't a basic attack if (this.isSkill() && !this.isAttack() && this.isForOpponent()) { // Create a list of bypassed skills. var bypassedSkills = []; // Insert the ID's of the skills that will bypass this effect. bypassedSkills.push(1, 2, 3, 4, 5, 6, 7); // Get the current action's skill ID var skillId = this.item().id; // Check if the skill isn't bypassed if (!bypassedSkills.contains(this.item().id)) { // Add the skill to the memory skill list $gameTemp._memorySkills.push(skillId); // Update the counter target.setStateCounter(stateId, $gameTemp._memorySkills.length); // Get the skill data var skill = $dataSkills[skillId]; // Create a text showing the skill has been added to the memory list var text = '<CENTER>\\c[4]\\i[' + skill.iconIndex + ']' + skill.name + '\\c[0] added to \\c[4]Memory Shield\\c[0]!'; // Set the wait time var wait = 60; // Display the text BattleManager.addText(text, wait); } } </Custom Select Effect> <Custom Deselect Effect> // Check if the effect hasn't occurred yet and that the user and target are on different teams if (!this._warpingShield && user.isActor() !== target.isActor()) { // Create a list of bypassed skills var bypassedSkills = []; // Insert the skill ID's that would bypass this effect bypassedSkills.push(1, 2, 3, 4, 5, 6, 7); // Check if this effect is a skill, not a basic attack, and that the bypassed skills list do not have this skill if (this.isSkill() && !this.isAttack() && !bypassedSkills.contains(this.item().id)) { // Mark the effect as having happened this._warpingShield = true; // This is the number of turns to apply onto the effect's cooldown list var turns = 5; // Get this skill's ID var id = this.item().id; // Add that many turns to the skill's cooldown for the attacker user.addCooldown(id, turns); } } </Custom Deselect Effect>
For the Memory Sword
<After Eval> // Get the skill list for the memory skills var skills = $gameTemp._memorySkills || []; // Check if the skill list length is greater than 0 if (skills.length > 0) { // Get the first skill in the list var skillId = skills.shift(); // Otherwise } else { // Default the skill to skill #1 var skillId = 1; } // Set this action to this skill this.setSkill(skillId); // Get the user's ally list var group = user.friendsUnit().aliveMembers(); // Get the Memory Shield Redux's state ID var stateId = 316; // Loop through each of the allies for (var i = 0; i < group.length; ++i) { // Get the currently looped member var member = group[i]; // See if the member exists and is affected by the Memory Shield Redux if (member && member.isStateAffected(stateId)) { // If it is, update the state counter for the memory skills member.setStateCounter(stateId, $gameTemp._memorySkills.length); } } </After Eval> // This is the setup action list for the effect <Setup Action> clear battle log display action immortal: targets, true perform start wait for movement cast animation wait for animation action effect clear battle log display action </Setup Action> // Clear the whole actions <Whole Action> </Whole Action> // Clear the target actions <Target Action> </Target Action>
And that’s it! That’s how you can create the Memory Shield Redux and the Memory Sword!