mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-15 02:08:00 +00:00
Merge remote-tracking branch 'origin/deckgenimprovements' into deckgenimprovements
# Conflicts: # forge-gui/src/main/java/forge/deck/CardRelationMatrixGenerator.java # forge-gui/src/main/java/forge/limited/CardThemedDeckBuilder.java
This commit is contained in:
@@ -25,8 +25,8 @@ import forge.item.IPaperCard;
|
||||
|
||||
public class DeckColors {
|
||||
|
||||
private ColorSet chosen;
|
||||
private int colorMask;
|
||||
protected ColorSet chosen;
|
||||
protected int colorMask;
|
||||
|
||||
public int MAX_COLORS = 2;
|
||||
|
||||
|
||||
@@ -1,5 +1,9 @@
|
||||
package forge.limited;
|
||||
|
||||
import forge.card.ColorSet;
|
||||
import forge.card.MagicColor;
|
||||
import forge.item.IPaperCard;
|
||||
|
||||
/**
|
||||
* Created by maustin on 11/05/2017.
|
||||
*/
|
||||
@@ -7,4 +11,26 @@ public class FullDeckColors extends DeckColors {
|
||||
public FullDeckColors(){
|
||||
MAX_COLORS = 5;
|
||||
}
|
||||
|
||||
public void addColorsOf(final IPaperCard pickedCard) {
|
||||
final ColorSet colorsCanAdd = chosen.inverse();
|
||||
final ColorSet toAdd = colorsCanAdd.getSharedColors(pickedCard.getRules().getColorIdentity());
|
||||
|
||||
int cntColorsAssigned = getChosenColors().countColors();
|
||||
final boolean haveSpace = cntColorsAssigned < MAX_COLORS;
|
||||
if (!haveSpace || toAdd.isColorless()) {
|
||||
return;
|
||||
}
|
||||
|
||||
for (final byte color : MagicColor.WUBRG) {
|
||||
if (toAdd.hasAnyColor(color)) {
|
||||
colorMask |= color;
|
||||
chosen = null; // invalidate color set
|
||||
cntColorsAssigned++;
|
||||
}
|
||||
if (cntColorsAssigned >= MAX_COLORS) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user