Skip to content

Commit

Permalink
20w45a
Browse files Browse the repository at this point in the history
  • Loading branch information
gnembon committed Nov 5, 2020
1 parent f27aad9 commit b6ba1f8
Show file tree
Hide file tree
Showing 6 changed files with 27 additions and 21 deletions.
4 changes: 2 additions & 2 deletions gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@ org.gradle.jvmargs=-Xmx1G

# Fabric Properties
# check these on https://fabricmc.net/use
minecraft_version=1.16.4
yarn_mappings=1.16.4+build.3
minecraft_version=20w45a
yarn_mappings=20w45a+build.1
loader_version=0.10.6+build.214

# Mod Properties
Expand Down
25 changes: 15 additions & 10 deletions src/main/java/carpet/mixins/HopperBlockEntityMixin.java
Original file line number Diff line number Diff line change
@@ -1,13 +1,16 @@
package carpet.mixins;

import carpet.CarpetSettings;
import net.minecraft.block.BlockState;
import net.minecraft.block.HopperBlock;
import net.minecraft.block.entity.BlockEntityType;
import net.minecraft.block.entity.HopperBlockEntity;
import net.minecraft.block.entity.LootableContainerBlockEntity;
import net.minecraft.inventory.Inventory;
import net.minecraft.item.ItemStack;
import net.minecraft.util.DyeColor;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow;
import org.spongepowered.asm.mixin.injection.At;
Expand All @@ -19,8 +22,10 @@
@Mixin(HopperBlockEntity.class)
public abstract class HopperBlockEntityMixin extends LootableContainerBlockEntity {

protected HopperBlockEntityMixin(BlockEntityType<?> blockEntityType_1) {
super(blockEntityType_1);

protected HopperBlockEntityMixin(BlockEntityType<?> blockEntityType, BlockPos blockPos, BlockState blockState)
{
super(blockEntityType, blockPos, blockState);
}

@Shadow
Expand All @@ -37,21 +42,21 @@ protected HopperBlockEntityMixin(BlockEntityType<?> blockEntityType_1) {
@Shadow public abstract void setStack(int slot, ItemStack stack);

@Inject(method = "insert", at = @At("HEAD"), cancellable = true)
private void onInsert(CallbackInfoReturnable<Boolean> cir)
private static void onInsert(World world, BlockPos blockPos, BlockState blockState, Inventory inventory, CallbackInfoReturnable<Boolean> cir)
{
if (CarpetSettings.hopperCounters) {
DyeColor wool_color = WoolTool.getWoolColorAtPosition(
getWorld(),
new BlockPos(getHopperX(), getHopperY(), getHopperZ()).offset(this.getCachedState().get(HopperBlock.FACING)));
world,
blockPos.offset(blockState.get(HopperBlock.FACING)));
if (wool_color != null)
{
for (int i = 0; i < size(); ++i)
for (int i = 0; i < inventory.size(); ++i)
{
if (!this.getStack(i).isEmpty())
if (!inventory.getStack(i).isEmpty())
{
ItemStack itemstack = this.getStack(i);//.copy();
HopperCounter.COUNTERS.get(wool_color).add(this.getWorld().getServer(), itemstack);
this.setStack(i, ItemStack.EMPTY);
ItemStack itemstack = inventory.getStack(i);//.copy();
HopperCounter.COUNTERS.get(wool_color).add(world.getServer(), itemstack);
inventory.setStack(i, ItemStack.EMPTY);
}
}
cir.setReturnValue(true);
Expand Down
6 changes: 3 additions & 3 deletions src/main/java/carpet/mixins/ServerWorld_fakePlayersMixin.java
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ public abstract class ServerWorld_fakePlayersMixin
{

@Shadow /*@Nonnull*/ public abstract MinecraftServer getServer();

/*
@Shadow private boolean inEntityTick;
@Redirect( method = "removePlayer", at = @At(
Expand All @@ -26,13 +26,13 @@ public abstract class ServerWorld_fakePlayersMixin
private void crashRemovePlayer(ServerWorld serverWorld, Entity entity_1, ServerPlayerEntity serverPlayerEntity_1)
{
if ( !(inEntityTick && serverPlayerEntity_1 instanceof EntityPlayerMPFake) )
serverWorld.removeEntity(entity_1);
serverWorld.removePlayer(); removeEntity(entity_1);
else
getServer().send(new ServerTask(getServer().getTicks(), () ->
{
serverWorld.removeEntity(serverPlayerEntity_1);
serverPlayerEntity_1.onTeleportationDone();
}));
}
}*/
}
3 changes: 2 additions & 1 deletion src/main/java/carpet/patches/EntityPlayerMPFake.java
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,8 @@ public static EntityPlayerMPFake createFake(String username, MinecraftServer ser
server.getPlayerManager().onPlayerConnect(new NetworkManagerFake(NetworkSide.SERVERBOUND), instance);
instance.teleport(worldIn, d0, d1, d2, (float)yaw, (float)pitch);
instance.setHealth(20.0F);
instance.removed = false;
//instance.removed = false;
instance.method_31482(); // set not removed
instance.stepHeight = 0.6F;
interactionManagerIn.setGameMode(gamemode);
server.getPlayerManager().sendToDimension(new EntitySetHeadYawS2CPacket(instance, (byte) (instance.headYaw * 256 / 360)), dimensionId);//instance.dimension);
Expand Down
8 changes: 4 additions & 4 deletions src/main/java/carpet/utils/SpawnReporter.java
Original file line number Diff line number Diff line change
Expand Up @@ -148,23 +148,23 @@ public static void killEntity(LivingEntity entity)
{
if (entity.hasVehicle())
{
entity.getVehicle().remove();
entity.getVehicle().remove(Entity.class_5529.field_26999);
}
if (entity.hasPassengers())
{
for (Entity e: entity.getPassengerList())
{
e.remove();
e.remove(Entity.class_5529.field_26999);
}
}
if (entity instanceof OcelotEntity)
{
for (Entity e: entity.getEntityWorld().getOtherEntities(entity, entity.getBoundingBox()))
{
e.remove();
e.remove(Entity.class_5529.field_26999);
}
}
entity.remove();
entity.remove(Entity.class_5529.field_26999);
}

// yeeted from SpawnHelper - temporary fix
Expand Down
2 changes: 1 addition & 1 deletion src/main/resources/fabric.mod.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@

"depends": {
"fabricloader": ">=0.7.1",
"minecraft": "1.16.x"
"minecraft": "1.17.*"
},
"suggests": {
"flamingo": "*"
Expand Down

0 comments on commit b6ba1f8

Please sign in to comment.