Skip to content

Commit

Permalink
Bug fixes and Growth Punch nerf
Browse files Browse the repository at this point in the history
Growth Punch now starts at 6 damage but does not provide Block (which still starts at 1) until upgraded.  It only gains +1 to each when used, even when upgraded.  This card was just too 'swing' in terms of value, making it an instapick in Act 1 and an instant target for first upgrade, and could get into bonkers territory with the +2 upgrade (50+ damage/block for 1, seems fine...) .  It probably should still be picked as early as possible, but buffing up the base damage to at least equal a Strike may make it more pickable as the floors progress.  It should still be a high upgrade target, but isn't as immediately necessary, not until you really start needing it to provide Block.

Fixed orbs moving when the player avatar moved.

Fixed Duplicated Form causing orbs to start spawning in staggered, offset locations

Fixed (???) Licking Slimes losing their purple text... really tired of this bug.
  • Loading branch information
mikemayhemdev committed Dec 26, 2018
1 parent ee420e7 commit 1aebb19
Show file tree
Hide file tree
Showing 8 changed files with 30 additions and 24 deletions.
Binary file modified SlimeboundMod.jar
Binary file not shown.
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

<groupId>slimebound</groupId>
<artifactId>slimebound</artifactId>
<version>v0.11.2</version>
<version>v0.11.3</version>
<packaging>jar</packaging>

<name>Slimebound Mod</name>
Expand Down
8 changes: 4 additions & 4 deletions src/main/java/slimebound/cards/FormABlockade.java
Original file line number Diff line number Diff line change
Expand Up @@ -69,16 +69,16 @@ public void use(AbstractPlayer p, AbstractMonster m) {
o = orbs.get(AbstractDungeon.cardRng.random(orbs.size() - 1));

switch (o) {
case 0:
case 1:
AbstractDungeon.actionManager.addToBottom(new SlimeSpawnAction(new AttackSlime(), false, true));
break;
case 1:
case 2:
AbstractDungeon.actionManager.addToBottom(new SlimeSpawnAction(new ShieldSlime(), false, true));
break;
case 2:
case 3:
AbstractDungeon.actionManager.addToBottom(new SlimeSpawnAction(new SlimingSlime(), false, true));
break;
case 3:
case 4:
AbstractDungeon.actionManager.addToBottom(new SlimeSpawnAction(new PoisonSlime(), false, true));
break;
}
Expand Down
16 changes: 9 additions & 7 deletions src/main/java/slimebound/cards/GrowthPunch.java
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ public GrowthPunch() {

this.exhaust = true;

this.baseDamage = 1 + this.misc;
this.baseDamage = 6 + this.misc;
this.baseBlock = 1 + this.misc;


Expand All @@ -56,7 +56,7 @@ public GrowthPunch() {
public void use(AbstractPlayer p, AbstractMonster m) {

AbstractDungeon.actionManager.addToBottom(new DamageAction(m, new com.megacrit.cardcrawl.cards.DamageInfo(p, this.damage, this.damageTypeForTurn), AbstractGameAction.AttackEffect.BLUNT_HEAVY));
AbstractDungeon.actionManager.addToBottom(new com.megacrit.cardcrawl.actions.common.GainBlockAction(p, p, this.block));
if (upgraded) AbstractDungeon.actionManager.addToBottom(new com.megacrit.cardcrawl.actions.common.GainBlockAction(p, p, this.block));
this.increaseAmount = this.magicNumber;

Iterator var1 = AbstractDungeon.player.masterDeck.group.iterator();
Expand All @@ -67,18 +67,18 @@ public void use(AbstractPlayer p, AbstractMonster m) {
if (c.uuid.equals(this.uuid)) {
c.misc += this.increaseAmount;
c.applyPowers();
c.baseDamage = 1 + c.misc;
c.baseDamage = 6 + c.misc;
c.baseBlock = 1 + c.misc;

c.isDamageModified = false;
}
}

for (var1 = GetAllInBattleInstances.get(this.uuid).iterator(); var1.hasNext(); c.baseDamage = 1 + c.misc) {
for (var1 = GetAllInBattleInstances.get(this.uuid).iterator(); var1.hasNext(); c.baseDamage = 6 + c.misc) {
c = (AbstractCard) var1.next();
c.misc += this.increaseAmount;
//c.applyPowers();
c.baseDamage = 1 + c.misc;
c.baseDamage = 6 + c.misc;
c.baseBlock = 1 + c.misc;
}

Expand All @@ -92,7 +92,7 @@ public AbstractCard makeCopy() {
}

public void applyPowers() {
this.baseDamage = 1 + this.misc;
this.baseDamage = 6 + this.misc;
this.baseBlock = 1 + this.misc;
super.applyPowers();
this.initializeDescription();
Expand All @@ -103,8 +103,10 @@ public void upgrade() {
if (!this.upgraded) {

upgradeName();
this.rawDescription = UPGRADED_DESCRIPTION;
this.initializeDescription();

upgradeMagicNumber(1);
//upgradeMagicNumber(1);

}

Expand Down
7 changes: 6 additions & 1 deletion src/main/java/slimebound/orbs/SlimingSlime.java
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,16 @@ public SlimingSlime() {
super(ID,-17, new Color (1.0F,.5F,1.0F,100F),"images/monsters/theBottom/slimeAltS/skeleton.atlas","images/monsters/theBottom/slimeAltS/skeleton.json","idle",.85F,new Color(224F/255F,113F/255F,224F/255F,2F),1, 2,true, new Color(.6F, .47F, .59F, 1), SlimeFlareEffect.OrbFlareColor.SLIMING, new Texture("SlimeboundImages/orbs/debuff2.png"), "SlimeboundImages/orbs/sliming.png");
this.extraFontColor = Color.PURPLE;
this.debuffAmount=2;
updateSlimedNumber();

spawnVFX();

}

@Override
public void postSpawnEffects() {
super.postSpawnEffects();
updateSlimedNumber();
}

public void updateDescription() {
this.description = this.descriptions[0] + this.passiveAmount + this.descriptions[1] + (this.debuffAmount+ this.debuffBonusAmount + SlimeboundMod.getAcidTongueBonus(AbstractDungeon.player)) + this.descriptions[2];
Expand Down
13 changes: 5 additions & 8 deletions src/main/java/slimebound/orbs/SpawnedSlime.java
Original file line number Diff line number Diff line change
Expand Up @@ -170,11 +170,12 @@ public void spawnVFX(){
AbstractDungeon.actionManager.addToBottom(new VFXAction(new SlimeSpawnProjectile(AbstractDungeon.player.hb.cX, AbstractDungeon.player.hb.cY, this, 1.4F, projectileColor)));
}
}

@Override
public void setSlot(int slotNum, int maxOrbs) {
if (AbstractDungeon.player instanceof SlimeboundCharacter) {
this.tX = ((SlimeboundCharacter) AbstractDungeon.player).orbPositionsX[slotNum];
this.tY = ((SlimeboundCharacter) AbstractDungeon.player).orbPositionsY[slotNum];

}


Expand Down Expand Up @@ -310,14 +311,10 @@ public void updateAnimation() {
break;
}
}
if (this.madePostDuplicated) {

this.cX = MathHelper.orbLerpSnap(this.cX, AbstractDungeon.player.animX + this.tX + 70);
this.cY = MathHelper.orbLerpSnap(this.cY, AbstractDungeon.player.animY + this.tY);
} else {
this.cX = MathHelper.orbLerpSnap(this.cX, AbstractDungeon.player.animX + this.tX);
this.cY = MathHelper.orbLerpSnap(this.cY, AbstractDungeon.player.animY + this.tY);
}
this.cX = MathHelper.orbLerpSnap(this.cX, this.tX);
this.cY = MathHelper.orbLerpSnap(this.cY, this.tY);


if (this.channelAnimTimer != 0.0F) {
this.channelAnimTimer -= Gdx.graphics.getDeltaTime();
Expand Down
2 changes: 1 addition & 1 deletion src/main/resources/ModTheSpire.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"name": "Slimebound Mod",
"author_list": ["Michael Mayhem"],
"description": "Adds a new playable enemy character: The Slimebound.\n NL NL If you like the mod and want to support me, check out my multiplayer party game, Sumo, in Early Access on Steam! - https://store.steampowered.com/app/858960/Sumo/ \n\n NL NL The Slimebound adds over 100 cards (not all in its card pool), 8 new character-specific Relics, 4 new Potions, and has few secrets to discover. The character attempts to stay within the bounds of vanilla STS character design while still pushing new mechanics.\n\n NL NL Extra thanks to the creators of Mod the Spire and the Discord modding community. \n NL NL Credit: kiooeht - Nothing would be possible without MTS and kiooeht supporting it. And thanks for the hat. JohnnyDevo - Mystic mod reference and help. Reina - Lots of helpful tidbits and advice. JohnnyBazooka89 - Forcing me to keep cleaner code. Skyson - Rapid aggressive testing. HypoSoc - Glutton mod for early mod reference and a couple art hijackings from it. Tempus - Disciple code ref and power art",
"version": "0.11.2",
"version": "0.11.3",
"sts_version": "12-06-2018",
"mts_version": "3.6.3",
"dependencies": ["basemod", "stslib"],
Expand Down
6 changes: 4 additions & 2 deletions src/main/resources/localization/Slimebound-CardStrings.json
Original file line number Diff line number Diff line change
Expand Up @@ -174,8 +174,10 @@
},
"Slimebound:GrowthPunch": {
"NAME": "Growth Punch",
"DESCRIPTION": "Deal !D! Damage. NL Gain !B! Block. NL Increase these effects permanently by !M!. NL Exhaust."
},
"DESCRIPTION": "Deal !D! Damage. NL Increase this card's damage permanently by !M!. NL Exhaust.",
"UPGRADE_DESCRIPTION": "Deal !D! Damage. NL Gain !B! Block. NL Increase these effects permanently by !M!. NL Exhaust."

},
"Slimebound:Recycling": {
"NAME": "Recycling",
"DESCRIPTION": "At the start of your turn, add a random Exhausted 0-cost card to your hand.",
Expand Down

0 comments on commit 1aebb19

Please sign in to comment.