You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
209 lines
6.5 KiB
JavaScript
209 lines
6.5 KiB
JavaScript
//=============================================================================
|
|
// SaltedFish Plugins - Scene Equip
|
|
// SF_SceneEquip.js
|
|
//=============================================================================
|
|
"use strict";
|
|
var Imported = Imported || {};
|
|
Imported.SF_SceneEquip = true;
|
|
|
|
var SF_Plugins = SF_Plugins || {};
|
|
|
|
//=============================================================================
|
|
/*:
|
|
* @plugindesc Scene Equip
|
|
* @author SaltedFish
|
|
*
|
|
* @help
|
|
*
|
|
* This plugin does not provide plugin commands.
|
|
*/
|
|
//=============================================================================
|
|
|
|
(function () {
|
|
var SF_SceneEquip = {};
|
|
SF_Plugins.SF_SceneEquip = SF_SceneEquip;
|
|
SF_SceneEquip.version = 1.0;
|
|
|
|
//=============================================================================
|
|
// Window_BackGround
|
|
//=============================================================================
|
|
|
|
function Window_BackGround() {
|
|
this.initialize.apply(this, arguments);
|
|
}
|
|
|
|
Window_BackGround.prototype = Object.create(Window_Base.prototype);
|
|
Window_BackGround.prototype.constructor = Window_BackGround;
|
|
|
|
Window_BackGround.prototype.initialize = function () {
|
|
Window_Base.prototype.initialize.call(this, 380, 90, 440, 370);
|
|
};
|
|
|
|
//=============================================================================
|
|
// Window_EquipStatus
|
|
//=============================================================================
|
|
|
|
SF_SceneEquip.ActorStatus = {
|
|
hp: "血量",
|
|
mp: "魔力",
|
|
tp: "怒气",
|
|
mhp: "血量上限",
|
|
mmp: "魔法上限",
|
|
atk: "攻击力",
|
|
def: "防御力",
|
|
mat: "魔法攻击力",
|
|
mdf: "魔法防御力",
|
|
agi: "敏捷",
|
|
luk: "幸运",
|
|
hit: "命中率",
|
|
eva: "回避率",
|
|
cri: "会心率",
|
|
cev: "会心回避率",
|
|
mev: "魔法回避率",
|
|
mrf: "魔法反射率",
|
|
cnt: "反击率",
|
|
hrg: "生命自动回复率",
|
|
mrg: "魔法自动回复率",
|
|
trg: "TP自动回复率",
|
|
tgr: "受到攻击机率",
|
|
grd: "防御有效率",
|
|
rec: "回复效果",
|
|
pha: "药品有效率",
|
|
mcr: "魔法消耗率",
|
|
tcr: "TP消耗率",
|
|
pdr: "物理伤害率",
|
|
mdr: "魔法伤害率",
|
|
fdr: "地形伤害率",
|
|
exr: "经验值率",
|
|
};
|
|
|
|
function Window_EquipStatus() {
|
|
this.initialize.apply(this, arguments);
|
|
}
|
|
|
|
Window_EquipStatus.prototype = Object.create(Window_ScrollHelp.prototype);
|
|
Window_EquipStatus.prototype.constructor = Window_EquipStatus;
|
|
|
|
Window_EquipStatus.prototype.initialize = function () {
|
|
Window_ScrollHelp.prototype.initialize.call(this, 220, 170, 130, 250);
|
|
this._actor = null;
|
|
this._tempActor = null;
|
|
this.refresh();
|
|
};
|
|
|
|
Window_EquipStatus.prototype.setActor = function (actor) {
|
|
if (this._actor !== actor) {
|
|
this._actor = actor;
|
|
this.refresh();
|
|
}
|
|
};
|
|
|
|
Window_EquipStatus.prototype.standardFontSize = function () {
|
|
return 18;
|
|
};
|
|
|
|
Window_EquipStatus.prototype.lineHeight = function () {
|
|
return this.standardFontSize() + 8;
|
|
};
|
|
|
|
Window_EquipStatus.prototype.measureContentHeight = function () {
|
|
return this.fittingHeight(this.numVisibleRows());
|
|
};
|
|
|
|
Window_EquipStatus.prototype.measureContentWidth = function () {
|
|
var max_w = 0;
|
|
var h = this.measureContentHeight();
|
|
for (var key in SF_SceneEquip.ActorStatus) {
|
|
var w = this.drawItem(key, h + 10);
|
|
if (w > max_w) {
|
|
max_w = w;
|
|
}
|
|
}
|
|
return max_w;
|
|
};
|
|
|
|
Window_EquipStatus.prototype.numVisibleRows = function () {
|
|
return 28;
|
|
};
|
|
|
|
Window_EquipStatus.prototype.drawContent = function () {
|
|
var y = 0;
|
|
for (var key in SF_SceneEquip.ActorStatus) {
|
|
this.drawItem(key, y);
|
|
y += this.lineHeight();
|
|
}
|
|
};
|
|
|
|
Window_EquipStatus.prototype.drawRightArrow = function (x, y) {
|
|
this.changeTextColor(this.systemColor());
|
|
return this.drawTextEx("\u2192", x, y);
|
|
};
|
|
|
|
Window_EquipStatus.prototype.drawItem = function (key, y) {
|
|
var text = SF_SceneEquip.ActorStatus[key];
|
|
var x = 0;
|
|
this.changeTextColor(this.systemColor());
|
|
x += this.drawTextEx(text + ": ", x, y);
|
|
if (this._actor) {
|
|
this.resetTextColor();
|
|
x += this.drawTextEx(this._actor[key], x, y) + 10;
|
|
x += this.drawRightArrow(x, y) + 10;
|
|
}
|
|
if (this._tempActor) {
|
|
var newValue = this._tempActor[key];
|
|
var diffvalue = newValue - this._actor[key];
|
|
this.changeTextColor(this.paramchangeTextColor(diffvalue));
|
|
x += this.drawTextEx(newValue, x, y);
|
|
}
|
|
return x;
|
|
};
|
|
|
|
Window_EquipStatus.prototype.isHaveContent = function () {
|
|
return true;
|
|
};
|
|
|
|
Window_EquipStatus.prototype.windowWidth = function () {
|
|
return 440;
|
|
};
|
|
|
|
Window_EquipStatus.prototype.windowHeight = function () {
|
|
return 370;
|
|
};
|
|
|
|
//=============================================================================
|
|
// Scene_Equip
|
|
//=============================================================================
|
|
|
|
SF_SceneEquip.Scene_Equip_create = Scene_Equip.prototype.create;
|
|
Scene_Equip.prototype.create = function () {
|
|
Scene_MenuBase.prototype.create.call(this);
|
|
// this.createHelpWindow();
|
|
this.createCommandInBackground();
|
|
this.createBackgroundWindow();
|
|
//this.createCommandWindow();
|
|
this.createStatusWindow();
|
|
//this.createSlotWindow();
|
|
//this.createItemWindow();
|
|
//this.createActorWindow();
|
|
//this.createEquipWindow();
|
|
};
|
|
|
|
Scene_Equip.prototype.createCommandInBackground = function () {
|
|
this._commandBackground = new Sprite(SF_Plugins.SF_SceneMenu.commandBitmap);
|
|
this._commandBackground.x = 0;
|
|
this._commandBackground.y = 0;
|
|
this.addChild(this._commandBackground);
|
|
};
|
|
|
|
// 380,90 440,370
|
|
Scene_Equip.prototype.createBackgroundWindow = function () {
|
|
this._backgroundWindow = new Window_BackGround();
|
|
this.addChild(this._backgroundWindow);
|
|
};
|
|
|
|
Scene_Equip.prototype.createStatusWindow = function () {
|
|
this._statusWindow = new Window_EquipStatus();
|
|
this._backgroundWindow.addChild(this._statusWindow);
|
|
};
|
|
})();
|