diff --git a/.github/workflows/nodejs.yml b/.github/workflows/nodejs.yml index 867518de..0d1460bb 100644 --- a/.github/workflows/nodejs.yml +++ b/.github/workflows/nodejs.yml @@ -10,7 +10,7 @@ jobs: strategy: matrix: os: [windows-latest, macos-latest, ubuntu-latest] - node-version: [22.x, 24.x] + node-version: [24.x, 25.x] env: CI: true diff --git a/packages/ss6player-rpgmakermz/SampleProject/data/System.json b/packages/ss6player-rpgmakermz/SampleProject/data/System.json index dccf5ac0..b6c9c6ee 100755 --- a/packages/ss6player-rpgmakermz/SampleProject/data/System.json +++ b/packages/ss6player-rpgmakermz/SampleProject/data/System.json @@ -1 +1 @@ -{"advanced":{"gameId":37402338,"screenWidth":816,"screenHeight":624,"uiAreaWidth":816,"uiAreaHeight":624,"numberFontFilename":"mplus-2p-bold-sub.woff","fallbackFonts":"Verdana, sans-serif","fontSize":26,"mainFontFilename":"mplus-1m-regular.woff","windowOpacity":192},"airship":{"bgm":{"name":"","pan":0,"pitch":100,"volume":90},"characterIndex":3,"characterName":"Vehicle","startMapId":0,"startX":0,"startY":0},"armorTypes":["","一般防具","魔法防具","軽装防具","重装防具","小型盾","大型盾"],"attackMotions":[{"type":0,"weaponImageId":0},{"type":1,"weaponImageId":1},{"type":1,"weaponImageId":2},{"type":1,"weaponImageId":3},{"type":1,"weaponImageId":4},{"type":1,"weaponImageId":5},{"type":1,"weaponImageId":6},{"type":2,"weaponImageId":7},{"type":2,"weaponImageId":8},{"type":2,"weaponImageId":9},{"type":0,"weaponImageId":10},{"type":0,"weaponImageId":11},{"type":0,"weaponImageId":12}],"battleBgm":{"name":"","pan":0,"pitch":100,"volume":90},"battleback1Name":"GrassMaze","battleback2Name":"GrassMaze","battlerHue":0,"battlerName":"Hi_monster","battleSystem":0,"boat":{"bgm":{"name":"","pan":0,"pitch":100,"volume":90},"characterIndex":0,"characterName":"Vehicle","startMapId":0,"startX":0,"startY":0},"currencyUnit":"G","defeatMe":{"name":"","pan":0,"pitch":100,"volume":90},"editMapId":1,"elements":["","物理","炎","氷","雷","水","土","風","光","闇"],"equipTypes":["","武器","盾","頭","身体","装飾品"],"gameTitle":"SampleProject","gameoverMe":{"name":"","pan":0,"pitch":100,"volume":90},"itemCategories":[true,true,true,true],"locale":"ja_JP","magicSkills":[1],"menuCommands":[true,true,true,true,true,true],"optAutosave":true,"optDisplayTp":true,"optDrawTitle":true,"optExtraExp":false,"optFloorDeath":false,"optFollowers":true,"optKeyItemsNumber":false,"optSideView":true,"optSlipDeath":false,"optTransparent":false,"partyMembers":[1,4,6,7],"ship":{"bgm":{"name":"","pan":0,"pitch":100,"volume":90},"characterIndex":1,"characterName":"Vehicle","startMapId":0,"startX":0,"startY":0},"skillTypes":["","魔法","必殺技"],"sounds":[{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90}],"startMapId":1,"startX":8,"startY":6,"switches":["","","","","","","","","","","","","","","","","","","","",""],"terms":{"basic":["レベル","Lv","HP","HP","MP","MP","TP","TP","経験値","EXP"],"commands":["戦う","逃げる","攻撃","防御","アイテム","スキル","装備","ステータス","並び替え","セーブ","ゲーム終了","オプション","武器","防具","大事なもの","装備","最強装備","全て外す","ニューゲーム","コンティニュー",null,"タイトルへ","やめる",null,"購入する","売却する"],"params":["最大HP","最大MP","攻撃力","防御力","魔法力","魔法防御","敏捷性","運","命中率","回避率"],"messages":{"alwaysDash":"常時ダッシュ","commandRemember":"コマンド記憶","touchUI":"タッチUI","bgmVolume":"BGM 音量","bgsVolume":"BGS 音量","meVolume":"ME 音量","seVolume":"SE 音量","possession":"持っている数","expTotal":"現在の%1","expNext":"次の%1まで","saveMessage":"どのファイルにセーブしますか?","loadMessage":"どのファイルをロードしますか?","file":"ファイル","autosave":"オートセーブ","partyName":"%1たち","emerge":"%1が出現!","preemptive":"%1は先手を取った!","surprise":"%1は不意をつかれた!","escapeStart":"%1は逃げ出した!","escapeFailure":"しかし逃げることはできなかった!","victory":"%1の勝利!","defeat":"%1は戦いに敗れた。","obtainExp":"%1 の%2を獲得!","obtainGold":"お金を %1\\G 手に入れた!","obtainItem":"%1を手に入れた!","levelUp":"%1は%2 %3 に上がった!","obtainSkill":"%1を覚えた!","useItem":"%1は%2を使った!","criticalToEnemy":"会心の一撃!!","criticalToActor":"痛恨の一撃!!","actorDamage":"%1は %2 のダメージを受けた!","actorRecovery":"%1の%2が %3 回復した!","actorGain":"%1の%2が %3 増えた!","actorLoss":"%1の%2が %3 減った!","actorDrain":"%1は%2を %3 奪われた!","actorNoDamage":"%1はダメージを受けていない!","actorNoHit":"ミス! %1はダメージを受けていない!","enemyDamage":"%1に %2 のダメージを与えた!","enemyRecovery":"%1の%2が %3 回復した!","enemyGain":"%1の%2が %3 増えた!","enemyLoss":"%1の%2が %3 減った!","enemyDrain":"%1の%2を %3 奪った!","enemyNoDamage":"%1にダメージを与えられない!","enemyNoHit":"ミス! %1にダメージを与えられない!","evasion":"%1は攻撃をかわした!","magicEvasion":"%1は魔法を打ち消した!","magicReflection":"%1は魔法を跳ね返した!","counterAttack":"%1の反撃!","substitute":"%1が%2をかばった!","buffAdd":"%1の%2が上がった!","debuffAdd":"%1の%2が下がった!","buffRemove":"%1の%2が元に戻った!","actionFailure":"%1には効かなかった!"}},"testBattlers":[{"actorId":1,"level":1,"equips":[2,1,2,3,0]},{"actorId":4,"level":1,"equips":[31,0,0,5,0]},{"actorId":6,"level":1,"equips":[7,0,65,21,0]},{"actorId":7,"level":1,"equips":[7,0,0,20,0]}],"testTroopId":1,"title1Name":"","title2Name":"","titleBgm":{"name":"","pan":0,"pitch":100,"volume":90},"titleCommandWindow":{"background":0,"offsetX":0,"offsetY":0},"variables":["","","","","","","","","","","","","","","","","","","","",""],"versionId":14287297,"victoryMe":{"name":"","pan":0,"pitch":100,"volume":90},"weaponTypes":["","短剣","剣","フレイル","斧","ムチ","杖","弓","クロスボウ","銃","爪","グローブ","槍"],"windowTone":[0,0,0,0],"tileSize":48} \ No newline at end of file +{"advanced":{"gameId":37402338,"screenWidth":816,"screenHeight":624,"uiAreaWidth":816,"uiAreaHeight":624,"numberFontFilename":"mplus-2p-bold-sub.woff","fallbackFonts":"Verdana, sans-serif","fontSize":26,"mainFontFilename":"mplus-1m-regular.woff","windowOpacity":192,"screenScale":1,"picturesUpperLimit":100},"airship":{"bgm":{"name":"","pan":0,"pitch":100,"volume":90},"characterIndex":3,"characterName":"Vehicle","startMapId":0,"startX":0,"startY":0},"armorTypes":["","一般防具","魔法防具","軽装防具","重装防具","小型盾","大型盾"],"attackMotions":[{"type":0,"weaponImageId":0},{"type":1,"weaponImageId":1},{"type":1,"weaponImageId":2},{"type":1,"weaponImageId":3},{"type":1,"weaponImageId":4},{"type":1,"weaponImageId":5},{"type":1,"weaponImageId":6},{"type":2,"weaponImageId":7},{"type":2,"weaponImageId":8},{"type":2,"weaponImageId":9},{"type":0,"weaponImageId":10},{"type":0,"weaponImageId":11},{"type":0,"weaponImageId":12}],"battleBgm":{"name":"","pan":0,"pitch":100,"volume":90},"battleback1Name":"GrassMaze","battleback2Name":"GrassMaze","battlerHue":0,"battlerName":"Hi_monster","battleSystem":0,"boat":{"bgm":{"name":"","pan":0,"pitch":100,"volume":90},"characterIndex":0,"characterName":"Vehicle","startMapId":0,"startX":0,"startY":0},"currencyUnit":"G","defeatMe":{"name":"","pan":0,"pitch":100,"volume":90},"editMapId":1,"elements":["","物理","炎","氷","雷","水","土","風","光","闇"],"equipTypes":["","武器","盾","頭","身体","装飾品"],"gameTitle":"SampleProject","gameoverMe":{"name":"","pan":0,"pitch":100,"volume":90},"itemCategories":[true,true,true,true],"locale":"ja_JP","magicSkills":[1],"menuCommands":[true,true,true,true,true,true],"optAutosave":true,"optDisplayTp":true,"optDrawTitle":true,"optExtraExp":false,"optFloorDeath":false,"optFollowers":true,"optKeyItemsNumber":false,"optSideView":true,"optSlipDeath":false,"optTransparent":false,"partyMembers":[1,4,6,7],"ship":{"bgm":{"name":"","pan":0,"pitch":100,"volume":90},"characterIndex":1,"characterName":"Vehicle","startMapId":0,"startX":0,"startY":0},"skillTypes":["","魔法","必殺技"],"sounds":[{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90},{"name":"","pan":0,"pitch":100,"volume":90}],"startMapId":1,"startX":8,"startY":6,"switches":["","","","","","","","","","","","","","","","","","","","",""],"terms":{"basic":["レベル","Lv","HP","HP","MP","MP","TP","TP","経験値","EXP"],"commands":["戦う","逃げる","攻撃","防御","アイテム","スキル","装備","ステータス","並び替え","セーブ","ゲーム終了","オプション","武器","防具","大事なもの","装備","最強装備","全て外す","ニューゲーム","コンティニュー",null,"タイトルへ","やめる",null,"購入する","売却する"],"params":["最大HP","最大MP","攻撃力","防御力","魔法力","魔法防御","敏捷性","運","命中率","回避率"],"messages":{"alwaysDash":"常時ダッシュ","commandRemember":"コマンド記憶","touchUI":"タッチUI","bgmVolume":"BGM 音量","bgsVolume":"BGS 音量","meVolume":"ME 音量","seVolume":"SE 音量","possession":"持っている数","expTotal":"現在の%1","expNext":"次の%1まで","saveMessage":"どのファイルにセーブしますか?","loadMessage":"どのファイルをロードしますか?","file":"ファイル","autosave":"オートセーブ","partyName":"%1たち","emerge":"%1が出現!","preemptive":"%1は先手を取った!","surprise":"%1は不意をつかれた!","escapeStart":"%1は逃げ出した!","escapeFailure":"しかし逃げることはできなかった!","victory":"%1の勝利!","defeat":"%1は戦いに敗れた。","obtainExp":"%1 の%2を獲得!","obtainGold":"お金を %1\\G 手に入れた!","obtainItem":"%1を手に入れた!","levelUp":"%1は%2 %3 に上がった!","obtainSkill":"%1を覚えた!","useItem":"%1は%2を使った!","criticalToEnemy":"会心の一撃!!","criticalToActor":"痛恨の一撃!!","actorDamage":"%1は %2 のダメージを受けた!","actorRecovery":"%1の%2が %3 回復した!","actorGain":"%1の%2が %3 増えた!","actorLoss":"%1の%2が %3 減った!","actorDrain":"%1は%2を %3 奪われた!","actorNoDamage":"%1はダメージを受けていない!","actorNoHit":"ミス! %1はダメージを受けていない!","enemyDamage":"%1に %2 のダメージを与えた!","enemyRecovery":"%1の%2が %3 回復した!","enemyGain":"%1の%2が %3 増えた!","enemyLoss":"%1の%2が %3 減った!","enemyDrain":"%1の%2を %3 奪った!","enemyNoDamage":"%1にダメージを与えられない!","enemyNoHit":"ミス! %1にダメージを与えられない!","evasion":"%1は攻撃をかわした!","magicEvasion":"%1は魔法を打ち消した!","magicReflection":"%1は魔法を跳ね返した!","counterAttack":"%1の反撃!","substitute":"%1が%2をかばった!","buffAdd":"%1の%2が上がった!","debuffAdd":"%1の%2が下がった!","buffRemove":"%1の%2が元に戻った!","actionFailure":"%1には効かなかった!"}},"testBattlers":[{"actorId":1,"level":1,"equips":[2,1,2,3,0]},{"actorId":4,"level":1,"equips":[31,0,0,5,0]},{"actorId":6,"level":1,"equips":[7,0,65,21,0]},{"actorId":7,"level":1,"equips":[7,0,0,20,0]}],"testTroopId":1,"title1Name":"","title2Name":"","titleBgm":{"name":"","pan":0,"pitch":100,"volume":90},"titleCommandWindow":{"background":0,"offsetX":0,"offsetY":0},"variables":["","","","","","","","","","","","","","","","","","","","",""],"versionId":89273119,"victoryMe":{"name":"","pan":0,"pitch":100,"volume":90},"weaponTypes":["","短剣","剣","フレイル","斧","ムチ","杖","弓","クロスボウ","銃","爪","グローブ","槍"],"windowTone":[0,0,0,0],"tileSize":48,"editor":{"messageWidth1":60,"messageWidth2":47,"jsonFormatLevel":1},"faceSize":144,"iconSize":32,"optSplashScreen":false,"optMessageSkip":true} \ No newline at end of file diff --git a/packages/ss6player-rpgmakermz/SampleProject/game.rmmzproject b/packages/ss6player-rpgmakermz/SampleProject/game.rmmzproject index 0c82fde6..f6cbd590 100644 --- a/packages/ss6player-rpgmakermz/SampleProject/game.rmmzproject +++ b/packages/ss6player-rpgmakermz/SampleProject/game.rmmzproject @@ -1 +1 @@ -RPGMZ 1.7.0 \ No newline at end of file +RPGMZ 1.10.0 \ No newline at end of file diff --git a/packages/ss6player-rpgmakermz/SampleProject/js/main.js b/packages/ss6player-rpgmakermz/SampleProject/js/main.js index dbb36bae..8d64dc8f 100755 --- a/packages/ss6player-rpgmakermz/SampleProject/js/main.js +++ b/packages/ss6player-rpgmakermz/SampleProject/js/main.js @@ -1,5 +1,5 @@ //============================================================================= -// main.js v1.9.0 +// main.js v1.10.0 //============================================================================= const scriptUrls = [ diff --git a/packages/ss6player-rpgmakermz/SampleProject/js/rmmz_core.js b/packages/ss6player-rpgmakermz/SampleProject/js/rmmz_core.js index 410d2543..a6c5ecc0 100755 --- a/packages/ss6player-rpgmakermz/SampleProject/js/rmmz_core.js +++ b/packages/ss6player-rpgmakermz/SampleProject/js/rmmz_core.js @@ -1,5 +1,5 @@ //============================================================================= -// rmmz_core.js v1.9.0 +// rmmz_core.js v1.10.0 //============================================================================= //----------------------------------------------------------------------------- @@ -192,7 +192,7 @@ Utils.RPGMAKER_NAME = "MZ"; * @type string * @constant */ -Utils.RPGMAKER_VERSION = "1.9.0"; +Utils.RPGMAKER_VERSION = "1.10.0"; /** * Checks whether the current RPG Maker version is greater than or equal to diff --git a/packages/ss6player-rpgmakermz/SampleProject/js/rmmz_managers.js b/packages/ss6player-rpgmakermz/SampleProject/js/rmmz_managers.js index 6c37c684..13d7a90f 100755 --- a/packages/ss6player-rpgmakermz/SampleProject/js/rmmz_managers.js +++ b/packages/ss6player-rpgmakermz/SampleProject/js/rmmz_managers.js @@ -1,5 +1,5 @@ //============================================================================= -// rmmz_managers.js v1.9.0 +// rmmz_managers.js v1.10.0 //============================================================================= //----------------------------------------------------------------------------- @@ -892,7 +892,7 @@ ImageManager.getIconSize = function() { if ("iconSize" in $dataSystem) { return $dataSystem.iconSize; } else { - return this.defaultIconWidth; + return this.standardIconWidth; } }; @@ -900,7 +900,7 @@ ImageManager.getFaceSize = function() { if ("faceSize" in $dataSystem) { return $dataSystem.faceSize; } else { - return this.defaultFaceWidth; + return this.standardFaceWidth; } }; diff --git a/packages/ss6player-rpgmakermz/SampleProject/js/rmmz_objects.js b/packages/ss6player-rpgmakermz/SampleProject/js/rmmz_objects.js index 36e9cd08..09dc869e 100755 --- a/packages/ss6player-rpgmakermz/SampleProject/js/rmmz_objects.js +++ b/packages/ss6player-rpgmakermz/SampleProject/js/rmmz_objects.js @@ -1,5 +1,5 @@ //============================================================================= -// rmmz_objects.js v1.9.0 +// rmmz_objects.js v1.10.0 //============================================================================= //----------------------------------------------------------------------------- diff --git a/packages/ss6player-rpgmakermz/SampleProject/js/rmmz_scenes.js b/packages/ss6player-rpgmakermz/SampleProject/js/rmmz_scenes.js index feb5255f..0e861e08 100755 --- a/packages/ss6player-rpgmakermz/SampleProject/js/rmmz_scenes.js +++ b/packages/ss6player-rpgmakermz/SampleProject/js/rmmz_scenes.js @@ -1,5 +1,5 @@ //============================================================================= -// rmmz_scenes.js v1.9.0 +// rmmz_scenes.js v1.10.0 //============================================================================= //----------------------------------------------------------------------------- @@ -2684,6 +2684,7 @@ Scene_Shop.prototype.createSellWindow = function() { if (!this._categoryWindow.needsSelection()) { this._sellWindow.y -= this._categoryWindow.height; this._sellWindow.height += this._categoryWindow.height; + this._sellWindow.createContents(); } }; @@ -2758,6 +2759,7 @@ Scene_Shop.prototype.onBuyCancel = function() { Scene_Shop.prototype.onCategoryOk = function() { this.activateSellWindow(); this._sellWindow.select(0); + this._sellWindow.setTopRow(0); }; Scene_Shop.prototype.onCategoryCancel = function() { diff --git a/packages/ss6player-rpgmakermz/SampleProject/js/rmmz_sprites.js b/packages/ss6player-rpgmakermz/SampleProject/js/rmmz_sprites.js index 4dc30875..35c1f01e 100755 --- a/packages/ss6player-rpgmakermz/SampleProject/js/rmmz_sprites.js +++ b/packages/ss6player-rpgmakermz/SampleProject/js/rmmz_sprites.js @@ -1,5 +1,5 @@ //============================================================================= -// rmmz_sprites.js v1.9.0 +// rmmz_sprites.js v1.10.0 //============================================================================= //----------------------------------------------------------------------------- diff --git a/packages/ss6player-rpgmakermz/SampleProject/js/rmmz_windows.js b/packages/ss6player-rpgmakermz/SampleProject/js/rmmz_windows.js index 3ae92b14..788557e2 100755 --- a/packages/ss6player-rpgmakermz/SampleProject/js/rmmz_windows.js +++ b/packages/ss6player-rpgmakermz/SampleProject/js/rmmz_windows.js @@ -1,5 +1,5 @@ //============================================================================= -// rmmz_windows.js v1.9.0 +// rmmz_windows.js v1.10.0 //============================================================================= //----------------------------------------------------------------------------- @@ -455,7 +455,7 @@ Window_Base.prototype.drawIcon = function(iconIndex, x, y) { const ph = ImageManager.iconHeight; const sx = (iconIndex % 16) * pw; const sy = Math.floor(iconIndex / 16) * ph; - this.contents.blt(bitmap, sx, sy, pw, ph, x, y); + this.contents.blt(bitmap, sx, sy, pw, ph, Math.floor(x), Math.floor(y)); }; // prettier-ignore diff --git a/packages/ss6player-rpgmakermz/src/ss6player-rpgmakermz.js b/packages/ss6player-rpgmakermz/src/ss6player-rpgmakermz.js index 15a8a987..a6c32b89 100644 --- a/packages/ss6player-rpgmakermz/src/ss6player-rpgmakermz.js +++ b/packages/ss6player-rpgmakermz/src/ss6player-rpgmakermz.js @@ -24,20 +24,14 @@ PluginManager.registerCommand(PLUGIN_NAME, 'loadSsfb', function(args) { } this.setWaitMode(SS6PROJECT_LOAD_WAIT_MODE); SS6ProjectManager.getInstance().prepare(ssfbId); - let project = new SS6Project(ssfbPath, () => { - SS6ProjectManager.getInstance().set(ssfbId, project); - }, - 180 * 1000, 3, - (ssfbPath, timeout, retry, httpObj) => { + let project = new SS6Project(ssfbPath, (proj, error) => { + if (error) { this.setWaitMode(''); - throw httpObj; - }, - (ssfbPath, timeout, retry, httpObj) => { - console.log('timeout download ssfb file: ' + ssfbPath); - this.setWaitMode(''); - throw httpObj; - }, - null); + console.error(error); + throw error; + } + SS6ProjectManager.getInstance().set(ssfbId, proj); + }); }); PluginManager.registerCommand(PLUGIN_NAME, 'setAsPicture', function(args) { @@ -412,18 +406,18 @@ Sprite_Actor.prototype.setBattler = function (battler) { } SS6ProjectManager.getInstance().prepare(ssfbId); - let project = new SS6Project(ssfbPath, - () => { + new SS6Project(ssfbPath, + (proj, error) => { + if (error) { + // not found character sub directory + notFoundSvActorSsfbMap.set(ssfbId, null); + SS6ProjectManager.getInstance().set(ssfbId, null); + return; + } this._actor._svActorSS6Player = null; this._actor._svActorSS6PlayerParent = null; - SS6ProjectManager.getInstance().set(ssfbId, project); - }, - 180 * 1000, 3, - (ssfbPath, timeout, retry, httpObj) => { - // not found character sub directory - notFoundSvActorSsfbMap.set(ssfbId, null); - SS6ProjectManager.getInstance().set(ssfbId, null); + SS6ProjectManager.getInstance().set(ssfbId, proj); } ); } @@ -553,19 +547,19 @@ Sprite_Enemy.prototype.setBattler = function (battler) { } SS6ProjectManager.getInstance().prepare(ssfbId); - let project = new SS6Project(ssfbPath, - () => { + new SS6Project(ssfbPath, + (proj, error) => { + if (error) { + // not found character sub directory + this._enemy._svEnemySS6ProjectLoaded = true; + notFoundSvEnemySsfbMap.set(ssfbId, null); + SS6ProjectManager.getInstance().set(ssfbId, null); + return; + } this._enemy._svEnemySS6ProjectLoaded = true; this._enemy._svEnemySS6Player = null; this._enemy._svEnemySS6PlayerParent = null; - SS6ProjectManager.getInstance().set(ssfbId, project); - }, - 180 * 1000, 3, - (ssfbPath, timeout, retry, httpObj) => { - // not found character sub directory - this._enemy._svEnemySS6ProjectLoaded = true; - notFoundSvEnemySsfbMap.set(ssfbId, null); - SS6ProjectManager.getInstance().set(ssfbId, null); + SS6ProjectManager.getInstance().set(ssfbId, proj); } ); } @@ -693,7 +687,7 @@ Sprite_Enemy.prototype.updateStateSprite = function() { } else { let height = 0; if (this._enemy && this._enemy._svEnemySS6Player) { - height = this._enemy._svEnemySS6Player; + height = this._enemy._svEnemySS6Player.height; } this._stateIconSprite.y = -Math.round((height + 40) * 0.9); if (this._stateIconSprite.y < 20 - this.y) {