Upgrade
This commit is contained in:
@ -1,3 +1,4 @@
|
||||
import { SoSUtility } from "./sos-utility.js";
|
||||
|
||||
export class SoSFlipDialog extends Dialog {
|
||||
|
||||
@ -11,7 +12,7 @@ export class SoSFlipDialog extends Dialog {
|
||||
},
|
||||
default: 'flip'
|
||||
};
|
||||
super(conf, { classes: ["sosdialog"], width: 800, height: 800 });
|
||||
super(conf, { classes: ["sosdialog"], width: 800 });
|
||||
|
||||
this.flipData = flipData;
|
||||
}
|
||||
@ -21,15 +22,32 @@ export class SoSFlipDialog extends Dialog {
|
||||
this.close();
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
updateScoreBase( ) {
|
||||
let scoreBase = 0;
|
||||
if ( this.flipData.mode == 'skill') {
|
||||
let statKey = $('#statSelect').val();
|
||||
this.flipData.stat = duplicate( this.flipData.statList[ statKey ] );
|
||||
scoreBase = Math.floor(this.flipData.statList[ statKey ].value / 2) + this.flipData.skill.data.value;
|
||||
} else { //Stat mode
|
||||
let statKey = $('#statSelect').val();
|
||||
scoreBase = this.flipData.stat.value;
|
||||
}
|
||||
scoreBase += this.flipData.malusConsequence;
|
||||
$('#score-base').text( scoreBase);
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
async updateFlip( flipData ) {
|
||||
console.log("UPDATE !!!", flipData);
|
||||
//console.log("UPDATE !!!", flipData);
|
||||
$('.view-deck').remove();
|
||||
$("#view-deck").append(await flipData.actor.cardDeck.getDeckHTML());
|
||||
|
||||
$('.view-edge').remove();
|
||||
$("#view-edge").append(await flipData.actor.cardDeck.getEdgeHTML());
|
||||
|
||||
this.updateScoreBase();
|
||||
|
||||
$('.edge-card').click((event) => {
|
||||
let flipData = duplicate(this.flipData);
|
||||
flipData.modifier = $('#modifier').val();
|
||||
@ -45,6 +63,20 @@ export class SoSFlipDialog extends Dialog {
|
||||
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
updateConsequence(event) {
|
||||
this.flipData.consequencesSelected = $('#consequenceSelect').val();
|
||||
let malusConsequence = 0;
|
||||
for (let consequenceId of this.flipData.consequencesSelected) {
|
||||
let consequence = this.flipData.consequencesList.find( item => item._id == consequenceId);
|
||||
console.log(consequence, consequenceId);
|
||||
malusConsequence += SoSUtility.getConsequenceMalus( consequence.data.severity );
|
||||
}
|
||||
$('#consequence-malus').text(malusConsequence);
|
||||
this.flipData.malusConsequence = malusConsequence;
|
||||
this.updateScoreBase();
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
activateListeners(html) {
|
||||
super.activateListeners(html);
|
||||
@ -64,6 +96,14 @@ export class SoSFlipDialog extends Dialog {
|
||||
// Setup everything onload
|
||||
$(function () { onLoad(); });
|
||||
|
||||
html.find('#statSelect').change((event) => {
|
||||
this.updateFlip(dialog.flipData );
|
||||
} );
|
||||
|
||||
html.find('#consequenceSelect').change((event) => {
|
||||
this.updateConsequence( event );
|
||||
} );
|
||||
|
||||
html.find('.class-view-deck').click((event) => {
|
||||
let flipData = duplicate(this.flipData);
|
||||
flipData.modifier = html.find('#modifier').val();
|
||||
|
Reference in New Issue
Block a user