summaryrefslogtreecommitdiff
path: root/src/main/java/jp/plusplus/fbs/alchemy/IAlchemyProduct.java
blob: 1104aee33256591fdf72e756e6f8977ca45a9aa9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package jp.plusplus.fbs.alchemy;

import jp.plusplus.fbs.alchemy.characteristic.CharacteristicBase;
import net.minecraft.item.ItemStack;

import java.util.ArrayList;
import java.util.Random;

/**
 * Created by plusplus_F on 2015/09/09.
 * 大釜によって作成できるアイテムに実装すべきインターフェース
 */
public interface IAlchemyProduct {
    /**
     * その特性を引き継げるか判定する
     * @param cb 判定したい特性
     * @return true:引継ぎ可能
     */
    boolean canInherit(ItemStack itemStack, CharacteristicBase cb);

    /**
     * 特性引継ぎ時に、引継ぎ可能な特性の数を返す
     * @param itemStack
     * @return
     */
    int getMaxInheritAmount(ItemStack itemStack);

    /**
     * 調合した際に、最初から付与されている特性リストを返す
     * (このメソッドでは特性を付与しない!)
     * @param itemStack
     * @return
     */
    ArrayList<CharacteristicBase> getDefaultCharacteristics(ItemStack itemStack, Random rand);
}