extends State class_name PlayerClimbUp func get_state_name(): return str(self).split(":")[0] var ledge_cshape = preload("res://resources/player ledge cshape.tres") var standing_cshape = preload("res://resources/player standing cshape.tres") func enter(): player.climbup_pos1 = player.position + Vector2(0, -52) player.climbup_pos2 = player.position + Vector2(player.facing_direction * 40, -52) print(player.position) print (player.climbup_pos1) player.ap.play("climb up") player.sprite.position.x = player.facing_direction * 11 player.sprite.position.y = -60 player.cshape.shape = ledge_cshape player.cshape.position.y = -69 func exit(): player.cshape.shape = standing_cshape player.cshape.position.y = -43 player.sprite.position.x = 0 player.sprite.position.y = -48 player.climbup_pos1_reached = false func update(delta): pass func physics_update(delta): if player.position != player.climbup_pos1 && !player.climbup_pos1_reached: player.position = player.position.move_toward(player.climbup_pos1, player.climbup_speed_y * delta) if player.position == player.climbup_pos1: player.climbup_pos1_reached = true elif player.position != player.climbup_pos2 && player.climbup_pos1_reached: player.position = player.position.move_toward(player.climbup_pos2, player.climbup_speed_x * delta) elif player.position == player.climbup_pos2: Transitioned.emit(self, "PlayerFall")