Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Player.gd
- extends CharacterBody2D
- @export var speed := 64
- @export var pixel_lock_scale := 1
- var direction := Vector2.ZERO
- func _physics_process(delta):
- player_movement()
- set_velocity(direction * speed)
- move_and_slide()
- if velocity == Vector2.ZERO:
- position.x = round(position.x / pixel_lock_scale) * pixel_lock_scale
- position.y = round(position.y / pixel_lock_scale) * pixel_lock_scale
- #print("Player Velocity: ", velocity) #for testing
- func player_movement():
- direction.x = Input.get_axis("move_left", "move_right")
- direction.y = Input.get_axis("move_up", "move_down")
- direction = direction.normalized()
- ------------------------------------------------------
- # camera_2d.gd
- extends Camera2D
- @export var drift_strength := .25 # How far the camera drifts toward the mouse
- @export var player : CharacterBody2D
- func _physics_process(delta):
- if player != null:
- var mouse_pos = get_viewport().get_mouse_position()
- var screen_center = get_viewport_rect().size * 0.5
- var offset = (mouse_pos - screen_center) * drift_strength
- position = player.position + offset
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement