How do I make my 3d animation start from my kinematic body's current position instead of the animation keyframes?

:information_source: Attention Topic was automatically imported from the old Question2Answer platform.
:bust_in_silhouette: Asked By Genesis689

I’m making a left,right,back and forward jump animation for my player but when I play it in script it starts from the origin point instead of where the current position is. How do I change it so that I can start the animation from the kinematic body’s current position in game? Thank you

extends KinematicBody

export var speed = 14
export var fall_acceleration = 75
var key1_translate
var key2_translate
var key3_translate
var anim = $AnimationPlayer.get_animation(“jump”)
var velocity = Vector3.ZERO

func _physics_process(delta):
var direction = Vector3.ZERO

if Input.is_action_just_pressed("move_right"):
	key1_translate = Vector3(translation.x,translation.y,translation.z)
	key2_translate = Vector3(translation.x,(translation.y + 2),(translation.z + 2))
	key3_translate = Vector3(translation.x,translation.y,(translation.z + 4))
	$AnimationPlayer.play("jump")
if Input.is_action_just_pressed("move_left"):
	key1_translate = Vector3(translation.x,translation.y,translation.z)
	key2_translate = Vector3(translation.x,(translation.y - 2),(translation.z - 2))
	key3_translate = Vector3(translation.x,translation.y,(translation.z - 4))
	$AnimationPlayer.play("jump")
if Input.is_action_just_pressed("move_back"):
	key1_translate = Vector3(translation.x,translation.y,translation.z)
	key2_translate = Vector3((translation.x - 2),(translation.y - 2),translation.z)
	key3_translate = Vector3((translation.x - 4),translation.y,translation.z)
	$AnimationPlayer.play("jump")
if Input.is_action_just_pressed("move_forward"):
	key1_translate = Vector3(translation.x,translation.y,translation.z)
	key2_translate = Vector3((translation.x + 2),(translation.y + 2),translation.z)
	key3_translate = Vector3((translation.x + 4),translation.y,translation.z)
	$AnimationPlayer.play("jump")

I’ve put together this solution but I don’t understand how to change the individual keyframes on each track. My jump animations tracks are the kinematic body’s translation and another for its scale. I don’t need to change the scale but I need help on how to change the keyframe values for the translation track from the script. Any help?

Genesis689 | 2022-12-26 16:05

Its okay I read the doc and found it. It was

anim.track_set_key_value(0,0,key1_translate)

Genesis689 | 2022-12-26 16:37