Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- extends Camera2D
- export var ZOOM_SPEED = 1.0
- var currentZoom
- var targetZoom
- func _ready():
- var currentZoom = self.get_zoom()
- var targetZoom = currentZoom
- self.set_process(true)
- func _process(delta):
- if(targetZoom != currentZoom):
- processSmoothZoom(delta)
- func setSmoothZoom(zoomLevel):
- targetZoom = zoomLevel
- func processSmoothZoom(delta):
- var cz = self.get_zoom()
- if(cz.x < self.targetZoom.x):
- cz += self.targetZoom * self.ZOOM_SPEED * delta
- if(cz.x > self.targetZoom.x):
- cz = targetZoom
- else:
- cz -= self.targetZoom * self.ZOOM_SPEED * delta
- if(cz.x < self.targetZoom.x):
- cz = targetZoom
- self.set_zoom(cz)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement