|
|
/*:
|
|
|
* @plugindesc Namepop Ver 1.03 NPC名称显示
|
|
|
* @author Morpho(dongdongDJH)
|
|
|
*
|
|
|
* @help
|
|
|
* 在地图事件注释栏内填入 NAMEPOP|高度修正值|字体Size|字体颜色;
|
|
|
* 高度修正值单位为1格,不填默认为1,字体大小不填默认为18;
|
|
|
* 例:NAMEPOP|1|18|#00FF00 ; NAMEPOP||20 ;
|
|
|
* 注:一定要用‘|’分隔高度修正值和字体Size;
|
|
|
* 若要调整描边 请直接在下方代码中调整 (ps:0.8是颜色的透明度,0-1)
|
|
|
*/
|
|
|
(function() {
|
|
|
_Sprite_Character_prototype_initialize = Sprite_Character.prototype.initialize;
|
|
|
Sprite_Character.prototype.initialize = function(character) {
|
|
|
_Sprite_Character_prototype_initialize.call(this, character);
|
|
|
this._tempCharacter = character;
|
|
|
if (character instanceof Game_Event) {
|
|
|
if (character.event().note.match("NAMEPOP") != null) {
|
|
|
var notetext = character.event().note.split("|");
|
|
|
this._namepopY = Number(notetext[1]) || 1;
|
|
|
this._fontSize = Number(notetext[2]) || 18;
|
|
|
this._BYcolor = notetext[3] || "#FFFFFF";
|
|
|
this.createNamepopSet();
|
|
|
}
|
|
|
}
|
|
|
};
|
|
|
|
|
|
Sprite_Character.prototype.createNamepopSet = function() {
|
|
|
var h = this._fontSize;
|
|
|
this._namepopSprite = new Sprite();
|
|
|
this._namepopSprite.bitmap = new Bitmap(h * 10, h);
|
|
|
this._namepopSprite.bitmap.fontSize = h;
|
|
|
this._namepopSprite.bitmap.outlineColor = "rgba(0, 0, 0, 0.8)"//描边颜色
|
|
|
this._namepopSprite.bitmap.outlineWidth = 4;//字体描边
|
|
|
this._namepopSprite.bitmap.textColor = this._BYcolor;//字体颜色
|
|
|
this._namepopSprite.bitmap.drawText(this._tempCharacter.event().name, 0, 0, h * 10, h, 'center');
|
|
|
this._namepopSprite.anchor.x = 0.5;
|
|
|
this._namepopSprite.anchor.y = 1;
|
|
|
this._namepopSprite.y = this.y - this._namepopY * 48;
|
|
|
this.addChild(this._namepopSprite);
|
|
|
};
|
|
|
|
|
|
// ---- 新增跟随事件显示 ----
|
|
|
_Sprite_Character_prototype_setCharacterBitmap = Sprite_Character.prototype.setCharacterBitmap;
|
|
|
Sprite_Character.prototype.setCharacterBitmap = function() {
|
|
|
_Sprite_Character_prototype_setCharacterBitmap.call(this);
|
|
|
if (this._tempCharacter instanceof Game_Event) {
|
|
|
this._BYconditions = this._tempCharacter.findProperPageIndex();
|
|
|
if(this._BYconditions >= 0 && this._namepopSprite){
|
|
|
this._namepopSprite.visible = true;
|
|
|
}else if(this._namepopSprite){
|
|
|
this._namepopSprite.visible = false;
|
|
|
}
|
|
|
|
|
|
}
|
|
|
};
|
|
|
|
|
|
// ---- Game_Event ----
|
|
|
// -------------------------------
|
|
|
// _Game_Event_prototype_refresh = Game_Event.prototype.refresh;
|
|
|
// Game_Event.prototype.refresh = function() {
|
|
|
// _Game_Event_prototype_refresh.call(this);
|
|
|
|
|
|
// };
|
|
|
}()); |