Compare commits

...
Author SHA1 Message Date
Gertimoshka 844c03bbbe Fixes to mistypes and wrong tms getting in (looking at you terablast) 2026-08-13 23:01:40 +03:00
Gertimoshka 426e83546c Changes for Default TMs By Slippy 2026-08-13 21:59:22 +03:00
Polymeta 058c06f56b Merge branch 'implement_pokemon' into 'main'
some ride stats and other stuff

See merge request cable-mc/cobblemon!2341
2026-08-08 19:14:42 +00:00
Carmendar 28bee4189a Merge branch 'main' into implement_pokemon 2026-08-07 23:30:54 -05:00
Carmendar 3f0e21b6b3 some minor ride stat adjustments 2026-08-07 23:10:53 -05:00
Jerzykv 9ca2d47562 Fixed Metagross idle loop yet again 2026-08-06 18:13:30 +02:00
Jakotens 94f0914aa8 Poser fixes to Pidgey, Pidgeotto, Pidgeot, Aerodactyl, and Snivy. Animation and walk speed fixes to Pidgey, Pidgeotto, and Pidgeot. Added a new neck_ai bone to Pidgeotto. 2026-08-05 13:09:05 -06:00
Jakotens 60101876b5 Merge remote-tracking branch 'origin/implement_pokemon' into implement_pokemon 2026-08-05 11:29:44 -06:00
RedGenesectNinja b8a4dfbcb4 Adjusted Bidoof's scale again 2026-08-05 03:45:24 -05:00
RedGenesectNinja fbc5959c67 Adjusted Bidoof's scale 2026-08-05 03:14:10 -05:00
Kenji_64 49f20fe1a4 Several cry/poser related fixes 2026-08-04 15:17:35 +02:00
Jerzykv 3c4288d7fc More alpha eyes 2026-08-04 14:55:54 +02:00
Jerzykv e03bb51a74 Substitute animation fix 2026-08-04 14:55:43 +02:00
Jerzykv 8545de321f Lanturn poser fixes 2026-08-04 14:55:31 +02:00
Jerzykv 5e353e9a6d Chinchou json poser conversion 2026-08-04 14:55:21 +02:00
Jerzykv c1fd257f63 Merge remote-tracking branch 'origin/implement_pokemon' into implement_pokemon 2026-08-04 13:56:38 +02:00
Jerzykv ea0ff3bfb9 Komala can no longer walk 2026-08-04 13:56:30 +02:00
Hiroku d4b6e36aab Merge branch 'gamemasters' into 'main'
Interaction Fix

See merge request cable-mc/cobblemon!2339
2026-08-03 08:49:25 +00:00
dhi_holo 0fb721702d Interaction Fix
Solves interaction problem reported https://discord.com/channels/725110639554592879/1481053968716009493/1533385403170820148

Habitat Block acts like a block without interactions if right clicked by a player in survival, or without operator permissions of level 2 or higher (same as command blocks, known as Gamemaster)
With those permissions, it works as usual

Also removed Habitat Block from the Cobblemon Blocks tab, leaving it solely in the Operator Items Tab, like Command Blocks.
2026-08-02 21:08:13 +10:00
Polymeta 0e5053b787 Merge branch 'config-screen-scrolling-labels' into 'main'
Labels on the config screen now scroll instead of overflowing

See merge request cable-mc/cobblemon!2338
2026-08-01 22:09:46 +00:00
lionandPolymeta f3867e0b1d Labels on the config screen now scroll instead of overflowing 2026-08-01 22:09:46 +00:00
Hiroku a4fcd1ae7b Merge branch 'transparent-occlusion' into 'main'
Fix translucent draw order

See merge request cable-mc/cobblemon!2337
2026-08-01 01:56:58 +00:00
JordanandHiroku ed9aff2448 Fix translucent draw order 2026-08-01 01:56:57 +00:00
Nick 8497a2a083 Merge branch 'trade-dupe-fix' into 'main'
Trade dupe fix

See merge request cable-mc/cobblemon!2336
2026-07-31 15:22:15 -07:00
Deltric b389a95b5e Trade dupe fix 2026-07-31 17:03:33 -05:00
Polymeta c310027ce1 Merge branch 'Habitat-Bug-Fixes' into 'main'
Fixin some things

See merge request cable-mc/cobblemon!2335
2026-07-31 20:34:24 +00:00
Slippy 5ddb01df36 More Bug Fixes 2026-07-31 14:25:33 -05:00
Slippy 5a6f49aad5 found one more thing 2026-07-31 02:54:16 -05:00
Slippy 793efcfa3d Fixin some things 2026-07-31 02:49:24 -05:00
ewwww f785c5405f a variety of tiny tweaks 2026-07-29 02:20:57 -04:00
ewwww 2dfca3ff89 a variety of tiny tweaks 2026-07-27 05:17:44 -04:00
246 changed files with 839 additions and 975 deletions
+1
View File
@@ -396,6 +396,7 @@
- Fixed `/giveallpokemon` not respecting the min and max parameters
- Fixed the choose starter toast not disappearing when capturing a Pokémon instead of opening the starter selection screen
- Fixed an issue where certain Sinister Tea seasonings were only applying as instant effects and would not apply over time
- Long config option labels now scroll instead of overflowing
### Developer
- Added `PokeSnackSpawnerFactory` which allows influence registration on PokeSnack encounters
@@ -25,6 +25,7 @@ import net.minecraft.world.level.block.SoundType
import net.minecraft.world.level.block.entity.BlockEntity
import net.minecraft.world.level.block.entity.BlockEntityTicker
import net.minecraft.world.level.block.entity.BlockEntityType
import net.minecraft.world.level.block.entity.CommandBlockEntity
import net.minecraft.world.level.block.state.BlockState
import net.minecraft.world.level.block.state.StateDefinition
import net.minecraft.world.level.block.state.properties.BooleanProperty
@@ -80,11 +81,13 @@ class HabitatBlock(properties: Properties) : Block(properties), EntityBlock {
}
override fun useWithoutItem(state: BlockState, level: Level, pos: BlockPos, player: Player, hitResult: BlockHitResult): InteractionResult {
if (!level.isClientSide) {
val be = level.getBlockEntity(pos) as? HabitatBlockEntity ?: return InteractionResult.PASS
return be.onUse(player, hitResult)
val blockEntity = level.getBlockEntity(pos)
val be = level.getBlockEntity(pos) as? HabitatBlockEntity ?: return InteractionResult.PASS
return if (blockEntity is HabitatBlockEntity && player.canUseGameMasterBlocks()) {
be.onUse(player, hitResult)
} else {
InteractionResult.PASS
}
return InteractionResult.SUCCESS
}
override fun getDrops(state: BlockState, params: LootParams.Builder): MutableList<ItemStack> {
@@ -41,6 +41,7 @@ class CobblemonConfigScreen(
const val WIDGET_HEIGHT = SLOT_HEIGHT - PADDING
const val LABEL_Y_OFFSET = 4
const val WIDGET_Y_OFFSET = 0
const val LABEL_MAX_WIDTH = SLOT_WIDTH - RESET_SLOT_WIDTH - WIDGET_WIDTH - PADDING * 2
}
val clonedConfig = Cobblemon.config.clone()
@@ -8,17 +8,18 @@
package com.cobblemon.mod.common.client.gui.config.variable
import com.cobblemon.mod.common.client.gui.config.CobblemonConfigScreen.Companion.LABEL_Y_OFFSET
import com.cobblemon.mod.common.client.gui.config.CobblemonConfigScreen.Companion.LABEL_MAX_WIDTH
import com.cobblemon.mod.common.client.gui.config.CobblemonConfigScreen.Companion.RESET_SLOT_WIDTH
import com.cobblemon.mod.common.client.gui.config.CobblemonConfigScreen.Companion.SLOT_WIDTH
import com.cobblemon.mod.common.client.gui.config.CobblemonConfigScreen.Companion.WIDGET_HEIGHT
import com.cobblemon.mod.common.client.gui.config.CobblemonConfigScreen.Companion.WIDGET_Y_OFFSET
import com.cobblemon.mod.common.client.gui.config.CobblemonConfigVariableList
import com.cobblemon.mod.common.client.gui.config.CobblemonConfigVariableList.CobblemonConfigVariableListEntry
import com.cobblemon.mod.common.client.render.drawScaledText
import com.cobblemon.mod.common.client.render.drawScrollingText
import com.cobblemon.mod.common.config.CobblemonConfig
import com.cobblemon.mod.common.config.CobblemonConfigField
import com.cobblemon.mod.common.util.lang
import net.minecraft.client.Minecraft
import net.minecraft.client.gui.GuiGraphics
import net.minecraft.client.gui.components.Button
import net.minecraft.client.gui.components.Tooltip
@@ -91,12 +92,15 @@ abstract class CobblemonConfigVariable(
val x = getX(left)
val y = getY(top)
drawScaledText(
context = context,
text = labelLang,
x = getX(left),
y = getY(top) + LABEL_Y_OFFSET,
shadow = true
drawScrollingText(
context,
Minecraft.getInstance().font,
labelLang,
x,
y + WIDGET_Y_OFFSET,
x + LABEL_MAX_WIDTH,
y + WIDGET_Y_OFFSET + WIDGET_HEIGHT,
-1
)
resetButton.x = x + SLOT_WIDTH - RESET_SLOT_WIDTH
@@ -18,17 +18,23 @@ import com.mojang.blaze3d.systems.RenderSystem
import com.mojang.blaze3d.vertex.PoseStack
import com.mojang.blaze3d.vertex.VertexConsumer
import com.mojang.math.Axis
import net.minecraft.Util
import net.minecraft.client.Minecraft
import net.minecraft.client.gui.Font
import net.minecraft.client.gui.GuiGraphics
import net.minecraft.client.renderer.MultiBufferSource
import net.minecraft.client.renderer.RenderType
import net.minecraft.client.renderer.texture.OverlayTexture
import net.minecraft.client.renderer.texture.TextureAtlas
import net.minecraft.network.chat.Component
import net.minecraft.network.chat.MutableComponent
import net.minecraft.resources.ResourceLocation
import net.minecraft.util.FormattedCharSequence
import net.minecraft.util.Mth
import net.minecraft.world.item.ItemDisplayContext
import net.minecraft.world.item.ItemStack
import kotlin.math.cos
import kotlin.math.sin
fun renderScaledGuiItemIcon(itemStack: ItemStack, x: Double, y: Double, scale: Double = 1.0, zTranslation: Float = 100.0F, matrixStack: PoseStack? = null) {
val itemRenderer = Minecraft.getInstance().itemRenderer
@@ -97,6 +103,55 @@ fun getDepletableRedGreen(
return r.toFloat() to g.toFloat()
}
fun drawScrollingText(
context: GuiGraphics,
font: Font,
text: Component,
minX: Int,
minY: Int,
maxX: Int,
maxY: Int,
colour: Int,
minScrollVelocity: Double? = 10.0
) {
val textWidth = font.width(text)
val fittedMaxX = if (textWidth <= maxX - minX) minX + textWidth else maxX
renderScrollingString(context, font, text, minX, minY, fittedMaxX, maxY, colour, minScrollVelocity)
}
/** Copied from [net.minecraft.client.gui.components.AbstractWidget.renderScrollingString] **/
fun renderScrollingString(
context: GuiGraphics,
font: Font,
text: Component,
minX: Int,
minY: Int,
maxX: Int,
maxY: Int,
colour: Int,
minScrollVelocity: Double? = 10.0
) {
val textWidth = font.width(text)
val centerY = (minY + maxY - 9) / 2 + 1
val boxWidth = maxX - minX
if (textWidth <= boxWidth) {
val centerX = Mth.clamp((minX + maxX) / 2, minX + textWidth / 2, maxX - textWidth / 2)
context.drawCenteredString(font, text, centerX, centerY, colour)
return
}
val overflow = textWidth - boxWidth
var period = (overflow * 0.5).coerceAtLeast(3.0)
if (minScrollVelocity != null) {
period = period.coerceAtMost(2 * overflow / minScrollVelocity)
}
val time = Util.getMillis() / 1000.0
val easedProgress = sin((Math.PI / 2) * cos(2 * Math.PI * time / period)) / 2.0 + 0.5
val offset = Mth.lerp(easedProgress, 0.0, overflow.toDouble())
context.enableScissor(minX, minY, maxX, maxY)
context.drawString(font, text, minX - offset.toInt(), centerY, colour)
context.disableScissor()
}
fun drawScaledText(
context: GuiGraphics,
@@ -34,7 +34,6 @@ import com.cobblemon.mod.common.client.render.models.blockbench.quirk.ModelQuirk
import com.cobblemon.mod.common.client.render.models.blockbench.quirk.SimpleQuirk
import com.cobblemon.mod.common.client.render.models.blockbench.repository.RenderContext
import com.cobblemon.mod.common.client.render.models.blockbench.wavefunction.WaveFunction
import com.cobblemon.mod.common.client.util.exists
import com.cobblemon.mod.common.entity.PosableEntity
import com.cobblemon.mod.common.entity.PoseType
import com.cobblemon.mod.common.entity.generic.GenericBedrockEntity
@@ -256,7 +255,7 @@ open class PosableModel(@Transient override val rootPart: Bone) : ModelFrame {
}
fun setLayerContext(buffer: MultiBufferSource, state: PosableState, layers: Iterable<ModelLayer>) {
currentLayers = layers
currentLayers = layers.sortedBy { it.translucent }
bufferProvider = buffer
currentState = state
}
@@ -1,127 +0,0 @@
/*
* 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.client.render.models.blockbench.pokemon.gen2
import com.cobblemon.mod.common.client.render.models.blockbench.PosableState
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.PokemonPosableModel
import com.cobblemon.mod.common.client.render.models.blockbench.pose.CobblemonPose
import com.cobblemon.mod.common.entity.PoseType
import com.cobblemon.mod.common.util.isBattling
import com.cobblemon.mod.common.util.isUnderWater
import com.cobblemon.mod.common.util.isInWater
import net.minecraft.client.model.geom.ModelPart
import net.minecraft.world.phys.Vec3
class ChinchouModel (root: ModelPart) : PokemonPosableModel(root) {
override val rootPart = root.registerChildWithAllChildren("chinchou")
override var portraitScale = 1.75F
override var portraitTranslation = Vec3(-0.3, -0.8, 0.0)
override var profileScale = 0.65F
override var profileTranslation = Vec3(-0.05, 0.45, 0.0)
lateinit var standing: CobblemonPose
lateinit var walk: CobblemonPose
lateinit var floating: CobblemonPose
lateinit var swimming: CobblemonPose
lateinit var sleep: CobblemonPose
lateinit var watersleep: CobblemonPose
lateinit var battleidle: CobblemonPose
lateinit var waterbattleidle: CobblemonPose
// override val cryAnimation = CryProvider { bedrockStateful("chinchou", "cry") }
override fun registerPoses() {
val blink = quirk { bedrockStateful("chinchou", "blink")}
val idleQuirk = quirk(secondsBetweenOccurrences = 60F to 120F) { bedrockStateful("chinchou", "ground_quirk")}
val waterQuirk = quirk(secondsBetweenOccurrences = 60F to 120F) { bedrockStateful("chinchou", "water_idle_quirk")}
sleep = registerPose(
poseName = "sleeping",
poseType = PoseType.SLEEP,
condition = { !it.isInWater },
animations = arrayOf(bedrock("chinchou", "sleep"))
)
watersleep = registerPose(
poseName = "water_sleeping",
poseType = PoseType.SLEEP,
condition = { it.isInWater },
animations = arrayOf(bedrock("chinchou", "water_sleep"))
)
standing = registerPose(
poseName = "standing",
poseTypes = PoseType.UI_POSES + PoseType.STAND,
transformTicks = 10,
condition = { !it.isBattling && !it.isInWater && !it.isUnderWater},
quirks = arrayOf(blink, idleQuirk),
animations = arrayOf(
bedrock("chinchou", "ground_idle")
)
)
walk = registerPose(
poseName = "walk",
transformTicks = 10,
poseType = PoseType.WALK,
condition = { !it.isInWater && !it.isUnderWater},
quirks = arrayOf(blink),
animations = arrayOf(
bedrock("chinchou", "ground_walk")
)
)
floating = registerPose(
poseName = "floating",
transformTicks = 10,
poseType = PoseType.FLOAT,
condition = { it.isInWater },
quirks = arrayOf(blink, waterQuirk),
animations = arrayOf(
bedrock("chinchou", "water_idle")
)
)
swimming = registerPose(
poseName = "swimming",
transformTicks = 10,
condition = { it.isInWater },
poseTypes = PoseType.MOVING_POSES,
quirks = arrayOf(blink),
animations = arrayOf(
bedrock("chinchou", "water_swim"),
)
)
battleidle = registerPose(
poseName = "battle_idle",
poseTypes = PoseType.STATIONARY_POSES,
transformTicks = 10,
quirks = arrayOf(blink),
condition = { it.isBattling && !it.isInWater },
animations = arrayOf(
bedrock("chinchou", "battle_idle")
)
)
waterbattleidle = registerPose(
poseName = "water_battle_idle",
poseTypes = PoseType.STATIONARY_POSES,
transformTicks = 10,
quirks = arrayOf(blink),
condition = { it.isBattling && it.isInWater },
animations = arrayOf(
bedrock("chinchou", "water_battle_idle")
)
)
}
override fun getFaintAnimation(state: PosableState) = if (state.isPosedIn(standing, walk, battleidle, sleep)) bedrockStateful("chinchou", "faint") else if (state.isPosedIn( waterbattleidle, watersleep, floating, swimming )) bedrockStateful("chinchou", "water_faint") else null
}
@@ -368,7 +368,6 @@ object VaryingModelRepository {
inbuilt("magcargo", ::MagcargoModel)
inbuilt("slugma_shiny", ::SlugmaShinyModel)
inbuilt("magcargo_shiny", ::MagcargoShinyModel)
inbuilt("chinchou", ::ChinchouModel)
inbuilt("clamperl", ::ClamperlModel)
inbuilt("huntail", ::HuntailModel)
inbuilt("gorebyss", ::GorebyssModel)
@@ -316,7 +316,6 @@ object CobblemonItemGroups {
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)
@@ -115,8 +115,26 @@ object TradeManager : RequestManager<TradeManager.TradeRequest>() {
}
CobblemonEvents.TRADE_EVENT_PRE.postThen(TradeEvent.Pre(player1, pokemon2, player2, pokemon1)) {
party1.remove(pokemon1)
party2.remove(pokemon2)
val party1 = player1.party
val party2 = player2.party
val player1Removed = party1.remove(pokemon1)
val player2Removed = party2.remove(pokemon2)
if (!player1Removed || !player2Removed) {
if (!player1Removed) {
Cobblemon.LOGGER.warn("Failed to remove traded Pokémon ${pokemon1.species.resourceIdentifier} from ${player1.name.string}(${player1.uuid}). Aborting trade with ${player2.name.string}(${player2.uuid}), potential exploit abused.")
}
if (!player2Removed) {
Cobblemon.LOGGER.warn("Failed to remove traded Pokémon ${pokemon2.species.resourceIdentifier} from ${player2.name.string}(${player2.uuid}). Aborting trade with ${player1.name.string}(${player1.uuid}), potential exploit abused.")
}
// Revert any changes if one of the removals failed
if (player1Removed) party1.add(pokemon1)
if (player2Removed) party2.add(pokemon2)
return@postThen
}
// If player1 is the OT, keep track of the friendship
pokemon1.cacheFriendship(player1.uuid)
@@ -1575,470 +1575,6 @@
}
}
},
"animation.substitute.destroy_burst": {
"animation_length": 3,
"bones": {
"body": {
"rotation": ["-0.3*Math.cos((query.anim_time-0) * 90 * 0.5+90) *0.3", 0, "0.3*Math.cos((query.anim_time-0) * 90 * 0.5) *0.3"],
"position": {
"0.0": [0, 0, 0],
"0.125": [0, 0, 0],
"0.1667": {
"pre": [0, 0.25, 5],
"post": [0, 0.25, 5],
"lerp_mode": "catmullrom"
},
"0.2083": {
"post": [0, 0.25, 9.9],
"lerp_mode": "catmullrom"
},
"0.2917": {
"post": [0, 0.25, 12.4],
"lerp_mode": "catmullrom"
},
"0.375": {
"post": [0, 0, 13.3],
"lerp_mode": "catmullrom"
},
"0.4583": [0, 0, 13.3]
},
"scale": {
"0.0": {
"post": [1, 1, 1],
"lerp_mode": "catmullrom"
},
"0.0417": {
"post": [1, 1, 1],
"lerp_mode": "catmullrom"
},
"0.125": {
"post": [1.11, 1.05, 0.9],
"lerp_mode": "catmullrom"
},
"0.25": {
"post": [0.855, 1.025, 1.05],
"lerp_mode": "catmullrom"
},
"0.375": {
"post": [1, 1, 1],
"lerp_mode": "catmullrom"
}
}
},
"arm_left": {
"rotation": {
"0.0": ["-2.5-3*Math.cos((query.anim_time-0.25) * 90 * 1) *0.05", 7.5, 0],
"0.0833": [-2.54822, 7.5, 0],
"0.125": {
"pre": [19.95178, 10, 0],
"post": [19.95178, 10, 0],
"lerp_mode": "catmullrom"
},
"0.25": {
"post": [-2.05, -90, -17],
"lerp_mode": "catmullrom"
},
"0.375": {
"post": [-21.03, -80.89, -17.09],
"lerp_mode": "catmullrom"
},
"0.5": {
"post": [32.35, -50.6, -22],
"lerp_mode": "catmullrom"
},
"0.625": {
"post": [28.45, -46.5, -26],
"lerp_mode": "catmullrom"
},
"0.7917": [28.45, -46.5, -26],
"0.9583": {
"pre": [32.01, -45.83, -30.71],
"post": [32.01, -45.83, -30.71],
"lerp_mode": "catmullrom"
},
"1.25": {
"post": [54.92, -41.5, -61],
"lerp_mode": "catmullrom"
},
"1.5": [54.92, -41.5, -61]
},
"position": {
"0.0": [0, 0, 0],
"0.125": [0, 0, 0],
"0.1667": {
"pre": [0, 0.5, 0.25],
"post": [0, 0.5, 0.25],
"lerp_mode": "catmullrom"
},
"0.2083": [0, 0.5, 0.25],
"0.3333": {
"pre": [0, -0.25, 0.25],
"post": [0, -0.25, 0.25],
"lerp_mode": "catmullrom"
},
"0.7917": [0, -0.25, 0.25],
"1.25": {
"pre": [0, 0, 0.25],
"post": [0, 0, 0.25],
"lerp_mode": "catmullrom"
},
"1.5": [0, 0, 0.25]
}
},
"tail": {
"rotation": {
"0.0": ["2.5+2*Math.cos((query.anim_time-0.5) * 90 * 1) *0.025", 0, 0],
"0.0833": [2.5, 0, 0],
"0.1667": {
"pre": [6, -2.5, 2.5],
"post": [6, -2.5, 2.5],
"lerp_mode": "catmullrom"
},
"0.2083": [6, -2.5, 2.5],
"0.2917": {
"pre": [6.5, 0, 0],
"post": [6.5, 0, 0],
"lerp_mode": "catmullrom"
},
"0.375": {
"post": [4, 0, 0],
"lerp_mode": "catmullrom"
},
"0.5": {
"post": [-11.8, 0, 0],
"lerp_mode": "catmullrom"
},
"0.6667": {
"post": [-14.6, 0, 0],
"lerp_mode": "catmullrom"
},
"0.9583": {
"post": [-17.14, 0, -1.02],
"lerp_mode": "catmullrom"
},
"1.25": [-29.5, 0, -4.5]
},
"position": {
"0.0": [0, 0, 0],
"0.6667": [0, 0, 0],
"1.25": [0, -0.3, 0]
}
},
"tail2": {
"rotation": {
"0.0": ["15+2*Math.cos((query.anim_time-0.75) * 90 * 1) *0.025", 0, 0],
"0.0417": [15.04735, 0, 0],
"0.125": {
"pre": [20, 0, 0],
"post": [20, 0, 0],
"lerp_mode": "catmullrom"
},
"0.2083": [0, 0, 0],
"0.2917": {
"pre": [-2.95, 0, 0],
"post": [-2.95, 0, 0],
"lerp_mode": "catmullrom"
},
"0.375": {
"post": [-2.5, 0, 0],
"lerp_mode": "catmullrom"
},
"0.4583": {
"post": [12.5, 0, 0],
"lerp_mode": "catmullrom"
},
"0.5833": [7.5, 0, 0]
}
},
"leg_left": {
"rotation": {
"0.0": [5, 5, 0],
"0.0833": [5, 5, 0],
"0.125": {
"pre": [5, 12.5, 0],
"post": [5, 12.5, 0],
"lerp_mode": "catmullrom"
},
"0.2917": {
"post": [-7.5, -10, 0],
"lerp_mode": "catmullrom"
},
"0.4167": {
"post": [2.5, -7.5, -5],
"lerp_mode": "catmullrom"
},
"0.5": [2.5, -7.5, -5],
"0.6667": [2.5, -7.5, -5],
"1.0": {
"pre": [0.5, -7.5, 1.5],
"post": [0.5, -7.5, 1.5],
"lerp_mode": "catmullrom"
},
"1.25": [0.5, -7.5, 1.5]
},
"position": {
"0.0": [0, 0, 0],
"0.0417": {
"pre": [0, 0, 0],
"post": [0, 0, 0],
"lerp_mode": "catmullrom"
},
"0.0833": [0, 0, 0],
"0.4167": [0, -0.5, -0.08],
"1.0": [0.25, -0.75, -0.25]
},
"scale": 1
},
"leg_right": {
"rotation": {
"0.0": [5, -5, 0],
"0.0833": [5, -5, 0],
"0.125": {
"pre": [5, -12.5, 0],
"post": [5, -12.5, 0],
"lerp_mode": "catmullrom"
},
"0.2917": {
"post": [-7.5, 10, 0],
"lerp_mode": "catmullrom"
},
"0.4167": {
"post": [2.5, 7.5, 5],
"lerp_mode": "catmullrom"
},
"0.5": [2.5, 7.5, 5],
"0.6667": [2.5, 7.5, 5],
"1.0": {
"pre": [2.5, 7.5, 2.5],
"post": [2.5, 7.5, 2.5],
"lerp_mode": "catmullrom"
},
"1.25": [2.5, 7.5, 2.5]
},
"position": {
"0.0": [0, 0, 0],
"0.0417": {
"pre": [0, 0, 0],
"post": [0, 0, 0],
"lerp_mode": "catmullrom"
},
"0.0833": [0, 0, 0],
"0.4167": [0, -0.5, -0.08]
}
},
"arm_right": {
"rotation": {
"0.0": ["-2.5-3*Math.cos((query.anim_time-0.25) * 90 * 1) *0.05", -7.5, 0],
"0.0833": [-2.54822, -7.5, 0],
"0.125": {
"pre": [19.95178, -10, 0],
"post": [19.95178, -10, 0],
"lerp_mode": "catmullrom"
},
"0.25": {
"post": [-2.05, 90, 17],
"lerp_mode": "catmullrom"
},
"0.375": {
"post": [-21.03, 80.89, 17.09],
"lerp_mode": "catmullrom"
},
"0.5": {
"post": [32.35, 50.6, 22],
"lerp_mode": "catmullrom"
},
"0.625": {
"post": [28.45, 46.5, 26],
"lerp_mode": "catmullrom"
},
"0.7917": [28.45, 46.5, 26],
"1.0417": {
"pre": [40.18, 36.5, 36.67],
"post": [40.18, 36.5, 36.67],
"lerp_mode": "catmullrom"
},
"1.25": {
"post": [72.42, 9, 66],
"lerp_mode": "catmullrom"
},
"1.5": [72.42, 9, 66]
},
"position": {
"0.0": [0, 0, 0],
"0.125": [0, 0, 0],
"0.1667": {
"pre": [0, 0.5, 0.25],
"post": [0, 0.5, 0.25],
"lerp_mode": "catmullrom"
},
"0.2083": [0, 0.5, 0.25],
"0.3333": {
"pre": [0, -0.25, 0.25],
"post": [0, -0.25, 0.25],
"lerp_mode": "catmullrom"
},
"0.7917": [0, -0.25, 0.25],
"1.25": {
"pre": [0, 0.25, 0.25],
"post": [0, 0.25, 0.25],
"lerp_mode": "catmullrom"
},
"1.5": [0, 0.25, 0.25]
}
},
"torso": {
"rotation": {
"0.0": {
"post": [3.47, 0, 1.13],
"lerp_mode": "catmullrom"
},
"0.0833": {
"post": [-7, 0.3, -2.4],
"lerp_mode": "catmullrom"
},
"0.25": {
"post": [-12, 0, -3.2],
"lerp_mode": "catmullrom"
},
"0.3333": {
"post": [-2.89, 0, -1.77],
"lerp_mode": "catmullrom"
},
"0.4167": {
"post": [3, 0, 0],
"lerp_mode": "catmullrom"
},
"0.7917": {
"post": [6.12, 0, 1.57],
"lerp_mode": "catmullrom"
},
"1.0": {
"post": [8.28, 0, 3.68],
"lerp_mode": "catmullrom"
},
"1.25": [15.78, 0, 4.18]
},
"position": {
"0.0": [0, 0, 0],
"0.125": [0, 0, 0],
"0.25": {
"pre": [0, 0.25, 0.25],
"post": [0, 0.25, 0.25],
"lerp_mode": "catmullrom"
},
"0.2917": {
"post": [0, 0.15, 0.15],
"lerp_mode": "catmullrom"
},
"0.3333": [0, 0, 0],
"0.6667": [0, 0, 0],
"0.7917": [0, 0, 0],
"0.9167": {
"pre": [0.05, 0, 0],
"post": [0.05, 0, 0],
"lerp_mode": "catmullrom"
},
"1.25": [0.25, -0.6, 0]
},
"scale": {
"0.0": [1, 1, 1],
"0.875": [1, 1, 1],
"1.1667": {
"pre": [1, 0.92, 1],
"post": [1, 0.92, 1],
"lerp_mode": "catmullrom"
},
"1.5": {
"post": [1, 0.92, 1],
"lerp_mode": "catmullrom"
}
}
},
"head": {
"relative_to": {
"rotation": "entity"
},
"rotation": {
"0.0": [0, 0, 0.01],
"0.0833": {
"pre": [12.17, 0, 5.33],
"post": [12.17, 0, 5.33],
"lerp_mode": "catmullrom"
},
"0.125": {
"post": [-7.5, 2.5, 7.5],
"lerp_mode": "catmullrom"
},
"0.25": {
"post": [-5, "5-2*math.sin(q.anim_time*90*20+60)", "12.5+1*math.sin(q.anim_time*90*40+60)"],
"lerp_mode": "catmullrom"
}
},
"position": {
"0.0": [0, 0, 0],
"0.0833": {
"pre": [0, 0, 0.5],
"post": [0, 0, 0.5],
"lerp_mode": "catmullrom"
},
"0.2083": {
"post": [0, 0.5, 0.5],
"lerp_mode": "catmullrom"
},
"0.25": [0, 0, 0]
},
"scale": {
"0.0": [1, 1, 1],
"0.0833": {
"pre": [1.05, 0.9, 1.05],
"post": [1.05, 0.9, 1.05],
"lerp_mode": "catmullrom"
},
"0.125": [0.95, 1.2, 0.95],
"0.1667": [0, 0, 0]
}
},
"stuffing_neck": {
"position": {
"0.0": [0, 0, 0],
"0.2083": {"pre": [0, 0, 0], "post": [0, 0.3, 0]}
}
},
"locator_neck_fluff": {
"rotation": [-180, 0, 0]
},
"stuffing_shoulder_left": {
"position": {
"0.0": [0, 0, 0],
"0.2083": {"pre": [0, 0, 0], "post": [0.25, 0, 0]}
}
},
"stuffing_arm_left": {
"position": {
"0.0": [0, 0, 0],
"0.2083": {"pre": [0, 0, 0], "post": [-0.25, 0, 0]}
}
},
"stuffing_arm_right": {
"position": {
"0.0": [0, 0, 0],
"0.2083": {"pre": [0, 0, 0], "post": [0.25, 0, 0]}
}
},
"stuffing_shoulder_right": {
"position": {
"0.0": [0, 0, 0],
"0.2083": {"pre": [0, 0, 0], "post": [-0.25, 0, 0]}
}
}
},
"particle_effects": {
"0.1667": {
"effect": "substitute_fluff",
"locator": "neck_fluff"
}
}
},
"animation.substitute.flop_WIP": {
"animation_length": 1.5,
"bones": {
@@ -1222,7 +1222,7 @@
"position": [0, 0, "-0.2+math.cos(q.anim_time*90*16/3*2)*0.3"]
},
"hair2": {
"rotation": ["-2.5-math.cos(q.anim_time*90*16/3*2+30)*9", 0, 0]
"rotation": ["-1-math.cos(q.anim_time*90*16/3*2+30)*6", 0, 0]
},
"wings_closed": {
"rotation": ["-math.cos(q.anim_time*90*16/3*2-45)*2", 0, "math.sin(q.anim_time*90*16/3)*-1"]
@@ -1462,9 +1462,6 @@
"bones": {
"pidgey": {
"position": [0, 0, "20-q.anim_time*16*0.95"]
},
"head": {
"position": [0, 0, -0.1]
}
}
},
@@ -152,6 +152,9 @@
},
"claw_outer_right": {
"rotation": [10, 0, 0]
},
"wings_open": {
"scale": 0
}
}
},
@@ -207,6 +207,9 @@
},
"seat_1": {
"rotation": [22.5, 0, 0]
},
"wings_open": {
"scale": 0
}
}
},
@@ -1808,6 +1811,9 @@
},
"seat_1": {
"rotation": [22.5, 0, 0]
},
"wings_open": {
"scale": 0
}
}
},
@@ -2017,6 +2023,9 @@
},
"seat_1": {
"rotation": [22.5, 0, 0]
},
"wings_open": {
"scale": 0
}
}
},
@@ -3618,6 +3627,9 @@
},
"seat_1": {
"rotation": [22.5, 0, 0]
},
"wings_open": {
"scale": 0
}
}
},
@@ -4926,8 +4938,14 @@
},
"scale": {
"0.0": [0, 0, 0],
"0.24": {"pre": [0, 0, 0], "post": [1, 1, 1]},
"2.12": {"pre": [1, 1, 1], "post": [0, 0, 0]}
"0.24": {
"pre": [0, 0, 0],
"post": [1, 1, 1]
},
"2.12": {
"pre": [1, 1, 1],
"post": [0, 0, 0]
}
}
},
"wing_open_left2": {
@@ -5619,15 +5637,27 @@
"pupil_left": {
"position": {
"0.0": [-0.25, 0, 0],
"0.4": {"pre": [-0.25, 0, 0], "post": [0, 0, 0]},
"1.4": {"pre": [0, 0, 0], "post": [-0.25, 0, 0]}
"0.4": {
"pre": [-0.25, 0, 0],
"post": [0, 0, 0]
},
"1.4": {
"pre": [0, 0, 0],
"post": [-0.25, 0, 0]
}
}
},
"eyelid_left": {
"position": {
"0.0": [0, 0, 0],
"0.32": {"pre": [0, 0, 0], "post": [0.1, 0, -0.1]},
"1.4": {"pre": [0.1, 0, -0.1], "post": [0, 0, 0]}
"0.32": {
"pre": [0, 0, 0],
"post": [0.1, 0, -0.1]
},
"1.4": {
"pre": [0.1, 0, -0.1],
"post": [0, 0, 0]
}
}
},
"jaw": {
@@ -5898,8 +5928,14 @@
},
"scale": {
"0.0": [1, 1, 1],
"0.24": {"pre": [1, 1, 1], "post": [0, 0, 0]},
"2.12": {"pre": [0, 0, 0], "post": [1, 1, 1]}
"0.24": {
"pre": [1, 1, 1],
"post": [0, 0, 0]
},
"2.12": {
"pre": [0, 0, 0],
"post": [1, 1, 1]
}
}
},
"wing_closed_left1": {
@@ -6141,15 +6177,27 @@
"pupil_right": {
"position": {
"0.0": [-0.65, 0, 0],
"0.4": {"pre": [-0.65, 0, 0], "post": [0, 0, 0]},
"1.4": {"pre": [0, 0, 0], "post": [-0.65, 0, 0]}
"0.4": {
"pre": [-0.65, 0, 0],
"post": [0, 0, 0]
},
"1.4": {
"pre": [0, 0, 0],
"post": [-0.65, 0, 0]
}
}
},
"eyelid_right": {
"position": {
"0.0": [0, 0, 0],
"0.32": {"pre": [0, 0, 0], "post": [-0.1, 0, -0.1]},
"1.4": {"pre": [-0.1, 0, -0.1], "post": [0, 0, 0]}
"0.32": {
"pre": [0, 0, 0],
"post": [-0.1, 0, -0.1]
},
"1.4": {
"pre": [-0.1, 0, -0.1],
"post": [0, 0, 0]
}
}
},
"head_angle": {
@@ -6161,33 +6209,69 @@
"eyes_ditto": {
"position": {
"0.0": [0, 0, 0],
"0.32": {"pre": [0, 0, 0], "post": [0, 0, 0.1]},
"1.4": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
"0.32": {
"pre": [0, 0, 0],
"post": [0, 0, 0.1]
},
"1.4": {
"pre": [0, 0, 0.1],
"post": [0, 0, 0]
}
}
},
"eyes_blink_ditto": {
"position": {
"0.0": [0, 0, 0],
"0.32": {"pre": [0, 0, 0], "post": [0, 0, -0.1]},
"1.4": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
"0.32": {
"pre": [0, 0, 0],
"post": [0, 0, -0.1]
},
"1.4": {
"pre": [0, 0, -0.1],
"post": [0, 0, 0]
}
}
},
"mouth_ditto": {
"scale": {
"0.92": [1, 1, 1],
"1.32": {"pre": [1, 1, 1], "post": [0, 0, 0]},
"1.68": {"pre": [0, 0, 0], "post": [1, 1, 1]},
"1.76": {"pre": [1, 1, 1], "post": [0, 0, 0]},
"2.04": {"pre": [0, 0, 0], "post": [1, 1, 1]}
"1.32": {
"pre": [1, 1, 1],
"post": [0, 0, 0]
},
"1.68": {
"pre": [0, 0, 0],
"post": [1, 1, 1]
},
"1.76": {
"pre": [1, 1, 1],
"post": [0, 0, 0]
},
"2.04": {
"pre": [0, 0, 0],
"post": [1, 1, 1]
}
}
},
"mouth_open_ditto": {
"position": {
"0.92": [0, 0, 0],
"1.32": {"pre": [0, 0, 0], "post": [0, 0, -0.1]},
"1.68": {"pre": [0, 0, -0.1], "post": [0, 0, 0]},
"1.76": {"pre": [0, 0, 0], "post": [0, 0, -0.1]},
"2.04": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
"1.32": {
"pre": [0, 0, 0],
"post": [0, 0, -0.1]
},
"1.68": {
"pre": [0, 0, -0.1],
"post": [0, 0, 0]
},
"1.76": {
"pre": [0, 0, 0],
"post": [0, 0, -0.1]
},
"2.04": {
"pre": [0, 0, -0.1],
"post": [0, 0, 0]
}
}
},
"seat_1": {
@@ -6498,8 +6582,14 @@
},
"scale": {
"0.0": [0, 0, 0],
"0.24": {"pre": [0, 0, 0], "post": [1, 1, 1]},
"2.12": {"pre": [1, 1, 1], "post": [0, 0, 0]}
"0.24": {
"pre": [0, 0, 0],
"post": [1, 1, 1]
},
"2.12": {
"pre": [1, 1, 1],
"post": [0, 0, 0]
}
}
},
"wing_open_left2": {
@@ -7191,15 +7281,27 @@
"pupil_left": {
"position": {
"0.0": [-0.25, 0, 0],
"0.4": {"pre": [-0.25, 0, 0], "post": [0, 0, 0]},
"1.4": {"pre": [0, 0, 0], "post": [-0.25, 0, 0]}
"0.4": {
"pre": [-0.25, 0, 0],
"post": [0, 0, 0]
},
"1.4": {
"pre": [0, 0, 0],
"post": [-0.25, 0, 0]
}
}
},
"eyelid_left": {
"position": {
"0.0": [0, 0, 0],
"0.32": {"pre": [0, 0, 0], "post": [0.1, 0, -0.1]},
"1.4": {"pre": [0.1, 0, -0.1], "post": [0, 0, 0]}
"0.32": {
"pre": [0, 0, 0],
"post": [0.1, 0, -0.1]
},
"1.4": {
"pre": [0.1, 0, -0.1],
"post": [0, 0, 0]
}
}
},
"hair2": {
@@ -7447,8 +7549,14 @@
},
"scale": {
"0.0": [1, 1, 1],
"0.24": {"pre": [1, 1, 1], "post": [0, 0, 0]},
"2.12": {"pre": [0, 0, 0], "post": [1, 1, 1]}
"0.24": {
"pre": [1, 1, 1],
"post": [0, 0, 0]
},
"2.12": {
"pre": [0, 0, 0],
"post": [1, 1, 1]
}
}
},
"wing_closed_left1": {
@@ -7690,15 +7798,27 @@
"pupil_right": {
"position": {
"0.0": [-0.65, 0, 0],
"0.4": {"pre": [-0.65, 0, 0], "post": [0, 0, 0]},
"1.4": {"pre": [0, 0, 0], "post": [-0.65, 0, 0]}
"0.4": {
"pre": [-0.65, 0, 0],
"post": [0, 0, 0]
},
"1.4": {
"pre": [0, 0, 0],
"post": [-0.65, 0, 0]
}
}
},
"eyelid_right": {
"position": {
"0.0": [0, 0, 0],
"0.32": {"pre": [0, 0, 0], "post": [-0.1, 0, -0.1]},
"1.4": {"pre": [-0.1, 0, -0.1], "post": [0, 0, 0]}
"0.32": {
"pre": [0, 0, 0],
"post": [-0.1, 0, -0.1]
},
"1.4": {
"pre": [-0.1, 0, -0.1],
"post": [0, 0, 0]
}
}
},
"head_angle": {
@@ -7710,29 +7830,53 @@
"eyes_ditto": {
"position": {
"0.0": [0, 0, 0],
"0.32": {"pre": [0, 0, 0], "post": [0, 0, 0.1]},
"1.4": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
"0.32": {
"pre": [0, 0, 0],
"post": [0, 0, 0.1]
},
"1.4": {
"pre": [0, 0, 0.1],
"post": [0, 0, 0]
}
}
},
"eyes_blink_ditto": {
"position": {
"0.0": [0, 0, 0],
"0.32": {"pre": [0, 0, 0], "post": [0, 0, -0.1]},
"1.4": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
"0.32": {
"pre": [0, 0, 0],
"post": [0, 0, -0.1]
},
"1.4": {
"pre": [0, 0, -0.1],
"post": [0, 0, 0]
}
}
},
"mouth_ditto": {
"scale": {
"0.92": [1, 1, 1],
"1.32": {"pre": [1, 1, 1], "post": [0, 0, 0]},
"2.04": {"pre": [0, 0, 0], "post": [1, 1, 1]}
"1.32": {
"pre": [1, 1, 1],
"post": [0, 0, 0]
},
"2.04": {
"pre": [0, 0, 0],
"post": [1, 1, 1]
}
}
},
"mouth_open_ditto": {
"position": {
"0.92": [0, 0, 0],
"1.32": {"pre": [0, 0, 0], "post": [0, 0, -0.1]},
"2.04": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
"1.32": {
"pre": [0, 0, 0],
"post": [0, 0, -0.1]
},
"2.04": {
"pre": [0, 0, -0.1],
"post": [0, 0, 0]
}
}
},
"seat_1": {
@@ -12788,19 +12932,43 @@
"mouth_ditto": {
"scale": {
"0.0": [1, 1, 1],
"0.4167": {"pre": [1, 1, 1], "post": [0, 0, 0]},
"0.75": {"pre": [0, 0, 0], "post": [1, 1, 1]},
"0.8333": {"pre": [1, 1, 1], "post": [0, 0, 0]},
"1.125": {"pre": [0, 0, 0], "post": [1, 1, 1]}
"0.4167": {
"pre": [1, 1, 1],
"post": [0, 0, 0]
},
"0.75": {
"pre": [0, 0, 0],
"post": [1, 1, 1]
},
"0.8333": {
"pre": [1, 1, 1],
"post": [0, 0, 0]
},
"1.125": {
"pre": [0, 0, 0],
"post": [1, 1, 1]
}
}
},
"mouth_open_ditto": {
"position": {
"0.0": [0, 0, 0],
"0.4167": {"pre": [0, 0, 0], "post": [0, 0, -0.1]},
"0.75": {"pre": [0, 0, -0.1], "post": [0, 0, 0]},
"0.8333": {"pre": [0, 0, 0], "post": [0, 0, -0.1]},
"1.125": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
"0.4167": {
"pre": [0, 0, 0],
"post": [0, 0, -0.1]
},
"0.75": {
"pre": [0, 0, -0.1],
"post": [0, 0, 0]
},
"0.8333": {
"pre": [0, 0, 0],
"post": [0, 0, -0.1]
},
"1.125": {
"pre": [0, 0, -0.1],
"post": [0, 0, 0]
}
}
}
},
@@ -12904,7 +13072,10 @@
"eyelid_left": {
"position": {
"0.0": [0.1, 0, -0.1],
"0.2083": {"pre": [0.1, 0, -0.1], "post": [0, 0, 0]}
"0.2083": {
"pre": [0.1, 0, -0.1],
"post": [0, 0, 0]
}
}
},
"jaw": {
@@ -13185,7 +13356,10 @@
"eyelid_right": {
"position": {
"0.0": [-0.1, 0, -0.1],
"0.2083": {"pre": [-0.1, 0, -0.1], "post": [0, 0, 0]}
"0.2083": {
"pre": [-0.1, 0, -0.1],
"post": [0, 0, 0]
}
}
},
"wings": {
@@ -13211,13 +13385,19 @@
"eyes_ditto": {
"position": {
"0.0": [0, 0, 0.1],
"0.2083": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
"0.2083": {
"pre": [0, 0, 0.1],
"post": [0, 0, 0]
}
}
},
"eyes_blink_ditto": {
"position": {
"0.0": [0, 0, -0.1],
"0.2083": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
"0.2083": {
"pre": [0, 0, -0.1],
"post": [0, 0, 0]
}
}
}
}
@@ -13228,25 +13408,37 @@
"eyelid_left": {
"position": {
"0.0": [0.1, 0, -0.1],
"0.2083": {"pre": [0.1, 0, -0.1], "post": [0, 0, 0]}
"0.2083": {
"pre": [0.1, 0, -0.1],
"post": [0, 0, 0]
}
}
},
"eyelid_right": {
"position": {
"0.0": [-0.1, 0, -0.1],
"0.2083": {"pre": [-0.1, 0, -0.1], "post": [0, 0, 0]}
"0.2083": {
"pre": [-0.1, 0, -0.1],
"post": [0, 0, 0]
}
}
},
"eyes_ditto": {
"position": {
"0.0": [0, 0, 0.1],
"0.2083": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
"0.2083": {
"pre": [0, 0, 0.1],
"post": [0, 0, 0]
}
}
},
"eyes_blink_ditto": {
"position": {
"0.0": [0, 0, -0.1],
"0.2083": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
"0.2083": {
"pre": [0, 0, -0.1],
"post": [0, 0, 0]
}
}
}
}
@@ -162,7 +162,7 @@
},
"animation.chinchou.ground_walk": {
"loop": true,
"animation_length": 0.79167,
"animation_length": 0.7917,
"bones": {
"stem_left": {
"rotation": ["73.8265-0.5*math.sin(q.anim_time*90*10-30)*1", "-21.6937-3*math.sin(q.anim_time*90*5-150)*1", 6.1191]
@@ -2294,7 +2294,7 @@
}
},
"animation.chinchou.water_idle_quirk": {
"animation_length": 3.79167,
"animation_length": 3.7917,
"bones": {
"body": {
"rotation": {
@@ -2754,7 +2754,7 @@
}
},
"animation.chinchou.blink": {
"animation_length": 0.16667,
"animation_length": 0.1667,
"bones": {
"eyelid_left": {
"position": {
@@ -2879,29 +2879,10 @@
"1.25": [0, 0, 0]
}
}
}
},
"animation.chinchou.ground_walk speed test": {
"loop": true,
"bones": {
"chinchou": {
"position": [0, 0, "-q.anim_time*90*0.12"]
}
}
},
"animation.chinchou.ground_run speed test": {
"loop": true,
"bones": {
"chinchou": {
"position": [0, 0, "-q.anim_time*90*0.2"]
}
}
},
"animation.chinchou.water_swim speed test": {
"loop": true,
"bones": {
"chinchou": {
"position": [0, 0, "-q.anim_time*90*0.2"]
},
"sound_effects": {
"0.0833": {
"effect": "pokemon.chinchou.cry"
}
}
}
@@ -3,7 +3,7 @@
"animations": {
"animation.metagross.ground_idle": {
"loop": true,
"animation_length": 0,
"animation_length": 8,
"bones": {
"body2": {
"position": [0, -11.9, 0]
@@ -54,8 +54,7 @@
},
"torso": {
"rotation": {
"0.0": ["2+1*math.sin(q.anim_time*90*0.5)", "0.1*math.sin(q.anim_time*90*1-60)", "0.1*math.sin(q.anim_time*90*2-60)"],
"11.4167": ["2.5796+1*math.sin(q.anim_time*90*0.5)", "0.3148+0.1*math.sin(q.anim_time*90*1-60)", "2.4153+0.1*math.sin(q.anim_time*90*2-60)"]
"0.0": ["2+1*math.sin(q.anim_time*90*0.5)", "0.1*math.sin(q.anim_time*90*1-60)", "0.1*math.sin(q.anim_time*90*2-60)"]
},
"position": [0, "0.2*math.sin(q.anim_time*90*0.5-60)", 0]
}
@@ -74,14 +74,19 @@
"name": "neck",
"parent": "torso2",
"pivot": [0, 5.25, -7.5],
"rotation": [52.5, 0, 0],
"rotation": [52.5, 0, 0]
},
{
"name": "neck_ai",
"parent": "neck",
"pivot": [0, 5.25, -7.5],
"cubes": [
{"origin": [-2.5, 4.75, -9], "size": [5, 5, 5], "inflate": -0.01, "uv": [22, 32]}
]
},
{
"name": "head",
"parent": "neck",
"parent": "neck_ai",
"pivot": [0, 10, -6.5]
},
{
@@ -26,9 +26,9 @@
{
"name": "locator_root",
"parent": "pidgeot",
"pivot": [0, 32, 0],
"pivot": [0, 0, 0],
"locators": {
"root": [0, 32, 0]
"root": [0, 0, 0]
}
},
{
@@ -69,9 +69,9 @@
{
"name": "locator_seat_1",
"parent": "torso",
"pivot": [0, 25, 2],
"pivot": [0, 22, 2],
"locators": {
"seat_1": [0, 25, 2]
"seat_1": [0, 22, 2]
}
},
{
@@ -119,8 +119,8 @@
"cubes": [
{"origin": [19, 50, 0], "size": [2, 2, 2], "inflate": 0.01, "uv": [0, 45]},
{"origin": [21, 49.5, -0.5], "size": [8, 3, 3], "inflate": 0.01, "uv": [8, 45]},
{"origin": [-21, 50, 0], "size": [2, 2, 2], "inflate": 0.01, "pivot": [0, 51, 3.5], "rotation": [0, 0, 0], "uv": [0, 49], "mirror": true},
{"origin": [-29, 49.5, -0.5], "size": [8, 3, 3], "inflate": 0.01, "pivot": [0, 51, 3], "rotation": [0, 0, 0], "uv": [8, 51], "mirror": true},
{"origin": [-21, 50, 0], "size": [2, 2, 2], "inflate": 0.01, "uv": [0, 49], "mirror": true},
{"origin": [-29, 49.5, -0.5], "size": [8, 3, 3], "inflate": 0.01, "uv": [8, 51], "mirror": true},
{"origin": [18, 50, 0], "size": [2, 2, 2], "inflate": 0.01, "pivot": [0, 51, 3], "rotation": [0, 0, -55], "uv": [0, 53]},
{"origin": [-20, 50, 0], "size": [2, 2, 2], "inflate": 0.01, "pivot": [0, 51, 3.5], "rotation": [0, 0, 55], "uv": [30, 43], "mirror": true},
{"origin": [-28, 49.5, -0.5], "size": [8, 3, 3], "inflate": 0.01, "pivot": [0, 51, 3], "rotation": [0, 0, 55], "uv": [58, 46], "mirror": true},
@@ -447,14 +447,6 @@
"cubes": [
{"origin": [0, -24.5, -8], "size": [0, 12, 7], "uv": [98, 109]}
]
},
{
"name": "locator_seat_1",
"parent": "body",
"pivot": [0, 54, -10],
"locators": {
"seat_1": [0, 54, -10]
}
}
]
}
@@ -12,7 +12,8 @@
"standing": {
"poseTypes": ["PORTRAIT", "PROFILE", "STAND", "NONE"],
"animations": [
"q.look('head_ai')",
"q.look('neck', 1, 1, 35, -12.5, 7.5, -7.5)",
"q.look('head_ai', 1, 1, 1.5, -12.5, 2.5, -2.5)",
"q.bedrock('pidgey', 'ground_idle')"
],
"transformedParts": [
@@ -41,7 +42,8 @@
"walk": {
"poseTypes": ["WALK"],
"animations": [
"q.look('head_ai')",
"q.look('neck', 1, 1, 35, -12.5, 7.5, -7.5)",
"q.look('head_ai', 1, 1, 1.5, -12.5, 2.5, -2.5)",
"q.bedrock('pidgey', 'ground_walk')"
],
"transformedParts": [
@@ -70,7 +72,8 @@
"poseTypes": ["HOVER", "FLOAT"],
"animations": [
"q.pitch_tilt('body')",
"q.look('head_ai')",
"q.look('neck', 1, 1, 35, -12.5, 7.5, -7.5)",
"q.look('head_ai', 1, 1, 1.5, -12.5, 2.5, -2.5)",
"q.bedrock('pidgey', 'air_idle')"
],
"transformedParts": [
@@ -182,7 +185,8 @@
"shoulder_left": {
"poseTypes": ["SHOULDER_LEFT"],
"animations": [
"q.look('head_ai')",
"q.look('neck', 1, 1, 35, -12.5, 7.5, -7.5)",
"q.look('head_ai', 1, 1, 1.5, -12.5, 2.5, -2.5)",
"q.bedrock('pidgey', 'shoulder_left')"],
"quirks": ["q.bedrock_quirk('pidgey', 'blink')"],
"transformedParts": [
@@ -211,7 +215,8 @@
"shoulder_right": {
"poseTypes": ["SHOULDER_RIGHT"],
"animations": [
"q.look('head_ai')",
"q.look('neck', 1, 1, 35, -12.5, 7.5, -7.5)",
"q.look('head_ai', 1, 1, 1.5, -12.5, 2.5, -2.5)",
"q.bedrock('pidgey', 'shoulder_right')"],
"quirks": ["q.bedrock_quirk('pidgey', 'blink')"],
"transformedParts": [
@@ -18,27 +18,10 @@
"standing": {
"poseTypes": ["PORTRAIT", "PROFILE", "STAND", "NONE"],
"animations": [
"q.look('head_ai')",
"q.look('neck_ai', 1, 1, 30, -20, 7.5, -7.5)",
"q.look('head_ai', 1, 1, 3.5, -7.5, 1.5, -1.5)",
"q.bedrock('pidgeotto', 'ground_idle')"
],
"transformedParts": [
{
"part": "wing_open_left",
"isVisible": false
},
{
"part": "wing_open_right",
"isVisible": false
},
{
"part": "wing_closed_left",
"isVisible": true
},
{
"part": "wing_closed_right",
"isVisible": true
}
],
"quirks": [
"q.bedrock_quirk('pidgeotto', 'blink')",
"q.bedrock_primary_quirk('pidgeotto', 'ground_quirk', 10, 30, 1, q.curve('symmetrical'))"
@@ -47,7 +30,8 @@
"walk": {
"poseTypes": ["WALK"],
"animations": [
"q.look('head_ai')",
"q.look('neck_ai', 1, 1, 30, -20, 7.5, -7.5)",
"q.look('head_ai', 1, 1, 3.5, -7.5, 1.5, -1.5)",
"q.bedrock('pidgeotto', 'ground_walk')"
],
"transformedParts": [
@@ -76,7 +60,8 @@
"poseTypes": ["HOVER", "FLOAT"],
"animations": [
"q.pitch_tilt('body')",
"q.look('head_ai')",
"q.look('neck_ai', 1, 1, 30, -20, 7.5, -7.5)",
"q.look('head_ai', 1, 1, 3.5, -7.5, 1.5, -1.5)",
"q.bedrock('pidgeotto', 'air_idle')"
],
"transformedParts": [
@@ -24,8 +24,9 @@
"isBattle": false,
"condition": "!q.is_ridden",
"animations": [
"q.look('head_ai')",
"q.look('hair3', -1, 1, 30, -60, 0, 0)",
"q.look('neck2', 1, 1, 12.5, -15, 10, -10)",
"q.look('head_ai', 1, 1, 1, -7.5, 2.5, -2.5)",
"q.look('hair3', -1, 1, 10, -20, 0, 0)",
"q.bedrock('pidgeot', 'ground_idle')"
],
"transformedParts": [
@@ -54,31 +55,14 @@
"poseTypes": ["STAND"],
"isBattle": true,
"animations": [
"q.look('head_ai')",
"q.look('hair3', -1, 1, 30, -60, 0, 0)",
"q.look('neck2', 1, 1, 12.5, -15, 10, -10)",
"q.look('head_ai', 1, 1, 1, -7.5, 2.5, -2.5)",
"q.look('hair3', -1, 1, 10, -20, 0, 0)",
"q.bedrock('pidgeot', 'battle_idle')"
],
"namedAnimations": {
"cry": "q.bedrock_primary('pidgeot', 'battle_cry', q.curve('symmetrical_wide'))"
},
"transformedParts": [
{
"part": "wing_open_left",
"isVisible": false
},
{
"part": "wing_open_right",
"isVisible": false
},
{
"part": "wing_closed_left",
"isVisible": true
},
{
"part": "wing_closed_right",
"isVisible": true
}
],
"quirks": [
"q.bedrock_quirk('pidgeot', 'blink')"
]
@@ -87,8 +71,9 @@
"poseTypes": ["WALK"],
"condition": "!q.is_ridden",
"animations": [
"q.look('head_ai')",
"q.look('hair3', -1, 1, 30, -60, 0, 0)",
"q.look('neck2', 1, 1, 12.5, -15, 10, -10)",
"q.look('head_ai', 1, 1, 1, -7.5, 2.5, -2.5)",
"q.look('hair3', -1, 1, 10, -20, 0, 0)",
"q.bedrock('pidgeot', 'ground_walk')"
],
"transformedParts": [
@@ -118,8 +103,9 @@
"condition": "!q.is_ridden",
"animations": [
"q.pitch_tilt('body')",
"q.look('head_ai')",
"q.look('hair3', -1, 1, 30, -60, 0, 0)",
"q.look('neck2', 1, 1, 12.5, -15, 10, -10)",
"q.look('head_ai', 1, 1, 1, -7.5, 2.5, -2.5)",
"q.look('hair3', -1, 1, 10, -20, 0, 0)",
"q.bedrock('pidgeot', 'air_idle')"
],
"transformedParts": [
@@ -263,8 +249,9 @@
"poseTypes": ["STAND"],
"isBattle": false,
"animations": [
"q.look('head_ai')",
"q.look('hair3', -1, 1, 30, -60, 0, 0)",
"q.look('neck2', 1, 1, 12.5, -15, 10, -10)",
"q.look('head_ai', 1, 1, 1, -7.5, 2.5, -2.5)",
"q.look('hair3', -1, 1, 10, -20, 0, 0)",
"q.bedrock('pidgeot', 'mount_ground_idle')"
],
"condition": "q.has_entity && q.is_ridden && !q.in_air",
@@ -293,8 +280,9 @@
"isBattle": false,
"condition": "q.is_ridden && !q.is_air && q.has_entity",
"animations": [
"q.look('head_ai')",
"q.look('hair3', -1, 1, 30, -60, 0, 0)",
"q.look('neck2', 1, 1, 12.5, -15, 10, -10)",
"q.look('head_ai', 1, 1, 1, -7.5, 2.5, -2.5)",
"q.look('hair3', -1, 1, 10, -20, 0, 0)",
"q.bedrock('pidgeot', 'ride_ground_walk')",
"q.bedrock('pidgeot', 'mount_ground_walk')"
],
@@ -322,8 +310,9 @@
"poseTypes": ["HOVER"],
"condition": "!q.is_gliding && q.is_ridden && q.has_entity",
"animations": [
"q.look('head_ai')",
"q.look('hair3', -1, 1, 30, -60, 0, 0)",
"q.look('neck2', 1, 1, 12.5, -15, 10, -10)",
"q.look('head_ai', 1, 1, 1, -7.5, 2.5, -2.5)",
"q.look('hair3', -1, 1, 10, -20, 0, 0)",
"q.bedrock('pidgeot', 'ride_air_idle')",
"q.bedrock('pidgeot', 'mount_air_idle')"
],
@@ -353,8 +342,9 @@
"poseTypes": ["FLY"],
"condition": "!q.is_gliding && q.is_ridden && q.has_entity",
"animations": [
"q.look('head_ai')",
"q.look('hair3', -1, 1, 30, -60, 0, 0)",
"q.look('neck2', 1, 1, 12.5, -15, 10, -10)",
"q.look('head_ai', 1, 1, 1, -7.5, 2.5, -2.5)",
"q.look('hair3', -1, 1, 10, -20, 0, 0)",
"q.bedrock('pidgeot', 'ride_air_fly')",
"q.bedrock('pidgeot', 'mount_air_fly')"
],
@@ -385,8 +375,9 @@
"condition": "q.is_gliding",
"isBattle": false,
"animations": [
"q.look('head_ai')",
"q.look('hair3', -1, 1, 30, -60, 0, 0)",
"q.look('neck2', 1, 1, 12.5, -15, 10, -10)",
"q.look('head_ai', 1, 1, 1, -7.5, 2.5, -2.5)",
"q.look('hair3', -1, 1, 10, -20, 0, 0)",
"q.bedrock('pidgeot', 'air_glide')",
{
"condition": "q.is_ridden",
@@ -24,7 +24,8 @@
"poseTypes": ["STAND"],
"isBattle": true,
"animations": [
"q.look('head_ai')",
"q.look('neck', 1, 1, 25, -20, 20, -20)",
"q.look('head', 1, 1, 22.5, -10, 15, -15)",
"q.bedrock('aerodactyl', 'battle_idle')"
],
"quirks": [
@@ -38,7 +39,8 @@
"poseTypes": ["HOVER"],
"isBattle": true,
"animations": [
"q.look('head_ai')",
"q.look('neck', 1, 1, 25, -20, 20, -20)",
"q.look('head', 1, 1, 22.5, -10, 15, -15)",
"q.bedrock('aerodactyl', 'battle_air_idle')"
],
"quirks": [
@@ -53,7 +55,8 @@
"condition": "q.has_entity ? !q.in_air : 1.0",
"isBattle": false,
"animations": [
"q.look('head_ai')",
"q.look('neck', 1, 1, 25, -20, 20, -20)",
"q.look('head', 1, 1, 22.5, -10, 15, -15)",
"q.bedrock('aerodactyl', 'ground_idle')",
{
"condition": "q.is_ridden",
@@ -77,7 +80,8 @@
"poseTypes": ["WALK", "SWIM"],
"condition": "q.has_entity ? !q.in_air && !q.is_sprinting : 1.0",
"animations": [
"q.look('head_ai')",
"q.look('neck', 1, 1, 25, -20, 20, -20)",
"q.look('head', 1, 1, 22.5, -10, 15, -15)",
"q.bedrock('aerodactyl', 'ground_walk')",
{
"condition": "q.is_ridden",
@@ -90,7 +94,8 @@
"poseTypes": ["WALK", "SWIM"],
"condition": "q.has_entity ? !q.in_air && q.is_sprinting : 0.0",
"animations": [
"q.look('head_ai')",
"q.look('neck', 1, 1, 25, -20, 20, -20)",
"q.look('head', 1, 1, 22.5, -10, 15, -15)",
"q.bedrock('aerodactyl', 'ground_run')",
{
"condition": "q.is_ridden",
@@ -106,7 +111,8 @@
"isBattle": false,
"condition": "!q.is_ridden",
"animations": [
"q.look('head_ai')",
"q.look('neck', 1, 1, 25, -20, 20, -20)",
"q.look('head', 1, 1, 22.5, -10, 15, -15)",
"q.bedrock('aerodactyl', 'air_idle')"
],
"quirks": [
@@ -118,7 +124,8 @@
"isBattle": false,
"condition": "q.is_ridden",
"animations": [
"q.look('head_ai')",
"q.look('neck', 1, 1, 25, -20, 20, -20)",
"q.look('head', 1, 1, 22.5, -10, 15, -15)",
"q.bedrock('aerodactyl', 'air_idle')"
],
"quirks": [
@@ -131,7 +138,8 @@
"isBattle": false,
"condition": "!q.is_gliding && !q.is_ridden",
"animations": [
"q.look('head_ai')",
"q.look('neck', 1, 1, 25, -20, 20, -20)",
"q.look('head', 1, 1, 22.5, -10, 15, -15)",
"q.bedrock('aerodactyl', 'air_fly')"
],
"quirks": [
@@ -143,7 +151,8 @@
"isBattle": false,
"condition": "!q.is_gliding && q.is_ridden",
"animations": [
"q.look('head_ai')",
"q.look('neck', 1, 1, 25, -20, 20, -20)",
"q.look('head', 1, 1, 22.5, -10, 15, -15)",
"q.bedrock('aerodactyl', 'air_fly')",
"q.bedrock('aerodactyl', 'ride_air_fly')"
],
@@ -157,7 +166,8 @@
"isBattle": false,
"condition": "q.is_gliding",
"animations": [
"q.look('head_ai')",
"q.look('neck', 1, 1, 25, -20, 20, -20)",
"q.look('head', 1, 1, 22.5, -10, 15, -15)",
"q.bedrock('aerodactyl', 'air_glide')",
"q.bedrock('aerodactyl', 'air_dive')",
{
@@ -0,0 +1,88 @@
{
"portraitScale": 1.75,
"portraitTranslation": [-0.3, -0.8, 0],
"profileScale": 0.65,
"profileTranslation": [-0.05, 0.45, 0],
"rootBone": "chinchou",
"animations": {
"cry": "q.bedrock_stateful('chinchou', 'cry')"
},
"poses": {
"portrait": {
"poseTypes": ["PORTRAIT", "PROFILE"],
"animations": ["q.bedrock('chinchou', 'water_idle')"]
},
"battle-standing": {
"poseTypes": ["STAND"],
"isBattle": true,
"animations": ["q.bedrock('chinchou', 'battle_idle')"],
"quirks": [
"q.bedrock_quirk('chinchou', 'blink')"
]
},
"water-battle-standing": {
"poseTypes": ["FLOAT"],
"isBattle": true,
"animations": ["q.bedrock('chinchou', 'water_battle_idle')"],
"namedAnimations": {
"faint": "q.bedrock('chinchou', 'water_faint', q.curve('one'))"
},
"quirks": [
"q.bedrock_quirk('chinchou', 'blink')"
]
},
"standing": {
"poseTypes": ["STAND", "NONE"],
"isTouchingWater": false,
"animations": ["q.bedrock('chinchou', 'ground_idle')"],
"quirks": [
"q.bedrock_quirk('chinchou', 'blink')",
"q.bedrock_quirk('chinchou', 'ground_quirk')"
]
},
"walking": {
"poseTypes": ["WALK"],
"isTouchingWater": false,
"animations": ["q.bedrock('chinchou', 'water_swim')"],
"quirks": [
"q.bedrock_quirk('chinchou', 'blink')"
]
},
"floating": {
"poseTypes": ["FLOAT"],
"isTouchingWater": true,
"isUnderWater": true,
"animations": ["q.bedrock('chinchou', 'water_idle')"],
"quirks": [
"q.bedrock_quirk('chinchou', 'blink')",
"q.bedrock_quirk('chinchou', 'water_idle_quirk')"
]
},
"swimming": {
"poseTypes": ["SWIM"],
"isTouchingWater": true,
"isUnderWater": true,
"animations": ["q.bedrock('chinchou', 'water_swim')"],
"quirks": [
"q.bedrock_quirk('chinchou', 'blink')"
]
},
"water-sleeping": {
"poseTypes": ["SLEEP"],
"isTouchingWater": true,
"namedAnimations": {
"cry": "q.bedrock_stateful('dummy', 'cry')"
},
"animations": ["q.bedrock('chinchou', 'water_sleep')"]
},
"sleeping": {
"poseTypes": ["SLEEP"],
"isTouchingWater": false,
"namedAnimations": {
"cry": "q.bedrock_stateful('dummy', 'cry')"
},
"animations": ["q.bedrock('chinchou', 'sleep')"]
}
}
}
@@ -26,15 +26,17 @@
"battle-standing": {
"poseTypes": ["STAND"],
"isBattle": true,
"animations": ["q.bedrock('lanturn', 'battle_idle')"],
"isTouchingWater": false,
"animations": ["q.bedrock('lanturn', 'ground_battle_idle')"],
"quirks": ["q.bedrock_quirk('lanturn', 'blink')"]
},
"water-battle-standing": {
"poseTypes": ["FLOAT"],
"isBattle": true,
"isTouchingWater": true,
"animations": ["q.bedrock('lanturn', 'water_battle_idle')"],
"namedAnimations": {
"sleep": "q.bedrock('lanturn', 'water_faint', q.curve('one'))"
"faint": "q.bedrock('lanturn', 'water_faint', q.curve('one'))"
},
"quirks": ["q.bedrock_quirk('lanturn', 'blink')"]
},
@@ -42,42 +44,49 @@
"poseTypes": ["STAND", "WALK"],
"condition": "q.in_air",
"animations": ["q.bedrock('lanturn', 'water_swim')"],
"quirks": ["q.bedrock_quirk('lanturn', 'blink')"],
"transformTicks": 3,
"transformToTicks": 3
},
"standing": {
"poseTypes": ["STAND", "NONE"],
"isTouchingWater": false,
"animations": ["q.bedrock('lanturn', 'water_idle')"]
"animations": ["q.bedrock('lanturn', 'water_idle')"],
"quirks": ["q.bedrock_quirk('lanturn', 'blink')"]
},
"walking": {
"poseTypes": ["WALK"],
"isTouchingWater": false,
"animations": ["q.bedrock('lanturn', 'water_swim')"]
"animations": ["q.bedrock('lanturn', 'water_swim')"],
"quirks": ["q.bedrock_quirk('lanturn', 'blink')"]
},
"surface-floating": {
"poseTypes": ["STAND"],
"isTouchingWater": true,
"isUnderWater": false,
"animations": ["q.bedrock('lanturn', 'water_idle')"]
"animations": ["q.bedrock('lanturn', 'water_idle')"],
"quirks": ["q.bedrock_quirk('lanturn', 'blink')"]
},
"surface-swimming": {
"poseTypes": ["WALK"],
"isTouchingWater": true,
"isUnderWater": false,
"animations": ["q.bedrock('lanturn', 'water_swim')"]
"animations": ["q.bedrock('lanturn', 'water_swim')"],
"quirks": ["q.bedrock_quirk('lanturn', 'blink')"]
},
"floating": {
"poseTypes": ["FLOAT"],
"isTouchingWater": true,
"isUnderWater": true,
"animations": ["q.bedrock('lanturn', 'water_idle')"]
"animations": ["q.bedrock('lanturn', 'water_idle')"],
"quirks": ["q.bedrock_quirk('lanturn', 'blink')"]
},
"swimming": {
"poseTypes": ["SWIM"],
"isTouchingWater": true,
"isUnderWater": true,
"animations": ["q.bedrock('lanturn', 'water_swim')"]
"animations": ["q.bedrock('lanturn', 'water_swim')"],
"quirks": ["q.bedrock_quirk('lanturn', 'blink')"]
},
"water-sleeping": {
"poseTypes": ["SLEEP"],
@@ -17,7 +17,7 @@
"poseTypes": ["STAND"],
"isBattle": true,
"namedAnimations": {
"cry": "q.bedrock_primary('smeargle', 'battle_cry')"
"cry": "q.bedrock_primary('smeargle', 'battle_cry', q.curve('symmetrical_wide'))"
},
"animations": ["q.look('head')", "q.bedrock('smeargle', 'battle_idle')"],
"quirks": ["q.bedrock_quirk('smeargle', 'blink')"]
@@ -10,7 +10,6 @@
"poses": {
"standing": {
"poseTypes": ["STAND", "NONE", "PORTRAIT", "PROFILE"],
"isBattle": false,
"animations": ["q.look('head_ai')", "q.bedrock('snivy', 'ground_idle')"],
"quirks": ["q.bedrock_quirk('snivy', 'blink')"]
},
@@ -10,7 +10,6 @@
"poses": {
"standing": {
"poseTypes": ["STAND", "NONE", "PORTRAIT", "PROFILE"],
"isBattle": true,
"animations": ["q.bedrock('dewpider', 'ground_idle')"]
},
"walking": {
@@ -10,7 +10,6 @@
"poses": {
"standing": {
"poseTypes": ["STAND", "NONE", "PORTRAIT", "PROFILE"],
"isBattle": true,
"animations": ["q.bedrock('araquanid', 'ground_idle')"]
},
"walking": {
@@ -6,6 +6,7 @@
"rootBone": "tadbulb",
"animations": {
"faint": "q.bedrock_primary('tadbulb', 'faint', q.curve('one'))",
"cry": "q.bedrock_stateful('tadbulb', 'cry')",
"recoil": "q.bedrock_stateful('tadbulb', 'recoil')",
"physical": "q.bedrock_primary('tadbulb', 'physical', q.curve('symmetrical_wide'))",
"special": "q.bedrock_primary('tadbulb', 'special', q.curve('symmetrical'))",
@@ -6,6 +6,7 @@
"rootBone": "bellibolt",
"animations": {
"faint": "q.bedrock_primary('bellibolt', 'faint', q.curve('one'))",
"cry": "q.bedrock_stateful('bellibolt', 'cry')",
"recoil": "q.bedrock_stateful('bellibolt', 'recoil')",
"physical": "q.bedrock_primary('bellibolt', 'physical', q.curve('symmetrical_wide'))",
"special": "q.bedrock_primary('bellibolt', 'special', q.curve('symmetrical_wide'))",
@@ -14,6 +14,18 @@
"shiny"
],
"texture": "cobblemon:textures/pokemon/0475_gallade/gallade_shiny.png"
},
{
"aspects": [
"alpha_eyes"
],
"layers": [
{
"name": "alpha_eyes",
"texture": "cobblemon:textures/pokemon/0475_gallade/gallade_alpha.png",
"emissive": true
}
]
}
]
}
@@ -27,6 +27,18 @@
"texture": "cobblemon:textures/pokemon/0486_regigigas/regigigas_emissive.png"
}
]
},
{
"aspects": [
"alpha_eyes"
],
"layers": [
{
"name": "alpha_eyes",
"texture": "cobblemon:textures/pokemon/0486_regigigas/regigigas_alpha.png",
"emissive": true
}
]
}
]
}
@@ -16,7 +16,8 @@
{
"name": "translucent",
"texture": "cobblemon:textures/pokemon/0751_dewpider/dewpider_translucent.png",
"translucent": true
"translucent": true,
"translucent_cull": true
}
]
},
@@ -16,7 +16,8 @@
{
"name": "translucent",
"texture": "cobblemon:textures/pokemon/0752_araquanid/araquanid_translucent.png",
"translucent": true
"translucent": true,
"translucent_cull": true
}
]
},
Binary file not shown.

Before

Width:  |  Height:  |  Size: 109 B

After

Width:  |  Height:  |  Size: 414 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 496 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 596 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 563 B

@@ -46,10 +46,11 @@
"baseFriendship": 50,
"baseScale": 1.0,
"hitbox": {
"height": 1,
"height": 1.5,
"fixed": false,
"width": 1
"width": 1.5
},
"standingEyeHeight": 0.85,
"riding": {
"behaviours": {
"AIR": {
@@ -45,10 +45,11 @@
"baseFriendship": 50,
"baseScale": 1.1,
"hitbox": {
"height": 1.5,
"height": 1.7,
"fixed": false,
"width": 0.75
"width": 0.85
},
"standingEyeHeight": 1,
"riding": {
"behaviours": {
"AIR": {
@@ -146,7 +147,7 @@
"avoidsWater": true
},
"walk": {
"walkSpeed": 0.22
"walkSpeed": 0.27
}
},
"resting": {
@@ -51,6 +51,9 @@
},
"behaviour": {
"moving": {
"walk": {
"walkSpeed": 0.2
},
"fly": {
"canFly": true
},
@@ -52,6 +52,9 @@
},
"behaviour": {
"moving": {
"walk": {
"walkSpeed": 0.17
},
"fly": {
"canFly": true
},
@@ -43,7 +43,7 @@
"catchRate": 255,
"eggCycles": 15,
"baseFriendship": 50,
"baseScale": 0.5,
"baseScale": 0.6,
"hitbox": {
"width": 1,
"height": 0.9,
@@ -89,8 +89,8 @@
"stats": {
"ACCELERATION": "45-70",
"JUMP": "45-65",
"SKILL": "25-45",
"SPEED": "35-55",
"SKILL": "25-55",
"SPEED": "45-70",
"STAMINA": "45-70"
}
},
@@ -56,7 +56,7 @@
"stats": {
"ACCELERATION": "65-85",
"JUMP": "35-45",
"SKILL": "45-65",
"SKILL": "50-75",
"SPEED": "35-75",
"STAMINA": "25-45"
}
@@ -49,6 +49,9 @@
},
"behaviour": {
"moving": {
"walk": {
"canWalk": false
},
"swim": {
"avoidsWater": true
},
@@ -57,7 +57,7 @@
"ACCELERATION": "65-85",
"JUMP": "35-45",
"SKILL": "35-60",
"SPEED": "50-85",
"SPEED": "50-80",
"STAMINA": "30-60"
}
}

Some files were not shown because too many files have changed in this diff Show More