forked from mirrors/cobblemon
Merge branch 'advancing-advancements-returns-in-1.8' into 'main'
Advancing Advancements into 1.8 See merge request cable-mc/cobblemon!2223
This commit is contained in:
@@ -52,6 +52,7 @@
|
||||
- The lush shipwreck cove structure itself has been slightly cleaned up to be less noisy with the blocks it is built out of.
|
||||
- All shipwreck coves' spawners have been adjusted to give compatible mobs enchanted iron or diamond armour and weapons while in its ominous state. The armour given to the mobs will also use the automaton trim. We upped the difficulty because it was too easy now that your Pokémon can fight for you.
|
||||
- One TM of the elemental hyper beams has been added as guaranteed loot to the main treasure chest in every shipwreck cove. (Magma cove gets blast burn, lush cove gets frenzy plant, and submerged cove gets hydro cannon)
|
||||
- Added 7 new advancements
|
||||
|
||||
### New rideable Pokémon
|
||||
- Drampa
|
||||
@@ -146,6 +147,26 @@
|
||||
|
||||
### Changes
|
||||
- Dragonite's mailbag cosmetic can now also be obtained with a chest in the cosmetic slot
|
||||
- Sharp Beak can now be crafted
|
||||
- Metal Alloy can now be crafted
|
||||
- Ability Capsules can now be brewed
|
||||
- The following items can now be obtained by brushing the following Pokemon:
|
||||
- Pink Wool - Wigglytuff
|
||||
- White Wool - Swablu, Altaria
|
||||
- Shed Shell - Ekans, Arbok, Dratini, Dragonair, Dunsparce, Treecko, Grovyle, Sceptile, Seviper, Scraggy, Scrafty, Helioptile, Heliolisk, Salandit, Salazzle, Sobble, Drizzile, Inteleon, Silicoblra, Sandaconda, Toxel, Toxtricity, Orthworm, Dudunsparce
|
||||
- Phantom Membrane - Dreepy, Drakloak, Dragapult
|
||||
- The following items can now be obtained by evolving the following Pokemon into any of their evolutions:
|
||||
- Turtle Scute - Squirtle, Wartortle, Turtwig, Grotle, Tirtouga, Chewtle
|
||||
- Shed Shell - Metapod, Kakuna, Ekans, Paras, Venonat, Krabby, Scyther, Kabuto, Dratini, Dragonair, Ledyba, Spinarak, Yanma, Pineco, Dunsparce, GLigar, Pupitar, Treecko, Grovyle, Silcoon, Cascoon, Surskit, Nincada, Trapinch, Vibrava, Corphish, Anorith, Bagon, Shelgon, Kricketot, Burmy, Combee, Skorupi, Swadloon, Whirlipede, Dwebble, Scraggy, Karrablast, Joltik, Larvesta, Spewpa, Clauncher, Helioptile, Charjabug, Crabrawler, Cutiefly, Dewpider, Salandit, Wimpod, Poipole, Sobble, Drizzile, Dottler, Silicobra, Toxel, Sizzlipede, Snom, Tarountula, Nymble, Rellor
|
||||
- Saccharine Leaves now drop Tart, Sweet, or Syrupy Apples, depending on their honey coating stage, instead of vanilla Apples
|
||||
- Fixed the height of the Tumblestone Bud items when held in hand, placed on head, viewed in a GUI, and placed in an Item Frame
|
||||
- Refactored all advancements, removing several deemed unnecessary. Due to this refactor, all previously obtained advancements will be reset besides the root (for picking a starter Pokemon). We are sorry for the inconvience, but it makes the tab cleaner and makes future advancements simpler.
|
||||
|
||||
### Fixes
|
||||
- Adjusted Croagunk's walkspeed
|
||||
- Fixed Blitzle's base scale being `1` rather than the intended `0.8`
|
||||
- Fixed Magnezone's emissive layer for the shiny having the wrong name, thus displaying wrongly
|
||||
- Fixed Litleo not blinking
|
||||
- Restructured Botany Pots integration folder structure
|
||||
- Decrease the default pastured mon wander radius to 32.
|
||||
- Factor in the weight of Pokémon when calculating pushing forces between hitboxes.
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
package com.cobblemon.mod.common.mixin;
|
||||
|
||||
import com.cobblemon.mod.common.block.entity.TMShelfBlockEntity;
|
||||
import com.cobblemon.mod.common.block.entity.DiscShelfBlockEntity;
|
||||
import net.minecraft.core.BlockPos;
|
||||
import net.minecraft.core.Holder;
|
||||
import net.minecraft.sounds.SoundEvent;
|
||||
@@ -29,7 +29,7 @@ public abstract class NoteBlockMixin {
|
||||
private void cobblemon$triggerTMShelfSequencer(BlockState state, Level level, BlockPos pos, int type, int data, CallbackInfoReturnable<Boolean> cir) {
|
||||
final BlockPos shelfPos = pos.below();
|
||||
final BlockEntity blockEntity = level.getBlockEntity(shelfPos);
|
||||
if (!(blockEntity instanceof TMShelfBlockEntity tmShelfBlockEntity)) {
|
||||
if (!(blockEntity instanceof DiscShelfBlockEntity discShelfBlockEntity)) {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -43,7 +43,7 @@ public abstract class NoteBlockMixin {
|
||||
final Holder<SoundEvent> holder = instrument.getSoundEvent();
|
||||
soundEvent = holder.value();
|
||||
}
|
||||
tmShelfBlockEntity.onNoteBlockPulse(level, pos, soundEvent);
|
||||
discShelfBlockEntity.onNoteBlockPulse(level, pos, soundEvent);
|
||||
}
|
||||
|
||||
// Suppress vanilla note-block playback while it is on top of a TM Shelf.
|
||||
|
||||
@@ -33,7 +33,7 @@ object CobblemonBlockEntities : PlatformRegistry<Registry<BlockEntityType<*>>, R
|
||||
val LECTERN: BlockEntityType<LecternBlockEntity> = this.create("lectern", BlockEntityType.Builder.of(::LecternBlockEntity, CobblemonBlocks.LECTERN).build(null))
|
||||
|
||||
@JvmField
|
||||
val TM_SHELF: BlockEntityType<TMShelfBlockEntity> = this.create("tm_shelf", BlockEntityType.Builder.of(::TMShelfBlockEntity, CobblemonBlocks.TM_SHELF).build(null))
|
||||
val DISC_SHELF: BlockEntityType<DiscShelfBlockEntity> = this.create("disc_shelf", BlockEntityType.Builder.of(::DiscShelfBlockEntity, CobblemonBlocks.DISC_SHELF).build(null))
|
||||
|
||||
@JvmField
|
||||
val BERRY = this.create("berry", BlockEntityType.Builder.of(::BerryBlockEntity, *CobblemonBlocks.berries().values.toTypedArray()).build(null))
|
||||
|
||||
@@ -702,7 +702,7 @@ object CobblemonBlocks : PlatformRegistry<Registry<Block>, ResourceKey<Registry<
|
||||
val LECTERN = create("lectern", LecternBlock(BlockBehaviour.Properties.of().mapColor(MapColor.WOOD).instrument(NoteBlockInstrument.BASS).sound(SoundType.WOOD).strength(2.5F).ignitedByLava().lightLevel { if (it.getValue(LecternBlock.EMIT_LIGHT) as Boolean) 13 else 0 }))
|
||||
|
||||
@JvmField
|
||||
val TM_SHELF = create("tm_shelf", TMShelfBlock(BlockBehaviour.Properties.of().mapColor(MapColor.WOOD).instrument(NoteBlockInstrument.BASS).sound(SoundType.METAL).strength(2.5F)))
|
||||
val DISC_SHELF = create("disc_shelf", DiscShelfBlock(BlockBehaviour.Properties.of().mapColor(MapColor.WOOD).instrument(NoteBlockInstrument.BASS).sound(SoundType.METAL).strength(2.5F)))
|
||||
|
||||
@JvmField
|
||||
val DISPLAY_CASE = create("display_case", DisplayCaseBlock(BlockBehaviour.Properties.of().sound(CobblemonSounds.DISPLAY_CASE_SOUNDS).noOcclusion().pushReaction(PushReaction.BLOCK).mapColor(MapColor.STONE).strength(0.3F).requiresCorrectToolForDrops()))
|
||||
|
||||
@@ -460,7 +460,7 @@ object CobblemonItems : PlatformRegistry<Registry<Item>, ResourceKey<Registry<It
|
||||
@JvmField
|
||||
val TM_MACHINE = blockItem("tm_machine", CobblemonBlocks.TM_MACHINE)
|
||||
@JvmField
|
||||
val TM_SHELF = blockItem("tm_shelf", CobblemonBlocks.TM_SHELF)
|
||||
val DISC_SHELF = blockItem("disc_shelf", CobblemonBlocks.DISC_SHELF)
|
||||
@JvmField
|
||||
val PASTURE = blockItem("pasture", CobblemonBlocks.PASTURE)
|
||||
@JvmField
|
||||
@@ -1524,41 +1524,41 @@ object CobblemonItems : PlatformRegistry<Registry<Item>, ResourceKey<Registry<It
|
||||
|
||||
// Type Gems
|
||||
@JvmField
|
||||
val NORMAL_GEM = this.create("normal_gem", itemNameBlockItem("normal_gem", CobblemonBlocks.TYPE_GEM_CLUSTER_NORMAL))
|
||||
val NORMAL_GEM = this.create("normal_gem", GemItem(Item.Properties(), CobblemonBlocks.TYPE_GEM_CLUSTER_NORMAL))
|
||||
@JvmField
|
||||
val FIRE_GEM = this.create("fire_gem", itemNameBlockItem("fire_gem", CobblemonBlocks.TYPE_GEM_CLUSTER_FIRE))
|
||||
val FIRE_GEM = this.create("fire_gem", GemItem(Item.Properties(), CobblemonBlocks.TYPE_GEM_CLUSTER_FIRE))
|
||||
@JvmField
|
||||
val WATER_GEM = this.create("water_gem", itemNameBlockItem("water_gem", CobblemonBlocks.TYPE_GEM_CLUSTER_WATER))
|
||||
val WATER_GEM = this.create("water_gem", GemItem(Item.Properties(), CobblemonBlocks.TYPE_GEM_CLUSTER_WATER))
|
||||
@JvmField
|
||||
val GRASS_GEM = this.create("grass_gem", itemNameBlockItem("grass_gem", CobblemonBlocks.TYPE_GEM_CLUSTER_GRASS))
|
||||
val GRASS_GEM = this.create("grass_gem", GemItem(Item.Properties(), CobblemonBlocks.TYPE_GEM_CLUSTER_GRASS))
|
||||
@JvmField
|
||||
val ELECTRIC_GEM = this.create("electric_gem", itemNameBlockItem("electric_gem", CobblemonBlocks.TYPE_GEM_CLUSTER_ELECTRIC))
|
||||
val ELECTRIC_GEM = this.create("electric_gem", GemItem(Item.Properties(), CobblemonBlocks.TYPE_GEM_CLUSTER_ELECTRIC))
|
||||
@JvmField
|
||||
val ICE_GEM = this.create("ice_gem", itemNameBlockItem("ice_gem", CobblemonBlocks.TYPE_GEM_CLUSTER_ICE))
|
||||
val ICE_GEM = this.create("ice_gem", GemItem(Item.Properties(), CobblemonBlocks.TYPE_GEM_CLUSTER_ICE))
|
||||
@JvmField
|
||||
val FIGHTING_GEM = this.create("fighting_gem", itemNameBlockItem("fighting_gem", CobblemonBlocks.TYPE_GEM_CLUSTER_FIGHTING))
|
||||
val FIGHTING_GEM = this.create("fighting_gem", GemItem(Item.Properties(), CobblemonBlocks.TYPE_GEM_CLUSTER_FIGHTING))
|
||||
@JvmField
|
||||
val POISON_GEM = this.create("poison_gem", itemNameBlockItem("poison_gem", CobblemonBlocks.TYPE_GEM_CLUSTER_POISON))
|
||||
val POISON_GEM = this.create("poison_gem", GemItem(Item.Properties(), CobblemonBlocks.TYPE_GEM_CLUSTER_POISON))
|
||||
@JvmField
|
||||
val GROUND_GEM = this.create("ground_gem", itemNameBlockItem("ground_gem", CobblemonBlocks.TYPE_GEM_CLUSTER_GROUND))
|
||||
val GROUND_GEM = this.create("ground_gem", GemItem(Item.Properties(), CobblemonBlocks.TYPE_GEM_CLUSTER_GROUND))
|
||||
@JvmField
|
||||
val FLYING_GEM = this.create("flying_gem", itemNameBlockItem("flying_gem", CobblemonBlocks.TYPE_GEM_CLUSTER_FLYING))
|
||||
val FLYING_GEM = this.create("flying_gem", GemItem(Item.Properties(), CobblemonBlocks.TYPE_GEM_CLUSTER_FLYING))
|
||||
@JvmField
|
||||
val PSYCHIC_GEM = this.create("psychic_gem", itemNameBlockItem("psychic_gem", CobblemonBlocks.TYPE_GEM_CLUSTER_PSYCHIC))
|
||||
val PSYCHIC_GEM = this.create("psychic_gem", GemItem(Item.Properties(), CobblemonBlocks.TYPE_GEM_CLUSTER_PSYCHIC))
|
||||
@JvmField
|
||||
val BUG_GEM = this.create("bug_gem", itemNameBlockItem("bug_gem", CobblemonBlocks.TYPE_GEM_CLUSTER_BUG))
|
||||
val BUG_GEM = this.create("bug_gem", GemItem(Item.Properties(), CobblemonBlocks.TYPE_GEM_CLUSTER_BUG))
|
||||
@JvmField
|
||||
val ROCK_GEM = this.create("rock_gem", itemNameBlockItem("rock_gem", CobblemonBlocks.TYPE_GEM_CLUSTER_ROCK))
|
||||
val ROCK_GEM = this.create("rock_gem", GemItem(Item.Properties(), CobblemonBlocks.TYPE_GEM_CLUSTER_ROCK))
|
||||
@JvmField
|
||||
val GHOST_GEM = this.create("ghost_gem", itemNameBlockItem("ghost_gem", CobblemonBlocks.TYPE_GEM_CLUSTER_GHOST))
|
||||
val GHOST_GEM = this.create("ghost_gem", GemItem(Item.Properties(), CobblemonBlocks.TYPE_GEM_CLUSTER_GHOST))
|
||||
@JvmField
|
||||
val DRAGON_GEM = this.create("dragon_gem", itemNameBlockItem("dragon_gem", CobblemonBlocks.TYPE_GEM_CLUSTER_DRAGON))
|
||||
val DRAGON_GEM = this.create("dragon_gem", GemItem(Item.Properties(), CobblemonBlocks.TYPE_GEM_CLUSTER_DRAGON))
|
||||
@JvmField
|
||||
val DARK_GEM = this.create("dark_gem", itemNameBlockItem("dark_gem", CobblemonBlocks.TYPE_GEM_CLUSTER_DARK))
|
||||
val DARK_GEM = this.create("dark_gem", GemItem(Item.Properties(), CobblemonBlocks.TYPE_GEM_CLUSTER_DARK))
|
||||
@JvmField
|
||||
val STEEL_GEM = this.create("steel_gem", itemNameBlockItem("steel_gem", CobblemonBlocks.TYPE_GEM_CLUSTER_STEEL))
|
||||
val STEEL_GEM = this.create("steel_gem", GemItem(Item.Properties(), CobblemonBlocks.TYPE_GEM_CLUSTER_STEEL))
|
||||
@JvmField
|
||||
val FAIRY_GEM = this.create("fairy_gem", itemNameBlockItem("fairy_gem", CobblemonBlocks.TYPE_GEM_CLUSTER_FAIRY))
|
||||
val FAIRY_GEM = this.create("fairy_gem", GemItem(Item.Properties(), CobblemonBlocks.TYPE_GEM_CLUSTER_FAIRY))
|
||||
|
||||
//@JvmField
|
||||
//val BINDING_SOIL = blockItem("binding_soil", CobblemonBlocks.BINDING_SOIL)
|
||||
|
||||
@@ -81,6 +81,9 @@ object CobblemonCriteria : PlatformRegistry<Registry<CriterionTrigger<*>>, Resou
|
||||
@JvmField
|
||||
val PLANT_TUMBLESTONE = this.create("plant_tumblestone", SimpleCriterionTrigger(PlantTumblestoneCriterion.CODEC))
|
||||
|
||||
@JvmField
|
||||
val PLANT_TYPE_GEM = this.create("plant_type_gem", SimpleCriterionTrigger(PlantTypeGemCriterion.CODEC))
|
||||
|
||||
val RIDING_STAT_BOOST = this.create("riding_stat_boost", SimpleCriterionTrigger(RidingStatBoostCriterion.CODEC))
|
||||
|
||||
@JvmField
|
||||
|
||||
+35
@@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (C) 2023 Cobblemon Contributors
|
||||
*
|
||||
* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at https://mozilla.org/MPL/2.0/.
|
||||
*/
|
||||
|
||||
package com.cobblemon.mod.common.advancement.criterion
|
||||
|
||||
import com.cobblemon.mod.common.block.TypeGemClusterBlock
|
||||
import com.cobblemon.mod.common.block.TypeGemCoreBlock
|
||||
import com.mojang.serialization.Codec
|
||||
import com.mojang.serialization.codecs.RecordCodecBuilder
|
||||
import net.minecraft.advancements.critereon.ContextAwarePredicate
|
||||
import net.minecraft.core.BlockPos
|
||||
import net.minecraft.server.level.ServerPlayer
|
||||
import java.util.*
|
||||
|
||||
class PlantTypeGemContext(val pos: BlockPos, val block: TypeGemClusterBlock)
|
||||
|
||||
class PlantTypeGemCriterion(
|
||||
playerCtx: Optional<ContextAwarePredicate>
|
||||
): SimpleCriterionCondition<PlantTypeGemContext>(playerCtx) {
|
||||
|
||||
companion object {
|
||||
val CODEC: Codec<PlantTypeGemCriterion> = RecordCodecBuilder.create { it.group(
|
||||
ContextAwarePredicate.CODEC.optionalFieldOf("player").forGetter(PlantTypeGemCriterion::playerCtx)
|
||||
).apply(it, ::PlantTypeGemCriterion) }
|
||||
}
|
||||
|
||||
override fun matches(player: ServerPlayer, context: PlantTypeGemContext): Boolean {
|
||||
return player.level().getBlockState(context.pos).block is TypeGemCoreBlock
|
||||
}
|
||||
}
|
||||
+8
-8
@@ -8,7 +8,7 @@
|
||||
|
||||
package com.cobblemon.mod.common.block
|
||||
|
||||
import com.cobblemon.mod.common.block.entity.TMShelfBlockEntity
|
||||
import com.cobblemon.mod.common.block.entity.DiscShelfBlockEntity
|
||||
import com.mojang.serialization.MapCodec
|
||||
import net.minecraft.core.BlockPos
|
||||
import net.minecraft.core.Direction
|
||||
@@ -30,9 +30,9 @@ import net.minecraft.world.Containers
|
||||
import net.minecraft.world.phys.BlockHitResult
|
||||
import net.minecraft.world.phys.shapes.VoxelShape
|
||||
|
||||
class TMShelfBlock(properties: Properties) : BaseEntityBlock(properties) {
|
||||
class DiscShelfBlock(properties: Properties) : BaseEntityBlock(properties) {
|
||||
companion object {
|
||||
val CODEC: MapCodec<TMShelfBlock> = simpleCodec(::TMShelfBlock)
|
||||
val CODEC: MapCodec<DiscShelfBlock> = simpleCodec(::DiscShelfBlock)
|
||||
val FACING: DirectionProperty = HorizontalDirectionalBlock.FACING
|
||||
val SLOT_OCCUPIED_PROPERTIES = (0 until 14).map {
|
||||
BooleanProperty.create("slot_${it}_occupied")
|
||||
@@ -49,7 +49,7 @@ class TMShelfBlock(properties: Properties) : BaseEntityBlock(properties) {
|
||||
override fun codec() = CODEC
|
||||
|
||||
override fun newBlockEntity(pos: BlockPos, state: BlockState): BlockEntity {
|
||||
return TMShelfBlockEntity(pos, state)
|
||||
return DiscShelfBlockEntity(pos, state)
|
||||
}
|
||||
|
||||
override fun createBlockStateDefinition(builder: StateDefinition.Builder<Block, BlockState>) {
|
||||
@@ -67,7 +67,7 @@ class TMShelfBlock(properties: Properties) : BaseEntityBlock(properties) {
|
||||
state: BlockState, level: Level, pos: BlockPos,
|
||||
player: Player, hit: BlockHitResult
|
||||
): InteractionResult {
|
||||
val entity = level.getBlockEntity(pos) as? TMShelfBlockEntity ?: return InteractionResult.PASS
|
||||
val entity = level.getBlockEntity(pos) as? DiscShelfBlockEntity ?: return InteractionResult.PASS
|
||||
return entity.handleUseWithoutItem(state, level, pos, player, hit)
|
||||
}
|
||||
|
||||
@@ -75,21 +75,21 @@ class TMShelfBlock(properties: Properties) : BaseEntityBlock(properties) {
|
||||
stack: ItemStack, state: BlockState, level: Level, pos: BlockPos,
|
||||
player: Player, hand: InteractionHand, hit: BlockHitResult
|
||||
): ItemInteractionResult {
|
||||
val entity = level.getBlockEntity(pos) as? TMShelfBlockEntity ?: return ItemInteractionResult.SKIP_DEFAULT_BLOCK_INTERACTION
|
||||
val entity = level.getBlockEntity(pos) as? DiscShelfBlockEntity ?: return ItemInteractionResult.SKIP_DEFAULT_BLOCK_INTERACTION
|
||||
return entity.handleUseItem(stack, state, level, pos, player, hit)
|
||||
}
|
||||
|
||||
override fun hasAnalogOutputSignal(state: BlockState) = true
|
||||
|
||||
override fun getAnalogOutputSignal(state: BlockState, level: Level, pos: BlockPos): Int {
|
||||
val entity = level.getBlockEntity(pos) as? TMShelfBlockEntity
|
||||
val entity = level.getBlockEntity(pos) as? DiscShelfBlockEntity
|
||||
return entity?.items?.count { !it.isEmpty }?.coerceIn(0, 14) ?: 0
|
||||
}
|
||||
|
||||
override fun onRemove(state: BlockState, level: Level, pos: BlockPos, newState: BlockState, movedByPiston: Boolean) {
|
||||
if (!state.`is`(newState.block)) {
|
||||
if (!level.isClientSide && !movedByPiston) {
|
||||
val entity = level.getBlockEntity(pos) as? TMShelfBlockEntity
|
||||
val entity = level.getBlockEntity(pos) as? DiscShelfBlockEntity
|
||||
if (entity != null) {
|
||||
for (index in entity.items.indices) {
|
||||
val stack = entity.items[index]
|
||||
@@ -94,14 +94,14 @@ class TypeGemClusterBlock(
|
||||
.setValue(STUNTED, false)
|
||||
}
|
||||
|
||||
override fun isRandomlyTicking(state: BlockState): Boolean = state.getValue(SHOULD_GROW)
|
||||
public override fun isRandomlyTicking(state: BlockState): Boolean = state.getValue(SHOULD_GROW)
|
||||
|
||||
override fun randomTick(state: BlockState, level: ServerLevel, pos: BlockPos, random: RandomSource) {
|
||||
advanceGrowth(state, level, pos, random)
|
||||
}
|
||||
|
||||
fun advanceGrowth(state: BlockState, level: LevelAccessor, pos: BlockPos, random: RandomSource) {
|
||||
if (!state.getValue(SHOULD_GROW)) return
|
||||
if (!gemClusterCanGrow(state, level, pos)) return
|
||||
|
||||
val currentStage = state.getValue(STAGE)
|
||||
|
||||
@@ -179,6 +179,14 @@ class TypeGemClusterBlock(
|
||||
}
|
||||
}
|
||||
|
||||
fun gemClusterCanGrow(state: BlockState, level: LevelReader, pos: BlockPos): Boolean {
|
||||
if (!state.getValue(SHOULD_GROW)) return false
|
||||
|
||||
val supportPos = pos.relative(state.getValue(FACING).opposite)
|
||||
val supportBlock = level.getBlockState(supportPos).block
|
||||
return CobblemonBlocks.typeGemBlocks().containsValue(supportBlock) || (supportBlock == CobblemonBlocks.TYPE_GEM_CORE) // Cannot grow if not on any gem blocks
|
||||
}
|
||||
|
||||
override fun getDrops(state: BlockState, params: LootParams.Builder): List<ItemStack> {
|
||||
val drops = super.getDrops(state, params)
|
||||
|
||||
@@ -186,14 +194,14 @@ class TypeGemClusterBlock(
|
||||
val blockItem = stack.item as? BlockItem ?: continue
|
||||
if (blockItem.block !is TypeGemClusterBlock) continue
|
||||
val itemPath = BuiltInRegistries.ITEM.getKey(stack.item).path
|
||||
if (!itemPath.startsWith("type_gem_cluster_")) continue
|
||||
if (!itemPath.endsWith("_gem_cluster")) continue
|
||||
|
||||
stack.set(
|
||||
DataComponents.BLOCK_STATE,
|
||||
BlockItemStateProperties.EMPTY
|
||||
.with(STAGE, state.getValue(STAGE))
|
||||
.with(SHOULD_GROW, false)
|
||||
.with(STUNTED, state.getValue(STUNTED))
|
||||
.with(STUNTED, false)
|
||||
)
|
||||
stack.set(
|
||||
DataComponents.CUSTOM_MODEL_DATA,
|
||||
@@ -248,9 +256,9 @@ class TypeGemClusterBlock(
|
||||
}
|
||||
|
||||
override fun canSurvive(state: BlockState, level: LevelReader, pos: BlockPos): Boolean {
|
||||
val supportPos = pos.relative(state.getValue(FACING).opposite)
|
||||
val supportBlock = level.getBlockState(supportPos).block
|
||||
return CobblemonBlocks.typeGemBlocks().containsValue(supportBlock) || (supportBlock == CobblemonBlocks.TYPE_GEM_CORE)
|
||||
val direction = state.getValue(FACING)
|
||||
val supportPos = pos.relative(direction.opposite)
|
||||
return level.getBlockState(supportPos).isFaceSturdy(level, supportPos, direction)
|
||||
}
|
||||
|
||||
override fun propagatesSkylightDown(state: BlockState, level: net.minecraft.world.level.BlockGetter, pos: BlockPos): Boolean = true
|
||||
@@ -266,4 +274,23 @@ class TypeGemClusterBlock(
|
||||
super.createBlockStateDefinition(builder)
|
||||
builder.add(FACING, SHOULD_GROW, STAGE, STUNTED)
|
||||
}
|
||||
|
||||
override fun getCloneItemStack(level: LevelReader, pos: BlockPos, state: BlockState): ItemStack {
|
||||
val stack = super.getCloneItemStack(level, pos, state)
|
||||
val itemPath = BuiltInRegistries.ITEM.getKey(stack.item).path
|
||||
if (itemPath.endsWith("_gem_cluster")) {
|
||||
stack.set(
|
||||
DataComponents.BLOCK_STATE,
|
||||
BlockItemStateProperties.EMPTY
|
||||
.with(STAGE, state.getValue(STAGE))
|
||||
.with(SHOULD_GROW, false)
|
||||
.with(STUNTED, false)
|
||||
)
|
||||
stack.set(
|
||||
DataComponents.CUSTOM_MODEL_DATA,
|
||||
CustomModelData(state.getValue(STAGE))
|
||||
)
|
||||
}
|
||||
return stack
|
||||
}
|
||||
}
|
||||
|
||||
+8
-6
@@ -10,7 +10,7 @@ package com.cobblemon.mod.common.block.entity
|
||||
|
||||
import com.cobblemon.mod.common.CobblemonBlockEntities
|
||||
import com.cobblemon.mod.common.CobblemonItems
|
||||
import com.cobblemon.mod.common.block.TMShelfBlock
|
||||
import com.cobblemon.mod.common.block.DiscShelfBlock
|
||||
import com.cobblemon.mod.common.item.interactive.TechnicalMachineItem
|
||||
import net.minecraft.core.BlockPos
|
||||
import net.minecraft.core.Direction
|
||||
@@ -36,7 +36,7 @@ import net.minecraft.world.level.gameevent.GameEvent
|
||||
import java.util.OptionalInt
|
||||
import kotlin.math.pow
|
||||
|
||||
class TMShelfBlockEntity(pos: BlockPos, state: BlockState) : BlockEntity(CobblemonBlockEntities.TM_SHELF, pos, state), WorldlyContainer {
|
||||
class DiscShelfBlockEntity(pos: BlockPos, state: BlockState) : BlockEntity(CobblemonBlockEntities.DISC_SHELF, pos, state), WorldlyContainer {
|
||||
val items: NonNullList<ItemStack> = NonNullList.withSize(14, ItemStack.EMPTY)
|
||||
var lastInteractedSlot: Int = -1
|
||||
private val accessibleSlots = IntArray(14) { it }
|
||||
@@ -56,7 +56,9 @@ class TMShelfBlockEntity(pos: BlockPos, state: BlockState) : BlockEntity(Cobblem
|
||||
}
|
||||
|
||||
items[slot] = stack.copyWithCount(1)
|
||||
stack.shrink(1)
|
||||
if (!player.isCreative) {
|
||||
stack.shrink(1)
|
||||
}
|
||||
lastInteractedSlot = slot
|
||||
updateBlockState(level, pos)
|
||||
markUpdated()
|
||||
@@ -81,8 +83,8 @@ class TMShelfBlockEntity(pos: BlockPos, state: BlockState) : BlockEntity(Cobblem
|
||||
}
|
||||
|
||||
private fun updateBlockState(level: Level, pos: BlockPos) {
|
||||
val newState = TMShelfBlock.SLOT_OCCUPIED_PROPERTIES.fold(blockState) { acc, prop ->
|
||||
val index = TMShelfBlock.SLOT_OCCUPIED_PROPERTIES.indexOf(prop)
|
||||
val newState = DiscShelfBlock.SLOT_OCCUPIED_PROPERTIES.fold(blockState) { acc, prop ->
|
||||
val index = DiscShelfBlock.SLOT_OCCUPIED_PROPERTIES.indexOf(prop)
|
||||
acc.setValue(prop, !items[index].isEmpty)
|
||||
}
|
||||
level.setBlock(pos, newState, 3)
|
||||
@@ -91,7 +93,7 @@ class TMShelfBlockEntity(pos: BlockPos, state: BlockState) : BlockEntity(Cobblem
|
||||
}
|
||||
|
||||
private fun getHitSlot(hit: BlockHitResult, state: BlockState): OptionalInt {
|
||||
val facing = state.getValue(TMShelfBlock.FACING)
|
||||
val facing = state.getValue(DiscShelfBlock.FACING)
|
||||
if (hit.direction != facing) {
|
||||
return OptionalInt.empty()
|
||||
}
|
||||
@@ -436,7 +436,7 @@ object CobblemonClient {
|
||||
this.implementation.registerBlockEntityRenderer(CobblemonBlockEntities.LECTERN, ::LecternBlockEntityRenderer)
|
||||
this.implementation.registerBlockEntityRenderer(CobblemonBlockEntities.CAMPFIRE, ::CampfireBlockEntityRenderer)
|
||||
this.implementation.registerBlockEntityRenderer(CobblemonBlockEntities.POKE_SNACK, ::PokeSnackBlockEntityRenderer)
|
||||
this.implementation.registerBlockEntityRenderer(CobblemonBlockEntities.TM_SHELF, ::TMShelfBlockEntityRenderer)
|
||||
this.implementation.registerBlockEntityRenderer(CobblemonBlockEntities.DISC_SHELF, ::DiscShelfBlockEntityRenderer)
|
||||
}
|
||||
|
||||
private fun registerEntityRenderers() {
|
||||
|
||||
+12
-12
@@ -8,7 +8,7 @@
|
||||
|
||||
package com.cobblemon.mod.common.client.render.block
|
||||
|
||||
import com.cobblemon.mod.common.block.entity.TMShelfBlockEntity
|
||||
import com.cobblemon.mod.common.block.entity.DiscShelfBlockEntity
|
||||
import com.cobblemon.mod.common.CobblemonItems
|
||||
import com.cobblemon.mod.common.client.render.color.TechnicalMachineItemColorProvider
|
||||
import com.cobblemon.mod.common.util.cobblemonResource
|
||||
@@ -29,8 +29,8 @@ import net.minecraft.world.level.BlockAndTintGetter
|
||||
import net.minecraft.world.level.block.HorizontalDirectionalBlock
|
||||
import org.joml.Matrix4f
|
||||
|
||||
class TMShelfBlockEntityRenderer(ctx: BlockEntityRendererProvider.Context) :
|
||||
BlockEntityRenderer<TMShelfBlockEntity> {
|
||||
class DiscShelfBlockEntityRenderer(ctx: BlockEntityRendererProvider.Context) :
|
||||
BlockEntityRenderer<DiscShelfBlockEntity> {
|
||||
|
||||
private val slotWidthPixels = 6
|
||||
private val slotHeightPixels = 2
|
||||
@@ -44,16 +44,16 @@ class TMShelfBlockEntityRenderer(ctx: BlockEntityRendererProvider.Context) :
|
||||
private val tmOverlayDepthOffset = -0.0002f
|
||||
private val slotBrightnessMultiplier = 0.65f
|
||||
|
||||
private val tmBaseTexture = cobblemonResource("textures/block/tm_shelf/technical_machine_base.png")
|
||||
private val tmOverlayTexture = cobblemonResource("textures/block/tm_shelf/technical_machine_overlay.png")
|
||||
private val tmBaseTexture = cobblemonResource("textures/block/disc_shelf/technical_machine_base.png")
|
||||
private val tmOverlayTexture = cobblemonResource("textures/block/disc_shelf/technical_machine_overlay.png")
|
||||
|
||||
override fun render(
|
||||
entity: TMShelfBlockEntity,
|
||||
partialTicks: Float,
|
||||
poseStack: PoseStack,
|
||||
buffer: MultiBufferSource,
|
||||
light: Int,
|
||||
overlay: Int
|
||||
entity: DiscShelfBlockEntity,
|
||||
partialTicks: Float,
|
||||
poseStack: PoseStack,
|
||||
buffer: MultiBufferSource,
|
||||
light: Int,
|
||||
overlay: Int
|
||||
) {
|
||||
val facing = entity.blockState.getValue(HorizontalDirectionalBlock.FACING)
|
||||
val rotation = when (facing) {
|
||||
@@ -188,6 +188,6 @@ class TMShelfBlockEntityRenderer(ctx: BlockEntityRendererProvider.Context) :
|
||||
|
||||
private fun getItemTexture(itemStack: ItemStack): ResourceLocation {
|
||||
val id = BuiltInRegistries.ITEM.getKey(itemStack.item)
|
||||
return cobblemonResource("textures/block/tm_shelf/${id.path}.png")
|
||||
return cobblemonResource("textures/block/disc_shelf/${id.path}.png")
|
||||
}
|
||||
}
|
||||
@@ -25,7 +25,9 @@ import com.cobblemon.mod.common.api.events.battles.BattleVictoryEvent
|
||||
import com.cobblemon.mod.common.api.events.pokemon.*
|
||||
import com.cobblemon.mod.common.api.events.pokemon.evolution.EvolutionCompleteEvent
|
||||
import com.cobblemon.mod.common.block.TumblestoneBlock
|
||||
import com.cobblemon.mod.common.block.TypeGemClusterBlock
|
||||
import com.cobblemon.mod.common.item.TumblestoneItem
|
||||
import net.minecraft.world.item.BlockItem
|
||||
import com.cobblemon.mod.common.platform.events.ServerPlayerEvent
|
||||
import com.cobblemon.mod.common.api.storage.player.PlayerInstancedDataStoreTypes
|
||||
import com.cobblemon.mod.common.platform.events.PlatformEvents
|
||||
@@ -37,6 +39,7 @@ import java.util.*
|
||||
object AdvancementHandler : EventHandler {
|
||||
override fun registerListeners() {
|
||||
PlatformEvents.RIGHT_CLICK_BLOCK.subscribe(Priority.LOWEST, ::onTumbleStonePlaced)
|
||||
PlatformEvents.RIGHT_CLICK_BLOCK.subscribe(Priority.LOWEST, ::onTypeGemClusterPlaced)
|
||||
POKEMON_CAPTURED.subscribe(Priority.LOWEST, ::onCapture)
|
||||
BATTLE_VICTORY.subscribe(Priority.LOWEST, ::onWinBattle)
|
||||
EVOLUTION_COMPLETE.subscribe(Priority.LOWEST, ::onEvolve)
|
||||
@@ -195,6 +198,12 @@ object AdvancementHandler : EventHandler {
|
||||
}
|
||||
}
|
||||
|
||||
fun onTypeGemClusterPlaced(event: ServerPlayerEvent.RightClickBlock) {
|
||||
val item = event.player.getItemInHand(event.hand).item as? BlockItem ?: return
|
||||
val block = item.block as? TypeGemClusterBlock ?: return
|
||||
CobblemonCriteria.PLANT_TYPE_GEM.trigger(event.player, PlantTypeGemContext(event.pos, block))
|
||||
}
|
||||
|
||||
fun startRiding(event: RidePokemonEvent.Post) {
|
||||
CobblemonCriteria.RIDING_STAT_BOOST.trigger(event.player, RidingStatBoostContext(event.pokemon))
|
||||
}
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
/*
|
||||
* Copyright (C) 2023 Cobblemon Contributors
|
||||
*
|
||||
* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at https://mozilla.org/MPL/2.0/.
|
||||
*/
|
||||
|
||||
package com.cobblemon.mod.common.item
|
||||
|
||||
import com.cobblemon.mod.common.CobblemonSounds
|
||||
import net.minecraft.sounds.SoundEvents
|
||||
import net.minecraft.sounds.SoundSource
|
||||
import net.minecraft.world.InteractionResult
|
||||
import net.minecraft.world.item.Item
|
||||
import net.minecraft.world.item.context.UseOnContext
|
||||
import net.minecraft.world.level.block.Block
|
||||
import net.minecraft.world.level.block.DirectionalBlock
|
||||
|
||||
class GemItem(settings: Properties, val block: Block): Item(settings) {
|
||||
override fun useOn(context: UseOnContext): InteractionResult {
|
||||
if (context.player == null) return InteractionResult.FAIL
|
||||
|
||||
val state = context.level.getBlockState(context.clickedPos)
|
||||
val world = context.level
|
||||
val pos = context.clickedPos
|
||||
val direction = context.clickedFace
|
||||
|
||||
if (state.isFaceSturdy(world, pos, direction)) {
|
||||
if (!world.getBlockState(pos.relative(direction)).isAir) return InteractionResult.FAIL
|
||||
context.itemInHand.consume(1, context.player)
|
||||
world.setBlockAndUpdate(pos.relative(direction), block.defaultBlockState().setValue(DirectionalBlock.FACING, direction))
|
||||
world.playSound(null, pos, CobblemonSounds.TYPE_GEM_CLUSTER_SOUNDS.placeSound, SoundSource.BLOCKS)
|
||||
return InteractionResult.SUCCESS
|
||||
}
|
||||
|
||||
return InteractionResult.FAIL
|
||||
}
|
||||
}
|
||||
@@ -12,9 +12,11 @@ import com.cobblemon.mod.common.Cobblemon
|
||||
import com.cobblemon.mod.common.CobblemonItemComponents
|
||||
import com.cobblemon.mod.common.CobblemonItems
|
||||
import com.cobblemon.mod.common.api.riding.stats.RidingStat
|
||||
import com.cobblemon.mod.common.block.TypeGemClusterBlock
|
||||
import com.cobblemon.mod.common.item.AprijuiceItem
|
||||
import com.cobblemon.mod.common.item.components.RideBoostsComponent
|
||||
import com.cobblemon.mod.common.util.cobblemonResource
|
||||
import net.minecraft.core.component.DataComponents
|
||||
import net.minecraft.core.registries.BuiltInRegistries
|
||||
import net.minecraft.network.chat.Component
|
||||
import net.minecraft.resources.ResourceKey
|
||||
@@ -23,8 +25,11 @@ import net.minecraft.world.item.CreativeModeTab
|
||||
import net.minecraft.world.item.CreativeModeTab.DisplayItemsGenerator
|
||||
import net.minecraft.world.item.CreativeModeTab.ItemDisplayParameters
|
||||
import net.minecraft.world.item.CreativeModeTab.Output
|
||||
import net.minecraft.world.item.Item
|
||||
import net.minecraft.world.item.ItemStack
|
||||
import net.minecraft.world.item.Items
|
||||
import net.minecraft.world.item.component.BlockItemStateProperties
|
||||
import net.minecraft.world.item.component.CustomModelData
|
||||
import net.minecraft.world.level.ItemLike
|
||||
|
||||
@Suppress("unused", "UNUSED_PARAMETER")
|
||||
@@ -240,16 +245,76 @@ object CobblemonItemGroups {
|
||||
entries.accept(CobblemonItems.DARK_GEM)
|
||||
entries.accept(CobblemonItems.STEEL_GEM)
|
||||
entries.accept(CobblemonItems.FAIRY_GEM)
|
||||
|
||||
gemClusterEntries(entries, CobblemonItems.TYPE_GEM_CLUSTER_NORMAL)
|
||||
gemClusterEntries(entries, CobblemonItems.TYPE_GEM_CLUSTER_FIRE)
|
||||
gemClusterEntries(entries, CobblemonItems.TYPE_GEM_CLUSTER_WATER)
|
||||
gemClusterEntries(entries, CobblemonItems.TYPE_GEM_CLUSTER_GRASS)
|
||||
gemClusterEntries(entries, CobblemonItems.TYPE_GEM_CLUSTER_ELECTRIC)
|
||||
gemClusterEntries(entries, CobblemonItems.TYPE_GEM_CLUSTER_ICE)
|
||||
gemClusterEntries(entries, CobblemonItems.TYPE_GEM_CLUSTER_FIGHTING)
|
||||
gemClusterEntries(entries, CobblemonItems.TYPE_GEM_CLUSTER_POISON)
|
||||
gemClusterEntries(entries, CobblemonItems.TYPE_GEM_CLUSTER_GROUND)
|
||||
gemClusterEntries(entries, CobblemonItems.TYPE_GEM_CLUSTER_FLYING)
|
||||
gemClusterEntries(entries, CobblemonItems.TYPE_GEM_CLUSTER_PSYCHIC)
|
||||
gemClusterEntries(entries, CobblemonItems.TYPE_GEM_CLUSTER_BUG)
|
||||
gemClusterEntries(entries, CobblemonItems.TYPE_GEM_CLUSTER_ROCK)
|
||||
gemClusterEntries(entries, CobblemonItems.TYPE_GEM_CLUSTER_GHOST)
|
||||
gemClusterEntries(entries, CobblemonItems.TYPE_GEM_CLUSTER_DRAGON)
|
||||
gemClusterEntries(entries, CobblemonItems.TYPE_GEM_CLUSTER_DARK)
|
||||
gemClusterEntries(entries, CobblemonItems.TYPE_GEM_CLUSTER_STEEL)
|
||||
gemClusterEntries(entries, CobblemonItems.TYPE_GEM_CLUSTER_FAIRY)
|
||||
|
||||
entries.accept(CobblemonItems.TYPE_GEM_CORE)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_NORMAL)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_FIRE)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_WATER)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_ELECTRIC)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_GRASS)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_ICE)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_FIGHTING)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_POISON)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_GROUND)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_FLYING)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_PSYCHIC)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_BUG)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_ROCK)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_GHOST)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_DRAGON)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_DARK)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_STEEL)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_FAIRY)
|
||||
}
|
||||
|
||||
private fun gemClusterEntries(entries: Output, clusterItem: Item) {
|
||||
for (i in TypeGemClusterBlock.STAGE.possibleValues) {
|
||||
val stack = ItemStack(clusterItem)
|
||||
stack.set(
|
||||
DataComponents.BLOCK_STATE,
|
||||
BlockItemStateProperties.EMPTY
|
||||
.with(TypeGemClusterBlock.STAGE, i)
|
||||
.with(TypeGemClusterBlock.SHOULD_GROW, false)
|
||||
.with(TypeGemClusterBlock.STUNTED, false)
|
||||
)
|
||||
stack.set(
|
||||
DataComponents.CUSTOM_MODEL_DATA,
|
||||
CustomModelData(i)
|
||||
)
|
||||
entries.accept(stack)
|
||||
}
|
||||
}
|
||||
|
||||
private fun blockEntries(displayContext: ItemDisplayParameters, entries: Output) {
|
||||
entries.accept(CobblemonItems.RESTORATION_TANK)
|
||||
entries.accept(CobblemonItems.FOSSIL_ANALYZER)
|
||||
entries.accept(CobblemonItems.MONITOR)
|
||||
entries.accept(CobblemonItems.DAMAGED_MONITOR)
|
||||
entries.accept(CobblemonItems.PC)
|
||||
entries.accept(CobblemonItems.HEALING_MACHINE)
|
||||
entries.accept(CobblemonItems.PASTURE)
|
||||
entries.accept(CobblemonItems.TM_MACHINE)
|
||||
entries.accept(CobblemonItems.DISC_SHELF)
|
||||
entries.accept(CobblemonItems.HABITAT_BLOCK)
|
||||
|
||||
entries.accept(CobblemonItems.GILDED_CHEST)
|
||||
entries.accept(CobblemonItems.YELLOW_GILDED_CHEST)
|
||||
@@ -312,8 +377,8 @@ object CobblemonItemGroups {
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_NORMAL)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_FIRE)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_WATER)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_ELECTRIC)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_GRASS)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_ELECTRIC)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_ICE)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_FIGHTING)
|
||||
entries.accept(CobblemonItems.TYPE_GEM_BLOCK_POISON)
|
||||
@@ -392,7 +457,6 @@ object CobblemonItemGroups {
|
||||
entries.accept(CobblemonItems.WATER_STONE_ORE)
|
||||
entries.accept(CobblemonItems.DEEPSLATE_WATER_STONE_ORE)
|
||||
|
||||
entries.accept(CobblemonItems.HABITAT_BLOCK)
|
||||
entries.accept(CobblemonItems.DAWN_STONE_BLOCK)
|
||||
entries.accept(CobblemonItems.DUSK_STONE_BLOCK)
|
||||
entries.accept(CobblemonItems.FIRE_STONE_BLOCK)
|
||||
@@ -890,6 +954,7 @@ object CobblemonItemGroups {
|
||||
|
||||
private fun opBlocksInjections(injector: Injector) {
|
||||
injector.putLast(CobblemonItems.NPC_EDITOR)
|
||||
injector.putLast(CobblemonItems.HABITAT_BLOCK)
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"variants": {
|
||||
"facing=north": { "model": "cobblemon:block/disc_shelf" },
|
||||
"facing=south": { "model": "cobblemon:block/disc_shelf", "y": 180 },
|
||||
"facing=west": { "model": "cobblemon:block/disc_shelf", "y": 270 },
|
||||
"facing=east": { "model": "cobblemon:block/disc_shelf", "y": 90 }
|
||||
}
|
||||
}
|
||||
@@ -1,8 +0,0 @@
|
||||
{
|
||||
"variants": {
|
||||
"facing=north": { "model": "cobblemon:block/tm_shelf" },
|
||||
"facing=south": { "model": "cobblemon:block/tm_shelf", "y": 180 },
|
||||
"facing=west": { "model": "cobblemon:block/tm_shelf", "y": 270 },
|
||||
"facing=east": { "model": "cobblemon:block/tm_shelf", "y": 90 }
|
||||
}
|
||||
}
|
||||
@@ -992,6 +992,7 @@
|
||||
"block.cobblemon.campfire_pot_white": "White Campfire Pot",
|
||||
"block.cobblemon.campfire_pot_yellow": "Yellow Campfire Pot",
|
||||
"block.cobblemon.tm_machine": "TM Machine",
|
||||
"block.cobblemon.disc_shelf": "Disc Shelf",
|
||||
"block.cobblemon.hearty_grain_bale": "Hearty Grain Bale",
|
||||
"block.cobblemon.tatami_block": "Tatami",
|
||||
"block.cobblemon.tatami_mat": "Tatami Mat",
|
||||
@@ -2783,129 +2784,127 @@
|
||||
"cobblemon.config.ui.starters": "Starters",
|
||||
|
||||
"advancements.cobblemon.root": "The World of Cobblemon!",
|
||||
"advancements.cobblemon.root.description": "Choose a starter Pokémon and set out on a new adventure",
|
||||
"advancements.cobblemon.obtain_leftovers": "Reduce, Reuse, Recycle!",
|
||||
"advancements.cobblemon.obtain_leftovers.description": "Keep the leftovers after eating an apple",
|
||||
"advancements.cobblemon.any_plant": "Mother Nature's Bounty",
|
||||
"advancements.cobblemon.any_plant.description": "Hope you've got a green thumb!",
|
||||
"advancements.cobblemon.root.description": "Choose a starter Pokémon and set out on a new adventure",
|
||||
"advancements.cobblemon.root_agriculture": "Mother Nature's Bounty",
|
||||
"advancements.cobblemon.root_agriculture.description": "Hope you've got a green thumb!",
|
||||
"advancements.cobblemon.harvest_apricorn": "Is it a Fruit or is it a Nut?",
|
||||
"advancements.cobblemon.harvest_apricorn.description": "Right-click to harvest a fully-grown Apricorn",
|
||||
"advancements.cobblemon.harvest_apricorn_seed": "Doing my Part",
|
||||
"advancements.cobblemon.harvest_apricorn_seed.description": "Occasionally, Apricorns will drop an Apricorn seed. Use one to plant a new tree",
|
||||
"advancements.cobblemon.bone_meal_apricorn": "No need for a Watering Can",
|
||||
"advancements.cobblemon.bone_meal_apricorn.description": "Use bone meal to accelerate Apricorn growth",
|
||||
"advancements.cobblemon.rainbow_apricorns": "Reapriforestation",
|
||||
"advancements.cobblemon.rainbow_apricorns.description": "Plant an Apricorn tree of every kind",
|
||||
"advancements.cobblemon.craft_poke_ball": "The First of Many",
|
||||
"advancements.cobblemon.craft_poke_ball.description": "Using four of the same Apricorn and a Copper Ingot, craft your first Poké Ball",
|
||||
"advancements.cobblemon.craft_base_balls": "A Full Palette",
|
||||
"advancements.cobblemon.craft_base_balls.description": "Craft all seven of the basic colored Poké Balls",
|
||||
"advancements.cobblemon.craft_apricorn_balls": "Kurt would be Proud",
|
||||
"advancements.cobblemon.craft_apricorn_balls.description": "Craft all seven of the original Apricorn Balls",
|
||||
"advancements.cobblemon.craft_all_balls": "Poké Ball Maniac",
|
||||
"advancements.cobblemon.craft_all_balls.description": "Craft one of every Poké Ball in the game",
|
||||
"advancements.cobblemon.first_catch": "A New Friend!",
|
||||
"advancements.cobblemon.first_catch.description": "Use a Poké Ball and catch your first Pokémon",
|
||||
"advancements.cobblemon.full_party": "Full House",
|
||||
"advancements.cobblemon.full_party.description": "Catch more Pokémon and make a full party of 6",
|
||||
"advancements.cobblemon.first_evolution": "Hard Work and Dedication",
|
||||
"advancements.cobblemon.first_evolution.description": "Meet a Pokémon's evolution requirements and evolve them from the party menu",
|
||||
"advancements.cobblemon.first_battle_victory": "Where's my Victory Music?",
|
||||
"advancements.cobblemon.first_battle_victory.description": "Go head-to-head against another trainer and come out on top",
|
||||
"advancements.cobblemon.first_shiny_catch": "Lucky Color",
|
||||
"advancements.cobblemon.first_shiny_catch.description": "Catch your first Shiny Pokémon",
|
||||
"advancements.cobblemon.healing_machine": "Healing Power",
|
||||
"advancements.cobblemon.healing_machine.description": "Wait long enough for a Healing Machine to charge, and then heal your party",
|
||||
"advancements.cobblemon.obtain_leek": "There's a Leek in the Boat!",
|
||||
"advancements.cobblemon.obtain_leek.description": "Obtain a Medicinal Leek, a wild crop that grows in freshwater",
|
||||
"advancements.cobblemon.medicinal_brew": "Local Apothecary",
|
||||
"advancements.cobblemon.medicinal_brew.description": "Brew a Medicinal Leek to create the basis for your healing needs",
|
||||
"advancements.cobblemon.brew_potion": "You Cannot Handle My Potions",
|
||||
"advancements.cobblemon.brew_potion.description": "Brew an Oran Berry into Medicinal Brew to create a Potion",
|
||||
"advancements.cobblemon.brew_full_restore": "Champion's Choice",
|
||||
"advancements.cobblemon.brew_full_restore.description": "Follow the brewing tree and create a Full Restore with a Lum Berry and Max Potion",
|
||||
"advancements.cobblemon.brew_all": "Double Double Toil & Trouble",
|
||||
"advancements.cobblemon.brew_all.description": "Brew every possible item using Medicinal Brew",
|
||||
"advancements.cobblemon.obtain_mint": "Minty Fresh",
|
||||
"advancements.cobblemon.obtain_mint.description": "Obtain a Nature Mint, a wild crop that grows high in the mountains",
|
||||
"advancements.cobblemon.obtain_all_mints": "A Big Commit-mint",
|
||||
"advancements.cobblemon.obtain_all_mints.description": "Obtain all 6 colors of Nature Mint and gain access to a full array of natures",
|
||||
"advancements.cobblemon.plant_all_apricorn_sprouts": "Reapriforestation",
|
||||
"advancements.cobblemon.plant_all_apricorn_sprouts.description": "Plant an Apricorn Sprout of every color",
|
||||
"advancements.cobblemon.obtain_revival_herb": "Herb your Enthusiasm",
|
||||
"advancements.cobblemon.obtain_revival_herb.description": "Obtain a Revival Herb, a wild crop that grows in lush caves",
|
||||
"advancements.cobblemon.use_revive": "Live to fight another day!",
|
||||
"advancements.cobblemon.use_revive.description": "Use a Revive, Max Revive, or Revival Herb to revive a fainted Pokémon",
|
||||
"advancements.cobblemon.obtain_big_root": "The Root of Basic Healing",
|
||||
"advancements.cobblemon.obtain_big_root.description": "Obtain a Big Root, a wild crop that grows in dirt caves close to the surface",
|
||||
"advancements.cobblemon.craft_remedy": "Basic Healing",
|
||||
"advancements.cobblemon.craft_remedy.description": "Craft a Remedy, an early-game healing item that can be crafted into stronger forms",
|
||||
"advancements.cobblemon.use_healing_machine": "Healing Power",
|
||||
"advancements.cobblemon.use_healing_machine.description": "Wait long enough for a Healing Machine to charge, and then heal your party",
|
||||
"advancements.cobblemon.obtain_berry": "Very Berry",
|
||||
"advancements.cobblemon.obtain_berry.description": "Obtain any Berry, wild crops that grow on the surface and have many uses",
|
||||
"advancements.cobblemon.obtain_mutated_berry": "An Unexpected Result",
|
||||
"advancements.cobblemon.obtain_mutated_berry.description": "Plant Berry Trees of different types next to each other and witness Mutation in action",
|
||||
"advancements.cobblemon.obtain_all_berries": "Oops, all Berries!",
|
||||
"advancements.cobblemon.obtain_all_berries.description": "Obtain one of every Berry in Cobblemon",
|
||||
"advancements.cobblemon.use_pasture": "Free Roam: Enabled",
|
||||
"advancements.cobblemon.use_pasture.description": "Craft a Pasture Block and allow your friends to wander",
|
||||
"advancements.cobblemon.catch_all_vivillon": "Aspiring Vivillionaire",
|
||||
"advancements.cobblemon.catch_all_vivillon.description": "Obtain all patterns of Vivillon...",
|
||||
"advancements.cobblemon.catch_all_vivillon_but_actually": "True Vivillionaire",
|
||||
"advancements.cobblemon.catch_all_vivillon_but_actually.description": "Obtain the rest",
|
||||
"advancements.cobblemon.evolve_veevees": "Valued Veevees",
|
||||
"advancements.cobblemon.evolve_veevees.description": "Evolve Eevee into 8 different forms",
|
||||
"advancements.cobblemon.evolve_shedinja": "Ghost in the Shell",
|
||||
"advancements.cobblemon.evolve_shedinja.description": "Have an extra Poké Ball in your inventory and obtain a Shedinja",
|
||||
"advancements.cobblemon.trade_pokemon": "Take Good Care!",
|
||||
"advancements.cobblemon.trade_pokemon.description": "Trade a Pokémon with another Trainer",
|
||||
"advancements.cobblemon.trade_shelmet_karrablast": "I'd like to report a theft!",
|
||||
"advancements.cobblemon.trade_shelmet_karrablast.description": "Trade a Shelmet and Karrablast",
|
||||
"advancements.cobblemon.max_level_baby": "Darwin? Who's That?",
|
||||
"advancements.cobblemon.max_level_baby.description": "Take a first-stage Pokémon capable of evolution up to level 100",
|
||||
"advancements.cobblemon.use_candy": "Sweet Tooth",
|
||||
"advancements.cobblemon.use_candy.description": "Use any XP Candy on a Pokémon",
|
||||
"advancements.cobblemon.own_zangoose_seviper": "Begrudging Partners",
|
||||
"advancements.cobblemon.own_zangoose_seviper.description": "Have a Zangoose and Seviper in your party at the same time",
|
||||
"advancements.cobblemon.obtain_fossil": "Consult the Fossil",
|
||||
"advancements.cobblemon.obtain_fossil.description": "Discover a fossil buried deep in the time-worn ground",
|
||||
"advancements.cobblemon.evolve_gholdengo_netherite": "Cover thee in Debris",
|
||||
"advancements.cobblemon.evolve_gholdengo_netherite.description": "Evolve a Gimmighoul into a fully netherite-coated Gholdengo",
|
||||
"advancements.cobblemon.resurrect_pokemon": "Life Finds a Way",
|
||||
"advancements.cobblemon.resurrect_pokemon.description": "Obtain a Fossil Pokémon from a Resurrection Machine",
|
||||
"advancements.cobblemon.resurrect_galar_fossil": "Didn't Stop to Think",
|
||||
"advancements.cobblemon.resurrect_galar_fossil.description": "Resurrect a Fossil Pokémon made from a Fossilized Bird or Fish and Fossilized Drake or Dino",
|
||||
"advancements.cobblemon.obtain_tumblestone": "The Rolling Stone",
|
||||
"advancements.cobblemon.obtain_tumblestone.description": "Safely extract a Tumblestone from suspicious sand or gravel",
|
||||
"advancements.cobblemon.grow_tumblestone": "Tumbling Down",
|
||||
"advancements.cobblemon.grow_tumblestone.description": "Place a Tumblestone near Lava or Magma to grow it over time",
|
||||
"advancements.cobblemon.craft_ancient_balls": "A True Antiquarian",
|
||||
"advancements.cobblemon.craft_ancient_balls.description": "Utilize Tumblestones to craft all fifteen Ancient Balls",
|
||||
"advancements.cobblemon.craft_rod": "New Angles for Angling",
|
||||
"advancements.cobblemon.craft_rod.description": "Unlock new ways to fish by creating a Poké Rod at a Smithing Table",
|
||||
"advancements.cobblemon.use_all_berry_bait": "Some Berry Good Lures",
|
||||
"advancements.cobblemon.use_all_berry_bait.description": "Reel in a Pokémon with one of each of the different berries attached to your Poké Rod",
|
||||
"advancements.cobblemon.craft_master_rod": "This will affect the Whiscash Population",
|
||||
"advancements.cobblemon.craft_master_rod.description": "Craft a Poké Rod using a Master Ball",
|
||||
"advancements.cobblemon.craft_pokedex": "Researcher Recruit",
|
||||
"advancements.cobblemon.craft_pokedex.description": "Craft a Pokédex out of Apricorns, Iron, Copper, and any glowing powder",
|
||||
"advancements.cobblemon.ride_pokemon": "Pokémon Jockey!",
|
||||
"advancements.cobblemon.ride_pokemon.description": "Ride a Pokémon for the first time",
|
||||
"advancements.cobblemon.use_mint": "Not a big Commit-mint",
|
||||
"advancements.cobblemon.use_mint.description": "Change a Pokémon's stat alignment with a nature mint",
|
||||
"advancements.cobblemon.place_campfire_pot": "We Need To Cook",
|
||||
"advancements.cobblemon.place_campfire_pot.description": "Place down a Campfire Pot on a lit Campfire",
|
||||
"advancements.cobblemon.brew_medicinal_brew": "Local Apothecary",
|
||||
"advancements.cobblemon.brew_medicinal_brew.description": "Brew a Medicinal Leek to create the basis for your pharmaceutical needs",
|
||||
"advancements.cobblemon.brew_potion": "You Cannot Handle My Potions",
|
||||
"advancements.cobblemon.brew_potion.description": "Brew an Oran Berry into Medicinal Brew to create a Potion",
|
||||
"advancements.cobblemon.brew_full_restore": "Champion's Choice",
|
||||
"advancements.cobblemon.brew_full_restore.description": "Follow the brewing tree and create a Full Restore with a Lum Berry and Max Potion",
|
||||
"advancements.cobblemon.brew_all_potions": "Double Double Toil & Trouble",
|
||||
"advancements.cobblemon.brew_all_potions.description": "Create every possible item using Medicinal Brew",
|
||||
"advancements.cobblemon.use_exp_candy": "Sweet Tooth",
|
||||
"advancements.cobblemon.use_exp_candy.description": "Use any XP Candy on a Pokémon",
|
||||
"advancements.cobblemon.use_iv_candy": "Souped-Up Stats",
|
||||
"advancements.cobblemon.use_iv_candy.description": "Use any candy that alters the potential of Individual Values on a Pokémon",
|
||||
"advancements.cobblemon.cook_all_regional_delicacies": "Culinary World Tour",
|
||||
"advancements.cobblemon.cook_all_regional_delicacies.description": "Cook up every Regional Delicacy",
|
||||
"advancements.cobblemon.cook_all_ev_mochi": "Mochi Mochi!",
|
||||
"advancements.cobblemon.cook_all_ev_mochi.description": "Cook every flavor of mochi, a tasty snack that can manipulate a Pokémon's Effort Values",
|
||||
"advancements.cobblemon.cook_snack": "A Luring Aroma",
|
||||
"advancements.cobblemon.cook_snack.description": "Bake a Poké Snack, a delicious cake that can attract certain Pokémon based on the berries used",
|
||||
"advancements.cobblemon.use_poke_bait": "That's Bait",
|
||||
"advancements.cobblemon.use_poke_bait.description": "Prepare a custom Poké Bait in a Campfire Pot and use it to reel in a Pokémon",
|
||||
"advancements.cobblemon.max_ride_stats": "Star Pokéathlete",
|
||||
"advancements.cobblemon.max_ride_stats.description": "Max out all five of a Pokémon's ride stats by feeding it flavored Aprijuice\nDifferent flavor profiles raise different stats",
|
||||
"advancements.cobblemon.cook_poke_snack": "A Luring Aroma",
|
||||
"advancements.cobblemon.cook_poke_snack.description": "Bake a Poké Snack, a delicious cake that can attract certain Pokémon based on the berries used",
|
||||
"advancements.cobblemon.root_battle": "Where's my Victory Music?",
|
||||
"advancements.cobblemon.root_battle.description": "Go head-to-head against another trainer and come out on top",
|
||||
"advancements.cobblemon.root_catching": "The First of Many",
|
||||
"advancements.cobblemon.root_catching.description": "Using four of the same Apricorn and a Copper Ingot, craft your first Poké Ball",
|
||||
"advancements.cobblemon.craft_basic_balls": "A Full Palette",
|
||||
"advancements.cobblemon.craft_basic_balls.description": "Craft all seven of the basic colored Poké Balls",
|
||||
"advancements.cobblemon.craft_apricorn_balls": "Kurt would be Proud",
|
||||
"advancements.cobblemon.craft_apricorn_balls.description": "Craft all seven of the original Apricorn Balls",
|
||||
"advancements.cobblemon.craft_ancient_balls": "A True Antiquarian",
|
||||
"advancements.cobblemon.craft_ancient_balls.description": "Utilize Tumblestones to craft all fifteen Ancient Balls",
|
||||
"advancements.cobblemon.craft_all_balls": "Poké Ball Maniac",
|
||||
"advancements.cobblemon.craft_all_balls.description": "Craft one of every Poké Ball in the game",
|
||||
"advancements.cobblemon.first_catch": "A New Friend!",
|
||||
"advancements.cobblemon.first_catch.description": "Use a Poké Ball and catch your first Pokémon",
|
||||
"advancements.cobblemon.first_shiny_catch": "Lucky Color",
|
||||
"advancements.cobblemon.first_shiny_catch.description": "Catch your first Shiny Pokémon",
|
||||
"advancements.cobblemon.first_alpha_catch": "Follow the Leader",
|
||||
"advancements.cobblemon.first_alpha_catch.description": "Catch an Alpha Pokémon",
|
||||
"advancements.cobblemon.catch_alpha_wailord": "Call me Ishmael!",
|
||||
"advancements.cobblemon.catch_alpha_wailord.description": "Reel in an Alpha Wailord",
|
||||
"advancements.cobblemon.full_party": "Full House",
|
||||
"advancements.cobblemon.full_party.description": "Catch more Pokémon and make a full party of 6",
|
||||
"advancements.cobblemon.use_pasture": "Free Roam: Enabled",
|
||||
"advancements.cobblemon.use_pasture.description": "Craft a Pasture Block and allow your friends to wander",
|
||||
"advancements.cobblemon.interact_with_pokemon": "Home on the Range",
|
||||
"advancements.cobblemon.interact_with_pokemon.description": "Use one of your many tools to procure resources from your Pokémon",
|
||||
"advancements.cobblemon.ride_pokemon": "Pokémon Jockey!",
|
||||
"advancements.cobblemon.ride_pokemon.description": "Ride a Pokémon for the first time",
|
||||
"advancements.cobblemon.max_ride_stats": "Star Pokéathlete",
|
||||
"advancements.cobblemon.max_ride_stats.description": "Max out all five of a Pokémon's ride stats by feeding it flavored Aprijuice\nDifferent flavor profiles raise different stats",
|
||||
"advancements.cobblemon.first_evolution": "Hard Work and Dedication",
|
||||
"advancements.cobblemon.first_evolution.description": "Meet a Pokémon's evolution requirements and evolve them from the party menu",
|
||||
"advancements.cobblemon.max_level_baby": "Darwin? Who's That?",
|
||||
"advancements.cobblemon.max_level_baby.description": "Take a first-stage Pokémon capable of evolution up to level 100",
|
||||
"advancements.cobblemon.evolve_shedinja": "Ghost in the Shell",
|
||||
"advancements.cobblemon.evolve_shedinja.description": "Have an extra Poké Ball in your inventory and obtain a Shedinja",
|
||||
"advancements.cobblemon.evolve_gholdengo_netherite": "Cover thee in Debris",
|
||||
"advancements.cobblemon.evolve_gholdengo_netherite.description": "Evolve a Gimmighoul into a fully netherite-coated Gholdengo",
|
||||
"advancements.cobblemon.trade_pokemon": "Take Good Care!",
|
||||
"advancements.cobblemon.trade_pokemon.description": "Trade a Pokémon with another Trainer",
|
||||
"advancements.cobblemon.trade_shelmet_karrablast": "I'd like to report a theft!",
|
||||
"advancements.cobblemon.trade_shelmet_karrablast.description": "Trade a Shelmet and Karrablast",
|
||||
"advancements.cobblemon.slather_saccharine": "Just a Smackerel",
|
||||
"advancements.cobblemon.slather_saccharine.description": "Smear a bottle of honey on the log of a Saccharine tree and entice certain Pokémon to appear",
|
||||
"advancements.cobblemon.craft_rod": "New Angles for Angling",
|
||||
"advancements.cobblemon.craft_rod.description": "Unlock new ways to fish by creating a Poké Rod at a Smithing Table",
|
||||
"advancements.cobblemon.craft_master_rod": "This will affect the Whiscash Population",
|
||||
"advancements.cobblemon.craft_master_rod.description": "Craft a Poké Rod using a Master Ball",
|
||||
"advancements.cobblemon.use_poke_bait": "That's Bait",
|
||||
"advancements.cobblemon.use_poke_bait.description": "Prepare a custom Poké Bait in a Campfire Pot and use it to reel in a Pokémon",
|
||||
"advancements.cobblemon.craft_pokedex": "Researcher Recruit",
|
||||
"advancements.cobblemon.craft_pokedex.description": "Craft a Pokédex out of Apricorns, Iron, Copper, and any glowing powder",
|
||||
"advancements.cobblemon.collect_all_vivillon": "Aspiring Vivillionaire",
|
||||
"advancements.cobblemon.collect_all_vivillon.description": "Obtain all patterns of Vivillon...",
|
||||
"advancements.cobblemon.collect_all_vivillon_full": "True Vivillionaire",
|
||||
"advancements.cobblemon.collect_all_vivillon_full.description": "...and obtain the rest",
|
||||
"advancements.cobblemon.root_geological": "Interesting Stones",
|
||||
"advancements.cobblemon.root_geological.description": "You can find all sorts of things buried in the underground",
|
||||
"advancements.cobblemon.obtain_fossil": "Consult the Fossil",
|
||||
"advancements.cobblemon.obtain_fossil.description": "Discover a fossil buried deep in the time-worn ground",
|
||||
"advancements.cobblemon.resurrect_pokemon": "Life Finds a Way",
|
||||
"advancements.cobblemon.resurrect_pokemon.description": "Obtain a Fossil Pokémon from a Resurrection Machine",
|
||||
"advancements.cobblemon.resurrect_galar_fossil": "Didn't Stop to Think",
|
||||
"advancements.cobblemon.resurrect_galar_fossil.description": "Resurrect a Fossil Pokémon made from a Fossilized Bird or Fish and Fossilized Drake or Dino",
|
||||
"advancements.cobblemon.obtain_tumblestone": "The Rolling Stone",
|
||||
"advancements.cobblemon.obtain_tumblestone.description": "Safely extract a Tumblestone from suspicious sand or gravel",
|
||||
"advancements.cobblemon.plant_tumblestone": "Tumbling Down",
|
||||
"advancements.cobblemon.plant_tumblestone.description": "Place a Tumblestone near Lava or Magma to grow it over time",
|
||||
"advancements.cobblemon.plant_type_gem": "They're Minerals!",
|
||||
"advancements.cobblemon.plant_type_gem.description": "Use a Deepslate Crystal Core's energy to grow a Type Gem",
|
||||
"advancements.cobblemon.craft_tm": "Show Me Your Moves",
|
||||
"advancements.cobblemon.craft_tm.description": "Craft a TM at a TM Machine",
|
||||
"advancements.cobblemon.obtain_ancient_tm": "Records of the Past",
|
||||
"advancements.cobblemon.obtain_ancient_tm.description": "Collect a powerful, ancient technique, either from ruins or an alpha",
|
||||
"advancements.cobblemon.register_all_tms": "Collector's Discography",
|
||||
"advancements.cobblemon.register_all_tms.description": "Register all possible moves to the TM Machine",
|
||||
"advancements.cobblemon.construct_note_block_sequencer": "The Power of Science is Amazing",
|
||||
"advancements.cobblemon.construct_note_block_sequencer.description": "Create an audio sequencer out of a Note Block and a Disc Shelf",
|
||||
"advancements.cobblemon.download_porygon": "Technical Difficulties",
|
||||
"advancements.cobblemon.download_porygon.description": "You wouldn't download a Porygon",
|
||||
|
||||
"cobblemon.battle.crash": "A battle error has occurred. If playing single-player, report this to the mod team. Otherwise, report this to the servers administrator.",
|
||||
"cobblemon.battle.damage_dealt": "%1$s took %2$s damage!",
|
||||
|
||||
+4
-4
@@ -3,10 +3,10 @@
|
||||
"parent": "block/block",
|
||||
"ambientocclusion": false,
|
||||
"textures": {
|
||||
"0": "cobblemon:block/tm_shelf_front",
|
||||
"1": "cobblemon:block/tm_shelf_side",
|
||||
"2": "cobblemon:block/tm_shelf_top",
|
||||
"particle": "cobblemon:block/tm_shelf_side"
|
||||
"0": "cobblemon:block/functional/disc_shelf_front",
|
||||
"1": "cobblemon:block/functional/disc_shelf_side",
|
||||
"2": "cobblemon:block/functional/disc_shelf_top",
|
||||
"particle": "cobblemon:block/functional/disc_shelf_side"
|
||||
},
|
||||
"elements": [
|
||||
{
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"parent": "minecraft:block/cube_all",
|
||||
"textures": {
|
||||
"all": "cobblemon:block/type_gems/deepslate_core"
|
||||
"all": "cobblemon:block/type_gems/deepslate_crystal_core"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -2,6 +2,6 @@
|
||||
"parent": "minecraft:block/cross", "ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_large_bug"
|
||||
"cross": "cobblemon:block/type_gems/large_bug_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_large_dark"
|
||||
"cross": "cobblemon:block/type_gems/large_dark_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_large_dragon"
|
||||
"cross": "cobblemon:block/type_gems/large_dragon_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_large_electric"
|
||||
"cross": "cobblemon:block/type_gems/large_electric_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_large_fairy"
|
||||
"cross": "cobblemon:block/type_gems/large_fairy_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_large_fighting"
|
||||
"cross": "cobblemon:block/type_gems/large_fighting_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_large_fire"
|
||||
"cross": "cobblemon:block/type_gems/large_fire_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_large_flying"
|
||||
"cross": "cobblemon:block/type_gems/large_flying_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_large_ghost"
|
||||
"cross": "cobblemon:block/type_gems/large_ghost_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_large_grass"
|
||||
"cross": "cobblemon:block/type_gems/large_grass_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_large_ground"
|
||||
"cross": "cobblemon:block/type_gems/large_ground_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_large_ice"
|
||||
"cross": "cobblemon:block/type_gems/large_ice_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_large_normal"
|
||||
"cross": "cobblemon:block/type_gems/large_normal_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_large_poison"
|
||||
"cross": "cobblemon:block/type_gems/large_poison_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_large_psychic"
|
||||
"cross": "cobblemon:block/type_gems/large_psychic_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_large_rock"
|
||||
"cross": "cobblemon:block/type_gems/large_rock_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_large_steel"
|
||||
"cross": "cobblemon:block/type_gems/large_steel_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_large_water"
|
||||
"cross": "cobblemon:block/type_gems/large_water_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_medium_bug"
|
||||
"cross": "cobblemon:block/type_gems/medium_bug_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_medium_dark"
|
||||
"cross": "cobblemon:block/type_gems/medium_dark_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_medium_dragon"
|
||||
"cross": "cobblemon:block/type_gems/medium_dragon_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_medium_electric"
|
||||
"cross": "cobblemon:block/type_gems/medium_electric_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_medium_fairy"
|
||||
"cross": "cobblemon:block/type_gems/medium_fairy_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_medium_fighting"
|
||||
"cross": "cobblemon:block/type_gems/medium_fighting_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_medium_fire"
|
||||
"cross": "cobblemon:block/type_gems/medium_fire_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_medium_flying"
|
||||
"cross": "cobblemon:block/type_gems/medium_flying_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_medium_ghost"
|
||||
"cross": "cobblemon:block/type_gems/medium_ghost_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_medium_grass"
|
||||
"cross": "cobblemon:block/type_gems/medium_grass_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_medium_ground"
|
||||
"cross": "cobblemon:block/type_gems/medium_ground_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_medium_ice"
|
||||
"cross": "cobblemon:block/type_gems/medium_ice_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_medium_normal"
|
||||
"cross": "cobblemon:block/type_gems/medium_normal_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_medium_poison"
|
||||
"cross": "cobblemon:block/type_gems/medium_poison_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_medium_psychic"
|
||||
"cross": "cobblemon:block/type_gems/medium_psychic_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_medium_rock"
|
||||
"cross": "cobblemon:block/type_gems/medium_rock_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_medium_steel"
|
||||
"cross": "cobblemon:block/type_gems/medium_steel_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_medium_water"
|
||||
"cross": "cobblemon:block/type_gems/medium_water_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_small_bug"
|
||||
"cross": "cobblemon:block/type_gems/small_bug_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_small_dark"
|
||||
"cross": "cobblemon:block/type_gems/small_dark_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_small_dragon"
|
||||
"cross": "cobblemon:block/type_gems/small_dragon_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_small_electric"
|
||||
"cross": "cobblemon:block/type_gems/small_electric_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_small_fairy"
|
||||
"cross": "cobblemon:block/type_gems/small_fairy_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_small_fighting"
|
||||
"cross": "cobblemon:block/type_gems/small_fighting_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_small_fire"
|
||||
"cross": "cobblemon:block/type_gems/small_fire_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_small_flying"
|
||||
"cross": "cobblemon:block/type_gems/small_flying_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_small_ghost"
|
||||
"cross": "cobblemon:block/type_gems/small_ghost_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_small_grass"
|
||||
"cross": "cobblemon:block/type_gems/small_grass_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_small_ground"
|
||||
"cross": "cobblemon:block/type_gems/small_ground_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_small_ice"
|
||||
"cross": "cobblemon:block/type_gems/small_ice_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_small_normal"
|
||||
"cross": "cobblemon:block/type_gems/small_normal_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_small_poison"
|
||||
"cross": "cobblemon:block/type_gems/small_poison_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_small_psychic"
|
||||
"cross": "cobblemon:block/type_gems/small_psychic_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_small_rock"
|
||||
"cross": "cobblemon:block/type_gems/small_rock_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_small_steel"
|
||||
"cross": "cobblemon:block/type_gems/small_steel_gem_bud"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -3,6 +3,6 @@
|
||||
"ambientocclusion": false,
|
||||
"gui_light": "front",
|
||||
"textures": {
|
||||
"cross": "cobblemon:block/type_gems/type_gem_bud_small_water"
|
||||
"cross": "cobblemon:block/type_gems/small_water_gem_bud"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "minecraft:item/generated",
|
||||
"textures": {
|
||||
"layer0": "cobblemon:item/advancements/mark_alpha"
|
||||
}
|
||||
}
|
||||
@@ -2,5 +2,10 @@
|
||||
"parent": "minecraft:item/generated",
|
||||
"textures": {
|
||||
"layer0": "cobblemon:block/tumblestone/black_tumblestone_cluster"
|
||||
},
|
||||
"display": {
|
||||
"head": {
|
||||
"translation": [ 0, 14, -5 ]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -3,24 +3,35 @@
|
||||
"textures": {
|
||||
"layer0": "cobblemon:block/type_gems/bug_gem_cluster"
|
||||
},
|
||||
"display": {
|
||||
"head": {
|
||||
"translation": [ 0, 14, -5 ]
|
||||
}
|
||||
},
|
||||
"overrides": [
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 0
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_small_bug"
|
||||
"model": "cobblemon:item/small_bug_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 1
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_medium_bug"
|
||||
"model": "cobblemon:item/medium_bug_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 2
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_large_bug"
|
||||
"model": "cobblemon:item/large_bug_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 3
|
||||
},
|
||||
"model": "cobblemon:item/bug_gem_cluster"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -3,24 +3,35 @@
|
||||
"textures": {
|
||||
"layer0": "cobblemon:block/type_gems/dark_gem_cluster"
|
||||
},
|
||||
"display": {
|
||||
"head": {
|
||||
"translation": [ 0, 14, -5 ]
|
||||
}
|
||||
},
|
||||
"overrides": [
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 0
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_small_dark"
|
||||
"model": "cobblemon:item/small_dark_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 1
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_medium_dark"
|
||||
"model": "cobblemon:item/medium_dark_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 2
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_large_dark"
|
||||
"model": "cobblemon:item/large_dark_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 3
|
||||
},
|
||||
"model": "cobblemon:item/dark_gem_cluster"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"parent": "cobblemon:block/disc_shelf"
|
||||
}
|
||||
@@ -3,24 +3,35 @@
|
||||
"textures": {
|
||||
"layer0": "cobblemon:block/type_gems/dragon_gem_cluster"
|
||||
},
|
||||
"display": {
|
||||
"head": {
|
||||
"translation": [ 0, 14, -5 ]
|
||||
}
|
||||
},
|
||||
"overrides": [
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 0
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_small_dragon"
|
||||
"model": "cobblemon:item/small_dragon_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 1
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_medium_dragon"
|
||||
"model": "cobblemon:item/medium_dragon_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 2
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_large_dragon"
|
||||
"model": "cobblemon:item/large_dragon_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 3
|
||||
},
|
||||
"model": "cobblemon:item/dragon_gem_cluster"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -3,24 +3,35 @@
|
||||
"textures": {
|
||||
"layer0": "cobblemon:block/type_gems/electric_gem_cluster"
|
||||
},
|
||||
"display": {
|
||||
"head": {
|
||||
"translation": [ 0, 14, -5 ]
|
||||
}
|
||||
},
|
||||
"overrides": [
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 0
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_small_electric"
|
||||
"model": "cobblemon:item/small_electric_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 1
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_medium_electric"
|
||||
"model": "cobblemon:item/medium_electric_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 2
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_large_electric"
|
||||
"model": "cobblemon:item/large_electric_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 3
|
||||
},
|
||||
"model": "cobblemon:item/electric_gem_cluster"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -3,24 +3,35 @@
|
||||
"textures": {
|
||||
"layer0": "cobblemon:block/type_gems/fairy_gem_cluster"
|
||||
},
|
||||
"display": {
|
||||
"head": {
|
||||
"translation": [ 0, 14, -5 ]
|
||||
}
|
||||
},
|
||||
"overrides": [
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 0
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_small_fairy"
|
||||
"model": "cobblemon:item/small_fairy_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 1
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_medium_fairy"
|
||||
"model": "cobblemon:item/medium_fairy_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 2
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_large_fairy"
|
||||
"model": "cobblemon:item/large_fairy_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 3
|
||||
},
|
||||
"model": "cobblemon:item/fairy_gem_cluster"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -3,24 +3,35 @@
|
||||
"textures": {
|
||||
"layer0": "cobblemon:block/type_gems/fighting_gem_cluster"
|
||||
},
|
||||
"display": {
|
||||
"head": {
|
||||
"translation": [ 0, 14, -5 ]
|
||||
}
|
||||
},
|
||||
"overrides": [
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 0
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_small_fighting"
|
||||
"model": "cobblemon:item/small_fighting_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 1
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_medium_fighting"
|
||||
"model": "cobblemon:item/medium_fighting_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 2
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_large_fighting"
|
||||
"model": "cobblemon:item/large_fighting_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 3
|
||||
},
|
||||
"model": "cobblemon:item/fighting_gem_cluster"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -3,24 +3,35 @@
|
||||
"textures": {
|
||||
"layer0": "cobblemon:block/type_gems/fire_gem_cluster"
|
||||
},
|
||||
"display": {
|
||||
"head": {
|
||||
"translation": [ 0, 14, -5 ]
|
||||
}
|
||||
},
|
||||
"overrides": [
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 0
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_small_fire"
|
||||
"model": "cobblemon:item/small_fire_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 1
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_medium_fire"
|
||||
"model": "cobblemon:item/medium_fire_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 2
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_large_fire"
|
||||
"model": "cobblemon:item/large_fire_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 3
|
||||
},
|
||||
"model": "cobblemon:item/fire_gem_cluster"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -3,24 +3,35 @@
|
||||
"textures": {
|
||||
"layer0": "cobblemon:block/type_gems/flying_gem_cluster"
|
||||
},
|
||||
"display": {
|
||||
"head": {
|
||||
"translation": [ 0, 14, -5 ]
|
||||
}
|
||||
},
|
||||
"overrides": [
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 0
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_small_flying"
|
||||
"model": "cobblemon:item/small_flying_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 1
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_medium_flying"
|
||||
"model": "cobblemon:item/medium_flying_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 2
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_large_flying"
|
||||
"model": "cobblemon:item/large_flying_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 3
|
||||
},
|
||||
"model": "cobblemon:item/flying_gem_cluster"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -3,24 +3,35 @@
|
||||
"textures": {
|
||||
"layer0": "cobblemon:block/type_gems/ghost_gem_cluster"
|
||||
},
|
||||
"display": {
|
||||
"head": {
|
||||
"translation": [ 0, 14, -5 ]
|
||||
}
|
||||
},
|
||||
"overrides": [
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 0
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_small_ghost"
|
||||
"model": "cobblemon:item/small_ghost_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 1
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_medium_ghost"
|
||||
"model": "cobblemon:item/medium_ghost_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 2
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_large_ghost"
|
||||
"model": "cobblemon:item/large_ghost_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 3
|
||||
},
|
||||
"model": "cobblemon:item/ghost_gem_cluster"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -3,24 +3,35 @@
|
||||
"textures": {
|
||||
"layer0": "cobblemon:block/type_gems/grass_gem_cluster"
|
||||
},
|
||||
"display": {
|
||||
"head": {
|
||||
"translation": [ 0, 14, -5 ]
|
||||
}
|
||||
},
|
||||
"overrides": [
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 0
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_small_grass"
|
||||
"model": "cobblemon:item/small_grass_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 1
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_medium_grass"
|
||||
"model": "cobblemon:item/medium_grass_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 2
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_large_grass"
|
||||
"model": "cobblemon:item/large_grass_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 3
|
||||
},
|
||||
"model": "cobblemon:item/grass_gem_cluster"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -3,24 +3,35 @@
|
||||
"textures": {
|
||||
"layer0": "cobblemon:block/type_gems/ground_gem_cluster"
|
||||
},
|
||||
"display": {
|
||||
"head": {
|
||||
"translation": [ 0, 14, -5 ]
|
||||
}
|
||||
},
|
||||
"overrides": [
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 0
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_small_ground"
|
||||
"model": "cobblemon:item/small_ground_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 1
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_medium_ground"
|
||||
"model": "cobblemon:item/medium_ground_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 2
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_large_ground"
|
||||
"model": "cobblemon:item/large_ground_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 3
|
||||
},
|
||||
"model": "cobblemon:item/ground_gem_cluster"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -3,24 +3,35 @@
|
||||
"textures": {
|
||||
"layer0": "cobblemon:block/type_gems/ice_gem_cluster"
|
||||
},
|
||||
"display": {
|
||||
"head": {
|
||||
"translation": [ 0, 14, -5 ]
|
||||
}
|
||||
},
|
||||
"overrides": [
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 0
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_small_ice"
|
||||
"model": "cobblemon:item/small_ice_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 1
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_medium_ice"
|
||||
"model": "cobblemon:item/medium_ice_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 2
|
||||
},
|
||||
"model": "cobblemon:item/type_gem_bud_large_ice"
|
||||
"model": "cobblemon:item/large_ice_gem_bud"
|
||||
},
|
||||
{
|
||||
"predicate": {
|
||||
"custom_model_data": 3
|
||||
},
|
||||
"model": "cobblemon:item/ice_gem_cluster"
|
||||
}
|
||||
]
|
||||
}
|
||||
+6
-1
@@ -1,6 +1,11 @@
|
||||
{
|
||||
"parent": "minecraft:item/generated",
|
||||
"parent": "item/amethyst_bud",
|
||||
"textures": {
|
||||
"layer0": "cobblemon:block/tumblestone/large_budding_black_tumblestone"
|
||||
},
|
||||
"display": {
|
||||
"fixed": {
|
||||
"translation": [ 0, 4, 0 ]
|
||||
}
|
||||
}
|
||||
}
|
||||
+6
-1
@@ -1,6 +1,11 @@
|
||||
{
|
||||
"parent": "minecraft:item/generated",
|
||||
"parent": "item/amethyst_bud",
|
||||
"textures": {
|
||||
"layer0": "cobblemon:block/tumblestone/large_budding_sky_tumblestone"
|
||||
},
|
||||
"display": {
|
||||
"fixed": {
|
||||
"translation": [ 0, 4, 0 ]
|
||||
}
|
||||
}
|
||||
}
|
||||
+6
-1
@@ -1,6 +1,11 @@
|
||||
{
|
||||
"parent": "minecraft:item/generated",
|
||||
"parent": "item/amethyst_bud",
|
||||
"textures": {
|
||||
"layer0": "cobblemon:block/tumblestone/large_budding_tumblestone"
|
||||
},
|
||||
"display": {
|
||||
"fixed": {
|
||||
"translation": [ 0, 4, 0 ]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"parent": "item/amethyst_bud",
|
||||
"textures": {
|
||||
"layer0": "cobblemon:block/type_gems/large_bug_gem_bud"
|
||||
},
|
||||
"display": {
|
||||
"fixed": {
|
||||
"translation": [ 0, 4, 0 ]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"parent": "item/amethyst_bud",
|
||||
"textures": {
|
||||
"layer0": "cobblemon:block/type_gems/large_dark_gem_bud"
|
||||
},
|
||||
"display": {
|
||||
"fixed": {
|
||||
"translation": [ 0, 4, 0 ]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"parent": "item/amethyst_bud",
|
||||
"textures": {
|
||||
"layer0": "cobblemon:block/type_gems/large_dragon_gem_bud"
|
||||
},
|
||||
"display": {
|
||||
"fixed": {
|
||||
"translation": [ 0, 4, 0 ]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"parent": "item/amethyst_bud",
|
||||
"textures": {
|
||||
"layer0": "cobblemon:block/type_gems/large_electric_gem_bud"
|
||||
},
|
||||
"display": {
|
||||
"fixed": {
|
||||
"translation": [ 0, 4, 0 ]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"parent": "item/amethyst_bud",
|
||||
"textures": {
|
||||
"layer0": "cobblemon:block/type_gems/large_fairy_gem_bud"
|
||||
},
|
||||
"display": {
|
||||
"fixed": {
|
||||
"translation": [ 0, 4, 0 ]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"parent": "item/amethyst_bud",
|
||||
"textures": {
|
||||
"layer0": "cobblemon:block/type_gems/large_fighting_gem_bud"
|
||||
},
|
||||
"display": {
|
||||
"fixed": {
|
||||
"translation": [ 0, 4, 0 ]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"parent": "item/amethyst_bud",
|
||||
"textures": {
|
||||
"layer0": "cobblemon:block/type_gems/large_fire_gem_bud"
|
||||
},
|
||||
"display": {
|
||||
"fixed": {
|
||||
"translation": [ 0, 4, 0 ]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"parent": "item/amethyst_bud",
|
||||
"textures": {
|
||||
"layer0": "cobblemon:block/type_gems/large_flying_gem_bud"
|
||||
},
|
||||
"display": {
|
||||
"fixed": {
|
||||
"translation": [ 0, 4, 0 ]
|
||||
}
|
||||
}
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user