blob: 090033fd99aa12e0cfa907c718ee83b102ac345f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
extends InterpolatedCamera
var selected = null
func _ready():
reset()
func select(what, new_target):
set_target(new_target)
if self.selected != what:
set_interpolation_enabled(true)
#set_translation(what.translation + Vector3(1,3,0))
self.selected = what
func reselect():
if self.selected != null:
set_interpolation_enabled(false)
look_at(self.selected.translation, Vector3(0,1,0))
func rot_around(amount):
if self.selected != null:
var relative = self.translation - self.selected.translation
var rotated = relative.rotated(Vector3(0,1,0), amount)
set_translation(self.selected.translation + rotated)
reselect()
func reset():
set_target(get_parent().get_node("overview"))
set_interpolation_enabled(true)
self.selected = get_parent().get_node("center")
func get_selected():
return self.selected
|