WhitePaper MultipleTypeSkills

Матеріал з РПГ.укр
Перейти до: навігація, пошук

WhitePaper_MultipleTypeSkills — плагін для RPG Maker MV та MZ від WhitePaper. Він дозволяє вказати декілька типів навичок для однієї навички. В такому випадку якщо буде заблокований будь-який з типів, навичка буде недоступна.

Завантажити плагін можна тут: WhitePaper_MultipleTypeSkills.js.

Використання[ ]

Щоб вказати додаткові типи навичок, потрібно в нотатці додати такий текст:

   <stype:1,2>

Замість 1,2 треба поставити номери типів навичок через кому (можна вказати стільки додаткових типів, скільки потрібно).

Ось приклад налаштування навички з двома типами: тип «Магія» (№1) задається стандартним способом, а тип №2 додається через нотатку <stype:2>:

Приклад налаштування плагіну WhitePaper MultipleTypeSkills.png

Доступні типи навичок та їх номери можна подивитися на вкладкі Типи(анг. Types, ​рос. Типы) в базі даних, в другому стовпчику:

Типи навичок в RPG Maker MZ.png

Ліцензія[ ]

Дозволяється:

  • використовувати цей плагін у будь-яких проектах;
  • редагувати/покращувати цей плагін.

Вказувати авторство бажано, але не обов'язково.

Код[ ]

//=============================================================================
// WhitePaper_MultipleTypeSkills.js
//=============================================================================
 
/*:
 * @target MV, MZ
 * @plugindesc Allows to use multiple types (stypes) for one skill.
 * @author WhitePaper
 *
 * @help
 * Notetags:
 * <stype:x,y> - additional skill types x and y
 *
 * Other info:
 * If at least one of the skill types is sealed/blocked, skill is also sealed/blocked.
 * 
 * You can:
 *  - use this plugin in any projects; 
 *  - edit/modify this plugin.
 * Credit is desirable, but isn't necessarily.
 */
/*:ru
 * @target MV, MZ
 * @plugindesc Даёт возможность использовать несколько типов для одного навыка.
 * @author WhitePaper
 *
 * @help
 * Теги:
 * <stype:x,y> - дополнительные типы навыка x и y
 *
 * Другая информация:
 * Если хотя бы один из типов навыка заблокирован, навык тоже будет заблокирован.
 * 
 * Вы можете:
 *  - использовать этот плагин в любых проектах; 
 *  - редактировать/улучшать этот плагин.
 * Указывать авторство желательно, но не обязательно.
*/
/*:uk
 * @target MV, MZ
 * @plugindesc Надає можливість використовувати кілька типів для однієї навички.
 * @author WhitePaper
 *
 * @help
 * Теги:
 * <stype:x,y> - додаткові типи навички x та y
 *
 * Інша інформація:
 * Якщо хоча б один з типів навички заблокований, навичка теж буде заблокована.
 *
 * Ви можете:
 *  - використовувати цей плагін у будь-яких проектах; 
 *  - редагувати/покращувати цей плагін.
 * Вказувати авторство бажано, але не обов'язково.
*/
 
WP_Stypes_Game_BattlerBase_meetsSkillConditions = Game_BattlerBase.prototype.meetsSkillConditions 
Game_BattlerBase.prototype.meetsSkillConditions = function(skill) {
    return WP_Stypes_Game_BattlerBase_meetsSkillConditions.call(this, skill) &&
			!this.wpStypesisAnyAdditionalSkillTypeSealed(skill);
};
 
Game_BattlerBase.prototype.wpStypesisAnyAdditionalSkillTypeSealed = function(skill){
	stypes = skill.meta.stype
	if (stypes != undefined){
		stypes = stypes.split(",")
		for (i in stypes){
			stype = parseInt(stypes[i])
			if (this.isSkillTypeSealed(stype)){
				return true;
			}
		}
	}
	return false;
}
 
WP_Stypes_Window_SkillList_includes = Window_SkillList.prototype.includes
Window_SkillList.prototype.includes = function(item) {
    return WP_Stypes_Window_SkillList_includes.call(this, item) || (item && this.wpStypesitemStypes(item));
};
 
Window_SkillList.prototype.wpStypesitemStypes = function(item){
	return (item.meta.stype && item.meta.stype.split(",").contains(this._stypeId.toString()));
}

Подібні плагіни[ ]

Якщо вам потрібно, щоб навичка була недоступною лише тоді, коли заблоковано «основний» тип, можна використати плагін DreamX MultipleSkillTypes від DreamX для RPG Maker MV та MZ. Якщо «основних» типів має бути кілька, можна використовувати ці два плагіни разом.

Посилання[ ]