Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function armies(data) {
- let armyCollect = {};
- while (data.length > 1) {
- let line = data.shift();
- if (line.includes("arrives")) {
- let leaderName = line.split(" arrives")[0];
- armyCollect[leaderName] = [];
- }
- else if (line.includes(": ")) {
- line = line.split(": ")
- let leaderName = line.shift();
- line = line[0].split(", ");
- let armyName = line[0];
- let armyCount = Number(line[1]);
- if (armyCollect.hasOwnProperty(leaderName)) {
- armyCollect[leaderName].push(armyName, armyCount)
- }
- }
- else if (line.includes(" + ")) {
- line = line.split(" + ");
- let armyName = line[0];
- let armyToAdd = Number(line[1]);
- let armyCollectEntries = Object.entries(armyCollect)
- for (let x = 0; x < armyCollectEntries.length; x++) {
- let currLeaderName = armyCollectEntries[x][0];
- let [currArmyName, currArmyCount] = armyCollectEntries[x][1];
- if (armyName === currArmyName) {
- currArmyCount += armyToAdd;
- armyCollect[currLeaderName].splice(1,1,currArmyCount)
- }
- }
- };
- }
- console.table(armyCollect);
- }
- armies(['Rick Burr arrives',
- 'Fergus: Wexamp, 30245',
- 'Rick Burr: Juard, 50000',
- 'Findlay arrives',
- 'Findlay: Britox, 34540',
- 'Wexamp + 6000',
- 'Juard + 1350',
- 'Britox + 4500',
- 'Porter arrives',
- 'Porter: Legion, 55000',
- 'Legion + 302',
- 'Rick Burr defeated',
- 'Porter: Retix, 3205']);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement