バニラの装備やツールのitemTier

返信する

スマイリー
:D :) ;) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :!: :?: :idea: :arrow: :| :mrgreen: :geek: :ugeek:

Markdown is OFF

BBCode: ON
[img]: ON
[url]: ON
スマイリー: ON

トピックのレビュー
   

展開ビュー トピックのレビュー: バニラの装備やツールのitemTier

Re: バニラの装備やツールのitemTier

by penM » 2020年7月14日(火) 10:57

meta26 さんが書きました: 2020年7月12日(日) 10:31
ちなみに、作者とは誰の事を示していますか?
このプログラムの記事を書いたうまげーむさんです。
記事のコメントなどで質問してください。
うまげーむさんのツイッター

Re: バニラの装備やツールのitemTier

by meta26 » 2020年7月12日(日) 10:31

penM さんが書きました: 2020年7月02日(木) 21:02
meta26 さんが書きました: 2020年7月02日(木) 18:57 ご指摘ありがとうございます。
前と後ろの部分、入れてみたのですが、Itemの前にnewがあると、fromItemsが適用できませんと表示され、pivateのところは使用されていませんと出て、newを消すとprivateのところは消えますが、fromItemsのとこはそのままです。どうすればいいですか?
おそらく正しくWoodCarbonの引数が宣言されたことで、型チェックが入っているのだと思います。
Ingredient.fromItemsはItem型を引数で持つことと、getContainerItem()がItem型を返すはずなので、
前回継承していなくてできなかったことを試してみてください。
これで動かなければ作者に問い合わせてください。
penM さんが書きました: 2020年6月29日(月) 20:48
meta26 さんが書きました: 2020年6月29日(月) 17:26 今、試してみた所、「FromItems(メソッド)はItemWoodCarbon(引数)に適用できません。」
と出ます。どうすればいいですか?
以下のAPIの情報からの推測ですが、getContainerItemが使えるのではないでしょうか?
Ingredient
Item

コード: 全て選択

Ingredient.fromItems(new ItemWoodCardon().getContainerItem() ));
Ingredient.fromItems(new ItemWoodCardon.getContainerItem() ));
ちなみに、作者とは誰の事を示していますか?

Re: バニラの装備やツールのitemTier

by meta26 » 2020年7月03日(金) 19:51

アドバイスありがとうございます。
getContainerItem()を入れたのですが、警告が出てきます(メソッドget...は型Itemでつかうべきではありません)また、Carbonの後ろにある()を消すとエラーが出てきます。どうすればいいですか?
添付ファイル
2020-07-03 (4).png
2020-07-03 (2).png
2020-07-03 (1).png
2020-07-03.png

Re: バニラの装備やツールのitemTier

by penM » 2020年7月02日(木) 21:02

meta26 さんが書きました: 2020年7月02日(木) 18:57 ご指摘ありがとうございます。
前と後ろの部分、入れてみたのですが、Itemの前にnewがあると、fromItemsが適用できませんと表示され、pivateのところは使用されていませんと出て、newを消すとprivateのところは消えますが、fromItemsのとこはそのままです。どうすればいいですか?
おそらく正しくWoodCarbonの引数が宣言されたことで、型チェックが入っているのだと思います。
Ingredient.fromItemsはItem型を引数で持つことと、getContainerItem()がItem型を返すはずなので、
前回継承していなくてできなかったことを試してみてください。
これで動かなければ作者に問い合わせてください。
penM さんが書きました: 2020年6月29日(月) 20:48
meta26 さんが書きました: 2020年6月29日(月) 17:26 今、試してみた所、「FromItems(メソッド)はItemWoodCarbon(引数)に適用できません。」
と出ます。どうすればいいですか?
以下のAPIの情報からの推測ですが、getContainerItemが使えるのではないでしょうか?
Ingredient
Item

コード: 全て選択

Ingredient.fromItems(new ItemWoodCardon().getContainerItem() ));
Ingredient.fromItems(new ItemWoodCardon.getContainerItem() ));

Re: バニラの装備やツールのitemTier

by meta26 » 2020年7月02日(木) 18:57

ご指摘ありがとうございます。
前と後ろの部分、入れてみたのですが、Itemの前にnewがあると、fromItemsが適用できませんと表示され、pivateのところは使用されていませんと出て、newを消すとprivateのところは消えますが、fromItemsのとこはそのままです。どうすればいいですか?
添付ファイル
2020-07-02 (2).png
2020-07-02 (1).png
2020-07-02.png

Re: バニラの装備やツールのitemTier

by penM » 2020年7月01日(水) 22:47

meta26 さんが書きました: 2020年7月01日(水) 18:55 指摘ありがとうざいます。ItemWoodCarbonにItemを継承させるようにプログラムを入れました。
ただ、それでもWoodCarbonのとこの豆電球は消えません。どうすればいいですか?
【マインクラフト Modding】1.15対応 自作MODの作り方 番外編 #1 アイテムティア、アーマーマテリアルの修正からコード拝借します。

DIRTですが、これは7つの引数を持ちます。しかし何が入るかはまだ宣言されていません。

コード: 全て選択

DIRT(    "dirtmod:dirt",
            15,
            new int[] {1,4,5,2},
            ArmorMaterial.IRON.getEnchantability(),
            SoundEvents.ITEM_ARMOR_EQUIP_LEATHER,
            ArmorMaterial.CHAIN.getToughness(),
            Ingredient.fromItems( new BlockSuperCompressedDirt().asItem() )
        );
で何が入るかは以下の宣言により確定します。ここで7個の引数の型などが宣言されています。アイテムティアでは引数が6個なので対応していることがわかります。thisはインスタンスで保持する変数である意味です。(詳しい意味は調べてください。)

コード: 全て選択

private DirtModArmorMaterials(String nameIn, int maxDamageFactorIn, int[] damageReductionAmountsIn, int enchantabilityIn, SoundEvent equipSoundIn, float p_i48533_8_, Ingredient repairMaterial) {
this.name = nameIn;
this.maxDamageFactor = maxDamageFactorIn;
this.damageReductionAmountArray = damageReductionAmountsIn;
this.enchantability = enchantabilityIn;
this.soundEvent = equipSoundIn;
this.toughness = p_i48533_8_;
this.repairMaterial = repairMaterial;
}
さらにthisで利用する変数は事前に宣言します。

コード: 全て選択

private static final int[] MAX_DAMAGE_ARRAY = new int[]{13, 15, 16, 11};
private final String name;
private final int maxDamageFactor;
private final int[] damageReductionAmountArray;
private final int enchantability;
private final SoundEvent soundEvent;
private final float toughness;
private final Ingredient repairMaterial;
この宣言がないため、WoodCarbonの引数がおかしいと言われているのではないでしょうか?

Re: バニラの装備やツールのitemTier

by meta26 » 2020年7月01日(水) 18:55

指摘ありがとうざいます。ItemWoodCarbonにItemを継承させるようにプログラムを入れました。
ただ、それでもWoodCarbonのとこの豆電球は消えません。どうすればいいですか?
添付ファイル
2020-07-01 (2).png
2020-07-01 (1).png

Re: バニラの装備やツールのitemTier

by penM » 2020年6月30日(火) 23:29

meta26 さんが書きました: 2020年6月30日(火) 20:22 1度動作確認した上で作成しました。
このコードを作る前には、ブロックの追加やアイテムも追加しています。ただ、ItemWoodCarbonにはプログラム入れてません。
ItemWoodCarbonにitemの継承がプログラムされていなければそれを用いたプログラムの作成ができないです。ItemWoodCarbonの内部が定義されることで、ItemWoodCarbon.~が使えるようになります。

Re: バニラの装備やツールのitemTier

by meta26 » 2020年6月30日(火) 20:22

1度動作確認した上で作成しました。
このコードを作る前には、ブロックの追加やアイテムも追加しています。ただ、ItemWoodCarbonにはプログラム入れてません。

Re: バニラの装備やツールのitemTier

by penM » 2020年6月30日(火) 19:29

meta26 さんが書きました: 2020年6月30日(火) 17:14 Newを消してitemWoodCarbonの()を消したところ、豆電球が消えましたが、今度は上から2番目の所に豆電球が現れ、13からIngredintの所まで消すようにと言われます。どうすれば良いですか?
また、コントラクターの追加も出てきてます。
参考にしたコードは一度動作を確認してから現在のコードを作成している認識であっていますか?
どこまでが正常に動いているかこちらはわからないので、すが、【マインクラフト Modding】1.15対応 自作MODの作り方 #5 ブロック、レシピの追加までは到達していますか?
itemWoodCarbonはどのようなプログラムが実装されているのでしょうか?

ページトップ