Missions JSON moved to translations submodule so missions can be added/enabled without disturbing main project.

Individual mission ids can be disabled not just whole mstid.
This commit is contained in:
fire bingo 2018-06-13 21:49:25 -07:00
parent cb88904665
commit 4d435784b6
6 changed files with 18 additions and 12074 deletions

View File

@ -13,4 +13,5 @@ Added title tag that updates with current mission.
Added null check for pixi sprite calculateverticies because it sometimes makes a texture invalid when it shouldn't be. This is kinda a hack and should be investigated deeper in the future.
DPI is now taken into account when resizing.
Added credits to mission modal.
Added ability to go fullscreen.
Added ability to go fullscreen.
Missions JSON moved to translations submodule so missions can be added/enabled without disturbing main project.

View File

@ -127,7 +127,7 @@ function buildMissionSelectList() {
opt.innerText = 'Select Mission';
} else {
let m = utage.missionsList[i];
if(!availableMstIds.includes(m.MstId)) {
if(!Object.keys(utage.groupedMissions[m.MstId].Missions).some((mis) => { return utage.groupedMissions[m.MstId].Missions[mis].Enabled === true })) {
continue;
}
opt.setAttribute('value', m.MstId);
@ -189,7 +189,9 @@ function missionDropDownChanged(event) {
let chapterSelect = '<div><span>Chapter Select:</span><select id="ChapterSelect">';
for(let k of Object.keys(mis.Missions)) {
var m = mis.Missions[k];
chapterSelect += `<option value="${m.Id}">${m.Id}</option>`
if(m.Enabled) {
chapterSelect += `<option value="${m.Id}">${m.Id}</option>`
}
}
chapterSelect += '</select></div>';
cont.innerHTML = `
@ -250,6 +252,10 @@ function missionChanged(mstId, value) {
checkMissionList(mst.Missions, value);
currentMission = newMission;
currentMissionMst = mstId;
if(!currentMission.Enabled) {
missionChanged(currentMissionMst, mst.Missions[currentMissionList[currentMissionIndex+1]].Id);
return;
}
let promises = [
utage.parseMissionFile(`${utage.rootDirectory}XDUData/${newMission.Path.replace('Asset/', '').replace('.utage', '').replace('.tsv', '_t.tsv')}`),
utage.loadMissionTranslation(`${utage.rootDirectory}Js/Translations/Missions/${currentMission.Path.replace('Asset/Utage/', '').replace('Scenario/', '').replace('.utage', '').replace('.tsv', `_translations_${selectedLang}.json`)}`)
@ -262,7 +268,7 @@ function missionChanged(mstId, value) {
player.playFile()
.then((success) => {
if(currentMissionIndex !== currentMissionList.length - 1) {
missionChanged(currentMissionMst, mst.Missions[currentMissionList[currentMissionIndex+1]].Id)
missionChanged(currentMissionMst, mst.Missions[currentMissionList[currentMissionIndex+1]].Id);
} else {
player.resetAll();
resetMissions();

@ -1 +1 @@
Subproject commit 6e332e63caf4f49134163d88138b99a26cca0c45
Subproject commit 3e263b2e33053c7f40b5bb1ed3258db1611b3b4f

View File

@ -23,7 +23,7 @@ class UtageInfo {
loadUtageSettings(resolve, reject) {
return new Promise((resolve, reject) => {
let promises = [
commonFunctions.getFileJson(`${this.rootDirectory}Js/XduMissions.json`),
commonFunctions.getFileJson(`${this.rootDirectory}Js/Translations/XduMissions.json`),
commonFunctions.getFileText(`${this.rootDirectory}XDUData/Utage/Diva/Settings/Character.tsv`),
commonFunctions.getFileText(`${this.rootDirectory}XDUData/Utage/Diva/Settings/Layer.tsv`),
commonFunctions.getFileText(`${this.rootDirectory}XDUData/Utage/Diva/Settings/Localize.tsv`),
@ -32,7 +32,7 @@ class UtageInfo {
commonFunctions.getFileText(`${this.rootDirectory}XDUData/Utage/Diva/Settings/Sound.tsv`),
commonFunctions.getFileText(`${this.rootDirectory}XDUData/Utage/Diva/Settings/Texture.tsv`),
commonFunctions.getFileJson(`${this.rootDirectory}Js/BgmLoop.json`),
commonFunctions.getFileJson(`${this.rootDirectory}Js/XduMissionsCustom.json`),
commonFunctions.getFileJson(`${this.rootDirectory}Js/Translations/XduMissionsCustom.json`),
];
Promise.all(promises)
.then((success) => {
@ -92,9 +92,9 @@ class UtageInfo {
MstId: mis.MstId,
Missions: {}
}
this.groupedMissions[mis.MstId].Missions[mis.Id] = { Id: mis.Id, Path: mis.Path };
this.groupedMissions[mis.MstId].Missions[mis.Id] = { Id: mis.Id, Path: mis.Path, Enabled: mis.Enabled };
} else {
this.groupedMissions[mis.MstId].Missions[mis.Id] = { Id: mis.Id, Path: mis.Path };
this.groupedMissions[mis.MstId].Missions[mis.Id] = { Id: mis.Id, Path: mis.Path, Enabled: mis.Enabled };
}
}
for(let key of Object.keys(customMissions)) {
@ -106,9 +106,9 @@ class UtageInfo {
MstId: mis.MstId,
Missions: {}
}
this.groupedMissions[mis.MstId].Missions[mis.Id] = { Id: mis.Id, Path: mis.Path };
this.groupedMissions[mis.MstId].Missions[mis.Id] = { Id: mis.Id, Path: mis.Path, Enabled: mis.Enabled };
} else {
this.groupedMissions[mis.MstId].Missions[mis.Id] = { Id: mis.Id, Path: mis.Path };
this.groupedMissions[mis.MstId].Missions[mis.Id] = { Id: mis.Id, Path: mis.Path, Enabled: mis.Enabled };
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -1,226 +0,0 @@
{
"312000111": {
"Path": "Asset/Utage/event011/Scenario/312000111.tsv.utage",
"MstId": 338001,
"Id": "312000111",
"Name": "EV31-1:黒衣の花嫁",
"SummaryText": ""
},
"312000112": {
"Path": "Asset/Utage/event011/Scenario/312000112.tsv.utage",
"MstId": 338001,
"Id": "312000112",
"Name": "EV31-1:黒衣の花嫁",
"SummaryText": ""
},
"312000121": {
"Path": "Asset/Utage/event011/Scenario/312000121.tsv.utage",
"MstId": 338001,
"Id": "312000121",
"Name": "EV31-1:黒衣の花嫁",
"SummaryText": ""
},
"312000122": {
"Path": "Asset/Utage/event011/Scenario/312000122.tsv.utage",
"MstId": 338001,
"Id": "312000122",
"Name": "EV31-1:黒衣の花嫁",
"SummaryText": ""
},
"312000131": {
"Path": "Asset/Utage/event011/Scenario/312000131.tsv.utage",
"MstId": 338001,
"Id": "312000131",
"Name": "EV31-1:黒衣の花嫁",
"SummaryText": ""
},
"312000132": {
"Path": "Asset/Utage/event011/Scenario/312000132.tsv.utage",
"MstId": 338001,
"Id": "312000132",
"Name": "EV31-1:黒衣の花嫁",
"SummaryText": ""
},
"312000141": {
"Path": "Asset/Utage/event011/Scenario/312000141.tsv.utage",
"MstId": 338001,
"Id": "312000141",
"Name": "EV31-1:黒衣の花嫁",
"SummaryText": ""
},
"312000142": {
"Path": "Asset/Utage/event011/Scenario/312000142.tsv.utage",
"MstId": 338001,
"Id": "312000142",
"Name": "EV31-1:黒衣の花嫁",
"SummaryText": ""
},
"312000211": {
"Path": "Asset/Utage/event011/Scenario/312000211.tsv.utage",
"MstId": 338002,
"Id": "312000211",
"Name": "EV31-2:純白の光明",
"SummaryText": ""
},
"312000212": {
"Path": "Asset/Utage/event011/Scenario/312000212.tsv.utage",
"MstId": 338002,
"Id": "312000212",
"Name": "EV31-2:純白の光明",
"SummaryText": ""
},
"312000221": {
"Path": "Asset/Utage/event011/Scenario/312000221.tsv.utage",
"MstId": 338002,
"Id": "312000221",
"Name": "EV31-2:純白の光明",
"SummaryText": ""
},
"312000222": {
"Path": "Asset/Utage/event011/Scenario/312000222.tsv.utage",
"MstId": 338002,
"Id": "312000222",
"Name": "EV31-2:純白の光明",
"SummaryText": ""
},
"312000311": {
"Path": "Asset/Utage/event011/Scenario/312000311.tsv.utage",
"MstId": 338003,
"Id": "312000311",
"Name": "EV31-3:立ちはだかる黒",
"SummaryText": ""
},
"312000312": {
"Path": "Asset/Utage/event011/Scenario/312000312.tsv.utage",
"MstId": 338003,
"Id": "312000312",
"Name": "EV31-3:立ちはだかる黒",
"SummaryText": ""
},
"312000411": {
"Path": "Asset/Utage/event011/Scenario/312000411.tsv.utage",
"MstId": 338004,
"Id": "312000411",
"Name": "EV31-4:その身に纏う純白",
"SummaryText": ""
},
"312000412": {
"Path": "Asset/Utage/event011/Scenario/312000412.tsv.utage",
"MstId": 338004,
"Id": "312000412",
"Name": "EV31-4:その身に纏う純白",
"SummaryText": ""
},
"312000421": {
"Path": "Asset/Utage/event011/Scenario/312000421.tsv.utage",
"MstId": 338004,
"Id": "312000421",
"Name": "EV31-4:その身に纏う純白",
"SummaryText": ""
},
"312000422": {
"Path": "Asset/Utage/event011/Scenario/312000422.tsv.utage",
"MstId": 338004,
"Id": "312000422",
"Name": "EV31-4:その身に纏う純白",
"SummaryText": ""
},
"312000511": {
"Path": "Asset/Utage/event011/Scenario/312000511.tsv.utage",
"MstId": 338005,
"Id": "312000511",
"Name": "EV31-5:ブルー……。",
"SummaryText": ""
},
"312000512": {
"Path": "Asset/Utage/event011/Scenario/312000512.tsv.utage",
"MstId": 338005,
"Id": "312000512",
"Name": "EV31-5:ブルー……。",
"SummaryText": ""
},
"312000611": {
"Path": "Asset/Utage/event011/Scenario/312000611.tsv.utage",
"MstId": 338006,
"Id": "312000611",
"Name": "EV31-6:マリッジブルー",
"SummaryText": ""
},
"312000612": {
"Path": "Asset/Utage/event011/Scenario/312000612.tsv.utage",
"MstId": 338006,
"Id": "312000612",
"Name": "EV31-6:マリッジブルー",
"SummaryText": ""
},
"312000711": {
"Path": "Asset/Utage/event011/Scenario/312000711.tsv.utage",
"MstId": 338007,
"Id": "312000711",
"Name": "EV31-7:ウェディングドレス?",
"SummaryText": ""
},
"312000712": {
"Path": "Asset/Utage/event011/Scenario/312000712.tsv.utage",
"MstId": 338007,
"Id": "312000712",
"Name": "EV31-7:ウェディングドレス?",
"SummaryText": ""
},
"312000811": {
"Path": "Asset/Utage/event011/Scenario/312000811.tsv.utage",
"MstId": 338008,
"Id": "312000811",
"Name": "EV31-8:幸せを呼び起こせッ!",
"SummaryText": ""
},
"312000812": {
"Path": "Asset/Utage/event011/Scenario/312000812.tsv.utage",
"MstId": 338008,
"Id": "312000812",
"Name": "EV31-8:幸せを呼び起こせッ!",
"SummaryText": ""
},
"312000821": {
"Path": "Asset/Utage/event011/Scenario/312000821.tsv.utage",
"MstId": 338008,
"Id": "312000821",
"Name": "EV31-8:幸せを呼び起こせッ!",
"SummaryText": ""
},
"312000822": {
"Path": "Asset/Utage/event011/Scenario/312000822.tsv.utage",
"MstId": 338008,
"Id": "312000822",
"Name": "EV31-8:幸せを呼び起こせッ!",
"SummaryText": ""
},
"312000911": {
"Path": "Asset/Utage/event011/Scenario/312000911.tsv.utage",
"MstId": 338009,
"Id": "312000911",
"Name": "EV31-9:ブライダル戦姫ッ!",
"SummaryText": ""
},
"312000912": {
"Path": "Asset/Utage/event011/Scenario/312000912.tsv.utage",
"MstId": 338009,
"Id": "312000912",
"Name": "EV31-9:ブライダル戦姫ッ!",
"SummaryText": ""
},
"312001011": {
"Path": "Asset/Utage/event011/Scenario/312001011.tsv.utage",
"MstId": 338010,
"Id": "312001011",
"Name": "EV31-10:ウェディングドレスッ!",
"SummaryText": ""
},
"312001111": {
"Path": "Asset/Utage/event011/Scenario/312001111.tsv.utage",
"MstId": 338011,
"Id": "312001111",
"Name": "EV31-11:ふたりのしあわせ",
"SummaryText": ""
}
}