EclipseでのModdingでエラーが出る...

Modding・サーバPlugin制作・ツール制作など、開発関連の質問があればこちらにお願い致します。
フォーラムルール
質問関連フォーラムで質問する時は、必ず次のトピックを一読/厳守お願い致します。
viewtopic.php?f=5&t=999
  • (PostNo.321362)

EclipseでのModdingでエラーが出る...

投稿記事by WEsainT » 2018年10月27日(土) 17:28

僕は今、SoulStealerというツールでエンティティを殴るとHeartをドロップし
そのHeartを右クリックすると体力(❤)を回復できるというものです。

ItemHeart.javaでこの部分だけエラーが起きてしまいます。
ちなみにMinecraft1.11.2です。
1.10.2の時は成功したはずなのですが、1.11.2では無理なのでしょうか...?
分かる方がいたらどこが間違っているか教えて下さい...
添付ファイル
erroe.JPG
配布ページ作りました(まだDLできないし、サイトもテンプレやし)
https://distribution.client.jp/
まあ配布開始したらDLしてみてね~
WEsainT
ID:c90c76eb
木を殴ってる
 
記事: 18
登録日時: 2017年11月25日(土) 19:16

  • (PostNo.321363)

Re: EclipseでのModdingでエラーが出る...

投稿記事by WEsainT » 2018年10月27日(土) 17:32

配布ページ作りました(まだDLできないし、サイトもテンプレやし)
https://distribution.client.jp/
まあ配布開始したらDLしてみてね~
WEsainT
ID:c90c76eb
木を殴ってる
 
記事: 18
登録日時: 2017年11月25日(土) 19:16

  • (PostNo.321367)

Re: EclipseでのModdingでエラーが出る...

投稿記事by elise_blacklab » 2018年10月27日(土) 20:54

うろ覚えですが,1.11.xではItemStackの引数が削除されていたような.
[url]https://mcmodding.jp/modding/index.php/1.10から1.11への変更点[/url]
Overrideするメソッドの引数の食い違いからなる典型的なエラーなので,まずはForgeのソースの方を見ながら修正するとよいです.

Entityが今持っているアイテムはgetHeldItem(EnumHand)で可能です.
スタックを減らすにはsizeを直接弄るのではなくsplitStack(int)を使用すると良いです.
メイドつくってたりします.http://6docvc.net/
アバター
elise_blacklab
ID:0f87040f
掘り廃人
 
記事: 2562
登録日時: 2014年6月25日(水) 18:30

  • (PostNo.321374)

Re: EclipseでのModdingでエラーが出る...

投稿記事by WEsainT » 2018年10月27日(土) 22:35

これでやってみたらエラーもなく普通に思ってた通りに動きました。
書き方に問題はないですか?

package ml.sainnetwork.items;

import java.util.List;

import ml.sainnetwork.Reference;
import ml.sainnetwork.util.Utils;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.SoundEvents;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.ActionResult;
import net.minecraft.util.EnumHand;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.SoundCategory;
import net.minecraft.util.text.TextFormatting;
import net.minecraft.world.World;

public class ItemHeart extends Item {

public ItemHeart(String unlocalizedName) {
this.setUnlocalizedName(unlocalizedName);
this.setRegistryName(new ResourceLocation(Reference.MODID, unlocalizedName));
}

@Override
public ActionResult<ItemStack> onItemRightClick(World world, EntityPlayer player, EnumHand hand) {
if (player.getHealth() < player.getMaxHealth()) {
player.heal(2); // Heals them 2 HP or 1 heart
player.inventory.decrStackSize(player.inventory.currentItem, 1); // NEW 1.11
world.playSound(player, player.getPosition(), SoundEvents.ENTITY_PLAYER_BURP, SoundCategory.PLAYERS, 0.5F,
world.rand.nextFloat() * 0.1F + 0.9F);
}
return super.onItemRightClick(world, player, hand);
}

/**
* Adds a tool tip to the item
*/
@Override
public void addInformation(ItemStack stack, EntityPlayer playerIn, List<String> tooltip, boolean advanced) {
super.addInformation(stack, playerIn, tooltip, advanced);
tooltip.add(TextFormatting.AQUA + Utils.getLang().localize("heart.tooltip"));
}

}
配布ページ作りました(まだDLできないし、サイトもテンプレやし)
https://distribution.client.jp/
まあ配布開始したらDLしてみてね~
WEsainT
ID:c90c76eb
木を殴ってる
 
記事: 18
登録日時: 2017年11月25日(土) 19:16


Return to 質問:開発・制作関連

x