From d11de7cc42cd7ccf4c363ac02b57ac50358254f3 Mon Sep 17 00:00:00 2001 From: Jean-Yves Chasle Date: Thu, 20 Oct 2022 21:52:42 +0200 Subject: [PATCH] Added a comment node --- ...D.svg-f7ff9a7e2b7478fa3eeeac7dfc6b181f.md5 | 3 + ....svg-f7ff9a7e2b7478fa3eeeac7dfc6b181f.stex | Bin 0 -> 148 bytes ...k.svg-8996ec98ce27d8da579bd7f7a31d731e.md5 | 3 + ....svg-8996ec98ce27d8da579bd7f7a31d731e.stex | Bin 0 -> 436 bytes ...k.svg-a2b3200f72b6a26b4450734dcb813536.md5 | 3 + ....svg-a2b3200f72b6a26b4450734dcb813536.stex | Bin 0 -> 436 bytes ...k.svg-c2dbab39d087876dad6a83cdedcc0db5.md5 | 3 + ....svg-c2dbab39d087876dad6a83cdedcc0db5.stex | Bin 0 -> 436 bytes ...e.svg-61be3d94a0e69d2c4a249167beade817.md5 | 3 + ....svg-61be3d94a0e69d2c4a249167beade817.stex | Bin 0 -> 250 bytes ...e.svg-87bba95aa15de62af6092da3aeaba77e.md5 | 3 + ....svg-87bba95aa15de62af6092da3aeaba77e.stex | Bin 0 -> 250 bytes ...s.svg-09c18bed723459a3e6c5d7a9987c22bf.md5 | 3 + ....svg-09c18bed723459a3e6c5d7a9987c22bf.stex | Bin 0 -> 740 bytes ...s.svg-10ffa293c386e6be3bb671738d959d5b.md5 | 3 + ....svg-10ffa293c386e6be3bb671738d959d5b.stex | Bin 0 -> 740 bytes ...s.svg-6f488847a801f65477fcd11fc9c703aa.md5 | 3 + ....svg-6f488847a801f65477fcd11fc9c703aa.stex | Bin 0 -> 740 bytes ...c.svg-157511012f892ec63f0bb79bcf7cae1c.md5 | 3 + ....svg-157511012f892ec63f0bb79bcf7cae1c.stex | Bin 0 -> 500 bytes ...c.svg-2c9907ab420410f30b74369e1176ae1d.md5 | 3 + ....svg-2c9907ab420410f30b74369e1176ae1d.stex | Bin 0 -> 500 bytes ...c.svg-c7db13cacb9ad3f8830742156576b7b9.md5 | 3 + ....svg-c7db13cacb9ad3f8830742156576b7b9.stex | Bin 0 -> 500 bytes ...n.svg-49b42c381335a7700ad013681c85584b.md5 | 3 + ....svg-49b42c381335a7700ad013681c85584b.stex | Bin 0 -> 288 bytes ...n.svg-7be96fc321a81d813f3db786e2b8b6af.md5 | 3 + ....svg-7be96fc321a81d813f3db786e2b8b6af.stex | Bin 0 -> 288 bytes ...n.svg-9f273c7061786a3900f783c100ef480d.md5 | 3 + ....svg-9f273c7061786a3900f783c100ef480d.stex | Bin 0 -> 288 bytes ...t.svg-289bdc2b4ec228e7cf7820ac5a3c73fc.md5 | 3 + ....svg-289bdc2b4ec228e7cf7820ac5a3c73fc.stex | Bin 0 -> 376 bytes ...t.svg-6b340aa690765cd8ebd6e751fc94eeab.md5 | 3 + ....svg-6b340aa690765cd8ebd6e751fc94eeab.stex | Bin 0 -> 376 bytes ...t.svg-722eb872ac08139e98aa8bad17fdfaa1.md5 | 3 + ....svg-722eb872ac08139e98aa8bad17fdfaa1.stex | Bin 0 -> 376 bytes ...p.svg-591605e1271174570df61085cf8a2478.md5 | 3 + ....svg-591605e1271174570df61085cf8a2478.stex | Bin 0 -> 356 bytes ...p.svg-640c7b1fba2e3affbff07806f3562afb.md5 | 3 + ....svg-640c7b1fba2e3affbff07806f3562afb.stex | Bin 0 -> 356 bytes ...p.svg-c4cd55cc1e3d6ea80679783cc7c27ef8.md5 | 3 + ....svg-c4cd55cc1e3d6ea80679783cc7c27ef8.stex | Bin 0 -> 356 bytes ...t.svg-331670b5e8410c4441315ae1a096ba4a.md5 | 3 + ....svg-331670b5e8410c4441315ae1a096ba4a.stex | Bin 0 -> 332 bytes ...t.svg-5572d46e97aea9ae3b2968cf27dfc335.md5 | 3 + ....svg-5572d46e97aea9ae3b2968cf27dfc335.stex | Bin 0 -> 332 bytes ...t.svg-81dafd14f9b53931f6f78197003bcbe2.md5 | 3 + ....svg-81dafd14f9b53931f6f78197003bcbe2.stex | Bin 0 -> 332 bytes ...n.svg-00821f5031673d3e521d493f3597e69f.md5 | 3 + ....svg-00821f5031673d3e521d493f3597e69f.stex | Bin 0 -> 210 bytes ...n.svg-3f75eba4947cb91ecfca18b9f4758c74.md5 | 3 + ....svg-3f75eba4947cb91ecfca18b9f4758c74.stex | Bin 0 -> 210 bytes ...n.svg-ad577f7f7e41087d3156709c81862557.md5 | 3 + ....svg-ad577f7f7e41087d3156709c81862557.stex | Bin 0 -> 210 bytes ...e.svg-602e5c93ecfe4f102e0306485ed4f461.md5 | 3 + ....svg-602e5c93ecfe4f102e0306485ed4f461.stex | Bin 0 -> 228 bytes ...e.svg-f7983da1322fc076e6c50abf12708a81.md5 | 3 + ....svg-f7983da1322fc076e6c50abf12708a81.stex | Bin 0 -> 228 bytes ...n.svg-1e2613277a5d64c1455ebe15084bba6d.md5 | 3 + ....svg-1e2613277a5d64c1455ebe15084bba6d.stex | Bin 0 -> 664 bytes ...n.svg-2f6a96e69c2923dad9c80a8c367f8450.md5 | 3 + ....svg-2f6a96e69c2923dad9c80a8c367f8450.stex | Bin 0 -> 664 bytes ...n.svg-97ee9585aee020fadc23beda4d744212.md5 | 3 + ....svg-97ee9585aee020fadc23beda4d744212.stex | Bin 0 -> 664 bytes ...t.svg-14d2a5b2099ad3930395a8aaad9502cd.md5 | 3 + ....svg-14d2a5b2099ad3930395a8aaad9502cd.stex | Bin 0 -> 290 bytes ...t.svg-c6aaf6d9b069ac6def1e5993d5b9ab83.md5 | 3 + ....svg-c6aaf6d9b069ac6def1e5993d5b9ab83.stex | Bin 0 -> 290 bytes ...t.svg-cc59ce2cc93676cc0b929f7d2cfd6ed8.md5 | 3 + ....svg-cc59ce2cc93676cc0b929f7d2cfd6ed8.stex | Bin 0 -> 290 bytes ...n.svg-85639b67a4989bfe52aef0d2339ec568.md5 | 3 + ....svg-85639b67a4989bfe52aef0d2339ec568.stex | Bin 0 -> 488 bytes ...n.svg-8daf96f6470df2cc36ce65942728bf1f.md5 | 3 + ....svg-8daf96f6470df2cc36ce65942728bf1f.stex | Bin 0 -> 488 bytes ...n.svg-bf4b810308ad11a22581e57e298f9abc.md5 | 3 + ....svg-bf4b810308ad11a22581e57e298f9abc.stex | Bin 0 -> 488 bytes ...p.svg-2c702641a1942e5f02b44c5fd7293026.md5 | 3 + ....svg-2c702641a1942e5f02b44c5fd7293026.stex | Bin 0 -> 510 bytes ...p.svg-a9801b5b4caed7ad1aa069e86b1ba247.md5 | 3 + ....svg-a9801b5b4caed7ad1aa069e86b1ba247.stex | Bin 0 -> 510 bytes ...p.svg-c3fca8a1d1733debab0b53803e9c9423.md5 | 3 + ....svg-c3fca8a1d1733debab0b53803e9c9423.stex | Bin 0 -> 510 bytes ...t.svg-e1d620eeda0bbe585f6b326f330e5953.md5 | 3 + ...t.svg-9311a421778a9e52af772822119675ef.md5 | 3 + ....svg-9311a421778a9e52af772822119675ef.stex | Bin 0 -> 328 bytes ...t.svg-dec90644a80c2ddd7fd38b2d1bd4b8ab.md5 | 3 + ....svg-dec90644a80c2ddd7fd38b2d1bd4b8ab.stex | Bin 0 -> 328 bytes ...t.svg-e94aa12fa27696caa7c8586181e9bfd5.md5 | 3 + ....svg-e94aa12fa27696caa7c8586181e9bfd5.stex | Bin 0 -> 328 bytes ...t.svg-05f6de219ed166eea77ee7350ee7391e.md5 | 3 + ....svg-05f6de219ed166eea77ee7350ee7391e.stex | Bin 0 -> 88 bytes ...t.svg-31af88c2d8d04fc606880fe8588cbcfa.md5 | 3 + ....svg-31af88c2d8d04fc606880fe8588cbcfa.stex | Bin 0 -> 88 bytes Assets/Icons/Camera2D.svg | 40 +++++++ Assets/Icons/Camera2D.svg.import | 35 ++++++ Assets/Icons/Close.svg | 1 + Assets/Icons/Close.svg.import | 35 ++++++ Assets/Icons/PlayScene.svg | 1 + Assets/Icons/PlayScene.svg.import | 35 ++++++ Assets/Icons/VisualShaderNodeComment.svg | 1 + .../Icons/VisualShaderNodeComment.svg.import | 35 ++++++ Assets/UserIcons/Check.svg | 1 + Assets/UserIcons/Check.svg.import | 35 ++++++ Assets/UserIcons/Cross.svg | 1 + Assets/UserIcons/Cross.svg.import | 35 ++++++ Assets/UserIcons/Disc.svg | 1 + Assets/UserIcons/Disc.svg.import | 35 ++++++ Assets/UserIcons/Double-down.svg | 1 + Assets/UserIcons/Double-down.svg.import | 35 ++++++ Assets/UserIcons/Double-right.svg | 1 + Assets/UserIcons/Double-right.svg.import | 35 ++++++ Assets/UserIcons/Double-up.svg | 1 + Assets/UserIcons/Double-up.svg.import | 35 ++++++ Assets/UserIcons/Down_right.svg | 1 + Assets/UserIcons/Down_right.svg.import | 35 ++++++ Assets/UserIcons/Exclamation.svg | 1 + Assets/UserIcons/Exclamation.svg.import | 35 ++++++ Assets/UserIcons/Question.svg | 1 + Assets/UserIcons/Question.svg.import | 35 ++++++ Assets/UserIcons/Right.svg | 1 + Assets/UserIcons/Right.svg.import | 35 ++++++ Assets/UserIcons/Simple-down.svg | 1 + Assets/UserIcons/Simple-down.svg.import | 35 ++++++ Assets/UserIcons/Simple-up.svg | 1 + Assets/UserIcons/Simple-up.svg.import | 35 ++++++ Assets/UserIcons/Up_right.svg | 1 + Assets/UserIcons/Up_right.svg.import | 35 ++++++ Scenes/CommentGraphNode.tscn | 112 ++++++++++++++++++ Scenes/CommentRect.tscn | 67 +++++++++++ Scenes/GraphEdit.tscn | 21 +++- .../{GraphNode.tscn => ImageGraphNode.tscn} | 34 +++--- Scripts/CommentGraphNode.gd | 90 ++++++++++++++ Scripts/CommentRect.gd | 69 +++++++++++ Scripts/DisplayDialog.gd | 2 +- Scripts/GraphEdit.gd | 84 ++++++++++--- Scripts/{GraphNode.gd => ImageGraphNode.gd} | 15 ++- project.godot | 14 ++- 137 files changed, 1259 insertions(+), 41 deletions(-) create mode 100644 .import/Camera2D.svg-f7ff9a7e2b7478fa3eeeac7dfc6b181f.md5 create mode 100644 .import/Camera2D.svg-f7ff9a7e2b7478fa3eeeac7dfc6b181f.stex create mode 100644 .import/Check.svg-8996ec98ce27d8da579bd7f7a31d731e.md5 create mode 100644 .import/Check.svg-8996ec98ce27d8da579bd7f7a31d731e.stex create mode 100644 .import/Check.svg-a2b3200f72b6a26b4450734dcb813536.md5 create mode 100644 .import/Check.svg-a2b3200f72b6a26b4450734dcb813536.stex create mode 100644 .import/Check.svg-c2dbab39d087876dad6a83cdedcc0db5.md5 create mode 100644 .import/Check.svg-c2dbab39d087876dad6a83cdedcc0db5.stex create mode 100644 .import/Close.svg-61be3d94a0e69d2c4a249167beade817.md5 create mode 100644 .import/Close.svg-61be3d94a0e69d2c4a249167beade817.stex create mode 100644 .import/Close.svg-87bba95aa15de62af6092da3aeaba77e.md5 create mode 100644 .import/Close.svg-87bba95aa15de62af6092da3aeaba77e.stex create mode 100644 .import/Cross.svg-09c18bed723459a3e6c5d7a9987c22bf.md5 create mode 100644 .import/Cross.svg-09c18bed723459a3e6c5d7a9987c22bf.stex create mode 100644 .import/Cross.svg-10ffa293c386e6be3bb671738d959d5b.md5 create mode 100644 .import/Cross.svg-10ffa293c386e6be3bb671738d959d5b.stex create mode 100644 .import/Cross.svg-6f488847a801f65477fcd11fc9c703aa.md5 create mode 100644 .import/Cross.svg-6f488847a801f65477fcd11fc9c703aa.stex create mode 100644 .import/Disc.svg-157511012f892ec63f0bb79bcf7cae1c.md5 create mode 100644 .import/Disc.svg-157511012f892ec63f0bb79bcf7cae1c.stex create mode 100644 .import/Disc.svg-2c9907ab420410f30b74369e1176ae1d.md5 create mode 100644 .import/Disc.svg-2c9907ab420410f30b74369e1176ae1d.stex create mode 100644 .import/Disc.svg-c7db13cacb9ad3f8830742156576b7b9.md5 create mode 100644 .import/Disc.svg-c7db13cacb9ad3f8830742156576b7b9.stex create mode 100644 .import/Double-down.svg-49b42c381335a7700ad013681c85584b.md5 create mode 100644 .import/Double-down.svg-49b42c381335a7700ad013681c85584b.stex create mode 100644 .import/Double-down.svg-7be96fc321a81d813f3db786e2b8b6af.md5 create mode 100644 .import/Double-down.svg-7be96fc321a81d813f3db786e2b8b6af.stex create mode 100644 .import/Double-down.svg-9f273c7061786a3900f783c100ef480d.md5 create mode 100644 .import/Double-down.svg-9f273c7061786a3900f783c100ef480d.stex create mode 100644 .import/Double-right.svg-289bdc2b4ec228e7cf7820ac5a3c73fc.md5 create mode 100644 .import/Double-right.svg-289bdc2b4ec228e7cf7820ac5a3c73fc.stex create mode 100644 .import/Double-right.svg-6b340aa690765cd8ebd6e751fc94eeab.md5 create mode 100644 .import/Double-right.svg-6b340aa690765cd8ebd6e751fc94eeab.stex create mode 100644 .import/Double-right.svg-722eb872ac08139e98aa8bad17fdfaa1.md5 create mode 100644 .import/Double-right.svg-722eb872ac08139e98aa8bad17fdfaa1.stex create mode 100644 .import/Double-up.svg-591605e1271174570df61085cf8a2478.md5 create mode 100644 .import/Double-up.svg-591605e1271174570df61085cf8a2478.stex create mode 100644 .import/Double-up.svg-640c7b1fba2e3affbff07806f3562afb.md5 create mode 100644 .import/Double-up.svg-640c7b1fba2e3affbff07806f3562afb.stex create mode 100644 .import/Double-up.svg-c4cd55cc1e3d6ea80679783cc7c27ef8.md5 create mode 100644 .import/Double-up.svg-c4cd55cc1e3d6ea80679783cc7c27ef8.stex create mode 100644 .import/Down_right.svg-331670b5e8410c4441315ae1a096ba4a.md5 create mode 100644 .import/Down_right.svg-331670b5e8410c4441315ae1a096ba4a.stex create mode 100644 .import/Down_right.svg-5572d46e97aea9ae3b2968cf27dfc335.md5 create mode 100644 .import/Down_right.svg-5572d46e97aea9ae3b2968cf27dfc335.stex create mode 100644 .import/Down_right.svg-81dafd14f9b53931f6f78197003bcbe2.md5 create mode 100644 .import/Down_right.svg-81dafd14f9b53931f6f78197003bcbe2.stex create mode 100644 .import/Exclamation.svg-00821f5031673d3e521d493f3597e69f.md5 create mode 100644 .import/Exclamation.svg-00821f5031673d3e521d493f3597e69f.stex create mode 100644 .import/Exclamation.svg-3f75eba4947cb91ecfca18b9f4758c74.md5 create mode 100644 .import/Exclamation.svg-3f75eba4947cb91ecfca18b9f4758c74.stex create mode 100644 .import/Exclamation.svg-ad577f7f7e41087d3156709c81862557.md5 create mode 100644 .import/Exclamation.svg-ad577f7f7e41087d3156709c81862557.stex create mode 100644 .import/PlayScene.svg-602e5c93ecfe4f102e0306485ed4f461.md5 create mode 100644 .import/PlayScene.svg-602e5c93ecfe4f102e0306485ed4f461.stex create mode 100644 .import/PlayScene.svg-f7983da1322fc076e6c50abf12708a81.md5 create mode 100644 .import/PlayScene.svg-f7983da1322fc076e6c50abf12708a81.stex create mode 100644 .import/Question.svg-1e2613277a5d64c1455ebe15084bba6d.md5 create mode 100644 .import/Question.svg-1e2613277a5d64c1455ebe15084bba6d.stex create mode 100644 .import/Question.svg-2f6a96e69c2923dad9c80a8c367f8450.md5 create mode 100644 .import/Question.svg-2f6a96e69c2923dad9c80a8c367f8450.stex create mode 100644 .import/Question.svg-97ee9585aee020fadc23beda4d744212.md5 create mode 100644 .import/Question.svg-97ee9585aee020fadc23beda4d744212.stex create mode 100644 .import/Right.svg-14d2a5b2099ad3930395a8aaad9502cd.md5 create mode 100644 .import/Right.svg-14d2a5b2099ad3930395a8aaad9502cd.stex create mode 100644 .import/Right.svg-c6aaf6d9b069ac6def1e5993d5b9ab83.md5 create mode 100644 .import/Right.svg-c6aaf6d9b069ac6def1e5993d5b9ab83.stex create mode 100644 .import/Right.svg-cc59ce2cc93676cc0b929f7d2cfd6ed8.md5 create mode 100644 .import/Right.svg-cc59ce2cc93676cc0b929f7d2cfd6ed8.stex create mode 100644 .import/Simple-down.svg-85639b67a4989bfe52aef0d2339ec568.md5 create mode 100644 .import/Simple-down.svg-85639b67a4989bfe52aef0d2339ec568.stex create mode 100644 .import/Simple-down.svg-8daf96f6470df2cc36ce65942728bf1f.md5 create mode 100644 .import/Simple-down.svg-8daf96f6470df2cc36ce65942728bf1f.stex create mode 100644 .import/Simple-down.svg-bf4b810308ad11a22581e57e298f9abc.md5 create mode 100644 .import/Simple-down.svg-bf4b810308ad11a22581e57e298f9abc.stex create mode 100644 .import/Simple-up.svg-2c702641a1942e5f02b44c5fd7293026.md5 create mode 100644 .import/Simple-up.svg-2c702641a1942e5f02b44c5fd7293026.stex create mode 100644 .import/Simple-up.svg-a9801b5b4caed7ad1aa069e86b1ba247.md5 create mode 100644 .import/Simple-up.svg-a9801b5b4caed7ad1aa069e86b1ba247.stex create mode 100644 .import/Simple-up.svg-c3fca8a1d1733debab0b53803e9c9423.md5 create mode 100644 .import/Simple-up.svg-c3fca8a1d1733debab0b53803e9c9423.stex create mode 100644 .import/Up_Right.svg-e1d620eeda0bbe585f6b326f330e5953.md5 create mode 100644 .import/Up_right.svg-9311a421778a9e52af772822119675ef.md5 create mode 100644 .import/Up_right.svg-9311a421778a9e52af772822119675ef.stex create mode 100644 .import/Up_right.svg-dec90644a80c2ddd7fd38b2d1bd4b8ab.md5 create mode 100644 .import/Up_right.svg-dec90644a80c2ddd7fd38b2d1bd4b8ab.stex create mode 100644 .import/Up_right.svg-e94aa12fa27696caa7c8586181e9bfd5.md5 create mode 100644 .import/Up_right.svg-e94aa12fa27696caa7c8586181e9bfd5.stex create mode 100644 .import/VisualShaderNodeComment.svg-05f6de219ed166eea77ee7350ee7391e.md5 create mode 100644 .import/VisualShaderNodeComment.svg-05f6de219ed166eea77ee7350ee7391e.stex create mode 100644 .import/VisualShaderNodeComment.svg-31af88c2d8d04fc606880fe8588cbcfa.md5 create mode 100644 .import/VisualShaderNodeComment.svg-31af88c2d8d04fc606880fe8588cbcfa.stex create mode 100644 Assets/Icons/Camera2D.svg create mode 100644 Assets/Icons/Camera2D.svg.import create mode 100644 Assets/Icons/Close.svg create mode 100644 Assets/Icons/Close.svg.import create mode 100644 Assets/Icons/PlayScene.svg create mode 100644 Assets/Icons/PlayScene.svg.import create mode 100644 Assets/Icons/VisualShaderNodeComment.svg create mode 100644 Assets/Icons/VisualShaderNodeComment.svg.import create mode 100644 Assets/UserIcons/Check.svg create mode 100644 Assets/UserIcons/Check.svg.import create mode 100644 Assets/UserIcons/Cross.svg create mode 100644 Assets/UserIcons/Cross.svg.import create mode 100644 Assets/UserIcons/Disc.svg create mode 100644 Assets/UserIcons/Disc.svg.import create mode 100644 Assets/UserIcons/Double-down.svg create mode 100644 Assets/UserIcons/Double-down.svg.import create mode 100644 Assets/UserIcons/Double-right.svg create mode 100644 Assets/UserIcons/Double-right.svg.import create mode 100644 Assets/UserIcons/Double-up.svg create mode 100644 Assets/UserIcons/Double-up.svg.import create mode 100644 Assets/UserIcons/Down_right.svg create mode 100644 Assets/UserIcons/Down_right.svg.import create mode 100644 Assets/UserIcons/Exclamation.svg create mode 100644 Assets/UserIcons/Exclamation.svg.import create mode 100644 Assets/UserIcons/Question.svg create mode 100644 Assets/UserIcons/Question.svg.import create mode 100644 Assets/UserIcons/Right.svg create mode 100644 Assets/UserIcons/Right.svg.import create mode 100644 Assets/UserIcons/Simple-down.svg create mode 100644 Assets/UserIcons/Simple-down.svg.import create mode 100644 Assets/UserIcons/Simple-up.svg create mode 100644 Assets/UserIcons/Simple-up.svg.import create mode 100644 Assets/UserIcons/Up_right.svg create mode 100644 Assets/UserIcons/Up_right.svg.import create mode 100644 Scenes/CommentGraphNode.tscn create mode 100644 Scenes/CommentRect.tscn rename Scenes/{GraphNode.tscn => ImageGraphNode.tscn} (88%) create mode 100644 Scripts/CommentGraphNode.gd create mode 100644 Scripts/CommentRect.gd rename Scripts/{GraphNode.gd => ImageGraphNode.gd} (93%) diff --git a/.import/Camera2D.svg-f7ff9a7e2b7478fa3eeeac7dfc6b181f.md5 b/.import/Camera2D.svg-f7ff9a7e2b7478fa3eeeac7dfc6b181f.md5 new file mode 100644 index 0000000..8b85103 --- /dev/null +++ b/.import/Camera2D.svg-f7ff9a7e2b7478fa3eeeac7dfc6b181f.md5 @@ -0,0 +1,3 @@ +source_md5="542afad15f843223632d80fa7b7447f9" +dest_md5="9aaef2302dc3e9d7cb96816990b01b39" + diff --git a/.import/Camera2D.svg-f7ff9a7e2b7478fa3eeeac7dfc6b181f.stex b/.import/Camera2D.svg-f7ff9a7e2b7478fa3eeeac7dfc6b181f.stex new file mode 100644 index 0000000000000000000000000000000000000000..fb9357544bdc43802ec11b8b402ceaedbce93c15 GIT binary patch literal 148 zcmZ>F2@VlpU|;}Y79eI|P+(^Sk`+K4?&=f}K1wwwmA33=ja?bxhf`|$@aezC-Hi9UkB0%M&Py!{|=uo6a@w`t( z37+o@dC>s2B*~_&K0epBZQHhQZ|nd6W431BxbG4Dp8(f$EUH?L=LQDVjnHNRZLr;{Z^()!Btypz33%=zr6hf;^(?A><5IUwcLOlg=FEK2=XE zVv?$#g8knQ(q=P_vsa+BGofsT{7i<%hu&2|j{jRWyL3;^{TWK1wwwmA33=ja?bxhf`|$@aezC-Hi9UkB0%M&Py!{|=uo6a@w`t( z37+o@dC>s2B*~_&K0epBZQHhQZ|nd6W431BxbG4Dp8(f$EUH?L=LQDVjnHNRZLr;{Z^()!Btypz33%=zr6hf;^(?A><5IUwcLOlg=FEK2=XE zVv?$#g8knQ(q=P_vsa+BGofsT{7i<%hu&2|j{jRWyL3;^{TWK1wwwmA33=ja?bxhf`|$@aezC-Hi9UkB0%M&Py!{|=uo6a@w`t( z37+o@dC>s2B*~_&K0epBZQHhQZ|nd6W431BxbG4Dp8(f$EUH?L=LQDVjnHNRZLr;{Z^()!Btypz33%=zr6hf;^(?A><5IUwcLOlg=FEK2=XE zVv?$#g8knQ(q=P_vsa+BGofsT{7i<%hu&2|j{jRWyL3;^{TWF2@VlpU|;}Y79eI|P+(^SlJ|f(+|?-{$kWa35|kYlVBvEV$kyjSz$~zT!Gd0q zl@H=2i~^Xx&v3Y~EqBjHb~6e0PYM~g&F=kRmhMrm6mi+)xL5tKev8YZ6Kk5M|DCr$ z_x7Pb{66pOM2wF#?SCi5$GpAacrGJr+r%8xpC1maNqMpVs(hM`;-dd4lg%=%p7S$E zq%nNx-kbev-HkhU-Mtpy&tneK;*YglT5~aY(waRw|DQ&m56-)8w`jd;Z;RZbXscUw tmp^ZKrMATCm0C#L((moRLsrz~G4J_asJc~DvBhAyK{|&|!VyiNR{`@PW}yH8 literal 0 HcmV?d00001 diff --git a/.import/Close.svg-87bba95aa15de62af6092da3aeaba77e.md5 b/.import/Close.svg-87bba95aa15de62af6092da3aeaba77e.md5 new file mode 100644 index 0000000..859fa3f --- /dev/null +++ b/.import/Close.svg-87bba95aa15de62af6092da3aeaba77e.md5 @@ -0,0 +1,3 @@ +source_md5="2cd01efac3e4d3e92f5582eb59e704c6" +dest_md5="d4dbeedef0f6d363b71b1f30910e1620" + diff --git a/.import/Close.svg-87bba95aa15de62af6092da3aeaba77e.stex b/.import/Close.svg-87bba95aa15de62af6092da3aeaba77e.stex new file mode 100644 index 0000000000000000000000000000000000000000..246f87bca73d56bba77daf5fcea955e3972a1758 GIT binary patch literal 250 zcmZ>F2@VlpU|;}Y79eI|P+(^SlJ|f(+|?-{$kWa35|kYlVBvEV$kyjSz$~zT!Gd0q zl@H=2i~^Xx&v3Y~EqBjHb~6e0PYM~g&F=kRmhMrm6mi+)xL5tKev8YZ6Kk5M|DCr$ z_x7Pb{66pOM2wF#?SCi5$GpAacrGJr+r%8xpC1maNqMpVs(hM`;-dd4lg%=%p7S$E zq%nNx-kbev-HkhU-Mtpy&tneK;*YglT5~aY(waRw|DQ&m56-)8w`jd;Z;RZbXscUw tmp^ZKrMATCm0C#L((moRLsrz~G4J_asJc~DvBhAyK{|&|!VyiNR{`@PW}yH8 literal 0 HcmV?d00001 diff --git a/.import/Cross.svg-09c18bed723459a3e6c5d7a9987c22bf.md5 b/.import/Cross.svg-09c18bed723459a3e6c5d7a9987c22bf.md5 new file mode 100644 index 0000000..730d1aa --- /dev/null +++ b/.import/Cross.svg-09c18bed723459a3e6c5d7a9987c22bf.md5 @@ -0,0 +1,3 @@ +source_md5="8becd37ab9d13cdfe37c08c496a9def3" +dest_md5="6c22c7360a4c0c592b751933fb637803" + diff --git a/.import/Cross.svg-09c18bed723459a3e6c5d7a9987c22bf.stex b/.import/Cross.svg-09c18bed723459a3e6c5d7a9987c22bf.stex new file mode 100644 index 0000000000000000000000000000000000000000..c3cd2a0c5ede46a1bcab6f940bf82ce506a31127 GIT binary patch literal 740 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 literal 0 HcmV?d00001 diff --git a/.import/Double-down.svg-7be96fc321a81d813f3db786e2b8b6af.md5 b/.import/Double-down.svg-7be96fc321a81d813f3db786e2b8b6af.md5 new file mode 100644 index 0000000..824339a --- /dev/null +++ b/.import/Double-down.svg-7be96fc321a81d813f3db786e2b8b6af.md5 @@ -0,0 +1,3 @@ +source_md5="97ebb7b72c4369b203aba61059674db1" +dest_md5="49c9608b9db7c846cfff9050503c3faa" + diff --git a/.import/Double-down.svg-7be96fc321a81d813f3db786e2b8b6af.stex b/.import/Double-down.svg-7be96fc321a81d813f3db786e2b8b6af.stex new file mode 100644 index 0000000000000000000000000000000000000000..ef2d1f4a0f1c590a33c1ebd4985cc1385ea34f81 GIT binary patch literal 288 zcmZ>F2@X+VU|;}Y79eI|P+(^Sv4KRmt5ZObr<>akARojI3$XBc4P@&pAK(xWU#Ku? z>Z=#?1EW8%uU)ty_qN;5|2LLYU+1{B&G*OR-!He^PFmJGh3lYX-o-;*49oiUKkvVH zS?;WrZTQ!(j#~vQEA_fx6<#@fxg#bpeCyTXvo^)&c2~u798i=q_U}pXtKyxqV75I= z!b7h~DVKL`Gqsxj`~K6z2Op=q{O453RrCKK_F9c4%wyYEmkn+0Oza}NJ03=B+A1$y zx71)|ghTqduTPC%_|9CH!z7&iX-^4@vGbob6%4_(Um~tF@6_9)|K@<3^c}9K4VQn+ kdv0F;W&gIU^Q#ZWg&zE!q#mpnq<*XY`Bv_muAAZ+04Du`a{vGU literal 0 HcmV?d00001 diff --git a/.import/Double-down.svg-9f273c7061786a3900f783c100ef480d.md5 b/.import/Double-down.svg-9f273c7061786a3900f783c100ef480d.md5 new file mode 100644 index 0000000..824339a --- /dev/null +++ b/.import/Double-down.svg-9f273c7061786a3900f783c100ef480d.md5 @@ -0,0 +1,3 @@ +source_md5="97ebb7b72c4369b203aba61059674db1" +dest_md5="49c9608b9db7c846cfff9050503c3faa" + diff --git a/.import/Double-down.svg-9f273c7061786a3900f783c100ef480d.stex b/.import/Double-down.svg-9f273c7061786a3900f783c100ef480d.stex new file mode 100644 index 0000000000000000000000000000000000000000..ef2d1f4a0f1c590a33c1ebd4985cc1385ea34f81 GIT binary patch literal 288 zcmZ>F2@X+VU|;}Y79eI|P+(^Sv4KRmt5ZObr<>akARojI3$XBc4P@&pAK(xWU#Ku? z>Z=#?1EW8%uU)ty_qN;5|2LLYU+1{B&G*OR-!He^PFmJGh3lYX-o-;*49oiUKkvVH zS?;WrZTQ!(j#~vQEA_fx6<#@fxg#bpeCyTXvo^)&c2~u798i=q_U}pXtKyxqV75I= z!b7h~DVKL`Gqsxj`~K6z2Op=q{O453RrCKK_F9c4%wyYEmkn+0Oza}NJ03=B+A1$y zx71)|ghTqduTPC%_|9CH!z7&iX-^4@vGbob6%4_(Um~tF@6_9)|K@<3^c}9K4VQn+ kdv0F;W&gIU^Q#ZWg&zE!q#mpnq<*XY`Bv_muAAZ+04Du`a{vGU literal 0 HcmV?d00001 diff --git a/.import/Double-right.svg-289bdc2b4ec228e7cf7820ac5a3c73fc.md5 b/.import/Double-right.svg-289bdc2b4ec228e7cf7820ac5a3c73fc.md5 new file mode 100644 index 0000000..96cd900 --- /dev/null +++ b/.import/Double-right.svg-289bdc2b4ec228e7cf7820ac5a3c73fc.md5 @@ -0,0 +1,3 @@ +source_md5="d6e013cec3f76e3fe8b0aecea25dfd16" +dest_md5="614f84af3fb5582afacfac6a88646ea2" + diff --git a/.import/Double-right.svg-289bdc2b4ec228e7cf7820ac5a3c73fc.stex b/.import/Double-right.svg-289bdc2b4ec228e7cf7820ac5a3c73fc.stex new file mode 100644 index 0000000000000000000000000000000000000000..bf2951a4791438f421a1f0d41b22763837ba15da GIT binary patch literal 376 zcmV-;0f+uaL{n5G0000a000040000003Zhe000170RRA3MM6+gNk&Fc0RRA3MM6+k zP&iCO0RR9mBftm{52B!L8!6+D@eam+*U(Vdwr%77|Loq4#h`5)LFSL{AJ6|9Gi{_) z2+nYe7FGl>eMkWmIzSvikvGDBqj`4#$vp$;+&vP_SqCt(=K&Jg;|C-%@+Uug{Ql1w zCy~33!pPkd=bh2~I|`il0{K5cB7j5zAP1gQf+>|&o<^#aUS9yRa3$GR8ohCMcXu}+ zp6q{Jyt$z&{}KHso3ycX&mFF3D-mnT_S{g4*pq=H49u}iutXv^`*8(08h^L~91UJv z0gk#4t^h}^8&`m%`k5=hQRT=L;Hb3c3UE}|a0NKZas{jZprsckq~@>;SFjYQ{92b= z3siB(6l?{md|(SuwUb^@Jqc9vsuwga0@beMkWmIzSvikvGDBqj`4#$vp$;+&vP_SqCt(=K&Jg;|C-%@+Uug{Ql1w zCy~33!pPkd=bh2~I|`il0{K5cB7j5zAP1gQf+>|&o<^#aUS9yRa3$GR8ohCMcXu}+ zp6q{Jyt$z&{}KHso3ycX&mFF3D-mnT_S{g4*pq=H49u}iutXv^`*8(08h^L~91UJv z0gk#4t^h}^8&`m%`k5=hQRT=L;Hb3c3UE}|a0NKZas{jZprsckq~@>;SFjYQ{92b= z3siB(6l?{md|(SuwUb^@Jqc9vsuwga0@beMkWmIzSvikvGDBqj`4#$vp$;+&vP_SqCt(=K&Jg;|C-%@+Uug{Ql1w zCy~33!pPkd=bh2~I|`il0{K5cB7j5zAP1gQf+>|&o<^#aUS9yRa3$GR8ohCMcXu}+ zp6q{Jyt$z&{}KHso3ycX&mFF3D-mnT_S{g4*pq=H49u}iutXv^`*8(08h^L~91UJv z0gk#4t^h}^8&`m%`k5=hQRT=L;Hb3c3UE}|a0NKZas{jZprsckq~@>;SFjYQ{92b= z3siB(6l?{md|(SuwUb^@Jqc9vsuwga0@bhgv+Gf29;C-XG~JGpb@3BrAxgxd^f(bmmZel(h@{&QkeLr= z)`RSR?g`{QAb!B1CzPi-lrMb^>X1MG5U_CMMv@}sFf-3GGw=Ujw=-3>bdKo%1YEAC z!%p;Yx?Udpo%sHK-o4@Z_zuV2_b$sfs1&6VYg9mOgoZi*=tGgQftSWaU}mAynz1b$ z^mGz!SZvS}RP6wI8>GlM3 CGn#P# literal 0 HcmV?d00001 diff --git a/.import/Double-up.svg-640c7b1fba2e3affbff07806f3562afb.md5 b/.import/Double-up.svg-640c7b1fba2e3affbff07806f3562afb.md5 new file mode 100644 index 0000000..c4a0662 --- /dev/null +++ b/.import/Double-up.svg-640c7b1fba2e3affbff07806f3562afb.md5 @@ -0,0 +1,3 @@ +source_md5="bcce2b4d6cf7e4c2a0f83d6488c338ea" +dest_md5="56b756c482be6f8a403452338e94fe01" + diff --git a/.import/Double-up.svg-640c7b1fba2e3affbff07806f3562afb.stex b/.import/Double-up.svg-640c7b1fba2e3affbff07806f3562afb.stex new file mode 100644 index 0000000000000000000000000000000000000000..a711da1533b3bc98bc157181a551b35e3fb87add GIT binary patch literal 356 zcmV-q0h|6uL{n5G0000a000040000003Zhe0000;0RRA3MM6+gNk&FI0RRA3MM6+k zP&iC50RR9mBftm{r@^3YBS~5Q81HDzyBit`+cr}2`!CB3VbHdXAoEA}k7wJ(OdBZ` zf-~Hrg%trzA6gWD-i>hgv+Gf29;C-XG~JGpb@3BrAxgxd^f(bmmZel(h@{&QkeLr= z)`RSR?g`{QAb!B1CzPi-lrMb^>X1MG5U_CMMv@}sFf-3GGw=Ujw=-3>bdKo%1YEAC z!%p;Yx?Udpo%sHK-o4@Z_zuV2_b$sfs1&6VYg9mOgoZi*=tGgQftSWaU}mAynz1b$ z^mGz!SZvS}RP6wI8>GlM3 CGn#P# literal 0 HcmV?d00001 diff --git a/.import/Double-up.svg-c4cd55cc1e3d6ea80679783cc7c27ef8.md5 b/.import/Double-up.svg-c4cd55cc1e3d6ea80679783cc7c27ef8.md5 new file mode 100644 index 0000000..c4a0662 --- /dev/null +++ b/.import/Double-up.svg-c4cd55cc1e3d6ea80679783cc7c27ef8.md5 @@ -0,0 +1,3 @@ +source_md5="bcce2b4d6cf7e4c2a0f83d6488c338ea" +dest_md5="56b756c482be6f8a403452338e94fe01" + diff --git a/.import/Double-up.svg-c4cd55cc1e3d6ea80679783cc7c27ef8.stex b/.import/Double-up.svg-c4cd55cc1e3d6ea80679783cc7c27ef8.stex new file mode 100644 index 0000000000000000000000000000000000000000..a711da1533b3bc98bc157181a551b35e3fb87add GIT binary patch literal 356 zcmV-q0h|6uL{n5G0000a000040000003Zhe0000;0RRA3MM6+gNk&FI0RRA3MM6+k zP&iC50RR9mBftm{r@^3YBS~5Q81HDzyBit`+cr}2`!CB3VbHdXAoEA}k7wJ(OdBZ` zf-~Hrg%trzA6gWD-i>hgv+Gf29;C-XG~JGpb@3BrAxgxd^f(bmmZel(h@{&QkeLr= z)`RSR?g`{QAb!B1CzPi-lrMb^>X1MG5U_CMMv@}sFf-3GGw=Ujw=-3>bdKo%1YEAC z!%p;Yx?Udpo%sHK-o4@Z_zuV2_b$sfs1&6VYg9mOgoZi*=tGgQftSWaU}mAynz1b$ z^mGz!SZvS}RP6wI8>GlM3 CGn#P# literal 0 HcmV?d00001 diff --git a/.import/Down_right.svg-331670b5e8410c4441315ae1a096ba4a.md5 b/.import/Down_right.svg-331670b5e8410c4441315ae1a096ba4a.md5 new file mode 100644 index 0000000..3021903 --- /dev/null +++ b/.import/Down_right.svg-331670b5e8410c4441315ae1a096ba4a.md5 @@ -0,0 +1,3 @@ +source_md5="f220b5e735fd1d9f1e1d374d7021f7f6" +dest_md5="3cda7a5d6a3be1ade86ab0e8e23a76ef" + diff --git a/.import/Down_right.svg-331670b5e8410c4441315ae1a096ba4a.stex b/.import/Down_right.svg-331670b5e8410c4441315ae1a096ba4a.stex new file mode 100644 index 0000000000000000000000000000000000000000..5d3267bd943435284af05be521990f7aea037099 GIT binary patch literal 332 zcmV-S0ki%`L{n5G0000a000040000003Zhe0000m0RRA3MM6+gNk&E_0RRA3MM6+k zP&iB%0RR9mBftm{ufZgeBuTmcHSW?qbaD7C8*Cd%QZ%1`e&nLh{9g>(Msj5S=_fdJq03z7gwvjhngAV?rU z3BWa;3UKcqad<`fnUON5(V|AO<_W~Yl_cA0a^ix!C&A$SJr|?vx|ixH{(mqK%t#1F!Mc#kq<4WNYfY*M>RS)phY+ z6`7FiUwW{>%Fu*#&sZN;SP`0#9R{$(iqHff*4QdA)!SjqfC5_t6xckVz-AtWAqb2> eU(Msj5S=_fdJq03z7gwvjhngAV?rU z3BWa;3UKcqad<`fnUON5(V|AO<_W~Yl_cA0a^ix!C&A$SJr|?vx|ixH{(mqK%t#1F!Mc#kq<4WNYfY*M>RS)phY+ z6`7FiUwW{>%Fu*#&sZN;SP`0#9R{$(iqHff*4QdA)!SjqfC5_t6xckVz-AtWAqb2> eU(Msj5S=_fdJq03z7gwvjhngAV?rU z3BWa;3UKcqad<`fnUON5(V|AO<_W~Yl_cA0a^ix!C&A$SJr|?vx|ixH{(mqK%t#1F!Mc#kq<4WNYfY*M>RS)phY+ z6`7FiUwW{>%Fu*#&sZN;SP`0#9R{$(iqHff*4QdA)!SjqfC5_t6xckVz-AtWAqb2> eUF2@X+VU|;}Y79eI|P+(^SlG}hd+|?-{$kWYj6_gzoVBs?t$ktarz#$OtFd_GH z(;i!U8m)btmr+$pCJ7}G=OD~@)Dc=|NP6gZqs%A z-EShKY|s>Zm+isa2F-ux`07(#%DV;shTq=Cdw7j)dO@(j?QCcN=R2n=oN~FD5V$P& zC1Y~zlyZl;r(a7g__5e(L7e*(IRlZpxt=q39nEvD?Kc0gEn-S$v#sXs-gn>F`4|8b C-BVKl literal 0 HcmV?d00001 diff --git a/.import/Exclamation.svg-3f75eba4947cb91ecfca18b9f4758c74.md5 b/.import/Exclamation.svg-3f75eba4947cb91ecfca18b9f4758c74.md5 new file mode 100644 index 0000000..8353e04 --- /dev/null +++ b/.import/Exclamation.svg-3f75eba4947cb91ecfca18b9f4758c74.md5 @@ -0,0 +1,3 @@ +source_md5="4467f392af6cb1ad2acd20ae416a69ab" +dest_md5="c38e4c1e8ff76bdcb459c1a4726aecad" + diff --git a/.import/Exclamation.svg-3f75eba4947cb91ecfca18b9f4758c74.stex b/.import/Exclamation.svg-3f75eba4947cb91ecfca18b9f4758c74.stex new file mode 100644 index 0000000000000000000000000000000000000000..82982dd6ae80dd6ca77a59dd5187d55906d0f78b GIT binary patch literal 210 zcmZ>F2@X+VU|;}Y79eI|P+(^SlG}hd+|?-{$kWYj6_gzoVBs?t$ktarz#$OtFd_GH z(;i!U8m)btmr+$pCJ7}G=OD~@)Dc=|NP6gZqs%A z-EShKY|s>Zm+isa2F-ux`07(#%DV;shTq=Cdw7j)dO@(j?QCcN=R2n=oN~FD5V$P& zC1Y~zlyZl;r(a7g__5e(L7e*(IRlZpxt=q39nEvD?Kc0gEn-S$v#sXs-gn>F`4|8b C-BVKl literal 0 HcmV?d00001 diff --git a/.import/Exclamation.svg-ad577f7f7e41087d3156709c81862557.md5 b/.import/Exclamation.svg-ad577f7f7e41087d3156709c81862557.md5 new file mode 100644 index 0000000..8353e04 --- /dev/null +++ b/.import/Exclamation.svg-ad577f7f7e41087d3156709c81862557.md5 @@ -0,0 +1,3 @@ +source_md5="4467f392af6cb1ad2acd20ae416a69ab" +dest_md5="c38e4c1e8ff76bdcb459c1a4726aecad" + diff --git a/.import/Exclamation.svg-ad577f7f7e41087d3156709c81862557.stex b/.import/Exclamation.svg-ad577f7f7e41087d3156709c81862557.stex new file mode 100644 index 0000000000000000000000000000000000000000..82982dd6ae80dd6ca77a59dd5187d55906d0f78b GIT binary patch literal 210 zcmZ>F2@X+VU|;}Y79eI|P+(^SlG}hd+|?-{$kWYj6_gzoVBs?t$ktarz#$OtFd_GH z(;i!U8m)btmr+$pCJ7}G=OD~@)Dc=|NP6gZqs%A z-EShKY|s>Zm+isa2F-ux`07(#%DV;shTq=Cdw7j)dO@(j?QCcN=R2n=oN~FD5V$P& zC1Y~zlyZl;r(a7g__5e(L7e*(IRlZpxt=q39nEvD?Kc0gEn-S$v#sXs-gn>F`4|8b C-BVKl literal 0 HcmV?d00001 diff --git a/.import/PlayScene.svg-602e5c93ecfe4f102e0306485ed4f461.md5 b/.import/PlayScene.svg-602e5c93ecfe4f102e0306485ed4f461.md5 new file mode 100644 index 0000000..ba6ec2d --- /dev/null +++ b/.import/PlayScene.svg-602e5c93ecfe4f102e0306485ed4f461.md5 @@ -0,0 +1,3 @@ +source_md5="de13306bc70548369349318dacb66c55" +dest_md5="76b7ec3c696dc67a27e92eb1bae98488" + diff --git a/.import/PlayScene.svg-602e5c93ecfe4f102e0306485ed4f461.stex b/.import/PlayScene.svg-602e5c93ecfe4f102e0306485ed4f461.stex new file mode 100644 index 0000000000000000000000000000000000000000..b460d66ddd836538797a0335d5c1f6785f71315c GIT binary patch literal 228 zcmZ>F2@VlpU|;}Y79eI|P+(^Sk|%&T+|?-{$kWYj50o7iVBxbK$kyjSz%0<(Y&J=z z(|*#zEiZR9xQv24Mq^9Eal78=9*>dHnt7aM#a}yCkaVcbYerF2@VlpU|;}Y79eI|P+(^Sk|%&T+|?-{$kWYj50o7iVBxbK$kyjSz%0<(Y&J=z z(|*#zEiZR9xQv24Mq^9Eal78=9*>dHnt7aM#a}yCkaVcbYer^I5*7#w5wtMQ3lc%)ftWJ}i1d&gC zBh}xgN=P5#ix@E!)GhY4w}$F)!7f-~09m9+5-)-PslgC%1Ofqr!yynT0v`lLX*i0K zBm}i7!HDKW;Exv3{sj*>B_Ig=mxL@81r&5hWlFadY!s#ZpoD%4+Vwmt#7s4J-tA4& z{#%%4`=91G^;A?a5?-ys01@d9BSfL=?%m-~bKNt#8~{s~w0jqSrC(8e?fgCWI yt`h}Zt;VSIohWED7@e*Y1;Dh@bE1rayttDGf{~YyjC>H!9Om6I_J6@l{=YC~|1v-T literal 0 HcmV?d00001 diff --git a/.import/Question.svg-2f6a96e69c2923dad9c80a8c367f8450.md5 b/.import/Question.svg-2f6a96e69c2923dad9c80a8c367f8450.md5 new file mode 100644 index 0000000..f06dafc --- /dev/null +++ b/.import/Question.svg-2f6a96e69c2923dad9c80a8c367f8450.md5 @@ -0,0 +1,3 @@ +source_md5="3e531d8e171629e9433db0bb431b2e12" +dest_md5="f54d5bc6633c16d988118d89584d1fa2" + diff --git a/.import/Question.svg-2f6a96e69c2923dad9c80a8c367f8450.stex b/.import/Question.svg-2f6a96e69c2923dad9c80a8c367f8450.stex new file mode 100644 index 0000000000000000000000000000000000000000..b55d5778d6bef8a72b26c5d914f5e202ac4be634 GIT binary patch literal 664 zcmV;J0%!e4L{n5G0000a000040000003Zhe0001d0ssJ4MM6+gNk&F+0ssJ4MM6+k zP&iCv0ssInBftm{r{k!NBuR2r_jCAj-7{!7h$KmovXAflt2lx1*o@jnlH}^WAS{23 z``#|Mv2Cl$#@!tvLNaQg3fiR#LNa%kYXP3~1>^I5*7#w5wtMQ3lc%)ftWJ}i1d&gC zBh}xgN=P5#ix@E!)GhY4w}$F)!7f-~09m9+5-)-PslgC%1Ofqr!yynT0v`lLX*i0K zBm}i7!HDKW;Exv3{sj*>B_Ig=mxL@81r&5hWlFadY!s#ZpoD%4+Vwmt#7s4J-tA4& z{#%%4`=91G^;A?a5?-ys01@d9BSfL=?%m-~bKNt#8~{s~w0jqSrC(8e?fgCWI yt`h}Zt;VSIohWED7@e*Y1;Dh@bE1rayttDGf{~YyjC>H!9Om6I_J6@l{=YC~|1v-T literal 0 HcmV?d00001 diff --git a/.import/Question.svg-97ee9585aee020fadc23beda4d744212.md5 b/.import/Question.svg-97ee9585aee020fadc23beda4d744212.md5 new file mode 100644 index 0000000..f06dafc --- /dev/null +++ b/.import/Question.svg-97ee9585aee020fadc23beda4d744212.md5 @@ -0,0 +1,3 @@ +source_md5="3e531d8e171629e9433db0bb431b2e12" +dest_md5="f54d5bc6633c16d988118d89584d1fa2" + diff --git a/.import/Question.svg-97ee9585aee020fadc23beda4d744212.stex b/.import/Question.svg-97ee9585aee020fadc23beda4d744212.stex new file mode 100644 index 0000000000000000000000000000000000000000..b55d5778d6bef8a72b26c5d914f5e202ac4be634 GIT binary patch literal 664 zcmV;J0%!e4L{n5G0000a000040000003Zhe0001d0ssJ4MM6+gNk&F+0ssJ4MM6+k zP&iCv0ssInBftm{r{k!NBuR2r_jCAj-7{!7h$KmovXAflt2lx1*o@jnlH}^WAS{23 z``#|Mv2Cl$#@!tvLNaQg3fiR#LNa%kYXP3~1>^I5*7#w5wtMQ3lc%)ftWJ}i1d&gC zBh}xgN=P5#ix@E!)GhY4w}$F)!7f-~09m9+5-)-PslgC%1Ofqr!yynT0v`lLX*i0K zBm}i7!HDKW;Exv3{sj*>B_Ig=mxL@81r&5hWlFadY!s#ZpoD%4+Vwmt#7s4J-tA4& z{#%%4`=91G^;A?a5?-ys01@d9BSfL=?%m-~bKNt#8~{s~w0jqSrC(8e?fgCWI yt`h}Zt;VSIohWED7@e*Y1;Dh@bE1rayttDGf{~YyjC>H!9Om6I_J6@l{=YC~|1v-T literal 0 HcmV?d00001 diff --git a/.import/Right.svg-14d2a5b2099ad3930395a8aaad9502cd.md5 b/.import/Right.svg-14d2a5b2099ad3930395a8aaad9502cd.md5 new file mode 100644 index 0000000..0a490b4 --- /dev/null +++ b/.import/Right.svg-14d2a5b2099ad3930395a8aaad9502cd.md5 @@ -0,0 +1,3 @@ +source_md5="464b4ad3ec906581bdc288c42780b3c9" +dest_md5="d13a892abfe2c259bc6a81c9633a79fc" + diff --git a/.import/Right.svg-14d2a5b2099ad3930395a8aaad9502cd.stex b/.import/Right.svg-14d2a5b2099ad3930395a8aaad9502cd.stex new file mode 100644 index 0000000000000000000000000000000000000000..e08c36685ffdf3b856b16617ccaec5c855ec9e86 GIT binary patch literal 290 zcmV+-0p0#bL{n5G0000a000040000003Zhe000060RRA3MM6+gNk&Hc00012MM6+k zP&iEP0000lBftm{N1>o?BPYin<3EhsgNDMkjg?U!mQN7Gdu?=>SUi9Q|rt=C+yK&9ReT@ zc#2sVk$L_aQ6l~L0EmU-Mv@e%7LJ*582xwhu1mB3i2f^b+qR*RTe|y-5S>w?7#Bm) zN*tZNBE(w;t0tZOhXLCc1D1CN%&!a>P7LS{UjktF{%cFWvwkpOabv*j!hrtRi1FM; o%j!XSyC(j?aBAaEF7HZi^Hg&CkD7Qar96W#T27amoRKjuRkZ7W1poj5 literal 0 HcmV?d00001 diff --git a/.import/Right.svg-c6aaf6d9b069ac6def1e5993d5b9ab83.md5 b/.import/Right.svg-c6aaf6d9b069ac6def1e5993d5b9ab83.md5 new file mode 100644 index 0000000..0a490b4 --- /dev/null +++ b/.import/Right.svg-c6aaf6d9b069ac6def1e5993d5b9ab83.md5 @@ -0,0 +1,3 @@ +source_md5="464b4ad3ec906581bdc288c42780b3c9" +dest_md5="d13a892abfe2c259bc6a81c9633a79fc" + diff --git a/.import/Right.svg-c6aaf6d9b069ac6def1e5993d5b9ab83.stex b/.import/Right.svg-c6aaf6d9b069ac6def1e5993d5b9ab83.stex new file mode 100644 index 0000000000000000000000000000000000000000..e08c36685ffdf3b856b16617ccaec5c855ec9e86 GIT binary patch literal 290 zcmV+-0p0#bL{n5G0000a000040000003Zhe000060RRA3MM6+gNk&Hc00012MM6+k zP&iEP0000lBftm{N1>o?BPYin<3EhsgNDMkjg?U!mQN7Gdu?=>SUi9Q|rt=C+yK&9ReT@ zc#2sVk$L_aQ6l~L0EmU-Mv@e%7LJ*582xwhu1mB3i2f^b+qR*RTe|y-5S>w?7#Bm) zN*tZNBE(w;t0tZOhXLCc1D1CN%&!a>P7LS{UjktF{%cFWvwkpOabv*j!hrtRi1FM; o%j!XSyC(j?aBAaEF7HZi^Hg&CkD7Qar96W#T27amoRKjuRkZ7W1poj5 literal 0 HcmV?d00001 diff --git a/.import/Right.svg-cc59ce2cc93676cc0b929f7d2cfd6ed8.md5 b/.import/Right.svg-cc59ce2cc93676cc0b929f7d2cfd6ed8.md5 new file mode 100644 index 0000000..0a490b4 --- /dev/null +++ b/.import/Right.svg-cc59ce2cc93676cc0b929f7d2cfd6ed8.md5 @@ -0,0 +1,3 @@ +source_md5="464b4ad3ec906581bdc288c42780b3c9" +dest_md5="d13a892abfe2c259bc6a81c9633a79fc" + diff --git a/.import/Right.svg-cc59ce2cc93676cc0b929f7d2cfd6ed8.stex b/.import/Right.svg-cc59ce2cc93676cc0b929f7d2cfd6ed8.stex new file mode 100644 index 0000000000000000000000000000000000000000..e08c36685ffdf3b856b16617ccaec5c855ec9e86 GIT binary patch literal 290 zcmV+-0p0#bL{n5G0000a000040000003Zhe000060RRA3MM6+gNk&Hc00012MM6+k zP&iEP0000lBftm{N1>o?BPYin<3EhsgNDMkjg?U!mQN7Gdu?=>SUi9Q|rt=C+yK&9ReT@ zc#2sVk$L_aQ6l~L0EmU-Mv@e%7LJ*582xwhu1mB3i2f^b+qR*RTe|y-5S>w?7#Bm) zN*tZNBE(w;t0tZOhXLCc1D1CN%&!a>P7LS{UjktF{%cFWvwkpOabv*j!hrtRi1FM; o%j!XSyC(j?aBAaEF7HZi^Hg&CkD7Qar96W#T27amoRKjuRkZ7W1poj5 literal 0 HcmV?d00001 diff --git a/.import/Simple-down.svg-85639b67a4989bfe52aef0d2339ec568.md5 b/.import/Simple-down.svg-85639b67a4989bfe52aef0d2339ec568.md5 new file mode 100644 index 0000000..ca5f9cb --- /dev/null +++ b/.import/Simple-down.svg-85639b67a4989bfe52aef0d2339ec568.md5 @@ -0,0 +1,3 @@ +source_md5="b8630468b0aed7fa65976ef23ceaa8c3" +dest_md5="911367ccfb737f7c0a37c57eee7a61fa" + diff --git a/.import/Simple-down.svg-85639b67a4989bfe52aef0d2339ec568.stex b/.import/Simple-down.svg-85639b67a4989bfe52aef0d2339ec568.stex new file mode 100644 index 0000000000000000000000000000000000000000..fc937eac1df1f35b3b5c37a406e16724ec896322 GIT binary patch literal 488 zcmV=i3{u{|H{7woHj*SK{Q^9~Apa@?!_#URw{0Vd$;>?W zE@t~LYM%?cjcr?1&UeFe=BG4b%}@>W17`v$P=G7ZUH~o}g#)I5SgEk#;Rgc2U@#~Y1_MLD z_<~>oOl7|pA+g`>z{|7Yd!Wi7c06OhkGd$3r zYl?mQuYfH{vT19MZQDNAwtcMs|CPIYtyy#V9MOM*NgCUpp?|3Em-;||QR}ED?YPNk z?~5IFy4|iNXZ0#Im`trSxjP}>loJT}cSSDUE?oedWY2E1VWdQPs8vr5-fW0Lcp?!UvhIsTC=n-t9ykZ-j56Y?LA`OI>yJkx zWyFR%osNNKGeX58nK;o(bruRjhD_CAxj2EX_iPp;bNFmFho>wOnxXZln@S0SBxwoB e)YZAyaH`tKuYTGr(N literal 0 HcmV?d00001 diff --git a/.import/Simple-down.svg-8daf96f6470df2cc36ce65942728bf1f.md5 b/.import/Simple-down.svg-8daf96f6470df2cc36ce65942728bf1f.md5 new file mode 100644 index 0000000..ca5f9cb --- /dev/null +++ b/.import/Simple-down.svg-8daf96f6470df2cc36ce65942728bf1f.md5 @@ -0,0 +1,3 @@ +source_md5="b8630468b0aed7fa65976ef23ceaa8c3" +dest_md5="911367ccfb737f7c0a37c57eee7a61fa" + diff --git a/.import/Simple-down.svg-8daf96f6470df2cc36ce65942728bf1f.stex b/.import/Simple-down.svg-8daf96f6470df2cc36ce65942728bf1f.stex new file mode 100644 index 0000000000000000000000000000000000000000..fc937eac1df1f35b3b5c37a406e16724ec896322 GIT binary patch literal 488 zcmV=i3{u{|H{7woHj*SK{Q^9~Apa@?!_#URw{0Vd$;>?W zE@t~LYM%?cjcr?1&UeFe=BG4b%}@>W17`v$P=G7ZUH~o}g#)I5SgEk#;Rgc2U@#~Y1_MLD z_<~>oOl7|pA+g`>z{|7Yd!Wi7c06OhkGd$3r zYl?mQuYfH{vT19MZQDNAwtcMs|CPIYtyy#V9MOM*NgCUpp?|3Em-;||QR}ED?YPNk z?~5IFy4|iNXZ0#Im`trSxjP}>loJT}cSSDUE?oedWY2E1VWdQPs8vr5-fW0Lcp?!UvhIsTC=n-t9ykZ-j56Y?LA`OI>yJkx zWyFR%osNNKGeX58nK;o(bruRjhD_CAxj2EX_iPp;bNFmFho>wOnxXZln@S0SBxwoB e)YZAyaH`tKuYTGr(N literal 0 HcmV?d00001 diff --git a/.import/Simple-down.svg-bf4b810308ad11a22581e57e298f9abc.md5 b/.import/Simple-down.svg-bf4b810308ad11a22581e57e298f9abc.md5 new file mode 100644 index 0000000..ca5f9cb --- /dev/null +++ b/.import/Simple-down.svg-bf4b810308ad11a22581e57e298f9abc.md5 @@ -0,0 +1,3 @@ +source_md5="b8630468b0aed7fa65976ef23ceaa8c3" +dest_md5="911367ccfb737f7c0a37c57eee7a61fa" + diff --git a/.import/Simple-down.svg-bf4b810308ad11a22581e57e298f9abc.stex b/.import/Simple-down.svg-bf4b810308ad11a22581e57e298f9abc.stex new file mode 100644 index 0000000000000000000000000000000000000000..fc937eac1df1f35b3b5c37a406e16724ec896322 GIT binary patch literal 488 zcmV=i3{u{|H{7woHj*SK{Q^9~Apa@?!_#URw{0Vd$;>?W zE@t~LYM%?cjcr?1&UeFe=BG4b%}@>W17`v$P=G7ZUH~o}g#)I5SgEk#;Rgc2U@#~Y1_MLD z_<~>oOl7|pA+g`>z{|7Yd!Wi7c06OhkGd$3r zYl?mQuYfH{vT19MZQDNAwtcMs|CPIYtyy#V9MOM*NgCUpp?|3Em-;||QR}ED?YPNk z?~5IFy4|iNXZ0#Im`trSxjP}>loJT}cSSDUE?oedWY2E1VWdQPs8vr5-fW0Lcp?!UvhIsTC=n-t9ykZ-j56Y?LA`OI>yJkx zWyFR%osNNKGeX58nK;o(bruRjhD_CAxj2EX_iPp;bNFmFho>wOnxXZln@S0SBxwoB e)YZAyaH`tKuYTGr(N literal 0 HcmV?d00001 diff --git a/.import/Simple-up.svg-2c702641a1942e5f02b44c5fd7293026.md5 b/.import/Simple-up.svg-2c702641a1942e5f02b44c5fd7293026.md5 new file mode 100644 index 0000000..07e9c98 --- /dev/null +++ b/.import/Simple-up.svg-2c702641a1942e5f02b44c5fd7293026.md5 @@ -0,0 +1,3 @@ +source_md5="79e14ae0b5c616e7ceb92e5c01a42cbc" +dest_md5="237a4a1b3ad4f72d537daa42af8ab20c" + diff --git a/.import/Simple-up.svg-2c702641a1942e5f02b44c5fd7293026.stex b/.import/Simple-up.svg-2c702641a1942e5f02b44c5fd7293026.stex new file mode 100644 index 0000000000000000000000000000000000000000..e42b053091eb149ae51bb99ed1786832ecc2a265 GIT binary patch literal 510 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 + + + + + diff --git a/Assets/Icons/Camera2D.svg.import b/Assets/Icons/Camera2D.svg.import new file mode 100644 index 0000000..1f35e62 --- /dev/null +++ b/Assets/Icons/Camera2D.svg.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Camera2D.svg-f7ff9a7e2b7478fa3eeeac7dfc6b181f.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Icons/Camera2D.svg" +dest_files=[ "res://.import/Camera2D.svg-f7ff9a7e2b7478fa3eeeac7dfc6b181f.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Icons/Close.svg b/Assets/Icons/Close.svg new file mode 100644 index 0000000..331727a --- /dev/null +++ b/Assets/Icons/Close.svg @@ -0,0 +1 @@ + diff --git a/Assets/Icons/Close.svg.import b/Assets/Icons/Close.svg.import new file mode 100644 index 0000000..3d4f481 --- /dev/null +++ b/Assets/Icons/Close.svg.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Close.svg-61be3d94a0e69d2c4a249167beade817.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Icons/Close.svg" +dest_files=[ "res://.import/Close.svg-61be3d94a0e69d2c4a249167beade817.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Icons/PlayScene.svg b/Assets/Icons/PlayScene.svg new file mode 100644 index 0000000..7f8e40f --- /dev/null +++ b/Assets/Icons/PlayScene.svg @@ -0,0 +1 @@ + diff --git a/Assets/Icons/PlayScene.svg.import b/Assets/Icons/PlayScene.svg.import new file mode 100644 index 0000000..dad4981 --- /dev/null +++ b/Assets/Icons/PlayScene.svg.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/PlayScene.svg-f7983da1322fc076e6c50abf12708a81.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Icons/PlayScene.svg" +dest_files=[ "res://.import/PlayScene.svg-f7983da1322fc076e6c50abf12708a81.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Icons/VisualShaderNodeComment.svg b/Assets/Icons/VisualShaderNodeComment.svg new file mode 100644 index 0000000..3887853 --- /dev/null +++ b/Assets/Icons/VisualShaderNodeComment.svg @@ -0,0 +1 @@ + diff --git a/Assets/Icons/VisualShaderNodeComment.svg.import b/Assets/Icons/VisualShaderNodeComment.svg.import new file mode 100644 index 0000000..88237b8 --- /dev/null +++ b/Assets/Icons/VisualShaderNodeComment.svg.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/VisualShaderNodeComment.svg-05f6de219ed166eea77ee7350ee7391e.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Icons/VisualShaderNodeComment.svg" +dest_files=[ "res://.import/VisualShaderNodeComment.svg-05f6de219ed166eea77ee7350ee7391e.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/UserIcons/Check.svg b/Assets/UserIcons/Check.svg new file mode 100644 index 0000000..904d0fc --- /dev/null +++ b/Assets/UserIcons/Check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/Assets/UserIcons/Check.svg.import b/Assets/UserIcons/Check.svg.import new file mode 100644 index 0000000..12bb0d1 --- /dev/null +++ b/Assets/UserIcons/Check.svg.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Check.svg-a2b3200f72b6a26b4450734dcb813536.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/UserIcons/Check.svg" +dest_files=[ "res://.import/Check.svg-a2b3200f72b6a26b4450734dcb813536.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/UserIcons/Cross.svg b/Assets/UserIcons/Cross.svg new file mode 100644 index 0000000..4d76e24 --- /dev/null +++ b/Assets/UserIcons/Cross.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/Assets/UserIcons/Cross.svg.import b/Assets/UserIcons/Cross.svg.import new file mode 100644 index 0000000..347f6d2 --- /dev/null +++ b/Assets/UserIcons/Cross.svg.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Cross.svg-6f488847a801f65477fcd11fc9c703aa.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/UserIcons/Cross.svg" +dest_files=[ "res://.import/Cross.svg-6f488847a801f65477fcd11fc9c703aa.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/UserIcons/Disc.svg b/Assets/UserIcons/Disc.svg new file mode 100644 index 0000000..d98cc6d --- /dev/null +++ b/Assets/UserIcons/Disc.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/Assets/UserIcons/Disc.svg.import b/Assets/UserIcons/Disc.svg.import new file mode 100644 index 0000000..ef20192 --- /dev/null +++ b/Assets/UserIcons/Disc.svg.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Disc.svg-c7db13cacb9ad3f8830742156576b7b9.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/UserIcons/Disc.svg" +dest_files=[ "res://.import/Disc.svg-c7db13cacb9ad3f8830742156576b7b9.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/UserIcons/Double-down.svg b/Assets/UserIcons/Double-down.svg new file mode 100644 index 0000000..5846fae --- /dev/null +++ b/Assets/UserIcons/Double-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/Assets/UserIcons/Double-down.svg.import b/Assets/UserIcons/Double-down.svg.import new file mode 100644 index 0000000..10b212e --- /dev/null +++ b/Assets/UserIcons/Double-down.svg.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Double-down.svg-49b42c381335a7700ad013681c85584b.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/UserIcons/Double-down.svg" +dest_files=[ "res://.import/Double-down.svg-49b42c381335a7700ad013681c85584b.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/UserIcons/Double-right.svg b/Assets/UserIcons/Double-right.svg new file mode 100644 index 0000000..1ef719c --- /dev/null +++ b/Assets/UserIcons/Double-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/Assets/UserIcons/Double-right.svg.import b/Assets/UserIcons/Double-right.svg.import new file mode 100644 index 0000000..262621a --- /dev/null +++ b/Assets/UserIcons/Double-right.svg.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Double-right.svg-289bdc2b4ec228e7cf7820ac5a3c73fc.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/UserIcons/Double-right.svg" +dest_files=[ "res://.import/Double-right.svg-289bdc2b4ec228e7cf7820ac5a3c73fc.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/UserIcons/Double-up.svg b/Assets/UserIcons/Double-up.svg new file mode 100644 index 0000000..a33e0f8 --- /dev/null +++ b/Assets/UserIcons/Double-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/Assets/UserIcons/Double-up.svg.import b/Assets/UserIcons/Double-up.svg.import new file mode 100644 index 0000000..a68c821 --- /dev/null +++ b/Assets/UserIcons/Double-up.svg.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Double-up.svg-640c7b1fba2e3affbff07806f3562afb.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/UserIcons/Double-up.svg" +dest_files=[ "res://.import/Double-up.svg-640c7b1fba2e3affbff07806f3562afb.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/UserIcons/Down_right.svg b/Assets/UserIcons/Down_right.svg new file mode 100644 index 0000000..129dd62 --- /dev/null +++ b/Assets/UserIcons/Down_right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/Assets/UserIcons/Down_right.svg.import b/Assets/UserIcons/Down_right.svg.import new file mode 100644 index 0000000..b11865c --- /dev/null +++ b/Assets/UserIcons/Down_right.svg.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Down_right.svg-5572d46e97aea9ae3b2968cf27dfc335.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/UserIcons/Down_right.svg" +dest_files=[ "res://.import/Down_right.svg-5572d46e97aea9ae3b2968cf27dfc335.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/UserIcons/Exclamation.svg b/Assets/UserIcons/Exclamation.svg new file mode 100644 index 0000000..e730a08 --- /dev/null +++ b/Assets/UserIcons/Exclamation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/Assets/UserIcons/Exclamation.svg.import b/Assets/UserIcons/Exclamation.svg.import new file mode 100644 index 0000000..b9c1436 --- /dev/null +++ b/Assets/UserIcons/Exclamation.svg.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Exclamation.svg-3f75eba4947cb91ecfca18b9f4758c74.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/UserIcons/Exclamation.svg" +dest_files=[ "res://.import/Exclamation.svg-3f75eba4947cb91ecfca18b9f4758c74.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/UserIcons/Question.svg b/Assets/UserIcons/Question.svg new file mode 100644 index 0000000..d76931b --- /dev/null +++ b/Assets/UserIcons/Question.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/Assets/UserIcons/Question.svg.import b/Assets/UserIcons/Question.svg.import new file mode 100644 index 0000000..6f9f0a8 --- /dev/null +++ b/Assets/UserIcons/Question.svg.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Question.svg-97ee9585aee020fadc23beda4d744212.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/UserIcons/Question.svg" +dest_files=[ "res://.import/Question.svg-97ee9585aee020fadc23beda4d744212.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/UserIcons/Right.svg b/Assets/UserIcons/Right.svg new file mode 100644 index 0000000..55d2d62 --- /dev/null +++ b/Assets/UserIcons/Right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/Assets/UserIcons/Right.svg.import b/Assets/UserIcons/Right.svg.import new file mode 100644 index 0000000..ea6e578 --- /dev/null +++ b/Assets/UserIcons/Right.svg.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Right.svg-c6aaf6d9b069ac6def1e5993d5b9ab83.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/UserIcons/Right.svg" +dest_files=[ "res://.import/Right.svg-c6aaf6d9b069ac6def1e5993d5b9ab83.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/UserIcons/Simple-down.svg b/Assets/UserIcons/Simple-down.svg new file mode 100644 index 0000000..f846cbf --- /dev/null +++ b/Assets/UserIcons/Simple-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/Assets/UserIcons/Simple-down.svg.import b/Assets/UserIcons/Simple-down.svg.import new file mode 100644 index 0000000..651d4a9 --- /dev/null +++ b/Assets/UserIcons/Simple-down.svg.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Simple-down.svg-bf4b810308ad11a22581e57e298f9abc.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/UserIcons/Simple-down.svg" +dest_files=[ "res://.import/Simple-down.svg-bf4b810308ad11a22581e57e298f9abc.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/UserIcons/Simple-up.svg b/Assets/UserIcons/Simple-up.svg new file mode 100644 index 0000000..96d0ebb --- /dev/null +++ b/Assets/UserIcons/Simple-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/Assets/UserIcons/Simple-up.svg.import b/Assets/UserIcons/Simple-up.svg.import new file mode 100644 index 0000000..02e5faf --- /dev/null +++ b/Assets/UserIcons/Simple-up.svg.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Simple-up.svg-c3fca8a1d1733debab0b53803e9c9423.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/UserIcons/Simple-up.svg" +dest_files=[ "res://.import/Simple-up.svg-c3fca8a1d1733debab0b53803e9c9423.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/UserIcons/Up_right.svg b/Assets/UserIcons/Up_right.svg new file mode 100644 index 0000000..62e4c0f --- /dev/null +++ b/Assets/UserIcons/Up_right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/Assets/UserIcons/Up_right.svg.import b/Assets/UserIcons/Up_right.svg.import new file mode 100644 index 0000000..124658e --- /dev/null +++ b/Assets/UserIcons/Up_right.svg.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Up_right.svg-e94aa12fa27696caa7c8586181e9bfd5.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/UserIcons/Up_right.svg" +dest_files=[ "res://.import/Up_right.svg-e94aa12fa27696caa7c8586181e9bfd5.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Scenes/CommentGraphNode.tscn b/Scenes/CommentGraphNode.tscn new file mode 100644 index 0000000..72c36c7 --- /dev/null +++ b/Scenes/CommentGraphNode.tscn @@ -0,0 +1,112 @@ +[gd_scene load_steps=17 format=2] + +[ext_resource path="res://Scripts/CommentGraphNode.gd" type="Script" id=1] +[ext_resource path="res://Assets/Icons/Remove.svg" type="Texture" id=2] +[ext_resource path="res://Assets/Icons/Add.svg" type="Texture" id=3] +[ext_resource path="res://Assets/UserIcons/Up_right.svg" type="Texture" id=4] +[ext_resource path="res://Assets/UserIcons/Down_right.svg" type="Texture" id=5] +[ext_resource path="res://Assets/UserIcons/Right.svg" type="Texture" id=6] +[ext_resource path="res://Assets/UserIcons/Simple-up.svg" type="Texture" id=7] +[ext_resource path="res://Assets/UserIcons/Simple-down.svg" type="Texture" id=8] +[ext_resource path="res://Assets/UserIcons/Double-up.svg" type="Texture" id=9] +[ext_resource path="res://Assets/UserIcons/Double-right.svg" type="Texture" id=10] +[ext_resource path="res://Assets/UserIcons/Double-down.svg" type="Texture" id=11] +[ext_resource path="res://Assets/UserIcons/Disc.svg" type="Texture" id=12] +[ext_resource path="res://Assets/UserIcons/Check.svg" type="Texture" id=13] +[ext_resource path="res://Assets/UserIcons/Cross.svg" type="Texture" id=14] +[ext_resource path="res://Assets/UserIcons/Question.svg" type="Texture" id=15] +[ext_resource path="res://Assets/UserIcons/Exclamation.svg" type="Texture" id=16] + +[node name="CommentNode" type="GraphNode"] +margin_right = 231.0 +margin_bottom = 81.0 +mouse_filter = 2 +title = "Title" +show_close = true +comment = true +slot/0/left_enabled = false +slot/0/left_type = 0 +slot/0/left_color = Color( 1, 1, 1, 1 ) +slot/0/right_enabled = false +slot/0/right_type = 0 +slot/0/right_color = Color( 1, 1, 1, 1 ) +script = ExtResource( 1 ) + +[node name="VBoxContainer" type="VBoxContainer" parent="."] +margin_left = 16.0 +margin_top = 24.0 +margin_right = 215.0 +margin_bottom = 75.0 +size_flags_horizontal = 3 +size_flags_vertical = 3 + +[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer"] +margin_right = 199.0 +margin_bottom = 22.0 +size_flags_horizontal = 3 + +[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer/HBoxContainer"] +margin_right = 135.0 +margin_bottom = 22.0 +size_flags_horizontal = 3 + +[node name="IconButton1" type="OptionButton" parent="VBoxContainer/HBoxContainer/HBoxContainer"] +margin_right = 29.0 +margin_bottom = 22.0 +icon = ExtResource( 4 ) +flat = true +expand_icon = true +items = [ "", ExtResource( 4 ), false, 0, null, "", ExtResource( 6 ), false, 1, null, "", ExtResource( 5 ), false, 2, null, "", ExtResource( 9 ), false, 3, null, "", ExtResource( 10 ), false, 4, null, "", ExtResource( 11 ), false, 5, null, "", ExtResource( 13 ), false, 6, null, "", ExtResource( 15 ), false, 7, null, "", ExtResource( 16 ), false, 8, null, "", ExtResource( 14 ), false, 9, null, "", ExtResource( 12 ), false, 10, null, "", ExtResource( 7 ), false, 11, null, "", ExtResource( 8 ), false, 12, null ] +selected = 0 + +[node name="IconButton2" type="OptionButton" parent="VBoxContainer/HBoxContainer/HBoxContainer"] +margin_left = 33.0 +margin_right = 62.0 +margin_bottom = 22.0 +icon = ExtResource( 4 ) +flat = true +expand_icon = true +items = [ "", ExtResource( 4 ), false, 0, null, "", ExtResource( 6 ), false, 1, null, "", ExtResource( 5 ), false, 2, null, "", ExtResource( 9 ), false, 3, null, "", ExtResource( 10 ), false, 4, null, "", ExtResource( 11 ), false, 5, null, "", ExtResource( 13 ), false, 6, null, "", ExtResource( 15 ), false, 7, null, "", ExtResource( 16 ), false, 8, null, "", ExtResource( 14 ), false, 9, null, "", ExtResource( 12 ), false, 10, null, "", ExtResource( 7 ), false, 11, null, "", ExtResource( 8 ), false, 12, null ] +selected = 0 + +[node name="IconButton3" type="OptionButton" parent="VBoxContainer/HBoxContainer/HBoxContainer"] +margin_left = 66.0 +margin_right = 95.0 +margin_bottom = 22.0 +icon = ExtResource( 4 ) +flat = true +expand_icon = true +items = [ "", ExtResource( 4 ), false, 0, null, "", ExtResource( 6 ), false, 1, null, "", ExtResource( 5 ), false, 2, null, "", ExtResource( 9 ), false, 3, null, "", ExtResource( 10 ), false, 4, null, "", ExtResource( 11 ), false, 5, null, "", ExtResource( 13 ), false, 6, null, "", ExtResource( 15 ), false, 7, null, "", ExtResource( 16 ), false, 8, null, "", ExtResource( 14 ), false, 9, null, "", ExtResource( 12 ), false, 10, null, "", ExtResource( 7 ), false, 11, null, "", ExtResource( 8 ), false, 12, null ] +selected = 0 + +[node name="IconButton4" type="OptionButton" parent="VBoxContainer/HBoxContainer/HBoxContainer"] +margin_left = 99.0 +margin_right = 128.0 +margin_bottom = 22.0 +icon = ExtResource( 4 ) +flat = true +expand_icon = true +items = [ "", ExtResource( 4 ), false, 0, null, "", ExtResource( 6 ), false, 1, null, "", ExtResource( 5 ), false, 2, null, "", ExtResource( 9 ), false, 3, null, "", ExtResource( 10 ), false, 4, null, "", ExtResource( 11 ), false, 5, null, "", ExtResource( 13 ), false, 6, null, "", ExtResource( 15 ), false, 7, null, "", ExtResource( 16 ), false, 8, null, "", ExtResource( 14 ), false, 9, null, "", ExtResource( 12 ), false, 10, null, "", ExtResource( 7 ), false, 11, null, "", ExtResource( 8 ), false, 12, null ] +selected = 0 + +[node name="HBoxContainer2" type="HBoxContainer" parent="VBoxContainer/HBoxContainer"] +margin_left = 139.0 +margin_right = 199.0 +margin_bottom = 22.0 + +[node name="AddButton" type="Button" parent="VBoxContainer/HBoxContainer/HBoxContainer2"] +margin_right = 28.0 +margin_bottom = 22.0 +icon = ExtResource( 3 ) +flat = true + +[node name="SubButton" type="Button" parent="VBoxContainer/HBoxContainer/HBoxContainer2"] +margin_left = 32.0 +margin_right = 60.0 +margin_bottom = 22.0 +icon = ExtResource( 2 ) +flat = true + +[connection signal="close_request" from="." to="." method="_on_CommentNode_close_request"] +[connection signal="pressed" from="VBoxContainer/HBoxContainer/HBoxContainer2/AddButton" to="." method="_on_AddButton_pressed"] +[connection signal="pressed" from="VBoxContainer/HBoxContainer/HBoxContainer2/SubButton" to="." method="_on_SubButton_pressed"] diff --git a/Scenes/CommentRect.tscn b/Scenes/CommentRect.tscn new file mode 100644 index 0000000..b417408 --- /dev/null +++ b/Scenes/CommentRect.tscn @@ -0,0 +1,67 @@ +[gd_scene load_steps=5 format=2] + +[ext_resource path="res://Assets/Icons/Remove.svg" type="Texture" id=1] +[ext_resource path="res://Assets/Icons/Add.svg" type="Texture" id=2] +[ext_resource path="res://Assets/Icons/Close.svg" type="Texture" id=3] +[ext_resource path="res://Scripts/CommentRect.gd" type="Script" id=4] + +[node name="CommentRect" type="ColorRect"] +anchor_right = 1.0 +anchor_bottom = 1.0 +margin_right = -1180.0 +margin_bottom = -687.0 +color = Color( 0.333333, 0.333333, 0.333333, 0.564706 ) +script = ExtResource( 4 ) + +[node name="VBoxContainer" type="VBoxContainer" parent="."] +margin_left = 16.0 +margin_top = 24.0 +margin_right = 167.0 +margin_bottom = 201.0 +size_flags_horizontal = 3 +size_flags_vertical = 3 + +[node name="TitleBar" type="HBoxContainer" parent="VBoxContainer"] +margin_right = 151.0 +margin_bottom = 31.0 +size_flags_horizontal = 3 + +[node name="Label" type="Label" parent="VBoxContainer/TitleBar"] +margin_right = 119.0 +margin_bottom = 31.0 +size_flags_horizontal = 3 +text = "This is a multiline +commentary." +autowrap = true + +[node name="CloseButton" type="Button" parent="VBoxContainer/TitleBar"] +margin_left = 123.0 +margin_right = 151.0 +margin_bottom = 31.0 +icon = ExtResource( 3 ) +flat = true +align = 2 +icon_align = 2 + +[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer"] +margin_top = 35.0 +margin_right = 151.0 +margin_bottom = 57.0 +size_flags_horizontal = 3 + +[node name="AddButton" type="Button" parent="VBoxContainer/HBoxContainer"] +margin_right = 28.0 +margin_bottom = 22.0 +icon = ExtResource( 2 ) +flat = true + +[node name="SubButton" type="Button" parent="VBoxContainer/HBoxContainer"] +margin_left = 32.0 +margin_right = 60.0 +margin_bottom = 22.0 +icon = ExtResource( 1 ) +flat = true + +[connection signal="pressed" from="VBoxContainer/TitleBar/CloseButton" to="." method="_on_CloseButton_pressed"] +[connection signal="pressed" from="VBoxContainer/HBoxContainer/AddButton" to="." method="_on_AddButton_pressed"] +[connection signal="pressed" from="VBoxContainer/HBoxContainer/SubButton" to="." method="_on_SubButton_pressed"] diff --git a/Scenes/GraphEdit.tscn b/Scenes/GraphEdit.tscn index a4e7ba6..5c7937f 100644 --- a/Scenes/GraphEdit.tscn +++ b/Scenes/GraphEdit.tscn @@ -1,13 +1,16 @@ -[gd_scene load_steps=5 format=2] +[gd_scene load_steps=6 format=2] [ext_resource path="res://Scenes/DisplayDialog.tscn" type="PackedScene" id=1] [ext_resource path="res://Scripts/GraphEdit.gd" type="Script" id=2] -[ext_resource path="res://Assets/Icons/Play.svg" type="Texture" id=3] +[ext_resource path="res://Assets/Icons/PlayScene.svg" type="Texture" id=3] [ext_resource path="res://Assets/Icons/Add.svg" type="Texture" id=4] +[ext_resource path="res://Assets/Icons/VisualShaderNodeComment.svg" type="Texture" id=5] [node name="Graph" type="GraphEdit"] anchor_right = 1.0 anchor_bottom = 1.0 +custom_constants/port_grab_distance_vertical = 26 +custom_constants/port_grab_distance_horizontal = 30 right_disconnects = true use_snap = false zoom_min = 0.162 @@ -47,9 +50,18 @@ hint_tooltip = "Add a new frame" icon = ExtResource( 4 ) flat = true -[node name="PlayButton" type="Button" parent="CanvasLayer/HBoxContainer"] +[node name="CommentButton" type="Button" parent="CanvasLayer/HBoxContainer"] margin_left = 142.0 -margin_right = 170.0 +margin_right = 168.0 +margin_bottom = 24.0 +hint_tooltip = "Add a new frame" +disabled = true +icon = ExtResource( 5 ) +flat = true + +[node name="PlayButton" type="Button" parent="CanvasLayer/HBoxContainer"] +margin_left = 172.0 +margin_right = 200.0 margin_bottom = 24.0 hint_tooltip = "Play from selected frame" disabled = true @@ -123,6 +135,7 @@ filters = PoolStringArray( "*.res" ) [connection signal="paste_nodes_request" from="." to="." method="_on_GraphEdit_paste_nodes_request"] [connection signal="color_changed" from="CanvasLayer/HBoxContainer/ColorPicker" to="." method="_on_ColorPicker_color_changed"] [connection signal="pressed" from="CanvasLayer/HBoxContainer/AddButton" to="." method="_on_AddButton_pressed"] +[connection signal="pressed" from="CanvasLayer/HBoxContainer/CommentButton" to="." method="_on_CommentButton_pressed"] [connection signal="pressed" from="CanvasLayer/HBoxContainer/PlayButton" to="." method="_on_PlayButton_pressed"] [connection signal="pressed" from="CanvasLayer/HBoxContainer/DebugButton" to="." method="_on_DebugButton_pressed"] [connection signal="file_selected" from="OpenImgFileDialog" to="." method="_on_OpenImgFileDialog_file_selected"] diff --git a/Scenes/GraphNode.tscn b/Scenes/ImageGraphNode.tscn similarity index 88% rename from Scenes/GraphNode.tscn rename to Scenes/ImageGraphNode.tscn index 13262a1..3d4053b 100644 --- a/Scenes/GraphNode.tscn +++ b/Scenes/ImageGraphNode.tscn @@ -1,12 +1,12 @@ [gd_scene load_steps=9 format=2] -[ext_resource path="res://Scripts/GraphNode.gd" type="Script" id=1] -[ext_resource path="res://Assets/Icons/ImageTexture.svg" type="Texture" id=2] -[ext_resource path="res://Assets/Icons/Reload.svg" type="Texture" id=3] -[ext_resource path="res://Assets/Icons/VisualShaderPort.svg" type="Texture" id=4] -[ext_resource path="res://Assets/Icons/SoundFile.svg" type="Texture" id=5] -[ext_resource path="res://Resources/SelectedFrame.tres" type="StyleBox" id=6] -[ext_resource path="res://Resources/NormalFrame.tres" type="StyleBox" id=7] +[ext_resource path="res://Resources/SelectedFrame.tres" type="StyleBox" id=1] +[ext_resource path="res://Resources/NormalFrame.tres" type="StyleBox" id=2] +[ext_resource path="res://Scripts/ImageGraphNode.gd" type="Script" id=3] +[ext_resource path="res://Assets/Icons/ImageTexture.svg" type="Texture" id=4] +[ext_resource path="res://Assets/Icons/Reload.svg" type="Texture" id=5] +[ext_resource path="res://Assets/Icons/VisualShaderPort.svg" type="Texture" id=6] +[ext_resource path="res://Assets/Icons/SoundFile.svg" type="Texture" id=7] [ext_resource path="res://Assets/Icons/Remove.svg" type="Texture" id=8] [node name="GraphNode" type="GraphNode"] @@ -14,9 +14,10 @@ margin_right = 232.0 margin_bottom = 197.0 rect_min_size = Vector2( 100, 75 ) custom_colors/resizer_color = Color( 1, 1, 1, 1 ) -custom_icons/port = ExtResource( 4 ) -custom_styles/frame = ExtResource( 7 ) -custom_styles/selectedframe = ExtResource( 6 ) +custom_constants/port_offset = -5 +custom_icons/port = ExtResource( 6 ) +custom_styles/frame = ExtResource( 2 ) +custom_styles/selectedframe = ExtResource( 1 ) title = "Title" show_close = true resizable = true @@ -26,7 +27,7 @@ slot/0/left_color = Color( 0, 0.745098, 0, 1 ) slot/0/right_enabled = true slot/0/right_type = 0 slot/0/right_color = Color( 0, 0.745098, 0, 1 ) -script = ExtResource( 1 ) +script = ExtResource( 3 ) [node name="VBoxContainer" type="VBoxContainer" parent="."] margin_left = 12.0 @@ -98,14 +99,16 @@ margin_left = 145.0 margin_right = 173.0 margin_bottom = 24.0 hint_tooltip = "Load image from file" -icon = ExtResource( 2 ) +icon = ExtResource( 4 ) +flat = true [node name="SoundButton" type="Button" parent="VBoxContainer/HBoxContainer"] margin_left = 177.0 margin_right = 205.0 margin_bottom = 24.0 hint_tooltip = "Load sound from file" -icon = ExtResource( 5 ) +icon = ExtResource( 7 ) +flat = true [node name="DelSoundButton" type="Button" parent="VBoxContainer/HBoxContainer"] margin_left = 209.0 @@ -113,16 +116,19 @@ margin_right = 237.0 margin_bottom = 24.0 hint_tooltip = "Remove sound" icon = ExtResource( 8 ) +flat = true [node name="ReloadButton" type="Button" parent="VBoxContainer/HBoxContainer"] margin_left = 241.0 margin_right = 269.0 margin_bottom = 24.0 hint_tooltip = "Reload image and sound" -icon = ExtResource( 3 ) +icon = ExtResource( 5 ) +flat = true icon_align = 1 [connection signal="close_request" from="." to="." method="_on_GraphNode_close_request"] +[connection signal="offset_changed" from="." to="." method="_on_GraphNode_offset_changed"] [connection signal="resize_request" from="." to="." method="_on_GraphNode_resize_request"] [connection signal="focus_entered" from="VBoxContainer/Control/Thumbnail" to="." method="_on_TextureRect_focus_entered"] [connection signal="gui_input" from="VBoxContainer/Control/Thumbnail" to="." method="_on_TextureRect_gui_input"] diff --git a/Scripts/CommentGraphNode.gd b/Scripts/CommentGraphNode.gd new file mode 100644 index 0000000..f23f6e1 --- /dev/null +++ b/Scripts/CommentGraphNode.gd @@ -0,0 +1,90 @@ +extends GraphNode +class_name CommentGraphNode + + +var children: = [] +var old_offset: Vector2 + + +func _ready(): + old_offset = offset + + +func contains_image_node(node: ImageGraphNode): + return children.has(node) + + +func add_image_node(node: ImageGraphNode, auto_update: bool): + if not children.has(node): + children.push_back(node) + if auto_update: + update_size() + print("children: ", children) + #var old_position = node.global_position +# get_parent().remove_child(node) +# add_child(node) + #node.set_owner(self) + #node.global_position = old_position + + +func remove_image_node(node: ImageGraphNode, auto_update: bool): + if children.has(node): + children.erase(node) + if auto_update: + update_size() + print("children: ", children) + + +func update_size(): + if children.empty(): + return + var rect: Rect2 + var initialized: = false + for node in children: + if initialized: + var node_rect = Rect2(node.offset, node.rect_size) # graph space + rect = rect.merge(node_rect) + else: + rect = Rect2(node.offset, node.rect_size) # graph space + initialized = true + + set_offset(rect.position - Vector2(24.0, 64.0)) # graph space + set_size(rect.size + Vector2(24.0 + 24.0, 24.0 + 64.0)) # graph space + + +func _on_CommentNode_close_request(): + var graph = get_parent() + assert(graph is GraphEdit) + assert(graph.has_method("delete_comment_node")) + graph.delete_comment_node(self) + + +func _on_AddButton_pressed(): + var graph = get_parent() + assert(graph is GraphEdit) + assert(graph.has_method("add_selected_nodes_to_comment_node")) + graph.add_selected_nodes_to_comment_node(self) + + +func _on_SubButton_pressed(): + var graph = get_parent() + assert(graph is GraphEdit) + assert(graph.has_method("remove_selected_nodes_from_comment_node")) + graph.remove_selected_nodes_from_comment_node(self) + + +func _on_CommentNode_resize_request(new_size): + var graph = get_parent() + assert(graph is GraphEdit) + if graph.is_using_snap(): + rect_size = graph.snap_position(new_size) + else: + rect_size = new_size + + +func _on_CommentNode_offset_changed(): + var diff = offset - old_offset + for node in children: + assert(node is ImageGraphNode) + node.offset += diff + old_offset = offset diff --git a/Scripts/CommentRect.gd b/Scripts/CommentRect.gd new file mode 100644 index 0000000..4c1486a --- /dev/null +++ b/Scripts/CommentRect.gd @@ -0,0 +1,69 @@ +extends ColorRect +class_name CommentRect + + +var children: = [] +var old_rect: Rect2 + + +func _ready(): + old_rect = get_rect() + + +func contains_image_node(node: ImageGraphNode): + return children.has(node) + + +func add_image_node(node: ImageGraphNode, auto_update: bool): + if not children.has(node): + children.push_back(node) + if auto_update: + update_size() + print("children: ", children) + + +func remove_image_node(node: ImageGraphNode, auto_update: bool): + if children.has(node): + children.erase(node) + if auto_update: + update_size() + print("children: ", children) + + +func update_size(): + if children.empty(): + return + var rect: Rect2 + var initialized: = false + for node in children: + if initialized: + rect = rect.merge(node.get_rect()) + else: + rect = node.get_rect() + initialized = true + rect = rect.grow_individual (24.0, 64.0, 24.0, 24.0) + if rect_position != rect.position: + rect_position = rect.position + if rect_size != rect.size: + rect_size = rect.size + + +func _on_AddButton_pressed(): + var graph = get_parent() + assert(graph is GraphEdit) + assert(graph.has_method("add_selected_nodes_to_comment_node")) + graph.add_selected_nodes_to_comment_node(self) + + +func _on_SubButton_pressed(): + var graph = get_parent() + assert(graph is GraphEdit) + assert(graph.has_method("remove_selected_nodes_from_comment_node")) + graph.remove_selected_nodes_from_comment_node(self) + + +func _on_CloseButton_pressed(): + var graph = get_parent() + assert(graph is GraphEdit) + assert(graph.has_method("delete_comment_node")) + graph.delete_comment_node(self) diff --git a/Scripts/DisplayDialog.gd b/Scripts/DisplayDialog.gd index 7122294..d299869 100644 --- a/Scripts/DisplayDialog.gd +++ b/Scripts/DisplayDialog.gd @@ -13,7 +13,7 @@ var node_chain_index: int = -1 var state: int = STOPPED var is_looping = false -onready var graph_node = preload("res://Scenes/GraphNode.tscn") +onready var graph_node = preload("res://Scenes/ImageGraphNode.tscn") onready var display_rect: = $VBoxContainer/Control/TextureRect onready var subtitle: = $VBoxContainer/Control/Subtitle onready var subedit: = $VBoxContainer/HBoxContainer/SubtitleEdit diff --git a/Scripts/GraphEdit.gd b/Scripts/GraphEdit.gd index a93773a..95a97a4 100644 --- a/Scripts/GraphEdit.gd +++ b/Scripts/GraphEdit.gd @@ -23,7 +23,9 @@ var dragged_nodes_initial_offsets_in_graph_space: Array = [] var old_global_mouse_position: Vector2 var nodes_were_dragged: bool = false -onready var graph_node = preload("res://Scenes/GraphNode.tscn") +onready var image_graph_node = preload("res://Scenes/ImageGraphNode.tscn") +onready var comment_graph_node = preload("res://Scenes/CommentGraphNode.tscn") +#onready var comment = preload("res://Scenes/CommentRect.tscn") onready var display_dlg: = $DisplayDialog onready var image_dlg: = $OpenImgFileDialog onready var sound_dlg: = $OpenSndFileDialog @@ -32,6 +34,7 @@ onready var save_dlg: = $SaveFileDialog onready var grid_num_cols: = $CanvasLayer/HBoxContainer/GridColsSpinBox onready var colorpicker: = $CanvasLayer/HBoxContainer/ColorPicker onready var add_button: = $CanvasLayer/HBoxContainer/AddButton +onready var comment_button: = $CanvasLayer/HBoxContainer/CommentButton onready var play_button: = $CanvasLayer/HBoxContainer/PlayButton @@ -110,6 +113,7 @@ func update_main_window_title(): func update_buttons(): + comment_button.disabled = selected_nodes.size() == 0 play_button.disabled = selected_nodes.size() != 1 @@ -258,9 +262,9 @@ func set_selected_nodes_to_custom_size(): node.rect_size = custom_node_size -######### -## NEW ## -######### +############ +## CREATE ## +############ func snap_position(pos: Vector2) -> Vector2: var snap = get_snap() @@ -288,10 +292,10 @@ func get_mouse_position_in_graph_space() -> Vector2: # Ajoute un nouveau node au graph. Son centre est positionné à l'offset donné. -func add_new_node(ofs: Vector2, select_exclusive: bool = true, autoload: bool = true) -> ImageGraphNode: - var node = graph_node.instance() +func add_new_image_node(ofs: Vector2, select_exclusive: bool = true, autoload: bool = true) -> ImageGraphNode: + var node = image_graph_node.instance() + add_child(node, true) # /!\ before set_offset. node.set_offset(ofs - node.rect_size / 2) - add_child(node, true) node.set_bg_color(node_bg_color) if select_exclusive: select_node_ex(node) @@ -305,18 +309,19 @@ func add_new_node(ofs: Vector2, select_exclusive: bool = true, autoload: bool = # Ajoute un nouveau node au graph quand l'utilisateur appuie sur le bouton 'Add'. func _on_AddButton_pressed(): - add_new_node(get_mouse_position_in_graph_space() + Vector2(200, 200)) + add_new_image_node(get_mouse_position_in_graph_space() + Vector2(200, 200)) # Ajoute un nouveau node au graph quand l'utilisateur double-clique sur le graph. func _on_Graph_gui_input(event): if event is InputEventMouseButton and event.doubleclick: - add_new_node(get_mouse_position_in_graph_space()) + add_new_image_node(get_mouse_position_in_graph_space()) # Drag and drop de fichiers. func _on_files_dropped(files, screen): - yield(get_tree(),"idle_frame") # hack to get valid mouse position + yield(get_tree(),"idle_frame") # hack to get a valid mouse position + files.sort() deselect_all_nodes() var ofs: = get_mouse_position_in_graph_space() var line_start: = ofs.x @@ -326,7 +331,7 @@ func _on_files_dropped(files, screen): for path in files: var ext: String = path.get_extension() if IMG_EXTENSIONS.has(ext): - var new_node: ImageGraphNode = add_new_node(ofs, false, false) + var new_node: ImageGraphNode = add_new_image_node(ofs, false, false) new_node.load_thumbnail_from_file(path) col += 1 @@ -592,7 +597,7 @@ func _on_GraphEdit_connection_to_empty(from: String, from_slot: int, release_pos assert(from_node) # Crée un nouveau node et le connecte. - var new_node = add_new_node(convert_viewport_ofs_to_graph_ofs(release_position)) + var new_node = add_new_image_node(convert_viewport_ofs_to_graph_ofs(release_position)) assert(new_node) connect_node(from, from_slot, new_node.name, from_slot) @@ -611,7 +616,7 @@ func _on_GraphEdit_connection_from_empty(to: String, to_slot: int, release_posit assert(to_node) # Crée un nouveau node et le connecte. - var new_node: ImageGraphNode = add_new_node(convert_viewport_ofs_to_graph_ofs(release_position)) + var new_node: ImageGraphNode = add_new_image_node(convert_viewport_ofs_to_graph_ofs(release_position)) assert(new_node) connect_node(new_node.name, to_slot, to, to_slot) @@ -714,19 +719,64 @@ func _on_GraphEdit_duplicate_nodes_request(): ## DELETE ## ############ -func delete_node(node: ImageGraphNode): +func delete_image_node(node: ImageGraphNode): assert(node) remove_node_connections(node) deselect_node(node) node.queue_free() +func delete_comment_node(node: CommentGraphNode): + assert(node) + node.queue_free() + + func _on_GraphEdit_delete_nodes_request(node_names: Array): for node_name in node_names: var node = get_node(node_name) assert(node) - deselect_node(node) - delete_node(node) + if node is ImageGraphNode: + deselect_node(node) + delete_image_node(node) + elif node is CommentGraphNode: + delete_comment_node(node) + + +############# +## COMMENT ## +############# + +# Ajoute un nouveau node au graph. Son centre est positionné à l'offset donné. +func add_new_comment_node() -> CommentGraphNode: + var comment_node = comment_graph_node.instance() + add_child(comment_node, true) + add_selected_nodes_to_comment_node(comment_node) + return comment_node + + +func add_selected_nodes_to_comment_node(comment_node: CommentGraphNode): + for image_node in selected_nodes: + if image_node is ImageGraphNode: + comment_node.add_image_node(image_node, false) + comment_node.update_size() + + +func remove_selected_nodes_from_comment_node(comment_node: CommentGraphNode): + for image_node in selected_nodes: + if image_node is ImageGraphNode: + comment_node.remove_image_node(image_node, false) + comment_node.update_size() + + +func node_offset_changed(node: ImageGraphNode): + for comment_node in get_children(): + if not comment_node is CommentGraphNode or not comment_node.contains_image_node(node): + continue + comment_node.update_size() + + +func _on_CommentButton_pressed(): + add_new_comment_node() ############### @@ -758,7 +808,7 @@ func init_graph(graph_data: GraphData): # Nodes for node_data in graph_data.nodes: - var new_node: ImageGraphNode = graph_node.instance() + var new_node: ImageGraphNode = image_graph_node.instance() new_node.set_name(node_data.name) new_node.rect_size = node_data.rect_size add_child(new_node, true) # /!\ before assigning data diff --git a/Scripts/GraphNode.gd b/Scripts/ImageGraphNode.gd similarity index 93% rename from Scripts/GraphNode.gd rename to Scripts/ImageGraphNode.gd index e4d63e9..5805303 100644 --- a/Scripts/GraphNode.gd +++ b/Scripts/ImageGraphNode.gd @@ -77,8 +77,8 @@ func _on_GraphNode_resize_request(new_size): func _on_GraphNode_close_request(): var graph = get_parent() assert(graph is GraphEdit) - assert(graph.has_method("delete_node")) - graph.delete_node(self) + assert(graph.has_method("delete_image_node")) + graph.delete_image_node(self) func _on_TextureRect_gui_input(event): @@ -155,8 +155,8 @@ func load_sound_from_file(path: String): var ext: = path.get_extension() match ext: - "wav": - sound = AudioStreamSample.new() +# "wav": +# sound = AudioStreamSample.new() "mp3": sound = AudioStreamMP3.new() "ogg": @@ -199,3 +199,10 @@ func reload_image_file(): func reload_sound_file(): get_parent().reload_node_sound(self) + + +func _on_GraphNode_offset_changed(): + var graph = get_parent() + assert(graph is GraphEdit) + assert(graph.has_method("node_offset_changed")) # signal + graph.node_offset_changed(self) diff --git a/project.godot b/project.godot index d5dfcf4..09d1e10 100644 --- a/project.godot +++ b/project.godot @@ -9,6 +9,16 @@ config_version=4 _global_script_classes=[ { +"base": "GraphNode", +"class": "CommentGraphNode", +"language": "GDScript", +"path": "res://Scripts/CommentGraphNode.gd" +}, { +"base": "ColorRect", +"class": "CommentRect", +"language": "GDScript", +"path": "res://Scripts/CommentRect.gd" +}, { "base": "WindowDialog", "class": "DisplayDialog", "language": "GDScript", @@ -32,9 +42,11 @@ _global_script_classes=[ { "base": "GraphNode", "class": "ImageGraphNode", "language": "GDScript", -"path": "res://Scripts/GraphNode.gd" +"path": "res://Scripts/ImageGraphNode.gd" } ] _global_script_class_icons={ +"CommentGraphNode": "", +"CommentRect": "", "DisplayDialog": "", "GraphData": "", "GraphNodeData": "",