663 lines
21 KiB
JavaScript
663 lines
21 KiB
JavaScript
// ----------------------------------------------------------------------------
|
|
// OMORI Minigame - Pet Rocks
|
|
//-----------------------------------------------------------------------------
|
|
// Rock Template
|
|
//-----------------------------------------------------------------------------
|
|
function Rock() {
|
|
this.initialize.apply(this, arguments);
|
|
}
|
|
|
|
Rock.prototype = Object.create(Sprite_Base.prototype);
|
|
Rock.prototype.construstor = Rock;
|
|
|
|
Rock.prototype.initialize = function(name) {
|
|
Sprite_Base.prototype.initialize.call(this);
|
|
// Defaults
|
|
this.name = "ROCK-" + name;
|
|
this.bitmap = ImageManager.loadPicture("ROCK-" + name);
|
|
this.hp = 6;
|
|
this.frequency = [33, 33, 33];
|
|
this.options = ["rock", "paper", "scissors"];
|
|
this.setSprite(false);
|
|
this.setupRock(name);
|
|
}
|
|
|
|
Rock.prototype.setupRock = function(name) {
|
|
switch (name) {
|
|
case "Jash":
|
|
this.hp = 3;
|
|
this.frequency = [0, 0, 0];
|
|
break;
|
|
case "TomatoGirl":
|
|
this.hp = 3;
|
|
this.frequency = [60, 40, 0];
|
|
break;
|
|
case "RoseLad":
|
|
this.hp = 3;
|
|
this.frequency = [0, 60, 40];
|
|
break;
|
|
case "TheMuncherKing":
|
|
this.hp = 3;
|
|
this.frequency = [40, 0, 60];
|
|
break;
|
|
case "PapaChip":
|
|
this.hp = 3;
|
|
this.frequency = [50, 25, 25];
|
|
break;
|
|
case "Bunny":
|
|
this.hp = 3;
|
|
this.frequency = [25, 50, 25];
|
|
break;
|
|
case "SaucyK":
|
|
this.hp = 6;
|
|
this.frequency = [0, 0, 100];
|
|
break;
|
|
case "Pluto":
|
|
this.hp = 6;
|
|
this.frequency = [100, 0, 0];
|
|
break;
|
|
case "LilG":
|
|
this.hp = 4;
|
|
this.frequency = [33, 33, 33];
|
|
break;
|
|
case "P'terry":
|
|
this.hp = 5;
|
|
this.frequency = [25, 25, 50];
|
|
break;
|
|
case "CoolSNake":
|
|
this.hp = 5;
|
|
this.frequency = [25, 50, 25];
|
|
break;
|
|
case "Ocotaco":
|
|
this.hp = 5;
|
|
this.frequency = [50, 25, 25];
|
|
break;
|
|
case "OneWingAsh":
|
|
this.hp = 9;
|
|
this.frequency = [33, 33, 33];
|
|
break;
|
|
}
|
|
}
|
|
|
|
Rock.prototype.setSprite = function(attacking) {
|
|
var pw = 128;
|
|
var ph = 128;
|
|
if (attacking) {
|
|
var sx = 1 * pw;
|
|
var sy = 0;
|
|
this.setFrame(sx, sy, pw, ph);
|
|
} else {
|
|
var sx = 0 * pw;
|
|
var sy = 0;
|
|
this.setFrame(sx, sy, pw, ph);
|
|
}
|
|
}
|
|
|
|
Rock.prototype.flash = function() {
|
|
this.flashing = 40;
|
|
}
|
|
|
|
Rock.prototype.update = function() {
|
|
if(this.flashing > 0) {
|
|
this.flashing --;
|
|
if (this.flashing % 5 === 0) this.visible = this.visible ? false : true;
|
|
if (this.flashing <= 0) this.visible = true;
|
|
}
|
|
}
|
|
|
|
function Rock_Result() {
|
|
this.initialize.apply(this, arguments);
|
|
}
|
|
|
|
Rock_Result.prototype = Object.create(Sprite_Base.prototype);
|
|
Rock_Result.prototype.construstor = Rock_Result;
|
|
|
|
Rock_Result.prototype.initialize = function (x, y) {
|
|
Sprite_Base.prototype.initialize.call(this);
|
|
this.visible = false;
|
|
this.bitmap = ImageManager.loadPicture('ROCK-Animation');
|
|
this.x = x; this.y = y;
|
|
}
|
|
|
|
Rock_Result.prototype.setSprite = function (result, id) {
|
|
var pw = 64;
|
|
var ph = 64;
|
|
if (result) {
|
|
var sx = id * pw;
|
|
if (result === "defend") var sy = 0;
|
|
if (result === "hit") var sy = 1 * ph;
|
|
if (result === "draw") var sy = 2 * ph;
|
|
this.setFrame(sx, sy, pw, ph);
|
|
this.visible = true;
|
|
}
|
|
}
|
|
|
|
//=============================================================================
|
|
// Gameplay
|
|
//=============================================================================
|
|
function Scene_PetRocks() {
|
|
this.initialize.apply(this, arguments);
|
|
}
|
|
Scene_PetRocks.prototype = Object.create(Scene_Base.prototype);
|
|
Scene_PetRocks.prototype.constructor = Scene_MenuBase;
|
|
|
|
Scene_PetRocks.prototype.initialize = function () {
|
|
Scene_Base.prototype.initialize.call(this);
|
|
this.startFadeIn(this.fadeSpeed(), false);
|
|
ImageManager.loadAtlas("MN_PetRocks");
|
|
ImageManager.loadPicture("Sequence/ROCK-Intro_01");
|
|
ImageManager.loadPicture("Sequence/ROCK-Intro_02");
|
|
ImageManager.loadPicture("Sequence/ROCK-Intro_03");
|
|
ImageManager.loadPicture("Sequence/ROCK-Intro_04");
|
|
ImageManager.loadPicture("Sequence/ROCK-Intro_05");
|
|
ImageManager.loadPicture("Sequence/ROCK-Intro_06");
|
|
ImageManager.loadPicture("Sequence/ROCK-Intro_07");
|
|
|
|
this._titleShowing = true;
|
|
this._gameEndTimer = 0;
|
|
this._onStart = false;
|
|
}
|
|
|
|
Scene_PetRocks.prototype.create = function() {
|
|
Scene_Base.prototype.create.call(this);
|
|
this.mainImage = new Sprite();
|
|
this.mainImage.bitmap = ImageManager.loadPicture('ROCK-Background');
|
|
this.addChild(this.mainImage);
|
|
|
|
this.startGame();
|
|
}
|
|
|
|
Scene_PetRocks.prototype.startGame = function(){
|
|
var bgm = {
|
|
name: "minigame_jash_title",
|
|
volume: 100,
|
|
pitch: 100,
|
|
pan: 0
|
|
};
|
|
AudioManager.playBgm(bgm);
|
|
|
|
this._player = new Rock("Jash");
|
|
this.addChild(this._player);
|
|
this._player.x = 160;
|
|
this._player.y = 176;
|
|
this._player.currentCombo = 1;
|
|
|
|
this._opponent = new Rock($gameVariables.value(824));
|
|
this.addChild(this._opponent);
|
|
this._opponent.x = 640 - 160 - 128;
|
|
this._opponent.y = 176;
|
|
this._opponent.currentCombo = 1;
|
|
|
|
this._options = new Window_PetRockOptions();
|
|
this._options.setHandler('rock', this.onChoice.bind(this, "rock"));
|
|
this._options.setHandler('paper', this.onChoice.bind(this, "paper"));
|
|
this._options.setHandler('scissors', this.onChoice.bind(this, "scissors"));
|
|
this.addChild(this._options);
|
|
this._playerHearts = [];
|
|
for (var i = 0; i < this._player.hp; i++) {
|
|
var sprite = new Sprite();
|
|
sprite.bitmap = ImageManager.loadPicture('ROCK-Heart');
|
|
sprite.id = i;
|
|
sprite.x = 174 + (i % 3 * 32);
|
|
sprite.y = 106;
|
|
this._playerHearts.push(sprite);
|
|
this.addChild(sprite);
|
|
}
|
|
this._playerHearts.reverse();
|
|
|
|
this._opponentHearts = [];
|
|
for (var i = 0; i < this._opponent.hp; i++) {
|
|
var sprite = new Sprite();
|
|
sprite.bitmap = ImageManager.loadPicture('ROCK-Heart');
|
|
sprite.x = 382 + (i % 3 * 32);
|
|
sprite.id = i;
|
|
if (i > 5) {
|
|
sprite.y = 106 + 28 + 28;
|
|
} else if (i > 2) {
|
|
sprite.y = 106 + 28;
|
|
} else {
|
|
sprite.y = 106;
|
|
}
|
|
|
|
this._opponentHearts.push(sprite);
|
|
this.addChild(sprite);
|
|
}
|
|
this._opponentHearts.reverse();
|
|
|
|
this._comboCounter = new Sprite();
|
|
this._comboCounter.bitmap = ImageManager.loadPicture("ROCK-ComboCounter");
|
|
this._comboCounter.x = 320 - 37;
|
|
this._comboCounter.y = 92;
|
|
this.addChild(this._comboCounter);
|
|
|
|
this._comboNumber = new Sprite();
|
|
this._comboNumber.bitmap = ImageManager.loadPicture("ROCK-Combo1");
|
|
this._comboNumber.x = 320;
|
|
this._comboNumber.y = 114;
|
|
this.addChild(this._comboNumber);
|
|
}
|
|
|
|
Scene_PetRocks.prototype.onChoice = function(choice) {
|
|
if (!this._onStart) return;
|
|
SoundManager.playOk();
|
|
this._options.deactivate();
|
|
this._optionPressed = 20;
|
|
this._options.redrawCurrentItem();
|
|
|
|
this._playerChoice = choice;
|
|
this._opponentChoice = this.getOpponentChoice(this._opponent);
|
|
|
|
this._playerIcon = new Sprite();
|
|
this._playerIcon.bitmap = ImageManager.loadPicture("ROCK-OptionsSheet");
|
|
this._playerIcon.x = 320 - 41;
|
|
this._playerIcon.y = 240 - 48;
|
|
|
|
this._opponentIcon = new Sprite();
|
|
this._opponentIcon.bitmap = ImageManager.loadPicture("ROCK-OptionsSheet");
|
|
this._opponentIcon.x = 320 + 41;
|
|
this._opponentIcon.y = 240;
|
|
this._opponentIcon.scaleX = -1;
|
|
|
|
this._sfxDelay = 240;
|
|
}
|
|
|
|
Scene_PetRocks.prototype.displayDecision = function() {
|
|
// Check Who Won + Display Result
|
|
if (this._playerChoice === "rock") {
|
|
var sx = 2 * 82;
|
|
if (this._opponentChoice === "rock") {
|
|
// TIE
|
|
this._rockResult = ["draw", "draw"];
|
|
var ox = 2 * 82;
|
|
} else if (this._opponentChoice === "paper") {
|
|
// LOSE
|
|
this._rockResult = ["hit", "defend"];
|
|
var ox = 1 * 82;
|
|
} else {
|
|
// WIN
|
|
this._rockResult = ["defend", "hit"];
|
|
var ox = 0 * 82;
|
|
}
|
|
}
|
|
if (this._playerChoice === "paper") {
|
|
var sx = 1 * 82;
|
|
if (this._opponentChoice === "paper") {
|
|
// TIE
|
|
this._rockResult = ["draw", "draw"];
|
|
var ox = 1 * 82;
|
|
} else if (this._opponentChoice === "scissors") {
|
|
// LOSE
|
|
this._rockResult = ["hit", "defend"];
|
|
var ox = 0 * 82;
|
|
} else {
|
|
// WIN
|
|
this._rockResult = ["defend", "hit"];
|
|
var ox = 2 * 82;
|
|
}
|
|
}
|
|
if (this._playerChoice === "scissors") {
|
|
var sx = 0 * 82;
|
|
if (this._opponentChoice === "scissors") {
|
|
// TIE
|
|
this._rockResult = ["draw", "draw"];
|
|
var ox = 0 * 82;
|
|
} else if (this._opponentChoice === "rock") {
|
|
// LOSE
|
|
this._rockResult = ["hit", "defend"];
|
|
var ox = 2 * 82;
|
|
} else {
|
|
// WIN
|
|
this._rockResult = ["defend", "hit"];
|
|
var ox = 1 * 82;
|
|
}
|
|
}
|
|
|
|
this._playerIcon.setFrame(sx, 0, 82, 44);
|
|
this.addChild(this._playerIcon);
|
|
this._opponentIcon.setFrame(ox, 0, 82, 44);
|
|
this.addChild(this._opponentIcon);
|
|
|
|
this._playerIcon.visible = true;
|
|
this._opponentIcon.visible = true;
|
|
|
|
this._resultsShowing = 75;
|
|
}
|
|
|
|
Scene_PetRocks.prototype.displayResults = function() {
|
|
if (this._rockResult[0] === "hit") {
|
|
var se = {
|
|
name: "mini_coj_hurt",
|
|
volume: 100,
|
|
pitch: 100,
|
|
pan: 0
|
|
};
|
|
AudioManager.playSe(se);
|
|
this._opponent.setSprite(true);
|
|
} else if (this._rockResult[0] === "defend") {
|
|
var se = {
|
|
name: "mini_coj_hit",
|
|
volume: 100,
|
|
pitch: 100,
|
|
pan: 0
|
|
};
|
|
AudioManager.playSe(se);
|
|
this._player.setSprite(true);
|
|
} else {
|
|
var se = {
|
|
name: "mini_coj_draw",
|
|
volume: 100,
|
|
pitch: 100,
|
|
pan: 0
|
|
};
|
|
AudioManager.playSe(se);
|
|
}
|
|
// Display Graphical Animations
|
|
this._displayingAnimations = true;
|
|
this._timer = 15;
|
|
var x = 160 + 32;
|
|
var y = 174 + 32;
|
|
this._resultAnimation = new Rock_Result(x, y);
|
|
this.addChild(this._resultAnimation);
|
|
|
|
var x = 640 - 160 - 128 + 32;
|
|
var y = 174 + 32;
|
|
this._resultAnimationOpp = new Rock_Result(x, y);
|
|
this.addChild(this._resultAnimationOpp);
|
|
}
|
|
|
|
Scene_PetRocks.prototype.getOpponentChoice = function(opponent) {
|
|
var randomNum = Math.floor(Math.random() * 100);
|
|
var weightAddition = 0;
|
|
for (var i = 0; i < opponent.frequency.length; i++) {
|
|
weightAddition += opponent.frequency[i];
|
|
if (randomNum < weightAddition){
|
|
this._opponentChoice = opponent.options[i];
|
|
return opponent.options[i];
|
|
}
|
|
}
|
|
}
|
|
|
|
Scene_PetRocks.prototype.update = function() {
|
|
Scene_Base.prototype.update.call(this);
|
|
// Are you ready to clash animation
|
|
if (this._titleShowing) {
|
|
if (!this._titleSprite) {
|
|
this._titleSprite = new Sprite();
|
|
this._titleSprite.bitmap = ImageManager.loadPicture("Sequence/ROCK-Intro_01");
|
|
this.addChild(this._titleSprite);
|
|
this._titleAnimationTimer = 300;
|
|
this._titleSpriteID = 1;
|
|
this._options.deactivate();
|
|
}
|
|
if (this._titleSprite) {
|
|
if (this._titleAnimationTimer % (this._titleSpriteID >= 6 ? 10 : 40) === 0) {
|
|
this._titleSpriteID += 1;
|
|
if(this._titleSpriteID > 7) {
|
|
this._titleSpriteID = 6;
|
|
}
|
|
this._titleSprite.bitmap = ImageManager.loadPicture("Sequence/ROCK-Intro_" + (this._titleSpriteID > 9 ? this._titleSpriteID : "0" + this._titleSpriteID));
|
|
}
|
|
this._titleAnimationTimer--;
|
|
if (this._titleAnimationTimer <= 0) {
|
|
this._titleShowing = false;
|
|
this.removeChild(this._titleSprite);
|
|
this._options.activate();
|
|
var townsPeople = ["ROCK-TomatoGirl", "ROCK-RoseLad", "ROCK-TheMuncherKing", "ROCK-PapaChip", "ROCK-Bunny", "ROCK-SaucyK", "ROCK-Pluto"];
|
|
var elite = ["ROCK-LilG", "ROCK-P'terry", "ROCK-CoolSNake", "ROCK-Ocotaco"];
|
|
var champ = ["ROCK-OneWingAsh"];
|
|
if (townsPeople.contains(this._opponent.name)) var name = "minigame_jash1";
|
|
else if (elite.contains(this._opponent.name)) var name = "minigame_jash2";
|
|
else if (champ.contains(this._opponent.name)) var name = "minigame_jash3"
|
|
var bgm = {
|
|
name: name,
|
|
volume: 100,
|
|
pitch: 100,
|
|
pan: 0
|
|
};
|
|
AudioManager.playBgm(bgm);
|
|
this._onStart = true;
|
|
}
|
|
}
|
|
return;
|
|
}
|
|
|
|
if (this._sfxDelay > 0) {
|
|
this._sfxDelay--;
|
|
if (this._sfxDelay === 180) {
|
|
var se = {
|
|
name: "mini_coj_windup",
|
|
volume: 100,
|
|
pitch: 100,
|
|
pan: 0
|
|
};
|
|
AudioManager.playSe(se);
|
|
}
|
|
if (this._sfxDelay === 120) {
|
|
var se = {
|
|
name: "mini_coj_windup",
|
|
volume: 100,
|
|
pitch: 100,
|
|
pan: 0
|
|
};
|
|
AudioManager.playSe(se);
|
|
}
|
|
if (this._sfxDelay === 60) {
|
|
var se = {
|
|
name: "mini_coj_windup",
|
|
volume: 100,
|
|
pitch: 100,
|
|
pan: 0
|
|
};
|
|
AudioManager.playSe(se);
|
|
}
|
|
if (this._sfxDelay <= 0) {
|
|
this.displayDecision();
|
|
}
|
|
}
|
|
|
|
if (this._resultsShowing > 0) {
|
|
this._resultsShowing --;
|
|
if (this._resultsShowing <= 0) {
|
|
this.displayResults();
|
|
}
|
|
}
|
|
|
|
if (this._optionPressed > 0) {
|
|
this._optionPressed--;
|
|
if (this._optionPressed <= 0) {
|
|
this._options.redrawCurrentItem();
|
|
}
|
|
}
|
|
|
|
// Show result animation of the clash
|
|
if (this._displayingAnimations || this._timer > 0) {
|
|
this._timer--;
|
|
if (this._timer > 10 && this._timer < 15) {
|
|
if (this._rockResult[0] ==="hit") this._player.flash();
|
|
else if (this._rockResult[0] === "defend") this._opponent.flash();
|
|
this._resultAnimation.setSprite(this._rockResult[0], 0);
|
|
this._resultAnimationOpp.setSprite(this._rockResult[1], 0);
|
|
}
|
|
if (this._timer > 5 && this._timer < 10) {
|
|
this._resultAnimation.setSprite(this._rockResult[0], 1);
|
|
this._resultAnimationOpp.setSprite(this._rockResult[1], 1);
|
|
}
|
|
if (this._timer < 5) {
|
|
this._resultAnimation.setSprite(this._rockResult[0], 2);
|
|
this._resultAnimationOpp.setSprite(this._rockResult[1], 2);
|
|
}
|
|
|
|
if (this._timer <= 0) {
|
|
if (this._rockResult[0] === "draw") { // TIE
|
|
this._opponent.currentCombo = 1;
|
|
this._player.currentCombo = 1;
|
|
}
|
|
if (this._rockResult[0] === "defend") { // WIN
|
|
var damage = 1 * this._player.currentCombo;
|
|
this.removeHearts("opponent", damage);
|
|
this._opponent.hp -= damage;
|
|
this._opponent.currentCombo = 1;
|
|
this._player.currentCombo += 1;
|
|
if (this._player.currentCombo > 3) this._player.currentCombo = 3;
|
|
}
|
|
if (this._rockResult[0] === "hit") { // LOSE
|
|
var damage = 1 * this._opponent.currentCombo;
|
|
this.removeHearts("player", damage);
|
|
this._player.hp -= damage;
|
|
this._player.currentCombo = 1;
|
|
this._opponent.currentCombo += 1;
|
|
if (this._opponent.currentCombo > 3) this._opponent.currentCombo = 3;
|
|
|
|
}
|
|
this._displayingAnimations = false;
|
|
this.removeChild(this._resultAnimation);
|
|
this.removeChild(this._resultAnimationOpp);
|
|
this._player.setSprite(false);
|
|
this._opponent.setSprite(false);
|
|
|
|
this.removeChild(this._playerIcon);
|
|
this.removeChild(this._opponentIcon);
|
|
|
|
// Start Next Turn
|
|
this._nextTurnDelay = 80;
|
|
this.checkWinConditions();
|
|
}
|
|
}
|
|
|
|
if (this._nextTurnDelay > 0) {
|
|
this._nextTurnDelay--;
|
|
if (this._nextTurnDelay <= 0) {
|
|
if (this._gameEndTimer <= 0) {
|
|
this._options.activate();
|
|
this._comboNumber.bitmap = ImageManager.loadPicture("ROCK-Combo" + (this._player.currentCombo > 0 ? this._player.currentCombo : 1));
|
|
}
|
|
}
|
|
}
|
|
// Game over
|
|
if (this._gameEndTimer > 0) {
|
|
this._gameEndTimer--;
|
|
if (this._gameEndTimer === 120) {
|
|
if ($gameVariables.value(825) === "opponent") {
|
|
var se = {
|
|
name: "mini_coj_lose",
|
|
volume: 100,
|
|
pitch: 100,
|
|
pan: 0
|
|
};
|
|
AudioManager.playSe(se);
|
|
} else {
|
|
var se = {
|
|
name: "mini_coj_win",
|
|
volume: 100,
|
|
pitch: 100,
|
|
pan: 0
|
|
};
|
|
AudioManager.playSe(se);
|
|
}
|
|
}
|
|
if (this._gameEndTimer <= 0) {
|
|
|
|
for (var i = 0 ;i < this.children.length; i++) {
|
|
this.children[i].parent.removeChild(this.children[i]);
|
|
}
|
|
this.children = [];
|
|
this.popScene();
|
|
AudioManager.stopBgm();
|
|
}
|
|
return;
|
|
}
|
|
}
|
|
|
|
Scene_PetRocks.prototype.removeHearts = function(rock, damage) {
|
|
if (rock === "player") {
|
|
rock = this._player;
|
|
var hearts = this._playerHearts;
|
|
} else {
|
|
rock = this._opponent;
|
|
var hearts = this._opponentHearts;
|
|
}
|
|
for (var i = 0; i < damage; i++) {
|
|
if (hearts[i].alpha < 1) break;
|
|
hearts[i].alpha -= 0.4;
|
|
}
|
|
for (var i = 0; i < damage; i++) {
|
|
hearts.push(hearts.shift());
|
|
}
|
|
}
|
|
|
|
Scene_PetRocks.prototype.checkWinConditions = function() {
|
|
if (this._player.hp <= 0) {
|
|
// Game Over
|
|
this._player.alpha = 0.3;
|
|
$gameVariables.setValue(825, "opponent");
|
|
this._gameEndTimer = 180;
|
|
this._options.deactivate();
|
|
} else if (this._opponent.hp <= 0) {
|
|
// You Win, But still game over
|
|
// Put result in a variable for outside usage
|
|
this._opponent.alpha = 0.3;
|
|
$gameVariables.setValue(825, "player");
|
|
this._gameEndTimer = 180;
|
|
this._options.deactivate();
|
|
}
|
|
}
|
|
|
|
//=============================================================================
|
|
// R P S
|
|
//=============================================================================
|
|
function Window_PetRockOptions() {
|
|
this.initialize.apply(this, arguments);
|
|
}
|
|
|
|
Window_PetRockOptions.prototype = Object.create(Window_HorzCommand.prototype);
|
|
Window_PetRockOptions.prototype.constructor = Window_PetRockOptions;
|
|
|
|
Window_PetRockOptions.prototype.initialize = function () {
|
|
Window_HorzCommand.prototype.initialize.call(this, 160, 375);
|
|
this.opacity = 0;
|
|
};
|
|
|
|
Window_PetRockOptions.prototype.makeCommandList = function() {
|
|
this.addCommand("Rock", 'rock', true);
|
|
this.addCommand("Paper", 'paper', true);
|
|
this.addCommand("Scissors", 'scissors', true);
|
|
}
|
|
|
|
Window_PetRockOptions.prototype.windowWidth = function() {
|
|
return 330;
|
|
}
|
|
|
|
Window_PetRockOptions.prototype.windowHeight = function() {
|
|
return 100;
|
|
}
|
|
|
|
Window_PetRockOptions.prototype.maxCols = function () {
|
|
return 3;
|
|
};
|
|
|
|
Window_PetRockOptions.prototype.drawItem = function(index) {
|
|
var rect = this.itemRectForText(index);
|
|
this.contents.clearRect(rect.x, rect.y, rect.width + 12, rect.height + 12);
|
|
|
|
if (SceneManager._scene._optionPressed && this.currentSymbol() === this.commandSymbol(index)) {
|
|
var addon = "Pressed";
|
|
} else if (this.currentSymbol() === this.commandSymbol(index)) {
|
|
var addon = "Selected";
|
|
} else addon = "";
|
|
|
|
var bitmap = ImageManager.loadPicture('ROCK-Button' + addon);
|
|
this.contents.blt(bitmap, 0, 0, bitmap.width, bitmap.height, rect.x, rect.y);
|
|
}
|
|
|
|
Window_PetRockOptions.prototype.select = function(index) {
|
|
this._index = index;
|
|
this._stayCount = 0;
|
|
this.ensureCursorVisible();
|
|
this.updateCursor();
|
|
this.callUpdateHelp();
|
|
this.refresh();
|
|
}
|
|
|
|
Window_PetRockOptions.prototype._updateCursor = function () {
|
|
this._windowCursorSprite.visible = false;
|
|
};
|