Initial Commit
This commit is contained in:
commit
ec5c71b3ac
1712 changed files with 1767257 additions and 0 deletions
250
www/js/plugins/Archeia_MessageCodes.js
Normal file
250
www/js/plugins/Archeia_MessageCodes.js
Normal file
|
@ -0,0 +1,250 @@
|
|||
/*=============================================================================
|
||||
* Archeia - Message Codes
|
||||
* By Liquidize - htp://anima.mintkit.lol
|
||||
* Archeia_MessageCodes.js
|
||||
* Version: 1.02
|
||||
*
|
||||
* This plugin was created by Liquidize for use by Archeia and their team(s),
|
||||
* I do not request credit in any form, You are licensed to use this plugin in
|
||||
* anyway you see fit, for any number of projects,games,websites,etc,etc.
|
||||
*
|
||||
*
|
||||
*=============================================================================*/
|
||||
/*:
|
||||
* @plugindesc Plugin Description <Archeia_MessageCodes>
|
||||
* @author Liquidize
|
||||
*
|
||||
* @param Variable Set Code
|
||||
* @desc The escape code used to set a variable.
|
||||
* @default Var
|
||||
*
|
||||
* @param Variable Add Code
|
||||
* @desc The escape code used to do the addition operation on a variable.
|
||||
* @default VarA
|
||||
*
|
||||
* @param Variable Sub Code
|
||||
* @desc The escape code used to do the subtraction operation on a variable.
|
||||
* @default VarS
|
||||
*
|
||||
* @param Variable Mul Code
|
||||
* @desc The escape code used to do the multiplication operation on a variable.
|
||||
* @default VarX
|
||||
*
|
||||
* @param Variable Div Code
|
||||
* @desc The escape code used to do the division operation on a variable.
|
||||
* @default VarD
|
||||
*
|
||||
* @param Variable Mod Code
|
||||
* @desc The escape code used do modulo on a variable.
|
||||
* @default VarM
|
||||
*
|
||||
* @param Common Event Code
|
||||
* @desc The escape code used to call a common event.
|
||||
* @default Com
|
||||
*
|
||||
*
|
||||
* @help
|
||||
* This plugin provides two additional escape codes for use in messages. The
|
||||
* first being an escape code to set the value of a variable, the second being
|
||||
* an escape code to call a common event.
|
||||
*
|
||||
* ---------------------------------------------------------------------------
|
||||
*
|
||||
* To use the escape code to set a variable follow the below format:
|
||||
*
|
||||
* \ESCAPECODEHERE[VARIABLEID,VALUE]
|
||||
*
|
||||
* E.G: \V[10,10]
|
||||
*
|
||||
* The above example will set the variable with ID 10, to be the value of 10.
|
||||
* The V is used as the escape code, as thats what the default value is. You can
|
||||
* change this value by editing the Variable Code parameter.
|
||||
*
|
||||
*
|
||||
*
|
||||
* ---------------------------------------------------------------------------
|
||||
*
|
||||
* To use the escape code to call a common event, use the following:
|
||||
*
|
||||
* \ESCAPECODEHERE[COMMONEVENTID]
|
||||
*
|
||||
* E.G: \C[1]
|
||||
*
|
||||
* The above example will call the common event with ID of 1. The escape code
|
||||
* used is C because that is the value of the default escape code, you can
|
||||
* change it in the parameters.
|
||||
*
|
||||
* ============================================================================
|
||||
* Change Log
|
||||
* ============================================================================
|
||||
*
|
||||
* Version 1.02:
|
||||
* - Refactored Code
|
||||
* - Added the ability to call events while in battle.
|
||||
* - Added the other operations when setting variables (albeit buggy).
|
||||
*
|
||||
* Version 1.01a:
|
||||
* - Another potential fix for things.
|
||||
*
|
||||
* Version 1.01:
|
||||
* - Fixed an issue causing incompatibility with YEP_MessageCore.
|
||||
* - Potential fix for instant common event execution.
|
||||
*
|
||||
* Version 1.0:
|
||||
* - Finished Script!
|
||||
*
|
||||
*=============================================================================*/
|
||||
|
||||
|
||||
var Imported = Imported || {};
|
||||
var Archeia = Archeia || {};
|
||||
Archeia.MessageCodes = Archeia.MessageCodes || {};
|
||||
Archeia.Utils = Archeia.Utils || {};
|
||||
|
||||
(function ($) {
|
||||
"use strict";
|
||||
|
||||
var parameters = $plugins.filter(function (plugin) {
|
||||
return plugin.description.contains('<Archeia_MessageCodes>');
|
||||
});
|
||||
if (parameters.length === 0) {
|
||||
throw new Error("Couldn't find the parameters of Archeia_MessageCodes.");
|
||||
}
|
||||
|
||||
$.Parameters = parameters[0].parameters;
|
||||
$.Param = {};
|
||||
$.Param.variableSetCode = String($.Parameters['Variable Set Code']);
|
||||
$.Param.variableAddCode = String($.Parameters['Variable Add Code']);
|
||||
$.Param.variableSubCode = String($.Parameters['Variable Sub Code']);
|
||||
$.Param.variableMulCode = String($.Parameters['Variable Mul Code']);
|
||||
$.Param.variableDivCode = String($.Parameters['Variable Div Code']);
|
||||
$.Param.variableModCode = String($.Parameters['Variable Mod Code']);
|
||||
$.Param.commonEventCode = String($.Parameters['Common Event Code']);
|
||||
|
||||
//================================================================================
|
||||
// Window_Base
|
||||
//================================================================================
|
||||
|
||||
Window_Base.prototype.obtainEscapeParamsArray = function (textState) {
|
||||
var arr = /^\[(\d+,\d+)]/.exec(textState.text.slice(textState.index));
|
||||
if (arr) {
|
||||
textState.index += arr[0].length;
|
||||
return arr[1].split(',');
|
||||
} else {
|
||||
return '';
|
||||
}
|
||||
};
|
||||
|
||||
var Window_Message_processEscapeCharacter = Window_Message.prototype.processEscapeCharacter;
|
||||
Window_Message.prototype.processEscapeCharacter = function (code, textState) {
|
||||
if (code === $.Param.commonEventCode.toUpperCase()) {
|
||||
if ($gameParty && $gameParty.inBattle()) {
|
||||
$gameTroop.setupCommonEvent(parseInt(this.obtainEscapeParam(textState)));
|
||||
} else {
|
||||
$gameMap.setupCommonEvent(parseInt(this.obtainEscapeParam(textState)));
|
||||
}
|
||||
} else if (code === $.Param.variableSetCode.toUpperCase()) {
|
||||
this.changeVariable(this.obtainEscapeParamsArray(textState),0);
|
||||
} else if (code === $.Param.variableAddCode.toUpperCase()) {
|
||||
this.changeVariable(this.obtainEscapeParamsArray(textState),1);
|
||||
} else if (code === $.Param.variableSubCode.toUpperCase()) {
|
||||
this.changeVariable(this.obtainEscapeParamsArray(textState),2);
|
||||
} else if (code === $.Param.variableMulCode.toUpperCase()) {
|
||||
this.changeVariable(this.obtainEscapeParamsArray(textState),3);
|
||||
} else if (code === $.Param.variableDivCode.toUpperCase()) {
|
||||
this.changeVariable(this.obtainEscapeParamsArray(textState),4);
|
||||
} else if (code === $.Param.variableModCode.toUpperCase()) {
|
||||
this.changeVariable(this.obtainEscapeParamsArray(textState),5);
|
||||
} else {
|
||||
Window_Message_processEscapeCharacter.call(this, code, textState);
|
||||
}
|
||||
};
|
||||
|
||||
Window_Message.prototype.changeVariable = function (data,operation) {
|
||||
if (data) {
|
||||
var varId = parseInt(data[0]);
|
||||
try {
|
||||
var oldVal = $gameVariables.value(varId);
|
||||
var val = parseInt(data[1]);
|
||||
|
||||
switch (operation) {
|
||||
case 0:
|
||||
$gameVariables.setValue(varId,oldVal = val);
|
||||
break;
|
||||
case 1:
|
||||
$gameVariables.setValue(varId,oldVal + val);
|
||||
break;
|
||||
case 2:
|
||||
$gameVariables.setValue(varId,oldVal - val);
|
||||
break;
|
||||
case 3:
|
||||
$gameVariables.setValue(varId,oldVal * val);
|
||||
break;
|
||||
case 4:
|
||||
$gameVariables.setValue(varId,oldVal / val);
|
||||
break;
|
||||
case 5:
|
||||
$gameVariables.setValue(varId,oldVal % val);
|
||||
break;
|
||||
}
|
||||
} catch (e) {
|
||||
$gameVariables.setValue(varId,0);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
//================================================================================
|
||||
// Game_Map
|
||||
//================================================================================
|
||||
|
||||
Game_Map.prototype.setupCommonEvent = function (commonId) {
|
||||
var commonEvent = $dataCommonEvents[commonId];
|
||||
if (commonEvent) {
|
||||
var eventId = this._interpreter.isOnCurrentMap() ? this._interpreter._eventId : 0;
|
||||
this._interpreter.setupChild(commonEvent.list, eventId);
|
||||
}
|
||||
};
|
||||
|
||||
Game_Map.prototype.stopCurrentEvent = function () {
|
||||
if (this.isEventRunning()) {
|
||||
this._interpreter.terminate();
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
||||
//================================================================================
|
||||
// Game_Troop
|
||||
//================================================================================
|
||||
|
||||
|
||||
Game_Troop.prototype.setupCommonEvent = function(commonId) {
|
||||
var commonEvent = $dataCommonEvents[commonId];
|
||||
if (commonEvent) {
|
||||
var eventId = this._interpreter.isOnCurrentMap() ? this._interpreter._eventId : 0;
|
||||
this._interpreter.setupChild(commonEvent.list, eventId);
|
||||
}
|
||||
};
|
||||
|
||||
//================================================================================
|
||||
// UTILS
|
||||
//================================================================================
|
||||
|
||||
// The below is a string formatting function that gives me/js/people/anyone/stuff
|
||||
// the ability to use C#/C styled string formatting using {0},{1} for parameters.
|
||||
|
||||
Archeia.Utils.sformat = function () {
|
||||
var theString = arguments[0];
|
||||
for (var i = 1; i < arguments.length; i++) {
|
||||
var regEx = new RegExp("\\{" + (i - 1) + "\\}", "gm");
|
||||
theString = theString.replace(regEx, arguments[i]);
|
||||
}
|
||||
return theString;
|
||||
};
|
||||
|
||||
|
||||
})(Archeia.MessageCodes);
|
||||
|
||||
ArcheiaMessageCodes = Archeia.MessageCodes;
|
||||
Imported["Archeia_MessageCodes"] = 1.02;
|
Loading…
Add table
Add a link
Reference in a new issue