v1.1.0
This commit is contained in:
@@ -19,17 +19,17 @@ export class CombatTracker{
|
||||
update(settings,context){
|
||||
this.active = true;
|
||||
let ctFunction = settings.combatTrackerFunction;
|
||||
if (ctFunction == undefined) ctFunction == 0;
|
||||
if (ctFunction == undefined) ctFunction == 'startStop';
|
||||
|
||||
|
||||
let combat = game.combat;
|
||||
let src = "action/images/black.png";
|
||||
let src = "modules/MaterialDeck/img/black.png";
|
||||
let txt = "";
|
||||
let background = "#000000";
|
||||
let mode = settings.combatTrackerMode;
|
||||
if (mode == undefined) mode = 0;
|
||||
if (mode == undefined) mode = 'combatants';
|
||||
|
||||
if (mode == 0){
|
||||
if (mode == 'combatants'){
|
||||
if (combat != null && combat != undefined && combat.turns.length != 0){
|
||||
let initiativeOrder = combat.turns;
|
||||
let nr = settings.combatantNr - 1;
|
||||
@@ -44,57 +44,57 @@ export class CombatTracker{
|
||||
return;
|
||||
}
|
||||
else {
|
||||
streamDeck.setIcon(0,context,src,background);
|
||||
streamDeck.setIcon(context,src,background);
|
||||
streamDeck.setTitle(txt,context);
|
||||
}
|
||||
}
|
||||
else {
|
||||
streamDeck.setIcon(0,context,src,background);
|
||||
streamDeck.setIcon(context,src,background);
|
||||
streamDeck.setTitle(txt,context);
|
||||
}
|
||||
}
|
||||
else if (mode == 1){
|
||||
else if (mode == 'currentCombatant'){
|
||||
if (combat != null && combat != undefined && combat.started){
|
||||
let tokenId = combat.combatant.tokenId;
|
||||
tokenControl.pushData(tokenId,settings,context);
|
||||
}
|
||||
else {
|
||||
streamDeck.setIcon(0,context,src,background);
|
||||
streamDeck.setIcon(context,src,background);
|
||||
streamDeck.setTitle(txt,context);
|
||||
}
|
||||
}
|
||||
else if (mode == 2){
|
||||
else if (mode == 'function'){
|
||||
|
||||
if (ctFunction == 0) {
|
||||
if (ctFunction == 'startStop') {
|
||||
if (combat == null || combat == undefined || combat.combatants.length == 0) {
|
||||
src = "action/images/combattracker/startcombat.png";
|
||||
src = "modules/MaterialDeck/img/combattracker/startcombat.png";
|
||||
background = "#000000";
|
||||
}
|
||||
else {
|
||||
if (combat.started == false) {
|
||||
src = "action/images/combattracker/startcombat.png";
|
||||
src = "modules/MaterialDeck/img/combattracker/startcombat.png";
|
||||
background = "#008000";
|
||||
}
|
||||
else {
|
||||
src = "action/images/combattracker/stopcombat.png";
|
||||
src = "modules/MaterialDeck/img/combattracker/stopcombat.png";
|
||||
background = "#FF0000";
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (ctFunction == 1) {
|
||||
src = "action/images/combattracker/nextturn.png";
|
||||
else if (ctFunction == 'nextTurn') {
|
||||
src = "modules/MaterialDeck/img/combattracker/nextturn.png";
|
||||
}
|
||||
else if (ctFunction == 2) {
|
||||
src = "action/images/combattracker/previousturn.png";
|
||||
else if (ctFunction == 'prevTurn') {
|
||||
src = "modules/MaterialDeck/img/combattracker/previousturn.png";
|
||||
}
|
||||
else if (ctFunction == 3) {
|
||||
src = "action/images/combattracker/nextround.png";
|
||||
else if (ctFunction == 'nextRound') {
|
||||
src = "modules/MaterialDeck/img/combattracker/nextround.png";
|
||||
}
|
||||
else if (ctFunction == 4) {
|
||||
src = "action/images/combattracker/previousround.png";
|
||||
else if (ctFunction == 'prevRound') {
|
||||
src = "modules/MaterialDeck/img/combattracker/previousround.png";
|
||||
}
|
||||
else if (ctFunction == 5){
|
||||
src = "action/images/black.png";
|
||||
else if (ctFunction == 'turnDisplay'){
|
||||
src = "modules/MaterialDeck/img/black.png";
|
||||
let round = 0;
|
||||
let turn = 0;
|
||||
if (combat != null && combat != undefined && combat.started != false){
|
||||
@@ -105,21 +105,50 @@ export class CombatTracker{
|
||||
if (txt != "") txt += "\n";
|
||||
if (settings.displayTurn) txt += "Turn\n"+turn;
|
||||
}
|
||||
streamDeck.setIcon(0,context,src,background);
|
||||
streamDeck.setIcon(context,src,background);
|
||||
streamDeck.setTitle(txt,context);
|
||||
}
|
||||
}
|
||||
|
||||
keyPress(settings,context){
|
||||
let mode = parseInt(settings.combatTrackerMode);
|
||||
if (isNaN(mode)) mode = 0;
|
||||
let mode = settings.combatTrackerMode;
|
||||
if (mode == undefined) mode = 'combatants';
|
||||
|
||||
if (mode < 2) {
|
||||
if (mode == 'function'){
|
||||
let combat = game.combat;
|
||||
if (combat == null || combat == undefined) return;
|
||||
|
||||
let ctFunction = settings.combatTrackerFunction;
|
||||
if (ctFunction == undefined) ctFunction == 'startStop';
|
||||
if (ctFunction == 'startStop'){
|
||||
let src;
|
||||
let background;
|
||||
if (game.combat.started){
|
||||
game.combat.endCombat();
|
||||
src = "modules/MaterialDeck/img/combattracker/startcombat.png";
|
||||
background = "#000000";
|
||||
}
|
||||
else {
|
||||
game.combat.startCombat();
|
||||
src = "modules/MaterialDeck/img/combattracker/stopcombat.png";
|
||||
background = "#FF0000";
|
||||
}
|
||||
streamDeck.setIcon(context,src,background);
|
||||
return;
|
||||
}
|
||||
if (game.combat.started == false) return;
|
||||
|
||||
if (ctFunction == 'nextTurn') game.combat.nextTurn();
|
||||
else if (ctFunction == 'prevTurn') game.combat.previousTurn();
|
||||
else if (ctFunction == 'nextRound') game.combat.nextRound();
|
||||
else if (ctFunction == 'prevRound') game.combat.previousRound();
|
||||
}
|
||||
else {
|
||||
let onClick = settings.onClick;
|
||||
if (onClick == undefined) onClick = 0;
|
||||
if (onClick == undefined) onClick = 'doNothing';
|
||||
let tokenId;
|
||||
let combat = game.combat;
|
||||
if (mode == 0) {
|
||||
if (mode == 'combatants') {
|
||||
if (combat != null && combat != undefined && combat.turns.length != 0){
|
||||
let initiativeOrder = combat.turns;
|
||||
let nr = settings.combatantNr - 1;
|
||||
@@ -132,63 +161,38 @@ export class CombatTracker{
|
||||
tokenId = combatant.tokenId;
|
||||
}
|
||||
}
|
||||
else if (mode == 1)
|
||||
else if (mode == 'currentCombatant')
|
||||
if (combat != null && combat != undefined && combat.started)
|
||||
tokenId = combat.combatant.tokenId;
|
||||
|
||||
let token
|
||||
if (canvas.tokens.children[0] != undefined) token = canvas.tokens.children[0].children.find(p => p.id == tokenId);
|
||||
if (token == undefined) return;
|
||||
if (onClick == 0) //Do nothing
|
||||
if (onClick == 'doNothing') //Do nothing
|
||||
return;
|
||||
else if (onClick == 1){ //select token
|
||||
else if (onClick == 'select'){ //select token
|
||||
token.control();
|
||||
}
|
||||
else if (onClick == 2){ //center on token
|
||||
else if (onClick == 'center'){ //center on token
|
||||
let location = token.getCenter(token.x,token.y);
|
||||
canvas.animatePan(location);
|
||||
}
|
||||
else if (onClick == 3){ //center on token and select
|
||||
else if (onClick == 'centerSelect'){ //center on token and select
|
||||
let location = token.getCenter(token.x,token.y);
|
||||
canvas.animatePan(location);
|
||||
token.control();
|
||||
}
|
||||
else if (onClick == 4){ //Open character sheet
|
||||
token.actor.sheet.render(true);
|
||||
else if (onClick == 'charSheet'){ //Open character sheet
|
||||
const element = document.getElementById(token.actor.sheet.id);
|
||||
if (element == null) token.actor.sheet.render(true);
|
||||
else token.actor.sheet.close();
|
||||
}
|
||||
else { //Open token config
|
||||
token.sheet._render(true);
|
||||
else if (onClick == 'tokenConfig'){ //Open token config
|
||||
const element = document.getElementById(token.sheet.id);
|
||||
if (element == null) token.sheet.render(true);
|
||||
else token.sheet.close();
|
||||
}
|
||||
}
|
||||
else if (mode == 2){
|
||||
let combat = game.combat;
|
||||
if (combat == null || combat == undefined) return;
|
||||
|
||||
let ctFunction = settings.combatTrackerFunction;
|
||||
if (ctFunction == undefined) ctFunction == 0;
|
||||
|
||||
if (ctFunction == 0){
|
||||
let src;
|
||||
let background;
|
||||
if (game.combat.started){
|
||||
game.combat.endCombat();
|
||||
src = "action/images/combattracker/startcombat.png";
|
||||
background = "#000000";
|
||||
}
|
||||
else {
|
||||
game.combat.startCombat();
|
||||
src = "action/images/combattracker/stopcombat.png";
|
||||
background = "#FF0000";
|
||||
}
|
||||
streamDeck.setIcon(context,src,background);
|
||||
return;
|
||||
}
|
||||
if (game.combat.started == false) return;
|
||||
|
||||
if (ctFunction == 1) game.combat.nextTurn();
|
||||
else if (ctFunction == 2) game.combat.previousTurn();
|
||||
else if (ctFunction == 3) game.combat.nextRound();
|
||||
else if (ctFunction == 4) game.combat.previousRound();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user