mirror of
https://github.com/Ellpeck/NaturesAura.git
synced 2024-12-22 14:59:22 +01:00
fixed api dependency on main code
This commit is contained in:
parent
9f4a51df18
commit
95838ff567
3 changed files with 31 additions and 31 deletions
|
@ -2,12 +2,12 @@ package de.ellpeck.naturesaura.api.aura.chunk;
|
||||||
|
|
||||||
import de.ellpeck.naturesaura.api.NaturesAuraAPI;
|
import de.ellpeck.naturesaura.api.NaturesAuraAPI;
|
||||||
import de.ellpeck.naturesaura.api.aura.type.IAuraType;
|
import de.ellpeck.naturesaura.api.aura.type.IAuraType;
|
||||||
import de.ellpeck.naturesaura.chunk.AuraChunk;
|
|
||||||
import net.minecraft.core.BlockPos;
|
import net.minecraft.core.BlockPos;
|
||||||
import net.minecraft.nbt.CompoundTag;
|
import net.minecraft.nbt.CompoundTag;
|
||||||
import net.minecraft.world.level.Level;
|
import net.minecraft.world.level.Level;
|
||||||
import net.minecraft.world.level.chunk.LevelChunk;
|
import net.minecraft.world.level.chunk.LevelChunk;
|
||||||
import net.neoforged.neoforge.common.util.INBTSerializable;
|
import net.neoforged.neoforge.common.util.INBTSerializable;
|
||||||
|
import org.apache.commons.lang3.mutable.MutableInt;
|
||||||
import org.apache.commons.lang3.tuple.Pair;
|
import org.apache.commons.lang3.tuple.Pair;
|
||||||
|
|
||||||
import java.util.function.BiConsumer;
|
import java.util.function.BiConsumer;
|
||||||
|
@ -152,7 +152,7 @@ public interface IAuraChunk extends INBTSerializable<CompoundTag> {
|
||||||
*/
|
*/
|
||||||
int storeAura(BlockPos pos, int amount);
|
int storeAura(BlockPos pos, int amount);
|
||||||
|
|
||||||
AuraChunk.DrainSpot getActualDrainSpot(BlockPos pos, boolean make);
|
DrainSpot getActualDrainSpot(BlockPos pos, boolean make);
|
||||||
|
|
||||||
int getDrainSpot(BlockPos pos);
|
int getDrainSpot(BlockPos pos);
|
||||||
|
|
||||||
|
@ -160,4 +160,31 @@ public interface IAuraChunk extends INBTSerializable<CompoundTag> {
|
||||||
|
|
||||||
void markDirty();
|
void markDirty();
|
||||||
|
|
||||||
|
class DrainSpot extends MutableInt {
|
||||||
|
|
||||||
|
public final BlockPos pos;
|
||||||
|
public BlockPos originalSpreadPos;
|
||||||
|
|
||||||
|
public DrainSpot(BlockPos pos, int value) {
|
||||||
|
super(value);
|
||||||
|
this.pos = pos;
|
||||||
|
}
|
||||||
|
|
||||||
|
public DrainSpot(CompoundTag tag) {
|
||||||
|
this(BlockPos.of(tag.getLong("pos")), tag.getInt("amount"));
|
||||||
|
if (tag.contains("original_spread_pos"))
|
||||||
|
this.originalSpreadPos = BlockPos.of(tag.getLong("original_spread_pos"));
|
||||||
|
}
|
||||||
|
|
||||||
|
public CompoundTag serializeNBT() {
|
||||||
|
var ret = new CompoundTag();
|
||||||
|
ret.putLong("pos", this.pos.asLong());
|
||||||
|
ret.putInt("amount", this.intValue());
|
||||||
|
if (this.originalSpreadPos != null)
|
||||||
|
ret.putLong("original_spread_pos", this.originalSpreadPos.asLong());
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
package de.ellpeck.naturesaura.api.aura.chunk;
|
package de.ellpeck.naturesaura.api.aura.chunk;
|
||||||
|
|
||||||
import de.ellpeck.naturesaura.api.aura.type.IAuraType;
|
import de.ellpeck.naturesaura.api.aura.type.IAuraType;
|
||||||
import de.ellpeck.naturesaura.chunk.AuraChunk;
|
|
||||||
import net.minecraft.core.BlockPos;
|
import net.minecraft.core.BlockPos;
|
||||||
import net.minecraft.resources.ResourceLocation;
|
import net.minecraft.resources.ResourceLocation;
|
||||||
import net.minecraft.world.entity.player.Player;
|
import net.minecraft.world.entity.player.Player;
|
||||||
|
@ -11,7 +10,7 @@ import net.minecraft.world.level.chunk.LevelChunk;
|
||||||
|
|
||||||
public interface IDrainSpotEffect {
|
public interface IDrainSpotEffect {
|
||||||
|
|
||||||
void update(Level level, LevelChunk chunk, IAuraChunk auraChunk, BlockPos pos, Integer spot, AuraChunk.DrainSpot actualSpot);
|
void update(Level level, LevelChunk chunk, IAuraChunk auraChunk, BlockPos pos, Integer spot, IAuraChunk.DrainSpot actualSpot);
|
||||||
|
|
||||||
boolean appliesHere(LevelChunk chunk, IAuraChunk auraChunk, IAuraType type);
|
boolean appliesHere(LevelChunk chunk, IAuraChunk auraChunk, IAuraType type);
|
||||||
|
|
||||||
|
@ -28,4 +27,5 @@ public interface IDrainSpotEffect {
|
||||||
enum ActiveType {
|
enum ActiveType {
|
||||||
INACTIVE, INHIBITED, ACTIVE
|
INACTIVE, INHIBITED, ACTIVE
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -278,31 +278,4 @@ public class AuraChunk implements IAuraChunk {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class DrainSpot extends MutableInt {
|
|
||||||
|
|
||||||
public final BlockPos pos;
|
|
||||||
public BlockPos originalSpreadPos;
|
|
||||||
|
|
||||||
public DrainSpot(BlockPos pos, int value) {
|
|
||||||
super(value);
|
|
||||||
this.pos = pos;
|
|
||||||
}
|
|
||||||
|
|
||||||
public DrainSpot(CompoundTag tag) {
|
|
||||||
this(BlockPos.of(tag.getLong("pos")), tag.getInt("amount"));
|
|
||||||
if (tag.contains("original_spread_pos"))
|
|
||||||
this.originalSpreadPos = BlockPos.of(tag.getLong("original_spread_pos"));
|
|
||||||
}
|
|
||||||
|
|
||||||
public CompoundTag serializeNBT() {
|
|
||||||
var ret = new CompoundTag();
|
|
||||||
ret.putLong("pos", this.pos.asLong());
|
|
||||||
ret.putInt("amount", this.intValue());
|
|
||||||
if (this.originalSpreadPos != null)
|
|
||||||
ret.putLong("original_spread_pos", this.originalSpreadPos.asLong());
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue