[Resolved] Send ACTION_BAR message

I’m new at Sponge Coding, and I try to make a simple task to send an action_bar message.

The only way I found to send action bar message is to do something like this:

	public void onChat(BlockBreakEvent e) {
    ((PlayerEvent) e).getPlayer().sendMessage(ChatTypes.ACTION_BAR, "TEST");
}

But when I break a block, I get

[12:55:05] [Server thread/WARN] [Sponge]: A handler raised an error when handling an event
java.lang.AbstractMethodError: net.minecraft.entity.player.EntityPlayerMP.sendMessage(Lorg/spongepowered/api/text/chat/ChatType;[Ljava/lang/String;)V
at fr.splint33.plugsponge.Main.onChat(Main.java:26) ~[Main.class:?]
at org.spongepowered.mod.event.handler.BlockBreakEventHandler_Main_onChat4.handle(Unknown Source) ~[?:?]
at org.spongepowered.mod.event.SpongeEventBus.callListener(SpongeEventBus.java:234) [SpongeEventBus.class:?]
at org.spongepowered.mod.event.SpongeEventBus.post(SpongeEventBus.java:268) [SpongeEventBus.class:?]
at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:56) [EventBus.class:?]
at net.minecraftforge.common.ForgeHooks.onBlockBreakEvent(ForgeHooks.java:532) [ForgeHooks.class:?]
at net.minecraft.server.management.ItemInWorldManager.tryHarvestBlock(ItemInWorldManager.java:313) [ItemInWorldManager.class:?]
at net.minecraft.server.management.ItemInWorldManager.blockRemoving(ItemInWorldManager.java:261) [ItemInWorldManager.class:?]
at net.minecraft.network.NetHandlerPlayServer.processPlayerDigging(NetHandlerPlayServer.java:563) [NetHandlerPlayServer.class:?]
at net.minecraft.network.play.client.C07PacketPlayerDigging.processPacket(C07PacketPlayerDigging.java:53) [C07PacketPlayerDigging.class:?]
at net.minecraft.network.play.client.C07PacketPlayerDigging.processPacket(C07PacketPlayerDigging.java:76) [C07PacketPlayerDigging.class:?]
at net.minecraft.network.PacketThreadUtil$1.run(PacketThreadUtil.java:24) [PacketThreadUtil$1.class:?]
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.7.0_71]
at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.7.0_71]
at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:709) [FMLCommonHandler.class:?]
at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:726) [MinecraftServer.class:?]
at net.minecraft.server.dedicated.DedicatedServer.updateTimeLightAndEntities(DedicatedServer.java:385) [DedicatedServer.class:?]
at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:669) [MinecraftServer.class:?]
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:540) [MinecraftServer.class:?]
at java.lang.Thread.run(Unknown Source) [?:1.7.0_71]

Thank in advence for any help.

You need to use TextBuilder, not string

new TextBuilder.Literal("Hello").build() I think

i already see that, but with text builder, I will got a chat message, and not a Action_bar message, no ?

Edit: Thx that work !

((PlayerEvent) e).getPlayer().sendMessage(ChatTypes.ACTION_BAR, new TextBuilder.Literal("Hello").build());

You’re welcome! :slight_smile: