Merge pull request #10407 from Darth-John/BESM4eExtras_Dev
[BESM4eExtras] v1.7.2 - Open Lock Bug Fix
This commit is contained in:
@@ -30,7 +30,7 @@
|
||||
<div class="row padt padb"><h3 class="col-1 center border"><span>Sheet Options</span></h3></div>
|
||||
<div class="row center padb">
|
||||
<div class="col-1-5 padr"><h4 class="center border"><span>Sheet Version
|
||||
<input type="text" class="center" name="attr_version" value="1.7.1" readonly />
|
||||
<input type="text" class="center" name="attr_version" value="1.7.3" readonly />
|
||||
<input type="hidden" name="attr_global_version" value="0.0.0" readonly />
|
||||
</span></h4></div>
|
||||
<div class="col-1-5 padr"><h4 class="center border"><span>Sheet Type
|
||||
@@ -2953,7 +2953,7 @@
|
||||
<div class="flex-container-evenlyspace padb">
|
||||
<div class="flex-1">
|
||||
<div>
|
||||
<input type="checkbox" class="block-switch" name="attr_options" value="1" />
|
||||
<input type="checkbox" class="block-switch" name="attr_options" value="1" checked />
|
||||
<div class="block-a"></div>
|
||||
<div class="block-b">
|
||||
<div class="row">
|
||||
@@ -7802,46 +7802,57 @@
|
||||
}
|
||||
}
|
||||
|
||||
function doUpgrade(value, sheetdb, skilltempIDs, setObj){
|
||||
const sheet_version = value.version.split('.').map(Number);
|
||||
const global_version = value.global_version.split('.').map(Number);
|
||||
//clog(2, {}, 'sheet_version =', sheet_version);
|
||||
function doUpgrade(value, attrIDs, setObj){
|
||||
clog(2, {}, `global_version =`, value.global_version, 'doUpgrade()');
|
||||
clog(2, {}, 'sheet_version =', value.version);
|
||||
const sheet_version = value.version;
|
||||
let global_version = value.global_version.split('.').map(Number);
|
||||
const major_global_version = parseInt(global_version.shift());
|
||||
const minor_global_version = parseFloat(global_version.join('.'));
|
||||
//clog(2, {}, 'global_version =', global_version);
|
||||
clog(2, {}, 'sheet_version =', value.version, 'doUpgrade()');
|
||||
if (global_version[0] <= 1 && global_version[1] <= 2 && global_version[2] < 2 || value.upgraded_1_2_2 === true) {
|
||||
//clog(2, {}, 'major_global_version =', major_global_version);
|
||||
//clog(2, {}, 'minor_global_version =', minor_global_version);
|
||||
//const isLesserThan122 = global_version[0] <= 1 && global_version[1] <= 2 && global_version[2] < 2 ?
|
||||
const isLesserThan122 = major_global_version <= 1 && minor_global_version < 2.2 ?
|
||||
true : false;
|
||||
//clog(2, {}, 'isLesserThan122 =', isLesserThan122);
|
||||
if (isLesserThan122) {
|
||||
upgradeTo_1_2_2(value, setObj);
|
||||
}
|
||||
if (global_version[0] <= 1 && global_version[1] <= 3 && global_version[2] < 1 || value.upgraded_1_3_1 === true) {
|
||||
//const isLesserThan131 = global_version[0] <= 1 && global_version[1] <= 3 && global_version[2] < 1 ?
|
||||
const isLesserThan131 = major_global_version <= 1 && minor_global_version < 3.1 ?
|
||||
true : false;
|
||||
//clog(2, {}, 'isLesserThan131 =', isLesserThan131);
|
||||
if (isLesserThan131) {
|
||||
upgradeTo_1_3_1(value, setObj);
|
||||
}
|
||||
if (global_version[0] <= 1 && global_version[1] < 5 || value.upgraded_1_5_0 === true) {
|
||||
upgradeTo_1_5_0(value, setObj);
|
||||
//const isLesserThan150 = global_version[0] <= 1 && global_version[1] < 5 ?
|
||||
const isLesserThan150 = major_global_version <= 1 && minor_global_version < 5.0 ?
|
||||
true : false;
|
||||
//clog(2, {}, 'isLesserThan150 =', isLesserThan150);
|
||||
if (isLesserThan150) {
|
||||
upgradeTo_1_5_0(setObj);
|
||||
}
|
||||
/*if (global_version[0] === 1 && global_version[1] < 6) {
|
||||
upgradeTo_1_6_0(value, sheetdb, skilltempIDs, setObj);
|
||||
}*/
|
||||
setObj.global_version = sheet_version.join('.');
|
||||
clog(2, {}, `global_version =`, setObj.global_version);
|
||||
//const isLesserThan172 = global_version[0] <= 1 && global_version[1] <= 7 && global_version[2] < 2 ?
|
||||
const isLesserThan172 = major_global_version <= 1 && minor_global_version < 7.2 ?
|
||||
true : false;
|
||||
//clog(2, {}, 'isLesserThan172 =', isLesserThan172);
|
||||
if (isLesserThan172) {
|
||||
upgradeTo_1_7_2(attrIDs, setObj);
|
||||
}
|
||||
setObj.global_version = sheet_version;
|
||||
}
|
||||
|
||||
function upgradeTo_1_2_2(value, setObj){
|
||||
/*if(value.upgraded_1_2_2 == true){
|
||||
return;
|
||||
}*/
|
||||
const oldname = value.name || '';
|
||||
const newname = value.charactername || '';
|
||||
if(oldname.length > 0 && newname.length == 0){
|
||||
setObj.charactername = oldname;
|
||||
}
|
||||
//setObj.upgraded_1_2_2 = true;
|
||||
//value.global_version = '1.2.2';
|
||||
clog(2, {}, 'upgraded to 1.2.2');
|
||||
}
|
||||
|
||||
function upgradeTo_1_3_1(value, setObj){
|
||||
/*if(value.upgraded_1_3_1 == true){
|
||||
return;
|
||||
}else{*/
|
||||
if (value.attrdb !== undefined) {
|
||||
const attrdb = _.isString(value.attrdb) ?
|
||||
JSON.parse(value.attrdb) : value.attrdb;
|
||||
@@ -7852,16 +7863,10 @@
|
||||
setObj[`repeating_attr_${rowID}_rank`] = rank;
|
||||
});
|
||||
}
|
||||
//setObj.upgraded_1_3_1 = true;
|
||||
//sheetdb.global_version = '1.3.1';
|
||||
//}
|
||||
clog(2, {}, 'upgraded to 1.3.1');
|
||||
}
|
||||
|
||||
function upgradeTo_1_5_0(value, setObj){
|
||||
/*if(value.upgraded_1_5_0 == true){
|
||||
return;
|
||||
}else{*/
|
||||
function upgradeTo_1_5_0(setObj){
|
||||
const limiters_array = ['activation','ammo','assisted','backblast','backlash','bothdirections','broadcategory','capped','category','category','categoty','charges','concentration','consumable','delay','dependent','deplete','detectable','emotional','environmental','equipment','exclusive','fieldless','focused','focuseddamage','gap','glide','group','hands','imbue','impacting','inaccurate','ingest','intensity','internal','irreversible','localized','maintain','maximum','nonadjacent','nonpenetrating','nostun','object','permanent','proportionaldamage','recovery','roadbound','semipermanent','skillflux','skim','specialized','specificattribute','spread','stoppable','targeteddamage','toxic','unique','unpredictable','unreliable'];
|
||||
getSectionIDs('attr', attrIDs => {
|
||||
const attr_customization_array = _.map(attrIDs, id => {
|
||||
@@ -7888,30 +7893,28 @@
|
||||
})
|
||||
});
|
||||
});
|
||||
//setObj.upgraded_1_5_0 = true;
|
||||
//sheetdb.global_version = '1.5.0';
|
||||
//}
|
||||
clog(2, {}, 'upgraded to 1.5.0');
|
||||
}
|
||||
|
||||
function upgradeTo_1_6_0(value, sheetdb, skilltempIDs, setObj){
|
||||
/*value.attrdb !== undefined ?
|
||||
_.isString(value.attrdb) ?
|
||||
sheetdb.attrdb = JSON.parse(value.attrdb) :
|
||||
sheetdb.attrdb = value.attrdb :
|
||||
createAttrdbJSON(sheetdb);*/
|
||||
const skillmap = _.chain(skilltempIDs)
|
||||
.map( id => {
|
||||
return { [id]: value[`repeating_skilltemplate_${id}_label`] };
|
||||
})
|
||||
.compact()
|
||||
.value();
|
||||
//console.log(`on open skillmap = ${skillmap}`);
|
||||
sheetdb.skillmap = skillmap;
|
||||
//sheetdb.global_version = '1.6.0';
|
||||
clog(2, {}, 'upgraded to 1.6.0');
|
||||
}
|
||||
|
||||
function upgradeTo_1_7_2(attrIDs, setObj) {
|
||||
_.each(attrIDs, id => {
|
||||
setObj[`repeating_attr_${id}_lock`] = "1";
|
||||
setObj[`repeating_attr_${id}_options`] = 0;
|
||||
});
|
||||
clog(2, {}, 'upgraded to 1.7.2');
|
||||
}
|
||||
|
||||
/** Build UI Functions **/
|
||||
|
||||
function buildSizeUI(sizes, setObj) {
|
||||
@@ -9206,8 +9209,10 @@
|
||||
clog(debug, timer, 'tab =', tab, 'setGroupMembership()');
|
||||
const currGroup = tab.replace(/attrgroup/g, '');
|
||||
clog(debug, timer, 'currGroup =', currGroup);
|
||||
setObj[`${source}_new`] = 0;
|
||||
setObj[`${source}_group`] = currGroup;
|
||||
//setObj[`${source}_new`] = 0;
|
||||
//setObj[`${source}_group`] = currGroup;
|
||||
writeValues(debug, timer, value, `${source}_new`, 0, setObj);
|
||||
writeValues(debug, timer, value, `${source}_group`, currGroup, setObj);
|
||||
}
|
||||
|
||||
function resetOnActive(debug, timer, eventInfo, value, match, rowID, setObj) {
|
||||
@@ -13664,7 +13669,7 @@
|
||||
setObj.stat_total_body = '0';
|
||||
setObj.stat_total_mind = '0';
|
||||
setObj.stat_total_soul = '0';
|
||||
doUpgrade(value, sheetdb, skilltempIDs, setObj);
|
||||
doUpgrade(value, attrIDs, setObj);
|
||||
}else{
|
||||
const skillmap = _.chain(skilltempIDs)
|
||||
.map( id => {
|
||||
@@ -13673,7 +13678,7 @@
|
||||
.compact()
|
||||
.value();
|
||||
sheetdb.skillmap = skillmap;
|
||||
doUpgrade(value, sheetdb, skilltempIDs, setObj);
|
||||
doUpgrade(value, attrIDs, setObj);
|
||||
}
|
||||
setObj.sheetdb = JSON.stringify(sheetdb);
|
||||
clog(3, timer, 'Ready to write setObj to cache:', setObj, 'setAttrs()');
|
||||
@@ -13796,8 +13801,9 @@
|
||||
|
||||
switch (sectionName) {
|
||||
case `attr`:
|
||||
const isNew = parseInt(value[`${source}_new`]) || 1;
|
||||
if(isNew === 1) {
|
||||
const isNew = parseInt(value[`${source}_new`]) === 0 ? false : true;
|
||||
clog(debug, timer, `${source}_new =`, value[`${source}_new`], 'Attribute is new?');
|
||||
if(isNew) {
|
||||
setGroupMembership(debug, timer, value, setObj, source, sectionName);
|
||||
attrIDs.indexOf(rowID) === -1 ? attrIDs.push(rowID) : false;
|
||||
setDepleteRules(debug, timer, value, rowID, setObj);
|
||||
@@ -13853,9 +13859,8 @@
|
||||
break;
|
||||
case `lock`:
|
||||
if (resetOnActive(debug, timer, eventInfo, value, match, rowID, setObj)) return;
|
||||
if (eventInfo.newValue == "1") setObj[`${source}_options`] = 0;
|
||||
const state = parseInt(value[`${source}_options`]) > 0 ? 0: 1;
|
||||
setObj[`${source}_options`] = state;
|
||||
const state = eventInfo.newValue === "1" ? 0 : 1;
|
||||
writeValues(debug, timer, value, `${source}_options`, state, setObj);
|
||||
break;
|
||||
case 'defect':
|
||||
resetRank(value, rowID, setObj);
|
||||
|
||||
Reference in New Issue
Block a user