Jump to content

Recommended Posts

Posted

Hi,

 

I'm wondering how to make an invisible block. The block should only be visible to a player who is in creative mode.

I thought of doing this with a PropertyBool, but I don't know how to make the block visible to creative player's online,

how to get the value from property bool and how to determine if the player is in creative mode or not (cause

there could be 2 players... I first thought of something like updateTick... but when there are two player's it'll run into a problem....)

 

Any ideas how to do this?

 

Thx in advance.

Bektor

Developer of Primeval Forest.

Posted
    public boolean getPlayer(World world, EntityPlayer player) {
        if(!world.isRemote) {
            if(player.capabilities.isCreativeMode) {
                isCreative = true;
            }else{
                isCreative = false;
            }
        }
        return isCreative;
    }

    @Override
    public EnumBlockRenderType getRenderType(IBlockState state) {
        if (!isCreative) {
            return EnumBlockRenderType.MODEL;
        }else{
            return EnumBlockRenderType.INVISIBLE;
        }
    }

Posted

    public boolean getPlayer(World world, EntityPlayer player) {
        if(!world.isRemote) {
            if(player.capabilities.isCreativeMode) {
                isCreative = true;
            }else{
                isCreative = false;
            }
        }
        return isCreative;
    }

    @Override
    public EnumBlockRenderType getRenderType(IBlockState state) {
        if (!isCreative) {
            return EnumBlockRenderType.MODEL;
        }else{
            return EnumBlockRenderType.INVISIBLE;
        }
    }

I do t think this will work, but i have not tried.

 

Hi,

 

I'm wondering how to make an invisible block. The block should only be visible to a player who is in creative mode.

I thought of doing this with a PropertyBool, but I don't know how to make the block visible to creative player's online,

how to get the value from property bool and how to determine if the player is in creative mode or not (cause

there could be 2 players... I first thought of something like updateTick... but when there are two player's it'll run into a problem....)

 

Any ideas how to do this?

 

Thx in advance.

Bektor

If the prior metioned method doesnt work try using BakedModels and if that doesnt work sadly i think you will have to resort to a TESR.

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

Posted
This thread offers several solutions to something similar: hiding a block unless a player is holding a specific item.

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • https://mclo.gs/46Xf7Sq thanks
    • That seems to have fixed it, thank you!
    • I am having some issues starting an RLCraft server on a minimal install of Debian 12. I have Java installed and I'm able to start the vanilla Minecraft server jar no problem and people can join and play without any issues, as soon as I try to create a new directory with the Forge jar the initial install with the INSTALLER jar works when I use the java command with the --installServer flag, but as soon as I try to start the server using the forge jar that is NOT labelled with installer I get the following error: A problem occurred running the Server launcher.java.lang.reflect.InvocationTargetException         at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)         at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)         at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)         at java.base/java.lang.reflect.Method.invoke(Method.java:569)         at net.minecraftforge.fml.relauncher.ServerLaunchWrapper.run(ServerLaunchWrapper.java:70)         at net.minecraftforge.fml.relauncher.ServerLaunchWrapper.main(ServerLaunchWrapper.java:34) Caused by: java.lang.ClassCastException: class jdk.internal.loader.ClassLoaders$AppClassLoader cannot be cast to class java.net.URLClassLoader (jdk.internal.loader.ClassLoaders$AppClassLoader and java.net.URLClassLoader are in module java.base of loader 'bootstrap')         at net.minecraft.launchwrapper.Launch.<init>(Launch.java:34)         at net.minecraft.launchwrapper.Launch.main(Launch.java:28)         ... 6 more   I have tried using newer versions of Java directly from Oracle as well. Has anybody been successful in starting and running a RLCraft server from the terminal on a Linux machine? I cannot figure out why it doesn't want to work but the vanilla jar works without issue. Thank you in advance!
  • Topics

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.