Merge remote-tracking branch 'upstream/master'

This commit is contained in:
jjayers99
2023-06-07 09:09:21 -04:00
9 changed files with 106 additions and 12 deletions

View File

@@ -268,12 +268,6 @@ public class TokenAi extends SpellAbilityAi {
}
}
if (mandatory) {
// Necessary because the AI goes into this method twice, first to set up targets (with mandatory=true)
// and then the second time to confirm the trigger (where mandatory may be set to false).
return true;
}
Card actualToken = spawnToken(ai, sa);
String tokenPower = sa.getParamOrDefault("TokenPower", actualToken.getBasePowerString());
String tokenToughness = sa.getParamOrDefault("TokenToughness", actualToken.getBaseToughnessString());
@@ -289,11 +283,17 @@ public class TokenAi extends SpellAbilityAi {
sa.setXManaCostPaid(x);
}
}
if (x <= 0) {
if (x <= 0 && !mandatory) {
return false;
}
}
if (mandatory) {
// Necessary because the AI goes into this method twice, first to set up targets (with mandatory=true)
// and then the second time to confirm the trigger (where mandatory may be set to false).
return true;
}
if ("OnlyOnAlliedAttack".equals(sa.getParam("AILogic"))) {
Combat combat = ai.getGame().getCombat();
return combat != null && combat.getAttackingPlayer() != null

View File

@@ -3,6 +3,7 @@ package forge.adventure.scene;
import forge.adventure.data.AdventureEventData;
import forge.adventure.stage.GameHUD;
import forge.screens.FScreen;
import forge.sound.MusicPlaylist;
import forge.sound.SoundSystem;
/**
@@ -32,7 +33,8 @@ public class DraftScene extends ForgeScene {
@Override
public void enter() {
GameHUD.getInstance().getTouchpad().setVisible(false);
SoundSystem.instance.pause();
GameHUD.getInstance().pauseMusic();
SoundSystem.instance.setBackgroundMusic(MusicPlaylist.MENUS);
screen = null;
getScreen();
screen.refresh();

View File

@@ -13,12 +13,14 @@ import forge.Forge;
import forge.adventure.character.EnemySprite;
import forge.adventure.data.*;
import forge.adventure.player.AdventurePlayer;
import forge.adventure.stage.GameHUD;
import forge.adventure.stage.IAfterMatch;
import forge.adventure.stage.WorldStage;
import forge.adventure.util.*;
import forge.adventure.world.WorldSave;
import forge.gui.FThreads;
import forge.screens.TransitionScreen;
import forge.sound.MusicPlaylist;
import forge.sound.SoundSystem;
import forge.util.Callback;
import forge.util.MyRandom;
@@ -378,7 +380,8 @@ public class EventScene extends MenuScene implements IAfterMatch {
@Override
public void enter() {
super.enter();
SoundSystem.instance.pause();
GameHUD.getInstance().pauseMusic();
SoundSystem.instance.setBackgroundMusic(MusicPlaylist.MENUS);
scrollContainer.clear();
if (money != null) {

View File

@@ -12,6 +12,7 @@ import forge.adventure.util.AdventureEventController;
import forge.adventure.util.Controls;
import forge.adventure.util.Current;
import forge.adventure.world.WorldSave;
import forge.sound.MusicPlaylist;
import forge.sound.SoundSystem;
/**
@@ -99,7 +100,8 @@ public class InnScene extends UIScene {
public void enter() {
super.enter();
refreshStatus();
SoundSystem.instance.pause();
GameHUD.getInstance().pauseMusic();
SoundSystem.instance.setBackgroundMusic(MusicPlaylist.TOWN);
}
private void refreshStatus(){

View File

@@ -17,6 +17,7 @@ import forge.adventure.character.EnemySprite;
import forge.adventure.data.EnemyData;
import forge.adventure.data.WorldData;
import forge.adventure.player.AdventurePlayer;
import forge.adventure.stage.GameHUD;
import forge.adventure.util.Config;
import forge.adventure.util.Controls;
import forge.adventure.util.Current;
@@ -31,6 +32,8 @@ import forge.localinstance.achievements.CardActivationAchievements;
import forge.localinstance.achievements.PlaneswalkerAchievements;
import forge.model.FModel;
import forge.player.GamePlayerUtil;
import forge.sound.MusicPlaylist;
import forge.sound.SoundSystem;
import org.apache.commons.lang3.tuple.Pair;
import java.util.Map;
@@ -186,6 +189,10 @@ public class PlayerStatisticScene extends UIScene {
@Override
public void enter() {
super.enter();
GameHUD.getInstance().pauseMusic();
SoundSystem.instance.setBackgroundMusic(MusicPlaylist.MENUS);
achievementContainer.clear();
updateAchievements(cardActivation, true);
updateAchievements(planeswalkers, true);

View File

@@ -0,0 +1,35 @@
sandwurm2.png
size: 160,64
format: RGBA8888
filter: Nearest,Nearest
repeat: none
Avatar
xy: 0, 0
size: 32,32
Idle
xy: 0,37
size:32,18
Attack
xy: 32, 5
size: 32,18
Attack
xy: 64, 5
size: 32,18
Attack
xy: 96, 5
size: 32,18
Attack
xy: 128, 5
size: 32,18
Death
xy: 32, 37
size: 32,18
Death
xy: 64, 37
size: 32,18
Death
xy: 96, 37
size: 32,18
Death
xy: 128, 37
size: 32,18

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

@@ -8916,6 +8916,50 @@
"IdentityBlack"
]
},
{
"name": "Greater Sandwurm",
"sprite": "sprites/monsters/sandwurm2.atlas",
"deck": [
"decks/monsters/sandwurm.dck"
],
"ai": "",
"spawnRate": 1,
"difficulty": 0.1,
"speed": 0,
"life": 12,
"rewards": [
{
"type": "deckCard",
"probability": 1,
"count": 2,
"addMaxCount": 4
},
{
"type": "gold",
"probability": 0.7,
"count": 10,
"addMaxCount": 90
},
{
"type": "card",
"probability": 0.5,
"count": 3,
"colors": [
"White"
],
"rarity": [
"Rare"
]
}
],
"colors": "G",
"questTags": [
"Wurm",
"Nature",
"Subterranean",
"IdentityWhite"
]
},
{
"name": "Greater Zombie",
"sprite": "sprites/unholy/zombie.atlas",

View File

@@ -60,6 +60,7 @@
"Owl",
"Raven",
"Runelord",
"Greater Sandwurm",
"Scorpion",
"Scarab",
"Stray Cat",