Compare commits

...

3 commits

Author SHA1 Message Date
2eef87c163 Cursor look state machine 2024-07-28 14:15:04 +02:00
bf0ddce8a5 Clean 2024-07-28 14:04:58 +02:00
17ea850cce Better handling of ressources 2024-07-28 14:04:20 +02:00
3 changed files with 20 additions and 9 deletions

View file

@ -67,16 +67,16 @@ func pointcast():
if (hoveredObjects.size() >= 2): if (hoveredObjects.size() >= 2):
sortByPosY(hoveredObjects,false) sortByPosY(hoveredObjects,false)
if (hoveredObjects[0] != hoveredObject): if (hoveredObjects[0] != hoveredObject):
if (hoveredObject and hoveredObject.has_method("on_unhover")):
hoveredObject.on_unhover()
hoveredObject = hoveredObjects[0] hoveredObject = hoveredObjects[0]
if (hoveredObject and hoveredObject.has_method("on_hover")):
hoveredObject.on_hover()
print("Current hovered object :", hoveredObject) print("Current hovered object :", hoveredObject)
if (isSticker(hoveredObject)): if (isSticker(hoveredObject)):
hoveredSticker = hoveredObject hoveredSticker = hoveredObject
print("Current hovered sticker :", hoveredSticker) print("Current hovered sticker :", hoveredSticker)
if (hoveredSticker.has_method("on_hover")):
hoveredSticker.on_hover()
else: else:
if (hoveredSticker.has_method("on_unhover")):
hoveredSticker.on_unhover()
hoveredSticker = null hoveredSticker = null
else: else:
resetCast(true) resetCast(true)
@ -136,6 +136,17 @@ func cursorClick():
hoveredObject.on_click() hoveredObject.on_click()
func cursor_look(): func cursor_look():
if (grabbedSticker ):
currentCursorState = CURSOR_STATE.GRABBED
elif (hoveredSticker):
if (!($GrabTimer.is_stopped())):
currentCursorState = CURSOR_STATE.GRABBED
else:
currentCursorState = CURSOR_STATE.GRAB
elif (!($GrabTimer.is_stopped())):
currentCursorState = CURSOR_STATE.CLICK
else:
currentCursorState = CURSOR_STATE.DEFAULT
if (currentCursorState != oldCursorState): if (currentCursorState != oldCursorState):
oldCursorState = currentCursorState oldCursorState = currentCursorState

View file

@ -5,8 +5,8 @@ platform="Windows Desktop"
runnable=true runnable=true
dedicated_server=false dedicated_server=false
custom_features="" custom_features=""
export_filter="scenes" export_filter="resources"
export_files=PackedStringArray("res://maps/mainMenu.tscn", "res://maps/map1.tscn", "res://maps/mapManager.tscn") export_files=PackedStringArray("res://maps/mainMenu.tscn", "res://maps/map1.tscn", "res://maps/mapManager.tscn", "res://shaders/shaderMaterial_Outline.tres", "res://shaders/shader_outline3.gdshader", "res://shaders/shader_outline2.gdshader", "res://shaders/shader_outline.gdshader", "res://core/bridgeNode.tscn", "res://core/Cursor.gd", "res://core/Cursor.tscn", "res://core/debugDraw.tscn", "res://core/player.gd", "res://core/player.tscn", "res://core/sceneInstance.gd", "res://core/Sticker.gd", "res://core/Sticker.tscn")
include_filter="" include_filter=""
exclude_filter="" exclude_filter=""
export_path="builds/stickerClone.exe" export_path="builds/stickerClone.exe"
@ -32,7 +32,7 @@ codesign/timestamp_server_url=""
codesign/digest_algorithm=1 codesign/digest_algorithm=1
codesign/description="" codesign/description=""
codesign/custom_options=PackedStringArray() codesign/custom_options=PackedStringArray()
application/modify_resources=true application/modify_resources=false
application/icon="" application/icon=""
application/console_wrapper_icon="" application/console_wrapper_icon=""
application/icon_interpolation=4 application/icon_interpolation=4

View file

@ -10,6 +10,8 @@ region = Rect2(384, 64, 288, 224)
script/source = "@tool script/source = "@tool
extends Sprite2D extends Sprite2D
var OutlineMat:ShaderMaterial = preload(\"res://shaders/shaderMaterial_Outline.tres\")
@export_group(\"Sticker Detection Shape\") @export_group(\"Sticker Detection Shape\")
@export var Shape :Shape2D: @export var Shape :Shape2D:
set(new_shape): set(new_shape):
@ -35,8 +37,6 @@ func on_click():
print(self,\" clicked\") print(self,\" clicked\")
func on_hover(): func on_hover():
var OutlineMat:ShaderMaterial
OutlineMat = load(\"res://shaders/shaderMaterial_Outline.tres\")
material = OutlineMat material = OutlineMat
queue_redraw() queue_redraw()