Skip to content

Latest commit

 

History

History
184 lines (115 loc) · 3.56 KB

Readme.md

File metadata and controls

184 lines (115 loc) · 3.56 KB

Character Animations (character_anim)

Animates the character. Resembles playeranim and headanim.

About

Depends on modlib. Code written by Lars Mueller aka LMD or appguru(eu) and licensed under the MIT license.

Screenshot

Image

Links

  • GitHub - sources, issue tracking, contributing
  • Discord - discussion, chatting
  • Minetest Forum - (more organized) discussion
  • ContentDB - releases (cloning from GitHub is recommended)

Features

  • Animates head, right arm & body
  • Support for arbitrary player models, as long as Head, Arm_Right & Body bones exist
    • If any of these bones do not exist, it will still try to animate the remaining bones
  • Advantages over playeranim:
    • Extracts exact animations and bone positions from b3d models at runtime (no complex installation)
    • Also animates attached players (with restrictions on angles)
  • Advantages over headanim:
    • Provides compatibility back until Minetest 0.4.x (as opposed to headanim supporting only 5.3+)
    • Head angles are clamped, head can tilt sideways
    • Animates right arm & body as well

Configuration

default

arm_right

radius

Right arm spin radius

  • Type: number
  • Default: 10
  • >= -180
  • <= 180
speed

Right arm spin speed

  • Type: number
  • Default: 1000
  • > 0
  • <= 10000
yaw
max

Right arm yaw (max)

  • Type: number
  • Default: 160
  • >= -180
  • <= 180
min

Right arm yaw (min)

  • Type: number
  • Default: -30
  • >= -180
  • <= 180

body

turn_speed

Body turn speed

  • Type: number
  • Default: 0.2
  • > 0
  • <= 1000

head

pitch
max

Head pitch (max)

  • Type: number
  • Default: 80
  • >= -180
  • <= 180
min

Head pitch (min)

  • Type: number
  • Default: -60
  • >= -180
  • <= 180
yaw
max

Head yaw (max)

  • Type: number
  • Default: 90
  • >= -180
  • <= 180
min

Head yaw (min)

  • Type: number
  • Default: -90
  • >= -180
  • <= 180
yaw_restricted
max

Head yaw restricted (max)

  • Type: number
  • Default: 45
  • >= -180
  • <= 180
min

Head yaw restricted (min)

  • Type: number
  • Default: 0
  • >= -180
  • <= 180
yaw_restriction

Head yaw restriction

  • Type: number
  • Default: 60
  • >= -180
  • <= 180

models

Other models, same format as default model

API

Minetest's player:set_bone_position is overridden so that it still works as expected.

character_anim.set_bone_override(player, bonename, position, rotation)

The signature resembles that of set_bone_position. bonename must be a string. The following additional features are provided:

  • Using it like set_bone_position by setting rotation and position to non-nil values and using "" to set the root bone
  • Setting only the bone position by setting rotation to nil - bone rotation will then be model-animation-determined
  • Setting only the bone rotation by setting position to nil - bone position will then be model-animation-determined
  • Clearing the override by setting both rotation and position to nil ("unset_bone_position")