Manage luck with Edge
This commit is contained in:
@@ -76,6 +76,13 @@ export class SoSCardDeck {
|
||||
}
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
discardEdge( cardName ) {
|
||||
let newEdge = this.data.cardEdge.filter( card => card.cardName != cardName);
|
||||
this.data.cardEdge = newEdge; // New edge list
|
||||
this.data.discard.push( { cardName: cardName }); // And push in the discard pile
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
drawEdge( edgeNumber = 1 ) {
|
||||
for (let i=0; i<edgeNumber; i++) {
|
||||
@@ -159,6 +166,10 @@ export class SoSCardDeck {
|
||||
flipData.isJoker = false;
|
||||
flipData.fullTrump = false;
|
||||
|
||||
if ( flipData.edgeLuck ) {
|
||||
flipData.cardOrigin == "Deck"; // Force Deck
|
||||
}
|
||||
|
||||
// Select card origin
|
||||
if ( flipData.cardOrigin == "Deck") {
|
||||
flipData.cardSlot[0].card1 = this.drawFromDeck();
|
||||
@@ -190,7 +201,7 @@ export class SoSCardDeck {
|
||||
|
||||
// Trump check
|
||||
flipData.cardSlot[0].cardsuit = cardsuit;
|
||||
if ( ! flipData.isJoker && cardsuit == flipData.stat.cardsuit ) {
|
||||
if ( !flipData.isJoker && ( cardsuit == flipData.stat.cardsuit || flipData.edgeLuck) ) {
|
||||
// This is a trump !
|
||||
flipData.cardSlot[1] = { total: 0 };
|
||||
flipData.isTrump = true;
|
||||
@@ -293,6 +304,15 @@ export class SoSCardDeck {
|
||||
return html;
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
getEdgeHTMLForFlip( ) {
|
||||
let html = "";
|
||||
for (let edge of this.data.cardEdge) {
|
||||
html += `<a class='view-edge'><img class='flip-card edge-card' data-edge-card='${edge.cardName}' src='systems/foundryvtt-shadows-over-sol/img/cards/${edge.cardName}.webp' /></a>`
|
||||
}
|
||||
return html;
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
getDiscardTopHTML( ) {
|
||||
let html = "";
|
||||
|
||||
Reference in New Issue
Block a user