This commit is contained in:
parent
44e659f454
commit
9e14cc915e
2 changed files with 13 additions and 2 deletions
|
@ -8,6 +8,7 @@ var hoveredObjects : Array
|
||||||
var hoveredObject
|
var hoveredObject
|
||||||
var hoveredSticker
|
var hoveredSticker
|
||||||
var grabbedSticker
|
var grabbedSticker
|
||||||
|
var grabbedStickerOffset
|
||||||
|
|
||||||
enum CURSOR_STATE {DEFAULT, CLICK, GRAB, GRABBED}
|
enum CURSOR_STATE {DEFAULT, CLICK, GRAB, GRABBED}
|
||||||
var currentCursorState:CURSOR_STATE = CURSOR_STATE.DEFAULT
|
var currentCursorState:CURSOR_STATE = CURSOR_STATE.DEFAULT
|
||||||
|
@ -28,6 +29,8 @@ func _process(_delta):
|
||||||
#endregion
|
#endregion
|
||||||
pointcast()
|
pointcast()
|
||||||
cursor_look()
|
cursor_look()
|
||||||
|
if (grabbedSticker):
|
||||||
|
grabbedSticker.position = grabbedStickerOffset+get_global_mouse_position()
|
||||||
|
|
||||||
|
|
||||||
func isSticker(selectedObject:Node):
|
func isSticker(selectedObject:Node):
|
||||||
|
@ -117,10 +120,15 @@ func _input(rawInputEvent:InputEvent):
|
||||||
grab_end()
|
grab_end()
|
||||||
|
|
||||||
func grab_start():
|
func grab_start():
|
||||||
if (hoveredSticker):
|
if (hoveredSticker and grabbedSticker == null):
|
||||||
grabbedSticker = hoveredSticker
|
grabbedSticker = hoveredSticker
|
||||||
|
|
||||||
print("Grabbed ", grabbedSticker)
|
print("Grabbed ", grabbedSticker)
|
||||||
|
grabbedStickerOffset = grabbedSticker.position - get_global_mouse_position()
|
||||||
|
print("offset =", grabbedStickerOffset, " Stickpos:",grabbedSticker.position,"-",get_global_mouse_position() )
|
||||||
|
if (grabbedSticker.has_method("on_grab")):
|
||||||
|
grabbedSticker.on_grab(grabbedStickerOffset)
|
||||||
|
|
||||||
func grab_end():
|
func grab_end():
|
||||||
grabbedSticker.on_released()
|
grabbedSticker.on_released()
|
||||||
|
|
||||||
|
|
|
@ -43,6 +43,9 @@ func on_hover():
|
||||||
func on_unhover():
|
func on_unhover():
|
||||||
material = null
|
material = null
|
||||||
queue_redraw()
|
queue_redraw()
|
||||||
|
|
||||||
|
func on_grab(_offset:Vector2=Vector2(0.0,0.0)):
|
||||||
|
pass
|
||||||
"
|
"
|
||||||
|
|
||||||
[node name="FreeSticker1" type="Sprite2D"]
|
[node name="FreeSticker1" type="Sprite2D"]
|
||||||
|
|
Loading…
Reference in a new issue