Expand anti-cheese.

This commit is contained in:
Jetz
2025-11-06 09:30:27 -05:00
parent 48be3406c7
commit f27eb1042f

View File

@@ -450,7 +450,9 @@ public class EnemySprite extends CharacterSprite implements Steerable<Vector2> {
.filter(paperCard -> !paperCard.isVeryBasicLand()) .filter(paperCard -> !paperCard.isVeryBasicLand())
.collect(Collectors.toList()); .collect(Collectors.toList());
if (paperCardList.size() < 6) { int uniqueRules = paperCardList.stream().map(PaperCard::getRules).collect(Collectors.toSet()).size();
if (uniqueRules < 4 || paperCardList.size() < 10) {
// Player trying to cheese doppleganger and farm cards. Sorry, the fun police have arrived // Player trying to cheese doppleganger and farm cards. Sorry, the fun police have arrived
// Static rewards of 199 GP, 9 Shards, and 1 Cheese Stands Alone // Static rewards of 199 GP, 9 Shards, and 1 Cheese Stands Alone
rewards.add(new Reward(199)); rewards.add(new Reward(199));
@@ -466,7 +468,7 @@ public class EnemySprite extends CharacterSprite implements Steerable<Vector2> {
if (AdventurePlayer.current().isFantasyMode()) { if (AdventurePlayer.current().isFantasyMode()) {
//random uncommons from deck //random uncommons from deck
List<PaperCard> uncommonCards = paperCardList.stream() List<PaperCard> uncommonCards = paperCardList.stream()
.filter(paperCard -> CardRarity.Uncommon.equals(paperCard.getRarity()) || CardRarity.Special.equals(paperCard.getRarity())) .filter(paperCard -> paperCard.getRarity() == CardRarity.Uncommon || paperCard.getRarity() == CardRarity.Special)
.collect(Collectors.toList()); .collect(Collectors.toList());
if (!uncommonCards.isEmpty()) { if (!uncommonCards.isEmpty()) {
rewards.add(new Reward(Aggregates.random(uncommonCards))); rewards.add(new Reward(Aggregates.random(uncommonCards)));
@@ -474,7 +476,7 @@ public class EnemySprite extends CharacterSprite implements Steerable<Vector2> {
} }
//random commons from deck //random commons from deck
List<PaperCard> commmonCards = paperCardList.stream() List<PaperCard> commmonCards = paperCardList.stream()
.filter(paperCard -> CardRarity.Common.equals(paperCard.getRarity())) .filter(paperCard -> paperCard.getRarity() == CardRarity.Common)
.collect(Collectors.toList()); .collect(Collectors.toList());
if (!commmonCards.isEmpty()) { if (!commmonCards.isEmpty()) {
rewards.add(new Reward(Aggregates.random(commmonCards))); rewards.add(new Reward(Aggregates.random(commmonCards)));
@@ -483,7 +485,7 @@ public class EnemySprite extends CharacterSprite implements Steerable<Vector2> {
} }
//random rare from deck //random rare from deck
List<PaperCard> rareCards = paperCardList.stream() List<PaperCard> rareCards = paperCardList.stream()
.filter(paperCard -> CardRarity.Rare.equals(paperCard.getRarity()) || CardRarity.MythicRare.equals(paperCard.getRarity())) .filter(paperCard -> paperCard.getRarity() == CardRarity.Rare || paperCard.getRarity() == CardRarity.MythicRare)
.collect(Collectors.toList()); .collect(Collectors.toList());
if (!rareCards.isEmpty()) { if (!rareCards.isEmpty()) {
rewards.add(new Reward(Aggregates.random(rareCards))); rewards.add(new Reward(Aggregates.random(rareCards)));