Search in sources :

Example 11 with MaterialLayer

use of net.silentchaos512.gear.api.material.MaterialLayer in project Silent-Gear by SilentChaos512.

the class MaterialBuilder method displayAdornment.

public MaterialBuilder displayAdornment(PartTextureSet textures, int color) {
    display(PartType.ADORNMENT, GearType.ALL, new MaterialLayerList(PartType.ADORNMENT, textures, color));
    display(PartType.ADORNMENT, GearType.PART, new MaterialLayer(SilentGear.getId("adornment"), color), new MaterialLayer(SilentGear.getId("adornment_highlight"), Color.VALUE_WHITE));
    return this;
}
Also used : MaterialLayerList(net.silentchaos512.gear.api.material.MaterialLayerList) MaterialLayer(net.silentchaos512.gear.api.material.MaterialLayer)

Example 12 with MaterialLayer

use of net.silentchaos512.gear.api.material.MaterialLayer in project Silent-Gear by SilentChaos512.

the class MaterialBuilder method displayBowstring.

public MaterialBuilder displayBowstring(int color) {
    display(PartType.CORD, new MaterialLayer(PartTextures.BOWSTRING_STRING, color), // FIXME: Doesn't quite make sense to have this here
    new MaterialLayer(PartTextures.ARROW, Color.VALUE_WHITE));
    display(PartType.CORD, GearType.PART, new MaterialLayer(SilentGear.getId("bowstring"), color));
    return this;
}
Also used : MaterialLayer(net.silentchaos512.gear.api.material.MaterialLayer)

Example 13 with MaterialLayer

use of net.silentchaos512.gear.api.material.MaterialLayer in project Silent-Gear by SilentChaos512.

the class MaterialBuilder method displayCoating.

public MaterialBuilder displayCoating(PartTextureSet textures, int color) {
    display(PartType.COATING, GearType.ALL, new MaterialLayerList(PartType.MAIN, textures, color));
    display(PartType.COATING, GearType.PART, new MaterialLayer(SilentGear.getId("coating_material"), color), new MaterialLayer(SilentGear.getId("coating_jar"), Color.VALUE_WHITE));
    return this;
}
Also used : MaterialLayerList(net.silentchaos512.gear.api.material.MaterialLayerList) MaterialLayer(net.silentchaos512.gear.api.material.MaterialLayer)

Example 14 with MaterialLayer

use of net.silentchaos512.gear.api.material.MaterialLayer in project Silent-Gear by SilentChaos512.

the class MaterialBuilder method displayTip.

public MaterialBuilder displayTip(PartTextures texture, int color) {
    display(PartType.TIP, GearType.ALL, new MaterialLayer(texture, color));
    display(PartType.TIP, GearType.PART, new MaterialLayer(SilentGear.getId("tip_base"), Color.VALUE_WHITE), new MaterialLayer(SilentGear.getId("tip"), color), new MaterialLayer(SilentGear.getId("tip_shine"), Color.VALUE_WHITE));
    return this;
}
Also used : MaterialLayer(net.silentchaos512.gear.api.material.MaterialLayer)

Example 15 with MaterialLayer

use of net.silentchaos512.gear.api.material.MaterialLayer in project Silent-Gear by SilentChaos512.

the class MaterialsProvider method addRandomOrganics.

private void addRandomOrganics(Collection<MaterialBuilder> ret) {
    // Feather
    ret.add(new MaterialBuilder(modId("feather"), 1, Tags.Items.FEATHERS).categories(MaterialCategories.ORGANIC).stat(PartType.FLETCHING, ItemStats.PROJECTILE_SPEED, 0.9f).stat(PartType.FLETCHING, ItemStats.PROJECTILE_ACCURACY, 1.1f).displayAll(PartTextureSet.LOW_CONTRAST, Color.VALUE_WHITE).displayFragment(PartTextures.CLOTH, Color.VALUE_WHITE));
    // Leaves
    ret.add(new MaterialBuilder(modId("leaves"), 1, ItemTags.LEAVES).categories(MaterialCategories.ORGANIC).stat(PartType.FLETCHING, ItemStats.PROJECTILE_SPEED, 1.1f).stat(PartType.FLETCHING, ItemStats.PROJECTILE_ACCURACY, 0.9f).displayAll(PartTextureSet.LOW_CONTRAST, 0x4A8F28).displayFragment(PartTextures.CLOTH, 0x4A8F28));
    // Paper
    ret.add(new MaterialBuilder(modId("paper"), 0, ModTags.Items.PAPER).categories(MaterialCategories.ORGANIC).stat(PartType.FLETCHING, ItemStats.PROJECTILE_SPEED, 1.1f).stat(PartType.FLETCHING, ItemStats.PROJECTILE_ACCURACY, 0.9f).display(PartType.FLETCHING, PartTextureSet.LOW_CONTRAST, 0xFFFFFF));
    // Slime
    ret.add(new MaterialBuilder(modId("slime"), 1, Items.SLIME_BLOCK).categories(MaterialCategories.SLIME, MaterialCategories.ORGANIC).stat(PartType.LINING, ItemStats.ARMOR_TOUGHNESS, 0.5f, StatInstance.Operation.ADD).trait(PartType.LINING, Const.Traits.BOUNCE, 1).display(PartType.LINING, GearType.PART, new MaterialLayer(PartTextures.LINING_SLIME, 0x8CD782), new MaterialLayer(modId("lining_slime_highlight"), Color.VALUE_WHITE)).displayFragment(PartTextures.DUST, 0x8CD782));
    // Turtle
    ret.add(new MaterialBuilder(modId("turtle"), 2, Items.SCUTE).categories(MaterialCategories.ORGANIC).stat(PartType.MAIN, ItemStats.DURABILITY, 0).stat(PartType.MAIN, ItemStats.ARMOR_DURABILITY, GearType.HELMET, 25).stat(PartType.MAIN, ItemStats.ENCHANTABILITY, 9).stat(PartType.MAIN, ItemStats.RARITY, 20).mainStatsArmor(2, 0, 0, 0, 0, 4).stat(PartType.MAIN, ItemStats.CHARGEABILITY, 0.5f).trait(PartType.MAIN, Const.Traits.TURTLE, 1, new MaterialCountTraitCondition(3)).display(PartType.MAIN, GearType.HELMET, new MaterialLayer(modId("turtle"), 0x47BF4A)));
}
Also used : MaterialLayer(net.silentchaos512.gear.api.material.MaterialLayer)

Aggregations

MaterialLayer (net.silentchaos512.gear.api.material.MaterialLayer)27 IMaterialDisplay (net.silentchaos512.gear.api.material.IMaterialDisplay)12 IMaterial (net.silentchaos512.gear.api.material.IMaterial)9 ResourceLocation (net.minecraft.resources.ResourceLocation)6 MaterialInstance (net.silentchaos512.gear.gear.material.MaterialInstance)6 ArrayList (java.util.ArrayList)4 ImmutableList (com.google.common.collect.ImmutableList)3 Transformation (com.mojang.math.Transformation)3 BakedQuad (net.minecraft.client.renderer.block.model.BakedQuad)3 TextureAtlasSprite (net.minecraft.client.renderer.texture.TextureAtlasSprite)3 IMaterialInstance (net.silentchaos512.gear.api.material.IMaterialInstance)3 StaticLayer (net.silentchaos512.gear.api.material.StaticLayer)3 PartType (net.silentchaos512.gear.api.part.PartType)3 BakedPerspectiveModel (net.silentchaos512.gear.client.model.BakedPerspectiveModel)3 LazyMaterialInstance (net.silentchaos512.gear.gear.material.LazyMaterialInstance)3 GearType (net.silentchaos512.gear.api.item.GearType)2 MaterialLayerList (net.silentchaos512.gear.api.material.MaterialLayerList)2 IPartDisplay (net.silentchaos512.gear.api.part.IPartDisplay)2 PartTextures (net.silentchaos512.gear.client.model.PartTextures)2 PartData (net.silentchaos512.gear.gear.part.PartData)2