Skip to content

Commit a0e927d

Browse files
authored
Merge pull request rpgtkoolmv#150 from Sigureya/Interprter4
Interprterの先読み対応
2 parents c753539 + e42dc56 commit a0e927d

File tree

1 file changed

+137
-116
lines changed

1 file changed

+137
-116
lines changed

js/rpg_objects/Game_Interpreter.js

Lines changed: 137 additions & 116 deletions
Original file line numberDiff line numberDiff line change
@@ -1740,129 +1740,150 @@ Game_Interpreter.prototype.pluginCommand = function(command, args) {
17401740
// to be overridden by plugins
17411741
};
17421742

1743-
Game_Interpreter.requestImages = function(list, commonList){
1744-
if(!list) return;
1743+
Game_Interpreter.requestImagesByPluginCommand=function(command,args){
17451744

1746-
list.forEach(function(command){
1747-
var params = command.parameters;
1748-
switch(command.code){
1749-
// Show Text
1750-
case 101:
1751-
ImageManager.requestFace(params[0]);
1752-
break;
1753-
1754-
// Common Event
1755-
case 117:
1756-
var commonEvent = $dataCommonEvents[params[0]];
1757-
if (commonEvent) {
1758-
if (!commonList) {
1759-
commonList = [];
1760-
}
1761-
if (!commonList.contains(params[0])) {
1762-
commonList.push(params[0]);
1763-
Game_Interpreter.requestImages(commonEvent.list, commonList);
1745+
}
1746+
1747+
Game_Interpreter.requestImagesForCommand =function(command){
1748+
var params = command.parameters;
1749+
switch(command.code){
1750+
// Show Text
1751+
case 101:
1752+
ImageManager.requestFace(params[0]);
1753+
break;
1754+
1755+
// Change Party Member
1756+
case 129:
1757+
var actor = $gameActors.actor(params[0]);
1758+
if (actor && params[1] === 0) {
1759+
var name = actor.characterName();
1760+
ImageManager.requestCharacter(name);
1761+
}
1762+
break;
1763+
1764+
// Set Movement Route
1765+
case 205:
1766+
if(params[1]){
1767+
params[1].list.forEach(function(command){
1768+
var params = command.parameters;
1769+
if(command.code === Game_Character.ROUTE_CHANGE_IMAGE){
1770+
ImageManager.requestCharacter(params[0]);
17641771
}
1765-
}
1766-
break;
1772+
});
1773+
}
1774+
break;
17671775

1768-
// Change Party Member
1769-
case 129:
1770-
var actor = $gameActors.actor(params[0]);
1771-
if (actor && params[1] === 0) {
1772-
var name = actor.characterName();
1776+
// Show Animation, Show Battle Animation
1777+
case 212: case 337:
1778+
if(params[1]) {
1779+
var animation = $dataAnimations[params[1]];
1780+
var name1 = animation.animation1Name;
1781+
var name2 = animation.animation2Name;
1782+
var hue1 = animation.animation1Hue;
1783+
var hue2 = animation.animation2Hue;
1784+
ImageManager.requestAnimation(name1, hue1);
1785+
ImageManager.requestAnimation(name2, hue2);
1786+
}
1787+
break;
1788+
1789+
// Change Player Followers
1790+
case 216:
1791+
if (params[0] === 0) {
1792+
$gamePlayer.followers().forEach(function(follower) {
1793+
var name = follower.characterName();
17731794
ImageManager.requestCharacter(name);
1774-
}
1775-
break;
1776-
1777-
// Set Movement Route
1778-
case 205:
1779-
if(params[1]){
1780-
params[1].list.forEach(function(command){
1781-
var params = command.parameters;
1782-
if(command.code === Game_Character.ROUTE_CHANGE_IMAGE){
1783-
ImageManager.requestCharacter(params[0]);
1784-
}
1785-
});
1786-
}
1787-
break;
1788-
1789-
// Show Animation, Show Battle Animation
1790-
case 212: case 337:
1791-
if(params[1]) {
1792-
var animation = $dataAnimations[params[1]];
1793-
var name1 = animation.animation1Name;
1794-
var name2 = animation.animation2Name;
1795-
var hue1 = animation.animation1Hue;
1796-
var hue2 = animation.animation2Hue;
1797-
ImageManager.requestAnimation(name1, hue1);
1798-
ImageManager.requestAnimation(name2, hue2);
1799-
}
1800-
break;
1801-
1802-
// Change Player Followers
1803-
case 216:
1804-
if (params[0] === 0) {
1805-
$gamePlayer.followers().forEach(function(follower) {
1806-
var name = follower.characterName();
1807-
ImageManager.requestCharacter(name);
1808-
});
1809-
}
1810-
break;
1811-
1812-
// Show Picture
1813-
case 231:
1814-
ImageManager.requestPicture(params[1]);
1815-
break;
1816-
1817-
// Change Tileset
1818-
case 282:
1819-
var tileset = $dataTilesets[params[0]];
1820-
tileset.tilesetNames.forEach(function(tilesetName){
1821-
ImageManager.requestTileset(tilesetName);
18221795
});
1823-
break;
1796+
}
1797+
break;
18241798

1825-
// Change Battle Back
1826-
case 283:
1827-
if ($gameParty.inBattle()) {
1828-
ImageManager.requestBattleback1(params[0]);
1829-
ImageManager.requestBattleback2(params[1]);
1830-
}
1831-
break;
1799+
// Show Picture
1800+
case 231:
1801+
ImageManager.requestPicture(params[1]);
1802+
break;
18321803

1833-
// Change Parallax
1834-
case 284:
1835-
if (!$gameParty.inBattle()) {
1836-
ImageManager.requestParallax(params[0]);
1837-
}
1838-
break;
1804+
// Change Tileset
1805+
case 282:
1806+
var tileset = $dataTilesets[params[0]];
1807+
tileset.tilesetNames.forEach(function(tilesetName){
1808+
ImageManager.requestTileset(tilesetName);
1809+
});
1810+
break;
1811+
1812+
// Change Battle Back
1813+
case 283:
1814+
if ($gameParty.inBattle()) {
1815+
ImageManager.requestBattleback1(params[0]);
1816+
ImageManager.requestBattleback2(params[1]);
1817+
}
1818+
break;
1819+
1820+
// Change Parallax
1821+
case 284:
1822+
if (!$gameParty.inBattle()) {
1823+
ImageManager.requestParallax(params[0]);
1824+
}
1825+
break;
18391826

1840-
// Change Actor Images
1841-
case 322:
1827+
// Change Actor Images
1828+
case 322:
1829+
ImageManager.requestCharacter(params[1]);
1830+
ImageManager.requestFace(params[3]);
1831+
ImageManager.requestSvActor(params[5]);
1832+
break;
1833+
1834+
// Change Vehicle Image
1835+
case 323:
1836+
var vehicle = $gameMap.vehicle(params[0]);
1837+
if(vehicle){
18421838
ImageManager.requestCharacter(params[1]);
1843-
ImageManager.requestFace(params[3]);
1844-
ImageManager.requestSvActor(params[5]);
1845-
break;
1846-
1847-
// Change Vehicle Image
1848-
case 323:
1849-
var vehicle = $gameMap.vehicle(params[0]);
1850-
if(vehicle){
1851-
ImageManager.requestCharacter(params[1]);
1852-
}
1853-
break;
1854-
1855-
// Enemy Transform
1856-
case 336:
1857-
var enemy = $dataEnemies[params[1]];
1858-
var name = enemy.battlerName;
1859-
var hue = enemy.battlerHue;
1860-
if ($gameSystem.isSideView()) {
1861-
ImageManager.requestSvEnemy(name, hue);
1862-
} else {
1863-
ImageManager.requestEnemy(name, hue);
1864-
}
1865-
break;
1839+
}
1840+
break;
1841+
1842+
// Enemy Transform
1843+
case 336:
1844+
var enemy = $dataEnemies[params[1]];
1845+
var name = enemy.battlerName;
1846+
var hue = enemy.battlerHue;
1847+
if ($gameSystem.isSideView()) {
1848+
ImageManager.requestSvEnemy(name, hue);
1849+
} else {
1850+
ImageManager.requestEnemy(name, hue);
1851+
}
1852+
break;
1853+
// Plugin Command
1854+
case 356:
1855+
var args = params[0].split(" ");
1856+
var commandName = args.shift();
1857+
Game_Interpreter.requestImagesByPluginCommand(commandName,args);
1858+
break;
1859+
1860+
}
1861+
};
1862+
1863+
Game_Interpreter.requestImagesByChildEvent =function(command,commonList){
1864+
var params =command.parameters;
1865+
var commonEvent = $dataCommonEvents[params[0]];
1866+
if (commonEvent) {
1867+
if (!commonList) {
1868+
commonList = [];
1869+
}
1870+
if (!commonList.contains(params[0])) {
1871+
commonList.push(params[0]);
1872+
Game_Interpreter.requestImages(commonEvent.list, commonList);
1873+
}
1874+
}
1875+
};
1876+
1877+
Game_Interpreter.requestImages = function(list, commonList){
1878+
if(!list) return;
1879+
var len = list.length;
1880+
for(var i=0; i<len; i+=1 ){
1881+
var command = list[i];
1882+
// Common Event
1883+
if(command.code ===117){
1884+
Game_Interpreter.requestImagesByChildEvent(command,commonList);
1885+
}else{
1886+
Game_Interpreter.requestImagesForCommand(command);
18661887
}
1867-
});
1868-
};
1888+
}
1889+
};

0 commit comments

Comments
 (0)