mirror of
https://gitlab.com/cable-mc/cobblemon.git
synced 2026-10-24 16:16:24 -04:00
Compare commits
136
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4b465090ad | ||
|
|
a039353a72 | ||
|
|
3e5733ceaf | ||
|
|
af29c99b03 | ||
|
|
60d596a24f | ||
|
|
4003456e5c | ||
|
|
1d21a52d28 | ||
|
|
2d49c62f85 | ||
|
|
da18b082a6 | ||
|
|
f8a16e5081 | ||
|
|
cad39d8802 | ||
|
|
00905b8c32 | ||
|
|
79b3cb8611 | ||
|
|
797e908621 | ||
|
|
3df3c395de | ||
|
|
89bba8a67a | ||
|
|
6d6e13be83 | ||
|
|
899bec77b6 | ||
|
|
6dd8325772 | ||
|
|
79faadef59 | ||
|
|
d9ca7b483d | ||
|
|
708f7fc1b8 | ||
|
|
621db85845 | ||
|
|
b09066c580 | ||
|
|
7c45f28827 | ||
|
|
9c1b2cae22 | ||
|
|
16b2f81bd4 | ||
|
|
6e0c005587 | ||
|
|
db0fb8e287 | ||
|
|
dae36a67d1 | ||
|
|
6f99862288 | ||
|
|
0377747e1e | ||
|
|
154b653c57 | ||
|
|
04489bc969 | ||
|
|
25499b3e7a | ||
|
|
bb6bda54dc | ||
|
|
9f3dbdc2d8 | ||
|
|
932148338c | ||
|
|
309f674853 | ||
|
|
dc705c7720 | ||
|
|
9bfc577444 | ||
|
|
3ca6d350fe | ||
|
|
2997ce8457 | ||
|
|
ff279d8310 | ||
|
|
cdb8ee0d8e | ||
|
|
e7d86a382c | ||
|
|
eb911df830 | ||
|
|
1c30acc53c | ||
|
|
2a0e8f6d47 | ||
|
|
e6bd8ec529 | ||
|
|
911a95e873 | ||
|
|
447cfc2ae5 | ||
|
|
8dfeb0d260 | ||
|
|
caa7b19833 | ||
|
|
64dd8ae193 | ||
|
|
156ee6f290 | ||
|
|
fe433d1417 | ||
|
|
0dc662d295 | ||
|
|
081e370bfd | ||
|
|
3ef0567287 | ||
|
|
3cad9e5481 | ||
|
|
dc8b7908be | ||
|
|
85085a1eca | ||
|
|
bff59dee6e | ||
|
|
bb5828531a | ||
|
|
cd08e98c28 | ||
|
|
331f7ca425 | ||
|
|
f445c05333 | ||
|
|
71c9ac0ff0 | ||
|
|
1404cc0ab5 | ||
|
|
a62485fc1f | ||
|
|
044f3080ff | ||
|
|
28b0cab906 | ||
|
|
82f34d651c | ||
|
|
6ca908a91d | ||
|
|
0948b8da9a | ||
|
|
22e04a53b3 | ||
|
|
df3217b41b | ||
|
|
9ff15a1913 | ||
|
|
ca58801794 | ||
|
|
38fa5e2628 | ||
|
|
fae1ae7124 | ||
|
|
3ec5f76c73 | ||
|
|
5bb8aaba55 | ||
|
|
23ba41e981 | ||
|
|
29b049452b | ||
|
|
0b0f665804 | ||
|
|
5d53fba2ce | ||
|
|
14cc851562 | ||
|
|
7223d1fd68 | ||
|
|
75f52e4cf4 | ||
|
|
55446dd4b1 | ||
|
|
8b825d558f | ||
|
|
9a7f97f11f | ||
|
|
95b8d62e4a | ||
|
|
f25a676bd5 | ||
|
|
a9906762a0 | ||
|
|
7b5b88eca2 | ||
|
|
291682ba52 | ||
|
|
546d403b45 | ||
|
|
c9f40e32a1 | ||
|
|
d642b8dd07 | ||
|
|
549a11116e | ||
|
|
b5468a4a4f | ||
|
|
c5d278ccb7 | ||
|
|
bf5e15de45 | ||
|
|
f4af417267 | ||
|
|
69c04acaeb | ||
|
|
83a6bb188f | ||
|
|
494a8b5e91 | ||
|
|
c8021f2f08 | ||
|
|
8cdf3af047 | ||
|
|
c90a24e1ab | ||
|
|
83e3cfc34e | ||
|
|
133dd4e5b7 | ||
|
|
a8cca14b86 | ||
|
|
9b0f356fa4 | ||
|
|
f2b0a102b6 | ||
|
|
a7d01b230a | ||
|
|
2a7db4b9b8 | ||
|
|
77e5f2501d | ||
|
|
e6513717bd | ||
|
|
0e0c98f693 | ||
|
|
528bfa4e22 | ||
|
|
83c87779d7 | ||
|
|
dc33235144 | ||
|
|
935c658c5f | ||
|
|
0426f4fbf9 | ||
|
|
46e771a062 | ||
|
|
4c0095844b | ||
|
|
10a2ef27d6 | ||
|
|
3c7637515c | ||
|
|
0a5abdb331 | ||
|
|
4ed7413dd2 | ||
|
|
40b66c24fc | ||
|
|
20a35de3d8 |
+105
-6
@@ -7,38 +7,137 @@
|
||||
- Iron Ball, Metal Coat, Throat Spray, HP Up, Protein, Iron, Carbos, Calcium, Zinc, PP Up, PP Max, Upgrade, Dubious Disc, and Loaded Dice.
|
||||
- The following items can now be placed on various surfaces:
|
||||
- Galarica Wreath, Magnet, Flame Orb, Life Orb, Toxic Orb, Light Ball, and Smoke Ball.
|
||||
- The following items can now be placed as blocks, and have additional functionality:
|
||||
- The following items can now be placed as blocks and have additional functionality:
|
||||
- Ring Target, Metronome, and Eject Button.
|
||||
- The following items can now be worn by Players and Pokémon:
|
||||
- Galarica Wreath, Cleanse Tag, Spell Tag, Sharp Beak, Covert Cloak, Shell Helmet, and Never-Melt Ice.
|
||||
- Wearable items can now be equipped by a player by holding it and right-clicking (or rebound use/interact)
|
||||
- Wearable items that can be placed down are exempt from this behaviour.
|
||||
- New Cosmetic Item for Pikachu: Paper
|
||||
|
||||
### New rideable Pokémon
|
||||
|
||||
### Fixes
|
||||
- Fixed #updateMovesOnFormChange not properly initializing a form-swapped Pokemon's non-form_change moves.
|
||||
### TEST
|
||||
### Pokémon Added
|
||||
#### Generation 4
|
||||
- Snover
|
||||
- Abomasnow
|
||||
- Burmy
|
||||
- Wormadam
|
||||
- Mothim
|
||||
|
||||
#### Regional Forms
|
||||
#### Generation 5
|
||||
- Tympole
|
||||
- Palpitoad
|
||||
- Seismitoad
|
||||
|
||||
#### Generation 6
|
||||
- Helioptile
|
||||
- Heliolisk
|
||||
|
||||
#### Generation 7
|
||||
- Grubbin
|
||||
- Charjabug
|
||||
- Vikavolt
|
||||
- Minior
|
||||
|
||||
#### Generation 8
|
||||
- Eternatus
|
||||
|
||||
#### Generation 9
|
||||
- Greavard
|
||||
- Houndstone
|
||||
|
||||
### Model updates for the following Pokémon
|
||||
- Sudowoodo
|
||||
- Spheal
|
||||
- Cacnea
|
||||
- Cacturne
|
||||
- Binacle
|
||||
- Barbaracle
|
||||
- Glimmet
|
||||
- Glimmora
|
||||
- Deerling
|
||||
- Sawsbuck (All forms)
|
||||
- Absol
|
||||
- Poliwag
|
||||
- Politoed
|
||||
- Ekans
|
||||
- Oddish
|
||||
- Gloom
|
||||
- Vileplume
|
||||
- Bellossom
|
||||
- Shroomish
|
||||
- Chespin
|
||||
- Quilladin
|
||||
- Chesnaught
|
||||
- Fennekin
|
||||
- Braixen
|
||||
- Delphox
|
||||
- Froakie
|
||||
- Frogadier
|
||||
- Greninja
|
||||
- Shinx
|
||||
- Luxio
|
||||
- Luxray
|
||||
- Slakoth
|
||||
- Riolu
|
||||
- Lucario
|
||||
|
||||
### Animation updates for the following Pokémon
|
||||
|
||||
#### Added sounds to the following moves
|
||||
- Treecko (New Shoulder Mount!)
|
||||
- Bonsly (New Shoulder Mount!)
|
||||
- Sudowoodo
|
||||
- Cacnea
|
||||
- Cacturne
|
||||
- Ekans
|
||||
- Arbok
|
||||
- Oddish
|
||||
- Gloom
|
||||
- Vileplume
|
||||
- Bellossom
|
||||
- Pichu
|
||||
- Pikachu
|
||||
- Raichu (+ Alolan)
|
||||
- Greninja
|
||||
- Slakoth
|
||||
|
||||
### Changes
|
||||
- Updated various recipes to display in Recipe Groups within the Recipe Book
|
||||
- Updated most recipes to display more logically/consistently within the Recipe Book's categories
|
||||
- Make ride rotations less jittery in multiplayer.
|
||||
- Made regional and Vivillon split-evo locations now mutually exclusive
|
||||
- Vivillon's patterns are now viewable as forms with form names and unique Pokedex entries displayed.
|
||||
|
||||
### Fixes
|
||||
- Correctly grants "They're Minerals!" advancement when planting a type gem
|
||||
- Type Gem Blocks now have advancements to give you the recipe in the recipe book (the data for the advancements were inside the recipes somehow??)
|
||||
- Some other recipes without advancements have also been corrected
|
||||
- Corrected the TM Recipes for Charge Beam and Payday
|
||||
- Type Gem blocks now properly generate clusters off of the block.
|
||||
- Starter Screen Categories will no longer stop rendering if they are bigger than the viewport, and you are not viewing top or bottom edges
|
||||
- Random Starter option now properly handled in height calculation, so now it won't run off into other categories or be un-accessible due to scroll limits if it causes a new row
|
||||
- Mochi and Feathers no longer drop glass bottles on use
|
||||
- Fixed a rare set of concurrency bugs related to reloading packs on NeoForge; fixes a ModernFix issue
|
||||
- Removed unnecessary conditions for Mimikyu's standing pose. Hopefully fixes the rare instance of it using its shoulder animations during battle in multiplayer scenarios.
|
||||
- Fixed Rockruff line not blinking
|
||||
- Fixed Flygon sometimes using its running animation instead of walking
|
||||
- Fixed Bramblin always sleeping outside of battle
|
||||
- Fixed Dragonair using its battle idle as a normal idle
|
||||
- Fixed Lycanroc's head movement
|
||||
- Added head movement to Archaludon
|
||||
- Fixed Duraludon line not having any sleep animations
|
||||
- Fixed Diglett line not having their faint animations
|
||||
- Fixed Kingambit moving its legs while walking
|
||||
- Fixed Alolan Diglett's cry not playing
|
||||
- Fixed shiny alpha Snorlax using the non-shiny texture
|
||||
- Various Structure fixes
|
||||
|
||||
### Developer
|
||||
|
||||
### Molang & Datapacks
|
||||
- A new `negate` variant for evolution requirements has been added, which will negate (invert) the provided inner condition.
|
||||
- Added Molang functions for individual Pokédex ids, wherein a subdex is passed in as a string to `dex_caught_count` etc.
|
||||
|
||||
### Particles
|
||||
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
- Some kind of particle effect for them? they're meant to have glowing eyes, so maybe some red particles on the eye locator
|
||||
--- global posers? stacked posers?
|
||||
--- red texture seems to be what some people wanted.
|
||||
|
||||
/- shoulder mounts part of it
|
||||
- omni boost
|
||||
- roar when player comes within reach, adjust levels
|
||||
|
||||
- Riding settings to control what the min scale is for a pokemon to be ridable.
|
||||
+22
@@ -16,6 +16,7 @@ import com.cobblemon.mod.common.api.molang.ObjectValue
|
||||
import com.cobblemon.mod.common.api.pokedex.AbstractPokedexManager
|
||||
import com.cobblemon.mod.common.api.pokedex.CaughtCount
|
||||
import com.cobblemon.mod.common.api.pokedex.CaughtPercent
|
||||
import com.cobblemon.mod.common.api.pokedex.Dexes
|
||||
import com.cobblemon.mod.common.api.pokedex.PokedexEntryProgress
|
||||
import com.cobblemon.mod.common.api.pokedex.PokedexManager
|
||||
import com.cobblemon.mod.common.api.pokedex.SeenCount
|
||||
@@ -74,6 +75,27 @@ object PokedexMoLangFunctions : AbstractMoLangFunctionHolder<AbstractPokedexMana
|
||||
functions["caught_percent"] = { DoubleValue(pokedex.getGlobalCalculatedValue(CaughtPercent)) }
|
||||
functions["seen_percent"] = { DoubleValue(pokedex.getGlobalCalculatedValue(SeenPercent)) }
|
||||
|
||||
functions["dex_caught_count"] = { params ->
|
||||
val dexId = params.getString(0).asIdentifierDefaultingNamespace()
|
||||
if (Dexes.dexEntryMap.containsKey(dexId)) DoubleValue(pokedex.getDexCalculatedValue(dexId, CaughtCount))
|
||||
else DoubleValue.ZERO
|
||||
}
|
||||
functions["dex_seen_count"] = { params ->
|
||||
val dexId = params.getString(0).asIdentifierDefaultingNamespace()
|
||||
if (Dexes.dexEntryMap.containsKey(dexId)) DoubleValue(pokedex.getDexCalculatedValue(dexId, SeenCount))
|
||||
else DoubleValue.ZERO
|
||||
}
|
||||
functions["dex_caught_percent"] = { params ->
|
||||
val dexId = params.getString(0).asIdentifierDefaultingNamespace()
|
||||
if (Dexes.dexEntryMap.containsKey(dexId)) DoubleValue(pokedex.getDexCalculatedValue(dexId, CaughtPercent).toDouble())
|
||||
else DoubleValue.ZERO
|
||||
}
|
||||
functions["dex_seen_percent"] = { params ->
|
||||
val dexId = params.getString(0).asIdentifierDefaultingNamespace()
|
||||
if (Dexes.dexEntryMap.containsKey(dexId)) DoubleValue(pokedex.getDexCalculatedValue(dexId, SeenPercent).toDouble())
|
||||
else DoubleValue.ZERO
|
||||
}
|
||||
|
||||
when (pokedex) {
|
||||
is PokedexManager -> {
|
||||
functions["player_id"] = { StringValue(pokedex.uuid.toString()) }
|
||||
|
||||
+23
-7
@@ -8,8 +8,10 @@
|
||||
|
||||
package com.cobblemon.mod.common.api.orientation
|
||||
|
||||
import com.cobblemon.mod.common.util.math.QuatSpring
|
||||
import com.cobblemon.mod.common.util.math.geometry.toDegrees
|
||||
import com.cobblemon.mod.common.util.math.geometry.toRadians
|
||||
import com.cobblemon.mod.common.util.math.simpleSpringDamperQuat
|
||||
import net.minecraft.client.Minecraft
|
||||
import net.minecraft.util.Mth
|
||||
import net.minecraft.world.entity.LivingEntity
|
||||
@@ -26,6 +28,8 @@ open class OrientationController(val entity: LivingEntity) {
|
||||
val FORWARDS: Vector3f = Vector3f(0.0f, 0.0f, -1.0f)
|
||||
val UP: Vector3f = Vector3f(0.0f, 1.0f, 0.0f)
|
||||
val LEFT: Vector3f = Vector3f(-1.0f, 0.0f, 0.0f)
|
||||
private const val TICK_DT = 1f / 20f // Minecraft server tick rate
|
||||
private const val RENDER_SMOOTH_HALFLIFE = 0.1f // seconds to close ~half the gap
|
||||
}
|
||||
|
||||
open var active: Boolean = false
|
||||
@@ -33,6 +37,8 @@ open class OrientationController(val entity: LivingEntity) {
|
||||
var orientation: Matrix3f? = null
|
||||
private set
|
||||
|
||||
private val renderSpring = QuatSpring()
|
||||
|
||||
private var renderOrientationO: Matrix3f? = null
|
||||
private var renderOrientation: Matrix3f? = null
|
||||
|
||||
@@ -54,6 +60,8 @@ open class OrientationController(val entity: LivingEntity) {
|
||||
orientation = null
|
||||
renderOrientationO = null
|
||||
renderOrientation = null
|
||||
renderSpring.quat.identity()
|
||||
renderSpring.angVel.set(0f, 0f, 0f)
|
||||
active = false
|
||||
}
|
||||
|
||||
@@ -77,18 +85,26 @@ open class OrientationController(val entity: LivingEntity) {
|
||||
return oldQuat
|
||||
}
|
||||
|
||||
/** Every tick move the current render orientation towards the last known true orientation **/
|
||||
fun tick() {
|
||||
if (!active || orientation == null) return
|
||||
renderOrientationO = renderOrientation
|
||||
val current = orientation
|
||||
val renderMatrix = this.renderOrientation ?: current
|
||||
val renderQuat = Quaternionf().setFromUnnormalized(renderMatrix)
|
||||
val targetQuat = Quaternionf().setFromUnnormalized(current)
|
||||
val dampingFactor = 0.66f // Smooth interpolation to reduce jitter of orientations recieved from the server.
|
||||
renderQuat.slerp(targetQuat, dampingFactor)
|
||||
val current = orientation!!
|
||||
val targetQuat = Quaternionf().setFromUnnormalized(current)
|
||||
|
||||
if (renderOrientation == null) {
|
||||
// First tick: snap the spring to the target instead of easing in from identity
|
||||
renderSpring.quat.set(targetQuat)
|
||||
renderSpring.angVel.set(0f, 0f, 0f)
|
||||
}
|
||||
|
||||
// Use a "quat spring" to smoothly move the render orientation towards the goal orientation.
|
||||
// It takes into account the orientations angular velocities and should be much more resilient
|
||||
// to sharp changes in goal orientation or late/missed packets.
|
||||
simpleSpringDamperQuat(renderSpring, targetQuat, 0.15f, TICK_DT)
|
||||
|
||||
val newRenderOrientation = Matrix3f()
|
||||
renderQuat.get(newRenderOrientation)
|
||||
renderSpring.quat.get(newRenderOrientation)
|
||||
renderOrientation = newRenderOrientation
|
||||
}
|
||||
|
||||
|
||||
+62
@@ -0,0 +1,62 @@
|
||||
/*
|
||||
* 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.api.riding.util
|
||||
|
||||
import net.minecraft.core.BlockPos
|
||||
import net.minecraft.world.level.BlockGetter
|
||||
import net.minecraft.world.phys.AABB
|
||||
import kotlin.math.floor
|
||||
|
||||
/**
|
||||
* Walks every block position inside [searchBox] and turns each solid block into one
|
||||
* full-cube [FieldPrimitive].
|
||||
*
|
||||
* @author Jackson
|
||||
* @since July 27th, 2026
|
||||
*/
|
||||
|
||||
fun collectPrimitivesFromBlocks(
|
||||
level: BlockGetter,
|
||||
searchBox: AABB,
|
||||
shape: PrimitiveShape,
|
||||
includeFluids: Boolean = false
|
||||
): List<FieldPrimitive> {
|
||||
val primitives = mutableListOf<FieldPrimitive>()
|
||||
|
||||
val minX = floor(searchBox.minX).toInt()
|
||||
val maxX = floor(searchBox.maxX).toInt()
|
||||
val minY = floor(searchBox.minY).toInt()
|
||||
val maxY = floor(searchBox.maxY).toInt()
|
||||
val minZ = floor(searchBox.minZ).toInt()
|
||||
val maxZ = floor(searchBox.maxZ).toInt()
|
||||
|
||||
val pos = BlockPos.MutableBlockPos()
|
||||
for (x in minX..maxX) {
|
||||
for (y in minY..maxY) {
|
||||
for (z in minZ..maxZ) {
|
||||
pos.set(x, y, z)
|
||||
val state = level.getBlockState(pos)
|
||||
|
||||
val isSolid = !state.getCollisionShape(level, pos).isEmpty
|
||||
val isFluid = includeFluids && !state.fluidState.isEmpty
|
||||
if (!isSolid && !isFluid) continue
|
||||
|
||||
primitives.add(
|
||||
FieldPrimitive(
|
||||
shape = shape,
|
||||
centerX = x + 0.5f, centerY = y + 0.5f, centerZ = z + 0.5f,
|
||||
halfWidth = 0.5f, halfHeight = 0.5f, halfDepth = 0.5f
|
||||
)
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return primitives
|
||||
}
|
||||
@@ -0,0 +1,155 @@
|
||||
/*
|
||||
* 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.api.riding.util
|
||||
|
||||
import net.minecraft.world.phys.Vec3
|
||||
import kotlin.math.abs
|
||||
import kotlin.math.max
|
||||
import kotlin.math.min
|
||||
import kotlin.math.sqrt
|
||||
|
||||
/**
|
||||
* Helpful Functions when working with signed distance fields/functions.
|
||||
* https://iquilezles.org/articles/distfunctions/
|
||||
*
|
||||
* @author Jackson
|
||||
* @since July 27th, 2026
|
||||
*/
|
||||
|
||||
/** Which distance formula a primitive uses. */
|
||||
enum class PrimitiveShape {
|
||||
BOX,
|
||||
ROUNDED_BOX,
|
||||
ELLIPSOID
|
||||
}
|
||||
|
||||
/** Tunable constants for the field. */
|
||||
data class DistanceFieldTuning(
|
||||
val smoothingRange: Float = 0.5f,
|
||||
val roundingRadius: Float = 0.08f
|
||||
)
|
||||
|
||||
/** A single shape in the field - a center position, half-extents, and which formula to use. */
|
||||
data class FieldPrimitive(
|
||||
val shape: PrimitiveShape,
|
||||
val centerX: Float, val centerY: Float, val centerZ: Float,
|
||||
val halfWidth: Float, val halfHeight: Float, val halfDepth: Float
|
||||
)
|
||||
|
||||
/** Fast approximate 1/sqrt(x) - the Quake III trick, cheaper than a real sqrt + divide. */
|
||||
fun fastInverseSqrt(value: Float): Float {
|
||||
var x = value
|
||||
val halfX = 0.5f * x
|
||||
var bits = java.lang.Float.floatToIntBits(x)
|
||||
bits = 0x5f3759df - (bits shr 1)
|
||||
x = java.lang.Float.intBitsToFloat(bits)
|
||||
x *= (1.5f - halfX * x * x)
|
||||
return x
|
||||
}
|
||||
|
||||
/** Exact distance from a point to an axis-aligned box. Inputs are relative to the box's own center. */
|
||||
fun boxDistance(relX: Float, relY: Float, relZ: Float, halfWidth: Float, halfHeight: Float, halfDepth: Float): Float {
|
||||
val qx = abs(relX) - halfWidth
|
||||
val qy = abs(relY) - halfHeight
|
||||
val qz = abs(relZ) - halfDepth
|
||||
val ox = max(qx, 0f)
|
||||
val oy = max(qy, 0f)
|
||||
val oz = max(qz, 0f)
|
||||
val outside = sqrt(ox * ox + oy * oy + oz * oz)
|
||||
val inside = min(max(qx, max(qy, qz)), 0f)
|
||||
return outside + inside
|
||||
}
|
||||
|
||||
/** Same as boxDistance but with rounded corners/edges https://iquilezles.org/articles/distfunctions/ */
|
||||
fun roundedBoxDistance(relX: Float, relY: Float, relZ: Float, halfWidth: Float, halfHeight: Float, halfDepth: Float, roundingRadius: Float): Float =
|
||||
boxDistance(relX, relY, relZ, halfWidth - roundingRadius, halfHeight - roundingRadius, halfDepth - roundingRadius) - roundingRadius
|
||||
|
||||
/** Approximate (lower-bound) distance to an ellipsoid https://iquilezles.org/articles/ellipsoids/. */
|
||||
fun ellipsoidDistance(relX: Float, relY: Float, relZ: Float, halfWidth: Float, halfHeight: Float, halfDepth: Float): Float {
|
||||
val px = relX / halfWidth
|
||||
val py = relY / halfHeight
|
||||
val pz = relZ / halfDepth
|
||||
val inverseMagnitude = fastInverseSqrt(px * px + py * py + pz * pz)
|
||||
val trueDistance = sqrt(relX * relX + relY * relY + relZ * relZ)
|
||||
return trueDistance * (1.0f - inverseMagnitude)
|
||||
}
|
||||
|
||||
/** Distance from a point to one primitive, dispatched by its shape. */
|
||||
fun distanceToPrimitive(primitive: FieldPrimitive, sampleX: Float, sampleY: Float, sampleZ: Float, tuning: DistanceFieldTuning): Float {
|
||||
val relX = sampleX - primitive.centerX
|
||||
val relY = sampleY - primitive.centerY
|
||||
val relZ = sampleZ - primitive.centerZ
|
||||
return when (primitive.shape) {
|
||||
PrimitiveShape.BOX -> boxDistance(relX, relY, relZ, primitive.halfWidth, primitive.halfHeight, primitive.halfDepth)
|
||||
PrimitiveShape.ROUNDED_BOX -> roundedBoxDistance(relX, relY, relZ, primitive.halfWidth, primitive.halfHeight, primitive.halfDepth, tuning.roundingRadius)
|
||||
PrimitiveShape.ELLIPSOID -> ellipsoidDistance(relX, relY, relZ, primitive.halfWidth, primitive.halfHeight, primitive.halfDepth)
|
||||
}
|
||||
}
|
||||
|
||||
///** Normalized quadratic smooth-min https://iquilezles.org/articles/smin/ */
|
||||
//fun smoothMinimum(a: Float, b: Float, smoothingRange: Float): Float {
|
||||
// if (smoothingRange <= 0.001f) return min(a, b)
|
||||
// val k = smoothingRange * 4.0f
|
||||
// val h = (0.5f + 0.5f * (b - a) / k).coerceIn(0f, 1f)
|
||||
// return b + (a - b) * h - k * h * (1f - h)
|
||||
//}
|
||||
//
|
||||
///** Folds every primitive's distance together into one field value at a point. */
|
||||
//fun sampleField(primitives: List<FieldPrimitive>, sampleX: Float, sampleY: Float, sampleZ: Float, tuning: DistanceFieldTuning): Float {
|
||||
// var result = Float.POSITIVE_INFINITY
|
||||
// for (primitive in primitives) {
|
||||
// val distance = distanceToPrimitive(primitive, sampleX, sampleY, sampleZ, tuning)
|
||||
// result = if (result == Float.POSITIVE_INFINITY) distance else smoothMinimum(result, distance, tuning.smoothingRange)
|
||||
// }
|
||||
// return result
|
||||
//}
|
||||
|
||||
/** Normalized quadratic smooth-min https://iquilezles.org/articles/smin/ */
|
||||
fun smoothMinimum(a: Float, b: Float, smoothingRange: Float): Float {
|
||||
if (smoothingRange <= 0.001f) return min(a, b)
|
||||
val k = smoothingRange * 4.0f
|
||||
val h = (0.5f + 0.5f * (b - a) / k).coerceIn(0f, 1f)
|
||||
return b + (a - b) * h - k * h * (1f - h)
|
||||
}
|
||||
|
||||
/** Folds nearby primitive distances together into one field value at a point. */
|
||||
fun sampleField(primitives: List<FieldPrimitive>, sampleX: Float, sampleY: Float, sampleZ: Float, tuning: DistanceFieldTuning): Float {
|
||||
if (primitives.isEmpty()) return Float.POSITIVE_INFINITY
|
||||
|
||||
val distances = FloatArray(primitives.size) { distanceToPrimitive(primitives[it], sampleX, sampleY, sampleZ, tuning) }
|
||||
val minDistance = distances.min()
|
||||
|
||||
if (tuning.smoothingRange <= 0.001f) return minDistance
|
||||
|
||||
// Anything more than a few blend-widths past the closest primitive is cut - its
|
||||
// contribution would be negligible in a correct blend anyway, but left in, it still
|
||||
// drags the chained result down the more of them there are.
|
||||
val cutoff = tuning.smoothingRange * 3f
|
||||
|
||||
var result = Float.POSITIVE_INFINITY
|
||||
for (distance in distances) {
|
||||
if (distance - minDistance > cutoff) continue
|
||||
result = if (result == Float.POSITIVE_INFINITY) distance else smoothMinimum(result, distance, tuning.smoothingRange)
|
||||
}
|
||||
return result
|
||||
}
|
||||
|
||||
/** Finite-difference gradient of the field at a point - points away from the surface, magnitude ~1 for a clean field. */
|
||||
fun estimateGradient(primitives: List<FieldPrimitive>, point: Vec3, tuning: DistanceFieldTuning, epsilon: Float = 0.05f): Vec3 {
|
||||
val px = point.x.toFloat()
|
||||
val py = point.y.toFloat()
|
||||
val pz = point.z.toFloat()
|
||||
|
||||
val dx = sampleField(primitives, px + epsilon, py, pz, tuning) - sampleField(primitives, px - epsilon, py, pz, tuning)
|
||||
val dy = sampleField(primitives, px, py + epsilon, pz, tuning) - sampleField(primitives, px, py - epsilon, pz, tuning)
|
||||
val dz = sampleField(primitives, px, py, pz + epsilon, tuning) - sampleField(primitives, px, py, pz - epsilon, tuning)
|
||||
|
||||
val gradient = Vec3(dx.toDouble(), dy.toDouble(), dz.toDouble())
|
||||
return if (gradient.lengthSqr() > 1e-8) gradient.normalize() else Vec3(0.0, 1.0, 0.0)
|
||||
}
|
||||
@@ -0,0 +1,105 @@
|
||||
/*
|
||||
* 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.api.riding.util
|
||||
|
||||
import net.minecraft.core.particles.DustParticleOptions
|
||||
import net.minecraft.server.level.ServerLevel
|
||||
import net.minecraft.world.entity.Entity
|
||||
import net.minecraft.world.phys.AABB
|
||||
import net.minecraft.world.phys.Vec3
|
||||
import org.joml.Vector3f
|
||||
|
||||
/** One shell to draw - a target field value, a color, a particle size. */
|
||||
data class DistanceFieldLayer(
|
||||
val isoValue: Float,
|
||||
val color: Vector3f,
|
||||
val particleSize: Float = 1.0f
|
||||
)
|
||||
|
||||
/**
|
||||
* Marches a grid of vertical columns through the field around [center] and spawns a
|
||||
* particle everywhere it crosses one of [layers]' target values. Server-side only.
|
||||
*/
|
||||
fun visualizeDistanceField(
|
||||
referenceEntity: Entity,
|
||||
center: Vec3,
|
||||
layers: List<DistanceFieldLayer>,
|
||||
shape: PrimitiveShape = PrimitiveShape.BOX,
|
||||
horizontalRadius: Double = 4.0,
|
||||
verticalRange: Double = 4.0,
|
||||
sampleSpacing: Double = 0.5,
|
||||
marchStep: Double = 0.1,
|
||||
tuning: DistanceFieldTuning = DistanceFieldTuning()
|
||||
) {
|
||||
val level = referenceEntity.level()
|
||||
if (level !is ServerLevel) return
|
||||
|
||||
val searchBox = AABB(
|
||||
center.x - horizontalRadius, center.y - verticalRange, center.z - horizontalRadius,
|
||||
center.x + horizontalRadius, center.y, center.z + horizontalRadius
|
||||
)
|
||||
|
||||
val primitives = collectPrimitivesFromBlocks(level, searchBox, shape, includeFluids = true)
|
||||
if (primitives.isEmpty()) return
|
||||
|
||||
var x = -horizontalRadius
|
||||
while (x <= horizontalRadius) {
|
||||
var z = -horizontalRadius
|
||||
while (z <= horizontalRadius) {
|
||||
marchColumn(level, primitives, center, x, z, verticalRange, marchStep, layers, tuning)
|
||||
z += sampleSpacing
|
||||
}
|
||||
x += sampleSpacing
|
||||
}
|
||||
}
|
||||
|
||||
private fun marchColumn(
|
||||
level: ServerLevel,
|
||||
primitives: List<FieldPrimitive>,
|
||||
center: Vec3,
|
||||
offsetX: Double,
|
||||
offsetZ: Double,
|
||||
verticalRange: Double,
|
||||
marchStep: Double,
|
||||
layers: List<DistanceFieldLayer>,
|
||||
tuning: DistanceFieldTuning
|
||||
) {
|
||||
val previousValue = FloatArray(layers.size) { Float.NaN }
|
||||
|
||||
var y = verticalRange
|
||||
while (y >= -verticalRange) {
|
||||
val worldX = (center.x + offsetX).toFloat()
|
||||
val worldY = (center.y + y).toFloat()
|
||||
val worldZ = (center.z + offsetZ).toFloat()
|
||||
val fieldValue = sampleField(primitives, worldX, worldY, worldZ, tuning)
|
||||
|
||||
for (layerIndex in layers.indices) {
|
||||
val layer = layers[layerIndex]
|
||||
val previous = previousValue[layerIndex]
|
||||
|
||||
if (!previous.isNaN() && crossedTarget(previous, fieldValue, layer.isoValue)) {
|
||||
val t = (layer.isoValue - previous) / (fieldValue - previous)
|
||||
val crossingY = (y + marchStep) - marchStep * t
|
||||
spawnLayerParticle(level, center.add(offsetX, crossingY, offsetZ), layer)
|
||||
}
|
||||
|
||||
previousValue[layerIndex] = fieldValue
|
||||
}
|
||||
|
||||
y -= marchStep
|
||||
}
|
||||
}
|
||||
|
||||
private fun crossedTarget(previous: Float, current: Float, target: Float): Boolean =
|
||||
(previous - target) * (current - target) < 0f
|
||||
|
||||
private fun spawnLayerParticle(level: ServerLevel, pos: Vec3, layer: DistanceFieldLayer) {
|
||||
val particle = DustParticleOptions(layer.color, layer.particleSize)
|
||||
level.sendParticles(particle, pos.x, pos.y, pos.z, 1, 0.0, 0.0, 0.0, 0.0)
|
||||
}
|
||||
+1
-1
@@ -71,7 +71,7 @@ open class VariableObjectSelectionList(x: Int, y: Int, width: Int, height: Int):
|
||||
var stackHeight = -scrollAmount.toInt()
|
||||
guiGraphics.enableScissor(x, y, x + width, y + height)
|
||||
children.forEachIndexed { index, entry ->
|
||||
if (stackHeight in 1..<height || stackHeight + entry.height in 1..<height) {
|
||||
if (stackHeight < height && stackHeight + entry.height > 0) {
|
||||
entry.render(guiGraphics, index, x, y + stackHeight, mouseX, mouseY, partialTick)
|
||||
}
|
||||
stackHeight += entry.height
|
||||
|
||||
+4
-6
@@ -8,12 +8,10 @@
|
||||
|
||||
package com.cobblemon.mod.common.client.gui.startselection.widgets
|
||||
|
||||
import com.cobblemon.mod.common.Cobblemon
|
||||
import com.cobblemon.mod.common.CobblemonSounds
|
||||
import com.cobblemon.mod.common.api.gui.blitk
|
||||
import com.cobblemon.mod.common.api.text.bold
|
||||
import com.cobblemon.mod.common.client.gui.CobblemonRenderable
|
||||
import com.cobblemon.mod.common.client.gui.PokemonGUIAnimationStyle
|
||||
import com.cobblemon.mod.common.client.gui.VariableObjectSelectionList
|
||||
import com.cobblemon.mod.common.client.gui.drawProfilePokemon
|
||||
import com.cobblemon.mod.common.client.gui.startselection.StarterSelectionScreen
|
||||
@@ -29,12 +27,11 @@ import org.joml.Quaternionf
|
||||
import org.joml.Vector3f
|
||||
|
||||
class CategoryList(
|
||||
private val paneWidth: Int,
|
||||
private val paneHeight: Int,
|
||||
paneWidth: Int,
|
||||
paneHeight: Int,
|
||||
private val categories: List<RenderableStarterCategory>,
|
||||
val listX: Int,
|
||||
val listY: Int,
|
||||
private val minecraft: Minecraft = Minecraft.getInstance(),
|
||||
private val starterSelectionScreen: StarterSelectionScreen
|
||||
) : VariableObjectSelectionList(
|
||||
listX,
|
||||
@@ -70,7 +67,8 @@ class CategoryList(
|
||||
}
|
||||
|
||||
private fun createEntries() = categories.map { category ->
|
||||
val rows = (category.pokemon.size - 1) / 3 + 1
|
||||
val pokemonCount = category.pokemon.size - if (category.randomStarter) 0 else 1
|
||||
val rows = pokemonCount / 3 + 1
|
||||
val height = CONTAINER_BUTTON_SIZE * rows + BUTTON_SEPERATION * (rows + 1) + HEADER_HEIGHT + 3
|
||||
Category(category, height)
|
||||
}
|
||||
|
||||
-104
@@ -1,104 +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.gen1
|
||||
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.PosableState
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.animation.WaveAnimation
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.animation.WaveSegment
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.HeadedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.CryProvider
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.PokemonPosableModel
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.ModelPartTransformation.Companion.X_AXIS
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.ModelPartTransformation.Companion.Y_AXIS
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.Pose
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.wavefunction.sineFunction
|
||||
import com.cobblemon.mod.common.entity.PoseType
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.MOVING_POSES
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.STATIONARY_POSES
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.UI_POSES
|
||||
import net.minecraft.client.model.geom.ModelPart
|
||||
import net.minecraft.world.phys.Vec3
|
||||
|
||||
class EkansModel(root: ModelPart) : PokemonPosableModel(root), HeadedFrame {
|
||||
|
||||
override val rootPart = root.registerChildWithAllChildren("ekans")
|
||||
private val body = getPart("body")
|
||||
override val head = getPart("head")
|
||||
private val tail = getPart("tail")
|
||||
private val tail2 = getPart("tail2")
|
||||
private val tail3 = getPart("tail3")
|
||||
private val tail4 = getPart("tail4")
|
||||
private val tail5 = getPart("tail5")
|
||||
private val tail6 = getPart("tail6")
|
||||
|
||||
val tailSegment = WaveSegment(modelPart = tail, length = 9F)
|
||||
val tail2Segment = WaveSegment(modelPart = tail2, length = 9F)
|
||||
val tail3Segment = WaveSegment(modelPart = tail3, length = 9F)
|
||||
val tail4Segment = WaveSegment(modelPart = tail4, length = 9F)
|
||||
val tail5Segment = WaveSegment(modelPart = tail5, length = 10F)
|
||||
val tail6Segment = WaveSegment(modelPart = tail6, length = 10F)
|
||||
|
||||
override var portraitScale = 1.7F
|
||||
override var portraitTranslation = Vec3(-0.3, -0.45, 0.0)
|
||||
|
||||
override var profileScale = 0.7F
|
||||
override var profileTranslation = Vec3(-0.05, 0.6, 0.0)
|
||||
|
||||
lateinit var sleep: Pose
|
||||
|
||||
override val cryAnimation = CryProvider { bedrockStateful("ekans", "cry") }
|
||||
|
||||
override fun registerPoses() {
|
||||
sleep = registerPose(
|
||||
poseType = PoseType.SLEEP,
|
||||
animations = arrayOf(bedrock("ekans", "sleep"))
|
||||
)
|
||||
val blink = quirk { bedrockStateful("ekans", "blink") }
|
||||
registerPose(
|
||||
poseName = "normal",
|
||||
poseTypes = STATIONARY_POSES + MOVING_POSES,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("ekans", "ground_idle"),
|
||||
WaveAnimation(
|
||||
waveFunction = sineFunction(
|
||||
period = 8F,
|
||||
amplitude = 0.8F
|
||||
),
|
||||
basedOnLimbSwing = true,
|
||||
oscillationsScalar = 5F,
|
||||
head = head,
|
||||
rotationAxis = Y_AXIS,
|
||||
motionAxis = X_AXIS,
|
||||
moveHead = false,
|
||||
headLength = 16F,
|
||||
segments = arrayOf(
|
||||
tailSegment,
|
||||
tail2Segment,
|
||||
tail3Segment,
|
||||
tail4Segment,
|
||||
tail5Segment,
|
||||
tail6Segment
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
registerPose(
|
||||
poseName = "portrait",
|
||||
poseTypes = UI_POSES,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(bedrock("ekans", "summary_idle"))
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
override fun getFaintAnimation(state: PosableState) = bedrockStateful("ekans", "faint")
|
||||
}
|
||||
-63
@@ -1,63 +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.gen1
|
||||
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.PosableState
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.CryProvider
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.PokemonPosableModel
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.Pose
|
||||
import com.cobblemon.mod.common.entity.PoseType
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.MOVING_POSES
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.STATIONARY_POSES
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.UI_POSES
|
||||
import net.minecraft.client.model.geom.ModelPart
|
||||
import net.minecraft.world.phys.Vec3
|
||||
|
||||
class GloomModel(root: ModelPart) : PokemonPosableModel(root) {
|
||||
override val rootPart = root.registerChildWithAllChildren("gloom")
|
||||
|
||||
override var portraitScale = 1.8F
|
||||
override var portraitTranslation = Vec3(-0.0, -1.0, 0.0)
|
||||
|
||||
override var profileScale = 1.05F
|
||||
override var profileTranslation = Vec3(0.0, 0.19, 0.0)
|
||||
|
||||
lateinit var sleep: Pose
|
||||
lateinit var standing: Pose
|
||||
lateinit var walk: Pose
|
||||
|
||||
override val cryAnimation = CryProvider { bedrockStateful("gloom", "cry") }
|
||||
|
||||
override fun registerPoses() {
|
||||
standing = registerPose(
|
||||
poseName = "standing",
|
||||
poseTypes = STATIONARY_POSES + UI_POSES,
|
||||
transformTicks = 10,
|
||||
animations = arrayOf(
|
||||
bedrock("gloom", "ground_idle")
|
||||
)
|
||||
)
|
||||
|
||||
sleep = registerPose(
|
||||
poseType = PoseType.SLEEP,
|
||||
animations = arrayOf(bedrock("gloom", "sleep"))
|
||||
)
|
||||
|
||||
walk = registerPose(
|
||||
poseName = "walk",
|
||||
poseTypes = MOVING_POSES,
|
||||
transformTicks = 10,
|
||||
animations = arrayOf(
|
||||
bedrock("gloom", "ground_walk")
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
override fun getFaintAnimation(state: PosableState) = bedrockStateful("gloom", "faint")
|
||||
}
|
||||
-66
@@ -1,66 +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.gen1
|
||||
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.PosableState
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.CryProvider
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.PokemonPosableModel
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.Pose
|
||||
import com.cobblemon.mod.common.entity.PoseType
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.MOVING_POSES
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.STATIONARY_POSES
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.UI_POSES
|
||||
import net.minecraft.client.model.geom.ModelPart
|
||||
import net.minecraft.world.phys.Vec3
|
||||
|
||||
class OddishModel(root: ModelPart) : PokemonPosableModel(root) {
|
||||
override val rootPart = root.registerChildWithAllChildren("oddish")
|
||||
|
||||
override var portraitScale = 2.0F
|
||||
override var portraitTranslation = Vec3(-0.0, -1.0, 0.0)
|
||||
|
||||
override var profileScale = 0.85F
|
||||
override var profileTranslation = Vec3(0.0, 0.5, 0.0)
|
||||
|
||||
lateinit var sleep: Pose
|
||||
lateinit var standing: Pose
|
||||
lateinit var walk: Pose
|
||||
|
||||
override val cryAnimation = CryProvider { bedrockStateful("oddish", "cry") }
|
||||
|
||||
override fun registerPoses() {
|
||||
val blink = quirk { bedrockStateful("oddish", "blink")}
|
||||
standing = registerPose(
|
||||
poseName = "standing",
|
||||
poseTypes = STATIONARY_POSES + UI_POSES,
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
bedrock("oddish", "ground_idle")
|
||||
)
|
||||
)
|
||||
|
||||
sleep = registerPose(
|
||||
poseType = PoseType.SLEEP,
|
||||
animations = arrayOf(bedrock("oddish", "sleep"))
|
||||
)
|
||||
|
||||
walk = registerPose(
|
||||
poseName = "walk",
|
||||
poseTypes = MOVING_POSES,
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
bedrock("oddish", "ground_walk")
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
override fun getFaintAnimation(state: PosableState) = bedrockStateful("oddish", "faint")
|
||||
}
|
||||
-75
@@ -1,75 +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.gen1
|
||||
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.CryProvider
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.PokemonPosableModel
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.Pose
|
||||
import com.cobblemon.mod.common.entity.PoseType
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.STANDING_POSES
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.UI_POSES
|
||||
import net.minecraft.client.model.geom.ModelPart
|
||||
import net.minecraft.world.phys.Vec3
|
||||
|
||||
class PoliwagModel(root: ModelPart) : PokemonPosableModel(root) {
|
||||
override val rootPart = root.registerChildWithAllChildren("poliwag")
|
||||
|
||||
override var portraitScale = 1.8F
|
||||
override var portraitTranslation = Vec3(0.0, -0.7, 0.0)
|
||||
|
||||
override var profileScale = 0.9F
|
||||
override var profileTranslation = Vec3(0.0, 0.38, 0.0)
|
||||
|
||||
lateinit var sleep: Pose
|
||||
lateinit var standing: Pose
|
||||
lateinit var float: Pose
|
||||
lateinit var swim: Pose
|
||||
|
||||
override val cryAnimation = CryProvider { bedrockStateful("poliwag", "cry") }
|
||||
|
||||
override fun registerPoses() {
|
||||
val blink = quirk { bedrockStateful("poliwag", "blink")}
|
||||
standing = registerPose(
|
||||
poseName = "standing",
|
||||
poseTypes = STANDING_POSES + UI_POSES,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
bedrock("poliwag", "ground_idle")
|
||||
)
|
||||
)
|
||||
|
||||
sleep = registerPose(
|
||||
poseType = PoseType.SLEEP,
|
||||
animations = arrayOf(bedrock("poliwag", "sleep"))
|
||||
)
|
||||
|
||||
float = registerPose(
|
||||
poseName = "float",
|
||||
poseType = PoseType.FLOAT,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
bedrock("poliwag", "water_idle")
|
||||
)
|
||||
)
|
||||
|
||||
swim = registerPose(
|
||||
poseName = "swim",
|
||||
poseType = PoseType.SWIM,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
bedrock("poliwag", "water_swim")
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
// override fun getFaintAnimation(
|
||||
// ) = if (state.isPosedIn(standing, walk)) bedrockStateful("poliwag", "faint") else null
|
||||
// pokemonEntity: PokemonEntity,
|
||||
// state: PosableState<PokemonEntity>
|
||||
}
|
||||
-66
@@ -1,66 +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.gen1
|
||||
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.PokemonPosableModel
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.PosableState
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.CryProvider
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.Pose
|
||||
import com.cobblemon.mod.common.entity.PoseType
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.MOVING_POSES
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.STATIONARY_POSES
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.UI_POSES
|
||||
import net.minecraft.client.model.geom.ModelPart
|
||||
import net.minecraft.world.phys.Vec3
|
||||
|
||||
class VileplumeModel(root: ModelPart) : PokemonPosableModel(root) {
|
||||
override val rootPart = root.registerChildWithAllChildren("vileplume")
|
||||
|
||||
override var portraitScale = 1.8F
|
||||
override var portraitTranslation = Vec3(-0.35, -0.8, 0.0)
|
||||
|
||||
override var profileScale = 0.8F
|
||||
override var profileTranslation = Vec3(0.0, 0.53, 0.0)
|
||||
|
||||
lateinit var sleep: Pose
|
||||
lateinit var standing: Pose
|
||||
lateinit var walk: Pose
|
||||
|
||||
override val cryAnimation = CryProvider { bedrockStateful("vileplume", "cry") }
|
||||
|
||||
override fun registerPoses() {
|
||||
val blink = quirk { bedrockStateful("vileplume", "blink")}
|
||||
standing = registerPose(
|
||||
poseName = "standing",
|
||||
poseTypes = STATIONARY_POSES + UI_POSES,
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
bedrock("vileplume", "idle")
|
||||
)
|
||||
)
|
||||
|
||||
sleep = registerPose(
|
||||
poseType = PoseType.SLEEP,
|
||||
animations = arrayOf(bedrock("vileplume", "sleep"))
|
||||
)
|
||||
|
||||
walk = registerPose(
|
||||
poseName = "walk",
|
||||
poseTypes = MOVING_POSES,
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
bedrock("vileplume", "ground_walk")
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
override fun getFaintAnimation(state: PosableState) = bedrockStateful("vileplume", "faint")
|
||||
}
|
||||
-95
@@ -1,95 +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.createTransformation
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.HeadedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.PokemonPosableModel
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.ModelPartTransformation
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.Pose
|
||||
import com.cobblemon.mod.common.entity.PoseType
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.MOVING_POSES
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.SHOULDER_POSES
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.STATIONARY_POSES
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.UI_POSES
|
||||
import net.minecraft.client.model.geom.ModelPart
|
||||
import net.minecraft.world.phys.Vec3
|
||||
|
||||
class BellossomModel(root: ModelPart) : PokemonPosableModel(root), HeadedFrame {
|
||||
override val rootPart = root.registerChildWithAllChildren("bellossom")
|
||||
override val head = getPart("head")
|
||||
|
||||
override var portraitScale = 1.8F
|
||||
override var portraitTranslation = Vec3(0.0, -0.2, 0.0)
|
||||
|
||||
override var profileScale = 1.0F
|
||||
override var profileTranslation = Vec3(0.0, 0.21, 0.0)
|
||||
|
||||
lateinit var standing: Pose
|
||||
lateinit var walk: Pose
|
||||
lateinit var shoulderLeft: Pose
|
||||
lateinit var shoulderRight: Pose
|
||||
|
||||
val shoulderOffset = 5
|
||||
|
||||
override fun registerPoses() {
|
||||
val blink = quirk { bedrockStateful("bellossom", "blink") }
|
||||
standing = registerPose(
|
||||
poseName = "standing",
|
||||
poseTypes = STATIONARY_POSES + UI_POSES,
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
bedrock("bellossom", "ground_idle"),
|
||||
singleBoneLook()
|
||||
)
|
||||
)
|
||||
|
||||
walk = registerPose(
|
||||
poseName = "walk",
|
||||
poseTypes = MOVING_POSES,
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
bedrock("bellossom", "ground_idle"),
|
||||
bedrock("bellossom", "ground_walk"),
|
||||
singleBoneLook()
|
||||
)
|
||||
)
|
||||
|
||||
shoulderLeft = registerPose(
|
||||
poseType = PoseType.SHOULDER_LEFT,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("bellossom", "ground_idle")
|
||||
),
|
||||
transformedParts = arrayOf(
|
||||
rootPart.createTransformation().addPosition(ModelPartTransformation.X_AXIS, shoulderOffset)
|
||||
)
|
||||
)
|
||||
|
||||
shoulderRight = registerPose(
|
||||
poseType = PoseType.SHOULDER_RIGHT,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("bellossom", "ground_idle")
|
||||
),
|
||||
transformedParts = arrayOf(
|
||||
rootPart.createTransformation().addPosition(ModelPartTransformation.X_AXIS, -shoulderOffset)
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
// override fun getFaintAnimation(
|
||||
// pokemonEntity: PokemonEntity,
|
||||
// state: PosableState<PokemonEntity>
|
||||
// ) = if (state.isPosedIn(standing, walk)) bedrockStateful("bellossom", "faint") else null
|
||||
}
|
||||
-80
@@ -1,80 +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.frame.BipedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.HeadedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.PokemonPosableModel
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.Pose
|
||||
import com.cobblemon.mod.common.entity.PoseType
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.UI_POSES
|
||||
import net.minecraft.client.model.geom.ModelPart
|
||||
import net.minecraft.world.phys.Vec3
|
||||
|
||||
class PolitoedModel(root: ModelPart) : PokemonPosableModel(root), HeadedFrame, BipedFrame {
|
||||
override val rootPart = root.registerChildWithAllChildren("politoed")
|
||||
override val head = getPart("head")
|
||||
|
||||
override val leftLeg = getPart("leftleg")
|
||||
override val rightLeg = getPart("rightleg")
|
||||
|
||||
override var portraitScale = 2.4F
|
||||
override var portraitTranslation = Vec3(-0.04, -0.55, 0.0)
|
||||
|
||||
override var profileScale = 1.1F
|
||||
override var profileTranslation = Vec3(0.0, 0.1, 0.0)
|
||||
|
||||
lateinit var standing: Pose
|
||||
lateinit var walking: Pose
|
||||
lateinit var float: Pose
|
||||
lateinit var swim: Pose
|
||||
|
||||
override fun registerPoses() {
|
||||
standing = registerPose(
|
||||
poseName = "standing",
|
||||
poseTypes = UI_POSES + PoseType.STAND,
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("politoed", "ground_idle")
|
||||
)
|
||||
)
|
||||
|
||||
walking = registerPose(
|
||||
poseName = "walking",
|
||||
poseType = PoseType.WALK,
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("politoed", "ground_idle")
|
||||
)
|
||||
)
|
||||
|
||||
float = registerPose(
|
||||
poseName = "float",
|
||||
poseTypes = setOf(PoseType.FLOAT, PoseType.HOVER),
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("politoed", "water_idle")
|
||||
)
|
||||
)
|
||||
|
||||
swim = registerPose(
|
||||
poseName = "swim",
|
||||
poseTypes = setOf(PoseType.SWIM, PoseType.FLY),
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("politoed", "water_swim")
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
// override fun getFaintAnimation(
|
||||
// pokemonEntity: PokemonEntity,
|
||||
// state: PosableState<PokemonEntity>
|
||||
// ) = if (state.isPosedIn(standing, walk)) bedrockStateful("politoed", "faint") else null
|
||||
}
|
||||
-72
@@ -1,72 +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.animation.BimanualSwingAnimation
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.animation.BipedWalkAnimation
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.BimanualFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.BipedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.HeadedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.PokemonPosableModel
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.Pose
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.MOVING_POSES
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.STATIONARY_POSES
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.UI_POSES
|
||||
import net.minecraft.client.model.geom.ModelPart
|
||||
import net.minecraft.world.phys.Vec3
|
||||
|
||||
class SudowoodoModel(root: ModelPart) : PokemonPosableModel(root), HeadedFrame, BipedFrame, BimanualFrame {
|
||||
override val rootPart = root.registerChildWithAllChildren("sudowoodo")
|
||||
override val head = getPart("head")
|
||||
|
||||
override val leftArm = getPart("arm_left")
|
||||
override val rightArm = getPart("arm_right")
|
||||
override val leftLeg = getPart("leg_left")
|
||||
override val rightLeg = getPart("leg_right")
|
||||
|
||||
override var portraitScale = 1.9F
|
||||
override var portraitTranslation = Vec3(-0.7, 1.6, 0.0)
|
||||
|
||||
override var profileScale = 0.5F
|
||||
override var profileTranslation = Vec3(-0.1, 0.95, 0.0)
|
||||
|
||||
lateinit var standing: Pose
|
||||
lateinit var walk: Pose
|
||||
|
||||
override fun registerPoses() {
|
||||
val blink = quirk { bedrockStateful("sudowoodo", "blink") }
|
||||
standing = registerPose(
|
||||
poseName = "standing",
|
||||
poseTypes = STATIONARY_POSES + UI_POSES,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
singleBoneLook(yawMultiplier = 0F),
|
||||
bedrock("sudowoodo", "ground_idle")
|
||||
)
|
||||
)
|
||||
|
||||
walk = registerPose(
|
||||
poseName = "walk",
|
||||
poseTypes = MOVING_POSES,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
singleBoneLook(yawMultiplier = 0F),
|
||||
bedrock("sudowoodo", "ground_idle"),
|
||||
BipedWalkAnimation(this, periodMultiplier = 0.6F, amplitudeMultiplier = 0.9F),
|
||||
BimanualSwingAnimation(this, swingPeriodMultiplier = 0.6F, amplitudeMultiplier = 0.9F)
|
||||
//bedrock("sudowoodo", "ground_walk")
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
// override fun getFaintAnimation(
|
||||
// pokemonEntity: PokemonEntity,
|
||||
// state: PosableState<PokemonEntity>
|
||||
// ) = if (state.isPosedIn(standing, walk)) bedrockStateful("sudowoodo", "faint") else null
|
||||
}
|
||||
-91
@@ -1,91 +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.gen3
|
||||
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.PosableState
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.BipedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.HeadedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.CryProvider
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.PokemonPosableModel
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.Pose
|
||||
import com.cobblemon.mod.common.entity.PoseType
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.MOVING_POSES
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.STATIONARY_POSES
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.UI_POSES
|
||||
import com.cobblemon.mod.common.util.isBattling
|
||||
import net.minecraft.client.model.geom.ModelPart
|
||||
import net.minecraft.world.phys.Vec3
|
||||
|
||||
class ShroomishModel(root: ModelPart) : PokemonPosableModel(root), HeadedFrame, BipedFrame {
|
||||
override val rootPart = root.registerChildWithAllChildren("shroomish")
|
||||
override val head = getPart("torso")
|
||||
|
||||
override val leftLeg = getPart("foot_left")
|
||||
override val rightLeg = getPart("foot_right")
|
||||
|
||||
override var portraitScale = 2.0F
|
||||
override var portraitTranslation = Vec3(-0.1, -1.2, 0.0)
|
||||
|
||||
override var profileScale = 1.0F
|
||||
override var profileTranslation = Vec3(0.0, 0.3, 0.0)
|
||||
|
||||
lateinit var standing: Pose
|
||||
lateinit var battling: Pose
|
||||
lateinit var sleeping: Pose
|
||||
lateinit var walk: Pose
|
||||
|
||||
override val cryAnimation = CryProvider { bedrockStateful("shroomish", "cry") }
|
||||
|
||||
override fun registerPoses() {
|
||||
val blink = quirk { bedrockStateful("shroomish", "blink") }
|
||||
standing = registerPose(
|
||||
poseName = "standing",
|
||||
poseTypes = STATIONARY_POSES + UI_POSES,
|
||||
quirks = arrayOf(blink),
|
||||
condition = { !it.isBattling },
|
||||
animations = arrayOf(
|
||||
singleBoneLook(pitchMultiplier = 0.5F),
|
||||
bedrock("shroomish", "ground_idle")
|
||||
)
|
||||
)
|
||||
|
||||
walk = registerPose(
|
||||
poseName = "walk",
|
||||
poseTypes = MOVING_POSES,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
singleBoneLook(pitchMultiplier = 0.5F),
|
||||
bedrock("shroomish", "ground_walk")
|
||||
)
|
||||
)
|
||||
|
||||
battling = registerPose(
|
||||
poseName = "battlestanding",
|
||||
poseTypes = STATIONARY_POSES,
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
condition = { it.isBattling },
|
||||
animations = arrayOf(
|
||||
singleBoneLook(pitchMultiplier = 0.5F),
|
||||
bedrock("shroomish", "battle_idle")
|
||||
)
|
||||
)
|
||||
|
||||
sleeping = registerPose(
|
||||
poseName = "sleeping",
|
||||
poseType = PoseType.SLEEP,
|
||||
transformTicks = 10,
|
||||
animations = arrayOf(
|
||||
bedrock("shroomish", "sleep")
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
override fun getFaintAnimation(state: PosableState) = if (state.isPosedIn(standing, walk, battling, sleeping)) bedrockStateful("shroomish", "faint") else null
|
||||
}
|
||||
-102
@@ -1,102 +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.gen4
|
||||
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.BipedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.HeadedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.PokemonPosableModel
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.Pose
|
||||
import com.cobblemon.mod.common.entity.PoseType
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.MOVING_POSES
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.STATIONARY_POSES
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.UI_POSES
|
||||
import com.cobblemon.mod.common.util.isBattling
|
||||
import net.minecraft.client.model.geom.ModelPart
|
||||
import net.minecraft.world.phys.Vec3
|
||||
|
||||
class BonslyModel(root: ModelPart) : PokemonPosableModel(root), HeadedFrame, BipedFrame {
|
||||
override val rootPart = root.registerChildWithAllChildren("bonsly")
|
||||
override val head = getPart("torso")
|
||||
|
||||
override val leftLeg = getPart("leg_left")
|
||||
override val rightLeg = getPart("leg_right")
|
||||
|
||||
override var portraitScale = 2.2F
|
||||
override var portraitTranslation = Vec3(-0.2, -0.8, 0.0)
|
||||
|
||||
override var profileScale = 0.72F
|
||||
override var profileTranslation = Vec3(0.0, 0.65, 0.0)
|
||||
|
||||
lateinit var standing: Pose
|
||||
lateinit var walk: Pose
|
||||
lateinit var battleidle: Pose
|
||||
lateinit var sleep: Pose
|
||||
lateinit var battlesleep: Pose
|
||||
|
||||
override fun registerPoses() {
|
||||
val blink = quirk { bedrockStateful("bonsly", "blink") }
|
||||
standing = registerPose(
|
||||
poseName = "standing",
|
||||
poseTypes = STATIONARY_POSES + UI_POSES,
|
||||
quirks = arrayOf(blink),
|
||||
condition = { !it.isBattling },
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("bonsly", "ground_idle")
|
||||
)
|
||||
)
|
||||
|
||||
walk = registerPose(
|
||||
poseName = "walk",
|
||||
poseTypes = MOVING_POSES,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("bonsly", "ground_walk")
|
||||
)
|
||||
)
|
||||
|
||||
sleep = registerPose(
|
||||
poseName = "sleep",
|
||||
poseType = PoseType.SLEEP,
|
||||
condition = { !it.isBattling },
|
||||
animations = arrayOf(
|
||||
bedrock("bonsly", "sleep_pot")
|
||||
)
|
||||
)
|
||||
|
||||
battlesleep = registerPose(
|
||||
poseName = "battlesleep",
|
||||
poseType = PoseType.SLEEP,
|
||||
condition = { it.isBattling },
|
||||
animations = arrayOf(
|
||||
bedrock("bonsly", "sleep")
|
||||
)
|
||||
)
|
||||
|
||||
battleidle = registerPose(
|
||||
poseName = "battle_idle",
|
||||
poseTypes = PoseType.STATIONARY_POSES,
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
condition = { it.isBattling },
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("bonsly", "battle_idle")
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
// override fun getFaintAnimation(
|
||||
// pokemonEntity: PokemonEntity,
|
||||
// state: PosableState<PokemonEntity>
|
||||
// ) = if (state.isPosedIn(standing, walk))
|
||||
// bedrockStateful("bonsly", "faint")
|
||||
// else null
|
||||
}
|
||||
-72
@@ -1,72 +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.gen4
|
||||
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.PokemonPosableModel
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.animation.QuadrupedWalkAnimation
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.HeadedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.QuadrupedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.Pose
|
||||
import com.cobblemon.mod.common.entity.PoseType
|
||||
import net.minecraft.client.model.geom.ModelPart
|
||||
import net.minecraft.world.phys.Vec3
|
||||
|
||||
class LuxioModel (root: ModelPart) : PokemonPosableModel(root), HeadedFrame, QuadrupedFrame {
|
||||
override val rootPart = root.registerChildWithAllChildren("luxio")
|
||||
override val head = getPart("head")
|
||||
|
||||
override val foreLeftLeg = getPart("front_leg_left")
|
||||
override val foreRightLeg = getPart("front_leg_right")
|
||||
override val hindLeftLeg = getPart("back_leg_left")
|
||||
override val hindRightLeg = getPart("back_leg_right")
|
||||
|
||||
override var portraitScale = 1.8F
|
||||
override var portraitTranslation = Vec3(-0.6, -0.25, 0.0)
|
||||
|
||||
override var profileScale = 0.7F
|
||||
override var profileTranslation = Vec3(0.0, 0.7, 0.0)
|
||||
|
||||
lateinit var standing: Pose
|
||||
lateinit var walk: Pose
|
||||
lateinit var sleep: Pose
|
||||
|
||||
override fun registerPoses() {
|
||||
// val blink = quirk { bedrockStateful("luxio", "blink") }
|
||||
sleep = registerPose(
|
||||
poseType = PoseType.SLEEP,
|
||||
animations = arrayOf(bedrock("luxio", "sleep"))
|
||||
)
|
||||
|
||||
standing = registerPose(
|
||||
poseName = "standing",
|
||||
poseTypes = PoseType.UI_POSES + PoseType.STATIONARY_POSES,
|
||||
// quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("luxio", "idle")
|
||||
)
|
||||
)
|
||||
|
||||
walk = registerPose(
|
||||
poseName = "walk",
|
||||
poseTypes = PoseType.MOVING_POSES,
|
||||
// quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
QuadrupedWalkAnimation(this, periodMultiplier = 1.1F),
|
||||
singleBoneLook(),
|
||||
bedrock("luxio", "idle")
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
// override fun getFaintAnimation(
|
||||
// pokemonEntity: PokemonEntity,
|
||||
// state: PosableState<PokemonEntity>
|
||||
// ) = if (state.isPosedIn(standing, walk)) bedrockStateful("luxio", "faint") else null
|
||||
}
|
||||
-67
@@ -1,67 +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.gen4
|
||||
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.PokemonPosableModel
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.animation.QuadrupedWalkAnimation
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.HeadedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.QuadrupedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.Pose
|
||||
import com.cobblemon.mod.common.entity.PoseType
|
||||
import net.minecraft.client.model.geom.ModelPart
|
||||
import net.minecraft.world.phys.Vec3
|
||||
|
||||
class LuxrayModel (root: ModelPart) : PokemonPosableModel(root), HeadedFrame, QuadrupedFrame {
|
||||
override val rootPart = root.registerChildWithAllChildren("luxray")
|
||||
override val head = getPart("head")
|
||||
|
||||
override val foreLeftLeg = getPart("front_leg_left")
|
||||
override val foreRightLeg = getPart("front_leg_right")
|
||||
override val hindLeftLeg = getPart("back_leg_left")
|
||||
override val hindRightLeg = getPart("back_leg_right")
|
||||
|
||||
override var portraitScale = 1.8F
|
||||
override var portraitTranslation = Vec3(-0.9, 0.6, 0.0)
|
||||
|
||||
override var profileScale = 0.66F
|
||||
override var profileTranslation = Vec3(0.0, 0.7, 0.0)
|
||||
|
||||
lateinit var standing: Pose
|
||||
lateinit var walk: Pose
|
||||
|
||||
override fun registerPoses() {
|
||||
// val blink = quirk { bedrockStateful("luxray", "blink") }
|
||||
standing = registerPose(
|
||||
poseName = "standing",
|
||||
poseTypes = PoseType.UI_POSES + PoseType.STATIONARY_POSES,
|
||||
// quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("luxray", "ground_idle")
|
||||
)
|
||||
)
|
||||
|
||||
walk = registerPose(
|
||||
poseName = "walk",
|
||||
poseTypes = PoseType.MOVING_POSES,
|
||||
// quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
QuadrupedWalkAnimation(this, periodMultiplier = 1.1F),
|
||||
bedrock("luxray", "ground_idle"),
|
||||
singleBoneLook()
|
||||
// bedrock("luxray", "idle")
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
// override fun getFaintAnimation(
|
||||
// pokemonEntity: PokemonEntity,
|
||||
// state: PosableState<PokemonEntity>
|
||||
// ) = if (state.isPosedIn(standing, walk)) bedrockStateful("luxray", "faint") else null
|
||||
}
|
||||
-66
@@ -1,66 +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.gen4
|
||||
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.animation.QuadrupedWalkAnimation
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.HeadedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.QuadrupedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.PokemonPosableModel
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.Pose
|
||||
import com.cobblemon.mod.common.entity.PoseType
|
||||
import net.minecraft.client.model.geom.ModelPart
|
||||
import net.minecraft.world.phys.Vec3
|
||||
|
||||
class ShinxModel (root: ModelPart) : PokemonPosableModel(root), HeadedFrame, QuadrupedFrame {
|
||||
override val rootPart = root.registerChildWithAllChildren("shinx")
|
||||
override val head = getPart("head")
|
||||
|
||||
override val foreLeftLeg = getPart("leg_left")
|
||||
override val foreRightLeg = getPart("leg_right")
|
||||
override val hindLeftLeg = getPart("back_leg_left")
|
||||
override val hindRightLeg = getPart("back_leg_right")
|
||||
|
||||
override var portraitScale = 1.8F
|
||||
override var portraitTranslation = Vec3(-0.6, -0.25, 0.0)
|
||||
|
||||
override var profileScale = 0.66F
|
||||
override var profileTranslation = Vec3(0.0, 0.7, 0.0)
|
||||
|
||||
lateinit var standing: Pose
|
||||
lateinit var walk: Pose
|
||||
|
||||
override fun registerPoses() {
|
||||
// val blink = quirk { bedrockStateful("shinx", "blink") }
|
||||
standing = registerPose(
|
||||
poseName = "standing",
|
||||
poseTypes = PoseType.UI_POSES + PoseType.STATIONARY_POSES,
|
||||
// quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("shinx", "ground_idle")
|
||||
)
|
||||
)
|
||||
|
||||
walk = registerPose(
|
||||
poseName = "walk",
|
||||
poseTypes = PoseType.MOVING_POSES,
|
||||
// quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
QuadrupedWalkAnimation(this, periodMultiplier = 1.1F),
|
||||
singleBoneLook(),
|
||||
bedrock("shinx", "ground_idle")
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
// override fun getFaintAnimation(
|
||||
// pokemonEntity: PokemonEntity,
|
||||
// state: PosableState<PokemonEntity>
|
||||
// ) = if (state.isPosedIn(standing, walk)) bedrockStateful("shinx", "faint") else null
|
||||
}
|
||||
-63
@@ -1,63 +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.gen5
|
||||
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.animation.QuadrupedWalkAnimation
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.HeadedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.QuadrupedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.PokemonPosableModel
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.Pose
|
||||
import com.cobblemon.mod.common.entity.PoseType
|
||||
import net.minecraft.client.model.geom.ModelPart
|
||||
import net.minecraft.world.phys.Vec3
|
||||
|
||||
class DeerlingModel(root: ModelPart) : PokemonPosableModel(root), HeadedFrame, QuadrupedFrame {
|
||||
override val rootPart = root.registerChildWithAllChildren("deerling")
|
||||
override val head = getPart("head")
|
||||
|
||||
override var portraitScale = 3.5F
|
||||
override var portraitTranslation = Vec3(-0.55, -1.1, 0.0)
|
||||
|
||||
override var profileScale = 1.0F
|
||||
override var profileTranslation = Vec3(0.0, 0.25, 0.0)
|
||||
|
||||
override val foreLeftLeg= getPart("leg_front_left")
|
||||
override val foreRightLeg = getPart("leg_front_right")
|
||||
override val hindLeftLeg = getPart("leg_back_left")
|
||||
override val hindRightLeg = getPart("leg_back_right")
|
||||
|
||||
lateinit var standing: Pose
|
||||
lateinit var walk: Pose
|
||||
|
||||
override fun registerPoses() {
|
||||
standing = registerPose(
|
||||
poseName = "standing",
|
||||
poseTypes = PoseType.STATIONARY_POSES + PoseType.UI_POSES,
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
// bedrock("deerling", "ground_idle")
|
||||
)
|
||||
)
|
||||
|
||||
walk = registerPose(
|
||||
poseName = "walk",
|
||||
poseTypes = PoseType.MOVING_POSES,
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
QuadrupedWalkAnimation(this, periodMultiplier = 0.8F, amplitudeMultiplier = 0.8F)
|
||||
// bedrock("deerling", "ground_walk")
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
// override fun getFaintAnimation(
|
||||
// pokemonEntity: PokemonEntity,
|
||||
// state: PosableState<PokemonEntity>
|
||||
// ) = if (state.isPosedIn(standing, walk)) bedrockStateful("deerling", "faint") else null
|
||||
}
|
||||
-63
@@ -1,63 +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.gen5
|
||||
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.animation.QuadrupedWalkAnimation
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.HeadedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.QuadrupedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.PokemonPosableModel
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.Pose
|
||||
import com.cobblemon.mod.common.entity.PoseType
|
||||
import net.minecraft.client.model.geom.ModelPart
|
||||
import net.minecraft.world.phys.Vec3
|
||||
|
||||
class SawsbuckModel(root: ModelPart) : PokemonPosableModel(root), HeadedFrame, QuadrupedFrame {
|
||||
override val rootPart = root.registerChildWithAllChildren("sawsbuck")
|
||||
override val head = getPart("head")
|
||||
|
||||
override var portraitScale = 2.0F
|
||||
override var portraitTranslation = Vec3(-0.5, 1.1, 0.0)
|
||||
|
||||
override var profileScale = 0.65F
|
||||
override var profileTranslation = Vec3(0.0, 0.75, 0.0)
|
||||
|
||||
override val foreLeftLeg= getPart("leg_front_left")
|
||||
override val foreRightLeg = getPart("leg_front_right")
|
||||
override val hindLeftLeg = getPart("leg_back_left")
|
||||
override val hindRightLeg = getPart("leg_back_right")
|
||||
|
||||
lateinit var standing: Pose
|
||||
lateinit var walk: Pose
|
||||
|
||||
override fun registerPoses() {
|
||||
standing = registerPose(
|
||||
poseName = "standing",
|
||||
poseTypes = PoseType.STATIONARY_POSES + PoseType.UI_POSES,
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
// bedrock("sawsbuck", "ground_idle")
|
||||
)
|
||||
)
|
||||
|
||||
walk = registerPose(
|
||||
poseName = "walk",
|
||||
poseTypes = PoseType.MOVING_POSES,
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
QuadrupedWalkAnimation(this, periodMultiplier = 0.9F, amplitudeMultiplier = 0.9F)
|
||||
// bedrock("sawsbuck", "ground_walk")
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
// override fun getFaintAnimation(
|
||||
// pokemonEntity: PokemonEntity,
|
||||
// state: PosableState<PokemonEntity>
|
||||
// ) = if (state.isPosedIn(standing, walk)) bedrockStateful("sawsbuck", "faint") else null
|
||||
}
|
||||
-70
@@ -1,70 +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.gen6
|
||||
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.animation.BimanualSwingAnimation
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.animation.BipedWalkAnimation
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.BimanualFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.BipedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.HeadedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.CryProvider
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.PokemonPosableModel
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.Pose
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.MOVING_POSES
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.STATIONARY_POSES
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.UI_POSES
|
||||
import net.minecraft.client.model.geom.ModelPart
|
||||
import net.minecraft.world.phys.Vec3
|
||||
|
||||
class ChesnaughtModel (root: ModelPart) : PokemonPosableModel(root), HeadedFrame, BipedFrame, BimanualFrame {
|
||||
override val rootPart = root.registerChildWithAllChildren("chesnaught")
|
||||
override val head = getPart("head")
|
||||
override val rightArm = getPart("arm_right")
|
||||
override val leftArm = getPart("arm_left")
|
||||
override val leftLeg = getPart("leg_left")
|
||||
override val rightLeg = getPart("leg_right")
|
||||
|
||||
override var portraitScale = 2.2F
|
||||
override var portraitTranslation = Vec3(-1.0, 1.65, 0.0)
|
||||
|
||||
override var profileScale = 0.6F
|
||||
override var profileTranslation = Vec3(0.0, 0.85, 0.0)
|
||||
|
||||
|
||||
lateinit var standing: Pose
|
||||
lateinit var walk: Pose
|
||||
|
||||
override val cryAnimation = CryProvider { bedrockStateful("chesnaught", "cry") }
|
||||
|
||||
override fun registerPoses() {
|
||||
val blink = quirk { bedrockStateful("chesnaught", "blink")}
|
||||
|
||||
standing = registerPose(
|
||||
poseName = "standing",
|
||||
poseTypes = STATIONARY_POSES + UI_POSES,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("chesnaught", "ground_idle")
|
||||
)
|
||||
)
|
||||
|
||||
walk = registerPose(
|
||||
poseName = "walk",
|
||||
poseTypes = MOVING_POSES,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
BimanualSwingAnimation(this),
|
||||
BipedWalkAnimation(this),
|
||||
bedrock("chesnaught", "ground_idle")
|
||||
)
|
||||
)
|
||||
}
|
||||
}
|
||||
-70
@@ -1,70 +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.gen6
|
||||
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.BimanualFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.BipedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.HeadedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.CryProvider
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.PokemonPosableModel
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.Pose
|
||||
import com.cobblemon.mod.common.entity.PoseType
|
||||
import net.minecraft.client.model.geom.ModelPart
|
||||
import net.minecraft.world.phys.Vec3
|
||||
|
||||
class ChespinModel (root: ModelPart) : PokemonPosableModel(root), HeadedFrame, BipedFrame, BimanualFrame {
|
||||
override val rootPart = root.registerChildWithAllChildren("chespin")
|
||||
override val head = getPart("head")
|
||||
override val rightArm = getPart("arm_right")
|
||||
override val leftArm = getPart("arm_left")
|
||||
override val leftLeg = getPart("leg_left")
|
||||
override val rightLeg = getPart("leg_right")
|
||||
|
||||
override var portraitScale = 2.03F
|
||||
override var portraitTranslation = Vec3(-0.12, -0.44, 0.0)
|
||||
|
||||
override var profileScale = 0.77F
|
||||
override var profileTranslation = Vec3(0.0, 0.6, 0.0)
|
||||
|
||||
lateinit var standing: Pose
|
||||
lateinit var walk: Pose
|
||||
lateinit var sleep: Pose
|
||||
|
||||
override val cryAnimation = CryProvider { bedrockStateful("chespin", "cry") }
|
||||
|
||||
override fun registerPoses() {
|
||||
val blink = quirk { bedrockStateful("chespin", "blink")}
|
||||
|
||||
standing = registerPose(
|
||||
poseName = "standing",
|
||||
poseTypes = PoseType.STATIONARY_POSES + PoseType.UI_POSES,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("chespin", "ground_idle")
|
||||
)
|
||||
)
|
||||
|
||||
walk = registerPose(
|
||||
poseName = "walk",
|
||||
poseTypes = PoseType.MOVING_POSES,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("chespin", "ground_walk")
|
||||
)
|
||||
)
|
||||
|
||||
sleep = registerPose(
|
||||
poseType = PoseType.SLEEP,
|
||||
transformTicks = 10,
|
||||
animations = arrayOf(bedrock("chespin", "sleep"))
|
||||
)
|
||||
}
|
||||
}
|
||||
-118
@@ -1,118 +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.gen6
|
||||
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.PosableState
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.BimanualFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.BipedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.HeadedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.CryProvider
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.PokemonPosableModel
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.Pose
|
||||
import com.cobblemon.mod.common.entity.PoseType
|
||||
import com.cobblemon.mod.common.util.isBattling
|
||||
import net.minecraft.client.model.geom.ModelPart
|
||||
import net.minecraft.world.phys.Vec3
|
||||
|
||||
class FroakieModel(root: ModelPart) : PokemonPosableModel(root), HeadedFrame, BipedFrame, BimanualFrame {
|
||||
override val rootPart = root.registerChildWithAllChildren("froakie")
|
||||
override val head = getPart("head")
|
||||
override val rightArm = getPart("arm_right")
|
||||
override val leftArm = getPart("arm_left")
|
||||
override val rightLeg = getPart("leg_right")
|
||||
override val leftLeg = getPart("leg_left")
|
||||
|
||||
override var portraitScale = 1.86F
|
||||
override var portraitTranslation = Vec3(-0.25, -0.51, 0.0)
|
||||
|
||||
override var profileScale = 0.75F
|
||||
override var profileTranslation = Vec3(0.0, 0.56, 0.0)
|
||||
|
||||
lateinit var sleep: Pose
|
||||
lateinit var standing: Pose
|
||||
lateinit var float: Pose
|
||||
lateinit var swim: Pose
|
||||
lateinit var walk: Pose
|
||||
lateinit var battleidle: Pose
|
||||
|
||||
override val cryAnimation = CryProvider { bedrockStateful("froakie", "cry") }
|
||||
|
||||
override fun registerPoses() {
|
||||
val blink = quirk { bedrockStateful("froakie", "blink")}
|
||||
sleep = registerPose(
|
||||
poseType = PoseType.SLEEP,
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(bedrock("froakie", "sleep"))
|
||||
)
|
||||
|
||||
standing = registerPose(
|
||||
poseName = "standing",
|
||||
poseTypes = PoseType.UI_POSES + PoseType.STATIONARY_POSES - PoseType.FLOAT,
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
condition = { !it.isBattling },
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("froakie", "ground_idle")
|
||||
)
|
||||
)
|
||||
|
||||
walk = registerPose(
|
||||
poseName = "walk",
|
||||
poseType = PoseType.WALK,
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
condition = { !it.isBattling },
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("froakie", "ground_walk")
|
||||
)
|
||||
)
|
||||
|
||||
float = registerPose(
|
||||
poseName = "swim_idle",
|
||||
poseTypes = setOf(PoseType.FLOAT, PoseType.HOVER),
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
condition = { !it.isBattling },
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("froakie", "water_idle")
|
||||
)
|
||||
)
|
||||
|
||||
swim = registerPose(
|
||||
poseName = "swim",
|
||||
poseTypes = setOf(PoseType.SWIM, PoseType.FLY),
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
condition = { !it.isBattling },
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("froakie", "water_swim")
|
||||
)
|
||||
)
|
||||
|
||||
battleidle = registerPose(
|
||||
poseName = "battle_idle",
|
||||
poseTypes = PoseType.STATIONARY_POSES,
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
condition = { it.isBattling },
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("froakie", "battle_idle")
|
||||
)
|
||||
|
||||
)
|
||||
}
|
||||
|
||||
override fun getFaintAnimation(state: PosableState) = if (state.isPosedIn(standing, walk, battleidle, swim, float, sleep)) bedrockStateful("froakie", "faint") else null
|
||||
}
|
||||
-118
@@ -1,118 +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.gen6
|
||||
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.PosableState
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.BimanualFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.BipedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.HeadedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.CryProvider
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.PokemonPosableModel
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.Pose
|
||||
import com.cobblemon.mod.common.entity.PoseType
|
||||
import com.cobblemon.mod.common.util.isBattling
|
||||
import net.minecraft.client.model.geom.ModelPart
|
||||
import net.minecraft.world.phys.Vec3
|
||||
|
||||
class FrogadierModel(root: ModelPart) : PokemonPosableModel(root), HeadedFrame, BipedFrame, BimanualFrame {
|
||||
override val rootPart = root.registerChildWithAllChildren("frogadier")
|
||||
override val head = getPart("head")
|
||||
override val rightArm = getPart("arm_right")
|
||||
override val leftArm = getPart("arm_left")
|
||||
override val rightLeg = getPart("leg_right")
|
||||
override val leftLeg = getPart("leg_left")
|
||||
|
||||
override var portraitScale = 1.9F
|
||||
override var portraitTranslation = Vec3(-0.1, 1.4, 0.0)
|
||||
|
||||
override var profileScale = 0.7F
|
||||
override var profileTranslation = Vec3(0.0, 0.7, 0.0)
|
||||
|
||||
lateinit var sleep: Pose
|
||||
lateinit var standing: Pose
|
||||
lateinit var float: Pose
|
||||
lateinit var swim: Pose
|
||||
lateinit var walk: Pose
|
||||
lateinit var battleidle: Pose
|
||||
|
||||
override val cryAnimation = CryProvider { bedrockStateful("frogadier", "cry") }
|
||||
|
||||
override fun registerPoses() {
|
||||
val blink = quirk { bedrockStateful("frogadier", "blink")}
|
||||
sleep = registerPose(
|
||||
poseType = PoseType.SLEEP,
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(bedrock("frogadier", "sleep"))
|
||||
)
|
||||
|
||||
standing = registerPose(
|
||||
poseName = "standing",
|
||||
poseTypes = PoseType.UI_POSES + PoseType.STATIONARY_POSES - PoseType.FLOAT,
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
condition = { !it.isBattling },
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("frogadier", "ground_idle")
|
||||
)
|
||||
)
|
||||
|
||||
walk = registerPose(
|
||||
poseName = "walk",
|
||||
poseType = PoseType.WALK,
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
condition = { !it.isBattling },
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("frogadier", "ground_walk")
|
||||
)
|
||||
)
|
||||
|
||||
float = registerPose(
|
||||
poseName = "swim_idle",
|
||||
poseTypes = setOf(PoseType.FLOAT, PoseType.HOVER),
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
condition = { !it.isBattling },
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("frogadier", "water_idle")
|
||||
)
|
||||
)
|
||||
|
||||
swim = registerPose(
|
||||
poseName = "swim",
|
||||
poseTypes = setOf(PoseType.SWIM, PoseType.FLY),
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
condition = { !it.isBattling },
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("frogadier", "water_swim")
|
||||
)
|
||||
)
|
||||
|
||||
battleidle = registerPose(
|
||||
poseName = "battle_idle",
|
||||
poseTypes = PoseType.STATIONARY_POSES,
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
condition = { it.isBattling },
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("frogadier", "battle_idle")
|
||||
)
|
||||
|
||||
)
|
||||
}
|
||||
|
||||
override fun getFaintAnimation(state: PosableState) = if (state.isPosedIn(standing, walk, battleidle, swim, float, sleep)) bedrockStateful("frogadier", "faint") else null
|
||||
}
|
||||
-142
@@ -1,142 +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.gen6
|
||||
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.PosableState
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.createTransformation
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.BimanualFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.BipedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.HeadedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.CryProvider
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.PokemonPosableModel
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.Pose
|
||||
import com.cobblemon.mod.common.entity.PoseType
|
||||
import com.cobblemon.mod.common.util.isBattling
|
||||
import net.minecraft.client.model.geom.ModelPart
|
||||
import net.minecraft.world.phys.Vec3
|
||||
|
||||
class GreninjaModel(root: ModelPart) : PokemonPosableModel(root), HeadedFrame, BipedFrame, BimanualFrame {
|
||||
override val rootPart = root.registerChildWithAllChildren("greninja")
|
||||
override val head = getPart("head")
|
||||
override val rightArm = getPart("arm_right")
|
||||
override val leftArm = getPart("arm_left")
|
||||
override val rightLeg = getPart("leg_right")
|
||||
override val leftLeg = getPart("leg_left")
|
||||
val shurikenright = getPart("hand_shuriken_right")
|
||||
val shurikenleft = getPart("hand_shuriken_left")
|
||||
|
||||
override var portraitScale = 2.2F
|
||||
override var portraitTranslation = Vec3(-0.1, 1.34, 0.0)
|
||||
|
||||
override var profileScale = 0.7F
|
||||
override var profileTranslation = Vec3(0.0, 0.7, 0.0)
|
||||
|
||||
lateinit var sleep: Pose
|
||||
lateinit var standing: Pose
|
||||
lateinit var float: Pose
|
||||
lateinit var swim: Pose
|
||||
lateinit var walk: Pose
|
||||
lateinit var battleidle: Pose
|
||||
|
||||
override val cryAnimation = CryProvider { bedrockStateful("greninja", "cry") }
|
||||
|
||||
override fun registerPoses() {
|
||||
val blink = quirk { bedrockStateful("greninja", "blink")}
|
||||
sleep = registerPose(
|
||||
poseType = PoseType.SLEEP,
|
||||
transformTicks = 10,
|
||||
transformedParts = arrayOf(
|
||||
shurikenleft.createTransformation().withVisibility(visibility = false),
|
||||
shurikenright.createTransformation().withVisibility(visibility = false)
|
||||
),
|
||||
animations = arrayOf(bedrock("greninja", "sleep"))
|
||||
)
|
||||
|
||||
standing = registerPose(
|
||||
poseName = "standing",
|
||||
poseTypes = PoseType.UI_POSES + PoseType.STATIONARY_POSES - PoseType.FLOAT,
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
condition = { !it.isBattling },
|
||||
transformedParts = arrayOf(
|
||||
shurikenleft.createTransformation().withVisibility(visibility = false),
|
||||
shurikenright.createTransformation().withVisibility(visibility = false)
|
||||
),
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("greninja", "ground_idle")
|
||||
)
|
||||
)
|
||||
|
||||
walk = registerPose(
|
||||
poseName = "walk",
|
||||
poseType = PoseType.WALK,
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
transformedParts = arrayOf(
|
||||
shurikenleft.createTransformation().withVisibility(visibility = false),
|
||||
shurikenright.createTransformation().withVisibility(visibility = false)
|
||||
),
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("greninja", "ground_walk")
|
||||
)
|
||||
)
|
||||
|
||||
float = registerPose(
|
||||
poseName = "swim_idle",
|
||||
poseTypes = setOf(PoseType.FLOAT, PoseType.HOVER),
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
condition = { !it.isBattling },
|
||||
transformedParts = arrayOf(
|
||||
shurikenleft.createTransformation().withVisibility(visibility = false),
|
||||
shurikenright.createTransformation().withVisibility(visibility = false)
|
||||
),
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("greninja", "water_idle")
|
||||
)
|
||||
)
|
||||
|
||||
swim = registerPose(
|
||||
poseName = "swim",
|
||||
poseTypes = setOf(PoseType.SWIM, PoseType.FLY),
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
condition = { !it.isBattling },
|
||||
transformedParts = arrayOf(
|
||||
shurikenleft.createTransformation().withVisibility(visibility = false),
|
||||
shurikenright.createTransformation().withVisibility(visibility = false)
|
||||
),
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("greninja", "water_swim")
|
||||
)
|
||||
)
|
||||
|
||||
battleidle = registerPose(
|
||||
poseName = "battle_idle",
|
||||
poseTypes = PoseType.STATIONARY_POSES,
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
condition = { it.isBattling },
|
||||
transformedParts = arrayOf(
|
||||
shurikenleft.createTransformation().withVisibility(visibility = false),
|
||||
shurikenright.createTransformation().withVisibility(visibility = false)
|
||||
),
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("greninja", "battle_idle")
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
override fun getFaintAnimation(state: PosableState) = if (state.isPosedIn(standing, walk, battleidle, swim, float, sleep)) bedrockStateful("greninja", "faint") else null
|
||||
}
|
||||
-73
@@ -1,73 +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.gen6
|
||||
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.BimanualFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.BipedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.frame.HeadedFrame
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.CryProvider
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.PokemonPosableModel
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.Pose
|
||||
import com.cobblemon.mod.common.entity.PoseType
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.MOVING_POSES
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.STATIONARY_POSES
|
||||
import com.cobblemon.mod.common.entity.PoseType.Companion.UI_POSES
|
||||
import net.minecraft.client.model.geom.ModelPart
|
||||
import net.minecraft.world.phys.Vec3
|
||||
|
||||
class QuilladinModel (root: ModelPart) : PokemonPosableModel(root), HeadedFrame, BipedFrame, BimanualFrame {
|
||||
override val rootPart = root.registerChildWithAllChildren("quilladin")
|
||||
override val head = getPart("torso")
|
||||
override val rightArm = getPart("arm_right")
|
||||
override val leftArm = getPart("arm_left")
|
||||
override val leftLeg = getPart("leg_left")
|
||||
override val rightLeg = getPart("leg_right")
|
||||
|
||||
override var portraitScale = 2F
|
||||
override var portraitTranslation = Vec3(-0.3, 0.1, 0.0)
|
||||
|
||||
override var profileScale = 0.7F
|
||||
override var profileTranslation = Vec3(0.0, 0.7, 0.0)
|
||||
|
||||
lateinit var standing: Pose
|
||||
lateinit var walk: Pose
|
||||
lateinit var sleep: Pose
|
||||
|
||||
override val cryAnimation = CryProvider { bedrockStateful("quilladin", "cry") }
|
||||
|
||||
override fun registerPoses() {
|
||||
val blink = quirk { bedrockStateful("quilladin", "blink")}
|
||||
|
||||
standing = registerPose(
|
||||
poseName = "standing",
|
||||
poseTypes = STATIONARY_POSES + UI_POSES,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("quilladin", "ground_idle")
|
||||
)
|
||||
)
|
||||
|
||||
walk = registerPose(
|
||||
poseName = "walk",
|
||||
poseTypes = MOVING_POSES,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
singleBoneLook(),
|
||||
bedrock("quilladin", "ground_walk")
|
||||
)
|
||||
)
|
||||
|
||||
sleep = registerPose(
|
||||
poseType = PoseType.SLEEP,
|
||||
transformTicks = 10,
|
||||
animations = arrayOf(bedrock("quilladin", "sleep"))
|
||||
)
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -29,7 +29,7 @@ class VivillonModel(root: ModelPart) : PokemonPosableModel(root), HeadedFrame, B
|
||||
override var portraitTranslation = Vec3(-0.3, 0.2, 0.0)
|
||||
|
||||
override var profileScale = 0.7F
|
||||
override var profileTranslation = Vec3(0.1, 0.8, 0.0)
|
||||
override var profileTranslation = Vec3(0.0, 0.8, 0.0)
|
||||
|
||||
lateinit var standing: Pose
|
||||
lateinit var walk: Pose
|
||||
|
||||
-90
@@ -1,90 +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.gen9
|
||||
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.PosableState
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.createTransformation
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.CryProvider
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.PokemonPosableModel
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.ModelPartTransformation
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.Pose
|
||||
import com.cobblemon.mod.common.entity.PoseType
|
||||
import net.minecraft.client.model.geom.ModelPart
|
||||
import net.minecraft.world.phys.Vec3
|
||||
|
||||
class GlimmetModel (root: ModelPart) : PokemonPosableModel(root) {
|
||||
override val rootPart = root.registerChildWithAllChildren("glimmet")
|
||||
|
||||
override var portraitScale = 2.0F
|
||||
override var portraitTranslation = Vec3(-0.5, 1.3, 0.0)
|
||||
|
||||
override var profileScale = 0.7F
|
||||
override var profileTranslation = Vec3(0.0, 0.8, 0.0)
|
||||
|
||||
lateinit var standing: Pose
|
||||
lateinit var walk: Pose
|
||||
lateinit var sleep: Pose
|
||||
lateinit var shoulderLeft: Pose
|
||||
lateinit var shoulderRight: Pose
|
||||
|
||||
val shoulderOffset = 8
|
||||
|
||||
override val cryAnimation = CryProvider { bedrockStateful("glimmet", "cry") }
|
||||
|
||||
override fun registerPoses() {
|
||||
val blink = quirk { bedrockStateful("glimmet", "blink") }
|
||||
sleep = registerPose(
|
||||
poseType = PoseType.SLEEP,
|
||||
animations = arrayOf(bedrock("glimmet", "sleep"))
|
||||
)
|
||||
|
||||
standing = registerPose(
|
||||
poseName = "standing",
|
||||
poseTypes = PoseType.STATIONARY_POSES + PoseType.UI_POSES,
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
bedrock("glimmet", "ground_idle")
|
||||
)
|
||||
)
|
||||
|
||||
walk = registerPose(
|
||||
poseName = "walk",
|
||||
poseTypes = PoseType.MOVING_POSES,
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
bedrock("glimmet", "ground_walk")
|
||||
)
|
||||
)
|
||||
|
||||
shoulderLeft = registerPose(
|
||||
poseType = PoseType.SHOULDER_LEFT,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
bedrock("glimmet", "ground_idle")
|
||||
),
|
||||
transformedParts = arrayOf(
|
||||
rootPart.createTransformation().addPosition(ModelPartTransformation.X_AXIS, shoulderOffset)
|
||||
)
|
||||
)
|
||||
|
||||
shoulderRight = registerPose(
|
||||
poseType = PoseType.SHOULDER_RIGHT,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
bedrock("glimmet", "ground_idle")
|
||||
),
|
||||
transformedParts = arrayOf(
|
||||
rootPart.createTransformation().addPosition(ModelPartTransformation.X_AXIS, -shoulderOffset)
|
||||
)
|
||||
)
|
||||
}
|
||||
override fun getFaintAnimation(state: PosableState) = if (state.isPosedIn(standing, walk)) bedrockStateful("glimmet", "faint") else null
|
||||
}
|
||||
-79
@@ -1,79 +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.gen9
|
||||
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.PosableState
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.CryProvider
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pokemon.PokemonPosableModel
|
||||
import com.cobblemon.mod.common.client.render.models.blockbench.pose.Pose
|
||||
import com.cobblemon.mod.common.entity.PoseType
|
||||
import com.cobblemon.mod.common.util.isBattling
|
||||
import net.minecraft.client.model.geom.ModelPart
|
||||
import net.minecraft.world.phys.Vec3
|
||||
|
||||
class GlimmoraModel (root: ModelPart) : PokemonPosableModel(root) {
|
||||
override val rootPart = root.registerChildWithAllChildren("glimmora")
|
||||
|
||||
override var portraitScale = 2.0F
|
||||
override var portraitTranslation = Vec3(-0.6, -0.1, 0.0)
|
||||
|
||||
override var profileScale = 0.7F
|
||||
override var profileTranslation = Vec3(0.0, 0.8, 0.0)
|
||||
|
||||
lateinit var standing: Pose
|
||||
lateinit var walk: Pose
|
||||
lateinit var sleep: Pose
|
||||
lateinit var battleidle: Pose
|
||||
|
||||
override val cryAnimation = CryProvider { bedrockStateful("glimmora", "cry") }
|
||||
|
||||
override fun registerPoses() {
|
||||
val blink = quirk { bedrockStateful("glimmora", "blink") }
|
||||
sleep = registerPose(
|
||||
poseType = PoseType.SLEEP,
|
||||
animations = arrayOf(bedrock("glimmora", "sleep"))
|
||||
)
|
||||
|
||||
standing = registerPose(
|
||||
poseName = "standing",
|
||||
poseTypes = PoseType.STATIONARY_POSES + PoseType.UI_POSES,
|
||||
transformTicks = 10,
|
||||
condition = { !it.isBattling },
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
bedrock("glimmora", "ground_idle")
|
||||
)
|
||||
)
|
||||
|
||||
walk = registerPose(
|
||||
poseName = "walk",
|
||||
poseTypes = PoseType.MOVING_POSES,
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
animations = arrayOf(
|
||||
bedrock("glimmora", "ground_walk")
|
||||
)
|
||||
)
|
||||
|
||||
battleidle = registerPose(
|
||||
poseName = "battle_idle",
|
||||
poseTypes = PoseType.STATIONARY_POSES,
|
||||
transformTicks = 10,
|
||||
quirks = arrayOf(blink),
|
||||
condition = { it.isBattling },
|
||||
animations = arrayOf(
|
||||
bedrock("glimmora", "battle_idle")
|
||||
)
|
||||
|
||||
)
|
||||
}
|
||||
override fun getFaintAnimation(state: PosableState) = if (state.isPosedIn(standing, walk, sleep)) bedrockStateful("glimmora", "faint") else
|
||||
if (state.isPosedIn(battleidle)) bedrockStateful("glimmora", "faint2")
|
||||
else null
|
||||
}
|
||||
-23
@@ -231,13 +231,8 @@ object VaryingModelRepository {
|
||||
inbuilt("paras", ::ParasModel)
|
||||
inbuilt("mankey", ::MankeyModel)
|
||||
inbuilt("primeape", ::PrimeapeModel)
|
||||
inbuilt("oddish", ::OddishModel)
|
||||
inbuilt("gloom", ::GloomModel)
|
||||
inbuilt("vileplume", ::VileplumeModel)
|
||||
inbuilt("bellossom", ::BellossomModel)
|
||||
inbuilt("voltorb", ::VoltorbModel)
|
||||
inbuilt("electrode", ::ElectrodeModel)
|
||||
inbuilt("ekans", ::EkansModel)
|
||||
inbuilt("machop", ::MachopModel)
|
||||
inbuilt("machoke", ::MachokeModel)
|
||||
inbuilt("machamp", ::MachampModel)
|
||||
@@ -266,8 +261,6 @@ object VaryingModelRepository {
|
||||
inbuilt("nidorino", ::NidorinoModel)
|
||||
inbuilt("persian", ::PersianModel)
|
||||
inbuilt("pinsir", ::PinsirModel)
|
||||
inbuilt("poliwag", ::PoliwagModel)
|
||||
inbuilt("politoed", ::PolitoedModel)
|
||||
inbuilt("ponyta", ::PonytaModel)
|
||||
inbuilt("psyduck", ::PsyduckModel)
|
||||
inbuilt("rapidash", ::RapidashModel)
|
||||
@@ -304,8 +297,6 @@ object VaryingModelRepository {
|
||||
inbuilt("sizzlipede", ::SizzlipedeModel)
|
||||
inbuilt("kleavor", ::KleavorModel)
|
||||
inbuilt("pyukumuku", ::PyukumukuModel)
|
||||
inbuilt("deerling", ::DeerlingModel)
|
||||
inbuilt("sawsbuck", ::SawsbuckModel)
|
||||
inbuilt("natu", ::NatuModel)
|
||||
inbuilt("xatu", ::XatuModel)
|
||||
inbuilt("milcery", :: MilceryModel)
|
||||
@@ -320,9 +311,6 @@ object VaryingModelRepository {
|
||||
inbuilt("morelull", :: MorelullModel)
|
||||
inbuilt("shiinotic", :: ShiinoticModel)
|
||||
inbuilt("spiritomb", :: SpiritombModel)
|
||||
inbuilt("chespin", :: ChespinModel)
|
||||
inbuilt("quilladin", :: QuilladinModel)
|
||||
inbuilt("chesnaught", :: ChesnaughtModel)
|
||||
inbuilt("pineco", :: PinecoModel)
|
||||
inbuilt("lotad", :: LotadModel)
|
||||
inbuilt("lombre", :: LombreModel)
|
||||
@@ -350,9 +338,6 @@ object VaryingModelRepository {
|
||||
inbuilt("walkingwake", ::WalkingwakeModel)
|
||||
inbuilt("ironleaves", ::IronleavesModel)
|
||||
inbuilt("miltank", ::MiltankModel)
|
||||
inbuilt("froakie", ::FroakieModel)
|
||||
inbuilt("frogadier", ::FrogadierModel)
|
||||
inbuilt("greninja", ::GreninjaModel)
|
||||
inbuilt("grookey", ::GrookeyModel)
|
||||
inbuilt("thwackey", ::ThwackeyModel)
|
||||
inbuilt("rillaboom", ::RillaboomModel)
|
||||
@@ -377,7 +362,6 @@ object VaryingModelRepository {
|
||||
inbuilt("gliscor", ::GliscorModel)
|
||||
inbuilt("poochyena", ::PoochyenaModel)
|
||||
inbuilt("mightyena", ::MightyenaModel)
|
||||
inbuilt("shroomish", ::ShroomishModel)
|
||||
inbuilt("breloom", ::BreloomModel)
|
||||
inbuilt("charcadet", ::CharcadetModel)
|
||||
inbuilt("flittle", ::FlittleModel)
|
||||
@@ -399,10 +383,6 @@ object VaryingModelRepository {
|
||||
inbuilt("sirfetchd", ::SirfetchdModel)
|
||||
inbuilt("duskull", ::DuskullModel)
|
||||
inbuilt("dusclops", ::DusclopsModel)
|
||||
inbuilt("glimmet", ::GlimmetModel)
|
||||
inbuilt("glimmora", ::GlimmoraModel)
|
||||
inbuilt("bonsly", ::BonslyModel)
|
||||
inbuilt("sudowoodo", ::SudowoodoModel)
|
||||
inbuilt("cetoddle", ::CetoddleModel)
|
||||
inbuilt("cetitan", ::CetitanModel)
|
||||
inbuilt("aipom", ::AipomModel)
|
||||
@@ -410,9 +390,6 @@ object VaryingModelRepository {
|
||||
inbuilt("hoothoot", ::HoothootModel)
|
||||
inbuilt("wingull", ::WingullModel)
|
||||
inbuilt("pelipper", ::PelipperModel)
|
||||
inbuilt("shinx", ::ShinxModel)
|
||||
inbuilt("luxio", ::LuxioModel)
|
||||
inbuilt("luxray", ::LuxrayModel)
|
||||
inbuilt("numel", ::NumelModel)
|
||||
inbuilt("roggenrola", ::RoggenrolaModel)
|
||||
inbuilt("boldore", ::BoldoreModel)
|
||||
|
||||
@@ -55,8 +55,10 @@ import java.util.UUID
|
||||
import net.minecraft.resources.ResourceLocation
|
||||
import net.minecraft.server.level.ServerPlayer
|
||||
import net.minecraft.server.packs.PackType
|
||||
import net.minecraft.server.packs.resources.PreparableReloadListener
|
||||
import net.minecraft.server.packs.resources.ResourceManager
|
||||
import net.minecraft.server.packs.resources.ResourceManagerReloadListener
|
||||
import org.jetbrains.annotations.ApiStatus
|
||||
|
||||
object CobblemonDataProvider : DataProvider {
|
||||
|
||||
@@ -67,6 +69,11 @@ object CobblemonDataProvider : DataProvider {
|
||||
|
||||
private val scheduledActions = mutableMapOf<UUID, MutableList<() -> Unit>>()
|
||||
|
||||
// client is public only so we can use it cross-module. maybe a more elegant solution exists, but this works
|
||||
@ApiStatus.Internal
|
||||
val clientResourceReloader: PreparableReloadListener = SimpleResourceReloader(PackType.CLIENT_RESOURCES)
|
||||
private val serverResourceReloader: PreparableReloadListener = SimpleResourceReloader(PackType.SERVER_DATA)
|
||||
|
||||
fun registerDefaults() {
|
||||
this.register(CobblemonScripts, reloadable = true)
|
||||
this.register(SpeciesFeatures, reloadable = false)
|
||||
@@ -119,9 +126,9 @@ object CobblemonDataProvider : DataProvider {
|
||||
}
|
||||
|
||||
ifClient {
|
||||
Cobblemon.implementation.registerResourceReloader(cobblemonResource("client_resources"), SimpleResourceReloader(PackType.CLIENT_RESOURCES), PackType.CLIENT_RESOURCES, emptyList())
|
||||
Cobblemon.implementation.registerResourceReloader(cobblemonResource("client_resources"), clientResourceReloader, PackType.CLIENT_RESOURCES, emptyList())
|
||||
}
|
||||
Cobblemon.implementation.registerResourceReloader(cobblemonResource("data_resources"), SimpleResourceReloader(PackType.SERVER_DATA), PackType.SERVER_DATA, emptyList())
|
||||
Cobblemon.implementation.registerResourceReloader(cobblemonResource("data_resources"), serverResourceReloader, PackType.SERVER_DATA, emptyList())
|
||||
}
|
||||
|
||||
override fun <T : DataRegistry> register(registry: T, reloadable: Boolean): T {
|
||||
|
||||
@@ -31,8 +31,6 @@ interface EVIncreaseItem: PokemonSelectingItem {
|
||||
override fun canUseOnPokemon(stack: ItemStack, pokemon: Pokemon) = pokemon.evs.getOrDefault(stat) < EVs.MAX_STAT_VALUE &&
|
||||
super.canUseOnPokemon(stack, pokemon)
|
||||
|
||||
val sound: SoundEvent
|
||||
|
||||
override fun applyToPokemon(
|
||||
player: ServerPlayer,
|
||||
stack: ItemStack,
|
||||
@@ -40,14 +38,12 @@ interface EVIncreaseItem: PokemonSelectingItem {
|
||||
): InteractionResultHolder<ItemStack> {
|
||||
val evsGained = pokemon.evs.add(stat, evIncreaseAmount, ItemEvSource(player, stack, pokemon))
|
||||
return if (evsGained > 0) {
|
||||
pokemon.entity?.playSound(sound, 1F, 1F)
|
||||
stack.consume(1, player)
|
||||
if (!player.hasInfiniteMaterials()) {
|
||||
player.giveOrDropItemStack(ItemStack(Items.GLASS_BOTTLE))
|
||||
}
|
||||
onSuccessfulApply(player, stack, pokemon)
|
||||
InteractionResultHolder.success(stack)
|
||||
} else {
|
||||
InteractionResultHolder.fail(stack)
|
||||
}
|
||||
}
|
||||
|
||||
fun onSuccessfulApply(player: ServerPlayer, stack: ItemStack, pokemon: Pokemon)
|
||||
}
|
||||
@@ -11,8 +11,8 @@ package com.cobblemon.mod.common.item.interactive
|
||||
import com.cobblemon.mod.common.CobblemonSounds
|
||||
import com.cobblemon.mod.common.api.pokemon.stats.Stat
|
||||
import com.cobblemon.mod.common.item.CobblemonItem
|
||||
import com.cobblemon.mod.common.pokemon.Pokemon
|
||||
import net.minecraft.server.level.ServerPlayer
|
||||
import net.minecraft.sounds.SoundEvent
|
||||
import net.minecraft.world.InteractionHand
|
||||
import net.minecraft.world.InteractionResultHolder
|
||||
import net.minecraft.world.entity.player.Player
|
||||
@@ -21,7 +21,6 @@ import net.minecraft.world.level.Level
|
||||
|
||||
class FeatherItem(override val stat: Stat): CobblemonItem(Properties()), EVIncreaseItem {
|
||||
override val evIncreaseAmount: Int = 1
|
||||
override val sound: SoundEvent = CobblemonSounds.MEDICINE_FEATHER_USE
|
||||
|
||||
override fun use(world: Level, user: Player, hand: InteractionHand): InteractionResultHolder<ItemStack> {
|
||||
if (user is ServerPlayer) {
|
||||
@@ -29,4 +28,9 @@ class FeatherItem(override val stat: Stat): CobblemonItem(Properties()), EVIncre
|
||||
}
|
||||
return InteractionResultHolder.success(user.getItemInHand(hand))
|
||||
}
|
||||
|
||||
override fun onSuccessfulApply(player: ServerPlayer, stack: ItemStack, pokemon: Pokemon) {
|
||||
pokemon.entity?.playSound(CobblemonSounds.MEDICINE_FEATHER_USE)
|
||||
stack.consume(1, player)
|
||||
}
|
||||
}
|
||||
@@ -13,7 +13,6 @@ import com.cobblemon.mod.common.api.pokemon.stats.Stat
|
||||
import com.cobblemon.mod.common.item.CobblemonItem
|
||||
import com.cobblemon.mod.common.pokemon.Pokemon
|
||||
import net.minecraft.server.level.ServerPlayer
|
||||
import net.minecraft.sounds.SoundEvent
|
||||
import net.minecraft.world.InteractionHand
|
||||
import net.minecraft.world.InteractionResultHolder
|
||||
import net.minecraft.world.entity.player.Player
|
||||
@@ -22,7 +21,6 @@ import net.minecraft.world.level.Level
|
||||
|
||||
class MochiItem(override val stat: Stat): CobblemonItem(Properties()), EVIncreaseItem {
|
||||
override val evIncreaseAmount: Int = 4
|
||||
override val sound: SoundEvent = CobblemonSounds.MOCHI_USE
|
||||
|
||||
override fun applyToPokemon(player: ServerPlayer, stack: ItemStack, pokemon: Pokemon): InteractionResultHolder<ItemStack> {
|
||||
if (!canUseOnPokemon(stack, pokemon)) {
|
||||
@@ -40,4 +38,9 @@ class MochiItem(override val stat: Stat): CobblemonItem(Properties()), EVIncreas
|
||||
}
|
||||
return InteractionResultHolder.success(user.getItemInHand(hand))
|
||||
}
|
||||
|
||||
override fun onSuccessfulApply(player: ServerPlayer, stack: ItemStack, pokemon: Pokemon) {
|
||||
pokemon.entity?.playSound(CobblemonSounds.MOCHI_USE)
|
||||
stack.consume(1, player)
|
||||
}
|
||||
}
|
||||
@@ -10,19 +10,20 @@ package com.cobblemon.mod.common.item.interactive
|
||||
|
||||
import com.cobblemon.mod.common.CobblemonSounds
|
||||
import com.cobblemon.mod.common.api.pokemon.stats.Stat
|
||||
import com.cobblemon.mod.common.pokemon.Pokemon
|
||||
import com.cobblemon.mod.common.util.giveOrDropItemStack
|
||||
import net.minecraft.server.level.ServerPlayer
|
||||
import net.minecraft.sounds.SoundEvent
|
||||
import net.minecraft.world.InteractionHand
|
||||
import net.minecraft.world.InteractionResultHolder
|
||||
import net.minecraft.world.entity.player.Player
|
||||
import net.minecraft.world.item.ItemNameBlockItem
|
||||
import net.minecraft.world.item.ItemStack
|
||||
import net.minecraft.world.item.Items
|
||||
import net.minecraft.world.level.Level
|
||||
import net.minecraft.world.level.block.Block
|
||||
|
||||
class VitaminItem(override val stat: Stat, block: Block): ItemNameBlockItem(block, Properties()), EVIncreaseItem {
|
||||
override val evIncreaseAmount: Int = 10
|
||||
override val sound: SoundEvent = CobblemonSounds.MEDICINE_PILLS_USE
|
||||
|
||||
override fun use(world: Level, user: Player, hand: InteractionHand): InteractionResultHolder<ItemStack> {
|
||||
if (user is ServerPlayer) {
|
||||
@@ -30,4 +31,12 @@ class VitaminItem(override val stat: Stat, block: Block): ItemNameBlockItem(bloc
|
||||
}
|
||||
return InteractionResultHolder.success(user.getItemInHand(hand))
|
||||
}
|
||||
|
||||
override fun onSuccessfulApply(player: ServerPlayer, stack: ItemStack, pokemon: Pokemon) {
|
||||
pokemon.entity?.playSound(CobblemonSounds.MEDICINE_PILLS_USE)
|
||||
stack.consume(1, player)
|
||||
if (!player.hasInfiniteMaterials()) {
|
||||
player.giveOrDropItemStack(Items.GLASS_BOTTLE.defaultInstance)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -211,8 +211,9 @@ open class Pokemon : ShowdownIdentifiable {
|
||||
// Species updates already update HP but just a form change may require it
|
||||
// Moved to before the field was set else it won't actually do the hp calc proper <3
|
||||
val quotient = clamp(currentHealth / maxHealth.toFloat(), 0F, 1F)
|
||||
val oldForm = field
|
||||
field = value
|
||||
this.updateMovesOnFormChange(value)
|
||||
this.updateMovesOnFormChange(oldForm)
|
||||
// Evo proxy is already cleared on species update but the form may be changed by itself, this is fine and no unnecessary packets will be sent out
|
||||
this.evolutionProxy.current().clear()
|
||||
checkGender()
|
||||
@@ -2301,15 +2302,16 @@ open class Pokemon : ShowdownIdentifiable {
|
||||
*
|
||||
* E.g, Removing Overheat from Rotom when it is no longer Rotom-Heat and the target form is not compatible with Overheat.
|
||||
*/
|
||||
private fun updateMovesOnFormChange(newForm: FormData) {
|
||||
private fun updateMovesOnFormChange(oldForm: FormData) {
|
||||
if (this.isClient) return
|
||||
|
||||
val oldFormChangeMoves = this.form.moves.formChangeMoves.toSet()
|
||||
val newForm = this.form
|
||||
val oldFormChangeMoves = oldForm.moves.formChangeMoves.toSet()
|
||||
|
||||
// Only remove moves that were provided by the old form's form-change moves AND are not learnable by the new form
|
||||
for (i in 0 until MoveSet.MOVE_COUNT) {
|
||||
val move = this.moveSet[i]
|
||||
if (move != null && move.template in oldFormChangeMoves) {
|
||||
if (move != null && move.template in oldFormChangeMoves && !LearnsetQuery.ANY.canLearn(move.template, newForm.moves)) {
|
||||
this.moveSet.setMove(i, null)
|
||||
}
|
||||
}
|
||||
@@ -2322,16 +2324,8 @@ open class Pokemon : ShowdownIdentifiable {
|
||||
}
|
||||
}
|
||||
|
||||
// Add new form's form-change moves
|
||||
newForm.moves.formChangeMoves.forEach { move ->
|
||||
if (this.moveSet.filterNotNull().none { it.template == move }) {
|
||||
if (this.moveSet.hasSpace()) {
|
||||
this.moveSet.add(move.create())
|
||||
} else {
|
||||
this.benchedMoves.add(BenchedMove(move, 0))
|
||||
}
|
||||
}
|
||||
}
|
||||
// Add the new form's form-change moves (skipping any the Pokémon isn't high enough level for yet).
|
||||
grantEligibleFormChangeMoves()
|
||||
|
||||
// If moveset is empty try to find one valid move to fill it
|
||||
if (this.moveSet.filterNotNull().isEmpty()) {
|
||||
@@ -2343,6 +2337,30 @@ open class Pokemon : ShowdownIdentifiable {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Grants any of the current form's `form_change` moves that this Pokémon doesn't already know and is high
|
||||
* enough level for (form-change moves that are also level-up moves, e.g. Glaciate on Kyurem, shouldn't be
|
||||
* granted until that level is reached).
|
||||
*/
|
||||
private fun grantEligibleFormChangeMoves() {
|
||||
if (this.isClient) return
|
||||
|
||||
this.form.moves.formChangeMoves.forEach { move ->
|
||||
if (this.moveSet.filterNotNull().none { it.template == move } && this.benchedMoves.none { it.moveTemplate == move }) {
|
||||
val requiredLevel = this.form.moves.levelUpMoves.entries.firstOrNull { move in it.value }?.key
|
||||
if (requiredLevel != null && this.level < requiredLevel) {
|
||||
return@forEach
|
||||
}
|
||||
|
||||
if (this.moveSet.hasSpace()) {
|
||||
this.moveSet.add(move.create())
|
||||
} else {
|
||||
this.benchedMoves.add(BenchedMove(move, 0))
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
companion object {
|
||||
/**
|
||||
* The [FriendshipMutationCalculator] used when a Pokémon levels up.
|
||||
|
||||
+1
@@ -68,6 +68,7 @@ object CobblemonRequirementAdapter : RequirementAdapter {
|
||||
this.registerType(AdvancementRequirement.ADAPTER_VARIANT, AdvancementRequirement::class)
|
||||
this.registerType(OwnerHoldsItemRequirement.ADAPTER_VARIANT, OwnerHoldsItemRequirement::class)
|
||||
this.registerType(ChanceRequirement.ADAPTER_VARIANT, ChanceRequirement::class)
|
||||
this.registerType(NegateRequirement.ADAPTER_VARIANT, NegateRequirement::class)
|
||||
}
|
||||
|
||||
val gson: Gson by lazy {
|
||||
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
/*
|
||||
* 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.pokemon.requirements
|
||||
|
||||
import com.cobblemon.mod.common.api.pokemon.requirement.Requirement
|
||||
import com.cobblemon.mod.common.pokemon.Pokemon
|
||||
|
||||
class NegateRequirement(val inner: Requirement) : Requirement {
|
||||
|
||||
override fun check(pokemon: Pokemon) = !inner.check(pokemon)
|
||||
|
||||
companion object {
|
||||
const val ADAPTER_VARIANT = "negate"
|
||||
}
|
||||
}
|
||||
@@ -53,4 +53,60 @@ fun Quaternionf.toEulerXYZDegrees(): Vector3f {
|
||||
vector.z = vector.z.toDegrees()
|
||||
|
||||
return vector
|
||||
}
|
||||
|
||||
|
||||
/* // is not allocation free so just inline ".get(AxisAngle4f)" like in the function below this
|
||||
fun Quaternionf.toScaledAngleAxis(angAxisScaled: Vector3f) {
|
||||
val axisAng4 = AxisAngle4f()
|
||||
this.get(axisAng4)
|
||||
|
||||
angAxisScaled.x = axisAng4.x
|
||||
angAxisScaled.y = axisAng4.y
|
||||
angAxisScaled.z = axisAng4.z
|
||||
angAxisScaled.mul(axisAng4.angle)
|
||||
} */
|
||||
|
||||
fun Quaternionf.toScaledAngleAxis(dest: Vector3f) {
|
||||
var x = this.x
|
||||
var y = this.y
|
||||
var z = this.z
|
||||
var w = this.w
|
||||
|
||||
if (w > 1.0f) {
|
||||
val invNorm = 1.0f / kotlin.math.sqrt(x * x + y * y + z * z + w * w)
|
||||
x *= invNorm
|
||||
y *= invNorm
|
||||
z *= invNorm
|
||||
w *= invNorm
|
||||
}
|
||||
|
||||
val angle = 2.0f * kotlin.math.acos(w)
|
||||
val s = kotlin.math.sqrt(1.0f - w * w)
|
||||
|
||||
if (s < 0.001f) {
|
||||
dest.x = x * angle
|
||||
dest.y = y * angle
|
||||
dest.z = z * angle
|
||||
} else {
|
||||
val invS = angle / s
|
||||
dest.x = x * invS
|
||||
dest.y = y * invS
|
||||
dest.z = z * invS
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
fun Quaternionf.setFromScaledAngleAxis(angAxisScaled: Vector3f) {
|
||||
val len = angAxisScaled.length()
|
||||
if (len > 1e-5f) {
|
||||
this.rotationAxis(
|
||||
len,
|
||||
angAxisScaled.x / len,
|
||||
angAxisScaled.y / len,
|
||||
angAxisScaled.z / len
|
||||
)
|
||||
} else {
|
||||
this.identity()
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,163 @@
|
||||
/*
|
||||
* 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.util.math
|
||||
|
||||
import net.minecraft.util.Mth
|
||||
import kotlin.math.max
|
||||
import kotlin.math.sqrt
|
||||
import kotlin.math.abs
|
||||
import org.joml.Quaternionf
|
||||
import org.joml.Vector3f
|
||||
|
||||
/**
|
||||
* Much of the code here is directly taken or inspired off this great article:
|
||||
* https://theorangeduck.com/page/spring-roll-call#critical
|
||||
*
|
||||
* Very much worth the read.
|
||||
*
|
||||
* Util funcitons for using springs to smoothly/naturally approach one value towards a target
|
||||
*/
|
||||
|
||||
/**
|
||||
* Need to pass in and mutate both a value and a velocity to a spring
|
||||
*/
|
||||
class FloatSpring(
|
||||
var value: Float = 0f,
|
||||
var velocity: Float = 0f
|
||||
)
|
||||
|
||||
class QuatSpring(
|
||||
var quat: Quaternionf = Quaternionf(),
|
||||
var angVel: Vector3f = Vector3f()
|
||||
)
|
||||
|
||||
|
||||
/**
|
||||
* Provides a fast negative exponent approximation for e^-x
|
||||
*/
|
||||
fun negExp(x: Float): Float {
|
||||
return 1.0f / (1.0f + x + 0.48f*x*x + 0.235f*x*x*x)
|
||||
}
|
||||
|
||||
fun halflifeToDamping(halflife: Float, eps: Float = 1e-5f): Float {
|
||||
return (4.0f * 0.69314718056f) / (halflife + eps)
|
||||
}
|
||||
|
||||
fun simpleSpringDamper(
|
||||
spring: FloatSpring,
|
||||
goalValue: Float,
|
||||
halflife: Float,
|
||||
dt: Float,
|
||||
isAngle: Boolean = false
|
||||
) {
|
||||
val y = halflifeToDamping(halflife) / 2.0f
|
||||
val j0 = if (isAngle) Mth.wrapDegrees(spring.value - goalValue) else spring.value - goalValue
|
||||
val j1 = spring.velocity + j0*y;
|
||||
val eydt = negExp(y*dt);
|
||||
|
||||
spring.value = eydt*(j0 + j1*dt) + goalValue;
|
||||
spring.velocity = eydt*(spring.velocity - j1*y*dt);
|
||||
}
|
||||
|
||||
fun simpleSpringDamperQuat(
|
||||
spring: QuatSpring,
|
||||
goalQuat: Quaternionf,
|
||||
halflife: Float,
|
||||
dt: Float
|
||||
) {
|
||||
val y = halflifeToDamping(halflife) / 2.0f
|
||||
|
||||
// Quaternions have double cover q and -q represent the same rotation.
|
||||
// so an accidentally rotation the long way could be calculated.
|
||||
// account for that specifically
|
||||
val goal = if (spring.quat.dot(goalQuat) < 0f) {
|
||||
Quaternionf(-goalQuat.x, -goalQuat.y, -goalQuat.z, -goalQuat.w)
|
||||
} else {
|
||||
goalQuat
|
||||
}
|
||||
|
||||
// Gather the rotation from the goal to the current
|
||||
val goalToCurrQuat = Quaternionf(spring.quat).mul(Quaternionf(goal).conjugate())
|
||||
|
||||
val j0 = Vector3f()
|
||||
goalToCurrQuat.toScaledAngleAxis(j0)
|
||||
|
||||
val j1: Vector3f = Vector3f(spring.angVel).add(Vector3f(j0).mul(y))
|
||||
|
||||
val eydt: Float = negExp(y * dt)
|
||||
|
||||
val scaledAxis = Vector3f(j0).add(Vector3f(j1).mul(dt)).mul(eydt)
|
||||
|
||||
spring.quat.setFromScaledAngleAxis(scaledAxis)
|
||||
spring.quat.mul(goal)
|
||||
|
||||
spring.angVel.sub(j1.mul(y * dt))
|
||||
spring.angVel.mul(eydt)
|
||||
}
|
||||
|
||||
/**
|
||||
* Below is essentially the same code as found here: https://github.com/orangeduck/Spring-It-On/blob/main/inertialeasing.c
|
||||
* https://theorangeduck.com/page/inertial-easing <- the blogpost
|
||||
*/
|
||||
|
||||
// Class to hold the "time" along the curve/function and scale of the function currently
|
||||
// Held in this class so both can be mutated and returned in one function call
|
||||
class InertialVals(
|
||||
var t: Float = 0f,
|
||||
var s: Float = 0f,
|
||||
var offset: Float = 0f,
|
||||
)
|
||||
|
||||
// Includes the negative portion
|
||||
fun smoothstep(t: Float, s: Float): Float {
|
||||
return s * (if(t > 1.0f) 1.0f else 3*t*t - 2*t*t*t)
|
||||
}
|
||||
|
||||
// Derivative of the above smoothstep
|
||||
fun smoothstepDt(t: Float, s: Float): Float {
|
||||
return s * (if(t > 1.0f) 0.0f else 6*t - 6*t*t)
|
||||
}
|
||||
|
||||
// Solve for smoothstep parameters `t` and `s` given new target `x` and velocity `v`
|
||||
fun smoothstepSolve( //TODO change these names to make more sense
|
||||
vals: InertialVals,
|
||||
x: Float, // Target Value x
|
||||
v: Float, // Goal velocity
|
||||
overshoot: Float = 0.05f,
|
||||
eps: Float = 1e-8f
|
||||
) {
|
||||
// If velocity is low enough then start from time zero
|
||||
if (abs(v) < 1e-8f) {
|
||||
vals.t = 0f
|
||||
vals.s = x
|
||||
return
|
||||
}
|
||||
|
||||
// If x is negative then invert signs and re-Solve
|
||||
if (x < 0f) {
|
||||
smoothstepSolve(vals, -x, -v, overshoot, eps)
|
||||
vals.s *= -1f
|
||||
return
|
||||
}
|
||||
|
||||
// Find the possible times that solve for the given `x` and `v`
|
||||
// Quadratic formula!
|
||||
val q: Float = sqrt(max((6*x - v)*(6*x - v) + 8*v*v, eps))
|
||||
val t0: Float = (v - 6*x + q) / (4*v)
|
||||
val t1: Float = (v - 6*x - q) / (4*v)
|
||||
|
||||
// Overshoot if the alternative time is between -0.5f and -(0.5f + overshoot)
|
||||
vals.t = if(-0.5f > t1 && t1 > -(0.5f + overshoot)) t1 else t0;
|
||||
|
||||
// Find the un-scaled velocity at the fitted time
|
||||
val vt: Float = smoothstepDt(vals.t, 1f);
|
||||
|
||||
// Find the scaling factor so that the velocity at the fitted time matches
|
||||
vals.s = if(abs(vt) < eps) 0f else v / vt;
|
||||
}
|
||||
@@ -43,7 +43,7 @@ class TypeGemFeature : Feature<BlockStateConfiguration>(BlockStateConfiguration.
|
||||
val coreState = TYPE_GEM_CORE.defaultBlockState()
|
||||
|
||||
// Place the gem first then make sure it placed before placing the core.
|
||||
worldGenLevel.setBlock(origin, coreState, UPDATE_ALL)
|
||||
worldGenLevel.setBlock(chosenPos, gemState, UPDATE_ALL)
|
||||
if (!worldGenLevel.getBlockState(chosenPos).`is`(gemBlock)) {
|
||||
return false
|
||||
}
|
||||
|
||||
+75
@@ -0,0 +1,75 @@
|
||||
{
|
||||
"format_version": "1.10.0",
|
||||
"particle_effect": {
|
||||
"description": {
|
||||
"identifier": "cobblemon:greninja_cloud",
|
||||
"basic_render_parameters": {
|
||||
"material": "particles_alpha",
|
||||
"texture": "textures/particle/vanilla/big_smoke_white"
|
||||
}
|
||||
},
|
||||
"events": {
|
||||
"cloudfade": {
|
||||
"particle_effect": {
|
||||
"effect": "cobblemon:greninja_cloud_fade",
|
||||
"type": "particle_with_velocity"
|
||||
}
|
||||
}
|
||||
},
|
||||
"components": {
|
||||
"minecraft:emitter_rate_instant": {
|
||||
"num_particles": "math.random_integer(10,12)"
|
||||
},
|
||||
"minecraft:emitter_lifetime_once": {
|
||||
"active_time": 1
|
||||
},
|
||||
"minecraft:emitter_shape_box": {
|
||||
"offset": [0, 1, 0],
|
||||
"half_dimensions": [0.35, 0.75, 0.35],
|
||||
"direction": ["math.round(math.random(-1,1))", 0, "math.round(math.random(-1,1))"]
|
||||
},
|
||||
"minecraft:particle_initialization": {
|
||||
"per_render_expression": "v.smoke_color = v.particle_random_3;v.smoke_rotation = math.round(v.particle_random_2)*90;"
|
||||
},
|
||||
"minecraft:particle_lifetime_expression": {
|
||||
"max_lifetime": "0.7+(0.1*math.round(v.particle_random_4))"
|
||||
},
|
||||
"minecraft:particle_lifetime_events": {
|
||||
"expiration_event": "cloudfade"
|
||||
},
|
||||
"minecraft:particle_initial_spin": {
|
||||
"rotation": "v.smoke_rotation"
|
||||
},
|
||||
"minecraft:particle_initial_speed": 0.85,
|
||||
"minecraft:particle_motion_dynamic": {
|
||||
"linear_acceleration": [0, "0.75+(0.75*math.round(v.particle_random_4))", 0],
|
||||
"linear_drag_coefficient": 2
|
||||
},
|
||||
"minecraft:particle_appearance_billboard": {
|
||||
"size": [0.4, 0.4],
|
||||
"facing_camera_mode": "rotate_xyz",
|
||||
"uv": {
|
||||
"texture_width": 16,
|
||||
"texture_height": 192,
|
||||
"flipbook": {
|
||||
"base_UV": [0, 160],
|
||||
"size_UV": [16, 16],
|
||||
"step_UV": [0, -16],
|
||||
"frames_per_second": 28,
|
||||
"max_frame": 7
|
||||
}
|
||||
}
|
||||
},
|
||||
"minecraft:particle_appearance_lighting": {},
|
||||
"minecraft:particle_appearance_tinting": {
|
||||
"color": {
|
||||
"interpolant": "v.smoke_color",
|
||||
"gradient": {
|
||||
"0.0": "#FFE8E8E8",
|
||||
"1.0": "#FFC1C1C1"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+57
@@ -0,0 +1,57 @@
|
||||
{
|
||||
"format_version": "1.10.0",
|
||||
"particle_effect": {
|
||||
"description": {
|
||||
"identifier": "cobblemon:greninja_cloud_fade",
|
||||
"basic_render_parameters": {
|
||||
"material": "particles_alpha",
|
||||
"texture": "textures/particle/vanilla/big_smoke_white"
|
||||
}
|
||||
},
|
||||
"components": {
|
||||
"minecraft:emitter_rate_instant": {
|
||||
"num_particles": 1
|
||||
},
|
||||
"minecraft:emitter_lifetime_once": {
|
||||
"active_time": 1
|
||||
},
|
||||
"minecraft:emitter_shape_point": {},
|
||||
"minecraft:particle_lifetime_expression": {
|
||||
"max_lifetime": 0.2
|
||||
},
|
||||
"minecraft:particle_initial_spin": {
|
||||
"rotation": "v.smoke_rotation"
|
||||
},
|
||||
"minecraft:particle_initial_speed": 0.85,
|
||||
"minecraft:particle_motion_dynamic": {
|
||||
"linear_acceleration": [0, 1.5, 0],
|
||||
"linear_drag_coefficient": 2
|
||||
},
|
||||
"minecraft:particle_appearance_billboard": {
|
||||
"size": [0.3, 0.3],
|
||||
"facing_camera_mode": "rotate_xyz",
|
||||
"uv": {
|
||||
"texture_width": 16,
|
||||
"texture_height": 192,
|
||||
"flipbook": {
|
||||
"base_UV": [0, 80],
|
||||
"size_UV": [16, 16],
|
||||
"step_UV": [0, 16],
|
||||
"frames_per_second": 32,
|
||||
"max_frame": 7
|
||||
}
|
||||
}
|
||||
},
|
||||
"minecraft:particle_appearance_lighting": {},
|
||||
"minecraft:particle_appearance_tinting": {
|
||||
"color": {
|
||||
"interpolant": "v.smoke_color",
|
||||
"gradient": {
|
||||
"0.0": "#FFE8E8E8",
|
||||
"1.0": "#FFC1C1C1"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+82
@@ -0,0 +1,82 @@
|
||||
{
|
||||
"format_version": "1.10.0",
|
||||
"particle_effect": {
|
||||
"description": {
|
||||
"identifier": "cobblemon:greninja_smoke",
|
||||
"basic_render_parameters": {
|
||||
"material": "particles_alpha",
|
||||
"texture": "textures/particle/vanilla/generic"
|
||||
}
|
||||
},
|
||||
"curves": {
|
||||
"variable.smokesize": {
|
||||
"type": "linear",
|
||||
"input": "v.particle_age",
|
||||
"horizontal_range": "v.particle_lifetime",
|
||||
"nodes": [0.37, 0.85, 1, 1, 1, 0.88, 0.55, 0]
|
||||
}
|
||||
},
|
||||
"events": {
|
||||
"cloud": {
|
||||
"particle_effect": {
|
||||
"effect": "cobblemon:greninja_cloud",
|
||||
"type": "particle"
|
||||
}
|
||||
}
|
||||
},
|
||||
"components": {
|
||||
"minecraft:emitter_rate_steady": {
|
||||
"spawn_rate": 150,
|
||||
"max_particles": 200
|
||||
},
|
||||
"minecraft:emitter_lifetime_once": {
|
||||
"active_time": 0.15
|
||||
},
|
||||
"minecraft:emitter_lifetime_events": {
|
||||
"creation_event": "cloud"
|
||||
},
|
||||
"minecraft:emitter_shape_disc": {
|
||||
"offset": [0, "v.particle_random_4*0.75", 0],
|
||||
"radius": 0.35,
|
||||
"direction": "outwards"
|
||||
},
|
||||
"minecraft:particle_lifetime_expression": {
|
||||
"max_lifetime": "math.random(0.55,0.65)"
|
||||
},
|
||||
"minecraft:particle_initial_spin": {
|
||||
"rotation": "math.round(v.particle_random_4*3)*90"
|
||||
},
|
||||
"minecraft:particle_initial_speed": 2,
|
||||
"minecraft:particle_motion_dynamic": {
|
||||
"linear_acceleration": [0, "math.random(0.75,1)", 0],
|
||||
"linear_drag_coefficient": 0.85
|
||||
},
|
||||
"minecraft:particle_appearance_billboard": {
|
||||
"size": ["(0.13*v.smokesize)-(v.particle_random_3*0.07)", "(0.13*v.smokesize)-(v.particle_random_3*0.07)"],
|
||||
"facing_camera_mode": "rotate_xyz",
|
||||
"uv": {
|
||||
"texture_width": 64,
|
||||
"texture_height": 8,
|
||||
"flipbook": {
|
||||
"base_UV": [56, 0],
|
||||
"size_UV": [8, 8],
|
||||
"step_UV": [-8, 0],
|
||||
"frames_per_second": 10,
|
||||
"max_frame": 8
|
||||
}
|
||||
}
|
||||
},
|
||||
"minecraft:particle_appearance_lighting": {},
|
||||
"minecraft:particle_appearance_tinting": {
|
||||
"color": {
|
||||
"interpolant": "v.particle_random_3",
|
||||
"gradient": {
|
||||
"0.0": "#FFBDBDBD",
|
||||
"0.5": "#FF8F8F8F",
|
||||
"1.0": "#FF666666"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+592
-266
@@ -5,396 +5,722 @@
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"rotation": [-5, 0, 0],
|
||||
"position": [0, "(math.sin(q.anim_time*90*2+90)*1-1)*0.15", 0]
|
||||
"position": [0, 0, -8]
|
||||
},
|
||||
"head": {
|
||||
"rotation": ["5-(math.sin(q.anim_time*90*2+90)*1-0.5)*0.5", 0, 0]
|
||||
"rotation": ["72.5-math.sin(q.anim_time*90*2-180)*1.25", -2.5, -10],
|
||||
"position": [0, 0, 0]
|
||||
},
|
||||
"neck2": {
|
||||
"rotation": ["7.5-math.sin(q.anim_time*90*2-90)", -5, -2.5],
|
||||
"position": [0, -0.4, 0]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": ["-2.5-(math.sin(q.anim_time*90*2+90)*1-1)*1", 0, 0]
|
||||
"rotation": [0, 52.5, 0]
|
||||
},
|
||||
"tail2": {
|
||||
"rotation": ["5+(math.sin(q.anim_time*90*2+90)*1-1)*1", 0, 0]
|
||||
"rotation": [0, -45, 0],
|
||||
"position": [0.7, 0, -0.55]
|
||||
},
|
||||
"tail3": {
|
||||
"rotation": [2.5, 0, 0]
|
||||
"rotation": [0, -70, 0],
|
||||
"position": [1.6, 0, -1.2]
|
||||
},
|
||||
"jaw": {
|
||||
"rotation": ["5-(math.sin(q.anim_time*90*2+90)*1-0.5)*1", 0, 0]
|
||||
"tail4": {
|
||||
"rotation": [0, -55, 0],
|
||||
"position": [0.95, 0, -0.8]
|
||||
},
|
||||
"tail5": {
|
||||
"rotation": [0, "57.5-math.sin(q.anim_time*90*2-120)*0.75", 0],
|
||||
"position": [-1, 0, -0.75]
|
||||
},
|
||||
"tail6": {
|
||||
"rotation": [0, "57.5-math.sin(q.anim_time*90*2-180)", 0],
|
||||
"position": [-0.7, 0, -0.8]
|
||||
},
|
||||
"tail7": {
|
||||
"rotation": ["5-math.sin(q.anim_time*90-240)*2", "45-math.sin(q.anim_time*90*2-240)*1.25", 0],
|
||||
"position": [-0.3, 0, -0.1]
|
||||
},
|
||||
"tail8": {
|
||||
"rotation": ["12.5-math.sin(q.anim_time*90-300)*2.5", "37.5-math.sin(q.anim_time*90*2-300)*1.5", 7.5],
|
||||
"position": [0, 0.25, 0]
|
||||
},
|
||||
"tail9": {
|
||||
"rotation": ["22.5-math.sin(q.anim_time*90-360)*3", "40-math.sin(q.anim_time*90*2-360)*2", 5]
|
||||
},
|
||||
"tail_rattle": {
|
||||
"rotation": ["22.5-math.sin(q.anim_time*90-30)*4", "-math.sin(q.anim_time*90*2-10)*4", 0]
|
||||
},
|
||||
"tail_rattle2": {
|
||||
"rotation": ["6.4956-math.sin(q.anim_time*90-70)*6", "-math.sin(q.anim_time*90*2-70)*6", 0]
|
||||
},
|
||||
"coiled_body": {
|
||||
"scale": 0
|
||||
},
|
||||
"neck": {
|
||||
"rotation": ["-70-math.sin(q.anim_time*90*2)*0.5", 17.5, -2.5],
|
||||
"position": [0.2, -0.4, -0.3]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.ekans.summary_idle": {
|
||||
"animation.ekans.battle_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"ekans": {
|
||||
"position": [0, -0.5, 0]
|
||||
},
|
||||
"body": {
|
||||
"position": [0, 9, 12]
|
||||
"position": [0, 6, 0]
|
||||
},
|
||||
"head": {
|
||||
"rotation": ["7.5-math.sin(q.anim_time*90*2-45)*0.5", 0, 0]
|
||||
"rotation": ["35-math.sin(q.anim_time*90*3-180)*2", -11.5, -8.5],
|
||||
"position": [0.75, 0, -1.1]
|
||||
},
|
||||
"neck2": {
|
||||
"rotation": ["42.5-math.sin(q.anim_time*90*3-60)*1.25", -7.5, -5],
|
||||
"position": [0, -0.3, 0]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": [-37.5, 0, 0]
|
||||
"rotation": [90, -32, -272.5],
|
||||
"position": [-3, -0.5, 1],
|
||||
"scale": 0
|
||||
},
|
||||
"tail2": {
|
||||
"rotation": [91.18096, -64.66751, -112.80195]
|
||||
"rotation": [-176.62147, -67.38079, 169.49348]
|
||||
},
|
||||
"tail3": {
|
||||
"rotation": [56.22229, -69.76781, -69.82589]
|
||||
"rotation": [160, -85, -180]
|
||||
},
|
||||
"tail8": {
|
||||
"rotation": [77.80887, 32.27264, 55.07287],
|
||||
"position": [-1, -1.1, -2]
|
||||
},
|
||||
"tail9": {
|
||||
"rotation": [18.4215, -23.19625, -12.13932]
|
||||
},
|
||||
"tail4": {
|
||||
"rotation": [0, -65, 0]
|
||||
"rotation": [87.73292, -75.69796, -92.26708]
|
||||
},
|
||||
"tail5": {
|
||||
"rotation": [0, "-52.5+math.sin(q.anim_time*90*2-120)*1", 0]
|
||||
"rotation": [-2.5, -87.5, 0]
|
||||
},
|
||||
"tail6": {
|
||||
"rotation": ["8.5+(math.sin(q.anim_time*90*2+90)*1-1)*0.5", "-57.5+math.sin(q.anim_time*90*2-90)*0.5", "-math.sin(q.anim_time*90*2)*0.25"]
|
||||
"rotation": [0, -62.5, 0]
|
||||
},
|
||||
"rattle": {
|
||||
"rotation": [40, "-10-math.sin(q.anim_time*90*32)*2", 0]
|
||||
},
|
||||
"rattle2": {
|
||||
"rotation": [12.5, "-math.sin(q.anim_time*90*32-30)*2", 0]
|
||||
},
|
||||
"rattle3": {
|
||||
"rotation": [12.5, "-math.sin(q.anim_time*90*32-30*2)*2", 0]
|
||||
},
|
||||
"rattle4": {
|
||||
"rotation": [5, "-math.sin(q.anim_time*90*32-30*3)*2", 0]
|
||||
},
|
||||
"rattle5": {
|
||||
"rotation": [5, "-math.sin(q.anim_time*90*32-30*4)*2", 0]
|
||||
"tail7": {
|
||||
"rotation": [-1.41397, -67.50536, -1.13438]
|
||||
},
|
||||
"jaw": {
|
||||
"rotation": ["5-math.sin(q.anim_time*90*2-45)*1", 0, 0]
|
||||
"rotation": ["12.5-math.sin(q.anim_time*90*3-150)*1.5", 0, 0],
|
||||
"position": [0, -0.55, 0.25]
|
||||
},
|
||||
"coiled_body": {
|
||||
"rotation": [0, "30-math.sin(q.anim_time*90*3-120)*0.25", 0],
|
||||
"position": [0, 0, -5]
|
||||
},
|
||||
"coiled_body_top": {
|
||||
"rotation": ["-math.sin(q.anim_time*90*3-60)*0.5", "math.sin(q.anim_time*90*3-60)*0.25", "-2.5-math.sin(q.anim_time*90*1.5+45)*0.5"]
|
||||
},
|
||||
"tail_rattle2": {
|
||||
"rotation": [9.09308, -27.20461, 4.52273]
|
||||
},
|
||||
"head_ai": {
|
||||
"rotation": [0, -5, 5]
|
||||
},
|
||||
"neck": {
|
||||
"rotation": ["-67.5-math.sin(q.anim_time*90*3)", 27.5, "-6.5+math.sin(q.anim_time*90*1.5-90)*1.5"],
|
||||
"position": [-2, 0, 1.5]
|
||||
},
|
||||
"coiled_tail": {
|
||||
"rotation": ["25+math.sin(q.anim_time*90*1.5-30)*1.5", "-10+math.sin(q.anim_time*90*12-30)*0.75", 7.5]
|
||||
},
|
||||
"coiled_tail2": {
|
||||
"rotation": ["27.5+math.sin(q.anim_time*90*1.5-60)*2", "-22.5+math.sin(q.anim_time*90*12-90)*2.25", 0]
|
||||
},
|
||||
"coiled_tail_rattle": {
|
||||
"rotation": ["27.5+math.sin(q.anim_time*90*1.5-90)*3", "-12.5+math.sin(q.anim_time*90*24-150)*3", -2.5]
|
||||
},
|
||||
"coiled_tail_rattle2": {
|
||||
"rotation": ["math.sin(q.anim_time*90*1.5-120)*3", "math.sin(q.anim_time*90*24-210)*6", 0]
|
||||
},
|
||||
"coiled_tail_rattle3": {
|
||||
"rotation": ["math.sin(q.anim_time*90*1.5-150)*4", "math.sin(q.anim_time*90*24-270)*8", 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.ekans.faint": {
|
||||
"animation_length": 3,
|
||||
"animation.ekans.ground_walk": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"rotation": {
|
||||
"0.0": [-32.5, 0, 0],
|
||||
"0.05": [-42.5, 0, 0],
|
||||
"0.2": [-65.02089, -1.05627, 2.26603],
|
||||
"0.35": [-90, 0, 5],
|
||||
"0.7": [-97.10022, 0, 5],
|
||||
"1.0": [-102.1, 0, 5],
|
||||
"1.1": [-95.59, -0.25, 4.03],
|
||||
"1.3": [-8.5468, -1.25885, 0.16067],
|
||||
"1.45": [-7.0468, -1.25885, 0.16067]
|
||||
},
|
||||
"position": {
|
||||
"0.0": [0, "-4.4+(math.sin(q.anim_time*90*2+90)*1-1)*0.15", -1.6],
|
||||
"0.05": [0, "-2.6+(math.sin(q.anim_time*90*2+90)*1-1)*0.15", -1.1],
|
||||
"0.2": [0, "-3.6+(math.sin(q.anim_time*90*2+90)*1-1)*0.15", -2.7],
|
||||
"0.3": [0, -4.83, -6.77],
|
||||
"0.35": [0, "-4.9+(math.sin(q.anim_time*90*2+90)*1-1)*0.15", -8.8],
|
||||
"0.7": [0, "-3.8+(math.sin(q.anim_time*90*2+90)*1-1)*0.15", -9.6],
|
||||
"1.0": [0, "-3.4+(math.sin(q.anim_time*90*2+90)*1-1)*0.15", -10.2],
|
||||
"1.1": [0, -4, -9.26],
|
||||
"1.15": [0, "-5.6+(math.sin(q.anim_time*90*2+90)*1-1)*0.15", -5.73],
|
||||
"1.25": [0, -4.59, -2.31],
|
||||
"1.3": [0, "-2.45+(math.sin(q.anim_time*90*2+90)*1-1)*0.15", -0.7],
|
||||
"1.45": [0, "-2.25+(math.sin(q.anim_time*90*2+90)*1-1)*0.05", -0.7]
|
||||
}
|
||||
"position": ["-math.sin(q.anim_time*90*3-60)*3", 0, -13]
|
||||
},
|
||||
"head": {
|
||||
"rotation": {
|
||||
"0.0": ["65-(math.sin(q.anim_time*90*2+90)*1-0.5)*0.5", 0, 0],
|
||||
"0.1": ["75-(math.sin(q.anim_time*90*2+90)*1-0.5)*0.5", 0, 0],
|
||||
"0.25": ["15.1228-(math.sin(q.anim_time*90*2+90)*1-0.5)*0.5", 7.24656, 1.9384],
|
||||
"0.4": ["-21.1683-(math.sin(q.anim_time*90*2+90)*1-0.5)*0.5", 18.759, -7.06381],
|
||||
"0.5": [-22.32668, 16.91862, -6.3202],
|
||||
"0.9": ["-25.7603-(math.sin(q.anim_time*90*2+90)*1-0.5)*0.5", -13.61143, 6.36351],
|
||||
"0.95": ["-26.04-(math.sin(q.anim_time*90*2+90)*1-0.5)*0.5", -15.87438, 7.46234],
|
||||
"1.0": ["-26.04-(math.sin(q.anim_time*90*2+90)*1-0.5)*0.5", -15.87, 7.46],
|
||||
"1.15": ["-51.04-(math.sin(q.anim_time*90*2+90)*1-0.5)*0.5", -15.87, 7.46],
|
||||
"1.3": ["-51.04-(math.sin(q.anim_time*90*2+90)*1-0.5)*0.5", -15.87, 7.46],
|
||||
"1.35": ["19.4806-(math.sin(q.anim_time*90*2+90)*1-0.5)*0.5", -11.956, -14.52],
|
||||
"1.4": ["10.9676-(math.sin(q.anim_time*90*2+90)*1-0.5)*0.5", -19.92467, 13.66498],
|
||||
"1.45": ["20.3399-(math.sin(q.anim_time*90*2+90)*1-0.5)*0.1", -14.86025, -1.19814]
|
||||
},
|
||||
"position": {
|
||||
"1.3": [0, 0, 0],
|
||||
"1.45": [0, 0.5, 0]
|
||||
}
|
||||
"rotation": [55, "math.sin(q.anim_time*90*3+270)*16", "math.sin(q.anim_time*90*3+240)*10"]
|
||||
},
|
||||
"neck2": {
|
||||
"rotation": [-25, "math.sin(q.anim_time*90*3+180)*16", 0]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": {
|
||||
"0.0": ["5-(math.sin(q.anim_time*90*2+90)*1-1)*1", 0, 0],
|
||||
"0.05": ["-7.5-(math.sin(q.anim_time*90*2+90)*1-1)*1", 0, 0],
|
||||
"0.2": ["-7.5-(math.sin(q.anim_time*90*2+90)*1-1)*1", 0, 0],
|
||||
"0.35": ["7.5-(math.sin(q.anim_time*90*2+90)*1-1)*1", 0, 0],
|
||||
"1.0": ["7.5-(math.sin(q.anim_time*90*2+90)*1-1)*1", 0, 0],
|
||||
"1.15": ["7.5-(math.sin(q.anim_time*90*2+90)*1-1)*1", 0, 0],
|
||||
"1.35": ["7.5-(math.sin(q.anim_time*90*2+90)*1-1)*0.25", 0, 0]
|
||||
}
|
||||
"rotation": [0, "math.sin(q.anim_time*90*3)*14", 0]
|
||||
},
|
||||
"tail2": {
|
||||
"rotation": {
|
||||
"0.0": ["20+(math.sin(q.anim_time*90*2+90)*1-1)*1", 0, 0],
|
||||
"0.05": ["32.5+(math.sin(q.anim_time*90*2+90)*1-1)*1", 0, 0],
|
||||
"0.2": ["45+(math.sin(q.anim_time*90*2+90)*1-1)*1", 0, 0],
|
||||
"0.35": ["55+(math.sin(q.anim_time*90*2+90)*1-1)*1", 0, 0],
|
||||
"0.95": ["60+(math.sin(q.anim_time*90*2+90)*1-1)*1", 0, 0],
|
||||
"1.0": ["60+(math.sin(q.anim_time*90*2+90)*1-1)*1", 0, 0],
|
||||
"1.1": [50.55, 0, 0],
|
||||
"1.3": ["(math.sin(q.anim_time*90*2+90)*1-1)*0.5", 0, 0]
|
||||
}
|
||||
"rotation": [0, "math.sin(q.anim_time*90*3-60)*8", 0]
|
||||
},
|
||||
"tail3": {
|
||||
"rotation": [0, "math.sin(q.anim_time*90*3-120)*12", 0]
|
||||
},
|
||||
"tail4": {
|
||||
"rotation": [0, "math.sin(q.anim_time*90*3-180)*16", 0]
|
||||
},
|
||||
"tail5": {
|
||||
"rotation": [0, "math.sin(q.anim_time*90*3-210)*16", 0]
|
||||
},
|
||||
"tail6": {
|
||||
"rotation": [0, "math.sin(q.anim_time*90*3-240)*14", 0]
|
||||
},
|
||||
"tail7": {
|
||||
"rotation": [0, "math.sin(q.anim_time*90*3-270)*12", 0]
|
||||
},
|
||||
"tail8": {
|
||||
"rotation": [0, "math.sin(q.anim_time*90*3-300)*14", 0]
|
||||
},
|
||||
"tail9": {
|
||||
"rotation": [0, "math.sin(q.anim_time*90*3-330)*18", 0]
|
||||
},
|
||||
"tail_rattle": {
|
||||
"rotation": [0, "math.sin(q.anim_time*90*3-10)*20", 0]
|
||||
},
|
||||
"coiled_body": {
|
||||
"scale": 0
|
||||
},
|
||||
"neck": {
|
||||
"rotation": [-30, "math.sin(q.anim_time*90*3+60)*20", 0],
|
||||
"position": [0, 0, 0.25]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.ekans.ground_run": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"position": ["-math.sin(q.anim_time*90*5-60)*3", 0, -13]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [0, "math.sin(q.anim_time*90*5+270)*18", 0]
|
||||
},
|
||||
"neck2": {
|
||||
"rotation": [0, "math.sin(q.anim_time*90*5+180)*16", 0]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": [0, "math.sin(q.anim_time*90*5)*16", 0]
|
||||
},
|
||||
"tail2": {
|
||||
"rotation": [0, "math.sin(q.anim_time*90*5-60)*12", 0]
|
||||
},
|
||||
"tail3": {
|
||||
"rotation": [0, "math.sin(q.anim_time*90*5-120)*14", 0]
|
||||
},
|
||||
"tail4": {
|
||||
"rotation": [0, "math.sin(q.anim_time*90*5-180)*16", 0]
|
||||
},
|
||||
"tail5": {
|
||||
"rotation": [0, "math.sin(q.anim_time*90*5-210)*18", 0]
|
||||
},
|
||||
"tail6": {
|
||||
"rotation": [0, "math.sin(q.anim_time*90*5-240)*18", 0]
|
||||
},
|
||||
"tail7": {
|
||||
"rotation": [0, "math.sin(q.anim_time*90*5-270)*16", 0]
|
||||
},
|
||||
"tail8": {
|
||||
"rotation": [0, "math.sin(q.anim_time*90*5-300)*14", 0]
|
||||
},
|
||||
"tail9": {
|
||||
"rotation": [0, "math.sin(q.anim_time*90*5-330)*12", 0]
|
||||
},
|
||||
"tail_rattle": {
|
||||
"rotation": [0, "math.sin(q.anim_time*90*5-10)*18", 0]
|
||||
},
|
||||
"coiled_body": {
|
||||
"scale": 0
|
||||
},
|
||||
"neck": {
|
||||
"rotation": [0, "math.sin(q.anim_time*90*5+60)*18", 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.ekans.snake_ground_walk": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"position": ["-q.r.yaw_change(3)*1", 0, 0]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [0, 0, "q.r.yaw_change(0)*5"],
|
||||
"position": ["-q.r.yaw_change(0)*-0.2", "q.r.yaw_change(0)*0.25", 0]
|
||||
},
|
||||
"neck2": {
|
||||
"rotation": [0, "-q.r.yaw_change(0)*-15", 0],
|
||||
"position": ["-q.r.yaw_change(0)*0.3", 0, 0]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": [0, "-q.r.yaw_change(3)*-7.5", 0],
|
||||
"position": ["-q.r.yaw_change(3)*-0.15", 0, "math.abs(q.r.yaw_change(3)*0.5)"]
|
||||
},
|
||||
"tail2": {
|
||||
"rotation": [0, "-q.r.yaw_change(5)*5", 0]
|
||||
},
|
||||
"tail3": {
|
||||
"rotation": [0, "-q.r.yaw_change(10)*2.5", 0]
|
||||
},
|
||||
"tail4": {
|
||||
"rotation": [0, "-q.r.yaw_change(12)*7.5", 0]
|
||||
},
|
||||
"tail5": {
|
||||
"rotation": [0, "-q.r.yaw_change(15)*7.5", 0]
|
||||
},
|
||||
"tail6": {
|
||||
"rotation": [0, "-q.r.yaw_change(17)*10", 0]
|
||||
},
|
||||
"tail7": {
|
||||
"rotation": [0, "-q.r.yaw_change(20)*7.5", 0]
|
||||
},
|
||||
"tail8": {
|
||||
"rotation": [0, "-q.r.yaw_change(22)*5", 0]
|
||||
},
|
||||
"tail9": {
|
||||
"rotation": [0, "-q.r.yaw_change(24)*5", 0]
|
||||
},
|
||||
"tail_rattle": {
|
||||
"rotation": [0, "-q.r.yaw_change(26)*2.5", 0]
|
||||
},
|
||||
"neck": {
|
||||
"rotation": [0, "-q.r.yaw_change(0)*-25", 0],
|
||||
"position": ["-q.r.yaw_change(0)*0.25", 0, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.ekans.snake_ground_run": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"position": ["-q.r.yaw_change(3)*2", 0, 0]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [0, "-q.r.yaw_change(0)*-10", 0],
|
||||
"position": ["-q.r.yaw_change(0)*-0.2", "q.r.yaw_change(0)*0.25", 0]
|
||||
},
|
||||
"neck2": {
|
||||
"rotation": [0, "-q.r.yaw_change(0)*-15", 0],
|
||||
"position": ["-q.r.yaw_change(0)*0.25", 0, 0]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": [0, "-q.r.yaw_change(3)*-10", 0],
|
||||
"position": ["-q.r.yaw_change(3)*-0.15", 0, 0]
|
||||
},
|
||||
"tail2": {
|
||||
"rotation": [0, "-q.r.yaw_change(5)*5", 0]
|
||||
},
|
||||
"tail3": {
|
||||
"rotation": [0, "-q.r.yaw_change(10)*5", 0]
|
||||
},
|
||||
"tail4": {
|
||||
"rotation": [0, "-q.r.yaw_change(12)*7.5", 0]
|
||||
},
|
||||
"tail5": {
|
||||
"rotation": [0, "-q.r.yaw_change(15)*10", 0]
|
||||
},
|
||||
"tail6": {
|
||||
"rotation": [0, "-q.r.yaw_change(17)*7.5", 0]
|
||||
},
|
||||
"tail7": {
|
||||
"rotation": [0, "-q.r.yaw_change(20)*10", 0]
|
||||
},
|
||||
"tail8": {
|
||||
"rotation": [0, "-q.r.yaw_change(22)*5", 0]
|
||||
},
|
||||
"tail9": {
|
||||
"rotation": [0, "-q.r.yaw_change(24)*5", 0]
|
||||
},
|
||||
"tail_rattle": {
|
||||
"rotation": [0, "-q.r.yaw_change(26)*2.5", 0]
|
||||
},
|
||||
"neck": {
|
||||
"rotation": [0, "-q.r.yaw_change(0)*-35", 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.ekans.cry": {
|
||||
"animation_length": 1.5,
|
||||
"bones": {
|
||||
"head": {
|
||||
"rotation": {
|
||||
"0.0": [7.5, 0, 0],
|
||||
"0.05": [17.5, 0, 0],
|
||||
"0.2": [27.5, 0, 0],
|
||||
"0.7": [35, 0, 0],
|
||||
"1.0": [35, 0, 0],
|
||||
"1.6": [34.96463, -9.99962, 0.08301],
|
||||
"2.0": [0.01002, 0.32522, 0.69041]
|
||||
"0.0": [0, 0, 0],
|
||||
"0.0833": {
|
||||
"pre": [5, 0, 0],
|
||||
"post": [5, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.2083": {
|
||||
"post": ["-40-math.sin(q.anim_time*90*30)*1.5", 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.625": {
|
||||
"post": [-35, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"1.125": {
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"1.375": [0, 0, 0]
|
||||
},
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.0833": [0, 0, 0],
|
||||
"0.2083": {
|
||||
"pre": [0, 0, -0.25],
|
||||
"post": [0, 0, -0.25],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"1.125": {
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"1.375": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"jaw": {
|
||||
"rotation": {
|
||||
"0.0": ["5-(math.sin(q.anim_time*90*2+90)*1-0.5)*1", 0, 0],
|
||||
"0.05": ["-35-(math.sin(q.anim_time*90*2+90)*1-0.5)*1", 0, 0],
|
||||
"0.5": ["27.5-(math.sin(q.anim_time*90*2+90)*1-0.5)*1", 0, 0],
|
||||
"0.85": ["27.5-(math.sin(q.anim_time*90*2+90)*1-0.5)*1", 0, 0],
|
||||
"1.1": ["-25-(math.sin(q.anim_time*90*2+90)*1-0.5)*1", 0, 0],
|
||||
"1.15": ["-15-(math.sin(q.anim_time*90*2+90)*1-0.5)*0.5", 0, 0]
|
||||
"0.0": [0, 0, 0],
|
||||
"0.0833": {
|
||||
"pre": [-5, 0, 0],
|
||||
"post": [-5, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.2083": {
|
||||
"post": [37.5, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.5833": {
|
||||
"post": [11.5, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.7083": {
|
||||
"post": [7.26, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.875": {
|
||||
"post": [1, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"1.375": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"eyelid_right": {
|
||||
"position": {
|
||||
"0.0": [-0.1, 0, 0],
|
||||
"0.1": [-0.1, 0, 0],
|
||||
"0.15": [0, 0, 0],
|
||||
"1.1": [0, 0, 0],
|
||||
"1.15": [-0.1, 0, 0]
|
||||
}
|
||||
},
|
||||
"eyelid_left": {
|
||||
"position": {
|
||||
"0.0": [0.1, 0, 0],
|
||||
"0.1": [0.1, 0, 0],
|
||||
"0.15": [0, 0, 0],
|
||||
"1.1": [0, 0, 0],
|
||||
"1.15": [0.1, 0, 0]
|
||||
}
|
||||
},
|
||||
"tail4": {
|
||||
"neck2": {
|
||||
"rotation": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.5": [22.5, 0, 0],
|
||||
"0.65": [25, 0, 0],
|
||||
"0.95": [32.5, 0, 0],
|
||||
"1.0": [32.5, 0, 0],
|
||||
"1.35": [39.56059, -8.33248, 5.56948],
|
||||
"2.15": [0.00946, 0.60916, 0.36323]
|
||||
"0.0833": {
|
||||
"pre": [7.5, 0, 0],
|
||||
"post": [7.5, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.2083": {
|
||||
"post": [-5, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.5": [-5, 0, 0],
|
||||
"1.125": {
|
||||
"pre": [0, 0, 0],
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"1.375": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"tail5": {
|
||||
"rotation": {
|
||||
"0.0": [5, 0, 0],
|
||||
"0.1": [15, 0, 0],
|
||||
"0.2": [25, 0, 0],
|
||||
"0.5": [42.82744, -9.23501, -8.46088],
|
||||
"0.55": [45.68718, -8.80348, -8.90928],
|
||||
"0.65": [48.18718, -8.80348, -8.90928],
|
||||
"1.0": [47.64681, 4.67606, 5.90982],
|
||||
"1.45": [54.85234, 2.05205, 11.11128],
|
||||
"2.3": [-0.0412, 8.51931, 0.3767]
|
||||
}
|
||||
},
|
||||
"tail6": {
|
||||
"neck": {
|
||||
"rotation": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.05": [0, 0, 0],
|
||||
"0.3": [22.5, 0, 0],
|
||||
"0.65": [45, 0, 0],
|
||||
"1.0": [45, 0, 0],
|
||||
"1.55": [51.77676, 2.80672, 7.84455],
|
||||
"2.45": [-1.96924, -1.43601, -6.55108]
|
||||
}
|
||||
},
|
||||
"rattle": {
|
||||
"rotation": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.05": [-10, 0, 0],
|
||||
"0.75": [15, 0, 0],
|
||||
"1.0": [15, 0, 0],
|
||||
"1.65": [20, 10, 5],
|
||||
"2.55": [0, -2.5, -2.5]
|
||||
}
|
||||
},
|
||||
"rattle4": {
|
||||
"rotation": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.1": [-10, 0, 0],
|
||||
"0.55": [10, 0, 0],
|
||||
"1.0": [15, 0, 0],
|
||||
"1.75": [20, 10, 5],
|
||||
"2.65": [2.5, -5, 0]
|
||||
}
|
||||
},
|
||||
"rattle2": {
|
||||
"rotation": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.05": [-20, 0, 0],
|
||||
"1.0": [20, 0, 0],
|
||||
"1.25": [15, 0, 0],
|
||||
"1.9": [20, 10, 5],
|
||||
"2.55": [-2.5, -2.5, -2.5]
|
||||
}
|
||||
},
|
||||
"rattle3": {
|
||||
"rotation": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.05": [-20, 0, 0],
|
||||
"1.25": [25, 0, 0],
|
||||
"1.5": [15, 0, 0],
|
||||
"2.15": [20, 10, 5],
|
||||
"2.55": [0, -2.5, -2.5]
|
||||
}
|
||||
},
|
||||
"rattle5": {
|
||||
"rotation": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.1": [-10, 0, 0],
|
||||
"0.8": [20, 0, 0],
|
||||
"1.25": [10, 0, 0],
|
||||
"2.0": [15, 10, 5],
|
||||
"2.65": [2.5, -5, 0]
|
||||
"0.0833": {
|
||||
"pre": [2.5, 0, 0],
|
||||
"post": [2.5, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.2083": {
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.5": [0, 0, 0],
|
||||
"1.125": {
|
||||
"pre": [0, 0, 0],
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"1.375": [0, 0, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"sound_effects": {
|
||||
"0.1667": {
|
||||
"effect": "pokemon.ekans.cry"
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.ekans.sleep": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"ekans": {
|
||||
"position": [0, 3, 7]
|
||||
"body": {
|
||||
"position": [0, 6, 0]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [42.91333, 68.7346, 43.12956]
|
||||
"rotation": ["17.5-math.sin(q.anim_time*90-180)", -49, -6]
|
||||
},
|
||||
"jaw": {
|
||||
"rotation": [-10, 0, 0]
|
||||
},
|
||||
"eyelid_right": {
|
||||
"position": [-0.1, 0, 0]
|
||||
},
|
||||
"eyelid_left": {
|
||||
"position": [0.1, 0, 0]
|
||||
"neck2": {
|
||||
"rotation": ["15-math.sin(q.anim_time*90-60)*0.75", -50, -7.5],
|
||||
"position": [-0.25, 0, 0.5]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": [-7.5, 55, 0]
|
||||
"rotation": [90, -32, -272.5],
|
||||
"position": [-3, -0.5, 1],
|
||||
"scale": 0
|
||||
},
|
||||
"tail2": {
|
||||
"rotation": [-3.9416, -55.3577, -4.33386]
|
||||
"rotation": [-176.62147, -67.38079, 169.49348]
|
||||
},
|
||||
"tail3": {
|
||||
"rotation": [20.41084, -54.0129, -21.47388]
|
||||
"rotation": [160, -85, -180]
|
||||
},
|
||||
"tail8": {
|
||||
"rotation": [77.80887, 32.27264, 55.07287],
|
||||
"position": [-1, -1.1, -2]
|
||||
},
|
||||
"tail9": {
|
||||
"rotation": [18.4215, -23.19625, -12.13932]
|
||||
},
|
||||
"tail4": {
|
||||
"rotation": [0, -62.5, 0]
|
||||
"rotation": [87.73292, -75.69796, -92.26708]
|
||||
},
|
||||
"tail5": {
|
||||
"rotation": [0, -55, 0]
|
||||
"rotation": [-2.5, -87.5, 0]
|
||||
},
|
||||
"tail6": {
|
||||
"rotation": [0, -57.5, 0]
|
||||
"rotation": [0, -62.5, 0]
|
||||
},
|
||||
"rattle": {
|
||||
"rotation": [-7.5, -62.5, 0]
|
||||
"tail7": {
|
||||
"rotation": [-1.41397, -67.50536, -1.13438]
|
||||
},
|
||||
"coiled_body": {
|
||||
"rotation": [0, "-math.sin(q.anim_time*90-120)*0.25", 0],
|
||||
"position": [0, 0, -3]
|
||||
},
|
||||
"coiled_body_top": {
|
||||
"rotation": ["-math.sin(q.anim_time*90-60)*0.5", "math.sin(q.anim_time*90-60)*0.25", "-2.5-math.sin(q.anim_time*90*0.5+45)*0.5"]
|
||||
},
|
||||
"tail_rattle2": {
|
||||
"rotation": [9.09308, -27.20461, 4.52273]
|
||||
},
|
||||
"eyelid_right": {
|
||||
"position": [-1, 0, 0]
|
||||
},
|
||||
"neck": {
|
||||
"rotation": ["-5-math.sin(q.anim_time*90)*0.75", 17.5, "-6.5+math.sin(q.anim_time*90*0.5-90)*0.5"],
|
||||
"position": [-3.5, -0.75, 3.5]
|
||||
},
|
||||
"eyelid_left": {
|
||||
"position": [1, 0, 0]
|
||||
},
|
||||
"coiled_tail": {
|
||||
"rotation": [-2.5, "-40+math.sin(q.anim_time*90-30)", 0],
|
||||
"position": [1, 0, 0]
|
||||
},
|
||||
"coiled_tail2": {
|
||||
"rotation": [0, "-30+math.sin(q.anim_time*90-90)", 0]
|
||||
},
|
||||
"coiled_tail_rattle": {
|
||||
"rotation": [-10, "-27.5+math.sin(q.anim_time*90-150)", 0]
|
||||
},
|
||||
"coiled_tail_rattle2": {
|
||||
"rotation": [5, "math.sin(q.anim_time*90-210)", 0]
|
||||
},
|
||||
"coiled_tail_rattle3": {
|
||||
"rotation": [0, "math.sin(q.anim_time*90-270)", 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.ekans.cry": {
|
||||
"animation_length": 0.95833,
|
||||
"animation.ekans.recoil": {
|
||||
"animation_length": 1,
|
||||
"bones": {
|
||||
"head": {
|
||||
"rotation": {
|
||||
"0.0": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.0833": {
|
||||
"pre": [2.5, 0, 0],
|
||||
"post": [2.5, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.2083": {
|
||||
"post": [5, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.4583": {
|
||||
"post": [-1, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.7083": {
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.0833": {
|
||||
"post": [-5, 0, 0],
|
||||
"0.9583": [0, 0, 0]
|
||||
},
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.0833": [0, 0, 0],
|
||||
"0.2083": {
|
||||
"pre": [0, 0, -0.25],
|
||||
"post": [0, 0, -0.25],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.5833": {
|
||||
"0.4583": {
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.7083": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"jaw": {
|
||||
"rotation": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.0833": {
|
||||
"pre": [-2.5, 0, 0],
|
||||
"post": [-2.5, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.1667": {
|
||||
"post": [15, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.4583": {
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.7083": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"neck2": {
|
||||
"rotation": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.0833": {
|
||||
"pre": [15, 0, 0],
|
||||
"post": [15, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.2083": {
|
||||
"post": [7.5, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.4583": {
|
||||
"post": [-2.5, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.7083": {
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.9583": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"jaw": {
|
||||
"pupil_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.125": {"pre": [0, 0, 0], "post": [1, 0, 0]},
|
||||
"0.5417": {"pre": [1, 0, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyelid_right": {
|
||||
"position": {
|
||||
"0.0": [-1, 0, 0],
|
||||
"0.125": {"pre": [-1, 0, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"pupil_surprised_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.125": {"pre": [0, 0, 0], "post": [-1, 0, 0]},
|
||||
"0.5417": {"pre": [-1, 0, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"neck": {
|
||||
"rotation": {
|
||||
"0.0": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.0833": {
|
||||
"pre": [0, 0, 0],
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.125": {
|
||||
"post": [12.5, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.1667": {
|
||||
"post": [14.79, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.2083": {
|
||||
"post": [12.5, 0, 0],
|
||||
"post": [-10, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.25": {
|
||||
"post": [14.79, 0, 0],
|
||||
"0.4583": {
|
||||
"post": [-2.5, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.2917": {
|
||||
"post": [12.5, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.3333": {
|
||||
"post": [14.79, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.6667": {
|
||||
"0.7083": {
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.9583": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"eyelid_left": {
|
||||
"position": {
|
||||
"0.0": [1, 0, 0],
|
||||
"0.125": {"pre": [1, 0, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"pupil_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.125": {"pre": [0, 0, 0], "post": [-1, 0, 0]},
|
||||
"0.5417": {"pre": [-1, 0, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"pupil_surprised_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.125": {"pre": [0, 0, 0], "post": [1, 0, 0]},
|
||||
"0.5417": {"pre": [1, 0, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
},
|
||||
"sound_effects": {
|
||||
"0.0833": {
|
||||
"effect": "pokemon.ekans.cry"
|
||||
}
|
||||
},
|
||||
"animation.ekans.walkspeedtest": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"position": [0, 0, "120-q.anim_time*16*1.5"]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.ekans.runspeedtest": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"position": [0, 0, "120-q.anim_time*16*3.5"]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.ekans.blink": {
|
||||
"animation_length": 0.16667,
|
||||
"animation_length": 0.1667,
|
||||
"bones": {
|
||||
"eyelid_right": {
|
||||
"position": {
|
||||
"0.0": [-0.1, 0, 0],
|
||||
"0.125": [-0.1, 0, 0],
|
||||
"0.1667": [0, 0, 0]
|
||||
"0.0": [-1, 0, 0],
|
||||
"0.1667": {"pre": [-1, 0, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyelid_left": {
|
||||
"position": {
|
||||
"0.0": [0.1, 0, 0],
|
||||
"0.125": [0.1, 0, 0],
|
||||
"0.1667": [0, 0, 0]
|
||||
"0.0": [1, 0, 0],
|
||||
"0.1667": {"pre": [1, 0, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+1952
-413
File diff suppressed because it is too large
Load Diff
+8404
-7122
File diff suppressed because it is too large
Load Diff
+15718
File diff suppressed because it is too large
Load Diff
+14958
File diff suppressed because it is too large
Load Diff
+12726
-656
File diff suppressed because it is too large
Load Diff
+353
-449
File diff suppressed because it is too large
Load Diff
+8096
File diff suppressed because it is too large
Load Diff
+12431
File diff suppressed because it is too large
Load Diff
+916
-761
File diff suppressed because it is too large
Load Diff
+966
-764
File diff suppressed because it is too large
Load Diff
+1061
-598
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -833,7 +833,7 @@
|
||||
},
|
||||
"sound_effects": {
|
||||
"0.125": {
|
||||
"effect": "pokemon.diglett_alolan.cry"
|
||||
"effect": "pokemon.diglett.cry"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+171
-130
@@ -1,10 +1,10 @@
|
||||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"animation.poliwag.ground_idle": {
|
||||
"animation.poliwag.ground_idle_placeholder": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"tail1": {
|
||||
"tail": {
|
||||
"rotation": [30, 0, 0]
|
||||
},
|
||||
"tail2": {
|
||||
@@ -15,32 +15,28 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.poliwag.ground_walk": {
|
||||
"animation.poliwag.ground_walk_placeholder": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"position": [0, "0 - (6/11) + math.abs(math.sin(((query.anim_time) - (1/3)) * 90 * 3) * (6/11))", 0]
|
||||
},
|
||||
"head": {
|
||||
"rotation": ["0 - (0 * 1.5)", "math.sin(((query.anim_time) - (0.5/3)) * 90 * 3) * (4 * 1.5)", 0],
|
||||
"position": [0, 0, "0 - (0 / 10)"]
|
||||
},
|
||||
"arm_left": {
|
||||
"rotation": [0, "0 - math.sin(((query.anim_time) - (0.5/3)) * 90 * 3) * 28", "0 - -48"]
|
||||
},
|
||||
"arm_left2": {
|
||||
"rotation": [0, "math.clamp(math.sin(((query.anim_time) + (0.75/3)) * 90 * 3) * 28, 0, 28)", 0]
|
||||
},
|
||||
"arm_right": {
|
||||
"rotation": [0, "0 - math.sin(((query.anim_time) - (0.5/3)) * 90 * 3) * 28", -48]
|
||||
},
|
||||
"arm_right2": {
|
||||
"rotation": [0, "0 - math.clamp(math.sin(((query.anim_time) - (0.75/3)) * 90 * 3) * 28, 0, 28)", 0]
|
||||
},
|
||||
"torso2": {
|
||||
"rotation": [0, "0 - math.sin(((query.anim_time) - (0.5/3)) * 90 * 3) * 4", 0]
|
||||
"body": {
|
||||
"position": [0, "0 - (6/11) + math.abs(math.sin(((query.anim_time) - (1/3)) * 90 * 3) * (6/11))", 0]
|
||||
},
|
||||
"leg_left": {
|
||||
"torso": {
|
||||
"rotation": [0, "0 - math.sin(((query.anim_time) - (0.25/3)) * 90 * 3) * 4", 0]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": [30, 0, 0]
|
||||
},
|
||||
"tail2": {
|
||||
"rotation": [15, 0, 0]
|
||||
},
|
||||
"tail3": {
|
||||
"rotation": [15, 0, 0]
|
||||
},
|
||||
"left_leg": {
|
||||
"rotation": [
|
||||
"0 -math.sin((query.anim_time) * 90 * 3) * 6",
|
||||
0,
|
||||
@@ -48,10 +44,10 @@
|
||||
],
|
||||
"position": [0, "math.clamp(math.sin(((query.anim_time) + (1/3)) * 90 * 3) * 1, 0, 1)", 0]
|
||||
},
|
||||
"leg_left2": {
|
||||
"rotation": ["0 - math.clamp(math.sin(((query.anim_time) - (0.75/3)) * 90 * 3) * 0, -0, 0)", 0, 0]
|
||||
"left_foot": {
|
||||
"rotation": ["0 - math.clamp(math.sin(((query.anim_time) - (0.75/3)) * 90 * 3) * v.foot, -v.foot, 0)", 0, 0]
|
||||
},
|
||||
"leg_right": {
|
||||
"right_leg": {
|
||||
"rotation": [
|
||||
"math.sin((query.anim_time) * 90 * 3) * 6",
|
||||
0,
|
||||
@@ -59,39 +55,19 @@
|
||||
],
|
||||
"position": [0, "math.clamp(math.sin(((query.anim_time) - (1/3)) * 90 * 3) * 1, 0, 1)", 0]
|
||||
},
|
||||
"leg_right2": {
|
||||
"rotation": ["math.clamp(math.sin(((query.anim_time) - (0.75/3)) * 90 * 3) * 0, 0, 0)", 0, 0]
|
||||
},
|
||||
"foot_left": {
|
||||
"rotation": ["0 - math.clamp(math.sin(((query.anim_time) - (0.75/3)) * 90 * 3) * v.foot, -v.foot, 0)", 0, 0]
|
||||
},
|
||||
"foot_right": {
|
||||
"right_foot": {
|
||||
"rotation": ["math.clamp(math.sin(((query.anim_time) - (0.75/3)) * 90 * 3) * v.foot, 0, v.foot)", 0, 0]
|
||||
},
|
||||
"hand_right": {
|
||||
"rotation": [0, -70, 0]
|
||||
},
|
||||
"hand_left": {
|
||||
"rotation": [0, 70, 0]
|
||||
},
|
||||
"tail1": {
|
||||
"rotation": [30, 0, 0]
|
||||
},
|
||||
"tail2": {
|
||||
"rotation": [15, 0, 0]
|
||||
},
|
||||
"tail3": {
|
||||
"rotation": [15, 0, 0]
|
||||
},
|
||||
"torso": {
|
||||
"rotation": [0, "0 - math.sin(((query.anim_time) - (0.25/3)) * 90 * 3) * 4", 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.poliwag.water_idle": {
|
||||
"animation.poliwag.water_idle_placeholder": {
|
||||
"loop": true,
|
||||
"animation_length": 0.4583,
|
||||
"bones": {
|
||||
"tail1": {
|
||||
"body": {
|
||||
"rotation": [15, 0, 0]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": [-15, 0, 0]
|
||||
},
|
||||
"tail2": {
|
||||
@@ -100,27 +76,27 @@
|
||||
"tail3": {
|
||||
"rotation": [15, 0, 0]
|
||||
},
|
||||
"body": {
|
||||
"left_leg": {
|
||||
"rotation": [15, 0, 0]
|
||||
},
|
||||
"leg_right": {
|
||||
"left_foot": {
|
||||
"rotation": [15, 0, 0]
|
||||
},
|
||||
"foot_right1": {
|
||||
"right_leg": {
|
||||
"rotation": [15, 0, 0]
|
||||
},
|
||||
"leg_left": {
|
||||
"rotation": [15, 0, 0]
|
||||
},
|
||||
"foot_left1": {
|
||||
"right_foot": {
|
||||
"rotation": [15, 0, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.poliwag.water_swim": {
|
||||
"animation.poliwag.water_swim_placeholder": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"tail1": {
|
||||
"body": {
|
||||
"rotation": [45, 0, 0]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": [-45, 0, 0]
|
||||
},
|
||||
"tail2": {
|
||||
@@ -129,43 +105,54 @@
|
||||
"tail3": {
|
||||
"rotation": [5, 0, 0]
|
||||
},
|
||||
"body": {
|
||||
"rotation": [45, 0, 0]
|
||||
},
|
||||
"leg_right": {
|
||||
"left_leg": {
|
||||
"rotation": [15, 0, 0]
|
||||
},
|
||||
"leg_left": {
|
||||
"left_foot": {
|
||||
"rotation": [15, 0, 0]
|
||||
},
|
||||
"foot_right1": {
|
||||
"right_leg": {
|
||||
"rotation": [15, 0, 0]
|
||||
},
|
||||
"foot_left1": {
|
||||
"right_foot": {
|
||||
"rotation": [15, 0, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.poliwag.blink": {
|
||||
"animation_length": 0.16667,
|
||||
"animation.poliwag.blink_placeholder": {
|
||||
"animation_length": 0.1667,
|
||||
"bones": {
|
||||
"eyelid_left": {
|
||||
"left_eyelid": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.125": [0, 0, -0.1],
|
||||
"0.1667": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"eyelid_right": {
|
||||
"right_eyelid": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.125": [0, 0, -0.1],
|
||||
"0.1667": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"left_pupil": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.125": [0, 0, 0.1],
|
||||
"0.1667": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"right_pupil": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.125": [0, 0, 0.1],
|
||||
"0.1667": [0, 0, 0]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.poliwag.sleep": {
|
||||
"animation.poliwag.sleep_placeholder": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
@@ -175,29 +162,6 @@
|
||||
"eyelids": {
|
||||
"position": [0, 0, -0.1]
|
||||
},
|
||||
"leg_right": {
|
||||
"rotation": [-56.86824, 13.96782, -1.24205],
|
||||
"position": [0, 0.25, -0.75]
|
||||
},
|
||||
"foot_right1": {
|
||||
"rotation": [45, 0, 0]
|
||||
},
|
||||
"foot_right2": {
|
||||
"rotation": [10, 0, 0]
|
||||
},
|
||||
"leg_left": {
|
||||
"rotation": [-27.43103, -15.68951, 1.9062],
|
||||
"position": [0, 0.5, -0.75]
|
||||
},
|
||||
"foot_left1": {
|
||||
"rotation": [12.5, 0, 0]
|
||||
},
|
||||
"foot_left2": {
|
||||
"rotation": [10, 0, 0]
|
||||
},
|
||||
"tail1": {
|
||||
"rotation": [-0.16127, 25.11621, 5.5184]
|
||||
},
|
||||
"tail2": {
|
||||
"rotation": [12.30936, 7.61658, -1.09051],
|
||||
"position": [0, 0, -0.35]
|
||||
@@ -206,52 +170,129 @@
|
||||
"rotation": [10, 7.5, 0],
|
||||
"position": [0, 0, -0.5]
|
||||
},
|
||||
"eyelid_left": {
|
||||
"left_eyelid2": {
|
||||
"position": [0, 0, -0.1]
|
||||
},
|
||||
"eyelid_right": {
|
||||
"right_eyelid2": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.poliwag.render": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"rotation": [-5, 0, -10],
|
||||
"position": [0, 6, 0]
|
||||
},
|
||||
"leg_right": {
|
||||
"rotation": [24.26391, -14.269, 7.17267]
|
||||
"tail": {
|
||||
"rotation": [-0.16127, 25.11621, 5.5184]
|
||||
},
|
||||
"foot_right2": {
|
||||
"left_leg": {
|
||||
"rotation": [-27.43103, -15.68951, 1.9062],
|
||||
"position": [0, 0.5, -0.75]
|
||||
},
|
||||
"left_foot": {
|
||||
"rotation": [12.5, 0, 0]
|
||||
},
|
||||
"leg_left": {
|
||||
"rotation": [17.44401, 5.64135, -19.34918]
|
||||
"left_toe": {
|
||||
"rotation": [10, 0, 0]
|
||||
},
|
||||
"foot_left2": {
|
||||
"rotation": [-7.5, 0, 0]
|
||||
"right_leg": {
|
||||
"rotation": [-56.86824, 13.96782, 1.24205],
|
||||
"position": [0, 0.25, -0.75]
|
||||
},
|
||||
"tail1": {
|
||||
"rotation": [-63.87343, -4.37224, -50.6695]
|
||||
"right_foot": {
|
||||
"rotation": [45, 0, 0]
|
||||
},
|
||||
"tail2": {
|
||||
"rotation": [0, 7.5, 0],
|
||||
"position": [0, 0, -0.3]
|
||||
},
|
||||
"tail3": {
|
||||
"rotation": [0, 0, 0]
|
||||
"right_toe": {
|
||||
"rotation": [10, 0, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.poliwag.cry": {
|
||||
"animation_length": 1.25,
|
||||
"sound_effects": {
|
||||
"0.0417": {
|
||||
"effect": "pokemon.poliwag.cry"
|
||||
}
|
||||
}
|
||||
}
|
||||
"animation.poliwag.cry": {
|
||||
"animation_length": 1.25,
|
||||
"sound_effects": {
|
||||
"0.0417": {
|
||||
"effect": "pokemon.poliwag.cry"
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.poliwag.test": {
|
||||
"animation_length": 4,
|
||||
"bones": {
|
||||
"torso": {
|
||||
"rotation": [-2.4905, 0.21782, 4.99527],
|
||||
"position": [0, 0.25, 0]
|
||||
},
|
||||
"left_eye": {
|
||||
"rotation": [0, 0, 0]
|
||||
},
|
||||
"right_eye": {
|
||||
"rotation": [0, 0, 0]
|
||||
},
|
||||
"left_leg": {
|
||||
"rotation": [20.22183, -9.6955, -1.73294],
|
||||
"position": [0, 0, 0.25]
|
||||
},
|
||||
"left_foot": {
|
||||
"rotation": [24.63136, -5.82612, 3.55184]
|
||||
},
|
||||
"right_leg": {
|
||||
"rotation": [-32.29039, 6.33954, 2.12126],
|
||||
"position": [-0.5, 0.5, -2]
|
||||
},
|
||||
"right_foot": {
|
||||
"rotation": [2.92249, 12.46442, 1.89155]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": [34.30897, -18.48624, -45.57625]
|
||||
},
|
||||
"tail2": {
|
||||
"rotation": [20, 0, 0]
|
||||
},
|
||||
"tail3": {
|
||||
"rotation": [17.5, 0, 0]
|
||||
},
|
||||
"poliwag": {
|
||||
"position": [0, 1, 0]
|
||||
},
|
||||
"mouth": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 2],
|
||||
"2.0": {"pre": [0, 0, 2], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"left_toe": {
|
||||
"rotation": [-45, 0, 0]
|
||||
},
|
||||
"right_toe": {
|
||||
"rotation": [7.5, 0, 0],
|
||||
"position": [0, 0, 0.15]
|
||||
},
|
||||
"mouth_open": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -2],
|
||||
"2.0": {"pre": [0, 0, -2], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyelids": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"1.5": {"pre": [0, 0, 0], "post": [0, 0, -0.1]},
|
||||
"1.6667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"left_eyelid": {
|
||||
"position": [0.25, 0, 0]
|
||||
},
|
||||
"left_pupil": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"1.5": {"pre": [0, 0, 0], "post": [0, 0, 0.1]},
|
||||
"1.6667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
},
|
||||
"scale": [-1, 1, 1]
|
||||
},
|
||||
"right_pupil": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"1.5": {"pre": [0, 0, 0], "post": [0, 0, 0.1]},
|
||||
"1.6667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+923
-2713
File diff suppressed because it is too large
Load Diff
+6903
File diff suppressed because it is too large
Load Diff
+6579
File diff suppressed because it is too large
Load Diff
+919
-140
File diff suppressed because it is too large
Load Diff
+3188
-114
File diff suppressed because it is too large
Load Diff
+892
-48
@@ -4,93 +4,937 @@
|
||||
"animation.politoed.ground_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"leftleg": {
|
||||
"left_thigh": {
|
||||
"rotation": [0, -5, 0]
|
||||
},
|
||||
"rightleg": {
|
||||
"rotation": [0, 5, 0]
|
||||
},
|
||||
"leftarm": {
|
||||
"left_arm": {
|
||||
"rotation": [0, 0, 45]
|
||||
},
|
||||
"leftforearm": {
|
||||
"left_lower_arm": {
|
||||
"rotation": [0, 0, 15]
|
||||
},
|
||||
"rightarm": {
|
||||
"right_thigh": {
|
||||
"rotation": [0, 5, 0]
|
||||
},
|
||||
"right_arm": {
|
||||
"rotation": [0, 0, -45]
|
||||
},
|
||||
"rightforearm": {
|
||||
"right_lower_arm": {
|
||||
"rotation": [0, 0, -15]
|
||||
},
|
||||
"tongue_long_base": {
|
||||
"scale": 0
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.politoed.water_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"leftleg": {
|
||||
"rotation": [7.5, -5, 0]
|
||||
},
|
||||
"rightleg": {
|
||||
"rotation": [7.5, 5, 0]
|
||||
},
|
||||
"leftarm": {
|
||||
"rotation": [0, -10, 30]
|
||||
},
|
||||
"leftforearm": {
|
||||
"rotation": [0, 0, 15]
|
||||
},
|
||||
"rightarm": {
|
||||
"rotation": [0, 10, -30]
|
||||
},
|
||||
"rightforearm": {
|
||||
"rotation": [0, 0, -15]
|
||||
},
|
||||
"body": {
|
||||
"rotation": [30, 0, 0]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [-25, 0, 0]
|
||||
},
|
||||
"leftfoot": {
|
||||
"left_thigh": {
|
||||
"rotation": [7.5, -5, 0]
|
||||
},
|
||||
"left_foot": {
|
||||
"rotation": [15, 0, 0]
|
||||
},
|
||||
"rightfoot": {
|
||||
"left_arm": {
|
||||
"rotation": [0, -10, 30]
|
||||
},
|
||||
"left_lower_arm": {
|
||||
"rotation": [0, 0, 15]
|
||||
},
|
||||
"right_thigh": {
|
||||
"rotation": [7.5, 5, 0]
|
||||
},
|
||||
"right_foot": {
|
||||
"rotation": [15, 0, 0]
|
||||
},
|
||||
"right_arm": {
|
||||
"rotation": [0, 10, -30]
|
||||
},
|
||||
"right_lower_arm": {
|
||||
"rotation": [0, 0, -15]
|
||||
},
|
||||
"tongue_long_base": {
|
||||
"scale": 0
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.politoed.water_swim": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"leftleg": {
|
||||
"rotation": [15, -5, 0]
|
||||
},
|
||||
"rightleg": {
|
||||
"rotation": [15, 5, 0]
|
||||
},
|
||||
"leftarm": {
|
||||
"rotation": [0, -10, 45]
|
||||
},
|
||||
"leftforearm": {
|
||||
"rotation": [0, 0, 15]
|
||||
},
|
||||
"rightarm": {
|
||||
"rotation": [0, 10, -45]
|
||||
},
|
||||
"rightforearm": {
|
||||
"rotation": [0, 0, -15]
|
||||
},
|
||||
"body": {
|
||||
"rotation": [60, 0, 0]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [-55, 0, 0]
|
||||
},
|
||||
"leftfoot": {
|
||||
"left_thigh": {
|
||||
"rotation": [15, -5, 0]
|
||||
},
|
||||
"left_foot": {
|
||||
"rotation": [30, 0, 0]
|
||||
},
|
||||
"rightfoot": {
|
||||
"left_arm": {
|
||||
"rotation": [0, -10, 45]
|
||||
},
|
||||
"left_lower_arm": {
|
||||
"rotation": [0, 0, 15]
|
||||
},
|
||||
"right_thigh": {
|
||||
"rotation": [15, 5, 0]
|
||||
},
|
||||
"right_foot": {
|
||||
"rotation": [30, 0, 0]
|
||||
},
|
||||
"right_arm": {
|
||||
"rotation": [0, 10, -45]
|
||||
},
|
||||
"right_lower_arm": {
|
||||
"rotation": [0, 0, -15]
|
||||
},
|
||||
"tongue_long_base": {
|
||||
"scale": 0
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.politoed.test": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"position": [0, -0.5, 0]
|
||||
},
|
||||
"undefined": {
|
||||
"rotation": [-30, 0, 0]
|
||||
},
|
||||
"torso": {
|
||||
"position": [0, 0, 0]
|
||||
},
|
||||
"legs": {
|
||||
"position": [0, -0.6, 0]
|
||||
},
|
||||
"left_thigh": {
|
||||
"rotation": [-22, -31, -12.5],
|
||||
"position": [0, 0, 0]
|
||||
},
|
||||
"left_leg": {
|
||||
"rotation": [72.5, -10, 5]
|
||||
},
|
||||
"left_foot": {
|
||||
"rotation": [-43, 0, 2.75],
|
||||
"position": [0, 0.25, -0.25]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"jaw": {
|
||||
"rotation": [30, 0, 0]
|
||||
},
|
||||
"left_arm": {
|
||||
"rotation": [0, 0, 42.5]
|
||||
},
|
||||
"left_lower_arm": {
|
||||
"rotation": [0, 40, 0]
|
||||
},
|
||||
"left_hand": {
|
||||
"rotation": [0, 0, 22.5],
|
||||
"position": [-0.35, 0, 0]
|
||||
},
|
||||
"right_thigh": {
|
||||
"rotation": [-22, 31, 12.5]
|
||||
},
|
||||
"right_leg": {
|
||||
"rotation": [72.5, 10, -5]
|
||||
},
|
||||
"right_foot": {
|
||||
"rotation": [-43, 0, -2.75],
|
||||
"position": [0, 0.25, -0.25]
|
||||
},
|
||||
"right_arm": {
|
||||
"rotation": [0, 0, -42.5]
|
||||
},
|
||||
"right_lower_arm": {
|
||||
"rotation": [0, -40, 0]
|
||||
},
|
||||
"right_hand": {
|
||||
"rotation": [0, 0, -22.5],
|
||||
"position": [0.35, 0, 0]
|
||||
},
|
||||
"tongue_long_base": {
|
||||
"rotation": [-27.5, 0, 0]
|
||||
},
|
||||
"tongue_long_mid": {
|
||||
"rotation": [32.5, 0, 0]
|
||||
},
|
||||
"tongue_long_mid_bend": {
|
||||
"rotation": [27.5, 0, 0]
|
||||
},
|
||||
"tongue_long_end": {
|
||||
"rotation": [-20, 0, 0]
|
||||
},
|
||||
"tongue_long_tip": {
|
||||
"rotation": [-37.5, 0, 0]
|
||||
},
|
||||
"left_leg_correction": {
|
||||
"position": [0, 1, 0]
|
||||
},
|
||||
"right_leg_correction": {
|
||||
"position": [0, 1, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.politoed.test2": {
|
||||
"animation_length": 0.0417,
|
||||
"bones": {
|
||||
"body": {
|
||||
"position": [0, -1.1, 0]
|
||||
},
|
||||
"undefined": {
|
||||
"rotation": [-30, 0, 0]
|
||||
},
|
||||
"torso": {
|
||||
"position": [0, 0, 0]
|
||||
},
|
||||
"legs": {
|
||||
"position": [0, -0.6, 0]
|
||||
},
|
||||
"left_thigh": {
|
||||
"rotation": [-58.0984, -35.5329, -3.9636],
|
||||
"position": [0, 0, -0.25]
|
||||
},
|
||||
"left_leg": {
|
||||
"rotation": [100.2268, -0.2874, 2.6377],
|
||||
"position": [0, 0, 0.25]
|
||||
},
|
||||
"left_foot": {
|
||||
"rotation": [-40, 0, 2.25],
|
||||
"position": [0, 0.1, -0.25]
|
||||
},
|
||||
"jaw": {
|
||||
"position": [0, 0, 0]
|
||||
},
|
||||
"left_arm": {
|
||||
"rotation": [0, 0, 42.5]
|
||||
},
|
||||
"left_lower_arm": {
|
||||
"rotation": [0, 40, 0]
|
||||
},
|
||||
"left_hand": {
|
||||
"rotation": [0, 0, 22.5],
|
||||
"position": [-0.35, 0, 0]
|
||||
},
|
||||
"right_thigh": {
|
||||
"rotation": [-58.0984, 35.5329, 3.9636],
|
||||
"position": [0, 0, -0.25]
|
||||
},
|
||||
"right_leg": {
|
||||
"rotation": [100.2268, 0.2874, -2.6377],
|
||||
"position": [0, 0, 0.25]
|
||||
},
|
||||
"right_foot": {
|
||||
"rotation": [-40, 0, -2.25],
|
||||
"position": [0, 0.1, -0.25]
|
||||
},
|
||||
"right_arm": {
|
||||
"rotation": [0, 0, -42.5]
|
||||
},
|
||||
"right_lower_arm": {
|
||||
"rotation": [0, -40, 0]
|
||||
},
|
||||
"right_hand": {
|
||||
"rotation": [0, 0, -22.5],
|
||||
"position": [0.35, 0, 0]
|
||||
},
|
||||
"tongue_long_base": {
|
||||
"rotation": [-22.5, 0, 0]
|
||||
},
|
||||
"tongue_long_mid": {
|
||||
"rotation": [32.5, 0, 0]
|
||||
},
|
||||
"tongue_long_mid_bend": {
|
||||
"rotation": [27.5, 0, 0]
|
||||
},
|
||||
"tongue_long_end": {
|
||||
"rotation": [-20, 0, 0]
|
||||
},
|
||||
"tongue_long_tip": {
|
||||
"rotation": [-37.5, 0, 0]
|
||||
},
|
||||
"left_leg_correction": {
|
||||
"position": [0, 1, 0]
|
||||
},
|
||||
"right_leg_correction": {
|
||||
"position": [0, 1, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.politoed.test_walk": {
|
||||
"loop": true,
|
||||
"animation_length": 1,
|
||||
"bones": {
|
||||
"body": {
|
||||
"position": [0, -0.5, 0]
|
||||
},
|
||||
"undefined": {
|
||||
"rotation": [-30, 0, 0]
|
||||
},
|
||||
"torso": {
|
||||
"rotation": ["-0+math.sin(q.anim_time*90*8-75)*3", "-0+math.sin(q.anim_time*90*4-240)*15", "0-math.sin(q.anim_time*90*4-240)*12.5"],
|
||||
"position": [0, "0-math.sin(q.anim_time*90*8-75)*0.333", 0]
|
||||
},
|
||||
"legs": {
|
||||
"position": [0, -0.6, 0]
|
||||
},
|
||||
"left_thigh": {
|
||||
"rotation": {
|
||||
"0.0": {
|
||||
"post": [-45.8077, -17.7622, -4.8184],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.25": {
|
||||
"post": [-22, -31, -12.5],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.5": {
|
||||
"post": [10.3458, -11.4389, -7.9978],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.5833": {
|
||||
"post": [11.7107, -12.7343, -7.9808],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.875": {
|
||||
"post": [-71.94, -14.4638, -6.2564],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"1.0": {
|
||||
"post": [-45.8077, -17.7622, -4.8184],
|
||||
"lerp_mode": "catmullrom"
|
||||
}
|
||||
},
|
||||
"position": {
|
||||
"0.0": {
|
||||
"post": [0, 0, -1.25],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.0833": {
|
||||
"post": [0, 0.41, -1.06],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.25": {
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.5": {
|
||||
"post": [0, -0.5, 2.5],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.7083": {
|
||||
"post": [0, 1.5, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"1.0": {
|
||||
"post": [0, 0, -1.25],
|
||||
"lerp_mode": "catmullrom"
|
||||
}
|
||||
}
|
||||
},
|
||||
"left_leg": {
|
||||
"rotation": {
|
||||
"0.0": {
|
||||
"post": [11.153, -10.4048, 4.5735],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.25": {
|
||||
"post": [72.5, -10, 5],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.5": {
|
||||
"post": [64.434, -4.5354, 10.7584],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.5833": {
|
||||
"post": [87.0283, -5.4462, 9.7987],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.7083": {
|
||||
"post": [109.717, -7.2677, 7.8792],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.875": {
|
||||
"post": [37.5, -10, 5],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"1.0": {
|
||||
"post": [11.153, -10.4048, 4.5735],
|
||||
"lerp_mode": "catmullrom"
|
||||
}
|
||||
}
|
||||
},
|
||||
"left_foot": {
|
||||
"rotation": {
|
||||
"0.0": {
|
||||
"post": [4.441, -0.809, -3.8795],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.25": {
|
||||
"post": [-43, 0, 2.75],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.5": {
|
||||
"post": [-73.5885, -4.6063, 14.7348],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.625": {
|
||||
"post": [-62.2404, -3.8386, 12.7373],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.7083": {
|
||||
"post": [-57.0442, -2.3032, 8.7424],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.875": {
|
||||
"post": [4.4957, 0.1961, 0.2577],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"1.0": {
|
||||
"post": [4.441, -0.809, -3.8795],
|
||||
"lerp_mode": "catmullrom"
|
||||
}
|
||||
},
|
||||
"position": {
|
||||
"0.0": {
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.25": {
|
||||
"post": [0, 0.25, -0.25],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.5": {
|
||||
"post": [0, 0.25, -1],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.7083": {
|
||||
"post": [0, -0.12, -0.75],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.875": {
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"1.0": {
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
}
|
||||
}
|
||||
},
|
||||
"left_toes": {
|
||||
"rotation": {
|
||||
"0.0": {
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.5": {
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.5833": {
|
||||
"post": [-34.9753, 1.3429, 2.1089],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.7083": {
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"1.0": {
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
}
|
||||
}
|
||||
},
|
||||
"head": {
|
||||
"rotation": ["-0+math.sin(q.anim_time*90*8-105)*1.5", "-0+math.sin(q.anim_time*90*4-90)*7.5", "0-math.sin(q.anim_time*90*4-90)*5"]
|
||||
},
|
||||
"left_arm": {
|
||||
"rotation": [0, "10+math.sin(q.anim_time*90*4-60)*22.5", "45-math.sin(q.anim_time*90*4+90)*15"]
|
||||
},
|
||||
"left_lower_arm": {
|
||||
"rotation": [0, "25+math.sin(q.anim_time*90*4-90)*10", 0]
|
||||
},
|
||||
"left_hand": {
|
||||
"rotation": [0, "2.5+math.sin(q.anim_time*90*4-120)*5", "22.5-math.sin(q.anim_time*90*4+450)*10"],
|
||||
"position": [-0.35, 0, 0]
|
||||
},
|
||||
"right_thigh": {
|
||||
"rotation": {
|
||||
"0.0": {
|
||||
"post": [10.3458, 11.4389, 7.9978],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.0833": {
|
||||
"post": [11.7107, 12.7343, 7.9808],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.375": {
|
||||
"post": [-71.94, 14.4638, 6.2564],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.5": {
|
||||
"post": [-45.8077, 17.7622, 4.8184],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.75": {
|
||||
"post": [-22, 31, 12.5],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"1.0": {
|
||||
"post": [10.3458, 11.4389, 7.9978],
|
||||
"lerp_mode": "catmullrom"
|
||||
}
|
||||
},
|
||||
"position": {
|
||||
"0.0": {
|
||||
"post": [0, -0.5, 2.5],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.2083": {
|
||||
"post": [0, 1.5, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.5": {
|
||||
"post": [0, 0, -1.25],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.5833": {
|
||||
"post": [0, 0.41, -1.06],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.75": {
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"1.0": {
|
||||
"post": [0, -0.5, 2.5],
|
||||
"lerp_mode": "catmullrom"
|
||||
}
|
||||
}
|
||||
},
|
||||
"right_leg": {
|
||||
"rotation": {
|
||||
"0.0": {
|
||||
"post": [64.434, 4.5354, -10.7584],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.0833": {
|
||||
"post": [87.0283, 5.4462, -9.7987],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.2083": {
|
||||
"post": [109.717, 7.2677, -7.8792],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.375": {
|
||||
"post": [37.5, 10, -5],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.5": {
|
||||
"post": [11.153, 10.4048, -4.5735],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.75": {
|
||||
"post": [72.5, 10, -5],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"1.0": {
|
||||
"post": [64.434, 4.5354, -10.7584],
|
||||
"lerp_mode": "catmullrom"
|
||||
}
|
||||
}
|
||||
},
|
||||
"right_foot": {
|
||||
"rotation": {
|
||||
"0.0": {
|
||||
"post": [-73.5885, 4.6063, -14.7348],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.125": {
|
||||
"post": [-62.2404, 3.8386, -12.7373],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.2083": {
|
||||
"post": [-57.0442, 2.3032, -8.7424],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.375": {
|
||||
"post": [4.4957, -0.1961, -0.2577],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.5": {
|
||||
"post": [4.441, 0.809, 3.8795],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.75": {
|
||||
"post": [-43, 0, -2.75],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"1.0": {
|
||||
"post": [-73.5885, 4.6063, -14.7348],
|
||||
"lerp_mode": "catmullrom"
|
||||
}
|
||||
},
|
||||
"position": {
|
||||
"0.0": {
|
||||
"post": [0, 0.25, -1],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.2083": {
|
||||
"post": [0, -0.12, -0.75],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.375": {
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.5": {
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.75": {
|
||||
"post": [0, 0.25, -0.25],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"1.0": {
|
||||
"post": [0, 0.25, -1],
|
||||
"lerp_mode": "catmullrom"
|
||||
}
|
||||
}
|
||||
},
|
||||
"right_toes": {
|
||||
"rotation": {
|
||||
"0.0": {
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.0833": {
|
||||
"post": [-34.9753, -1.3429, -2.1089],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.2083": {
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.5": {
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"1.0": {
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
}
|
||||
}
|
||||
},
|
||||
"hair": {
|
||||
"rotation": ["-0+math.sin(q.anim_time*90*8-135)*2.5", "-0+math.sin(q.anim_time*90*4-300)*10", "0-math.sin(q.anim_time*90*4-300)*5"]
|
||||
},
|
||||
"right_arm": {
|
||||
"rotation": [0, "-10+math.sin(q.anim_time*90*4-60)*22.5", "-45-math.sin(q.anim_time*90*4+90)*15"]
|
||||
},
|
||||
"right_lower_arm": {
|
||||
"rotation": [0, "-25+math.sin(q.anim_time*90*4-90)*10", 0]
|
||||
},
|
||||
"right_hand": {
|
||||
"rotation": [0, "-2.5+math.sin(q.anim_time*90*4-120)*5", "-22.5-math.sin(q.anim_time*90*4+450)*10"],
|
||||
"position": [0.35, 0, 0]
|
||||
},
|
||||
"tongue_long_base": {
|
||||
"rotation": [-27.5, 0, 0]
|
||||
},
|
||||
"tongue_long_mid": {
|
||||
"rotation": [32.5, 0, 0]
|
||||
},
|
||||
"tongue_long_mid_bend": {
|
||||
"rotation": [27.5, 0, 0]
|
||||
},
|
||||
"tongue_long_end": {
|
||||
"rotation": [-20, 0, 0]
|
||||
},
|
||||
"tongue_long_tip": {
|
||||
"rotation": [-37.5, 0, 0]
|
||||
},
|
||||
"left_leg_correction": {
|
||||
"position": {
|
||||
"0.0": {
|
||||
"post": [0, 0.1, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.25": {
|
||||
"post": [0, 1, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.5": {
|
||||
"post": [0, 1, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.7083": {
|
||||
"post": [0, 1, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.875": {
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"1.0": {
|
||||
"post": [0, 0.1, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
}
|
||||
}
|
||||
},
|
||||
"right_leg_correction": {
|
||||
"position": {
|
||||
"0.0": {
|
||||
"post": [0, 1, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.2083": {
|
||||
"post": [0, 1, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.375": {
|
||||
"post": [0, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.5": {
|
||||
"post": [0, 0.1, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.75": {
|
||||
"post": [0, 1, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"1.0": {
|
||||
"post": [0, 1, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.politoed.pose": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"rotation": [-15, 0, 0],
|
||||
"position": [0, 2, -2]
|
||||
},
|
||||
"left_thigh": {
|
||||
"rotation": [-109.8093, -19.9813, 14.4472],
|
||||
"position": [0.25, -1, 0.25]
|
||||
},
|
||||
"left_leg": {
|
||||
"rotation": [62.5, 0, 0]
|
||||
},
|
||||
"left_foot": {
|
||||
"rotation": [-15, 2.5, 0]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [10, 0, 0],
|
||||
"position": [0, 0, -0.25]
|
||||
},
|
||||
"left_arm": {
|
||||
"rotation": [-52.5, 0, 0],
|
||||
"position": [0, -0.75, 0.25]
|
||||
},
|
||||
"left_lower_arm": {
|
||||
"rotation": [0, 45, 0]
|
||||
},
|
||||
"left_hand": {
|
||||
"rotation": [0, 0, 17.5],
|
||||
"position": [-0.2, 0, 0]
|
||||
},
|
||||
"right_thigh": {
|
||||
"rotation": [-109.8093, 19.9813, -14.4472],
|
||||
"position": [-0.25, -1, 0.25]
|
||||
},
|
||||
"right_leg": {
|
||||
"rotation": [62.5, 0, 0]
|
||||
},
|
||||
"right_foot": {
|
||||
"rotation": [-15, -2.5, 0]
|
||||
},
|
||||
"left_pupil": {
|
||||
"position": [0, -0.5, 0]
|
||||
},
|
||||
"right_pupil": {
|
||||
"position": [0, -0.5, 0]
|
||||
},
|
||||
"right_arm": {
|
||||
"rotation": [-52.5, 0, 0],
|
||||
"position": [0, -0.75, 0.25]
|
||||
},
|
||||
"right_lower_arm": {
|
||||
"rotation": [0, -45, 0]
|
||||
},
|
||||
"right_hand": {
|
||||
"rotation": [0, 0, -17.5],
|
||||
"position": [0.2, 0, 0]
|
||||
},
|
||||
"tongue_long_base": {
|
||||
"scale": 0
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.politoed.blink": {
|
||||
"animation_length": 0.2083,
|
||||
"bones": {
|
||||
"left_eye": {
|
||||
"position": {
|
||||
"0.0": [-0.1, 0, 0.1],
|
||||
"0.1667": {
|
||||
"pre": [-0.1, 0, 0.1],
|
||||
"post": [-0.1, 0, 0.1]
|
||||
},
|
||||
"0.2083": {
|
||||
"pre": [-0.1, 0, 0.1],
|
||||
"post": [0, 0, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"right_eye": {
|
||||
"position": {
|
||||
"0.0": [0.1, 0, 0.1],
|
||||
"0.1667": {
|
||||
"pre": [0.1, 0, 0.1],
|
||||
"post": [0.1, 0, 0.1]
|
||||
},
|
||||
"0.2083": {
|
||||
"pre": [0.1, 0, 0.1],
|
||||
"post": [0, 0, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"left_eyelid": {
|
||||
"position": {
|
||||
"0.0": [0.1, 0, -0.1],
|
||||
"0.1667": {
|
||||
"pre": [0.1, 0, -0.1],
|
||||
"post": [0.1, 0, -0.1]
|
||||
},
|
||||
"0.2083": {
|
||||
"pre": [0.1, 0, -0.1],
|
||||
"post": [0, 0, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"right_eyelid": {
|
||||
"position": {
|
||||
"0.0": [-0.1, 0, -0.1],
|
||||
"0.1667": {
|
||||
"pre": [-0.1, 0, -0.1],
|
||||
"post": [-0.1, 0, -0.1]
|
||||
},
|
||||
"0.2083": {
|
||||
"pre": [-0.1, 0, -0.1],
|
||||
"post": [0, 0, 0]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.politoed.happy": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"jaw": {
|
||||
"rotation": [30, 0, 0]
|
||||
},
|
||||
"left_pupil": {
|
||||
"position": [0, 0, 0]
|
||||
},
|
||||
"left_eyelid_happy": {
|
||||
"position": [0.1, 0, -0.1]
|
||||
},
|
||||
"right_eyelid_happy": {
|
||||
"position": [-0.1, 0, -0.1]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.politoed.sad": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"left_eyelid_sad": {
|
||||
"position": [0.1, 0, 0]
|
||||
},
|
||||
"right_eyelid_sad": {
|
||||
"position": [-0.1, 0, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.politoed.angry": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"left_eyelid_angry": {
|
||||
"position": [0.1, 0, -0.1]
|
||||
},
|
||||
"right_eyelid_angry": {
|
||||
"position": [-0.1, 0, -0.1]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.politoed.shocked": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"jaw": {
|
||||
"rotation": [30, 0, 0]
|
||||
},
|
||||
"left_pupil": {
|
||||
"position": [-0.1, 0, 0.3]
|
||||
},
|
||||
"right_pupil": {
|
||||
"position": [0.1, 0, 0.3]
|
||||
},
|
||||
"left_pupil_shocked": {
|
||||
"position": [0.1, 0, 0]
|
||||
},
|
||||
"right_pupil_shocked": {
|
||||
"position": [-0.1, 0, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.politoed.unamused": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"left_eyelid_unamused": {
|
||||
"position": [0.1, 0, -0.1]
|
||||
},
|
||||
"right_eyelid_unamused": {
|
||||
"position": [-0.1, 0, -0.1]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.politoed.hurt": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"jaw": {
|
||||
"rotation": [30, 0, 0]
|
||||
},
|
||||
"left_eyelid_hurt": {
|
||||
"position": [0.1, 0, -0.1]
|
||||
},
|
||||
"right_eyelid_hurt": {
|
||||
"position": [-0.1, 0, -0.1]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.politoed.cry": {
|
||||
"animation_length": 1.25,
|
||||
"sound_effects": {
|
||||
"0.04": {
|
||||
"effect": "pokemon.politoed.cry"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+9798
-401
File diff suppressed because it is too large
Load Diff
+21
-21
@@ -62,7 +62,7 @@
|
||||
"body": {
|
||||
"rotation": [0, -7.5, 0]
|
||||
},
|
||||
"Eyebrow": {
|
||||
"eyebrows": {
|
||||
"rotation": [0, 0, 0]
|
||||
}
|
||||
}
|
||||
@@ -240,7 +240,7 @@
|
||||
"1.5": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"Eyebrow": {
|
||||
"eyebrows": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.25": {
|
||||
@@ -282,31 +282,31 @@
|
||||
"skirt_back": {
|
||||
"rotation": ["0-math.cos(q.anim_time*90*2-30)*5", 0, 0]
|
||||
},
|
||||
"eyelid_left": {
|
||||
"eyelid_annoyed_right": {
|
||||
"position": [0, 0, -0.1]
|
||||
},
|
||||
"eyelid_right": {
|
||||
"position": [0, 0, -0.1]
|
||||
},
|
||||
"Eyebrow": {
|
||||
"eyebrows": {
|
||||
"position": [0, "0+math.sin(q.anim_time*90*2-30)*0.05", 0]
|
||||
},
|
||||
"hair": {
|
||||
"rotation": ["12.5+math.cos(q.anim_time*90*2-30)*3", 0, 0]
|
||||
},
|
||||
"eyelid_annoyed_left": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.shroomish.blink": {
|
||||
"animation_length": 0.1667,
|
||||
"bones": {
|
||||
"eyelid_left": {
|
||||
"eyelid_annoyed_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.125": [0, 0, -0.1],
|
||||
"0.1667": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"eyelid_right": {
|
||||
"eyelid_annoyed_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.125": [0, 0, -0.1],
|
||||
@@ -591,7 +591,7 @@
|
||||
"2.5833": [1, 1, 1]
|
||||
}
|
||||
},
|
||||
"Eyebrow": {
|
||||
"eyebrows": {
|
||||
"rotation": [0, 0, 0],
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
@@ -603,17 +603,7 @@
|
||||
"2.25": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"eyelid_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.0833": [0, 0, -0.1],
|
||||
"1.875": [0, 0, -0.1],
|
||||
"1.9167": [0, 0, 0],
|
||||
"2.1667": [0, 0, 0],
|
||||
"2.2083": [0, 0, -0.1]
|
||||
}
|
||||
},
|
||||
"eyelid_right": {
|
||||
"eyelid_annoyed_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.0833": [0, 0, -0.1],
|
||||
@@ -636,6 +626,16 @@
|
||||
"0.25": [0, 0, 0],
|
||||
"0.2917": [0, 0, -0.1]
|
||||
}
|
||||
},
|
||||
"eyelid_annoyed_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.0833": [0, 0, -0.1],
|
||||
"1.875": [0, 0, -0.1],
|
||||
"1.9167": [0, 0, 0],
|
||||
"2.1667": [0, 0, 0],
|
||||
"2.2083": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+9141
-173
File diff suppressed because it is too large
Load Diff
+7173
-195
File diff suppressed because it is too large
Load Diff
+1805
-337
File diff suppressed because it is too large
Load Diff
+245
-151
@@ -1,192 +1,286 @@
|
||||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"animation.absol.render": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"hips": {
|
||||
"rotation": [-2.5, 0, 0]
|
||||
},
|
||||
"chest": {
|
||||
"rotation": [12.5, 0, 0]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": [-8.01788, 32.61138, -0.66603]
|
||||
},
|
||||
"neck": {
|
||||
"rotation": [15.34479, -13.10699, 9.18372]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [-25.32307, -13.66763, -4.61603]
|
||||
},
|
||||
"hair": {
|
||||
"rotation": [0, 0, 45]
|
||||
},
|
||||
"hair2": {
|
||||
"rotation": [1.95155, 7.24305, 27.62353]
|
||||
},
|
||||
"hair3": {
|
||||
"rotation": [8.61775, 34.05444, 17.64371]
|
||||
},
|
||||
"neck_fur_right2": {
|
||||
"rotation": [0, 0, -30]
|
||||
},
|
||||
"neck_fur_left2": {
|
||||
"rotation": [0, 0, 40]
|
||||
},
|
||||
"neck_fur_back2": {
|
||||
"rotation": [-45, 0, 0]
|
||||
},
|
||||
"chest_fur": {
|
||||
"rotation": [-42.5, 0, 0]
|
||||
},
|
||||
"chest_fur_right": {
|
||||
"rotation": [0, 35, 0]
|
||||
},
|
||||
"chest_fur_left": {
|
||||
"rotation": [0, -25, 0]
|
||||
},
|
||||
"chest_fur_1": {
|
||||
"rotation": [27.5, 0, 0]
|
||||
},
|
||||
"chest_fur_2": {
|
||||
"rotation": [7.5, 0, 0]
|
||||
},
|
||||
"leg_back_left": {
|
||||
"rotation": [21.9659, -13.44762, -0.11731]
|
||||
},
|
||||
"leg_back_left2": {
|
||||
"rotation": [-10, 0, 0]
|
||||
},
|
||||
"leg_back_left3": {
|
||||
"rotation": [5, 0, 0]
|
||||
},
|
||||
"foot__back_left": {
|
||||
"rotation": [-14.82005, -12.39135, -1.6575]
|
||||
},
|
||||
"leg_front_left": {
|
||||
"rotation": [-25.47479, -17.22575, 3.13388],
|
||||
"position": [0, -0.25, 0]
|
||||
},
|
||||
"leg_front_left2": {
|
||||
"rotation": [14.61364, 12.22219, 2.52829]
|
||||
},
|
||||
"foot_front_left": {
|
||||
"rotation": [12.15846, -18.26883, -13.36473]
|
||||
},
|
||||
"eyes_open": {
|
||||
"position": [0, 0, 0]
|
||||
},
|
||||
"eyes_happy": {
|
||||
"position": [0, 0, 0]
|
||||
},
|
||||
"eyes_closed": {
|
||||
"position": [0, 0, 0]
|
||||
},
|
||||
"eyes_halfclosed": {
|
||||
"position": [0, 0, 0]
|
||||
},
|
||||
"leg_back_right": {
|
||||
"rotation": [0, -22.5, 0],
|
||||
"position": [-0.11888, 0, -1.67283]
|
||||
},
|
||||
"foot_back_right": {
|
||||
"rotation": [0, 15, 0]
|
||||
},
|
||||
"waist": {
|
||||
"rotation": [0, -20, 0]
|
||||
},
|
||||
"leg_front_right": {
|
||||
"rotation": [12.5, 0, 0]
|
||||
},
|
||||
"leg_front_right2": {
|
||||
"rotation": [0, 0, -10]
|
||||
},
|
||||
"foot_front_right": {
|
||||
"rotation": [-12.07362, 14.63639, 13.31914]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.absol.ground_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"neck": {
|
||||
"rotation": [20, 0, 0]
|
||||
"rotation": [30, 0, 0]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [-17.5, 0, 0]
|
||||
},
|
||||
"hair": {
|
||||
"rotation": [0, 0, 47]
|
||||
"rotation": [0, 0, -2.5]
|
||||
},
|
||||
"hair2": {
|
||||
"rotation": [0, 8.5, 38]
|
||||
"rotation": [2.5, 10, 0]
|
||||
},
|
||||
"hair3": {
|
||||
"rotation": [9.69368, 25.60466, 13.24197]
|
||||
"rotation": [1.9544, 7.5589, 12.4168]
|
||||
},
|
||||
"neck_fur_right2": {
|
||||
"rotation": [0, 0, -30]
|
||||
"neck_fluff_left": {
|
||||
"rotation": [0, 0, 67.5]
|
||||
},
|
||||
"neck_fur_left2": {
|
||||
"rotation": [0, 0, 40]
|
||||
},
|
||||
"neck_fur_back2": {
|
||||
"neck_fluff_back": {
|
||||
"rotation": [-45, 0, 0]
|
||||
},
|
||||
"chest_fur": {
|
||||
"rotation": [-30, 0, 0]
|
||||
"chest_fluff": {
|
||||
"rotation": [-12.5, 0, 0]
|
||||
},
|
||||
"chest_fur_right": {
|
||||
"rotation": [0, 35, 0]
|
||||
"chest_fluff_right": {
|
||||
"rotation": [0, 37.5, 0]
|
||||
},
|
||||
"chest_fur_left": {
|
||||
"rotation": [0, -25, 0]
|
||||
"chest_fluff_left": {
|
||||
"rotation": [0, -37.5, 0]
|
||||
},
|
||||
"chest_fur_1": {
|
||||
"rotation": [27.5, 0, 0]
|
||||
"chest_fluff2": {
|
||||
"rotation": [-7.5, 0, 0]
|
||||
},
|
||||
"chest_fur_2": {
|
||||
"chest_fluff3": {
|
||||
"rotation": [7.5, 0, 0]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": [-22.5, 0, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.absol.cry": {
|
||||
"animation_length": 2,
|
||||
"bones": {
|
||||
"mouth": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.17],
|
||||
"0.25": {"pre": [0, 0, 0.17], "post": [0, 0, -1]},
|
||||
"1.7917": {"pre": [0, 0, -1], "post": [0, 0, 0.17]}
|
||||
}
|
||||
}
|
||||
},
|
||||
"sound_effects": {
|
||||
"0.04": {
|
||||
"effect": "pokemon.absol.cry"
|
||||
"rotation": [10, 0, 0]
|
||||
},
|
||||
"neck_fluff_right": {
|
||||
"rotation": [0, 0, -67.5]
|
||||
},
|
||||
"torso": {
|
||||
"rotation": [2.5, 0, 0]
|
||||
},
|
||||
"torso2": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"head_angle": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"leg_front_left": {
|
||||
"rotation": [-4.9083, 1.8509, 2.416]
|
||||
},
|
||||
"leg_back_left": {
|
||||
"rotation": [0, -10, 0]
|
||||
},
|
||||
"leg_back_left2": {
|
||||
"rotation": [5, 0, 0]
|
||||
},
|
||||
"leg_back_left3": {
|
||||
"rotation": [10, 0, 0]
|
||||
},
|
||||
"foot_back_left": {
|
||||
"rotation": [-13.9904, -4.9952, -0.2186]
|
||||
},
|
||||
"foot_front_left": {
|
||||
"rotation": [4.991, -1.4949, -3.2033]
|
||||
},
|
||||
"neck_fluff_back2": {
|
||||
"rotation": [-50, 0, 0]
|
||||
},
|
||||
"leg_front_right": {
|
||||
"rotation": [2.585, -1.6431, -2.3501]
|
||||
},
|
||||
"leg_front_right2": {
|
||||
"rotation": [2.5, 0, 0]
|
||||
},
|
||||
"foot_front_right": {
|
||||
"rotation": [-4.9201, 6.845, 3.7466]
|
||||
},
|
||||
"leg_back_right": {
|
||||
"rotation": [0, 10, 0]
|
||||
},
|
||||
"leg_back_right2": {
|
||||
"rotation": [5, 0, 0]
|
||||
},
|
||||
"leg_back_right3": {
|
||||
"rotation": [10, 0, 0]
|
||||
},
|
||||
"foot_back_right": {
|
||||
"rotation": [-13.9904, 4.9952, 0.2186]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.absol.blink": {
|
||||
"animation_length": 0.1667,
|
||||
"bones": {
|
||||
"eyes_open": {
|
||||
"eye_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 1],
|
||||
"0.125": {"pre": [0, 0, 1], "post": [0, 0, 1]},
|
||||
"0.1667": {"pre": [0, 0, 1], "post": [0, 0, 0]}
|
||||
"0.0": [-0.1, 0, 0.1],
|
||||
"0.1667": {"pre": [-0.1, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_closed": {
|
||||
"eye_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -1],
|
||||
"0.125": {"pre": [0, 0, -1], "post": [0, 0, -1]},
|
||||
"0.1667": {"pre": [0, 0, -1], "post": [0, 0, 0]}
|
||||
"0.0": [0.1, 0, 0.1],
|
||||
"0.1667": {"pre": [0.1, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyelid_right": {
|
||||
"position": {
|
||||
"0.0": [-0.1, 0, -0.1],
|
||||
"0.1667": {"pre": [-0.1, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyelid_left": {
|
||||
"position": {
|
||||
"0.0": [0.1, 0, -0.1],
|
||||
"0.1667": {"pre": [0.1, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_blink_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.absol.ditto_face": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"face": {
|
||||
"position": [0, 0, 0.1],
|
||||
"scale": 0
|
||||
},
|
||||
"face_ditto": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.absol.pose": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"neck": {
|
||||
"rotation": [30.3812, -8.6492, -5.0384]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [-17.5, 0, 0]
|
||||
},
|
||||
"hair": {
|
||||
"rotation": [0, 0, -2.5]
|
||||
},
|
||||
"hair2": {
|
||||
"rotation": [2.5, 10, 0]
|
||||
},
|
||||
"hair3": {
|
||||
"rotation": [1.9544, 7.5589, 12.4168]
|
||||
},
|
||||
"neck_fluff_left": {
|
||||
"rotation": [0, 0, 67.5]
|
||||
},
|
||||
"neck_fluff_back": {
|
||||
"rotation": [-45, 0, 0]
|
||||
},
|
||||
"chest_fluff": {
|
||||
"rotation": [-17.5, 0, 0]
|
||||
},
|
||||
"chest_fluff_right": {
|
||||
"rotation": [0, 37.5, 0]
|
||||
},
|
||||
"chest_fluff_left": {
|
||||
"rotation": [0, -37.5, 0]
|
||||
},
|
||||
"chest_fluff2": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"chest_fluff3": {
|
||||
"rotation": [7.5, 0, 0]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": [-2.2793, -9.656, -2.6129]
|
||||
},
|
||||
"horn": {
|
||||
"rotation": [0, -10, 0]
|
||||
},
|
||||
"neck_fluff_right": {
|
||||
"rotation": [0, 0, -52.5]
|
||||
},
|
||||
"body": {
|
||||
"rotation": [0, 65, 0],
|
||||
"position": [2, -0.55, 0]
|
||||
},
|
||||
"torso": {
|
||||
"rotation": [9.9864, 0.6469, -2.4149]
|
||||
},
|
||||
"torso2": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"head_angle": {
|
||||
"rotation": [-5.7686, -29.8743, 2.8806]
|
||||
},
|
||||
"leg_front_left": {
|
||||
"rotation": [16.5711, -9.4592, -13.6836],
|
||||
"position": [0.75, -2, 0]
|
||||
},
|
||||
"leg_front_left2": {
|
||||
"rotation": [-45, 0, 0]
|
||||
},
|
||||
"leg_back_left": {
|
||||
"rotation": [14.2119, -9.413, -10.1281]
|
||||
},
|
||||
"leg_back_left2": {
|
||||
"rotation": [-2.5, 0, 0]
|
||||
},
|
||||
"leg_back_left3": {
|
||||
"rotation": [17.5, 0, 0]
|
||||
},
|
||||
"foot_back_left": {
|
||||
"rotation": [-27.3943, 4.3233, 8.0916]
|
||||
},
|
||||
"iris_left": {
|
||||
"position": [1, 0, 0]
|
||||
},
|
||||
"foot_front_left": {
|
||||
"rotation": [41.9868, -4.2611, 0.0665],
|
||||
"position": [0, 0, -0.75]
|
||||
},
|
||||
"claw_middle_front_left": {
|
||||
"rotation": [7.5, 0, 0]
|
||||
},
|
||||
"claw_outer_front_left": {
|
||||
"rotation": [7.5, 0, 0]
|
||||
},
|
||||
"claw_inner_front_left": {
|
||||
"rotation": [7.5, 0, 0]
|
||||
},
|
||||
"neck_fluff_back2": {
|
||||
"rotation": [-50, 0, 0]
|
||||
},
|
||||
"leg_front_right": {
|
||||
"rotation": [-37.5352, -0.064, 9.7291],
|
||||
"position": [-0.25, -1.75, 0]
|
||||
},
|
||||
"leg_front_right2": {
|
||||
"rotation": [3.5, 0, 0]
|
||||
},
|
||||
"foot_front_right": {
|
||||
"rotation": [34.0275, 7.3656, -7.2548],
|
||||
"position": [0, 0.3, 0]
|
||||
},
|
||||
"leg_back_right": {
|
||||
"rotation": [-18.2881, 9.413, 10.1281],
|
||||
"position": [-0.25, 0, 0]
|
||||
},
|
||||
"leg_back_right2": {
|
||||
"rotation": [16.5248, 0.124, 0.1823]
|
||||
},
|
||||
"leg_back_right3": {
|
||||
"rotation": [6, 0, 0]
|
||||
},
|
||||
"foot_back_right": {
|
||||
"rotation": [-2.4124, 5.5284, -9.8095]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.absol.cry": {
|
||||
"sound_effects": {
|
||||
"0.04": {
|
||||
"effect": "pokemon.absol.cry"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+1028
-26
File diff suppressed because it is too large
Load Diff
+65
-61
@@ -1,67 +1,6 @@
|
||||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"animation.shinx.new": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"waist": {
|
||||
"rotation": [-32.5, 0, 0]
|
||||
},
|
||||
"tail_1": {
|
||||
"rotation": [-9.00717, 20.70481, 65.85133]
|
||||
},
|
||||
"tail_2": {
|
||||
"rotation": [67.5, 0, 0]
|
||||
},
|
||||
"tail_3": {
|
||||
"rotation": [45, 45, 0]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [-4.11405, -22.13991, 10.80524]
|
||||
},
|
||||
"eye_left": {
|
||||
"position": [0, 0, 1]
|
||||
},
|
||||
"eyelid_right2": {
|
||||
"position": [0, 0, -3]
|
||||
},
|
||||
"ear_left": {
|
||||
"rotation": [0, 0, 12.5]
|
||||
},
|
||||
"ear_right": {
|
||||
"rotation": [0, 0, -12.5]
|
||||
},
|
||||
"fluff": {
|
||||
"rotation": [0, 0, 20]
|
||||
},
|
||||
"open_mouth": {
|
||||
"position": [0, 0, -2]
|
||||
},
|
||||
"closed_mouth": {
|
||||
"position": [0, 0, 1]
|
||||
},
|
||||
"back_leg_right": {
|
||||
"rotation": [-40.08019, 31.37238, 1.3824],
|
||||
"position": [0, -1.5, -1]
|
||||
},
|
||||
"knee_right": {
|
||||
"rotation": [45, 0, 0]
|
||||
},
|
||||
"front_foot_right": {
|
||||
"rotation": [0, -5, 0]
|
||||
},
|
||||
"back_leg_left": {
|
||||
"rotation": [-40.08019, -31.37238, -1.3824],
|
||||
"position": [0, -1.5, -1]
|
||||
},
|
||||
"knee_left": {
|
||||
"rotation": [45, 0, 0]
|
||||
},
|
||||
"front_foot_left": {
|
||||
"rotation": [0, 5, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.shinx.ground_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
@@ -75,6 +14,71 @@
|
||||
"tail_3": {
|
||||
"rotation": [-37.5, 0, 0],
|
||||
"position": [0, 0.1, -0.3]
|
||||
},
|
||||
"leg_front_right": {
|
||||
"rotation": [0, 2.5, 0]
|
||||
},
|
||||
"leg_front_left": {
|
||||
"rotation": [0, -2.5, 0]
|
||||
},
|
||||
"leg_back_right": {
|
||||
"rotation": [0, 7.5, 2.5]
|
||||
},
|
||||
"leg_back_left": {
|
||||
"rotation": [0, -7.5, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.shinx.blink": {
|
||||
"animation_length": 0.1667,
|
||||
"bones": {
|
||||
"eye_right": {
|
||||
"position": {
|
||||
"0.0": [0.1, 0, 0.1],
|
||||
"0.1667": {"pre": [0.1, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eye_left": {
|
||||
"position": {
|
||||
"0.0": [-0.1, 0, 0.1],
|
||||
"0.1667": {"pre": [-0.1, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyelid_right": {
|
||||
"position": {
|
||||
"0.0": [-0.1, 0, -0.1],
|
||||
"0.1667": {"pre": [-0.1, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyelid_left": {
|
||||
"position": {
|
||||
"0.0": [0.1, 0, -0.1],
|
||||
"0.1667": {"pre": [0.1, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_blink_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.shinx.ditto_face": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"face": {
|
||||
"position": [0, 0, 0.1],
|
||||
"scale": 0
|
||||
},
|
||||
"face_ditto": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+74
-113
@@ -1,133 +1,94 @@
|
||||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"animation.luxio.idle": {
|
||||
"animation.luxio.ground_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"ear_right": {
|
||||
"rotation": [0, 0, -22.5]
|
||||
},
|
||||
"ear_left": {
|
||||
"rotation": [0, 0, 22.5]
|
||||
},
|
||||
"cheek_fluff_left": {
|
||||
"rotation": [0, 0, 22.5]
|
||||
},
|
||||
"cheek_fluff_right": {
|
||||
"rotation": [0, 0, -22.5]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": [37.5, 0, 0]
|
||||
"rotation": [35, 0, 0]
|
||||
},
|
||||
"tail_2": {
|
||||
"rotation": [-17.5, 0, 0]
|
||||
"tail2": {
|
||||
"rotation": [-30, 0, 0]
|
||||
},
|
||||
"tail_3": {
|
||||
"rotation": [-32.5, 0, 0]
|
||||
"tail3": {
|
||||
"rotation": [-30, 0, 0]
|
||||
},
|
||||
"tail_4": {
|
||||
"rotation": [-32.5, 0, 0]
|
||||
"tail4": {
|
||||
"rotation": [-25, 0, 0]
|
||||
},
|
||||
"tail_fluff_top": {
|
||||
"rotation": [5, 0, 0]
|
||||
},
|
||||
"leg_back_right": {
|
||||
"rotation": [0, 7.5, 5]
|
||||
},
|
||||
"foot_back_right2": {
|
||||
"rotation": [0, 0, -5]
|
||||
},
|
||||
"leg_back_left": {
|
||||
"rotation": [0, -7.5, -5]
|
||||
},
|
||||
"foot_back_left2": {
|
||||
"rotation": [0, 0, 5]
|
||||
},
|
||||
"leg_front_right": {
|
||||
"rotation": [0, 5, 0]
|
||||
},
|
||||
"leg_front_left": {
|
||||
"rotation": [0, -5, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.luxio.sleep": {
|
||||
"loop": true,
|
||||
"animation.luxio.blink": {
|
||||
"animation_length": 0.1667,
|
||||
"bones": {
|
||||
"body": {
|
||||
"position": [0, -4, 0]
|
||||
"eye_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"back_leg_right": {
|
||||
"rotation": [-90, 45, 0],
|
||||
"position": [4, 1, 1]
|
||||
},
|
||||
"knee_right": {
|
||||
"rotation": [90, 0, 0],
|
||||
"position": [0, 1, 1]
|
||||
},
|
||||
"back_paw_right": {
|
||||
"position": [0, 1, 0]
|
||||
},
|
||||
"back_leg_left": {
|
||||
"rotation": [-90, 45, 0],
|
||||
"position": [4, 1, -3]
|
||||
},
|
||||
"knee_left": {
|
||||
"rotation": [90, 0, 0],
|
||||
"position": [0, 1, 1]
|
||||
},
|
||||
"back_paw_left": {
|
||||
"position": [0, 1, 0]
|
||||
},
|
||||
"front_leg_right": {
|
||||
"rotation": [-45, 0, 0]
|
||||
},
|
||||
"elbow_right": {
|
||||
"rotation": [-42.73421, -15.69986, -16.32495]
|
||||
},
|
||||
"front_paw_right": {
|
||||
"rotation": [90, 0, 0]
|
||||
},
|
||||
"front_leg_left": {
|
||||
"rotation": [-47.41981, -31.37238, 1.3824]
|
||||
},
|
||||
"elbow_left": {
|
||||
"rotation": [-42.73421, 15.69986, 16.32495]
|
||||
},
|
||||
"front_paw_left": {
|
||||
"rotation": [90, 0, 0]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [-7.5, -22.5, 0],
|
||||
"position": [0, -1.25, -1.25]
|
||||
},
|
||||
"waist": {
|
||||
"rotation": [0, 45, 0]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": [-22.5, 22.5, 0],
|
||||
"position": [0, -0.75, 0]
|
||||
},
|
||||
"tail_2": {
|
||||
"rotation": [0, 67.5, 0]
|
||||
},
|
||||
"tail_3": {
|
||||
"rotation": [7.86119, 40.78947, 20.94102]
|
||||
},
|
||||
"tail_4": {
|
||||
"rotation": [0, 22.5, 0]
|
||||
},
|
||||
"tail_5": {
|
||||
"rotation": [22.5, 0, 0]
|
||||
},
|
||||
"neck": {
|
||||
"rotation": [22.5, 0, 0]
|
||||
},
|
||||
"ear_right": {
|
||||
"rotation": [0, 0, -22.5]
|
||||
},
|
||||
"ear_left": {
|
||||
"rotation": [0, 0, 22.5]
|
||||
},
|
||||
"head_fluff_top": {
|
||||
"rotation": [0, 0, -45]
|
||||
},
|
||||
"eyelid_l": {
|
||||
"position": [0, 0, -3]
|
||||
},
|
||||
"eyelid_r": {
|
||||
"position": [0, 0, -2]
|
||||
},
|
||||
"cheek_fluff_left": {
|
||||
"rotation": [0, 22.5, 22.5]
|
||||
},
|
||||
"cheek_fluff_right": {
|
||||
"rotation": [22.5, 0, -22.5]
|
||||
"eyelid_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eye_left": {
|
||||
"position": [0, 0, 1]
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eye_right": {
|
||||
"position": [0, 0, 1]
|
||||
"eyelid_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_blink_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.luxio.ditto_face": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"face": {
|
||||
"position": [0, 0, 0.1],
|
||||
"scale": 0
|
||||
},
|
||||
"face_ditto": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+88
-146
@@ -1,161 +1,103 @@
|
||||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"animation.luxray.new": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"rotation": [22.5, 0, 0],
|
||||
"position": [0, -2, 0]
|
||||
},
|
||||
"torso": {
|
||||
"rotation": [-22.5, 0, 0]
|
||||
},
|
||||
"waist": {
|
||||
"rotation": [24.14867, -20.70481, -9.00717]
|
||||
},
|
||||
"hips": {
|
||||
"rotation": [-22.81179, 9.23186, -3.86032]
|
||||
},
|
||||
"tail_1": {
|
||||
"rotation": [49.98844, 27.36694, 17.18133]
|
||||
},
|
||||
"tail_2": {
|
||||
"rotation": [-22.5, 22.5, 0]
|
||||
},
|
||||
"tail_3": {
|
||||
"rotation": [-53.52293, 35.66466, -17.31806]
|
||||
},
|
||||
"tail_4": {
|
||||
"rotation": [45, 45, 0]
|
||||
},
|
||||
"tail_5": {
|
||||
"rotation": [45, 45, 0]
|
||||
},
|
||||
"tail_6": {
|
||||
"rotation": [0, 22.5, 0]
|
||||
},
|
||||
"neck": {
|
||||
"rotation": [62.26579, -15.69986, -16.32495],
|
||||
"position": [0, -1, 0]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [-48.75474, -3.08149, 16.32258],
|
||||
"position": [0, -0.75, 0]
|
||||
},
|
||||
"mouth": {
|
||||
"rotation": [55, 0, 0]
|
||||
},
|
||||
"head_fluff_center_2": {
|
||||
"rotation": [0, 0, 22.5]
|
||||
},
|
||||
"head_fluff_center_3": {
|
||||
"rotation": [0, 22.5, 0]
|
||||
},
|
||||
"head_fluff_top_right": {
|
||||
"rotation": [0, 22.5, 0]
|
||||
},
|
||||
"head_fluff_top_2_right": {
|
||||
"rotation": [0, 22.5, 0]
|
||||
},
|
||||
"head_fluff_top_left": {
|
||||
"rotation": [0, 0, 0]
|
||||
},
|
||||
"head_fluff_top_2_left": {
|
||||
"rotation": [0, 22.5, 0]
|
||||
},
|
||||
"head_fluff_bottom_right": {
|
||||
"rotation": [0, 22.5, 0]
|
||||
},
|
||||
"head_fluff_bottom_left": {
|
||||
"rotation": [0, 22.5, 0]
|
||||
},
|
||||
"head_fluff_bottom_2_left": {
|
||||
"rotation": [0, 22.5, 0]
|
||||
},
|
||||
"ear_right": {
|
||||
"rotation": [0, 0, -17.5]
|
||||
},
|
||||
"ear_left": {
|
||||
"rotation": [0, 0, 17.5]
|
||||
},
|
||||
"front_leg_right": {
|
||||
"rotation": [-44.56145, 7.05302, 7.10708],
|
||||
"position": [0, -0.31732, -0.92388]
|
||||
},
|
||||
"elbow_right": {
|
||||
"rotation": [-42.73421, -15.69986, -16.32495]
|
||||
},
|
||||
"front_foot_right": {
|
||||
"rotation": [67.5, 0, 0]
|
||||
},
|
||||
"front_leg_left": {
|
||||
"rotation": [22.5, 0, 0],
|
||||
"position": [1.25, 1, 0]
|
||||
},
|
||||
"elbow_left": {
|
||||
"rotation": [-47.26579, -15.69986, 16.32495],
|
||||
"position": [-0.5, 0, 0]
|
||||
},
|
||||
"front_foot_left": {
|
||||
"rotation": [0, 10, 0]
|
||||
},
|
||||
"back_leg_right": {
|
||||
"rotation": [-46.64867, -20.70481, 9.00717],
|
||||
"position": [-5, -2.38896, -2.07193]
|
||||
},
|
||||
"knee_right": {
|
||||
"rotation": [67.5, 0, 0],
|
||||
"position": [0.76537, 0.33755, 1.86018]
|
||||
},
|
||||
"leg_right": {
|
||||
"rotation": [10, 0, 0]
|
||||
},
|
||||
"back_foot_right": {
|
||||
"rotation": [-57.5, 0, 0]
|
||||
},
|
||||
"back_leg_left": {
|
||||
"rotation": [-19.83264, -18.43795, -6.24926]
|
||||
},
|
||||
"knee_left": {
|
||||
"rotation": [0, 0, 12.5]
|
||||
},
|
||||
"leg_left": {
|
||||
"rotation": [7.5, 0, 0]
|
||||
},
|
||||
"back_foot_left": {
|
||||
"rotation": [-7.5, 0, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.luxray.ground_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"tail_1": {
|
||||
"rotation": [43, 0, 0]
|
||||
"tail": {
|
||||
"rotation": [30, 0, 0]
|
||||
},
|
||||
"tail_2": {
|
||||
"rotation": [22.5, 0, 0],
|
||||
"position": [0, 0, -0.2]
|
||||
"tail2": {
|
||||
"rotation": [25, 0, 0]
|
||||
},
|
||||
"tail_3": {
|
||||
"rotation": [-45, 0, 0],
|
||||
"position": [0, 0.1, -0.3]
|
||||
"tail3": {
|
||||
"rotation": [-45, 0, 0]
|
||||
},
|
||||
"tail_4": {
|
||||
"rotation": [-52.68932, -2.64422, -1.88999],
|
||||
"position": [0, 0.2, -0.4]
|
||||
"tail4": {
|
||||
"rotation": [-45, 0, 0]
|
||||
},
|
||||
"tail_5": {
|
||||
"rotation": [-30, 0, 0],
|
||||
"position": [0, 0.1, -0.2]
|
||||
"tail5": {
|
||||
"rotation": [-35, 0, 0]
|
||||
},
|
||||
"tail_6": {
|
||||
"rotation": [20, 0, 0],
|
||||
"position": [0, 0, -0.1]
|
||||
},
|
||||
"tail_fluff": {
|
||||
"tail_fluff_top": {
|
||||
"rotation": [5, 0, 0]
|
||||
},
|
||||
"tail6": {
|
||||
"rotation": [35, 0, 0]
|
||||
},
|
||||
"tail7": {
|
||||
"rotation": [20, 0, 0]
|
||||
},
|
||||
"leg_front_left": {
|
||||
"rotation": [0, 0, 0]
|
||||
},
|
||||
"leg_front_right": {
|
||||
"rotation": [0, 5, 0]
|
||||
},
|
||||
"leg_back_left": {
|
||||
"rotation": [0, -7.5, -2.5]
|
||||
},
|
||||
"foot_back_left2": {
|
||||
"rotation": [0, 0, 2.5]
|
||||
},
|
||||
"leg_back_right": {
|
||||
"rotation": [0, 7.5, 2.5]
|
||||
},
|
||||
"foot_back_right2": {
|
||||
"rotation": [0, 0, -2.5]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.luxray.blink": {
|
||||
"animation_length": 0.1667,
|
||||
"bones": {
|
||||
"eye_left": {
|
||||
"position": {
|
||||
"0.0": [-0.1, 0, 0.1],
|
||||
"0.1667": {"pre": [-0.1, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eye_right": {
|
||||
"position": {
|
||||
"0.0": [0.1, 0, 0.1],
|
||||
"0.1667": {"pre": [0.1, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyelid_left": {
|
||||
"position": {
|
||||
"0.0": [0.1, 0, -0.1],
|
||||
"0.1667": {"pre": [0.1, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyelid_right": {
|
||||
"position": {
|
||||
"0.0": [-0.1, 0, -0.1],
|
||||
"0.1667": {"pre": [-0.1, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_blink_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.luxray.ditto_face": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"face": {
|
||||
"position": [0, 0, 0.1],
|
||||
"scale": 0
|
||||
},
|
||||
"face_ditto": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+208
@@ -0,0 +1,208 @@
|
||||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"animation.burmy_plant.ground_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"rotation": [2.5201, 0.3141, 0.0322],
|
||||
"position": [0, 6, 0]
|
||||
},
|
||||
"body_rotation": {
|
||||
"rotation": [2.5, 0, 0]
|
||||
},
|
||||
"spring2": {
|
||||
"rotation": [-2.5, 0, 0]
|
||||
},
|
||||
"segment1": {
|
||||
"position": [0, 0.5, 0]
|
||||
},
|
||||
"leg_left1": {
|
||||
"rotation": [0, 15, 0]
|
||||
},
|
||||
"leg_right1": {
|
||||
"rotation": [0, -15, 0]
|
||||
},
|
||||
"segment2": {
|
||||
"position": [0, 0.5, 0]
|
||||
},
|
||||
"segment3": {
|
||||
"position": [0, 0.5, 0]
|
||||
},
|
||||
"leg_left2": {
|
||||
"rotation": [0, 17.5, 0]
|
||||
},
|
||||
"leg_left3": {
|
||||
"rotation": [0, 25, 0]
|
||||
},
|
||||
"leg_right2": {
|
||||
"rotation": [0, -17.5, 0]
|
||||
},
|
||||
"leg_right3": {
|
||||
"rotation": [0, -25, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.burmy_plant.ground_idle_naked": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body_rotation": {
|
||||
"rotation": [7.5, 0, 0],
|
||||
"position": [0, 0, -3]
|
||||
},
|
||||
"segment1": {
|
||||
"rotation": [75, 0, 0]
|
||||
},
|
||||
"leg_left1": {
|
||||
"rotation": [0.00002, 0.00005, 0.00002]
|
||||
},
|
||||
"cloak_plant": {
|
||||
"scale": 0
|
||||
},
|
||||
"body": {
|
||||
"rotation": [2.5, 0, 0],
|
||||
"position": [0, -7.25, 0]
|
||||
},
|
||||
"leg_right1": {
|
||||
"rotation": [0.00002, -0.00005, -0.00002]
|
||||
},
|
||||
"segment2": {
|
||||
"rotation": [5, 0, 0]
|
||||
},
|
||||
"segment3": {
|
||||
"rotation": [2.5781, -0.5734, 0.2485]
|
||||
},
|
||||
"leg_left2": {
|
||||
"rotation": [2.53742, -4.92385, -0.87038]
|
||||
},
|
||||
"leg_left3": {
|
||||
"rotation": [7.53742, -4.92385, -0.87038]
|
||||
},
|
||||
"leg_right2": {
|
||||
"rotation": [2.53742, 4.92385, 0.87038]
|
||||
},
|
||||
"leg_right3": {
|
||||
"rotation": [7.53742, 4.92385, 0.87038]
|
||||
},
|
||||
"face": {
|
||||
"position": [0, 0, 1]
|
||||
},
|
||||
"cloaked_face": {
|
||||
"scale": 0
|
||||
},
|
||||
"face_ditto": {
|
||||
"position": [0, 0, 1]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.burmy_plant.spring": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"rotation": [2.5201, 0.3141, 0.0322],
|
||||
"position": [0, 6, 0]
|
||||
},
|
||||
"body_rotation": {
|
||||
"rotation": [2.5, 0, 0],
|
||||
"position": [0, -3, 0]
|
||||
},
|
||||
"spring2": {
|
||||
"rotation": [35.9366, -29.087, 32.6804]
|
||||
},
|
||||
"segment1": {
|
||||
"position": [0, 0.5, 0]
|
||||
},
|
||||
"leg_left1": {
|
||||
"rotation": [0, 15, 0]
|
||||
},
|
||||
"spring": {
|
||||
"rotation": [-26.941, -5.7358, -11.1249]
|
||||
},
|
||||
"spring3": {
|
||||
"rotation": [-24.3803, 6.6782, -46.9093]
|
||||
},
|
||||
"spring4": {
|
||||
"rotation": [0, 0, -35]
|
||||
},
|
||||
"leg_right1": {
|
||||
"rotation": [0, -15, 0]
|
||||
},
|
||||
"segment2": {
|
||||
"position": [0, 0.5, 0]
|
||||
},
|
||||
"segment3": {
|
||||
"position": [0, 0.5, 0]
|
||||
},
|
||||
"leg_left2": {
|
||||
"rotation": [0, 17.5, 0]
|
||||
},
|
||||
"leg_left3": {
|
||||
"rotation": [0, 25, 0]
|
||||
},
|
||||
"leg_right2": {
|
||||
"rotation": [0, -17.5, 0]
|
||||
},
|
||||
"leg_right3": {
|
||||
"rotation": [0, -25, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.burmy_plant.ditto_face": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"face": {
|
||||
"position": [0, 0, 0.1],
|
||||
"scale": 0
|
||||
},
|
||||
"face_ditto": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.burmy_plant.blink": {
|
||||
"animation_length": 0.1667,
|
||||
"bones": {
|
||||
"pupil_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.125": {"pre": [0, 0, 0.1], "post": [0, 0, 0.1]},
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"pupil_closed_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.125": {"pre": [0, 0, -0.1], "post": [0, 0, -0.1]},
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"pupil_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.125": {"pre": [0, 0, 0.1], "post": [0, 0, 0.1]},
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"pupil_closed_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.125": {"pre": [0, 0, -0.1], "post": [0, 0, -0.1]},
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_blink_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+208
@@ -0,0 +1,208 @@
|
||||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"animation.burmy_sandy.ground_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"rotation": [2.5201, 0.3141, 0.0322],
|
||||
"position": [0, 6, 0]
|
||||
},
|
||||
"body_rotation": {
|
||||
"rotation": [2.5, 0, 0]
|
||||
},
|
||||
"spring2": {
|
||||
"rotation": [-2.5, 0, 0]
|
||||
},
|
||||
"segment1": {
|
||||
"position": [0, 0.5, 0]
|
||||
},
|
||||
"leg_left1": {
|
||||
"rotation": [0, 15, 0]
|
||||
},
|
||||
"leg_right1": {
|
||||
"rotation": [0, -15, 0]
|
||||
},
|
||||
"segment2": {
|
||||
"position": [0, 0.5, 0]
|
||||
},
|
||||
"segment3": {
|
||||
"position": [0, 0.5, 0]
|
||||
},
|
||||
"leg_left2": {
|
||||
"rotation": [0, 17.5, 0]
|
||||
},
|
||||
"leg_left3": {
|
||||
"rotation": [0, 25, 0]
|
||||
},
|
||||
"leg_right2": {
|
||||
"rotation": [0, -17.5, 0]
|
||||
},
|
||||
"leg_right3": {
|
||||
"rotation": [0, -25, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.burmy_sandy.ground_idle_naked": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body_rotation": {
|
||||
"rotation": [7.5, 0, 0],
|
||||
"position": [0, 0, -3]
|
||||
},
|
||||
"segment1": {
|
||||
"rotation": [75, 0, 0]
|
||||
},
|
||||
"leg_left1": {
|
||||
"rotation": [0.00002, 0.00005, 0.00002]
|
||||
},
|
||||
"cloak_plant": {
|
||||
"scale": 0
|
||||
},
|
||||
"body": {
|
||||
"rotation": [2.5, 0, 0],
|
||||
"position": [0, -7.25, 0]
|
||||
},
|
||||
"leg_right1": {
|
||||
"rotation": [0.00002, -0.00005, -0.00002]
|
||||
},
|
||||
"segment2": {
|
||||
"rotation": [5, 0, 0]
|
||||
},
|
||||
"segment3": {
|
||||
"rotation": [2.5781, -0.5734, 0.2485]
|
||||
},
|
||||
"leg_left2": {
|
||||
"rotation": [2.53742, -4.92385, -0.87038]
|
||||
},
|
||||
"leg_left3": {
|
||||
"rotation": [7.53742, -4.92385, -0.87038]
|
||||
},
|
||||
"leg_right2": {
|
||||
"rotation": [2.53742, 4.92385, 0.87038]
|
||||
},
|
||||
"leg_right3": {
|
||||
"rotation": [7.53742, 4.92385, 0.87038]
|
||||
},
|
||||
"face": {
|
||||
"position": [0, 0, 1]
|
||||
},
|
||||
"cloaked_face": {
|
||||
"scale": 0
|
||||
},
|
||||
"face_ditto": {
|
||||
"position": [0, 0, 1]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.burmy_sandy.spring": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"rotation": [2.5201, 0.3141, 0.0322],
|
||||
"position": [0, 6, 0]
|
||||
},
|
||||
"body_rotation": {
|
||||
"rotation": [2.5, 0, 0],
|
||||
"position": [0, -3, 0]
|
||||
},
|
||||
"spring2": {
|
||||
"rotation": [35.9366, -29.087, 32.6804]
|
||||
},
|
||||
"segment1": {
|
||||
"position": [0, 0.5, 0]
|
||||
},
|
||||
"leg_left1": {
|
||||
"rotation": [0, 15, 0]
|
||||
},
|
||||
"spring": {
|
||||
"rotation": [-26.941, -5.7358, -11.1249]
|
||||
},
|
||||
"spring3": {
|
||||
"rotation": [-24.3803, 6.6782, -46.9093]
|
||||
},
|
||||
"spring4": {
|
||||
"rotation": [0, 0, -35]
|
||||
},
|
||||
"leg_right1": {
|
||||
"rotation": [0, -15, 0]
|
||||
},
|
||||
"segment2": {
|
||||
"position": [0, 0.5, 0]
|
||||
},
|
||||
"segment3": {
|
||||
"position": [0, 0.5, 0]
|
||||
},
|
||||
"leg_left2": {
|
||||
"rotation": [0, 17.5, 0]
|
||||
},
|
||||
"leg_left3": {
|
||||
"rotation": [0, 25, 0]
|
||||
},
|
||||
"leg_right2": {
|
||||
"rotation": [0, -17.5, 0]
|
||||
},
|
||||
"leg_right3": {
|
||||
"rotation": [0, -25, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.burmy_sandy.ditto_face": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"face": {
|
||||
"position": [0, 0, 0.1],
|
||||
"scale": 0
|
||||
},
|
||||
"face_ditto": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.burmy_sandy.blink": {
|
||||
"animation_length": 0.1667,
|
||||
"bones": {
|
||||
"pupil_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.125": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"pupil_closed_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.125": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"pupil_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.125": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"pupil_closed_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.125": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_blink_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+208
@@ -0,0 +1,208 @@
|
||||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"animation.burmy_trash.ground_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"rotation": [2.5201, 0.3141, 0.0322],
|
||||
"position": [0, 6, 0]
|
||||
},
|
||||
"body_rotation": {
|
||||
"rotation": [2.5, 0, 0]
|
||||
},
|
||||
"spring2": {
|
||||
"rotation": [-2.5, 0, 0]
|
||||
},
|
||||
"segment1": {
|
||||
"position": [0, 0.5, 0]
|
||||
},
|
||||
"leg_left1": {
|
||||
"rotation": [0, 15, 0]
|
||||
},
|
||||
"leg_right1": {
|
||||
"rotation": [0, -15, 0]
|
||||
},
|
||||
"segment2": {
|
||||
"position": [0, 0.5, 0]
|
||||
},
|
||||
"segment3": {
|
||||
"position": [0, 0.5, 0]
|
||||
},
|
||||
"leg_left2": {
|
||||
"rotation": [0, 17.5, 0]
|
||||
},
|
||||
"leg_left3": {
|
||||
"rotation": [0, 25, 0]
|
||||
},
|
||||
"leg_right2": {
|
||||
"rotation": [0, -17.5, 0]
|
||||
},
|
||||
"leg_right3": {
|
||||
"rotation": [0, -25, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.burmy_trash.ground_idle_naked": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body_rotation": {
|
||||
"rotation": [7.5, 0, 0],
|
||||
"position": [0, 0, -3]
|
||||
},
|
||||
"segment1": {
|
||||
"rotation": [75, 0, 0]
|
||||
},
|
||||
"leg_left1": {
|
||||
"rotation": [0.00002, 0.00005, 0.00002]
|
||||
},
|
||||
"cloak_plant": {
|
||||
"scale": 0
|
||||
},
|
||||
"body": {
|
||||
"rotation": [2.5, 0, 0],
|
||||
"position": [0, -7.25, 0]
|
||||
},
|
||||
"leg_right1": {
|
||||
"rotation": [0.00002, -0.00005, -0.00002]
|
||||
},
|
||||
"segment2": {
|
||||
"rotation": [5, 0, 0]
|
||||
},
|
||||
"segment3": {
|
||||
"rotation": [2.5781, -0.5734, 0.2485]
|
||||
},
|
||||
"leg_left2": {
|
||||
"rotation": [2.53742, -4.92385, -0.87038]
|
||||
},
|
||||
"leg_left3": {
|
||||
"rotation": [7.53742, -4.92385, -0.87038]
|
||||
},
|
||||
"leg_right2": {
|
||||
"rotation": [2.53742, 4.92385, 0.87038]
|
||||
},
|
||||
"leg_right3": {
|
||||
"rotation": [7.53742, 4.92385, 0.87038]
|
||||
},
|
||||
"face": {
|
||||
"position": [0, 0, 1]
|
||||
},
|
||||
"cloaked_face": {
|
||||
"scale": 0
|
||||
},
|
||||
"face_ditto": {
|
||||
"position": [0, 0, 1]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.burmy_trash.spring": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"rotation": [2.5201, 0.3141, 0.0322],
|
||||
"position": [0, 6, 0]
|
||||
},
|
||||
"body_rotation": {
|
||||
"rotation": [2.5, 0, 0],
|
||||
"position": [0, -3, 0]
|
||||
},
|
||||
"spring2": {
|
||||
"rotation": [35.9366, -29.087, 32.6804]
|
||||
},
|
||||
"segment1": {
|
||||
"position": [0, 0.5, 0]
|
||||
},
|
||||
"leg_left1": {
|
||||
"rotation": [0, 15, 0]
|
||||
},
|
||||
"spring": {
|
||||
"rotation": [-26.941, -5.7358, -11.1249]
|
||||
},
|
||||
"spring3": {
|
||||
"rotation": [-24.3803, 6.6782, -46.9093]
|
||||
},
|
||||
"spring4": {
|
||||
"rotation": [0, 0, -35]
|
||||
},
|
||||
"leg_right1": {
|
||||
"rotation": [0, -15, 0]
|
||||
},
|
||||
"segment2": {
|
||||
"position": [0, 0.5, 0]
|
||||
},
|
||||
"segment3": {
|
||||
"position": [0, 0.5, 0]
|
||||
},
|
||||
"leg_left2": {
|
||||
"rotation": [0, 17.5, 0]
|
||||
},
|
||||
"leg_left3": {
|
||||
"rotation": [0, 25, 0]
|
||||
},
|
||||
"leg_right2": {
|
||||
"rotation": [0, -17.5, 0]
|
||||
},
|
||||
"leg_right3": {
|
||||
"rotation": [0, -25, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.burmy_trash.ditto_face": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"face": {
|
||||
"position": [0, 0, 0.1],
|
||||
"scale": 0
|
||||
},
|
||||
"face_ditto": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.burmy_trash.blink": {
|
||||
"animation_length": 0.1667,
|
||||
"bones": {
|
||||
"pupil_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.125": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"pupil_closed_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.125": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"pupil_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.125": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"pupil_closed_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.125": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_blink_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+107
@@ -0,0 +1,107 @@
|
||||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"animation.wormadam_plant.ground_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"rotation": [5, 0, 0],
|
||||
"position": [0, 6, 0]
|
||||
},
|
||||
"body_rotation": {
|
||||
"rotation": [0, 0, 0]
|
||||
},
|
||||
"antenna": {
|
||||
"rotation": [-2.5, 0, 0]
|
||||
},
|
||||
"ear_left": {
|
||||
"rotation": [0, -12.5, 0]
|
||||
},
|
||||
"ear_left2": {
|
||||
"rotation": [0, 0, 20]
|
||||
},
|
||||
"ear_left3": {
|
||||
"rotation": [0, 0, 22.5]
|
||||
},
|
||||
"ear_back_left": {
|
||||
"rotation": [-7.5, 0, 25]
|
||||
},
|
||||
"ear_left4": {
|
||||
"rotation": [0, 0, 17.5]
|
||||
},
|
||||
"ear_right": {
|
||||
"rotation": [0, 12.5, 0]
|
||||
},
|
||||
"ear_right2": {
|
||||
"rotation": [0, 0, -20]
|
||||
},
|
||||
"ear_right3": {
|
||||
"rotation": [0, 0, -22.5]
|
||||
},
|
||||
"ear_right4": {
|
||||
"rotation": [0, 0, -17.5]
|
||||
},
|
||||
"ear_back_right": {
|
||||
"rotation": [-7.5, 0, -25]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.wormadam_plant.blink": {
|
||||
"animation_length": 0.1667,
|
||||
"bones": {
|
||||
"pupil_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.125": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"pupil_closed_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.125": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"pupil_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.125": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"pupil_closed_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.125": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_blink_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.wormadam_plant.ditto_face": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"face": {
|
||||
"position": [0, 0, 0.1],
|
||||
"scale": 0
|
||||
},
|
||||
"face_ditto": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+107
@@ -0,0 +1,107 @@
|
||||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"animation.wormadam_sandy.ground_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"rotation": [5, 0, 0],
|
||||
"position": [0, 6, 0]
|
||||
},
|
||||
"body_rotation": {
|
||||
"rotation": [0, 0, 0]
|
||||
},
|
||||
"antenna": {
|
||||
"rotation": [-2.5, 0, 0]
|
||||
},
|
||||
"ear_left": {
|
||||
"rotation": [0, -12.5, 0]
|
||||
},
|
||||
"ear_left2": {
|
||||
"rotation": [0, 0, 20]
|
||||
},
|
||||
"ear_left3": {
|
||||
"rotation": [0, 0, 22.5]
|
||||
},
|
||||
"ear_back_left": {
|
||||
"rotation": [-7.5, 0, 25]
|
||||
},
|
||||
"ear_left4": {
|
||||
"rotation": [0, 0, 17.5]
|
||||
},
|
||||
"ear_right": {
|
||||
"rotation": [0, 12.5, 0]
|
||||
},
|
||||
"ear_right2": {
|
||||
"rotation": [0, 0, -20]
|
||||
},
|
||||
"ear_right3": {
|
||||
"rotation": [0, 0, -22.5]
|
||||
},
|
||||
"ear_right4": {
|
||||
"rotation": [0, 0, -17.5]
|
||||
},
|
||||
"ear_back_right": {
|
||||
"rotation": [-7.5, 0, -25]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.wormadam_sandy.blink": {
|
||||
"animation_length": 0.1667,
|
||||
"bones": {
|
||||
"pupil_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.125": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"pupil_closed_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.125": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"pupil_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.125": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"pupil_closed_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.125": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_blink_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.wormadam_sandy.ditto_face": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"face": {
|
||||
"position": [0, 0, 0.1],
|
||||
"scale": 0
|
||||
},
|
||||
"face_ditto": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+107
@@ -0,0 +1,107 @@
|
||||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"animation.wormadam_trash.ground_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"rotation": [5, 0, 0],
|
||||
"position": [0, 6, 0]
|
||||
},
|
||||
"body_rotation": {
|
||||
"rotation": [0, 0, 0]
|
||||
},
|
||||
"antenna": {
|
||||
"rotation": [-2.5, 0, 0]
|
||||
},
|
||||
"ear_left": {
|
||||
"rotation": [0, -12.5, 0]
|
||||
},
|
||||
"ear_left2": {
|
||||
"rotation": [0, 0, 20]
|
||||
},
|
||||
"ear_left3": {
|
||||
"rotation": [0, 0, 22.5]
|
||||
},
|
||||
"ear_back_left": {
|
||||
"rotation": [-7.5, 0, 25]
|
||||
},
|
||||
"ear_left4": {
|
||||
"rotation": [0, 0, 17.5]
|
||||
},
|
||||
"ear_right": {
|
||||
"rotation": [0, 12.5, 0]
|
||||
},
|
||||
"ear_right2": {
|
||||
"rotation": [0, 0, -20]
|
||||
},
|
||||
"ear_right3": {
|
||||
"rotation": [0, 0, -22.5]
|
||||
},
|
||||
"ear_right4": {
|
||||
"rotation": [0, 0, -17.5]
|
||||
},
|
||||
"ear_back_right": {
|
||||
"rotation": [-7.5, 0, -25]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.wormadam_trash.blink": {
|
||||
"animation_length": 0.1667,
|
||||
"bones": {
|
||||
"pupil_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.125": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"pupil_closed_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.125": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"pupil_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.125": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"pupil_closed_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.125": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_blink_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.wormadam_trash.ditto_face": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"face": {
|
||||
"position": [0, 0, 0.1],
|
||||
"scale": 0
|
||||
},
|
||||
"face_ditto": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+100
@@ -0,0 +1,100 @@
|
||||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"animation.mothim.ground_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"torso": {
|
||||
"rotation": [5, 0, 0]
|
||||
},
|
||||
"wing_upper_left": {
|
||||
"rotation": [1.3185, -9.9136, -7.6143]
|
||||
},
|
||||
"wing_lower_left": {
|
||||
"rotation": [-2.5, -12.5, 0]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"antenna_left": {
|
||||
"rotation": [-22.4229, 1.9113, 4.6211]
|
||||
},
|
||||
"antenna_left2": {
|
||||
"rotation": [-7.5, 0, 0]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": [-12.5, 0, 0]
|
||||
},
|
||||
"antenna_right": {
|
||||
"rotation": [-22.4229, -1.9113, -4.6211]
|
||||
},
|
||||
"antenna_right2": {
|
||||
"rotation": [-7.5, 0, 0]
|
||||
},
|
||||
"arm_left": {
|
||||
"rotation": [-0.9096, 19.9802, 44.8398]
|
||||
},
|
||||
"arm_right": {
|
||||
"rotation": [-0.9096, -19.9802, -44.8398]
|
||||
},
|
||||
"leg_left": {
|
||||
"rotation": [-9.041, -41.7073, 13.4501]
|
||||
},
|
||||
"leg_right": {
|
||||
"rotation": [-9.041, 41.7073, -13.4501]
|
||||
},
|
||||
"wing_upper_right": {
|
||||
"rotation": [1.3185, 9.9136, 7.6143]
|
||||
},
|
||||
"wing_lower_right": {
|
||||
"rotation": [-2.5, 12.5, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.mothim.blink": {
|
||||
"animation_length": 0.1667,
|
||||
"bones": {
|
||||
"eye_open_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.125": {"pre": [0, 0, 0.1], "post": [0, 0, 0.1]},
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eye_open_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.125": {"pre": [0, 0, 0.1], "post": [0, 0, 0.1]},
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eye_closed_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.125": {"pre": [0, 0, -0.1], "post": [0, 0, -0.1]},
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, -0.1]}
|
||||
}
|
||||
},
|
||||
"eye_closed_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.125": {"pre": [0, 0, -0.1], "post": [0, 0, -0.1]},
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, -0.1]}
|
||||
}
|
||||
},
|
||||
"eyes_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_blink_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+138
@@ -319,6 +319,144 @@
|
||||
"position": [1, 1, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.bonsly.shoulder_left": {
|
||||
"loop": true,
|
||||
"animation_length": 4,
|
||||
"bones": {
|
||||
"body": {
|
||||
"rotation": [0, -30, 0]
|
||||
},
|
||||
"torso": {
|
||||
"rotation": ["-10+math.sin(q.anim_time*90*2-90)*1.5", 0, "math.sin(q.anim_time*90*2/2-180)*1.5"],
|
||||
"position": [0, 0, 0]
|
||||
},
|
||||
"stem": {
|
||||
"rotation": ["math.sin(q.anim_time*90*2-90-90)*1", 0, 0]
|
||||
},
|
||||
"stem2": {
|
||||
"rotation": ["math.sin(q.anim_time*90*2-150)*4", 0, 0]
|
||||
},
|
||||
"mouth_closed": {
|
||||
"rotation": [0, 0, 180],
|
||||
"position": [0, 0.75, 0]
|
||||
},
|
||||
"leg_left": {
|
||||
"rotation": ["-66.956-math.sin(q.anim_time*90*3-90)*3.5", -37.4642, 3.1596],
|
||||
"position": [0.5, "math.sin(q.anim_time*90*2/2-180)*-0.25", -1.25]
|
||||
},
|
||||
"leg_left2": {
|
||||
"rotation": ["20-math.sin(q.anim_time*90*3-150)*15.5", 0, 0]
|
||||
},
|
||||
"foot_left": {
|
||||
"rotation": ["40-math.sin(q.anim_time*90*3-210)*7.5", 0, 0]
|
||||
},
|
||||
"leg_right": {
|
||||
"rotation": ["-58.8106+math.sin(q.anim_time*90*3-90)*3.5", 15.095, 8.959],
|
||||
"position": [-0.25, "math.sin(q.anim_time*90*2/2-180)*0.1", -1.5]
|
||||
},
|
||||
"leg_right2": {
|
||||
"rotation": ["20+math.sin(q.anim_time*90*3-150)*15.5", 0, 0]
|
||||
},
|
||||
"foot_right": {
|
||||
"rotation": ["40+math.sin(q.anim_time*90*3-210)*7.5", 0, 0]
|
||||
},
|
||||
"pupil_left": {
|
||||
"position": [-0.2, -0.1, 0]
|
||||
},
|
||||
"pupil_right": {
|
||||
"position": [-0.1, -0.1, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.bonsly.shoulder_right": {
|
||||
"loop": true,
|
||||
"animation_length": 4,
|
||||
"bones": {
|
||||
"body": {
|
||||
"rotation": [0, 30, 0]
|
||||
},
|
||||
"torso": {
|
||||
"rotation": ["-10+math.sin(q.anim_time*90*2-90)*1.5", 0, "-math.sin(q.anim_time*90*2/2-180)*1.5"],
|
||||
"position": [0, 0, 0]
|
||||
},
|
||||
"stem": {
|
||||
"rotation": ["math.sin(q.anim_time*90*2-90-90)*1", 0, 0]
|
||||
},
|
||||
"stem2": {
|
||||
"rotation": ["math.sin(q.anim_time*90*2-150)*4", 0, 0]
|
||||
},
|
||||
"mouth_closed": {
|
||||
"rotation": [0, 0, -180],
|
||||
"position": [0, 0.75, 0]
|
||||
},
|
||||
"leg_left": {
|
||||
"rotation": ["-58.8106+math.sin(q.anim_time*90*3-90)*3.5", -15.095, -8.959],
|
||||
"position": [0.25, "math.sin(q.anim_time*90*2/2-180)*0.1", -1.5]
|
||||
},
|
||||
"leg_left2": {
|
||||
"rotation": ["20+math.sin(q.anim_time*90*3-150)*15.5", 0, 0]
|
||||
},
|
||||
"foot_left": {
|
||||
"rotation": ["40+math.sin(q.anim_time*90*3-210)*7.5", 0, 0]
|
||||
},
|
||||
"leg_right": {
|
||||
"rotation": ["-66.956-math.sin(q.anim_time*90*3-90)*3.5", 37.4642, -3.1596],
|
||||
"position": [-0.5, "math.sin(q.anim_time*90*2/2-180)*-0.25", -1.25]
|
||||
},
|
||||
"leg_right2": {
|
||||
"rotation": ["20-math.sin(q.anim_time*90*3-150)*15.5", 0, 0]
|
||||
},
|
||||
"foot_right": {
|
||||
"rotation": ["40-math.sin(q.anim_time*90*3-210)*7.5", 0, 0]
|
||||
},
|
||||
"pupil_left": {
|
||||
"position": [0.1, -0.1, 0]
|
||||
},
|
||||
"pupil_right": {
|
||||
"position": [0.2, -0.1, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.bonsly.shoulder_left_position": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"position": [2.75, -4, -0.5]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.bonsly.shoulder_right_position": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"position": [-2.75, -4, -0.5]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.bonsly.looktest": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"torso": {
|
||||
"rotation": [0, 0, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.bonsly.scaletest": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"bonsly": {
|
||||
"scale": 0.6
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.bonsly.walkspeedtest": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"bonsly": {
|
||||
"position": [0, 0, "40-q.anim_time*90*0.2"]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+205
-691
File diff suppressed because it is too large
Load Diff
+104
@@ -0,0 +1,104 @@
|
||||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"animation.snover.ground_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"tail": {
|
||||
"rotation": [-7.44134, 0.07948, 0.53084]
|
||||
},
|
||||
"arm_right": {
|
||||
"rotation": [0, 0, "-32.5-5*Math.sin((query.anim_time-0.5) * 90 * 1)"]
|
||||
},
|
||||
"arm_right2": {
|
||||
"rotation": [0, "-12.5+5*Math.sin((query.anim_time-0.75) * 90 * 1)", 0]
|
||||
},
|
||||
"torso": {
|
||||
"rotation": ["-2.5+2*Math.sin((query.anim_time-0) * 90 * 1)", 0, "-2*Math.sin((query.anim_time-0.8) * 90 * 0.5)"],
|
||||
"position": [0, "0.1*Math.sin((query.anim_time-0.75) * 90 * 1)", 0]
|
||||
},
|
||||
"torso2": {
|
||||
"rotation": ["5+1*Math.sin((query.anim_time-0.25) * 90 * 1)", 0, 0]
|
||||
},
|
||||
"arm_left": {
|
||||
"rotation": [0, 0, "32.5+5*Math.sin((query.anim_time-0.5) * 90 * 1)"]
|
||||
},
|
||||
"arm_left2": {
|
||||
"rotation": [0, "12.5-5*Math.sin((query.anim_time-0.75) * 90 * 1)", 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.snover.blink": {
|
||||
"animation_length": 0.1667,
|
||||
"bones": {
|
||||
"pupil_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"pupil_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"pupil_closed_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"pupil_closed_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_blink_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.snover.ditto_face": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"eyes": {
|
||||
"scale": 0
|
||||
},
|
||||
"face_ditto": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.snover.berries_female": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"berry_front": {
|
||||
"position": [0, 0, -4]
|
||||
},
|
||||
"berry_front_right": {
|
||||
"position": [-4, 0, -4]
|
||||
},
|
||||
"berry_back_right": {
|
||||
"position": [-4, 0, 4]
|
||||
},
|
||||
"berry_front_left": {
|
||||
"position": [4, 0, -4]
|
||||
},
|
||||
"berry_back_left": {
|
||||
"position": [4, 0, 4]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+110
@@ -0,0 +1,110 @@
|
||||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"animation.abomasnow.ground_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"torso2": {
|
||||
"rotation": [2.5, 0, 0]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [-2.5, 0, 0]
|
||||
},
|
||||
"arm_left": {
|
||||
"rotation": [0, 0, 35]
|
||||
},
|
||||
"arm_left2": {
|
||||
"rotation": [4.75346, 32.18826, 8.87221]
|
||||
},
|
||||
"finger_front_left": {
|
||||
"rotation": [-3.96713, -14.47751, 15.50409]
|
||||
},
|
||||
"finger_middle_left": {
|
||||
"rotation": [0, 0, 15]
|
||||
},
|
||||
"finger_back_left": {
|
||||
"rotation": [3.96713, 14.47751, 15.50409]
|
||||
},
|
||||
"foot_left": {
|
||||
"rotation": [0, -15, 0]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": [-15, 0, 0]
|
||||
},
|
||||
"tail2": {
|
||||
"rotation": [5, 0, 0]
|
||||
},
|
||||
"tail3": {
|
||||
"rotation": [5, 0, 0]
|
||||
},
|
||||
"arm_right": {
|
||||
"rotation": [0, 0, -35]
|
||||
},
|
||||
"arm_right2": {
|
||||
"rotation": [4.75346, -32.18826, -8.87221]
|
||||
},
|
||||
"finger_front_right": {
|
||||
"rotation": [-3.96713, 14.47751, -15.50409]
|
||||
},
|
||||
"finger_middle_right": {
|
||||
"rotation": [0, 0, -15]
|
||||
},
|
||||
"finger_back_right": {
|
||||
"rotation": [3.96713, -14.47751, -15.50409]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.abomasnow.blink": {
|
||||
"animation_length": 0.1667,
|
||||
"bones": {
|
||||
"eye_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eye_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyelid_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyelid_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_blink_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.abomasnow.ditto_face": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"eyes": {
|
||||
"scale": 0
|
||||
},
|
||||
"face_ditto": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+279
@@ -0,0 +1,279 @@
|
||||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"animation.tympole.ground_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"torso": {
|
||||
"rotation": [-2.5, 0, 0]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": [-37.5, 0, 0]
|
||||
},
|
||||
"tail2": {
|
||||
"rotation": [35, 0, 0]
|
||||
},
|
||||
"tail3": {
|
||||
"rotation": [10, 0, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.tympole.sleep": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"rotation": [-95, 0, 0],
|
||||
"position": [0, 0, 2]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": [-85, 0, 0]
|
||||
},
|
||||
"tail2": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"tail3": {
|
||||
"rotation": [-12.5, 0, 0]
|
||||
},
|
||||
"eye_left": {
|
||||
"position": [0, 0, 0.1]
|
||||
},
|
||||
"eye_right": {
|
||||
"position": [0, 0, 0.1]
|
||||
},
|
||||
"eyelid_right": {
|
||||
"position": [0, 0, -0.1]
|
||||
},
|
||||
"eyelid_left": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.tympole.blink": {
|
||||
"animation_length": 0.1667,
|
||||
"bones": {
|
||||
"eye_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyelid_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eye_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyelid_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_blink_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.tympole.ditto_face": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"face": {
|
||||
"scale": 0
|
||||
},
|
||||
"face_ditto": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.tympole.pose": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"rotation": [-8.5958, -5.68422, 21.80633],
|
||||
"position": [0, 8, 0]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": [-67.5, -22.5, 0],
|
||||
"position": [0, -2, 0]
|
||||
},
|
||||
"tail2": {
|
||||
"rotation": [22.5, 0, 0]
|
||||
},
|
||||
"tail3": {
|
||||
"rotation": [22.5, 0, 0]
|
||||
},
|
||||
"mouth": {
|
||||
"position": [0, 0, 0.1]
|
||||
},
|
||||
"mouth_open": {
|
||||
"position": [0, 0, 0]
|
||||
},
|
||||
"mouth_open_small": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.tympole.happy": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"eye_left": {
|
||||
"position": [0, 0, 0.1]
|
||||
},
|
||||
"eye_right": {
|
||||
"position": [0, 0, 0.1]
|
||||
},
|
||||
"mouth": {
|
||||
"position": [0, 0, 0.1]
|
||||
},
|
||||
"mouth_open": {
|
||||
"position": [0, 0, -0.1]
|
||||
},
|
||||
"eye_left_happy": {
|
||||
"position": [0, 0, -0.1]
|
||||
},
|
||||
"eye_right_happy": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.tympole.shock": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"mouth": {
|
||||
"position": [0, 0, 0.1]
|
||||
},
|
||||
"mouth_open_tall": {
|
||||
"position": [0, 0, -0.1]
|
||||
},
|
||||
"eyebrow_left": {
|
||||
"position": [0, 0.5, 0]
|
||||
},
|
||||
"eyebrow_right": {
|
||||
"position": [0, 0.5, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.tympole.angry": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"eyebrow_left": {
|
||||
"rotation": [0, 0, -22.5],
|
||||
"position": [-0.25, -0.25, -0.04]
|
||||
},
|
||||
"eyebrow_right": {
|
||||
"rotation": [0, 0, 22.5],
|
||||
"position": [0.25, -0.25, -0.04]
|
||||
},
|
||||
"mouth": {
|
||||
"position": [0, 0, 0.1]
|
||||
},
|
||||
"eyelid_left_emote": {
|
||||
"position": [0, 0, -0.1]
|
||||
},
|
||||
"eyelid_right_emote": {
|
||||
"position": [0, 0, -0.1]
|
||||
},
|
||||
"mouth_angry": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.tympole.sad": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"eyebrow_left": {
|
||||
"rotation": [0, 0, 10],
|
||||
"position": [0.15, 0, -0.04]
|
||||
},
|
||||
"eyebrow_right": {
|
||||
"rotation": [0, 0, -10],
|
||||
"position": [-0.15, 0, -0.04]
|
||||
},
|
||||
"mouth": {
|
||||
"position": [0, 0, 0.1]
|
||||
},
|
||||
"eyelid_left_emote": {
|
||||
"position": [0.9, 0, -0.1]
|
||||
},
|
||||
"eyelid_right_emote": {
|
||||
"position": [-0.9, 0, -0.1]
|
||||
},
|
||||
"mouth_sad": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.tympole.hurt": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"eyebrow_left": {
|
||||
"position": [0, -0.25, 0]
|
||||
},
|
||||
"eyebrow_right": {
|
||||
"position": [0, -0.25, 0]
|
||||
},
|
||||
"eye_left": {
|
||||
"position": [0, 0, 0.1]
|
||||
},
|
||||
"eye_right": {
|
||||
"position": [0, 0, 0.1]
|
||||
},
|
||||
"mouth": {
|
||||
"position": [0, 0, 0.1]
|
||||
},
|
||||
"mouth_open_frown": {
|
||||
"position": [0, 0, -0.1]
|
||||
},
|
||||
"eye_left_hurt": {
|
||||
"position": [0, 0, -0.1]
|
||||
},
|
||||
"eye_right_hurt": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.tympole.unamused": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"mouth": {
|
||||
"position": [0, 0, 0.1]
|
||||
},
|
||||
"mouth_angry": {
|
||||
"position": [0, 0, -0.1]
|
||||
},
|
||||
"eyelid_left_unamused": {
|
||||
"position": [0, 0, -0.1]
|
||||
},
|
||||
"eyelid_right_unamused": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.tympole.scale": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"tympole": {
|
||||
"scale": 0.65
|
||||
},
|
||||
"ear_left_inside": {
|
||||
"position": [0, 0, 0]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+223
@@ -0,0 +1,223 @@
|
||||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"animation.palpitoad.ground_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"palpitoad": {
|
||||
"scale": 1
|
||||
},
|
||||
"torso": {
|
||||
"rotation": [-2.5, 0, 0]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": [-32.5, 0, 0]
|
||||
},
|
||||
"nose": {
|
||||
"rotation": [-10, 0, 0]
|
||||
},
|
||||
"leg_left": {
|
||||
"rotation": [0, 15, 0]
|
||||
},
|
||||
"leg_right": {
|
||||
"rotation": [0, -15, 0]
|
||||
},
|
||||
"tail2": {
|
||||
"rotation": [20, 0, 0]
|
||||
},
|
||||
"tail3": {
|
||||
"rotation": [12.5, 0, 0]
|
||||
},
|
||||
"tongue": {
|
||||
"rotation": [260, 0, 0]
|
||||
},
|
||||
"tongue_2": {
|
||||
"rotation": [180, 0, 0]
|
||||
},
|
||||
"tongue_3": {
|
||||
"rotation": [180, 0, 0]
|
||||
},
|
||||
"tongue_4": {
|
||||
"rotation": [180, 0, 0]
|
||||
},
|
||||
"tongue_5": {
|
||||
"rotation": [180, 0, 0]
|
||||
},
|
||||
"tongue_6": {
|
||||
"rotation": [180, 0, 0]
|
||||
},
|
||||
"tongue_7": {
|
||||
"rotation": [180, 0, 0]
|
||||
},
|
||||
"tongue_8": {
|
||||
"rotation": [180, 0, 0]
|
||||
},
|
||||
"tongue_9": {
|
||||
"rotation": [180, 0, 0]
|
||||
},
|
||||
"tongue_10": {
|
||||
"rotation": [180, 0, 0]
|
||||
},
|
||||
"tongue_11": {
|
||||
"rotation": [180, 0, 0]
|
||||
},
|
||||
"tongue_12": {
|
||||
"rotation": [180, 0, 0]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [2.5, 0, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.palpitoad.blink": {
|
||||
"animation_length": 0.1667,
|
||||
"bones": {
|
||||
"eye_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.125": [0, 0, 0.1],
|
||||
"0.1667": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"shine_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.125": [0, 0, 0.1],
|
||||
"0.1667": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"eye_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.125": [0, 0, 0.1],
|
||||
"0.1667": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"shine_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.125": [0, 0, 0.1],
|
||||
"0.1667": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"eyelid_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.125": [0, 0, -0.1],
|
||||
"0.1667": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"eyelid_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.125": [0, 0, -0.1],
|
||||
"0.1667": [0, 0, 0]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.palpitoad.ditto_face": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"mouth_open_big_bottom": {
|
||||
"scale": 0
|
||||
},
|
||||
"face": {
|
||||
"scale": 0
|
||||
},
|
||||
"face_ditto": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.palpitoad.pose": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"position": [0, 1, 0]
|
||||
},
|
||||
"leg_left": {
|
||||
"rotation": [20, 25, 0]
|
||||
},
|
||||
"toes_left": {
|
||||
"rotation": [-20, 0, 0]
|
||||
},
|
||||
"leg_right": {
|
||||
"rotation": [20, -25, 0]
|
||||
},
|
||||
"toes_right": {
|
||||
"rotation": [-20, 0, 0]
|
||||
},
|
||||
"torso": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"head_angle": {
|
||||
"rotation": [5, 10, 0]
|
||||
},
|
||||
"mouth": {
|
||||
"position": [0, 0, 0.1]
|
||||
},
|
||||
"nose": {
|
||||
"rotation": [-10, 0, 0]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": [27.5, -30, 0]
|
||||
},
|
||||
"tail2": {
|
||||
"rotation": [27.5, 0, 0]
|
||||
},
|
||||
"tongue": {
|
||||
"rotation": [-10, -32.5, 0]
|
||||
},
|
||||
"tongue_2": {
|
||||
"rotation": [-42.79487, -18.88952, 16.68541]
|
||||
},
|
||||
"tongue_3": {
|
||||
"rotation": [-38.85707, -12.27659, 12.56853]
|
||||
},
|
||||
"tongue_4": {
|
||||
"rotation": [-25, 0, 0]
|
||||
},
|
||||
"tongue_5": {
|
||||
"rotation": [-10.82756, 27.88369, 21.32202]
|
||||
},
|
||||
"tongue_6": {
|
||||
"rotation": [-10, 42.5, 0]
|
||||
},
|
||||
"tongue_7": {
|
||||
"rotation": [-30.86748, 12.95254, -7.63074]
|
||||
},
|
||||
"mouth_open": {
|
||||
"position": [0, 0, -0.1]
|
||||
},
|
||||
"tongue_8": {
|
||||
"rotation": [-15, 0, 0]
|
||||
},
|
||||
"tongue_9": {
|
||||
"rotation": [-22.5, 0, 0]
|
||||
},
|
||||
"tongue_12": {
|
||||
"rotation": [40, 0, 0]
|
||||
},
|
||||
"tongue_11": {
|
||||
"rotation": [37.5, 0, 0]
|
||||
},
|
||||
"tongue_10": {
|
||||
"rotation": [-15, 0, 0]
|
||||
},
|
||||
"shine_left": {
|
||||
"position": [-0.25, 0, 0]
|
||||
},
|
||||
"shine_right": {
|
||||
"position": [-0.25, 0, 0]
|
||||
},
|
||||
"pupil_left": {
|
||||
"position": [-0.25, 0, 0]
|
||||
},
|
||||
"pupil_right": {
|
||||
"position": [-0.25, 0, 0]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+341
@@ -0,0 +1,341 @@
|
||||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"animation.seismitoad.ground_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"position": [0, -3.2, 0]
|
||||
},
|
||||
"torso": {
|
||||
"rotation": [2.5, 0, 0]
|
||||
},
|
||||
"shoulder_left": {
|
||||
"rotation": [34.3569, -7.1313, 32.7929]
|
||||
},
|
||||
"arm_left": {
|
||||
"rotation": [0, 27.5, 5]
|
||||
},
|
||||
"elbow_left": {
|
||||
"rotation": [-15, 22.5, 0]
|
||||
},
|
||||
"hand_left": {
|
||||
"rotation": [0, 0, 22.5]
|
||||
},
|
||||
"leg_left": {
|
||||
"rotation": [-45, -20, -10],
|
||||
"position": [-1, 0, 0]
|
||||
},
|
||||
"knee_left": {
|
||||
"rotation": [60, -10, 10]
|
||||
},
|
||||
"foot_left": {
|
||||
"rotation": [-12, 0, -5]
|
||||
},
|
||||
"wart_knee_left": {
|
||||
"rotation": [22.5, 0, 7.5]
|
||||
},
|
||||
"neck_rotation": {
|
||||
"rotation": [2.5, 0, 0]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [-90, 0, 0]
|
||||
},
|
||||
"finger_middle_left2": {
|
||||
"rotation": [0, 0, 15]
|
||||
},
|
||||
"finger_front_left": {
|
||||
"rotation": [0, 0, 7.5]
|
||||
},
|
||||
"finger_front_left2": {
|
||||
"rotation": [0, 0, 15]
|
||||
},
|
||||
"finger_back_left": {
|
||||
"rotation": [0, 0, 7.5]
|
||||
},
|
||||
"finger_back_left2": {
|
||||
"rotation": [0, 0, 15]
|
||||
},
|
||||
"shoulder_right": {
|
||||
"rotation": [34.3569, 7.1313, -32.7929]
|
||||
},
|
||||
"arm_right": {
|
||||
"rotation": [0, -27.5, -5]
|
||||
},
|
||||
"elbow_right": {
|
||||
"rotation": [-15, -22.5, 0]
|
||||
},
|
||||
"hand_right": {
|
||||
"rotation": [0, 0, -22.5]
|
||||
},
|
||||
"finger_middle_right2": {
|
||||
"rotation": [0, 0, -15]
|
||||
},
|
||||
"finger_front_right": {
|
||||
"rotation": [0, 0, -7.5]
|
||||
},
|
||||
"finger_front_right2": {
|
||||
"rotation": [0, 0, -15]
|
||||
},
|
||||
"finger_back_right": {
|
||||
"rotation": [0, 0, -7.5]
|
||||
},
|
||||
"finger_back_right2": {
|
||||
"rotation": [0, 0, -15]
|
||||
},
|
||||
"toe_back_left2": {
|
||||
"rotation": [-10, 0, 0]
|
||||
},
|
||||
"toe_out_left2": {
|
||||
"rotation": [7.5, 0, 0]
|
||||
},
|
||||
"toe_in_left2": {
|
||||
"rotation": [7.5, 0, 0]
|
||||
},
|
||||
"leg_right": {
|
||||
"rotation": [-45, 20, 10],
|
||||
"position": [1, 0, 0]
|
||||
},
|
||||
"knee_right": {
|
||||
"rotation": [60, 10, -10]
|
||||
},
|
||||
"foot_right": {
|
||||
"rotation": [-12, 0, 5]
|
||||
},
|
||||
"toe_out_right2": {
|
||||
"rotation": [7.5, 0, 0]
|
||||
},
|
||||
"toe_in_right2": {
|
||||
"rotation": [7.5, 0, 0]
|
||||
},
|
||||
"toe_back_right2": {
|
||||
"rotation": [-10, 0, 0]
|
||||
},
|
||||
"wart_knee_right": {
|
||||
"rotation": [22.5, 0, -7.5]
|
||||
},
|
||||
"neck": {
|
||||
"rotation": [-45, 0, 0]
|
||||
},
|
||||
"tongue": {
|
||||
"position": [0, -0.25, 3]
|
||||
},
|
||||
"tongue2": {
|
||||
"position": [0, 0, 5]
|
||||
},
|
||||
"tongue3": {
|
||||
"position": [0, 0, 5]
|
||||
},
|
||||
"tongue4": {
|
||||
"position": [0, 0, 5]
|
||||
},
|
||||
"tongue5": {
|
||||
"position": [0, 0, 5]
|
||||
},
|
||||
"tongue_tip": {
|
||||
"position": [0, -1, 3]
|
||||
},
|
||||
"head_angle": {
|
||||
"rotation": [90, 0, 0]
|
||||
},
|
||||
"neck_angle": {
|
||||
"rotation": [45, 0, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.seismitoad.blink": {
|
||||
"animation_length": 0.2917,
|
||||
"bones": {
|
||||
"eye_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.0833": {"pre": [0, 0, 0], "post": [0, 0, 0.1]},
|
||||
"0.2917": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eye_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.2083": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyelid_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.0833": {"pre": [0, 0, 0], "post": [0, 0, -0.1]},
|
||||
"0.2917": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyelid_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.2083": {"pre": [0, 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]}
|
||||
}
|
||||
},
|
||||
"eyes_blink_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.2083": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.seismitoad.ditto_face": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"face": {
|
||||
"scale": 0
|
||||
},
|
||||
"face_ditto": {
|
||||
"position": [0, 0, -0.1]
|
||||
},
|
||||
"tongue": {
|
||||
"scale": 0
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.seismitoad.pose": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"rotation": [0, -30, 0],
|
||||
"position": [0, -2.25, 0]
|
||||
},
|
||||
"torso": {
|
||||
"rotation": [17.5, 0, 0]
|
||||
},
|
||||
"jaw": {
|
||||
"rotation": [42.5, 0, 0]
|
||||
},
|
||||
"shoulder_left": {
|
||||
"rotation": [-5, -7.5, 25]
|
||||
},
|
||||
"arm_left": {
|
||||
"rotation": [0, 5, 0]
|
||||
},
|
||||
"elbow_left": {
|
||||
"rotation": [-12.5, 50, 0]
|
||||
},
|
||||
"finger_middle_left": {
|
||||
"rotation": [0, 0, 7.5]
|
||||
},
|
||||
"leg_left": {
|
||||
"rotation": [-40.6299, -29.1905, -7.6552]
|
||||
},
|
||||
"knee_left": {
|
||||
"rotation": [37.5, 0, 0]
|
||||
},
|
||||
"foot_left": {
|
||||
"rotation": [6.4717, -0.6518, 4.9574]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [-22.0182, -4.7511, -24.0751]
|
||||
},
|
||||
"finger_middle_left2": {
|
||||
"rotation": [0, 0, 20]
|
||||
},
|
||||
"finger_front_left2": {
|
||||
"rotation": [0, 0, 15]
|
||||
},
|
||||
"finger_back_left": {
|
||||
"rotation": [0, 0, 27.5]
|
||||
},
|
||||
"finger_back_left2": {
|
||||
"rotation": [0, 0, 40]
|
||||
},
|
||||
"shoulder_right": {
|
||||
"rotation": [0, 0, -22.5]
|
||||
},
|
||||
"arm_right": {
|
||||
"rotation": [0, -12.5, 0]
|
||||
},
|
||||
"elbow_right": {
|
||||
"rotation": [173.5473, -44.2356, -288.0659]
|
||||
},
|
||||
"hand_right": {
|
||||
"rotation": [0, 0, -15]
|
||||
},
|
||||
"finger_middle_right": {
|
||||
"rotation": [0, 0, -15]
|
||||
},
|
||||
"finger_middle_right2": {
|
||||
"rotation": [0, 0, -5]
|
||||
},
|
||||
"finger_front_right": {
|
||||
"rotation": [20.5765, 31.8072, -73.3068],
|
||||
"position": [0, 0, -0.5]
|
||||
},
|
||||
"finger_front_right2": {
|
||||
"rotation": [0, 0, -50]
|
||||
},
|
||||
"finger_back_right": {
|
||||
"rotation": [-19.2568, -34.3655, -80.4799],
|
||||
"position": [0, 0, 0.5]
|
||||
},
|
||||
"finger_back_right2": {
|
||||
"rotation": [0, 0, -50]
|
||||
},
|
||||
"toe_back_left2": {
|
||||
"rotation": [-10, 0, 0]
|
||||
},
|
||||
"toe_out_left2": {
|
||||
"rotation": [7.5, 0, 0]
|
||||
},
|
||||
"toe_in_left2": {
|
||||
"rotation": [7.5, 0, 0]
|
||||
},
|
||||
"leg_right": {
|
||||
"rotation": [-38.922, 39.0907, 8.6174]
|
||||
},
|
||||
"knee_right": {
|
||||
"rotation": [37.5, 0, 0]
|
||||
},
|
||||
"foot_right": {
|
||||
"rotation": [7.4593, 0.7817, -5.949]
|
||||
},
|
||||
"toe_out_right2": {
|
||||
"rotation": [7.5, 0, 0]
|
||||
},
|
||||
"toe_in_right2": {
|
||||
"rotation": [7.5, 0, 0]
|
||||
},
|
||||
"toe_back_right2": {
|
||||
"rotation": [-10, 0, 0]
|
||||
},
|
||||
"pupil_right": {
|
||||
"position": [-0.25, 0, 0]
|
||||
},
|
||||
"pupil_left": {
|
||||
"position": [-0.25, 0, 0]
|
||||
},
|
||||
"neck": {
|
||||
"rotation": [0, -4, 0]
|
||||
},
|
||||
"tongue": {
|
||||
"rotation": [-25, 0, 0]
|
||||
},
|
||||
"tongue2": {
|
||||
"rotation": [-10, 25, 0]
|
||||
},
|
||||
"tongue3": {
|
||||
"rotation": [-5, 32.5, 0]
|
||||
},
|
||||
"tongue4": {
|
||||
"rotation": [-5, 45, 0]
|
||||
},
|
||||
"tongue5": {
|
||||
"rotation": [-22.99, 11.5348, -4.8492]
|
||||
},
|
||||
"tongue_tip": {
|
||||
"rotation": [-25.3376, 9.0548, -4.2618]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+105
@@ -0,0 +1,105 @@
|
||||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"animation.deerling.ground_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"position": [0, -0.1, 0]
|
||||
},
|
||||
"torso": {
|
||||
"rotation": [5, 0, 0]
|
||||
},
|
||||
"torso2": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"neck": {
|
||||
"rotation": [7.5, 0, 0]
|
||||
},
|
||||
"ear_left2": {
|
||||
"rotation": [0, 0, 7.5]
|
||||
},
|
||||
"ear_right2": {
|
||||
"rotation": [0, 0, -7.5]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": [5, 0, 0]
|
||||
},
|
||||
"leg_front_left": {
|
||||
"rotation": [2.5, 0, 0]
|
||||
},
|
||||
"foot_front_left": {
|
||||
"rotation": [-2.5, 0, 0]
|
||||
},
|
||||
"leg_back_left": {
|
||||
"rotation": [2.5, 0, -2.5]
|
||||
},
|
||||
"leg_back_left2": {
|
||||
"rotation": [-2.5, 0, 0]
|
||||
},
|
||||
"foot_back_left": {
|
||||
"rotation": [0, 0, 2.5]
|
||||
},
|
||||
"leg_front_right": {
|
||||
"rotation": [2.5, 0, 0]
|
||||
},
|
||||
"foot_front_right": {
|
||||
"rotation": [-2.5, 0, 0]
|
||||
},
|
||||
"leg_back_right": {
|
||||
"rotation": [2.5, 0, 2.5]
|
||||
},
|
||||
"leg_back_right2": {
|
||||
"rotation": [-2.5, 0, 0]
|
||||
},
|
||||
"foot_back_right": {
|
||||
"rotation": [0, 0, -2.5]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [-7.5, 0, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.deerling.blink": {
|
||||
"animation_length": 0.1667,
|
||||
"bones": {
|
||||
"eyelid_left": {
|
||||
"position": {
|
||||
"0.0": [0.1, 0, -0.1],
|
||||
"0.1667": {"pre": [0.1, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eye_left": {
|
||||
"position": {
|
||||
"0.0": [-0.1, 0, 0.1],
|
||||
"0.1667": {"pre": [-0.1, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eye_right": {
|
||||
"position": {
|
||||
"0.0": [0.1, 0, 0.1],
|
||||
"0.1667": {"pre": [0.1, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyelid_right": {
|
||||
"position": {
|
||||
"0.0": [-0.1, 0, -0.1],
|
||||
"0.1667": {"pre": [-0.1, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_blink_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+129
@@ -0,0 +1,129 @@
|
||||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"animation.sawsbuck_autumn.ground_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"position": [0, -0.4, 0]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [-3, 0, 0]
|
||||
},
|
||||
"leg_front_left": {
|
||||
"rotation": [0, -3, -2]
|
||||
},
|
||||
"leg_front_left2": {
|
||||
"rotation": [0, 0, 0]
|
||||
},
|
||||
"leg_front_left3": {
|
||||
"rotation": [2.5, 0, 0]
|
||||
},
|
||||
"foot_front_left": {
|
||||
"rotation": [-0.5, 0, 2]
|
||||
},
|
||||
"leg_back_left": {
|
||||
"rotation": [-5, -3, -2]
|
||||
},
|
||||
"leg_back_left2": {
|
||||
"rotation": [3, 0, 0]
|
||||
},
|
||||
"leg_back_left3": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"foot_back_left": {
|
||||
"rotation": [7, -1, 2]
|
||||
},
|
||||
"leg_front_right": {
|
||||
"rotation": [0, 3, 2]
|
||||
},
|
||||
"leg_front_right2": {
|
||||
"rotation": [0, 0, 0]
|
||||
},
|
||||
"leg_front_right3": {
|
||||
"rotation": [2.5, 0, 0]
|
||||
},
|
||||
"foot_front_right": {
|
||||
"rotation": [-0.5, 0, -2]
|
||||
},
|
||||
"leg_back_right": {
|
||||
"rotation": [-5, 3, 2]
|
||||
},
|
||||
"leg_back_right2": {
|
||||
"rotation": [3, 0, 0]
|
||||
},
|
||||
"leg_back_right3": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"foot_back_right": {
|
||||
"rotation": [7, 1, -2]
|
||||
},
|
||||
"ear_left": {
|
||||
"rotation": [0, 0, -10]
|
||||
},
|
||||
"ear_right": {
|
||||
"rotation": [0, 0, 10]
|
||||
},
|
||||
"tail1": {
|
||||
"rotation": [-3, 0, 0]
|
||||
},
|
||||
"tail2": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"torso": {
|
||||
"rotation": [5, 0, 0]
|
||||
},
|
||||
"torso2": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"neck": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"ftorso2": {
|
||||
"rotation": [-2.5, 0, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.sawsbuck_autumn.blink": {
|
||||
"animation_length": 0.1667,
|
||||
"bones": {
|
||||
"eyelid_left": {
|
||||
"position": {
|
||||
"0.0": [0.1, -0.1, 0],
|
||||
"0.1667": {"pre": [0.1, -0.1, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyelid_right": {
|
||||
"position": {
|
||||
"0.0": [-0.1, -0.1, 0],
|
||||
"0.1667": {"pre": [-0.1, -0.1, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eye_left": {
|
||||
"position": {
|
||||
"0.0": [-0.1, 0.1, 0],
|
||||
"0.1667": {"pre": [-0.1, 0.1, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyebrow_left": {
|
||||
"position": {
|
||||
"0.0": [-0.1, 0.1, 0],
|
||||
"0.1667": {"pre": [-0.1, 0.1, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eye_right": {
|
||||
"position": {
|
||||
"0.0": [0.1, 0.1, 0],
|
||||
"0.1667": {"pre": [0.1, 0.1, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyebrow_right": {
|
||||
"position": {
|
||||
"0.0": [0.1, 0.1, 0],
|
||||
"0.1667": {"pre": [0.1, 0.1, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+129
@@ -0,0 +1,129 @@
|
||||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"animation.sawsbuck_spring.ground_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"position": [0, -0.4, 0]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [-3, 0, 0]
|
||||
},
|
||||
"leg_front_left": {
|
||||
"rotation": [0, -3, -2]
|
||||
},
|
||||
"leg_front_left2": {
|
||||
"rotation": [0, 0, 0]
|
||||
},
|
||||
"leg_front_left3": {
|
||||
"rotation": [2.5, 0, 0]
|
||||
},
|
||||
"foot_front_left": {
|
||||
"rotation": [-0.5, 0, 2]
|
||||
},
|
||||
"leg_back_left": {
|
||||
"rotation": [-5, -3, -2]
|
||||
},
|
||||
"leg_back_left2": {
|
||||
"rotation": [3, 0, 0]
|
||||
},
|
||||
"leg_back_left3": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"foot_back_left": {
|
||||
"rotation": [7, -1, 2]
|
||||
},
|
||||
"leg_front_right": {
|
||||
"rotation": [0, 3, 2]
|
||||
},
|
||||
"leg_front_right2": {
|
||||
"rotation": [0, 0, 0]
|
||||
},
|
||||
"leg_front_right3": {
|
||||
"rotation": [2.5, 0, 0]
|
||||
},
|
||||
"foot_front_right": {
|
||||
"rotation": [-0.5, 0, -2]
|
||||
},
|
||||
"leg_back_right": {
|
||||
"rotation": [-5, 3, 2]
|
||||
},
|
||||
"leg_back_right2": {
|
||||
"rotation": [3, 0, 0]
|
||||
},
|
||||
"leg_back_right3": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"foot_back_right": {
|
||||
"rotation": [7, 1, -2]
|
||||
},
|
||||
"ear_left": {
|
||||
"rotation": [0, 0, -10]
|
||||
},
|
||||
"ear_right": {
|
||||
"rotation": [0, 0, 10]
|
||||
},
|
||||
"tail1": {
|
||||
"rotation": [-3, 0, 0]
|
||||
},
|
||||
"tail2": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"torso": {
|
||||
"rotation": [5, 0, 0]
|
||||
},
|
||||
"torso2": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"neck": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"ftorso2": {
|
||||
"rotation": [-2.5, 0, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.sawsbuck_spring.blink": {
|
||||
"animation_length": 0.1667,
|
||||
"bones": {
|
||||
"eyelid_left": {
|
||||
"position": {
|
||||
"0.0": [0.1, -0.1, 0],
|
||||
"0.1667": {"pre": [0.1, -0.1, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyelid_right": {
|
||||
"position": {
|
||||
"0.0": [-0.1, -0.1, 0],
|
||||
"0.1667": {"pre": [-0.1, -0.1, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eye_left": {
|
||||
"position": {
|
||||
"0.0": [-0.1, 0.1, 0],
|
||||
"0.1667": {"pre": [-0.1, 0.1, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyebrow_left": {
|
||||
"position": {
|
||||
"0.0": [-0.1, 0.1, 0],
|
||||
"0.1667": {"pre": [-0.1, 0.1, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eye_right": {
|
||||
"position": {
|
||||
"0.0": [0.1, 0.1, 0],
|
||||
"0.1667": {"pre": [0.1, 0.1, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyebrow_right": {
|
||||
"position": {
|
||||
"0.0": [0.1, 0.1, 0],
|
||||
"0.1667": {"pre": [0.1, 0.1, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+141
@@ -0,0 +1,141 @@
|
||||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"animation.sawsbuck_summer.ground_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"position": [0, -0.4, 0]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [-3, 0, 0]
|
||||
},
|
||||
"leg_front_left": {
|
||||
"rotation": [0, -3, -2]
|
||||
},
|
||||
"leg_front_left2": {
|
||||
"rotation": [0, 0, 0]
|
||||
},
|
||||
"leg_front_left3": {
|
||||
"rotation": [2.5, 0, 0]
|
||||
},
|
||||
"foot_front_left": {
|
||||
"rotation": [-0.5, 0, 2]
|
||||
},
|
||||
"leg_back_left": {
|
||||
"rotation": [-5, -3, -2]
|
||||
},
|
||||
"leg_back_left2": {
|
||||
"rotation": [3, 0, 0]
|
||||
},
|
||||
"leg_back_left3": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"foot_back_left": {
|
||||
"rotation": [7, -1, 2]
|
||||
},
|
||||
"leg_front_right": {
|
||||
"rotation": [0, 3, 2]
|
||||
},
|
||||
"leg_front_right2": {
|
||||
"rotation": [0, 0, 0]
|
||||
},
|
||||
"leg_front_right3": {
|
||||
"rotation": [2.5, 0, 0]
|
||||
},
|
||||
"foot_front_right": {
|
||||
"rotation": [-0.5, 0, -2]
|
||||
},
|
||||
"leg_back_right": {
|
||||
"rotation": [-5, 3, 2]
|
||||
},
|
||||
"leg_back_right2": {
|
||||
"rotation": [3, 0, 0]
|
||||
},
|
||||
"leg_back_right3": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"foot_back_right": {
|
||||
"rotation": [7, 1, -2]
|
||||
},
|
||||
"ear_left": {
|
||||
"rotation": [0, 0, -10]
|
||||
},
|
||||
"ear_right": {
|
||||
"rotation": [0, 0, 10]
|
||||
},
|
||||
"tail1": {
|
||||
"rotation": [-3, 0, 0]
|
||||
},
|
||||
"tail2": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"torso": {
|
||||
"rotation": [5, 0, 0]
|
||||
},
|
||||
"torso2": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"neck": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"ftorso2": {
|
||||
"rotation": [-2.5, 0, 0]
|
||||
},
|
||||
"bush_left3_summer": {
|
||||
"rotation": [0, 0, -5]
|
||||
},
|
||||
"bush_left4_summer": {
|
||||
"rotation": [0, 0, -7.5]
|
||||
},
|
||||
"bush_right3_summer": {
|
||||
"rotation": [0, 0, 5]
|
||||
},
|
||||
"bush_right4_summer": {
|
||||
"rotation": [0, 0, 7.5]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.sawsbuck_summer.blink": {
|
||||
"animation_length": 0.1667,
|
||||
"bones": {
|
||||
"eyelid_left": {
|
||||
"position": {
|
||||
"0.0": [0.1, -0.1, 0],
|
||||
"0.1667": {"pre": [0.1, -0.1, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyelid_right": {
|
||||
"position": {
|
||||
"0.0": [-0.1, -0.1, 0],
|
||||
"0.1667": {"pre": [-0.1, -0.1, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eye_left": {
|
||||
"position": {
|
||||
"0.0": [-0.1, 0.1, 0],
|
||||
"0.1667": {"pre": [-0.1, 0.1, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyebrow_left": {
|
||||
"position": {
|
||||
"0.0": [-0.1, 0.1, 0],
|
||||
"0.1667": {"pre": [-0.1, 0.1, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eye_right": {
|
||||
"position": {
|
||||
"0.0": [0.1, 0.1, 0],
|
||||
"0.1667": {"pre": [0.1, 0.1, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyebrow_right": {
|
||||
"position": {
|
||||
"0.0": [0.1, 0.1, 0],
|
||||
"0.1667": {"pre": [0.1, 0.1, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+141
@@ -0,0 +1,141 @@
|
||||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"animation.sawsbuck_winter.ground_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"position": [0, -0.4, 0]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [-3, 0, 0]
|
||||
},
|
||||
"leg_front_left": {
|
||||
"rotation": [0, -3, -2]
|
||||
},
|
||||
"leg_front_left2": {
|
||||
"rotation": [0, 0, 0]
|
||||
},
|
||||
"leg_front_left3": {
|
||||
"rotation": [2.5, 0, 0]
|
||||
},
|
||||
"foot_front_left": {
|
||||
"rotation": [-0.5, 0, 2]
|
||||
},
|
||||
"leg_back_left": {
|
||||
"rotation": [-5, -3, -2]
|
||||
},
|
||||
"leg_back_left2": {
|
||||
"rotation": [3, 0, 0]
|
||||
},
|
||||
"leg_back_left3": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"foot_back_left": {
|
||||
"rotation": [7, -1, 2]
|
||||
},
|
||||
"leg_front_right": {
|
||||
"rotation": [0, 3, 2]
|
||||
},
|
||||
"leg_front_right2": {
|
||||
"rotation": [0, 0, 0]
|
||||
},
|
||||
"leg_front_right3": {
|
||||
"rotation": [2.5, 0, 0]
|
||||
},
|
||||
"foot_front_right": {
|
||||
"rotation": [-0.5, 0, -2]
|
||||
},
|
||||
"leg_back_right": {
|
||||
"rotation": [-5, 3, 2]
|
||||
},
|
||||
"leg_back_right2": {
|
||||
"rotation": [3, 0, 0]
|
||||
},
|
||||
"leg_back_right3": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"foot_back_right": {
|
||||
"rotation": [7, 1, -2]
|
||||
},
|
||||
"ear_left": {
|
||||
"rotation": [0, 0, -10]
|
||||
},
|
||||
"ear_right": {
|
||||
"rotation": [0, 0, 10]
|
||||
},
|
||||
"tail1": {
|
||||
"rotation": [-3, 0, 0]
|
||||
},
|
||||
"tail2": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"torso": {
|
||||
"rotation": [5, 0, 0]
|
||||
},
|
||||
"torso2": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"neck": {
|
||||
"rotation": [-5, 0, 0]
|
||||
},
|
||||
"ftorso2": {
|
||||
"rotation": [-2.5, 0, 0]
|
||||
},
|
||||
"bush_left3_summer": {
|
||||
"rotation": [0, 0, -5]
|
||||
},
|
||||
"bush_left4_summer": {
|
||||
"rotation": [0, 0, -7.5]
|
||||
},
|
||||
"bush_right3_summer": {
|
||||
"rotation": [0, 0, 5]
|
||||
},
|
||||
"bush_right4_summer": {
|
||||
"rotation": [0, 0, 7.5]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.sawsbuck_winter.blink": {
|
||||
"animation_length": 0.1667,
|
||||
"bones": {
|
||||
"eyelid_left": {
|
||||
"position": {
|
||||
"0.0": [0.1, -0.1, 0],
|
||||
"0.1667": {"pre": [0.1, -0.1, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyelid_right": {
|
||||
"position": {
|
||||
"0.0": [-0.1, -0.1, 0],
|
||||
"0.1667": {"pre": [-0.1, -0.1, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eye_left": {
|
||||
"position": {
|
||||
"0.0": [-0.1, 0.1, 0],
|
||||
"0.1667": {"pre": [-0.1, 0.1, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyebrow_left": {
|
||||
"position": {
|
||||
"0.0": [-0.1, 0.1, 0],
|
||||
"0.1667": {"pre": [-0.1, 0.1, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eye_right": {
|
||||
"position": {
|
||||
"0.0": [0.1, 0.1, 0],
|
||||
"0.1667": {"pre": [0.1, 0.1, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyebrow_right": {
|
||||
"position": {
|
||||
"0.0": [0.1, 0.1, 0],
|
||||
"0.1667": {"pre": [0.1, 0.1, 0], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+191
-70
@@ -1,6 +1,179 @@
|
||||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"animation.chespin.blink": {
|
||||
"animation_length": 0.1667,
|
||||
"bones": {
|
||||
"eye_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyelid_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eye_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyelid_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_blink_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.chespin.cry": {
|
||||
"animation_length": 1,
|
||||
"bones": {
|
||||
"head": {
|
||||
"rotation": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.125": {
|
||||
"pre": [-12, 0, 0],
|
||||
"post": [-12, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.2917": {
|
||||
"post": [-5, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.5833": {
|
||||
"post": [-12, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"1.0": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"mouth_closed_smile": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.25": {"pre": [0, 0, 0], "post": [0, 0, 0.1]},
|
||||
"0.75": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"mouth_open_smile": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.25": {"pre": [0, 0, 0], "post": [0, 0, -0.1]},
|
||||
"0.75": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"mouth_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.25": {"pre": [0, 0, 0], "post": [0, 0, 0.1]},
|
||||
"0.75": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"mouth_open_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.25": {"pre": [0, 0, 0], "post": [0, 0, -0.1]},
|
||||
"0.75": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
},
|
||||
"sound_effects": {
|
||||
"0.1667": {
|
||||
"effect": "pokemon.chespin.cry"
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.chespin.ditto_face": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"face": {
|
||||
"scale": 0
|
||||
},
|
||||
"face_ditto": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.chespin.pose": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"rotation": [0, -37.5, 0],
|
||||
"position": [0, 0.5, 0]
|
||||
},
|
||||
"torso": {
|
||||
"rotation": [15, 0, 0]
|
||||
},
|
||||
"torso2": {
|
||||
"rotation": [-12.5, 0, 0]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [-13.89157, 20.57373, -10.30286]
|
||||
},
|
||||
"arm_right": {
|
||||
"rotation": [4.68184, 16.2524, -29.6444]
|
||||
},
|
||||
"hand_right": {
|
||||
"rotation": [0, 0, 15]
|
||||
},
|
||||
"arm_left": {
|
||||
"rotation": [34.92019, 17.2337, 20.34505]
|
||||
},
|
||||
"hand_left": {
|
||||
"rotation": [0, 0, -17.5]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": [-51.63554, -16.76559, 11.06517],
|
||||
"position": [-1, 0, 0]
|
||||
},
|
||||
"tail2": {
|
||||
"rotation": [0, -37.5, 0]
|
||||
},
|
||||
"leg_right": {
|
||||
"rotation": [0, 22.5, 0]
|
||||
},
|
||||
"foot_right": {
|
||||
"rotation": [22.5, 0, 0]
|
||||
},
|
||||
"toes_right": {
|
||||
"rotation": [-22.5, 0, 0]
|
||||
},
|
||||
"leg_left": {
|
||||
"rotation": [7.53535, -3.55508, -21.73761]
|
||||
},
|
||||
"foot_left": {
|
||||
"rotation": [17.45752, -7.82184, 22.22986]
|
||||
},
|
||||
"toes_left": {
|
||||
"rotation": [-22.5, 0, 0]
|
||||
},
|
||||
"head_spikes_sharp": {
|
||||
"scale": 0
|
||||
},
|
||||
"pupil_left": {
|
||||
"position": [0, 0.2, 0]
|
||||
},
|
||||
"pupil_right": {
|
||||
"position": [-0.2, 0.2, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.chespin.ground_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
@@ -52,6 +225,9 @@
|
||||
},
|
||||
"head": {
|
||||
"rotation": ["math.sin(q.anim_time*90*3-60)*1.5", "-math.sin(q.anim_time*90*1.5-90)*6.5", 0]
|
||||
},
|
||||
"head_spikes_sharp": {
|
||||
"scale": 0
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -106,6 +282,9 @@
|
||||
},
|
||||
"toe_right": {
|
||||
"rotation": ["math.clamp(math.sin(q.anim_time*90*5+40)*40,-180,0)", 0, 0]
|
||||
},
|
||||
"head_spikes_sharp": {
|
||||
"scale": 0
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -134,14 +313,14 @@
|
||||
"mouth_open": {
|
||||
"position": [0, 0, -0.1]
|
||||
},
|
||||
"spike_head_left": {
|
||||
"head_spike_left": {
|
||||
"rotation": ["-5+math.sin(q.anim_time*90*1-90)*5", 0, -22.5]
|
||||
},
|
||||
"spike_head_right": {
|
||||
"head_spike_right": {
|
||||
"rotation": ["-5+math.sin(q.anim_time*90*1-90)*5", 0, 45],
|
||||
"position": [0, 0.5, 0]
|
||||
},
|
||||
"spikes_back": {
|
||||
"head_spikes_back": {
|
||||
"rotation": ["math.sin(q.anim_time*90*1-135)*5", 0, 0]
|
||||
},
|
||||
"arm_left": {
|
||||
@@ -173,79 +352,21 @@
|
||||
},
|
||||
"foot_right": {
|
||||
"rotation": [35.02686, -1.60667, -1.91561]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.chespin.blink": {
|
||||
"animation_length": 0.16667,
|
||||
"bones": {
|
||||
"eyelid_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.125": [0, 0, -0.1],
|
||||
"0.1667": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"eyelid_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.125": [0, 0, -0.1],
|
||||
"0.1667": [0, 0, 0]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.chespin.cry": {
|
||||
"animation_length": 0.91667,
|
||||
"bones": {
|
||||
"head": {
|
||||
"rotation": {
|
||||
"0.0": ["-5+math.sin(q.anim_time*90*6+45)*8", 0, 0],
|
||||
"0.1667": ["-5+math.sin(q.anim_time*90*6+45)*8", 0, 0],
|
||||
"0.8333": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"mouth_open3": {
|
||||
"eye_left": {
|
||||
"position": [0, 0, 0.1]
|
||||
},
|
||||
"mouth_closed": {
|
||||
"position": {
|
||||
"0.0833": [0, 0, 0],
|
||||
"0.1667": [0, 0, 0.1],
|
||||
"0.4167": [0, 0, 0.1],
|
||||
"0.5": [0, 0, 0]
|
||||
}
|
||||
"eye_right": {
|
||||
"position": [0, 0, 0.2]
|
||||
},
|
||||
"mouth_open": {
|
||||
"position": {
|
||||
"0.0833": [0, 0, 0],
|
||||
"0.1667": [0, 0, -0.1],
|
||||
"0.4167": [0, 0, -0.1],
|
||||
"0.5": [0, 0, 0]
|
||||
}
|
||||
"mouth_closed_smile": {
|
||||
"position": [0, 0, 0.2]
|
||||
},
|
||||
"spike_head_left": {
|
||||
"rotation": {
|
||||
"0.0": [0, 0, "-10+math.sin(q.anim_time*90*6+45)*8"],
|
||||
"0.1667": [0, 0, "-10+math.sin(q.anim_time*90*6+45)*8"],
|
||||
"0.3333": [0, 0, "-20+math.sin(q.anim_time*90*3+95)*8"],
|
||||
"0.5833": [0, 0, "-20+math.sin(q.anim_time*90*3+95)*8"],
|
||||
"0.8333": [0, 0, 0]
|
||||
}
|
||||
"mouth_closed_neutral": {
|
||||
"position": [0, 0, -0.2]
|
||||
},
|
||||
"spike_head_right": {
|
||||
"rotation": {
|
||||
"0.0": [0, 0, "10-math.sin(q.anim_time*90*6+45)*8"],
|
||||
"0.1667": [0, 0, "10-math.sin(q.anim_time*90*6+45)*8"],
|
||||
"0.3333": [0, 0, "20-math.sin(q.anim_time*90*3+95)*8"],
|
||||
"0.5833": [0, 0, "20-math.sin(q.anim_time*90*3+95)*8"],
|
||||
"0.9167": [0, 0, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"sound_effects": {
|
||||
"0.0833": {
|
||||
"effect": "pokemon.chespin.cry"
|
||||
"head_spikes_sharp": {
|
||||
"scale": 0
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+207
-156
@@ -1,6 +1,205 @@
|
||||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"animation.quilladin.blink": {
|
||||
"animation_length": 0.1667,
|
||||
"bones": {
|
||||
"eye_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyelid_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyelid_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eye_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.1667": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"eyes_blink_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.1667": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.quilladin.cry": {
|
||||
"animation_length": 1.5,
|
||||
"bones": {
|
||||
"torso2": {
|
||||
"rotation": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.0833": {
|
||||
"pre": [2, 0, 0],
|
||||
"post": [2, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.2917": {
|
||||
"post": [-2.5, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"0.5833": {
|
||||
"post": [-2.5, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"1.0833": {
|
||||
"post": [1, 0, 0],
|
||||
"lerp_mode": "catmullrom"
|
||||
},
|
||||
"1.4167": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"mouth_closed_smile": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.1667": {"pre": [0, 0, 0], "post": [0, 0, 0.1]},
|
||||
"1.3333": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"mouth_open_smile": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.375": {"pre": [0, 0, 0], "post": [0, 0, -0.1]},
|
||||
"1.0417": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"mouth_open_o": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.1667": {"pre": [0, 0, 0], "post": [0, 0, -0.1]},
|
||||
"0.375": {"pre": [0, 0, -0.1], "post": [0, 0, 0]},
|
||||
"1.0417": {"pre": [0, 0, 0], "post": [0, 0, -0.1]},
|
||||
"1.3333": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"mouth_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.1667": {"pre": [0, 0, 0], "post": [0, 0, 0.1]},
|
||||
"1.3333": {"pre": [0, 0, 0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
},
|
||||
"mouth_open_ditto": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.1667": {"pre": [0, 0, 0], "post": [0, 0, -0.1]},
|
||||
"1.3333": {"pre": [0, 0, -0.1], "post": [0, 0, 0]}
|
||||
}
|
||||
}
|
||||
},
|
||||
"sound_effects": {
|
||||
"0.1667": {
|
||||
"effect": "pokemon.quilladin.cry"
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.quilladin.ditto_face": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"face": {
|
||||
"scale": 0
|
||||
},
|
||||
"face_ditto": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.quilladin.pose": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
"body": {
|
||||
"position": [0, 2, 0]
|
||||
},
|
||||
"torso": {
|
||||
"rotation": [-27.43745, 1.50179, 4.76968]
|
||||
},
|
||||
"tail": {
|
||||
"rotation": [-15.02687, 1.91486, -1.60757],
|
||||
"position": [0, -1, 0]
|
||||
},
|
||||
"tail2": {
|
||||
"rotation": [7.56397, 7.43547, 0.98448]
|
||||
},
|
||||
"tail3": {
|
||||
"rotation": [10.08453, 7.38542, 1.30962]
|
||||
},
|
||||
"torso2": {
|
||||
"rotation": [7.49294, -0.32621, -2.52136]
|
||||
},
|
||||
"pupil_left": {
|
||||
"position": [0.1, 0.1, 0]
|
||||
},
|
||||
"mouth_closed_smile": {
|
||||
"position": [0, 0, 0.1]
|
||||
},
|
||||
"mouth_open_smile": {
|
||||
"position": [0, 0, -0.1]
|
||||
},
|
||||
"hair": {
|
||||
"rotation": [-27.5, 0, 0]
|
||||
},
|
||||
"arm_left": {
|
||||
"rotation": [-73.6118, 1.34454, -14.51378]
|
||||
},
|
||||
"finger_front_left": {
|
||||
"rotation": [0, 12.5, 0]
|
||||
},
|
||||
"finger_back_left": {
|
||||
"rotation": [0, -15, 0]
|
||||
},
|
||||
"finger_thumb_left": {
|
||||
"rotation": [0, -20, 0]
|
||||
},
|
||||
"arm_right": {
|
||||
"rotation": [-73.51921, -6.14051, 13.09658]
|
||||
},
|
||||
"finger_front_right": {
|
||||
"rotation": [0, -5, 0]
|
||||
},
|
||||
"finger_back_right": {
|
||||
"rotation": [0, 10, 0]
|
||||
},
|
||||
"finger_thumb_right": {
|
||||
"rotation": [0, 25, 0]
|
||||
},
|
||||
"leg_left": {
|
||||
"rotation": [-97.62567, -25.77605, 9.45845],
|
||||
"position": [1.1, 1.65, -5]
|
||||
},
|
||||
"leg_left2": {
|
||||
"rotation": [17.5, 0, 0]
|
||||
},
|
||||
"leg_right": {
|
||||
"rotation": [-66.51084, 28.74673, 11.67459],
|
||||
"position": [0, 2, -4]
|
||||
},
|
||||
"leg_right2": {
|
||||
"rotation": [15, 0, 0]
|
||||
},
|
||||
"pupil_right": {
|
||||
"position": [0, 0.1, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.quilladin.ground_idle": {
|
||||
"loop": true,
|
||||
"bones": {
|
||||
@@ -197,166 +396,18 @@
|
||||
},
|
||||
"foot_right": {
|
||||
"rotation": [15, 0, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.quilladin.blink": {
|
||||
"animation_length": 0.16667,
|
||||
"bones": {
|
||||
"eyelid_right": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.125": [0, 0, -0.1],
|
||||
"0.1667": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"eyelid_left": {
|
||||
"position": {
|
||||
"0.0": [0, 0, -0.1],
|
||||
"0.125": [0, 0, -0.1],
|
||||
"0.1667": [0, 0, 0]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.quilladin.cry": {
|
||||
"animation_length": 1.5,
|
||||
"bones": {
|
||||
"neck": {
|
||||
"rotation": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.25": [10, 0, 0],
|
||||
"1.25": [10, 0, 0],
|
||||
"1.5": [0, 0, 0]
|
||||
}
|
||||
"eye_left": {
|
||||
"position": [0, 0, 0.1]
|
||||
},
|
||||
"mouth": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.25": [0, -2, 0],
|
||||
"1.25": [0, -2, 0],
|
||||
"1.5": [0, 0, 0]
|
||||
}
|
||||
"eye_right": {
|
||||
"position": [0, 0, 0.1]
|
||||
},
|
||||
"mouth2": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.25": [0, -5, 0],
|
||||
"1.25": [0, -5, 0],
|
||||
"1.5": [0, 0, 0]
|
||||
}
|
||||
"mouth_closed_smile": {
|
||||
"position": [0, 0, 0.1]
|
||||
},
|
||||
"jaw": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.25": [0, -3, 0],
|
||||
"1.25": [0, -3, 0],
|
||||
"1.5": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"head": {
|
||||
"rotation": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.25": [-15, 0, 0],
|
||||
"1.25": [-15, 0, 0],
|
||||
"1.5": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"head2": {
|
||||
"rotation": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.25": [-15, 0, 0],
|
||||
"1.25": [-15, 0, 0],
|
||||
"1.5": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"mouth_closed2": {
|
||||
"position": {
|
||||
"0.25": [0, 0, -0.1],
|
||||
"0.3333": [0, 0, 0],
|
||||
"1.1667": [0, 0, 0],
|
||||
"1.25": [0, 0, -0.1]
|
||||
}
|
||||
},
|
||||
"mouth_open2": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.25": [0, 0, 0],
|
||||
"1.25": [0, 0, 0],
|
||||
"1.5": [0, 0, 0.1]
|
||||
}
|
||||
},
|
||||
"head3": {
|
||||
"rotation": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.25": [-15, 0, 0],
|
||||
"1.25": [-15, 0, 0],
|
||||
"1.5": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"mouth_closed3": {
|
||||
"position": {
|
||||
"0.25": [0, 0, -0.1],
|
||||
"0.3333": [0, 0, 0],
|
||||
"1.1667": [0, 0, 0],
|
||||
"1.25": [0, 0, -0.1]
|
||||
}
|
||||
},
|
||||
"mouth_open3": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0.1],
|
||||
"0.25": [0, 0, 0],
|
||||
"1.25": [0, 0, 0],
|
||||
"1.5": [0, 0, 0.1]
|
||||
}
|
||||
},
|
||||
"mouth_closed": {
|
||||
"position": {
|
||||
"0.25": [0, 0, 0],
|
||||
"0.3333": [0, 0, 0.1],
|
||||
"1.1667": [0, 0, 0.1],
|
||||
"1.25": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"mouth_open": {
|
||||
"position": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.25": [0, 0, -0.1],
|
||||
"1.25": [0, 0, -0.1],
|
||||
"1.5": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"torso": {
|
||||
"rotation": {
|
||||
"0.0": ["-5+math.sin(q.anim_time*90*6+45)*8", 0, 0],
|
||||
"0.25": ["-5+math.sin(q.anim_time*90*6+45)*8", 0, 0],
|
||||
"0.3333": ["-8.29+math.sin(q.anim_time*90*3+95)*6", 0, 0],
|
||||
"1.0": ["-8.29+math.sin(q.anim_time*90*3)*2", 0, 0],
|
||||
"1.5": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"spike_left": {
|
||||
"rotation": {
|
||||
"0.0": [0, 0, "-10+math.sin(q.anim_time*90*6+45)*8"],
|
||||
"0.25": [0, 0, "-10+math.sin(q.anim_time*90*6+45)*8"],
|
||||
"0.3333": [0, 0, "-20+math.sin(q.anim_time*90*3+95)*8"],
|
||||
"1.0": [0, 0, "-20+math.sin(q.anim_time*90*3+95)*8"],
|
||||
"1.5": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"spike_right": {
|
||||
"rotation": {
|
||||
"0.0": [0, 0, "10-math.sin(q.anim_time*90*6+45)*8"],
|
||||
"0.25": [0, 0, "10-math.sin(q.anim_time*90*6+45)*8"],
|
||||
"0.3333": [0, 0, "20-math.sin(q.anim_time*90*3+95)*8"],
|
||||
"1.0": [0, 0, "20-math.sin(q.anim_time*90*3+95)*8"],
|
||||
"1.5": [0, 0, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"sound_effects": {
|
||||
"0.1667": {
|
||||
"effect": "pokemon.quilladin.cry"
|
||||
"mouth_closed_neutral": {
|
||||
"position": [0, 0, -0.1]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+810
-203
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user