Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

Ticking entity problem


Recommended Posts

Hi, modder. I want to make the player execute server commands.

 

player.getServer().getCommandManager().executeCommand(player.getCommandSenderEntity(), "/cold");

 

So I wrote the above code. Then I tested it. However, when I put mod into the server and client and run it, the server has no problem, but the client has the following Ticking Entity problem.

https://pastebin.com/HDcwGrut

The line 148 of the EventHandler pointed to by "at kr.guebeul.hertz.util.handler.EventHandler.playerevent (EventHandler.java:148)" is the same as above code.

 

Here is the "playerevent" code for EventHandler:

@SubscribeEvent
    public void playerevent(LivingEvent event) {
        if (event.getEntityLiving() instanceof EntityPlayer) {
            EntityPlayer player = (EntityPlayer) event.getEntityLiving();
            IFatigue fatigue = player.getCapability(FatigueProvider.FATIGUE_CAPABILITY, null);
            ITemperature temperature = player.getCapability(TempProvider.TEMP_CAP, null);
            IThirst thirst = player.getCapability(ThirstProvider.THIRST_CAPABILITY, null);

            if (temperature.getTemp() < 70.0F && temperature.getTemp() > 50.0F) {
                if (!temp70) {
                    player.getServer().getCommandManager().executeCommand(player.getCommandSenderEntity(), "/cold");   //Line 148
                    temp70 = true;
                }
            }
            if (temperature.getTemp() < 50.0F && temperature.getTemp() > 20.0F) {
                if (!temp50) {
                    player.getServer().getCommandManager().executeCommand(player.getCommandSenderEntity(), "/frostbite");
                    temp50 = true;
                }
            }
            if (temperature.getTemp() < 20.0F && temperature.getTemp() > 0.0F) {
                if (!temp20) {
                    player.getServer().getCommandManager().executeCommand(player.getCommandSenderEntity(), "/hypo");
                    temp20 = true;
                }
            }
        }
    }

 

Edited by Guebeul
Link to post
Share on other sites
1 hour ago, Guebeul said:

Hi, modder. I want to make the player execute server commands.

 


player.getServer().getCommandManager().executeCommand(player.getCommandSenderEntity(), "/cold");

  

So I wrote the above code. Then I tested it. However, when I put mod into the server and client and run it, the server has no problem, but the client has the following Ticking Entity problem.

https://pastebin.com/HDcwGrut

The line 148 of the EventHandler pointed to by "at kr.guebeul.hertz.util.handler.EventHandler.playerevent (EventHandler.java:148)" is the same as above code.

 

Here is the "playerevent" code for EventHandler:


@SubscribeEvent
    public void playerevent(LivingEvent event) {
        if (event.getEntityLiving() instanceof EntityPlayer) {
            EntityPlayer player = (EntityPlayer) event.getEntityLiving();
            IFatigue fatigue = player.getCapability(FatigueProvider.FATIGUE_CAPABILITY, null);
            ITemperature temperature = player.getCapability(TempProvider.TEMP_CAP, null);
            IThirst thirst = player.getCapability(ThirstProvider.THIRST_CAPABILITY, null);

            if (temperature.getTemp() < 70.0F && temperature.getTemp() > 50.0F) {
                if (!temp70) {
                    player.getServer().getCommandManager().executeCommand(player.getCommandSenderEntity(), "/cold");   //Line 148
                    temp70 = true;
                }
            }
            if (temperature.getTemp() < 50.0F && temperature.getTemp() > 20.0F) {
                if (!temp50) {
                    player.getServer().getCommandManager().executeCommand(player.getCommandSenderEntity(), "/frostbite");
                    temp50 = true;
                }
            }
            if (temperature.getTemp() < 20.0F && temperature.getTemp() > 0.0F) {
                if (!temp20) {
                    player.getServer().getCommandManager().executeCommand(player.getCommandSenderEntity(), "/hypo");
                    temp20 = true;
                }
            }
        }
    }

 

Whatever is here:

    at kr.guebeul.hertz.util.handler.EventHandler.playerevent(EventHandler.java:148)

is null.

 

I'm guessing, its either the player's capability or the entity itself. Figure out what it is, and check if its null.

Link to post
Share on other sites
5 hours ago, unassigned said:

Whatever is here:


    at kr.guebeul.hertz.util.handler.EventHandler.playerevent(EventHandler.java:148)

is null.

 

I'm guessing, its either the player's capability or the entity itself. Figure out what it is, and check if its null.

Thank you :) 
Although not related to the above, Do you know how to damage to player?

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
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.



  • Recently Browsing

    No registered users viewing this page.

  • Posts

    • I am trying to store data through my ItemStack capability storage, but I stumbled upon a roadblock. My ItemStack Capability Storage: public class WandItemStorage implements Capability.IStorage<IWandCap> { @Nullable @Override public INBT writeNBT(Capability<IWandCap> capability, IWandCap instance, Direction side) { CompoundNBT tag = new CompoundNBT(); tag.put("spells", instance.getSpells()); return tag; } @Override public void readNBT(Capability<IWandCap> capability, IWandCap instance, Direction side, INBT nbt) { } } My ItemStack Capability: public class WandCap implements IWandCap { private List<Spell> spells; public WandCap () { spells = new ArrayList<>(); } @Override public List<Spell> getSpells() { return this.spells; } @Override public void addSpells(Spell... spells) { this.spells.addAll(Arrays.asList(spells)); } @Override public void addSpell(Spell spell) { this.spells.add(spell); } @Override public void removeSpells(Spell... spells) { this.spells.removeAll(Arrays.asList(spells)); } @Override public void removeSpell(Spell spell) { this.spells.remove(spell); } @Override public boolean containsSpell(Spell spell) { return this.spells.contains(spell); } } I'm currently trying to put a List of Spells (my custom object) to the Write and Read NBT methods of my ItemStack cap storage, but CompoundNBT doesn't have a method for putting a custom object into a tag. All it has is the put() method from what I'm seeing, however the put() method requires an INBT for the second parameter, which I do not have. Would I need to convert my List of Spells to an INBT, and how would I go about doing that?
    • When I click on forge jar file for my server it doesn't do anything what do I do. Please help asap
    • The Slots Move the stacks correctly when I shift click but when I manually move the stack it duplicates and creates ghost items please tell me what I did wrong???? my git repo: https://github.com/User-PARROT/MC-FORGE-1.16-Capability-Testing
    • I'm trying to get a blurred background effect, similar to this mod. I've looked through the mods source code and its quite a small mod but it goes about it by changing all gui backgrounds in the client and uses transformers which I'm not too experienced in, whereas I just want it for my mod menu. I know in GuiScreen it has a drawDefaultBackground (or similar) method and maybe I could do something with that to apply blur? Any help would mean a lot.
    • Hi i have problem i want a create server for my friends on forge on version 1.17.1 but i cant find any a starting file like: On version 1.14.4 it was: named forge-1.14.4-28.1.0 file but on version 1.17.1 i cant find it. how i can get this file? 
  • Topics

  • Who's Online (See full list)

×
×
  • Create New...

Important Information

By using this site, you agree to our Privacy Policy.