30 lines
723 B
GDScript
30 lines
723 B
GDScript
extends Node2D
|
|
const UP = 4
|
|
const DOWN = 1
|
|
|
|
var poss = Vector2()
|
|
var cam = Vector2()
|
|
var pressed = false
|
|
|
|
|
|
@onready var camera: Camera2D = $Camera2D
|
|
|
|
func _process(delta: float) -> void:
|
|
if Input.is_action_just_released("wheel_up") and camera.zoom.x < UP:
|
|
camera.zoom.x += 0.1
|
|
camera.zoom.y += 0.1
|
|
if Input.is_action_just_released("wheel_down")and camera.zoom.x > DOWN:
|
|
camera.zoom.x -= 0.1
|
|
camera.zoom.y -= 0.1
|
|
if pressed:
|
|
camera.position = (cam + poss) - (camera.get_local_mouse_position())
|
|
|
|
|
|
func _input(event: InputEvent) -> void:
|
|
if event.is_action("mouse_press"):
|
|
if event.is_pressed():
|
|
poss = camera.get_local_mouse_position()
|
|
cam = camera.position
|
|
pressed = true
|
|
else:
|
|
pressed = false
|