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

@ -14,3 +14,4 @@ Added null check for pixi sprite calculateverticies because it sometimes makes a
DPI is now taken into account when resizing.
Added credits to mission modal.
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,8 +189,10 @@ 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];
if(m.Enabled) {
chapterSelect += `<option value="${m.Id}">${m.Id}</option>`
}
}
chapterSelect += '</select></div>';
cont.innerHTML = `
<div id="mission-modal" class="modal">
@ -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": ""
}
}