seemingly working with forge .99
This commit is contained in:
@@ -43,7 +43,7 @@ public class EffortlessBuilding {
|
||||
|
||||
//Registration
|
||||
private static final DeferredRegister<Item> ITEMS = DeferredRegister.create(ForgeRegistries.ITEMS, MODID);
|
||||
private static final DeferredRegister<MenuType<?>> CONTAINERS = DeferredRegister.create(ForgeRegistries.CONTAINERS, EffortlessBuilding.MODID);
|
||||
private static final DeferredRegister<MenuType<?>> CONTAINERS = DeferredRegister.create(ForgeRegistries.MENU_TYPES, EffortlessBuilding.MODID);
|
||||
|
||||
public static final RegistryObject<Item> RANDOMIZER_BAG_ITEM = ITEMS.register("randomizer_bag", RandomizerBagItem::new);
|
||||
public static final RegistryObject<Item> GOLDEN_RANDOMIZER_BAG_ITEM = ITEMS.register("golden_randomizer_bag", GoldenRandomizerBagItem::new);
|
||||
|
||||
@@ -9,7 +9,7 @@ import net.minecraftforge.common.util.FakePlayer;
|
||||
import net.minecraftforge.event.AttachCapabilitiesEvent;
|
||||
import net.minecraftforge.event.RegisterCommandsEvent;
|
||||
import net.minecraftforge.event.entity.player.PlayerEvent;
|
||||
import net.minecraftforge.event.world.BlockEvent;
|
||||
import net.minecraftforge.event.level.BlockEvent;
|
||||
import net.minecraftforge.eventbus.api.SubscribeEvent;
|
||||
import net.minecraftforge.fml.common.Mod;
|
||||
import net.minecraftforge.network.PacketDistributor;
|
||||
@@ -39,7 +39,7 @@ public class EventHandler {
|
||||
|
||||
@SubscribeEvent
|
||||
public static void onBlockPlaced(BlockEvent.EntityPlaceEvent event) {
|
||||
if (event.getWorld().isClientSide()) return;
|
||||
if (event.getLevel().isClientSide()) return;
|
||||
|
||||
if (!(event.getEntity() instanceof Player)) return;
|
||||
|
||||
@@ -74,7 +74,7 @@ public class EventHandler {
|
||||
|
||||
@SubscribeEvent
|
||||
public static void onBlockBroken(BlockEvent.BreakEvent event) {
|
||||
if (event.getWorld().isClientSide()) return;
|
||||
if (event.getLevel().isClientSide()) return;
|
||||
|
||||
if (event.getPlayer() instanceof FakePlayer) return;
|
||||
|
||||
@@ -100,16 +100,16 @@ public class EventHandler {
|
||||
|
||||
@SubscribeEvent
|
||||
public static void onPlayerLoggedIn(PlayerEvent.PlayerLoggedInEvent event) {
|
||||
if (event.getPlayer() instanceof FakePlayer) return;
|
||||
Player player = event.getPlayer();
|
||||
if (event.getEntity() instanceof FakePlayer) return;
|
||||
Player player = event.getEntity();
|
||||
ModifierSettingsManager.handleNewPlayer(player);
|
||||
ModeSettingsManager.handleNewPlayer(player);
|
||||
}
|
||||
|
||||
@SubscribeEvent
|
||||
public static void onPlayerLoggedOut(PlayerEvent.PlayerLoggedOutEvent event) {
|
||||
if (event.getPlayer() instanceof FakePlayer) return;
|
||||
Player player = event.getPlayer();
|
||||
if (event.getEntity() instanceof FakePlayer) return;
|
||||
Player player = event.getEntity();
|
||||
if (player.getCommandSenderWorld().isClientSide) return;
|
||||
|
||||
UndoRedo.clear(player);
|
||||
@@ -118,16 +118,16 @@ public class EventHandler {
|
||||
|
||||
@SubscribeEvent
|
||||
public static void onPlayerRespawn(PlayerEvent.PlayerRespawnEvent event) {
|
||||
if (event.getPlayer() instanceof FakePlayer) return;
|
||||
Player player = event.getPlayer();
|
||||
if (event.getEntity() instanceof FakePlayer) return;
|
||||
Player player = event.getEntity();
|
||||
ModifierSettingsManager.handleNewPlayer(player);
|
||||
ModeSettingsManager.handleNewPlayer(player);
|
||||
}
|
||||
|
||||
@SubscribeEvent
|
||||
public static void onPlayerChangedDimension(PlayerEvent.PlayerChangedDimensionEvent event) {
|
||||
if (event.getPlayer() instanceof FakePlayer) return;
|
||||
Player player = event.getPlayer();
|
||||
if (event.getEntity() instanceof FakePlayer) return;
|
||||
Player player = event.getEntity();
|
||||
if (player.getCommandSenderWorld().isClientSide) return;
|
||||
|
||||
//Set build mode to normal
|
||||
@@ -151,12 +151,12 @@ public class EventHandler {
|
||||
|
||||
@SubscribeEvent
|
||||
public static void onPlayerClone(PlayerEvent.Clone event) {
|
||||
if (event.getPlayer() instanceof FakePlayer) return;
|
||||
if (event.getEntity() instanceof FakePlayer) return;
|
||||
//Attach capabilities on death, otherwise crash
|
||||
Player oldPlayer = event.getOriginal();
|
||||
oldPlayer.revive();
|
||||
|
||||
Player newPlayer = event.getPlayer();
|
||||
Player newPlayer = event.getEntity();
|
||||
ModifierSettingsManager.setModifierSettings(newPlayer, ModifierSettingsManager.getModifierSettings(oldPlayer));
|
||||
ModeSettingsManager.setModeSettings(newPlayer, ModeSettingsManager.getModeSettings(oldPlayer));
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@ import com.mojang.blaze3d.vertex.PoseStack;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.gui.components.Button;
|
||||
import net.minecraft.network.chat.Component;
|
||||
import net.minecraftforge.client.gui.GuiUtils;
|
||||
import net.minecraftforge.client.gui.ScreenUtils;
|
||||
|
||||
import javax.annotation.ParametersAreNonnullByDefault;
|
||||
|
||||
@@ -30,7 +30,7 @@ public class GuiCheckBoxFixed extends Button {
|
||||
if (this.visible) {
|
||||
Minecraft mc = Minecraft.getInstance();
|
||||
this.isHovered = mouseX >= this.x && mouseY >= this.y && mouseX < this.x + this.boxWidth && mouseY < this.y + this.height;
|
||||
GuiUtils.drawContinuousTexturedBox(ms, WIDGETS_LOCATION, this.x, this.y, 0, 46, this.boxWidth, this.height, 200, 20, 2, 3, 2, 2, this.getBlitOffset());
|
||||
ScreenUtils.blitWithBorder(ms, WIDGETS_LOCATION, this.x, this.y, 0, 46, this.boxWidth, this.height, 200, 20, 2, 3, 2, 2, this.getBlitOffset());
|
||||
this.renderBg(ms, mc, mouseX, mouseY);
|
||||
int color = 14737632;
|
||||
|
||||
|
||||
@@ -129,7 +129,7 @@ public abstract class AbstractRandomizerBagItem extends Item {
|
||||
if (ctx.getPlayer() != null && ctx.getPlayer().isShiftKeyDown()) { //ctx.isPlacerSneaking()
|
||||
if (world.isClientSide) return InteractionResult.SUCCESS;
|
||||
//Open inventory
|
||||
NetworkHooks.openGui((ServerPlayer) player, getContainerProvider(item));
|
||||
NetworkHooks.openScreen((ServerPlayer) player, getContainerProvider(item));
|
||||
} else {
|
||||
if (world.isClientSide) return InteractionResult.SUCCESS;
|
||||
|
||||
@@ -182,7 +182,7 @@ public abstract class AbstractRandomizerBagItem extends Item {
|
||||
if (player.isShiftKeyDown()) {
|
||||
if (world.isClientSide) return new InteractionResultHolder<>(InteractionResult.SUCCESS, bag);
|
||||
//Open inventory
|
||||
NetworkHooks.openGui((ServerPlayer) player, getContainerProvider(bag));
|
||||
NetworkHooks.openScreen((ServerPlayer) player, getContainerProvider(bag));
|
||||
} else {
|
||||
//Use item
|
||||
//Get bag inventory
|
||||
|
||||
@@ -23,9 +23,8 @@ import net.minecraft.world.phys.Vec3;
|
||||
import net.minecraft.ChatFormatting;
|
||||
import net.minecraft.world.level.Level;
|
||||
import net.minecraftforge.api.distmarker.Dist;
|
||||
import net.minecraftforge.client.ClientRegistry;
|
||||
import net.minecraftforge.client.event.ScreenOpenEvent;
|
||||
import net.minecraftforge.client.event.InputEvent;
|
||||
import net.minecraftforge.client.event.ScreenEvent;
|
||||
import net.minecraftforge.client.settings.KeyConflictContext;
|
||||
import net.minecraftforge.client.settings.KeyModifier;
|
||||
import net.minecraftforge.event.TickEvent;
|
||||
@@ -82,11 +81,6 @@ public class ClientProxy implements IProxy {
|
||||
keyBindings[4] = new KeyMapping("key.effortlessbuilding.redo.desc", KeyConflictContext.IN_GAME, KeyModifier.CONTROL, InputConstants.getKey(GLFW.GLFW_KEY_Y, 0), "key.effortlessbuilding.category");
|
||||
keyBindings[5] = new KeyMapping("key.effortlessbuilding.altplacement.desc", KeyConflictContext.IN_GAME, InputConstants.getKey(GLFW.GLFW_KEY_LEFT_CONTROL, 0), "key.effortlessbuilding.category");
|
||||
|
||||
// register all the key bindings
|
||||
for (KeyMapping keyBinding : keyBindings) {
|
||||
ClientRegistry.registerKeyBinding(keyBinding);
|
||||
}
|
||||
|
||||
MenuScreens.register(EffortlessBuilding.RANDOMIZER_BAG_CONTAINER.get(), RandomizerBagScreen::new);
|
||||
MenuScreens.register(EffortlessBuilding.GOLDEN_RANDOMIZER_BAG_CONTAINER.get(), GoldenRandomizerBagScreen::new);
|
||||
MenuScreens.register(EffortlessBuilding.DIAMOND_RANDOMIZER_BAG_CONTAINER.get(), DiamondRandomizerBagScreen::new);
|
||||
@@ -226,7 +220,7 @@ public class ClientProxy implements IProxy {
|
||||
}
|
||||
|
||||
@SubscribeEvent(receiveCanceled = true)
|
||||
public static void onKeyPress(InputEvent.KeyInputEvent event) {
|
||||
public static void onKeyPress(InputEvent.Key event) {
|
||||
LocalPlayer player = Minecraft.getInstance().player;
|
||||
if (player == null)
|
||||
return;
|
||||
@@ -310,7 +304,7 @@ public class ClientProxy implements IProxy {
|
||||
}
|
||||
|
||||
@SubscribeEvent
|
||||
public static void onGuiOpen(ScreenOpenEvent event) {
|
||||
public static void onGuiOpen(ScreenEvent event) {
|
||||
Player player = Minecraft.getInstance().player;
|
||||
if (player != null) {
|
||||
BuildModes.initializeMode(player);
|
||||
|
||||
@@ -2,24 +2,18 @@ package nl.requios.effortlessbuilding.render;
|
||||
|
||||
import com.mojang.blaze3d.shaders.Uniform;
|
||||
import com.mojang.blaze3d.systems.RenderSystem;
|
||||
import com.mojang.blaze3d.vertex.DefaultVertexFormat;
|
||||
import com.mojang.blaze3d.vertex.VertexFormat;
|
||||
import net.minecraft.Util;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.renderer.RenderStateShard;
|
||||
import net.minecraft.client.renderer.RenderType;
|
||||
import net.minecraft.client.renderer.ShaderInstance;
|
||||
import net.minecraft.client.renderer.texture.TextureAtlas;
|
||||
import com.mojang.blaze3d.vertex.DefaultVertexFormat;
|
||||
import net.minecraft.core.BlockPos;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import net.minecraft.world.phys.Vec3;
|
||||
import nl.requios.effortlessbuilding.BuildConfig;
|
||||
import nl.requios.effortlessbuilding.EffortlessBuilding;
|
||||
import org.lwjgl.opengl.*;
|
||||
|
||||
import java.util.OptionalDouble;
|
||||
import java.util.function.Consumer;
|
||||
import java.util.function.Function;
|
||||
|
||||
|
||||
public class BuildRenderTypes extends RenderType {
|
||||
public static ResourceLocation shaderMaskTextureLocation = new ResourceLocation(EffortlessBuilding.MODID, "textures/shader_mask.png");
|
||||
|
||||
@@ -19,8 +19,8 @@ import net.minecraft.world.phys.AABB;
|
||||
import net.minecraft.world.phys.Vec3;
|
||||
import net.minecraft.world.phys.shapes.VoxelShape;
|
||||
import net.minecraftforge.api.distmarker.Dist;
|
||||
import net.minecraftforge.client.event.RenderLevelLastEvent;
|
||||
import net.minecraftforge.client.model.data.EmptyModelData;
|
||||
import net.minecraftforge.client.event.RenderLevelStageEvent;
|
||||
import net.minecraftforge.client.model.data.ModelData;
|
||||
import net.minecraftforge.eventbus.api.EventPriority;
|
||||
import net.minecraftforge.eventbus.api.SubscribeEvent;
|
||||
import net.minecraftforge.fml.common.Mod;
|
||||
@@ -28,6 +28,8 @@ import nl.requios.effortlessbuilding.EffortlessBuilding;
|
||||
import nl.requios.effortlessbuilding.buildmode.ModeSettingsManager;
|
||||
import nl.requios.effortlessbuilding.buildmodifier.ModifierSettingsManager;
|
||||
|
||||
import static net.minecraftforge.client.event.RenderLevelStageEvent.Stage.AFTER_PARTICLES;
|
||||
|
||||
/***
|
||||
* Main render class for Effortless Building
|
||||
*/
|
||||
@@ -35,8 +37,8 @@ import nl.requios.effortlessbuilding.buildmodifier.ModifierSettingsManager;
|
||||
public class RenderHandler {
|
||||
|
||||
@SubscribeEvent
|
||||
public static void onRender(RenderLevelLastEvent event) {
|
||||
if (event.getPhase() != EventPriority.NORMAL)
|
||||
public static void onRender(RenderLevelStageEvent event) {
|
||||
if (event.getPhase() != EventPriority.NORMAL || event.getStage() != AFTER_PARTICLES)
|
||||
return;
|
||||
|
||||
PoseStack matrixStack = event.getPoseStack();
|
||||
@@ -91,15 +93,10 @@ public class RenderHandler {
|
||||
RenderType blockPreviewRenderType = BuildRenderTypes.getBlockPreviewRenderType(dissolve, blockPos, firstPos, secondPos, red);
|
||||
VertexConsumer buffer = renderTypeBuffer.getBuffer(blockPreviewRenderType);
|
||||
|
||||
// MinecraftServer server = Minecraft.getInstance().getIntegratedServer();
|
||||
// World world = DimensionManager.getWorld(server, DimensionType.OVERWORLD, false, true);
|
||||
|
||||
try {
|
||||
BakedModel model = dispatcher.getBlockModel(blockState);
|
||||
dispatcher.getModelRenderer().renderModel(matrixStack.last(), buffer, blockState, model,
|
||||
1f, 1f, 1f, 0, OverlayTexture.NO_OVERLAY, EmptyModelData.INSTANCE);
|
||||
// blockRendererDispatcher.getBlockModelRenderer().renderModel(world, blockRendererDispatcher.getModelForState(blockState),
|
||||
// blockState, logicPos, matrixStack, renderTypeBuffer.getBuffer(renderType), true, new Random(), blockState.getPositionRandom(logicPos), i);
|
||||
1f, 1f, 1f, 0, OverlayTexture.NO_OVERLAY, ModelData.EMPTY, blockPreviewRenderType);
|
||||
} catch (NullPointerException e) {
|
||||
EffortlessBuilding.logger.warn("RenderHandler::renderBlockPreview cannot render " + blockState.getBlock().toString());
|
||||
|
||||
|
||||
Reference in New Issue
Block a user