fix spark mana transfer check (#130)

Co-authored-by: Martin Robertz <[email protected]>
This commit is contained in:
LooseEthicsandMartin Robertz authored and GitHub committed 2026-11-05 20:18:03 +00:00
1 parent d15b337730
commit 148e1656cf
1 file changed
+6 -4
@@ -81,9 +81,6 @@ public class EntitySpark extends Entity implements ISparkEntity {
if(first || upgrade == 2 || upgrade == 3)
allSparks = SparkHelper.getSparksAround(worldObj, posX, posY, posZ);
if(first)
first = true;
Collection<ISparkEntity> transfers = getTransfers();
@@ -171,10 +168,11 @@ public class EntitySpark extends Entity implements ISparkEntity {
if(!transfers.isEmpty()) {
int manaTotal = Math.min(TRANSFER_RATE * transfers.size(), tile.getCurrentMana());
if (manaTotal > 0){
int manaForEach = manaTotal / transfers.size();
if (manaForEach == 0) manaForEach = 1;
int manaSpent = 0;
if(manaForEach > transfers.size()) {
for(ISparkEntity spark : transfers) {
if(spark.getAttachedTile() == null || spark.getAttachedTile().isFull() || spark.areIncomingTransfersDone()) {
manaTotal -= manaForEach;
@@ -187,6 +185,10 @@ public class EntitySpark extends Entity implements ISparkEntity {
manaSpent += spend;
particlesTowards((Entity) spark);
if (manaSpent >= manaTotal) {
break;
}
}
tile.recieveMana(-manaSpent);
}