-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathcharSheetAdvantage.js
35 lines (32 loc) · 1.44 KB
/
charSheetAdvantage.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
const advantages = {};
const advantagesCategories = {};
function addAdvantage({name, displayName, cost, description, advantageType, category, parent, type = "BOOL"}) {
let advantage;
switch(type) {
case "BOOL":
advantage = new CharSheetAdvantageBool({name, displayName, cost, description, type});
advantage.input = $('<input>', {"type": "checkbox", "data-advantage": advantage.name, "id": "adv-" + advantage.name});
break;
case "LEVEL":
advantage = new CharSheetAdvantageLevel({name, displayName, cost, description, type});
advantage.input = $('<input>', {"type": "text", "data-advantage": advantage.name, "id": "adv-" + advantage.name, "readonly": true, 'class': 'mini-input input-skill'}).val('-');
break;
case "SELECT":
advantage = new CharSheetAdvantageSelect({name, displayName, type, description});
advantage.wrapper = $('<div>', {'class': 'advantage-wrapper'});
break;
case "OPTION":
advantage = new CharSheetAdvantageBool({name, displayName, cost, description, type, parent});
advantage.input = $('<input>', {"type": "checkbox", "data-advantage": advantage.name, "id": "adv-" + advantage.name});
break;
break;
}
if (advantage)
advantages[advantage.name] = advantage;
return advantage;
}
const setAdvantageCat = ({advantage, cat}) => {
if (advantages[advantage] && advantagesCategories[cat]) {
advantagesCategories[cat].advantages[advantage] = advantages[advantage];
}
}