Compare commits
2 Commits
5197b3a608
...
f833f1cec7
| Author | SHA1 | Date | |
|---|---|---|---|
| f833f1cec7 | |||
| b7002f03ad |
|
|
@ -10,9 +10,9 @@ modifier_type = 0
|
|||
name = "ice_or_something"
|
||||
timeout_seconds = 0.0
|
||||
direction = 0
|
||||
speed_start = Vector2( -100, 1.36422e-12 )
|
||||
speed_start = Vector2( -20, 1.36422e-12 )
|
||||
speed_end = Vector2( 0, 0 )
|
||||
min_acceleration = Vector2( 5, 1.36422e-12 )
|
||||
min_acceleration = Vector2( 30, 1.36422e-12 )
|
||||
acceleration = Vector2( -250, 1.36422e-12 )
|
||||
max_acceleration = Vector2( 0, 0 )
|
||||
gravity = 0
|
||||
|
|
|
|||
|
|
@ -136,30 +136,38 @@ func _state_process_physics_idle():
|
|||
##Bugfix
|
||||
if _wants_jump:
|
||||
request_state_change.call_func('jump')
|
||||
return
|
||||
|
||||
if _wants_crouch == true:
|
||||
request_state_change.call_func('crouch')
|
||||
return
|
||||
##TODO: May need that 'bump' logic to make velocity work.
|
||||
if desired_movement_vector.x != 0: # and velocity.x != 0:
|
||||
request_state_change.call_func('move')
|
||||
return
|
||||
|
||||
if !parent.is_on_floor():
|
||||
#return fall_state
|
||||
request_state_change.call_func('fall')
|
||||
return
|
||||
|
||||
if _wants_roll == true:
|
||||
request_state_change.call_func('roll')
|
||||
return
|
||||
|
||||
if _wants_attack_primary == true:
|
||||
#request_state_change.call_func('attack_shoot')
|
||||
attack_primary()
|
||||
return
|
||||
|
||||
if _wants_attack_secondary == true:
|
||||
#parent_request_state_change.call_func('attack_sword')
|
||||
attack_secondary()
|
||||
return
|
||||
|
||||
if $"%LadderDetector".is_colliding() and _wants_climb == true:
|
||||
request_state_change.call_func('climb')
|
||||
return
|
||||
|
||||
# var _v :Vector2 = new_move_actor_as_desired( physics_delta , current_state )
|
||||
# apply_movement_to_parent(_v)
|
||||
|
|
@ -180,6 +188,7 @@ func attack_primary():
|
|||
var _item_state_name :String = parent_use_primary_item.call_func()
|
||||
if _item_state_name != '':
|
||||
request_state_change.call_func(_item_state_name)
|
||||
return
|
||||
|
||||
|
||||
|
||||
|
|
@ -188,6 +197,7 @@ func attack_secondary():
|
|||
var _item_state_name :String = get_parent().use_secondary_item()
|
||||
if _item_state_name != '':
|
||||
request_state_change.call_func(_item_state_name)
|
||||
return
|
||||
|
||||
|
||||
func _state_process_physics_attack_shoot():
|
||||
|
|
@ -199,30 +209,37 @@ func _state_process_physics_attack_shoot():
|
|||
|
||||
if current_state.animation_finished == true:
|
||||
request_state_change.call_func('idle')
|
||||
return
|
||||
|
||||
if !parent.is_on_floor():
|
||||
#return fall_state
|
||||
request_state_change.call_func('fall')
|
||||
return
|
||||
|
||||
func _state_process_physics_attack_punch():
|
||||
if current_state.animation_finished == true:
|
||||
request_state_change.call_func('idle')
|
||||
return
|
||||
|
||||
if !parent.is_on_floor():
|
||||
#return fall_state
|
||||
request_state_change.call_func('fall')
|
||||
return
|
||||
|
||||
func _state_process_physics_attack_sword():
|
||||
if current_state.animation_finished == true:
|
||||
request_state_change.call_func('idle')
|
||||
return
|
||||
|
||||
if !parent.is_on_floor():
|
||||
#return fall_state
|
||||
request_state_change.call_func('fall')
|
||||
return
|
||||
|
||||
func _state_process_physics_roll():
|
||||
if current_state.animation_finished == true:
|
||||
request_state_change.call_func('idle')
|
||||
return
|
||||
|
||||
# Force role in facing direction
|
||||
# instead of movement direction
|
||||
|
|
@ -259,6 +276,7 @@ func _state_process_physics_enter_right():
|
|||
level_transition_latch = true
|
||||
elif current_state.state_timeout.time_left == 0 and level_transition_latch == true:
|
||||
request_state_change.call_func('idle')
|
||||
return
|
||||
|
||||
# Force role in facing direction
|
||||
# instead of movement direction
|
||||
|
|
@ -274,10 +292,12 @@ func _state_process_physics_land():
|
|||
$"%LedgeDetector".set_enabled(true)
|
||||
if current_state.animation_finished == true:
|
||||
request_state_change.call_func('idle')
|
||||
return
|
||||
|
||||
if !parent.is_on_floor():
|
||||
#return fall_state
|
||||
request_state_change.call_func('fall')
|
||||
return
|
||||
#move_actor_as_desired()
|
||||
apply_movement_to_parent(
|
||||
velocity_controller.calculate_velocity(
|
||||
|
|
@ -289,6 +309,7 @@ func _state_process_physics_land():
|
|||
func _state_process_physics_hurt():
|
||||
if current_state.state_timeout.time_left == 0:
|
||||
request_state_change.call_func('idle')
|
||||
return
|
||||
|
||||
# if !parent.is_on_floor():
|
||||
# #return fall_state
|
||||
|
|
@ -311,11 +332,12 @@ func _state_process_physics_fall():
|
|||
if debug_component:
|
||||
UiManager.debug_text = (str($"%LedgeDetector".get_collision_point()))
|
||||
request_state_change.call_func('ledge_grab')
|
||||
|
||||
return
|
||||
if parent.is_on_floor():
|
||||
#modifier.reference()
|
||||
#idle_state.modifier = landing_modifier
|
||||
request_state_change.call_func('land')
|
||||
return
|
||||
|
||||
#move_actor_as_desired()
|
||||
apply_movement_to_parent(
|
||||
|
|
@ -336,6 +358,7 @@ func _state_process_physics_jump():
|
|||
# request_state_change.call_func('idle')
|
||||
if velocity_controller.velocity.y > 0:
|
||||
request_state_change.call_func('fall')
|
||||
return
|
||||
desired_movement_vector.y = UP
|
||||
#move_actor_as_desired()
|
||||
apply_movement_to_parent(
|
||||
|
|
@ -351,12 +374,15 @@ func _state_process_physics_move():
|
|||
|
||||
if _wants_jump:
|
||||
request_state_change.call_func('jump')
|
||||
return
|
||||
|
||||
if desired_movement_vector.x == 0:
|
||||
request_state_change.call_func('idle')
|
||||
return
|
||||
|
||||
if !parent.is_on_floor():
|
||||
request_state_change.call_func('fall')
|
||||
return
|
||||
|
||||
## First version
|
||||
#move_actor_as_desired()
|
||||
|
|
@ -411,8 +437,10 @@ func _state_process_physics_climb():
|
|||
else:
|
||||
return request_state_change.call_func('idle')
|
||||
|
||||
|
||||
if _wants_crouch:
|
||||
request_state_change.call_func('fall')
|
||||
return
|
||||
|
||||
func _state_process_physics_ledge_grab():
|
||||
if debug_component:
|
||||
|
|
@ -421,9 +449,11 @@ func _state_process_physics_ledge_grab():
|
|||
|
||||
if _wants_jump:
|
||||
request_state_change.call_func('ledge_climb')
|
||||
return
|
||||
|
||||
if _wants_crouch:
|
||||
request_state_change.call_func('fall')
|
||||
return
|
||||
|
||||
func _state_process_physics_ledge_climb():
|
||||
# $"../LedgeDetector".set_enabled(false)
|
||||
|
|
@ -457,14 +487,18 @@ func _state_process_physics_crouch():
|
|||
|
||||
if _wants_crouch != true:
|
||||
request_state_change.call_func('idle')
|
||||
return
|
||||
|
||||
if !parent.is_on_floor():
|
||||
request_state_change.call_func('fall')
|
||||
return
|
||||
|
||||
if _wants_crouch == true and desired_movement_vector.x != 0:
|
||||
request_state_change.call_func('crouch_move')
|
||||
return
|
||||
elif desired_movement_vector.x != 0: # and velocity.x != 0:
|
||||
request_state_change.call_func('move')
|
||||
return
|
||||
|
||||
apply_movement_to_parent(
|
||||
velocity_controller.calculate_velocity(
|
||||
|
|
@ -479,14 +513,18 @@ func _state_process_physics_crouch_move():
|
|||
|
||||
if _wants_crouch != true:
|
||||
request_state_change.call_func('idle')
|
||||
return
|
||||
|
||||
if !parent.is_on_floor():
|
||||
request_state_change.call_func('fall')
|
||||
return
|
||||
|
||||
if _wants_crouch == true and desired_movement_vector.x == 0:
|
||||
request_state_change.call_func('crouch')
|
||||
return
|
||||
elif _wants_crouch != true and desired_movement_vector.x != 0:
|
||||
request_state_change.call_func('move')
|
||||
return
|
||||
|
||||
#move_actor_as_desired()
|
||||
apply_movement_to_parent(
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ name = "fall"
|
|||
speed_start = Vector2( 60, 1.36422e-12 )
|
||||
speed_end = Vector2( 60, 1000 )
|
||||
min_acceleration = Vector2( 0, 0 )
|
||||
acceleration = Vector2( 1.36422e-12, 480 )
|
||||
acceleration = Vector2( 1.36422e-12, 500 )
|
||||
max_acceleration = Vector2( 0, 0 )
|
||||
jerk_factor = Vector2( 1, 1 )
|
||||
horizontal_speed = 90.0
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ name = "jump"
|
|||
speed_start = Vector2( 90, 200 )
|
||||
speed_end = Vector2( 90, -8 )
|
||||
min_acceleration = Vector2( 0, 0 )
|
||||
acceleration = Vector2( 1.36422e-12, 320 )
|
||||
acceleration = Vector2( 1.36422e-12, 360 )
|
||||
max_acceleration = Vector2( 0, 0 )
|
||||
jerk_factor = Vector2( 1, 1 )
|
||||
horizontal_speed = 90.0
|
||||
|
|
|
|||
|
|
@ -9,10 +9,10 @@ script = ExtResource( 1 )
|
|||
debug_state = false
|
||||
timeout_seconds = 0.0
|
||||
name = "move"
|
||||
speed_start = Vector2( 10, 1.36422e-12 )
|
||||
speed_start = Vector2( 60, 1.36422e-12 )
|
||||
speed_end = Vector2( 90, 1000 )
|
||||
min_acceleration = Vector2( 0, 0 )
|
||||
acceleration = Vector2( 20, 280 )
|
||||
acceleration = Vector2( 200, 280 )
|
||||
max_acceleration = Vector2( 0, 0 )
|
||||
jerk_factor = Vector2( 1, 1 )
|
||||
horizontal_speed = 10.0
|
||||
|
|
|
|||
|
|
@ -193,7 +193,7 @@ func calculate_velocity(_delta :float,
|
|||
_v_impulse_applied = true
|
||||
calc_inertia.y += impulse_inertia
|
||||
|
||||
if debug and movement_parameters.debug_name == 'jump':
|
||||
if debug and movement_parameters.debug_name == 'roll':
|
||||
var foo = 2+2
|
||||
## We are always moving from h_speed.x towards y at a given rate
|
||||
## if we have a difference of speed and an acceleration
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user