Fun with the body angular velocity things
This commit is contained in:
parent
c4e4bdf5a7
commit
d69a5c0c97
@ -31,9 +31,6 @@ func _physics_process(delta):
|
||||
apply_torque_impulse(rot_vector * current_angle * 7)
|
||||
apply_impulse(transform.basis.xform(Vector3.ZERO), -(transform.basis.y) * 0.05)
|
||||
|
||||
if current_angle < 0.1:
|
||||
angular_velocity = Vector3.ZERO
|
||||
|
||||
for axis in angular_velocity:
|
||||
if axis > 10:
|
||||
axis -= axis * 0.75
|
||||
# if current_angle < 0.1:
|
||||
# angular_velocity.x = 0
|
||||
|
||||
|
@ -16,6 +16,7 @@ mass = 1.73469
|
||||
gravity_scale = 1.5
|
||||
contacts_reported = 5
|
||||
contact_monitor = true
|
||||
angular_damp = 0.5
|
||||
script = ExtResource( 1 )
|
||||
|
||||
[node name="TorsoCollider" type="CollisionShape" parent="."]
|
||||
|
@ -19,7 +19,7 @@ func _is_animation_playing():
|
||||
|
||||
func push(body):
|
||||
# We multiply by 0.1 because we only want it to spin slightly, it should mostly go up
|
||||
var offset = transform.basis.xform(Vector3.ZERO) #transform.basis.xform(touch_area.global_transform.origin - base.global_transform.origin) * 0.5
|
||||
var offset = transform.basis.xform(-touch_area.global_transform.origin + base.global_transform.origin) * 0.1
|
||||
var direction = (base.transform.basis.y - base.transform.basis.z).normalized() * 20.0
|
||||
|
||||
base.apply_impulse(offset, direction)
|
||||
|
@ -15,21 +15,17 @@ func _is_animation_playing():
|
||||
|
||||
func action():
|
||||
anim.play("ArmatureAction")
|
||||
|
||||
# Apply a slight counter force
|
||||
var offset = transform.basis.xform(Vector3.ZERO) #transform.basis.xform(touch_area.global_transform.origin - base.global_transform.origin) * 0.5
|
||||
var direction = -(base.transform.basis.y - base.transform.basis.z).normalized() * 0.5
|
||||
|
||||
base.apply_impulse(offset, direction)
|
||||
|
||||
|
||||
func push(body):
|
||||
# We multiply by 0.1 because we only want it to spin slightly, it should mostly go up
|
||||
var offset = transform.basis.xform(Vector3.ZERO) #transform.basis.xform(touch_area.global_transform.origin - base.global_transform.origin) * 0.5
|
||||
var offset = transform.basis.xform(touch_area.global_transform.origin - base.global_transform.origin) * 0.3
|
||||
var direction = (base.transform.basis.y - base.transform.basis.z).normalized() * 10.0
|
||||
|
||||
base.apply_impulse(offset, direction)
|
||||
|
||||
#base.apply_torque_impulse(base.transform.basis.y * 20.0)
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
#func _process(delta: float) -> void:
|
||||
# pass
|
||||
|
Loading…
x
Reference in New Issue
Block a user