Compare commits

..

565 Commits

Author SHA1 Message Date
Katharina Ziolkowski 1120f17202 shader adjustments to account for modulate value 2026-02-01 14:00:21 +01:00
kziolkowski 2c8a024528 Merge pull request 'feature/build_0_7' (#49) from feature/build_0_7 into develop
Reviewed-on: #49
Reviewed-by: Jonathan <cblech@ymail.com>
2026-01-27 13:04:21 +01:00
kziolkowski 76eb408a40 Merge branch 'develop' into feature/build_0_7 2026-01-27 13:01:34 +01:00
Katharina Ziolkowski ff143f07e7 deleted unused autosave file 2026-01-27 13:00:38 +01:00
Jonathan b50ca5b919 Merge pull request 'einfügen von Gesichtsausdrücken für Vesna' (#46) from Vesna_Gesichtsausdrücke_einfügen_ into develop
Reviewed-on: #46
Reviewed-by: Jonathan <cblech@ymail.com>
2026-01-13 23:43:46 +01:00
Jonathan 9032272599 Merge pull request 'BlobFighter TargetSelection ColliderShape2D Transform angepasst' (#42) from Enemy_selection_overlap into develop
Reviewed-on: #42
Reviewed-by: Jonathan <cblech@ymail.com>
2025-12-18 13:06:03 +01:00
jlink a2ef3bfaf0 Window angepasst 2025-12-18 13:02:32 +01:00
jlink 1ab1071246 HoverIndicator off 2025-12-17 15:29:58 +01:00
kziolkowski b0ee8c4c58 fixed path strings in scene transitions and added disclaimer and credits back into the flow 2025-12-17 01:07:39 +01:00
kziolkowski 522fdfa365 Added fightworld background and cat dialogue 2025-12-17 00:40:43 +01:00
kziolkowski 4f6c5ab9c1 fixed some layering issues in beetroot scene and added a mock convo with the domovoi 2025-12-17 00:15:42 +01:00
kziolkowski 11e24e249e Fixed Field outline not disappearing when switching tools 2025-12-16 23:29:48 +01:00
kziolkowski f3080df4b7 moved fence door collision shape up to reduce unwanted triggering 2025-12-16 23:13:38 +01:00
kziolkowski f6e83e7fef Added event handlers in Fieldbehaviour to react to watering can state changes 2025-12-16 23:13:09 +01:00
kziolkowski 3bdc8cd03f Deactivated harvestable plant on spawn 2025-12-16 23:06:58 +01:00
kziolkowski f862827d98 Removed Print statements 2025-12-16 23:06:41 +01:00
kziolkowski a401cbe5b9 🐛 fixed field activator self-deactivating on load bug 2025-12-16 22:53:22 +01:00
kziolkowski 48660b167c Merge branch 'feature/bugfixes_polish_II' into feature/build_0_7
# Conflicts:
#	scenes/scene_farm_outside_2d.tscn
2025-12-16 21:59:04 +01:00
Jonathan e5b2b8b8ab Merge pull request 'Connect farming and fighting by making them codependent' (#44) from feature/farm_fight_loop into develop
Reviewed-on: #44
2025-12-16 20:44:26 +01:00
Jonathan 2fa8aa9fbc Merge pull request 'Vesna resets to bed after death' (#47) from Vesna_resets_to_bed_after_dead into develop
Reviewed-on: #47
Reviewed-by: Jonathan <cblech@ymail.com>
2025-12-16 19:37:29 +01:00
Jonathan 6deb6e29fd Merge pull request 'Made attack selection only select alive enemies' (#45) from bug/attack_dead_enemy into develop
Reviewed-on: #45
Reviewed-by: kziolkowski <katharina.ziolkowski@gmail.com>
2025-12-16 19:30:33 +01:00
Jonathan edc133749f Merge pull request 'Randomized who starts the fight' (#41) from randomise_fight_start into develop
Reviewed-on: #41
Reviewed-by: kziolkowski <katharina.ziolkowski@gmail.com>
2025-12-16 19:28:37 +01:00
jonathan 5f75bde317 💄 Made heal button show how many beats are left 2025-12-16 19:24:20 +01:00
jonathan 7310bfbf6e Added flying beet to the ui when used 2025-12-16 19:09:03 +01:00
jonathan fef8380a57 When beetroot is in inventory the player can heal 2025-12-16 19:09:03 +01:00
jonathan f42c2c86b1 Defeated enemygroups now drop a beet_seed 2025-12-16 19:09:03 +01:00
kziolkowski f1a2e6166b 🐛 fixed field setup in beet scene 2025-12-16 18:09:51 +01:00
kziolkowski c0111e4c17 🐛 fixed rake triggering field interaction + watering can interaction 2025-12-16 16:43:46 +01:00
jlink 2ed9dbbc52 Vesna resets to bed after death 2025-12-16 15:34:52 +01:00
kziolkowski 4f660c4af8 🐛 fixed rake still activating field outlines bug 2025-12-16 15:11:32 +01:00
kziolkowski 13fcf059e9 Added trash object savestate 2025-12-16 15:03:27 +01:00
kziolkowski 7f58aeae76 removed GD.Prints 2025-12-16 14:33:54 +01:00
jlink 3456340bb7 einfügen von Gesichtsausdrücken für Vesna 2025-12-16 14:30:23 +01:00
kziolkowski 30750d2e3c ♻️ removed planted state from Fieldstate because it didn't make any sense. 2025-12-16 14:27:12 +01:00
kziolkowski 950731b225 🐛 Fixed ObjectNotDisposedException on Well in beetroot scene 2025-12-16 13:46:28 +01:00
kziolkowski feb591f56a ♻️ modified changed path in start scene 2025-12-16 13:46:07 +01:00
kziolkowski aac0992590 ♻️ scene name refactoring part two: fixing scene transition paths in scenes 2025-12-16 13:34:32 +01:00
kziolkowski 21cf2d1a6a ♻️ Renamed scenes 2025-12-16 13:17:39 +01:00
kziolkowski 3f5cfed477 removed test scene 2025-12-16 13:14:46 +01:00
kziolkowski 64c15c2e63 removed print statements 2025-12-16 13:14:25 +01:00
kziolkowski a98c842ee0 🐛 Fixed field interaction bug 2025-12-16 13:04:40 +01:00
kziolkowski abed751d29 🚧 WIP trying to make fields have outlines again 2025-12-15 22:45:02 +01:00
kziolkowski ce113e16da 🐛 planting seeds works again 2025-12-15 21:33:04 +01:00
kziolkowski c55e527bf4 Merge branch 'develop' into feature/bugfixes_polish_II 2025-12-15 20:41:44 +01:00
kziolkowski c509a52001 🚧 Basic interaction works now too 2025-12-12 13:49:16 +01:00
kziolkowski 9e0e87ef17 🚧 WIP detection works now 2025-12-12 13:46:32 +01:00
kziolkowski 7ffbb8e68d pulled ceiling lower in kitchen scene 2025-12-12 10:34:52 +01:00
jonathan 6375383373 🐛Made attack selection only select alive enemies 2025-12-11 18:49:51 +01:00
Jonathan b810ea1d9f Merge pull request 'Kampf Tooltip wird ausgeblendet' (#43) from Kampf_Tooltip into develop
Reviewed-on: #43
Reviewed-by: Jonathan <cblech@ymail.com>
2025-12-11 17:29:54 +01:00
kziolkowski b232cb31c3 🚧 interaction kinda sorta works now, still needs tweaking 2025-12-10 16:57:39 +01:00
kziolkowski a6260efc07 Merge branch 'develop' into feature/bugfixes_polish_II 2025-12-10 16:24:18 +01:00
kziolkowski 3d19509826 Merge pull request 'feature/art_update' (#40) from feature/art_update into develop
Reviewed-on: #40
Reviewed-by: Jonathan <cblech@ymail.com>
2025-12-10 16:23:41 +01:00
kziolkowski 113dd0820f Merge branch 'develop' into feature/art_update 2025-12-10 16:23:04 +01:00
kziolkowski 7e148cd9fe 🐛 fixed Ysorting issues in fightworld 2025-12-10 16:21:48 +01:00
kziolkowski 59489e4a17 Made common room into hub area and ajdusted Yeli dialogue 2025-12-10 16:02:38 +01:00
jlink fc00559483 Kampf Tooltip wird ausgeblendet 2025-12-10 15:53:55 +01:00
kziolkowski 982178d89a 🐛 fixed sunflower parallaxing to *perfection* 2025-12-10 15:34:45 +01:00
jlink 09f55d3aa7 BlobFighter TargetSelection ColliderShape2D Transform angepasst 2025-12-10 15:29:56 +01:00
kziolkowski c89685c936 🐛 fixed colliders in kitchen 2025-12-10 15:15:01 +01:00
kziolkowski 79108fbe15 🐛 fixed parallax problems 2025-12-10 15:12:43 +01:00
kziolkowski 9499c27444 🚧 WIP: trying to rework the detection system (it fails) 2025-12-09 17:51:00 +01:00
Jonathan 0434667c22 Merge pull request 'feature/bugfixes_And_Polish' (#39) from feature/bugfixes_And_Polish into develop
Reviewed-on: #39
Reviewed-by: Jonathan <cblech@ymail.com>
2025-12-09 15:20:36 +01:00
jonathan a736adaafb Randomized who starts the fight 2025-12-09 15:07:50 +01:00
kziolkowski bef54420e4 darkened fightworld room to make it look more like night 2025-12-07 10:54:54 +01:00
kziolkowski 9267278ce8 tried and failed at fixing all layering issues in beet scene 2025-12-07 10:43:41 +01:00
kziolkowski 9ba83dfddd Made stove interactable 2025-12-07 10:26:20 +01:00
kziolkowski 7c5ba2d6bb Added kitchen room 2025-12-07 10:22:02 +01:00
kziolkowski 0c5fc26d2f 🍱 changed forest background in first farming scene 2025-12-07 09:18:55 +01:00
kziolkowski e51e0a24d2 🐛 fixed dialogic bugs and moved trash items out of the way 2025-12-06 21:46:54 +01:00
kziolkowski 7bb523f9e7 🐛 harvested plants don't come back on scene reload 2025-12-06 20:47:56 +01:00
kziolkowski a3651d6268 deleted unused code 2025-12-06 20:40:47 +01:00
kziolkowski 0892a13e66 🐛 fixed beet harvesting 2025-12-06 20:36:22 +01:00
kziolkowski 61caa6eea6 Merge branch 'refs/heads/develop' into feature/bugfixes_And_Polish 2025-12-06 19:59:31 +01:00
kziolkowski 2ec693eed2 Merge pull request 'Added visual feedback when hitting a region in the minigame' (#37) from minigame_hit_feedback into develop
Reviewed-on: #37
Reviewed-by: kziolkowski <katharina.ziolkowski@gmail.com>
2025-12-06 19:54:11 +01:00
kziolkowski b7d1f9d8d5 Merge branch 'develop' into minigame_hit_feedback 2025-12-06 19:54:05 +01:00
kziolkowski 12bf632932 Merge pull request 'Added randomnes into attack minigame' (#36) from minigame_variation into develop
Reviewed-on: #36
Reviewed-by: kziolkowski <katharina.ziolkowski@gmail.com>
2025-12-06 19:53:49 +01:00
kziolkowski 0d985e5bf6 Merge branch 'develop' into minigame_variation 2025-12-06 19:53:44 +01:00
kziolkowski e86b3e81dd Merge pull request 'fighting minigame has no more Overlap with Vesna' (#38) from fighting_minigame_fix_overlap_with_Vesna into develop
Reviewed-on: #38
Reviewed-by: kziolkowski <katharina.ziolkowski@gmail.com>
2025-12-06 19:46:23 +01:00
jlink 14a73daa75 fighting minigame has no more Overlap with Vesna 2025-12-06 12:15:31 +01:00
kziolkowski 996470f5e6 🐛 fixed beets double spawning bug 2025-12-04 23:45:35 +01:00
kziolkowski 1dd4a694d0 Merge pull request 'feature/day_and_night' (#34) from feature/day_and_night into develop
Reviewed-on: #34
2025-12-04 22:34:17 +01:00
kziolkowski 9b8933e698 ♻️ removed no longer used method 2025-12-04 22:33:45 +01:00
kziolkowski 9f4cda0e6d ♻️ Replaced _ready mit _entertree (while deferring) 2025-12-04 22:22:40 +01:00
kziolkowski 1c865730a3 🚚 renamed directory 2025-12-04 22:05:33 +01:00
jonathan aa4f1c55b5 Added visual feedback when hitting a region in the minigame 2025-12-04 21:18:47 +01:00
jonathan aad6c44567 Added randomnes into attack minigame 2025-12-04 18:00:20 +01:00
jlink 8e9359d6f8 Merge pull request 'fight log no longer visible and door interactable' (#35) from remove_fightlog into develop
Reviewed-on: #35
2025-12-04 17:39:10 +01:00
jlink 7696271727 fight log no longer visible and door interactable 2025-12-04 17:31:31 +01:00
kziolkowski 229dd04bc1 Made bed interaction count up the days and verified that you can now play a full loop 2025-12-03 18:55:45 +01:00
kziolkowski 8407ce4c1f Added Tab button mapping to inventory and fixed label descriptor 2025-12-03 18:18:54 +01:00
kziolkowski b9a52dadcc fields can now seperate "today" from any other day 2025-12-03 17:56:45 +01:00
kziolkowski 0ecae5a4d9 watering can fillstate is saving and loading 2025-12-03 17:04:38 +01:00
kziolkowski c288af296c made plants only grow when watered 2025-12-02 17:44:44 +01:00
kziolkowski e65330786e 🐛 fixed dayplanted confusion on plants 2025-12-02 15:45:44 +01:00
kziolkowski c7a4aea70b Starting a new game resets the inventory now 2025-12-02 12:08:19 +01:00
kziolkowski b6caf4dbed 🐛 Fixed ObjectDisposedException Errors on plant/field and InventorySlot 2025-12-02 11:42:48 +01:00
kziolkowski 51a145a994 🚚 renamed player prefab to Vesna 2025-12-02 11:41:48 +01:00
kziolkowski 41b30a4274 🚧 days are counted, plants know which day it is, but harvestables are still broken 2025-11-28 20:25:47 +01:00
kziolkowski a1fb71119f 🚧 WIP binding the plant growth to the day count in the savefile 2025-11-26 20:12:27 +01:00
kziolkowski 67d5b67c21 💄 Added new game button that resets the savegame (also did some layouting) 2025-11-26 18:52:33 +01:00
kziolkowski 684131f495 Make SaveableVariableNodes and a simple cheat to count up days 2025-11-26 18:00:45 +01:00
kziolkowski f32033cb5f Merge pull request 'Made the fight world completable' (#33) from feature/night_to_day into develop
Reviewed-on: #33
2025-11-26 15:11:13 +01:00
kziolkowski 1ad463ccb0 🔥 removed unused code 2025-11-26 14:43:55 +01:00
kziolkowski 451ea82706 Merge pull request 'feature/save_and_loaaaaaad' (#32) from feature/save_and_loaaaaaad into develop
Reviewed-on: #32
2025-11-26 14:41:29 +01:00
jonathan 3f4dfccbc6 🐛Make the FightWorld reset when sleeping in the bed 2025-11-25 18:43:48 +01:00
jonathan 3c370e30a0 Added end of night scene 2025-11-25 18:07:21 +01:00
jonathan 073a74bb22 🚸Rebalanded fight to make it more likely to win 2025-11-25 17:32:27 +01:00
kziolkowski 75e4bdd7fd ♻️ removed Print statements 2025-11-25 17:20:58 +01:00
kziolkowski f37f7c7ceb added saving and loading support to collectable inventory items 2025-11-25 17:14:30 +01:00
kziolkowski 70383fc16e Implemented load check for unique inventory items 2025-11-25 17:00:50 +01:00
kziolkowski 88f3c90eec ♻️ inventory works 2025-11-25 16:13:17 +01:00
kziolkowski 9d818e5079 ♻️ refactored field code to work with the new id system 2025-11-25 15:29:36 +01:00
kziolkowski e9cd4ce276 ♻️ reworked and debugged the SaveSystem. Removed unnecessary scene reference. 2025-11-25 14:39:31 +01:00
kziolkowski 638ebaff46 📝 Added documentation 2025-11-25 13:46:46 +01:00
kziolkowski b4013b1ff2 :feature: made GetComponent nullable in NodeExtension 2025-11-25 13:34:22 +01:00
kziolkowski c695115a4a :feature: implemented saving and loading for ducks, 🔥 removed save implementation from interactionArea 2025-11-25 13:33:53 +01:00
kziolkowski c68727aebe 🚧 intermediate state with homework 2025-11-23 22:50:32 +01:00
kziolkowski bee6249c6f 🚧 implemented interaction area loading 2025-11-23 22:25:59 +01:00
kziolkowski fda2b95b38 Savesystem rework 2025-11-23 21:02:40 +01:00
kziolkowski 4bbaab1a2a Created ISaveable interface and made existing saveable classes inherit from it. 2025-11-23 20:10:42 +01:00
kziolkowski 4ed6f4e7d9 Reworked existing save system for user data: Made path steam-compatible, added Versioning and try/catch to save 2025-11-21 21:04:37 +01:00
kziolkowski ce29711614 ❇️ Added Settings classes to save and load local configurations 2025-11-21 20:33:52 +01:00
kziolkowski 2947011a1a working intermediate state of the save system 2025-11-21 17:27:46 +01:00
kziolkowski 2a4425b9db Added Save and load support to the inventory 2025-11-19 15:18:33 +01:00
kziolkowski 72079044bd 🚧 WIP implementing save and load for the inventory 2025-11-18 18:30:17 +01:00
Jonathan b205e45096 Merge pull request 'feature/farming_bugfixes_and_magic_word' (#30) from feature/farming_bugfixes_and_magic_word into develop
Reviewed-on: #30
2025-11-18 17:25:59 +01:00
kziolkowski d17e58bcd3 🐛 removed stub code and unused signal from FarmingControls2D 2025-11-18 17:17:42 +01:00
kziolkowski 02cbc761bc reverted changed start scene in project godot 2025-11-18 16:41:55 +01:00
Jonathan fb6a42a874 Merge pull request 'Added damage fly number' (#29) from feature/damage_feedback into develop
Reviewed-on: #29
2025-11-18 16:07:32 +01:00
Jonathan 4bd433b1b0 Merge pull request 'Import changes lol' (#31) from feature/import_changes into develop
Reviewed-on: #31
2025-11-18 16:07:00 +01:00
kziolkowski c02a2d1383 Import changes lol 2025-11-18 15:59:51 +01:00
kziolkowski c5f8b157ad 🐛 changed savegame location to user-space instead of project-space 2025-11-18 15:55:31 +01:00
kziolkowski 093546f3e4 Merge branch 'develop' into feature/farming_bugfixes_and_magic_word
# Conflicts:
#	scenes/Babushka_scene_farm_outside_2d.tscn
#	scenes/Babushka_scene_indoor_vesnas_room.tscn
#	scripts/CSharp/Common/CharacterControls/InteractionArea2D.cs
2025-11-18 15:24:45 +01:00
kziolkowski c9f97c2571 📝 added documentation comments 2025-11-15 22:27:26 +01:00
kziolkowski 6613e54658 Implemented Loading function on fields and plants 2025-11-15 22:15:10 +01:00
kziolkowski 3fcb34c04d 🚧 saving of field parameters as json implemented 2025-11-12 18:46:30 +01:00
kziolkowski 5cc65bc3f4 🔧 filled up main outdoor scene with fields 2025-11-12 15:20:21 +01:00
kziolkowski 443741f5f1 🐛 added preset fields to main outdoor scene and made them farmable 2025-11-12 15:14:10 +01:00
kziolkowski 554a319428 🚧 farming rework part 2: you can now kinda "create" fields 2025-11-11 16:39:47 +01:00
jonathan 3bb4fcd129 Added damage fly number 2025-11-11 15:55:41 +01:00
kziolkowski 4705d1ee2f 🐛 can no longer water fields when watering can is empty 2025-11-11 15:54:09 +01:00
kziolkowski b00b466045 🚧 watering fields kinda works now 2025-11-11 15:51:15 +01:00
Jonathan 0507f1ee3d Merge pull request 'Sleeping in bed now loads the new fight world scene' (#27) from feature/integrate_new_fight into develop
Reviewed-on: #27
2025-11-11 14:49:31 +01:00
Jonathan 651ec2cc68 Merge pull request 'Fixed enemy groups show in different spots and even when all enemies are dead' (#28) from bug/enemy_group into develop
Reviewed-on: #28
2025-11-11 14:49:24 +01:00
kziolkowski d51cc461f7 🚧 made preplaced fields show plants 2025-11-11 14:27:56 +01:00
jonathan 54bfc3c021 🐛 Fixed enemy groups show in different spots and even when all enemies are dead 2025-11-11 14:06:58 +01:00
kziolkowski 55f0d2a77e 🚧 reworked farming system to work with indices instead of positions 2025-11-11 14:02:03 +01:00
jonathan 1531ffbf8d Sleeping in bed now loads the new fight world scene 2025-11-11 12:49:38 +01:00
jonathan 74096f2c71 🐛Fixed sprite outline fallback 2025-11-11 12:44:36 +01:00
kziolkowski 97dcadf07a Added sceneprovider reference to field scripts and made them register on ready. Also added VariableSetter. 2025-11-11 12:15:30 +01:00
Jonathan 1c5d776a3a Merge pull request 'Fixed wrong dependency' (#26) from bug/scene_dependency into develop
Reviewed-on: #26
2025-11-11 11:19:54 +01:00
jonathan c814d7606d 🐛Fixed wrong dependency 2025-11-11 11:12:54 +01:00
Jonathan e1a61fb1e2 Merge pull request 'made dead fighters shrink to telegraph to the player that they are dead' (#25) from feature/dead_squash into develop
Reviewed-on: #25
2025-11-11 10:20:44 +01:00
jonathan edbd4a182b 🎨Removed comment 2025-11-11 10:19:37 +01:00
Jonathan a9446ec770 Merge pull request '🐛 Fixed fighters keep fighting at 0 hp' (#24) from bug/enemy_die into develop
Reviewed-on: #24
2025-11-11 10:14:19 +01:00
kziolkowski fe1dd2bcc1 Added inventorylistener for watering can 2025-11-07 20:37:59 +01:00
kziolkowski 6e833a0735 added InventoryListener and made field interaction area activate only when the right item (seed) is in the inventory 2025-11-07 20:29:05 +01:00
kziolkowski c52bfc8017 🐛 fixed field outline 2025-11-07 19:47:23 +01:00
kziolkowski 58c2be1db8 plants no longer grow when just interacting with them 2025-11-07 18:27:21 +01:00
kziolkowski c7c6e184d6 🐛 adjusted field positions 2025-11-07 18:24:52 +01:00
kziolkowski 6a2355cf97 🐛 fixed never more than 10 fields bug 2025-11-07 18:18:05 +01:00
kziolkowski 1d7f656ec4 🚧 WIP trying to fix a bug that won't let me have more than 9 fields. Dont ask me why. 2025-11-05 19:25:46 +01:00
kziolkowski 1c5b585b3d 🔥 removed print statements used for debugging 2025-11-05 16:50:41 +01:00
kziolkowski f1b980cdb6 🐛 field creation at the same spot no longer possible, also watering works now. 2025-11-05 16:48:45 +01:00
kziolkowski 8b77ca9bc5 ♻️ migrated the InteractionAreas currently used to the new format and removed the old code 2025-11-04 17:20:15 +01:00
jonathan f51275ccc0 made dead fighters shrink to telegraph to the player that they are dead 2025-11-04 16:42:16 +01:00
kziolkowski 8d616735f4 🚚 moved Animationfix script 2025-11-04 16:40:19 +01:00
jonathan 50b2c04cb4 🐛 Fixed fighters keep fighting at 0 hp 2025-11-04 13:55:37 +01:00
kziolkowski 66848af8bf Merge branch 'develop' into feature/farming_bugfixes_and_magic_word 2025-11-04 11:24:51 +01:00
Jonathan e864c62a3a Merge pull request 'Fight rework premature merge' (#22) from feature/fight_rework into develop
Reviewed-on: #22
2025-11-04 10:25:12 +01:00
jonathan f27f69c15f 🐛 Rebase fixing 2025-11-04 10:07:29 +01:00
jonathan 21b361f9d7 🎨 Live review changes 2025-11-04 10:07:19 +01:00
jonathan 83dc6bfd56 ♻️ Implemented FightersFormation to keep track of the fight entered state of the fighters 2025-11-04 05:59:19 +01:00
jonathan 0de3bcae22 ♻️Code cleanup 2025-11-04 05:59:19 +01:00
jonathan 3326bde40c 🐛Exiting fight happening when one side wins 2025-11-04 05:59:19 +01:00
jonathan 83c9dfc945 Added theme-based region colors 2025-11-04 05:59:19 +01:00
jonathan cd235248c6 Added minigame label for each region 2025-11-04 05:59:19 +01:00
jonathan 8bb1c22549 Added minigame to attack action 2025-11-04 05:59:18 +01:00
jonathan 8624e2aea8 Added minigame 2025-11-04 05:59:18 +01:00
jonathan fef1bcc3b6 cap health at minimum 0 2025-11-04 05:59:18 +01:00
jonathan f4d8ed87e2 Added blob attack action 2025-11-04 05:59:18 +01:00
jonathan 1f227f70a7 Added basic health bar 2025-11-04 05:59:18 +01:00
jonathan 9bf25640f6 Added basic action animation 2025-11-04 05:59:18 +01:00
jonathan 0e315396c9 Made fight fightable 2025-11-04 05:59:18 +01:00
jonathan f27dd199b8 Fight happening base setup 2025-11-04 05:27:34 +01:00
jonathan fd0e631b1f Bootstrap fight system
- Fight World data structure
- Generating basic fight world
- Opening correct fight room
- Block paths in fight rooms
- Transition between rooms
2025-11-04 05:25:22 +01:00
kziolkowski 6ba26c360d 🚧 reworking Fieldservice 2025-10-31 14:08:55 +01:00
kziolkowski 63fd81e54d 🔥 removed no longer needed scene call group 2025-10-31 12:38:48 +01:00
kziolkowski b54f784d51 🎨 Replaced pickup animation group call with event 2025-10-31 12:36:08 +01:00
kziolkowski 6194988bf0 🎨 removed plant growing call group and replaced it with an event call. Made FarmingAnimation play on event. 2025-10-31 12:07:05 +01:00
kziolkowski 759933c1cd Merge pull request 'feature/detection_cross' (#21) from feature/detection_cross into develop
Reviewed-on: #21
2025-10-31 10:47:20 +01:00
kziolkowski af8807610d :bug increased interaction area size for fence gates 2025-10-29 16:25:31 +01:00
kziolkowski 02b6584e44 🐛 fixed ObjectDisposedException from the Inventory when switching scenes. 2025-10-29 16:03:36 +01:00
kziolkowski e202534c6b 🐛 Vesnas Namensschild sieht nicht richtig aus FIXED 2025-10-29 15:00:30 +01:00
kziolkowski 1f13f3ea51 Merge branch 'develop' into feature/detection_cross
# Conflicts:
#	addons/dialogic/vesna_style.tres
#	dialog/NPC_narrative.tres
#	scenes/Babushka_scene_indoor_vesnas_room.tscn
2025-10-29 14:01:55 +01:00
kziolkowski 8b7afbcab6 Merge remote-tracking branch 'origin/feature/detection_cross' into feature/detection_cross 2025-10-29 13:32:57 +01:00
Jonathan afce4ad0b9 Merge pull request 'feature/events' (#19) from feature/events into develop
Reviewed-on: #19
2025-10-28 21:12:45 +01:00
kziolkowski 32ac007256 🎨 Exchanged Quest post it with ui sprite 2025-10-28 17:32:18 +01:00
kziolkowski d45deeb7ed 🔧 adjusted seed pickup positions and indoor collider sizes 2025-10-28 17:32:18 +01:00
kziolkowski 9e21b07271 🍱 Adjusted colliders in farm_outside scene and reactivated ground collider on Vesna 2025-10-28 17:32:18 +01:00
kziolkowski f94c2d0a50 :memo::fire:🔨
- removed a lot of unnecessary code
- Made a minimal working version
- Added documentation
2025-10-28 17:32:18 +01:00
kziolkowski 84b8938d1f 🚧 WIP first setup completed (still buggy!) 2025-10-28 17:32:18 +01:00
kziolkowski 8d421b58ec Implemented dialogue box design as described in mockups 2025-10-28 17:32:18 +01:00
kziolkowski ebe99c5f22 💄 Added new fonts and increased textbox size. Also added border line. 2025-10-28 17:32:18 +01:00
kziolkowski b32b483d09 upgraded project to 4.5 2025-10-28 17:32:18 +01:00
kziolkowski c6e9bc9336 scene updates after undoing changes to interactionArea 2025-10-28 17:32:17 +01:00
kziolkowski 5b0fed7816 sound autoimports 2025-10-28 17:31:10 +01:00
Nao 3bdd5aa873 SFX for Wolf added + redone reverb of footsteps (but not sure it worked?! - possible new upload/replacement possible) 2025-10-28 17:30:48 +01:00
kziolkowski 3fe79f2fd8 Added VariableGetter functionality and some Variable setting components. Also added them to test scene. 2025-10-28 13:09:36 +01:00
kziolkowski 8c1157c26e 🔥 removed indexed RaiseEvent-Call from EventRaiser 2025-10-28 12:04:41 +01:00
kziolkowski c96e6da78e Separated events from variables and adjusted test scene 2025-10-28 11:57:36 +01:00
kziolkowski 0fc1760b70 Merge pull request 'feature/animations_update' (#17) from feature/animations_update into develop
Reviewed-on: #17
2025-10-28 10:59:32 +01:00
kziolkowski 90b8dda16a Merge branch 'feature/dialogic_style_rework' into feature/detection_cross 2025-10-28 10:56:22 +01:00
kziolkowski ecff43d5c3 Merge branch 'develop' into feature/detection_cross 2025-10-28 10:46:02 +01:00
Jonathan 40b8c022fe Merge pull request 'feature/showcase_bugfixing_kathi_partII' (#16) from feature/showcase_bugfixing_kathi_partII into develop
Reviewed-on: #16
2025-10-24 18:31:55 +02:00
kziolkowski e1b1a2f447 🔧 adjusted seed pickup positions and indoor collider sizes 2025-10-24 15:57:14 +02:00
kziolkowski 2d4e853ec8 🍱 Adjusted colliders in farm_outside scene and reactivated ground collider on Vesna 2025-10-24 15:45:10 +02:00
kziolkowski 8f097de476 :memo::fire:🔨
- removed a lot of unnecessary code
- Made a minimal working version
- Added documentation
2025-10-24 15:13:35 +02:00
kziolkowski 109573fb1b 🎨 Exchanged Quest post it with ui sprite 2025-10-24 13:43:13 +02:00
kziolkowski 0e55394699 🚧 WIP first setup completed (still buggy!) 2025-10-22 19:30:33 +02:00
kziolkowski b1335d4b00 Merge branch 'feature/dialogic_style_rework' into feature/detection_cross 2025-10-22 14:46:55 +02:00
kziolkowski 078e26e868 Implemented dialogue box design as described in mockups 2025-10-22 14:23:48 +02:00
kziolkowski ffebe10593 💄 Added new fonts and increased textbox size. Also added border line. 2025-10-21 13:41:43 +02:00
kziolkowski 4c8406ba97 upgraded project to 4.5 2025-10-21 12:59:29 +02:00
kziolkowski 080ebaae47 removed redundant import statement 2025-10-21 12:50:48 +02:00
kziolkowski 5cf250b295 Added randomizer class for certain types of EventResources 2025-10-21 12:39:17 +02:00
kziolkowski ef56f79d5c Added event payload and Valuechange-handling 2025-10-21 12:39:01 +02:00
kziolkowski 5bcbee8865 created test scene and removed event test elements from start scene 2025-10-21 12:38:15 +02:00
kziolkowski a74abe684b Godot upgrade to 4.5 2025-10-21 12:33:38 +02:00
kziolkowski a593be8273 📝 added documentation and improved event scope 2025-10-18 17:15:35 +02:00
kziolkowski 1e004b62b8 Implemented first version of EventResources 2025-10-13 09:57:49 +02:00
kziolkowski 5fc7b3d563 scene updates after undoing changes to interactionArea 2025-10-03 17:02:07 +02:00
kziolkowski d4892e1aa4 sound autoimports 2025-10-03 16:52:17 +02:00
kziolkowski e0ea5ef5be Merge branch 'feature/sounds_update' into feature/bugfixing_kathi_partIII 2025-10-03 16:45:30 +02:00
kziolkowski 02ff401273 Merge branch 'feature/animations_update' into feature/bugfixing_kathi_partIII 2025-10-03 16:45:14 +02:00
kziolkowski c3e78b5db2 Merge remote-tracking branch 'origin/Nao's-Sounds' into feature/sounds_update 2025-10-03 16:39:30 +02:00
kziolkowski 09b2baab0a Merge remote-tracking branch 'origin/Animations' into feature/animations_update
# Conflicts:
#	art/animation/Vesna2D/Vesna Anims Sequences/B01-Idle/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B01-Idle/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B01-Idle/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B01-Idle/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B01-Idle/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B01-Idle/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B01-Idle/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B01-Idle/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B01-Idle/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B01-Idle/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B01-Idle/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B01-Idle/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B01-Idle/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B01-Idle/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B01-Idle/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B01-Idle/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B01-Idle/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B01-Idle/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B01-Idle/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B01-Idle/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B02-Walk/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B02-Walk/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B02-Walk/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B02-Walk/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B02-Walk/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B02-Walk/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B02-Walk/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B02-Walk/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B02-Walk/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B02-Walk/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B02-Walk/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B02-Walk/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B02-Walk/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B02-Walk/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B02-Walk/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B02-Walk/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B02-Walk/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B02-Walk/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B02-Walk/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B02-Walk/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B03-Interact/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B03-Interact/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B03-Interact/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B03-Interact/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B03-Interact/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B03-Interact/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B03-Interact/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B03-Interact/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B03-Interact/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/B03-Interact/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D01-Idle/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D01-Idle/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D01-Idle/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D01-Idle/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D01-Idle/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D01-Idle/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D01-Idle/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D01-Idle/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D01-Idle/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D01-Idle/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D01-Idle/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D01-Idle/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D01-Idle/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D01-Idle/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D01-Idle/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D01-Idle/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D01-Idle/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D01-Idle/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D01-Idle/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D01-Idle/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D03-Farming/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D03-Farming/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D03-Farming/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D03-Farming/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D03-Farming/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D03-Farming/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D03-Farming/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D03-Farming/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D03-Farming/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D03-Farming/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D05-Talk/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D05-Talk/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D05-Talk/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D05-Talk/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D05-Talk/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D05-Talk/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D05-Talk/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D05-Talk/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D05-Talk/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D05-Talk/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D05-Talk/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D05-Talk/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D05-Talk/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D05-Talk/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D05-Talk/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D05-Talk/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D05-Talk/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D05-Talk/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D05-Talk/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D05-Talk/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D06-Harvesting/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D06-Harvesting/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D06-Harvesting/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D06-Harvesting/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D06-Harvesting/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D06-Harvesting/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D06-Harvesting/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D06-Harvesting/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D06-Harvesting/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D06-Harvesting/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0021.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0022.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0023.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0024.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0025.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D08-Watering/0026.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D10-Watercan/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D10-Watercan/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D10-Watercan/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D10-Watercan/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D10-Watercan/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D10-Watercan/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D10-Watercan/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D10-Watercan/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D10-Watercan/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D10-Watercan/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D10-Watercan/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D10-Watercan/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D10-Watercan/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D10-Watercan/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D10-Watercan/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D10-Watercan/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D10-Watercan/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D10-Watercan/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D10-Watercan/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D10-Watercan/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D11-Item/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D11-Item/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D11-Item/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D11-Item/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D11-Item/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D11-Item/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D11-Item/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D11-Item/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D11-Item/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D11-Item/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D11-Item/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D11-Item/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D11-Item/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D11-Item/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D11-Item/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D11-Item/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D11-Item/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D11-Item/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D11-Item/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/D11-Item/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F01-Idle/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F01-Idle/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F01-Idle/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F01-Idle/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F01-Idle/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F01-Idle/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F01-Idle/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F01-Idle/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F01-Idle/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F01-Idle/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F01-Idle/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F01-Idle/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F01-Idle/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F01-Idle/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F01-Idle/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F01-Idle/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F01-Idle/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F01-Idle/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F01-Idle/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F01-Idle/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F02-Walk/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F02-Walk/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F02-Walk/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F02-Walk/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F02-Walk/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F02-Walk/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F02-Walk/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F02-Walk/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F02-Walk/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F02-Walk/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F02-Walk/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F02-Walk/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F02-Walk/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F02-Walk/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F02-Walk/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F02-Walk/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F02-Walk/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F02-Walk/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F02-Walk/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/F02-Walk/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S01-Idle/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S01-Idle/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S01-Idle/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S01-Idle/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S01-Idle/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S01-Idle/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S01-Idle/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S01-Idle/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S01-Idle/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S01-Idle/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S01-Idle/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S01-Idle/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S01-Idle/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S01-Idle/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S01-Idle/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S01-Idle/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S01-Idle/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S01-Idle/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S01-Idle/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S01-Idle/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S02-Walk/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S02-Walk/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S02-Walk/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S02-Walk/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S02-Walk/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S02-Walk/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S02-Walk/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S02-Walk/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S02-Walk/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S02-Walk/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S02-Walk/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S02-Walk/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S02-Walk/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S02-Walk/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S02-Walk/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S02-Walk/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S02-Walk/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S02-Walk/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S02-Walk/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S02-Walk/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S03-PickUp/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S03-PickUp/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S03-PickUp/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S03-PickUp/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S03-PickUp/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S03-PickUp/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S03-PickUp/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S03-PickUp/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S03-PickUp/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S03-PickUp/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S03-PickUp/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S03-PickUp/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S03-PickUp/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Sequences/S03-PickUp/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0020.png.import
#	art/animation/Yeli2D/F01-Yeli_Idle/0001.png.import
#	art/animation/Yeli2D/F01-Yeli_Idle/0002.png.import
#	art/animation/Yeli2D/F01-Yeli_Idle/0003.png.import
#	art/animation/Yeli2D/F01-Yeli_Idle/0004.png.import
#	art/animation/Yeli2D/F01-Yeli_Idle/0005.png.import
#	art/animation/Yeli2D/F01-Yeli_Idle/0006.png.import
#	art/animation/Yeli2D/F01-Yeli_Idle/0007.png.import
#	art/animation/Yeli2D/F01-Yeli_Idle/0008.png.import
#	art/animation/Yeli2D/F01-Yeli_Idle/0009.png.import
#	art/animation/Yeli2D/F01-Yeli_Idle/0010.png.import
#	art/animation/Yeli2D/F01-Yeli_Idle/0011.png.import
#	art/animation/Yeli2D/F01-Yeli_Idle/0012.png.import
#	art/animation/Yeli2D/F01-Yeli_Idle/0013.png.import
#	art/animation/Yeli2D/F01-Yeli_Idle/0014.png.import
#	art/animation/Yeli2D/F01-Yeli_Idle/0015.png.import
#	art/animation/Yeli2D/F01-Yeli_Idle/0016.png.import
#	art/animation/Yeli2D/F01-Yeli_Idle/0017.png.import
#	art/animation/Yeli2D/F01-Yeli_Idle/0018.png.import
#	art/animation/Yeli2D/F01-Yeli_Idle/0019.png.import
#	art/animation/Yeli2D/F01-Yeli_Idle/0020.png.import
#	art/animation/Yeli2D/F02-Yeli_Talk/0001.png.import
#	art/animation/Yeli2D/F02-Yeli_Talk/0002.png.import
#	art/animation/Yeli2D/F02-Yeli_Talk/0003.png.import
#	art/animation/Yeli2D/F02-Yeli_Talk/0004.png.import
#	art/animation/Yeli2D/F02-Yeli_Talk/0005.png.import
#	art/animation/Yeli2D/F02-Yeli_Talk/0006.png.import
#	art/animation/Yeli2D/F02-Yeli_Talk/0007.png.import
#	art/animation/Yeli2D/F02-Yeli_Talk/0008.png.import
#	art/animation/Yeli2D/F02-Yeli_Talk/0009.png.import
#	art/animation/Yeli2D/F02-Yeli_Talk/0010.png.import
#	art/animation/Yeli2D/F02-Yeli_Talk/0011.png.import
#	art/animation/Yeli2D/F02-Yeli_Talk/0012.png.import
#	art/animation/Yeli2D/F02-Yeli_Talk/0013.png.import
#	art/animation/Yeli2D/F02-Yeli_Talk/0014.png.import
#	art/animation/Yeli2D/F02-Yeli_Talk/0015.png.import
#	art/animation/Yeli2D/F02-Yeli_Talk/0016.png.import
#	art/animation/Yeli2D/F02-Yeli_Talk/0017.png.import
#	art/animation/Yeli2D/F02-Yeli_Talk/0018.png.import
#	art/animation/Yeli2D/F02-Yeli_Talk/0019.png.import
#	art/animation/Yeli2D/F02-Yeli_Talk/0020.png.import
#	project.godot
2025-10-03 16:20:23 +02:00
kziolkowski d6a2b586e4 🐛 fixed ducks counting bug 2025-09-27 17:38:23 +02:00
kziolkowski 936983e14f 💄 updated dialogic style to make it clearer who is talking and have vesna always on the left side 2025-09-27 17:24:01 +02:00
kziolkowski e73f13d7d4 🎨 💄 Created art template for farm plants and reworked existing plant prefabs and inventory resources 2025-09-27 16:54:17 +02:00
kziolkowski 0713e334b3 Fixed InventoryInstance behaviour 2025-09-26 00:31:11 +02:00
kziolkowski c56f654751 Set up second garden with beetroot, built transition from yard and back 2025-09-17 17:58:28 +02:00
kziolkowski 1f88f9b4b5 Added beetroot as growable plant 2025-09-17 16:53:57 +02:00
kziolkowski 06fd80f762 grass layering fix 2025-09-17 15:10:29 +02:00
kziolkowski 2cb605261e Fixed Tomato farming (again) 2025-09-17 15:07:17 +02:00
kziolkowski 975dd45c94 fixed item repository bug 2025-09-10 15:06:49 +02:00
kziolkowski d1a8ff0cbf WIP reworking the item repository 2025-09-09 23:57:55 +02:00
Nao cba6c09ca0 SFX for Wolf added + redone reverb of footsteps (but not sure it worked?! - possible new upload/replacement possible) 2025-09-08 16:51:21 +02:00
Felix Paul da7cd2f6f2 Small update 2025-09-01 19:52:11 +02:00
kziolkowski 9f50e1d293 WIP trying to implement pickup sounds 2025-08-27 18:21:28 +02:00
kziolkowski 652cac4232 Added typing sounds to dialogic characters 2025-08-27 18:00:26 +02:00
kziolkowski e44e06bace Added Footsteps SFX 2025-08-27 17:12:12 +02:00
kziolkowski 89313fd484 Merge remote-tracking branch 'origin/Nao's-Sounds' into feature/showcase_bugfixing_kathi_partII 2025-08-27 15:19:47 +02:00
Nao 6f340b54a4 SFX Footstep Gravel Added 2025-08-25 19:15:38 +02:00
Nao 8f3be823a4 Added Single Footstep SFX, added folders and moved files for better organization 2025-08-21 17:46:53 +02:00
kziolkowski eeb56fd7ad Added possibility to deactivate an interactionarea if there is no more timelines to play 2025-08-20 00:48:12 +02:00
kziolkowski 871e1856f1 Tools get deactivated from animation when switching to an empty slot in the inventory. Also fixed layering (AGAIN) 2025-08-20 00:26:58 +02:00
kziolkowski 378bf45c49 Implemented PR feedback + made sure initial farming quests run smoothly 2025-08-19 23:02:14 +02:00
kziolkowski f6e0c4e615 minor scene fixes 2025-08-18 00:10:20 +02:00
kziolkowski 6ae877f2ab Implemented first version of an interactable area that reacts to inventory selection 2025-08-17 23:49:04 +02:00
kziolkowski 3913143892 Added Hotkey-Info to inventory prefab 2025-08-17 23:21:45 +02:00
kziolkowski 4734ae953c Added option to play pickup animation for non-inventory items 2025-08-17 23:13:39 +02:00
kziolkowski 5992c390ee Reinstated plantgrowing animation 2025-08-17 23:07:22 +02:00
kziolkowski 283caf282b Added interaction on mouse click 2025-08-17 22:50:28 +02:00
kziolkowski 7c03964d33 changed watering can display to slider 2025-08-17 22:42:12 +02:00
kziolkowski 36c948f116 re-added watering animation and vfx 2025-08-17 22:18:39 +02:00
kziolkowski d0ba4076b3 planting, growing and watering a little less dependent than before 2025-08-17 22:11:18 +02:00
kziolkowski 7fd26ffed3 Fixed tomato farming again 2025-08-17 21:57:57 +02:00
kziolkowski ce2d7eb773 WIP moving seed to plant matching into separate system, making fields independent of specific plants. 2025-08-15 18:42:26 +02:00
kziolkowski 41365fb5d4 Fixed tool animation 2025-08-15 17:19:22 +02:00
kziolkowski 96c7d35aa7 Added word wrapping to quest post it. 2025-08-15 17:19:13 +02:00
kziolkowski c2f5359d0c changes after develop merge 2025-08-15 17:03:18 +02:00
Jonathan 9bebe1a44d Merge pull request 'Implemented first demo quest line' (#15) from feature/implement_quests into develop
Reviewed-on: #15
2025-08-14 23:28:09 +02:00
jonathan 06a270e916 Renamed function to not sound like a unity signal 2025-08-14 23:27:15 +02:00
jonathan b621df5435 removed invisible character 2025-08-14 23:16:52 +02:00
jonathan 03dbc08293 quest status name refactoring 2025-08-14 21:54:18 +02:00
jonathan 8676bbb2f6 Fix spelling 2025-08-13 17:13:33 +02:00
jonathan 6e998810b6 Completed first demo quest line 2025-08-13 03:23:45 +02:00
jonathan c96be7467e Added Quest field 2025-08-11 19:15:12 +02:00
Jonathan 6aa7530502 Added speed hack for vesna 2025-08-06 21:25:28 +02:00
Jonathan d7ac1c6c22 Fixed retrigger yeli dialog 2025-08-06 20:04:24 +02:00
Jonathan 0170a53b5a Added more quest stuff including dialogic quest condition 2025-08-06 18:20:38 +02:00
cblech abc33fd06c Added first quests 2025-08-06 18:19:52 +02:00
cblech 2fbeb93018 Dialogic quest addition and plugin fix 2025-08-06 18:19:08 +02:00
Jonathan 9253a78a06 Merge pull request 'feature/showcase_bugfixing_kathi' (#14) from feature/showcase_bugfixing_kathi into develop
Reviewed-on: #14
2025-08-06 18:16:53 +02:00
kziolkowski 0008b16d48 Adjusted moving values and animations to make vesna not slide any more 2025-08-02 15:32:13 +02:00
kziolkowski 8e0dced918 Vesna can walk diagonally now 2025-08-02 15:08:38 +02:00
kziolkowski 2e21fb7e98 Made sure splash screen features logo 2025-08-02 13:55:11 +02:00
kziolkowski b69191e7f7 fixed pickup layering 2025-08-02 13:46:01 +02:00
kziolkowski 8f75b5b644 Added secondary outline mat and assigned it to inventory items 2025-08-02 13:38:07 +02:00
kziolkowski 6275bea52c MAde Vesna and Yeli disappear on dialogic start 2025-07-31 23:30:12 +02:00
kziolkowski 279cac22ee Fixed dialogic settings 2025-07-31 23:25:43 +02:00
kziolkowski e88ba2e1ef Updated interaction area setups to avoid nullrefs 2025-07-31 23:08:10 +02:00
kziolkowski f01143e887 cleaned up dialogue structure and removed vesna2 from dialogues 2025-07-31 22:09:37 +02:00
kziolkowski 18711776bb Fixed output error ERROR: Script class can only be set together with base class name 2025-07-31 21:45:22 +02:00
kziolkowski 0f246825fc Added Wellbehaviour and fixed door interaction to offer outlines 2025-07-31 20:36:17 +02:00
kziolkowski 19e30dd0b8 Removed disclaimer reference from bootstrap 2025-07-31 20:35:49 +02:00
kziolkowski 730c4999d7 Extracted FightAttack Enum in the hopes of fixing errors 2025-07-31 20:35:24 +02:00
kziolkowski cfe604d3b7 set duck body scale to 1,1 2025-07-31 18:55:06 +02:00
kziolkowski ad16b86171 wip exchanging interaction label with outline 2025-07-27 13:17:34 +02:00
kziolkowski 5ee295256b Fixed Yeli Layering issue in indoor scene 2025-07-26 17:05:17 +02:00
kziolkowski ab23d41496 Fixed ysorting on ducks and trash 2025-07-26 16:51:05 +02:00
Felix Paul 12842a37ff Rigged Chuga 2025-07-25 20:19:39 +02:00
Jonathan ae0944fe00 Merge pull request 'feature/showcase_kathi' (#12) from feature/showcase_kathi into develop
Reviewed-on: #12
2025-07-23 12:37:47 +02:00
kziolkowski 486cfb5546 WIP trying to fix the last plant stage bug on repeated farming rounds 2025-07-17 22:10:08 +02:00
kziolkowski b92eb909ad Removed no longer needed print statements 2025-07-17 20:47:34 +02:00
kziolkowski d2c7302ab2 Fixed farming (the way it was before) 2025-07-17 20:44:28 +02:00
kziolkowski 5affc48dc5 Added scene transitions between fighting scene, credits, and start 2025-07-11 04:12:42 +02:00
kziolkowski cdb6b83124 Merge remote-tracking branch 'origin/feature/fight_system' into feature/showcase_kathi 2025-07-11 03:55:56 +02:00
kziolkowski a4f9511892 WIP fixing farming mechanic again 2025-07-11 03:55:36 +02:00
cblech cc7e8c5c4b Added Credits 2025-07-11 03:49:09 +02:00
kziolkowski 7a3e96d679 Merge remote-tracking branch 'origin/feature/fight_system' into feature/showcase_kathi 2025-07-11 03:13:08 +02:00
kziolkowski e38c391e1c Reworked flow to make it playable somehow 2025-07-11 03:12:29 +02:00
cblech c0e002f783 made you win waiting time shorter 2025-07-11 03:01:49 +02:00
cblech e8850ca7c5 Added chuga dialog to fight scene 2025-07-11 03:00:47 +02:00
kziolkowski eaedf8c396 WIP Beetroot 2025-07-11 03:00:43 +02:00
kziolkowski ffa20bbdf8 Added trash to first outdoor scene 2025-07-11 00:56:51 +02:00
kziolkowski b77b6e3a52 Added second outdoor scene after tutorial 2025-07-11 00:17:31 +02:00
cblech 69cb63ad89 merge auto fixes 2025-07-11 00:15:28 +02:00
cblech 11790434f5 Merge remote-tracking branch 'origin/feature/showcase_kathi' into feature/fight_system 2025-07-11 00:11:33 +02:00
kziolkowski c7d56301fc Added counter script to count ducks (and other things) 2025-07-10 23:58:33 +02:00
cblech 8bd2b09232 Added healing 2025-07-10 23:32:16 +02:00
kziolkowski 480d149ede SceneTransition Rework completed 2025-07-10 23:23:20 +02:00
cblech c6fc400994 Added second fight with mavkha 2025-07-10 19:30:57 +02:00
kziolkowski 16251db248 WIP new SceneTransition system 2025-07-10 19:07:46 +02:00
cblech 4752002caf Added action per round 2025-07-10 18:29:18 +02:00
cblech 0e028a2cb9 Renamed signal 2025-07-10 16:12:47 +02:00
cblech 01a281c2aa Fixed camera bounds 2025-07-10 16:04:12 +02:00
cblech 2a46d363e9 Changed music to forrest 2025-07-10 15:43:36 +02:00
cblech 92c3f5e054 Target only alive enemies 2025-07-10 15:25:11 +02:00
cblech 6727339e9a Added audio to fight 2025-07-10 04:39:33 +02:00
cblech e3d67722de Merge remote-tracking branch 'origin/Nao's-Sounds' into feature/fight_system 2025-07-10 03:47:40 +02:00
cblech b6fd6292e3 Basic fighting system 2025-07-10 03:38:48 +02:00
kziolkowski e8c24e18be Added indoor bedroom scene 2025-07-10 01:25:52 +02:00
kziolkowski 199d0873c8 Set up beetroot quest and added cat to indoor scene. 2025-07-10 01:19:00 +02:00
kziolkowski e84ef716f6 Merge remote-tracking branch 'origin/feature_sanel-dialogic' into feature/showcase_kathi
# Conflicts:
#	project.godot
2025-07-09 23:53:40 +02:00
kziolkowski 135ba0d198 Reworked Domovoi kitchen animation and added AnimationStarter script 2025-07-09 23:50:43 +02:00
Sanelschnitte 2940475062 Added dialog in Dialogic
basic char, text, choice - eventually needs more events and functions to work properly
2025-07-09 23:43:02 +02:00
kziolkowski 202f8809aa Fixed plant layering issue 2025-07-09 23:03:56 +02:00
kziolkowski 28bb81c0b0 Added fence gates and fixed dialogic toggle for inventory 2025-07-09 22:58:36 +02:00
kziolkowski b9c5de6dc3 Made labels visible on ducks 2025-07-09 22:49:07 +02:00
kziolkowski 8c18688a69 MVP duck setup 2025-07-09 22:40:03 +02:00
kziolkowski 2429958741 Added Disclaimer scene 2025-07-09 21:40:02 +02:00
kziolkowski 6b5a8ee126 WIP duck behaviour 2025-07-09 20:52:43 +02:00
kziolkowski 8d40529349 Changed StartScreen layout and added Quit button 2025-07-09 20:52:33 +02:00
kziolkowski 9e97cc3b80 WIP duck pushing behaviour 2025-07-08 23:53:50 +02:00
kziolkowski ebc3ee9cf9 Implemented basic duck running away from vesna mechanic 2025-07-08 22:23:28 +02:00
kziolkowski a1bbe44105 Merge remote-tracking branch 'origin/Nao's-Sounds' into feature/showcase_kathi 2025-07-08 21:33:59 +02:00
kziolkowski 3ce10c8ba9 Merge remote-tracking branch 'origin/Nao's-Sounds' into feature/showcase_kathi 2025-07-08 21:33:37 +02:00
kziolkowski 7e6163ed68 updated project.godot 2025-07-07 21:16:36 +02:00
kziolkowski 55d6222698 Added Camera to Indoor Common Room scene and renamend scene asset 2025-07-07 16:37:10 +02:00
kziolkowski d7ad2ba072 reverted / recreated inventory changes 2025-07-07 16:14:07 +02:00
kziolkowski 9c50a63dc3 Merge branch 'develop' into feature/showcase_kathi 2025-07-07 15:34:53 +02:00
kziolkowski 746ac58329 Merge pull request 'Feature: Quest system' (#11) from feature/quest_system into develop
Reviewed-on: #11
2025-07-07 15:24:28 +02:00
cblech a9cb20c8bc Fixed journal references 2025-07-07 04:51:35 +02:00
cblech 32249fde86 Made quest visuals 2025-07-07 04:41:14 +02:00
cblech 27e137bc02 Made quest usable 2025-07-07 04:41:03 +02:00
cblech 01daddee3b Made basic quest setup 2025-07-07 04:40:40 +02:00
Jonathan ba512508f8 Merge pull request 'feature/farm_scene_rework' (#10) from feature/farm_scene_rework into develop
Reviewed-on: #10
2025-07-07 03:46:51 +02:00
kziolkowski ec653aa847 readded camera ref to farming behaviour 2025-07-07 01:17:41 +02:00
kziolkowski 9acea54f28 Added duck sprite 2025-07-07 00:46:57 +02:00
kziolkowski 2f5296e05a Diversified field shapes 2025-07-06 23:48:01 +02:00
kziolkowski e8a58655ad Added grass textures and field borders 2025-07-06 23:28:02 +02:00
kziolkowski aa3789566c Duplicated sunflower field parallaxe layer to ensure seamlessness on big screens 2025-07-06 22:00:39 +02:00
kziolkowski 9c7ae20c18 Reworked Camera controls outside scene 2025-07-06 21:56:15 +02:00
Felix Paul ffc7ef2d61 Added Vesna and Yeli as 2D rigged chars, Chuga is still WIP 2025-07-06 20:22:12 +02:00
Nao 9f04c8819f SFX for Mavkas (Voices but more "ghostly") Added 2025-07-06 20:20:03 +02:00
Nao 6cd7be196b SFX Wolf + Mavka Voices (when hit in battle) Added 2025-07-06 20:11:50 +02:00
kziolkowski ab2cf3f497 wateringcanstate uid? 2025-07-06 12:26:07 +02:00
kziolkowski bf096aa716 visual improvements on farm scene 2025-07-06 12:25:44 +02:00
kziolkowski 09ef508f49 Fixed field creation bug 2025-07-06 10:57:38 +02:00
Nao 6de8368414 Farm Atmos Added 2025-07-05 23:23:39 +02:00
Nao d20085a67c SFX Water Attack Added (Vesna + Slimes) 2025-07-05 23:17:58 +02:00
kziolkowski a54003c658 Made ground noise texture more seamless 2025-07-05 23:10:23 +02:00
Nao 648ae8395b SFX added for Root Attack, Mavka + Vesna 2025-07-05 23:01:43 +02:00
kziolkowski fbad33213c Finalized new watering can mechanic with vfx and ui 2025-07-05 22:54:52 +02:00
Nao b68eb0953e SFX Duck Flügelflattern "Wings" + Schlappentornado Added 2025-07-05 21:51:19 +02:00
kziolkowski 35c7e9a25e WIP Wasserstand UI 2025-07-05 17:34:03 +02:00
kziolkowski 57896e37df Fixed background music loop and added audio mixers 2025-07-05 15:08:23 +02:00
kziolkowski 242879159a Fixed sfx binding in farming scene 2025-07-05 13:57:14 +02:00
kziolkowski 7ef9fe53b2 Added SignalVisualizer plugin 2025-07-05 13:56:59 +02:00
kziolkowski 600d9cfca1 Made items activate directly when picked up 2025-07-05 13:18:19 +02:00
kziolkowski 48796de1ba Changed dialogic background color to black and opacity to 168 sothat there is a visible dark overlay during dialogues 2025-07-05 12:37:39 +02:00
kziolkowski 4a0b2cd550 Improved Inventory UI (more in the middle, adapt to viewport size, new selector image) 2025-07-05 12:18:28 +02:00
kziolkowski ba429d7b84 wip improving inventory layout 2025-07-04 23:41:15 +02:00
kziolkowski e33776daeb ESC closes inventory now. 2025-07-04 23:15:45 +02:00
kziolkowski 9cfd3bd6f4 Improving farm outside scene performance 2025-07-02 21:36:12 +02:00
Nao 7eb18caaaf Added SFX for Healing magic 2025-07-02 21:24:21 +02:00
Nao e65e82f421 Added SFX Duck & Combat, moved Cat SFX to folder "animals" 2025-07-02 21:23:36 +02:00
kziolkowski c36d0b5866 reduced VRAM load by more than 50% 2025-07-02 17:54:23 +02:00
kziolkowski bcdba7b812 Fixed Vesna sliding issue 2025-07-02 15:48:39 +02:00
kziolkowski 7467ec56d9 Fixed ordering issues in indoor scene 2025-06-28 17:37:39 +02:00
kziolkowski 990494e8b0 Adjusted indoor speed 2025-06-28 17:19:41 +02:00
kziolkowski c6e0cfe4d9 Fixed Button layout behaviour 2025-06-28 17:17:26 +02:00
Nao 691e613a5c Added SFX for Combat 2025-06-28 17:04:20 +02:00
kziolkowski 4e010220bf Improved performance of the first indoor scene 2025-06-28 16:13:06 +02:00
kziolkowski ccc4eb759e Added new house image to farming scene 2025-06-21 16:09:35 +02:00
Nao 250f0d07ca SFX Slime Hit Variations (Pitch) Added 2025-06-17 15:43:33 +02:00
Nao f481f5bea7 SFX Added: UI (Dialog + Confirmation), Slime Hit 2025-06-17 15:39:02 +02:00
Jonathan 58c65fc928 Merge pull request 'First intro sequence with Yeli' (#9) from feature/yeli_intro into develop
Reviewed-on: #9
2025-06-17 02:40:12 +02:00
cblech 937e54e47a Merge branch 'feature/farming_visuals' into develop 2025-06-16 21:03:02 +02:00
kziolkowski 83c8a15e5a Added art for updated startscreen to project (but not yet to start menu scene) 2025-06-16 20:56:01 +02:00
kziolkowski 1fcddb7349 changed export presets for new builds 2025-06-16 20:56:01 +02:00
kziolkowski 26cae9b0f8 fixed missing ready plants 2025-06-16 20:56:01 +02:00
kziolkowski 0ebd0c46a0 Added indoor ending 2025-06-16 20:56:01 +02:00
kziolkowski 2226b859df Added WateringCan SFX 2025-06-16 20:56:00 +02:00
kziolkowski 07bcab4454 Added Farming SFX 2025-06-16 20:56:00 +02:00
kziolkowski 4c6d5350b2 Added Background music 2025-06-16 20:56:00 +02:00
kziolkowski f2c492de54 changed label settings for InteractionArea 2025-06-16 20:56:00 +02:00
kziolkowski e269b3ab44 WIP trying to toggle interactable colliders at runtime for fields 2025-06-16 20:56:00 +02:00
kziolkowski 89ae347a91 Added last farming timelines and fixed some minor issues 2025-06-16 20:56:00 +02:00
kziolkowski ddb5547b42 Updated Startscreen and added second tutorial step 2025-06-16 20:56:00 +02:00
kziolkowski afa06d3ee2 Fixed Yeli Y sorting issue and made fields rounded 2025-06-16 20:56:00 +02:00
kziolkowski dd656d5f5f Extended dialogic toggle 2025-06-16 20:56:00 +02:00
kziolkowski cdb62f3c2f Added Cozy Raven Splashscreen 2025-06-16 20:56:00 +02:00
kziolkowski b0f4592fdd Added first working timeline for yelis intro to farming scene 2025-06-16 20:56:00 +02:00
kziolkowski 406c11b581 import statements 2025-06-16 20:56:00 +02:00
kziolkowski 9812006234 Added Yeli sprites and dialogic test timeline as well as prefab 2025-06-16 20:56:00 +02:00
kziolkowski b8e456f7ef moved player2D prefab 2025-06-16 20:55:59 +02:00
Felix Paul 97e5485ef1 Added Yeli Idle and Talk animations 2025-06-16 20:55:59 +02:00
Felix Paul c77563d38e Rerender Harvesting and added Watering animations 2025-06-16 20:55:59 +02:00
Nao c322f7667a Placeholder for Quest Fail added 2025-06-16 20:55:59 +02:00
Nao 68be479a09 New SFX for Door added 2025-06-16 20:55:58 +02:00
Nao dc52d80a92 SFX Quest Complete Placeholder added (need more time) 2025-06-16 20:55:58 +02:00
Nao a84ca9c32c Farm Atmos Nighttime added 2025-06-16 20:55:58 +02:00
Nao 6b1dd04dd5 New SFX and Forest Atmos Nighttime added 2025-06-16 20:55:58 +02:00
kziolkowski 523624756e missing import files 2025-06-16 20:55:57 +02:00
Nao 72593ff7c7 SFX for kitchen added (cutlery, plates, etc) and a few renamed 2025-06-16 20:55:57 +02:00
kziolkowski d7dfd03241 Deleted unused material folder 2025-06-16 20:55:57 +02:00
Nao eac135508c SFX Snoring Added 2025-06-16 20:55:57 +02:00
ascheck 90cadbea07 ui elemente hinzugefügt für dialog 2025-06-16 20:55:57 +02:00
Nao 72c3454728 SFX Door Open and Close added 2025-06-16 20:55:57 +02:00
kziolkowski 83e25f44cd Fixed background parallaxe effect in outdoor scene 2025-06-16 20:55:57 +02:00
kziolkowski 31f19ad139 Code cleanup part 2 2025-06-16 20:55:57 +02:00
kziolkowski c6ec99e87a Project cleanup: Removed 3D scripts and scenes from project. Also renamed and moved some minor stuff. 2025-06-16 20:55:57 +02:00
Nao b8cb60aec9 Placeholder for Quest Fail added 2025-06-02 16:06:52 +02:00
Nao 55a3e56791 New SFX for Door added 2025-06-02 15:56:36 +02:00
kziolkowski 1f17cca62d changes from build process 2025-05-28 15:37:04 +02:00
ascheck 1629862759 Merge pull request 'ui elemente hinzugefügt für dialog' (#4) from feature/ui-elements into develop
Reviewed-on: #4
2025-05-27 21:23:34 +02:00
ascheck a53b4c4010 ui elemente hinzugefügt für dialog 2025-05-27 21:11:15 +02:00
kziolkowski 3e135afecb Added StartScreen and Scene Transition script 2025-05-24 23:50:06 +02:00
kziolkowski 25d8f217ff basic harvesting implemented 2025-05-24 23:16:41 +02:00
kziolkowski a477f9ef4f Implemented field creation and wateringcan fill up animation 2025-05-24 21:47:25 +02:00
kziolkowski b917fb5fbd changed player window size 2025-05-24 21:46:28 +02:00
Felix Paul 20ed134628 Added Yeli Idle and Talk animations 2025-05-21 02:12:36 +02:00
kziolkowski 47a1326292 state after magic clip done 2025-05-21 02:10:50 +02:00
kziolkowski 708aa8cca4 State after inventory clip (farming mechanic still WIP) 2025-05-21 00:13:58 +02:00
kziolkowski 83f4144b43 Reworked farming tools pickup animations 2025-05-20 23:05:26 +02:00
kziolkowski 2c677a8cda Inventory resource rework and slot aspect fix 2025-05-20 22:27:48 +02:00
cblech ec5d42068e fixed generic item on ground and added icon 2025-05-20 20:42:32 +02:00
cblech 8fdb395ae8 Added icon to slot 2025-05-20 19:49:37 +02:00
kziolkowski 60928c520c Inventory implemented 2025-05-20 18:27:50 +02:00
kziolkowski f3ed5e0ad0 Changes to ItemOnGround 2025-05-20 18:27:40 +02:00
kziolkowski ee897db52b added swaying plants shader 2025-05-20 18:27:20 +02:00
kziolkowski 41201d7406 Indoor room sprites added 2025-05-20 18:27:09 +02:00
kziolkowski 267172d026 WIP adding the inventory, also state after first clip 2025-05-20 01:00:13 +02:00
kziolkowski 917e6a5f7e Merge remote-tracking branch 'origin/inventory' into feature/farming_visuals
# Conflicts:
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Gießkanne/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B01-Idle-Harke/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Gießkanne/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/B02-Walk-Harke/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Gießkanne/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/D01-Idle-Harke/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Gießkanne/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F01-Idle-Harke/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Gießkanne/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/F02-Walk-Harke/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Gießkanne/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S01-Idle-Harke/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0020.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0001.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0002.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0003.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0004.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0005.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0006.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0007.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0008.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0009.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0010.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0011.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0012.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0013.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0014.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0015.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0016.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0017.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0018.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0019.png.import
#	art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Harke/0020.png.import
#	prefabs/UI/Inventory/Inventory.tscn
#	scenes/Babushka_scene_farm_outside_2d.tscn
2025-05-20 00:19:42 +02:00
kziolkowski 23ef4e9a63 changed visibility order for plants 2025-05-20 00:18:49 +02:00
kziolkowski fa7cc66748 added farming animation mechanic 2025-05-19 23:49:00 +02:00
cblech 7b006d19ef Changed slot visuals 2025-05-19 23:36:45 +02:00
kziolkowski ad070514d7 Added item and interact animations 2025-05-19 22:50:28 +02:00
kziolkowski 80c48ea3df added pickup animation 2025-05-19 22:39:30 +02:00
cblech d76218f88f Moved Bar slot selection handling to inventory manager 2025-05-19 22:07:55 +02:00
kziolkowski 7276bdda38 Watering can animation plays when watering 2025-05-19 22:06:40 +02:00
kziolkowski 73dc3063c0 removed unnecessary icons from farming controls 2025-05-19 21:42:56 +02:00
cblech ae4f7d9c58 added missing imports 2025-05-19 21:36:10 +02:00
cblech 9a5caef52f Added inventory background and fixes 2025-05-19 21:35:55 +02:00
kziolkowski 15c2a84ecd Added babushka icon to project settings 2025-05-19 21:18:24 +02:00
kziolkowski 1094fb2142 Added tool animations to player 2025-05-19 21:17:50 +02:00
cblech 2ab1c38de9 cleaned Inventory ui 2025-05-19 17:17:01 +02:00
Felix Paul 3eb35d4e7d Rerender Harvesting and added Watering animations 2025-05-18 21:22:27 +02:00
Nao 4261789f13 SFX Quest Complete Placeholder added (need more time) 2025-05-18 20:34:00 +02:00
Nao ce18c89c09 Farm Atmos Nighttime added 2025-05-18 19:21:51 +02:00
Nao 7643cccebf New SFX and Forest Atmos Nighttime added 2025-05-18 19:04:02 +02:00
Nao 7e4d733d7c SFX for kitchen added (cutlery, plates, etc) and a few renamed 2025-05-18 17:52:59 +02:00
Nao 1dcd900737 SFX Snoring Added 2025-05-18 15:33:02 +02:00
Nao 74c3540c96 SFX Door Open and Close added 2025-05-18 15:10:08 +02:00
kziolkowski 6d80253d9c import updates to shaders and animations 2025-05-18 13:05:35 +02:00
kziolkowski 1b7c35879c Merge remote-tracking branch 'origin/Animations' into farming_mechanic 2025-05-18 12:34:21 +02:00
kziolkowski ff426b0494 Initial Farming setup complete 2025-05-18 12:32:56 +02:00
kziolkowski 90616537bc Watering fields 2025-05-18 11:44:33 +02:00
kziolkowski 0f8eb244e9 planting / growth works again 2025-05-17 19:04:46 +02:00
kziolkowski 38fdad7690 removed print statements 2025-05-17 18:24:15 +02:00
kziolkowski 0de6bc0c04 the most beautiful grid of fields you can imagine 2025-05-17 18:23:35 +02:00
Felix Paul fc2d6592a2 Added Vesna animations with tools 2025-05-17 17:47:52 +02:00
kziolkowski 222c10fe0a limited field creation to specified shape 2025-05-17 17:40:15 +02:00
kziolkowski 8af825bc18 InteractionAreas are now bound to SpriteSwitchers and farming tool interaction works 2025-05-17 16:38:32 +02:00
kziolkowski f7684b6c2a Deleted unused kenney assets 2025-05-17 14:02:20 +02:00
kziolkowski f9a3a8e389 generated import files for art assets 2025-05-17 13:49:07 +02:00
kziolkowski 6ad8fb00bd imported various art assets from owncloud 2025-05-17 13:47:54 +02:00
kziolkowski c4dbc104d4 music files added 2025-05-17 13:41:42 +02:00
kziolkowski 77c0babdca minor changes after merge 2025-05-17 13:37:56 +02:00
kziolkowski aa5a3483bb Merge remote-tracking branch 'origin/Nao's-Sounds' into farming_mechanic 2025-05-17 13:31:21 +02:00
kziolkowski 68b6031da1 Merge remote-tracking branch 'origin/Animations' into farming_mechanic 2025-05-17 13:30:58 +02:00
kziolkowski 4afb02440c Reworking 2D interactions 2025-05-16 23:16:27 +02:00
Nao de5657a9cd More SFX Added 2025-05-15 19:06:27 +02:00
kziolkowski ff85b67087 Made interaction area 2d work - and farming/growing work again. 2025-05-14 23:12:14 +02:00
Nao 6f3d843818 SFX and Atmos added (with variations) 2025-05-14 19:58:03 +02:00
Felix Paul 20f8eaaebd Added Vesna 2D image sequences 2025-05-14 12:48:37 +02:00
Felix Paul 69848e77c9 Added PickUp and Interact (Back) animations 2025-05-12 17:57:12 +02:00
kziolkowski 366923699c WIP 2D rework 2025-05-12 00:16:13 +02:00
kziolkowski 2a7f39e3fe Adjusted movement and included collider collisions as a constraint to the player 2025-05-11 23:20:35 +02:00
kziolkowski 296fed6e08 Added fields 2025-05-10 16:33:35 +02:00
kziolkowski 1af04631c5 Added 2d outdoor scene with parallaxe and mockup background 2025-05-10 16:29:23 +02:00
Felix Paul 9ec1bcab97 Added 2 animations
Added Fill Watercan and Hold Item animations
2025-05-05 20:24:26 +02:00
kziolkowski d11fc9f1f2 Cleaned up house mockup outline and removed spammy debug log 2025-04-30 18:49:46 +02:00
kziolkowski 16a65f7155 added flat indoor test and skybox to 3d test 2025-04-30 18:43:18 +02:00
kziolkowski 0fcc425ace built first 2d indoor scene + added kitchen 2025-04-30 17:36:38 +02:00
Felix Paul 21685d60d5 Added Vesna animations 2025-04-28 20:15:39 +02:00
kziolkowski 752cdb1502 Added new how sprite 2025-04-27 10:09:11 +02:00
kziolkowski 8299998a0f Added fence to the left part of the farm 2025-04-26 15:15:38 +02:00
kziolkowski 5ea6431216 Added tree prefabs and a forest border around the farm 2025-04-26 14:51:56 +02:00
Felix Paul 7cccd40290 Test
Einige animationen in 3D
2025-04-25 21:19:04 +02:00
kziolkowski 762a694be3 Spawning and watering is now bound to the cursor position (kinda) 2025-04-25 00:13:50 +02:00
kziolkowski 339428c312 Basic watering functionality implemented 2025-04-24 23:36:23 +02:00
kziolkowski 7e19268847 Merge remote-tracking branch 'origin/main' into c_sharp_setup
# Conflicts:
#	scripts/CSharp/Common/CharacterControls/VesnaBehaviour.cs.uid
#	scripts/CSharp/Common/Farming/FieldService.cs.uid
2025-04-24 21:22:56 +02:00
kziolkowski 20b37de108 generated files 2025-04-24 21:22:14 +02:00
kziolkowski 7d1187d218 Merge pull request 'inventory' (#3) from inventory into main
Reviewed-on: #3
Reviewed-by: kziolkowski <katharina.ziolkowski@gmail.com>
2025-04-24 21:18:13 +02:00
cblech 54b07cccad added autogenerated items 2025-04-17 16:10:31 +02:00
cblech fb0c14c3f1 Added item stacking 2025-04-17 16:10:12 +02:00
cblech fb362e10ad item count WIP 2025-04-17 03:24:31 +02:00
kziolkowski c73d3ff370 Reworked the fieldservice 2025-04-14 18:00:10 +02:00
cblech e99b574d1f Added pickup error text 2025-04-14 17:36:29 +02:00
cblech 1062193785 item on ground and pickup 2025-04-14 16:49:29 +02:00
cblech 9190b2a16a Merge remote-tracking branch 'origin/c_sharp_setup' into inventory 2025-04-14 04:53:29 +02:00
kziolkowski c200098f0c WIP reworking the field behaviour to implement watering. Broken state. 2025-04-14 00:08:19 +02:00
kziolkowski 0e775309fb Scene changes 2025-04-13 15:01:49 +02:00
kziolkowski 5db71adf03 Fields spawn on a grid 2025-04-13 14:56:25 +02:00
kziolkowski ce5d2b65d3 Separated farming controls from vesna behvaiour and adjusted the setup 2025-04-13 14:35:14 +02:00
kziolkowski 6016f1cf38 Removed Debug.Log 2025-04-09 18:18:19 +02:00
kziolkowski b5dcad5614 Vesna walking and idle animations work for all movement directions. 2025-04-09 18:14:05 +02:00
cblech 64f039ba19 Removed Lock files 2025-04-07 22:19:38 +02:00
cblech 8c1822557c Added Inventory into babushka farming scene 2025-04-07 19:59:55 +02:00
cblech dacf48b9fd Merge remote-tracking branch 'origin/c_sharp_setup' into inventory 2025-04-07 18:44:38 +02:00
cblech daa53e4aef Added slot select 2025-04-07 18:43:56 +02:00
cblech 77591425cb removed unused slots script 2025-04-07 02:56:08 +02:00
cblech 667ef6fb9b Added open close inventory 2025-04-07 02:52:57 +02:00
cblech c90687939c Move items 2025-04-07 02:11:08 +02:00
kziolkowski 8622f2d38d Added vesna animations 2025-04-07 00:17:50 +02:00
kziolkowski bd4f7edc20 Creating new plantable fields works 2025-04-06 23:22:05 +02:00
kziolkowski 45a58f701b Spawning fields works 2025-04-06 23:13:25 +02:00
kziolkowski f08f3a7978 Fixed Pickup behaviour 2025-04-06 22:03:13 +02:00
kziolkowski 26502f2d37 old style farming works again 2025-04-06 20:50:55 +02:00
kziolkowski a9b1c179cd folder refactoring, plant_base adjustments 2025-04-06 18:46:59 +02:00
kziolkowski d144f5c0c4 Added Sprite Swap and Horizontal flipping to character controller 2025-04-06 15:06:22 +02:00
kziolkowski 45d09cd618 Farming part I 2025-04-04 00:22:35 +02:00
kziolkowski f2902ad7c1 added 2d and 3d house prototypes 2025-03-30 23:25:37 +02:00
kziolkowski 7f8b444270 Translated Player Scripts from GDScript to C# 2025-03-27 23:12:16 +01:00
kziolkowski d4b7c0bf45 Translated some scripts from GDscript to C# 2025-03-26 00:26:29 +01:00
cblech 959ab68b4d Added basic inventory system 2025-03-25 19:39:06 +01:00
kziolkowski 4f312209b3 a bit of restructuring, renaming, and c sharp setup 2025-03-24 21:55:34 +01:00
kziolkowski e0b5a26ee6 created first c# setup 2025-03-21 19:50:01 +01:00
cblech 78471268db Show interaction popup (<E> Label) 2024-12-20 20:34:10 +01:00
cblech 84fcec8227 Added basic interaction functionality 2024-12-20 16:28:02 +01:00
cblech dc322d8943 Fixed camera 2024-12-20 14:52:24 +01:00
cblech 4ce0367f15 Added 3D Controller 2024-12-02 18:50:26 +01:00
cblech 421a90ec17 Added camera preview addon 2024-12-02 18:49:36 +01:00
kziolkowski ec10f0e54b created 3D abandoned street mockup scene 2024-11-12 22:42:34 +01:00
kziolkowski cbcbcbbcee abandoned street mockup done 2024-11-11 23:33:37 +01:00
kziolkowski dde4f18305 generated project changes 2024-11-11 22:37:43 +01:00
kziolkowski 267a0b9556 renamed old sprites 2024-11-11 22:37:01 +01:00
cblech 5ea5e5547c Added basic dialogic translation 2024-10-28 12:27:17 +01:00
cblech d231bb0773 Added Dialogic and a test dialog 2024-10-28 12:06:03 +01:00
cblech ea20332b4f Made very basic graphics test scene 2024-10-27 21:31:14 +01:00
cblech 6090e7b17b audio testing setup 2024-10-03 13:54:39 +02:00
5022 changed files with 344889 additions and 2094 deletions
+6
View File
@@ -1,2 +1,8 @@
# Normalize EOL for all files that Git considers text files.
* text=auto eol=lf
*.psd filter=lfs diff=lfs merge=lfs -text
*.psb filter=lfs diff=lfs merge=lfs -text
*.wav filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.png~ filter=lfs diff=lfs merge=lfs -text
*.kra filter=lfs diff=lfs merge=lfs -text
+11
View File
@@ -1,3 +1,14 @@
# Godot 4+ specific ignores
.godot/
/android/
/builds/
/_builds/
/_clips/
# temporary files
**/*.tmp
**/*.translation
**/*~lock~
# override config can be used by developers to override the settings without pushing changes to the repository
override.cfg
+13
View File
@@ -0,0 +1,13 @@
# Default ignored files
/shelf/
/workspace.xml
# Rider ignored files
/modules.xml
/contentModel.xml
/projectSettingsUpdater.xml
/.idea.Babushka.iml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml
+13
View File
@@ -0,0 +1,13 @@
# Default ignored files
/shelf/
/workspace.xml
# Rider ignored files
/projectSettingsUpdater.xml
/contentModel.xml
/.idea.Babushka.iml
/modules.xml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml
+4
View File
@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding" addBOMForNewFiles="with BOM under Windows, with no BOM otherwise" />
</project>
+8
View File
@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="UserContentModel">
<attachedFolders />
<explicitIncludes />
<explicitExcludes />
</component>
</project>
@@ -0,0 +1,6 @@
<component name="InspectionProjectProfileManager">
<profile version="1.0">
<option name="myName" value="Project Default" />
<inspection_tool class="XmlDuplicatedId" enabled="true" level="ERROR" enabled_by_default="true" />
</profile>
</component>
+9
View File
@@ -0,0 +1,9 @@
<component name="libraryTable">
<library name="GdSdk" type="GdScript">
<CLASSES />
<JAVADOC />
<SOURCES>
<root url="file://$APPLICATION_PLUGINS_DIR$/GdScript/extracted/Master" />
</SOURCES>
</library>
</component>
+6
View File
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
</component>
</project>
+4
View File
@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding" addBOMForNewFiles="with BOM under Windows, with no BOM otherwise" />
</project>
+8
View File
@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="UserContentModel">
<attachedFolders />
<explicitIncludes />
<explicitExcludes />
</component>
</project>
+10
View File
@@ -0,0 +1,10 @@
<component name="libraryTable">
<library name="GdSdk Master" type="GdScript">
<properties path="$USER_HOME$/.cache/JetBrains/Rider2024.3/projects/babushka.51b917cd/sdk/GdSdk Master" version="Master" date="2024-06-01T15:14:16.000+02:00" />
<CLASSES />
<JAVADOC />
<SOURCES>
<root url="file://$USER_HOME$/.cache/JetBrains/Rider2024.3/projects/babushka.51b917cd/sdk/GdSdk Master" />
</SOURCES>
</library>
</component>
Generated
+6
View File
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
</component>
</project>
+11
View File
@@ -0,0 +1,11 @@
<Project Sdk="Godot.NET.Sdk/4.5.1">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<EnableDynamicLoading>true</EnableDynamicLoading>
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>
<Folder Include="prefabs\UI\Inventory\" />
<Folder Include="scripts\CSharp\Low Code\Randomizer\" />
</ItemGroup>
</Project>
+8
View File
@@ -0,0 +1,8 @@
<Project Sdk="Godot.NET.Sdk/4.2.0">
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<TargetFramework Condition=" '$(GodotTargetPlatform)' == 'android' ">net7.0</TargetFramework>
<TargetFramework Condition=" '$(GodotTargetPlatform)' == 'ios' ">net8.0</TargetFramework>
<EnableDynamicLoading>true</EnableDynamicLoading>
</PropertyGroup>
</Project>
+8
View File
@@ -0,0 +1,8 @@
<Project Sdk="Godot.NET.Sdk/4.2.2">
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<TargetFramework Condition=" '$(GodotTargetPlatform)' == 'android' ">net7.0</TargetFramework>
<TargetFramework Condition=" '$(GodotTargetPlatform)' == 'ios' ">net8.0</TargetFramework>
<EnableDynamicLoading>true</EnableDynamicLoading>
</PropertyGroup>
</Project>
+19
View File
@@ -0,0 +1,19 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Babushka", "Babushka.csproj", "{349E0430-96B6-4673-8609-74416BA9B1F6}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
ExportDebug|Any CPU = ExportDebug|Any CPU
ExportRelease|Any CPU = ExportRelease|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{349E0430-96B6-4673-8609-74416BA9B1F6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{349E0430-96B6-4673-8609-74416BA9B1F6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{349E0430-96B6-4673-8609-74416BA9B1F6}.ExportDebug|Any CPU.ActiveCfg = ExportDebug|Any CPU
{349E0430-96B6-4673-8609-74416BA9B1F6}.ExportDebug|Any CPU.Build.0 = ExportDebug|Any CPU
{349E0430-96B6-4673-8609-74416BA9B1F6}.ExportRelease|Any CPU.ActiveCfg = ExportRelease|Any CPU
{349E0430-96B6-4673-8609-74416BA9B1F6}.ExportRelease|Any CPU.Build.0 = ExportRelease|Any CPU
EndGlobalSection
EndGlobal
+6
View File
@@ -0,0 +1,6 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/UserRules/=53eecf85_002Dd821_002D40e8_002Dac97_002Dfdb734542b84/@EntryIndexedValue">&lt;Policy&gt;&lt;Descriptor Staticness="Instance" AccessRightKinds="Protected, ProtectedInternal, Internal, Public, PrivateProtected" Description="Instance fields (not private)"&gt;&lt;ElementKinds&gt;&lt;Kind Name="FIELD" /&gt;&lt;Kind Name="READONLY_FIELD" /&gt;&lt;/ElementKinds&gt;&lt;/Descriptor&gt;&lt;Policy Inspect="True" WarnAboutPrefixesAndSuffixes="False" Prefix="" Suffix="" Style="aaBb" /&gt;&lt;/Policy&gt;</s:String>
<s:String x:Key="/Default/PatternsAndTemplates/LiveTemplates/Template/=0B2502BD29F5EC4798EEFD2950AA7E06/Description/@EntryValue">Godot Signal</s:String>
<s:String x:Key="/Default/PatternsAndTemplates/LiveTemplates/Template/=0B2502BD29F5EC4798EEFD2950AA7E06/Text/@EntryValue">[Signal]
public delegate void $SignalName$EventHandler($END$);</s:String>
<s:String x:Key="/Default/PatternsAndTemplates/LiveTemplates/Template/=0B2502BD29F5EC4798EEFD2950AA7E06/Field/=SignalName/Expression/@EntryValue">suggestVariableName()</s:String></wpf:ResourceDictionary>
+39
View File
@@ -0,0 +1,39 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AArea2D_002Ecs_002Fl_003A_002E_002E_003F_002E_002E_003F_002E_002E_003F_002E_002E_003F_002Econfig_003FJetBrains_003FRider2025_002E2_003Fresharper_002Dhost_003FSourcesCache_003Fefbd3244e8e427e388f389cc304f90548d56b58a375097a197ac2eb8259990bb_003FArea2D_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AArea3D_002Ecs_002Fl_003A_002E_002E_003F_002E_002E_003F_002E_002E_003F_002E_002E_003F_002Econfig_003FJetBrains_003FRider2024_002E3_003Fresharper_002Dhost_003FSourcesCache_003F8a54226fa2e1c9371a8091f24cfd744aef11fe6869527dc23b9b837623a29b9_003FArea3D_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AArray_00601_002Ecs_002Fl_003AC_0021_003FUsers_003FJonathan_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003Fe37dc1faf08a4d5ea030ad59bdf77522523400_003Fa3_003Fe272a3a7_003FArray_00601_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AAudioStreamPlayer2D_002Ecs_002Fl_003A_002E_002E_003F_002E_002E_003F_002E_002E_003F_002E_002E_003F_002Econfig_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FSourcesCache_003F848324b1c23114c3f5e8bbb5a42c4ade394c59a7a7a133a66b76581ca571_003FAudioStreamPlayer2D_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ABabushka_002Escripts_002ECSharp_002ECommon_002EFarming_002EFieldBehaviour2D_005FScriptMethods_002Egenerated_002Ecs_002Fl_003A_002E_002E_003F_002E_002E_003F_002E_002E_003F_002E_002E_003F_002Econfig_003FJetBrains_003FRider2025_002E2_003Fresharper_002Dhost_003FSourcesCache_003F75d11718f1abbc2572fd32e4b83acbec9d79ac_003FBabushka_002Escripts_002ECSharp_002ECommon_002EFarming_002EFieldBehaviour2D_005FScriptMethods_002Egenerated_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ABabushka_002Escripts_002ECSharp_002ECommon_002EFarming_002EVesnaBehaviour2D_005FScriptMethods_002Egenerated_002Ecs_002Fl_003AC_0021_003FUsers_003FJonathan_003FAppData_003FLocal_003FTemp_003FSourceGeneratedDocuments_003F9509A9D00FD8A232B5E86A84_003FGodot_002ESourceGenerators_003FGodot_002ESourceGenerators_002EScriptMethodsGenerator_003FBabushka_002Escripts_002ECSharp_002ECommon_002EFarming_002EVesnaBehaviour2D_005FScriptMethods_002Egenerated_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ABabushka_002Escripts_002ECSharp_002ECommon_002EFarming_002EVesnaBehaviour2D_005FScriptProperties_002Egenerated_002Ecs_002Fl_003AC_0021_003FUsers_003FJonathan_003FAppData_003FLocal_003FTemp_003FSourceGeneratedDocuments_003F9509A9D00FD8A232B5E86A84_003FGodot_002ESourceGenerators_003FGodot_002ESourceGenerators_002EScriptPropertiesGenerator_003FBabushka_002Escripts_002ECSharp_002ECommon_002EFarming_002EVesnaBehaviour2D_005FScriptProperties_002Egenerated_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ABabushka_002Escripts_002ECSharp_002ECommon_002EFarming_002EVesnaBehaviour2D_005FScriptProperties_002Egenerated_002Ecs_002Fl_003AC_0021_003FUsers_003FJonathan_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FSourcesCache_003F4298b0f293f987511fc1b7956ee691fd778f8378_003FBabushka_002Escripts_002ECSharp_002ECommon_002EFarming_002EVesnaBehaviour2D_005FScriptProperties_002Egenerated_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ABabushka_002Escripts_002ECSharp_002ECommon_002EFarming_002EVesnaBehaviour2D_005FScriptProperties_002Egenerated_002Ecs_002Fl_003AC_0021_003FUsers_003FJonathan_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FSourcesCache_003F4298b0f293f987511fc1b7956ee691fd778f8378_003FBabushka_002Escripts_002ECSharp_002ECommon_002EFarming_002EVesnaBehaviour2D_005FScriptProperties_002Egenerated_002Ecs_002Fz_003A2_002D1/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ABabushka_002Escripts_002ECSharp_002ECommon_002EQuest_002EQuestListItemUi_005FScriptMethods_002Egenerated_002Ecs_002Fl_003AC_0021_003FUsers_003FJonathan_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FSourcesCache_003F48fad7e7f3c9e292b3fdbddf9d363f0d1752aa_003FBabushka_002Escripts_002ECSharp_002ECommon_002EQuest_002EQuestListItemUi_005FScriptMethods_002Egenerated_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ABabushka_002Escripts_002ECSharp_002ECommon_002EQuest_002EQuestManager_005FScriptSignals_002Egenerated_002Ecs_002Fl_003AC_0021_003FUsers_003FJonathan_003FAppData_003FLocal_003FTemp_003FSourceGeneratedDocuments_003F9509A9D00FD8A232B5E86A84_003FGodot_002ESourceGenerators_003FGodot_002ESourceGenerators_002EScriptSignalsGenerator_003FBabushka_002Escripts_002ECSharp_002ECommon_002EQuest_002EQuestManager_005FScriptSignals_002Egenerated_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ACanvasItem_002Ecs_002Fl_003AC_0021_003FUsers_003FJonathan_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FSourcesCache_003Fef7b819b226fab796d1dfe66d415dd7510bcac87675020ddb8f03a828e763_003FCanvasItem_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ACastHelpers_002Ecs_002Fl_003AC_0021_003FUsers_003FJonathan_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FSourcesCache_003F3c92637ae2e83da0a63791071c41eae291d594156062866d8621b7ed7245c_003FCastHelpers_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ACastHelpers_002Ecs_002Fl_003A_002E_002E_003F_002E_002E_003F_002E_002E_003F_002E_002E_003F_002Econfig_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003Fd111abf504bf42b5968a609b168fd093b2e200_003Fbb_003F1c116fcd_003FCastHelpers_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ACharacterBody2D_002Ecs_002Fl_003A_002E_002E_003F_002E_002E_003F_002E_002E_003F_002E_002E_003F_002Econfig_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FSourcesCache_003Fbba0bbd7a98ee58286e9484fbe86e01afff6232283f6efd3556eb7116453_003FCharacterBody2D_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ACount_002Ecs_002Fl_003AC_0021_003FUsers_003FJonathan_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FSourcesCache_003Ffe5a7cee5a1771b89077bd73292de84439b4f816799e2ad6c2615c6ff5bd748e_003FCount_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ADictionary_00602_002Ecs_002Fl_003A_002E_002E_003F_002E_002E_003F_002E_002E_003F_002E_002E_003F_002E_002E_003F_002E_002E_003Fhome_003Fjonathan_003F_002Econfig_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003Fe37dc1faf08a4d5ea030ad59bdf77522523400_003Fd4_003Fbd338aeb_003FDictionary_00602_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AExportToolButtonAttribute_002Ecs_002Fl_003A_002E_002E_003F_002E_002E_003F_002E_002E_003F_002E_002E_003F_002Econfig_003FJetBrains_003FRider2025_002E2_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003Fe37dc1faf08a4d5ea030ad59bdf77522523400_003F31_003F3e05ef15_003FExportToolButtonAttribute_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AGD_005Fconstants_002Ecs_002Fl_003A_002E_002E_003F_002E_002E_003F_002E_002E_003F_002E_002E_003F_002Econfig_003FJetBrains_003FRider2025_002E2_003Fresharper_002Dhost_003FSourcesCache_003Fdf61b6148ca71eef8cf4e56545a9319fd2647f05d2f959dad42d9fcbe95192_003FGD_005Fconstants_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AMustBeVariantAttribute_002Ecs_002Fl_003A_002E_002E_003F_002E_002E_003F_002E_002E_003F_002E_002E_003F_002Econfig_003FJetBrains_003FRider2025_002E2_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003Fe37dc1faf08a4d5ea030ad59bdf77522523400_003Fda_003Fbb06d681_003FMustBeVariantAttribute_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AGD_005Fconstants_002Ecs_002Fl_003AC_0021_003FUsers_003FJonathan_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FSourcesCache_003F4ef0bac6437b6a9567d44f62ae567d854fa7b8513ef7139ef349b49768bc9df_003FGD_005Fconstants_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ANode_002Ecs_002Fl_003A_002E_002E_003F_002E_002E_003F_002E_002E_003F_002E_002E_003F_002Econfig_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FSourcesCache_003Ff1d69ec2da76ccf9bc8a75c8e0fdca9a7ba1adf8c8c9d5047e2fa5991c02eca_003FNode_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AResourceLoader_002Ecs_002Fl_003AC_0021_003FUsers_003FJonathan_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FSourcesCache_003F9f4e8eb124d11f8219cb513a19bed22b2120ed29f9d6785ba56e3367b48d581_003FResourceLoader_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AResourceLoader_002Ecs_002Fl_003A_002E_002E_003F_002E_002E_003F_002E_002E_003F_002E_002E_003F_002Econfig_003FJetBrains_003FRider2025_002E2_003Fresharper_002Dhost_003FSourcesCache_003F9f4e8eb124d11f8219cb513a19bed22b2120ed29f9d6785ba56e3367b48d581_003FResourceLoader_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AThrowHelper_002Ecs_002Fl_003AC_0021_003FUsers_003FJonathan_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FSourcesCache_003Fc7102cd0ffb8973777e61b1942c3fffac7e14016a511d055c3adf73ff91748_003FThrowHelper_002Ecs/@EntryIndexedValue">ForceIncluded</s:String></wpf:ResourceDictionary>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AEnumerable_002Ecs_002Fl_003AC_0021_003FUsers_003FJonathan_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003F76fabf6f8acf4a0099cae0bcf8b218467f10_003F7e_003F28cee476_003FEnumerable_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AGD_005Fconstants_002Ecs_002Fl_003AC_0021_003FUsers_003FJonathan_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FSourcesCache_003F4ef0bac6437b6a9567d44f62ae567d854fa7b8513ef7139ef349b49768bc9df_003FGD_005Fconstants_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ANode_002Ecs_002Fl_003A_002E_002E_003F_002E_002E_003F_002E_002E_003F_002E_002E_003F_002Econfig_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FSourcesCache_003Ff1d69ec2da76ccf9bc8a75c8e0fdca9a7ba1adf8c8c9d5047e2fa5991c02eca_003FNode_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ANullable_002Ecs_002Fl_003AC_0021_003FUsers_003FJonathan_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FSourcesCache_003F5acc345db3c207bc9d886a36ff14867ef8d65557432172c2a42f19aeac04d1b_003FNullable_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AResourceLoader_002Ecs_002Fl_003AC_0021_003FUsers_003FJonathan_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FSourcesCache_003F9f4e8eb124d11f8219cb513a19bed22b2120ed29f9d6785ba56e3367b48d581_003FResourceLoader_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ASceneTree_002Ecs_002Fl_003AC_0021_003FUsers_003FJonathan_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FSourcesCache_003F8d6960554e939a669841b1ece03d27df4ab42f92bb80be3767eaec8cdaccf84b_003FSceneTree_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AShape2D_002Ecs_002Fl_003AC_0021_003FUsers_003FJonathan_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FSourcesCache_003F3671dbbd9b17cdf2bf9075b468b6bd7e3ab13fc3be7a116484085d3b6cc9fe_003FShape2D_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AThrowHelper_002Ecs_002Fl_003AC_0021_003FUsers_003FJonathan_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FSourcesCache_003Fc7102cd0ffb8973777e61b1942c3fffac7e14016a511d055c3adf73ff91748_003FThrowHelper_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/Environment/UnitTesting/UnitTestSessionStore/Sessions/=bc5a80e4_002D7ba6_002D4f7d_002Db896_002Dc591eec7ab12/@EntryIndexedValue">&lt;SessionState ContinuousTestingMode="0" IsActive="True" Name="Tests" xmlns="urn:schemas-jetbrains-com:jetbrains-ut-session"&gt;&#xD;
&lt;TestAncestor&gt;&#xD;
&lt;TestId&gt;NUnit3x::A6EF2269-9E64-40D4-BA0A-33CB234E2503::net9.0::BabushkaTest.Tests&lt;/TestId&gt;&#xD;
&lt;/TestAncestor&gt;&#xD;
&lt;/SessionState&gt;</s:String></wpf:ResourceDictionary>
Binary file not shown.
-23
View File
@@ -1,23 +0,0 @@
Game Parameter ID Name Wwise Object Path Notes
504532776 Brick \Factory Acoustic Textures\Textures\Brick
513139656 Mountain \Factory Acoustic Textures\Textures\Mountain
841620460 Concrete \Factory Acoustic Textures\Textures\Concrete
1755085759 Wood_Deep \Factory Acoustic Textures\Textures\Wood_Deep
1873957695 Anechoic \Factory Acoustic Textures\Textures\Anechoic
1970351858 Fabric \Factory Acoustic Textures\Textures\Fabric
2058049674 Wood \Factory Acoustic Textures\Textures\Wood
2412606308 Carpet \Factory Acoustic Textures\Textures\Carpet
2637588553 Tile \Factory Acoustic Textures\Textures\Tile
2928161104 Curtains \Factory Acoustic Textures\Textures\Curtains
3195498748 Cork_Tiles \Factory Acoustic Textures\Textures\Cork_Tiles
3670307564 Drywall \Factory Acoustic Textures\Textures\Drywall
4168643977 Acoustic_Banner \Factory Acoustic Textures\Textures\Acoustic_Banner
4262522749 Wood_Bright \Factory Acoustic Textures\Textures\Wood_Bright
Audio Bus ID Name Wwise Object Path Notes
3803692087 Master Audio Bus \Default Work Unit\Master Audio Bus
Audio Devices ID Name Type Notes
2317455096 No_Output No Output
3859886410 System System
Binary file not shown.
-11
View File
@@ -1,11 +0,0 @@
Event ID Name Wwise Object Path Notes
3157003241 Test \Default Work Unit\Test
3833651337 Jump \Default Work Unit\Jump
In Memory Audio ID Name Audio source file Wwise Object Path Notes Data Size
143687057 SFX_Jump_02 D:\Game Projects\Babushka\Babushka_Wwise\Babushka\.cache\Windows\SFX\SFX_Jump_02_818F3B66.wem \Actor-Mixer Hierarchy\Default Work Unit\Jump\SFX_Jump_02 183312
190522504 SFX_Error D:\Game Projects\Babushka\Babushka_Wwise\Babushka\.cache\Windows\SFX\SFX_Error_818F3B66.wem \Actor-Mixer Hierarchy\Default Work Unit\SFX_Error 29040
260161493 SFX_Jump_03 D:\Game Projects\Babushka\Babushka_Wwise\Babushka\.cache\Windows\SFX\SFX_Jump_03_818F3B66.wem \Actor-Mixer Hierarchy\Default Work Unit\Jump\SFX_Jump_03 159880
413062689 SFX_Jump_05 D:\Game Projects\Babushka\Babushka_Wwise\Babushka\.cache\Windows\SFX\SFX_Jump_05_818F3B66.wem \Actor-Mixer Hierarchy\Default Work Unit\Jump\SFX_Jump_05 179052
963898419 SFX_Jump_04 D:\Game Projects\Babushka\Babushka_Wwise\Babushka\.cache\Windows\SFX\SFX_Jump_04_818F3B66.wem \Actor-Mixer Hierarchy\Default Work Unit\Jump\SFX_Jump_04 174792
@@ -1,32 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<PlatformInfo>
<Platform Name="Windows" BasePlatform="Windows" Generator="2023.1.6.8555"/>
<RootPaths>
<ProjectRoot>../../../Babushka_Wwise/Babushka</ProjectRoot>
<SourceFilesRoot>../../../Babushka_Wwise/Babushka/.cache/Windows</SourceFilesRoot>
<SoundBanksRoot>.</SoundBanksRoot>
<ExternalSourcesInputFile></ExternalSourcesInputFile>
<ExternalSourcesOutputRoot>../../../Babushka_Wwise/Babushka/GeneratedSoundBanks/Windows</ExternalSourcesOutputRoot>
</RootPaths>
<DefaultAlign>16</DefaultAlign>
<Settings>
<AutoSoundBankDefinition>false</AutoSoundBankDefinition>
<CopyLooseStreamedMediaFiles>true</CopyLooseStreamedMediaFiles>
<SubFoldersForGeneratedFiles>false</SubFoldersForGeneratedFiles>
<RemoveUnusedGeneratedFiles>true</RemoveUnusedGeneratedFiles>
<SourceControlGeneratedFiles>false</SourceControlGeneratedFiles>
<GenerateHeaderFile>false</GenerateHeaderFile>
<GenerateContentTxtFile>true</GenerateContentTxtFile>
<GenerateMetadataXML>true</GenerateMetadataXML>
<GenerateMetadataJSON>false</GenerateMetadataJSON>
<GenerateAllBanksMetadata>true</GenerateAllBanksMetadata>
<GeneratePerBankMetadata>false</GeneratePerBankMetadata>
<UseSoundBankNames>true</UseSoundBankNames>
<AllowExceedingMaxSize>false</AllowExceedingMaxSize>
<MaxAttenuationInfo>false</MaxAttenuationInfo>
<EstimatedDurationInfo>false</EstimatedDurationInfo>
<PrintObjectGuid>false</PrintObjectGuid>
<PrintObjectPath>false</PrintObjectPath>
</Settings>
<FileHash>{0D5998DA-3744-A3F7-BE47-D3829537549B}</FileHash>
</PlatformInfo>
@@ -1,8 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<PluginInfo Platform="Windows" BasePlatform="Windows">
<PluginLibs>
<PluginLib LibName="System" LibId="11403271" Type="AudioDevice"/>
<PluginLib LibName="No Output" LibId="11862023" Type="AudioDevice"/>
</PluginLibs>
<FileHash>{0A13F4BA-B100-584C-1D1C-B9267B7D267A}</FileHash>
</PluginInfo>
@@ -1,208 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<SoundBanksInfo Platform="Windows" BasePlatform="Windows" SchemaVersion="16" SoundBankVersion="150">
<RootPaths>
<ProjectRoot>../../../Babushka_Wwise/Babushka</ProjectRoot>
<SourceFilesRoot>../../../Babushka_Wwise/Babushka/.cache/Windows</SourceFilesRoot>
<SoundBanksRoot>.</SoundBanksRoot>
<ExternalSourcesInputFile></ExternalSourcesInputFile>
<ExternalSourcesOutputRoot>../../../Babushka_Wwise/Babushka/GeneratedSoundBanks/Windows</ExternalSourcesOutputRoot>
</RootPaths>
<DialogueEvents/>
<SoundBanks>
<SoundBank Id="1355168291" Type="User" Language="SFX" Hash="{AB9F0343-CD85-AB9E-58D8-B63D74A50185}">
<ShortName>Init</ShortName>
<Path>Init.bnk</Path>
<Plugins>
<AudioDevices>
<Plugin Id="2317455096" Name="No_Output" LibName="No Output" LibId="11862023"/>
<Plugin Id="3859886410" Name="System" LibName="System" LibId="11403271"/>
</AudioDevices>
</Plugins>
<Busses>
<Bus Id="3803692087" Name="Master Audio Bus"/>
</Busses>
<GameParameters>
<GameParameter Id="822163944" Name="SS_Air_RPM"/>
<GameParameter Id="1029930033" Name="SS_Air_Fury"/>
<GameParameter Id="1351367891" Name="SS_Air_Fear"/>
<GameParameter Id="2648548617" Name="SS_Air_Month"/>
<GameParameter Id="3002758120" Name="SS_Air_Freefall"/>
<GameParameter Id="3074696722" Name="SS_Air_Size"/>
<GameParameter Id="3203397129" Name="SS_Air_TimeOfDay"/>
<GameParameter Id="3715662592" Name="SS_Air_Storm"/>
<GameParameter Id="3847924954" Name="SS_Air_Presence"/>
<GameParameter Id="4160247818" Name="SS_Air_Turbulence"/>
</GameParameters>
<AcousticTextures>
<AcousticTexture Id="504532776" Name="Brick">
<Properties>
<Property Name="AbsorptionLow" Type="Real32" Value="12"/>
<Property Name="AbsorptionMidLow" Type="Real32" Value="18"/>
<Property Name="AbsorptionMidHigh" Type="Real32" Value="23"/>
<Property Name="AbsorptionHigh" Type="Real32" Value="35"/>
<Property Name="Scattering" Type="Real32" Value="0"/>
</Properties>
</AcousticTexture>
<AcousticTexture Id="513139656" Name="Mountain">
<Properties>
<Property Name="AbsorptionLow" Type="Real32" Value="0"/>
<Property Name="AbsorptionMidLow" Type="Real32" Value="0"/>
<Property Name="AbsorptionMidHigh" Type="Real32" Value="0"/>
<Property Name="AbsorptionHigh" Type="Real32" Value="0"/>
<Property Name="Scattering" Type="Real32" Value="0"/>
</Properties>
</AcousticTexture>
<AcousticTexture Id="841620460" Name="Concrete">
<Properties>
<Property Name="AbsorptionLow" Type="Real32" Value="6"/>
<Property Name="AbsorptionMidLow" Type="Real32" Value="6"/>
<Property Name="AbsorptionMidHigh" Type="Real32" Value="6"/>
<Property Name="AbsorptionHigh" Type="Real32" Value="14"/>
<Property Name="Scattering" Type="Real32" Value="0"/>
</Properties>
</AcousticTexture>
<AcousticTexture Id="1755085759" Name="Wood_Deep">
<Properties>
<Property Name="AbsorptionLow" Type="Real32" Value="1"/>
<Property Name="AbsorptionMidLow" Type="Real32" Value="8"/>
<Property Name="AbsorptionMidHigh" Type="Real32" Value="20"/>
<Property Name="AbsorptionHigh" Type="Real32" Value="35"/>
<Property Name="Scattering" Type="Real32" Value="0"/>
</Properties>
</AcousticTexture>
<AcousticTexture Id="1873957695" Name="Anechoic">
<Properties>
<Property Name="AbsorptionLow" Type="Real32" Value="100"/>
<Property Name="AbsorptionMidLow" Type="Real32" Value="100"/>
<Property Name="AbsorptionMidHigh" Type="Real32" Value="100"/>
<Property Name="AbsorptionHigh" Type="Real32" Value="100"/>
<Property Name="Scattering" Type="Real32" Value="0"/>
</Properties>
</AcousticTexture>
<AcousticTexture Id="1970351858" Name="Fabric">
<Properties>
<Property Name="AbsorptionLow" Type="Real32" Value="3"/>
<Property Name="AbsorptionMidLow" Type="Real32" Value="13"/>
<Property Name="AbsorptionMidHigh" Type="Real32" Value="48"/>
<Property Name="AbsorptionHigh" Type="Real32" Value="72"/>
<Property Name="Scattering" Type="Real32" Value="0"/>
</Properties>
</AcousticTexture>
<AcousticTexture Id="2058049674" Name="Wood">
<Properties>
<Property Name="AbsorptionLow" Type="Real32" Value="32"/>
<Property Name="AbsorptionMidLow" Type="Real32" Value="25"/>
<Property Name="AbsorptionMidHigh" Type="Real32" Value="20"/>
<Property Name="AbsorptionHigh" Type="Real32" Value="35"/>
<Property Name="Scattering" Type="Real32" Value="0"/>
</Properties>
</AcousticTexture>
<AcousticTexture Id="2412606308" Name="Carpet">
<Properties>
<Property Name="AbsorptionLow" Type="Real32" Value="46"/>
<Property Name="AbsorptionMidLow" Type="Real32" Value="45"/>
<Property Name="AbsorptionMidHigh" Type="Real32" Value="76"/>
<Property Name="AbsorptionHigh" Type="Real32" Value="100"/>
<Property Name="Scattering" Type="Real32" Value="0"/>
</Properties>
</AcousticTexture>
<AcousticTexture Id="2637588553" Name="Tile">
<Properties>
<Property Name="AbsorptionLow" Type="Real32" Value="67"/>
<Property Name="AbsorptionMidLow" Type="Real32" Value="41"/>
<Property Name="AbsorptionMidHigh" Type="Real32" Value="12"/>
<Property Name="AbsorptionHigh" Type="Real32" Value="0"/>
<Property Name="Scattering" Type="Real32" Value="0"/>
</Properties>
</AcousticTexture>
<AcousticTexture Id="2928161104" Name="Curtains">
<Properties>
<Property Name="AbsorptionLow" Type="Real32" Value="7"/>
<Property Name="AbsorptionMidLow" Type="Real32" Value="60"/>
<Property Name="AbsorptionMidHigh" Type="Real32" Value="0"/>
<Property Name="AbsorptionHigh" Type="Real32" Value="84"/>
<Property Name="Scattering" Type="Real32" Value="0"/>
</Properties>
</AcousticTexture>
<AcousticTexture Id="3195498748" Name="Cork_Tiles">
<Properties>
<Property Name="AbsorptionLow" Type="Real32" Value="14"/>
<Property Name="AbsorptionMidLow" Type="Real32" Value="30"/>
<Property Name="AbsorptionMidHigh" Type="Real32" Value="73"/>
<Property Name="AbsorptionHigh" Type="Real32" Value="100"/>
<Property Name="Scattering" Type="Real32" Value="0"/>
</Properties>
</AcousticTexture>
<AcousticTexture Id="3670307564" Name="Drywall">
<Properties>
<Property Name="AbsorptionLow" Type="Real32" Value="2"/>
<Property Name="AbsorptionMidLow" Type="Real32" Value="2"/>
<Property Name="AbsorptionMidHigh" Type="Real32" Value="2"/>
<Property Name="AbsorptionHigh" Type="Real32" Value="2"/>
<Property Name="Scattering" Type="Real32" Value="0"/>
</Properties>
</AcousticTexture>
<AcousticTexture Id="4168643977" Name="Acoustic_Banner">
<Properties>
<Property Name="AbsorptionLow" Type="Real32" Value="37"/>
<Property Name="AbsorptionMidLow" Type="Real32" Value="100"/>
<Property Name="AbsorptionMidHigh" Type="Real32" Value="100"/>
<Property Name="AbsorptionHigh" Type="Real32" Value="100"/>
<Property Name="Scattering" Type="Real32" Value="0"/>
</Properties>
</AcousticTexture>
<AcousticTexture Id="4262522749" Name="Wood_Bright">
<Properties>
<Property Name="AbsorptionLow" Type="Real32" Value="32"/>
<Property Name="AbsorptionMidLow" Type="Real32" Value="25"/>
<Property Name="AbsorptionMidHigh" Type="Real32" Value="10"/>
<Property Name="AbsorptionHigh" Type="Real32" Value="9"/>
<Property Name="Scattering" Type="Real32" Value="0"/>
</Properties>
</AcousticTexture>
</AcousticTextures>
</SoundBank>
<SoundBank Id="3161908922" Type="User" Language="SFX" Hash="{9878BE72-4D56-F2EF-127E-6C071B346441}">
<ShortName>Main</ShortName>
<Path>Main.bnk</Path>
<Media>
<File Id="143687057" Language="SFX" Streaming="false" Location="Memory">
<ShortName>SFX_Jump_02.wav</ShortName>
<CachePath>SFX/SFX_Jump_02_818F3B66.wem</CachePath>
</File>
<File Id="190522504" Language="SFX" Streaming="false" Location="Memory">
<ShortName>SFX_Error.wav</ShortName>
<CachePath>SFX/SFX_Error_818F3B66.wem</CachePath>
</File>
<File Id="260161493" Language="SFX" Streaming="false" Location="Memory">
<ShortName>SFX_Jump_03.wav</ShortName>
<CachePath>SFX/SFX_Jump_03_818F3B66.wem</CachePath>
</File>
<File Id="413062689" Language="SFX" Streaming="false" Location="Memory">
<ShortName>SFX_Jump_05.wav</ShortName>
<CachePath>SFX/SFX_Jump_05_818F3B66.wem</CachePath>
</File>
<File Id="963898419" Language="SFX" Streaming="false" Location="Memory">
<ShortName>SFX_Jump_04.wav</ShortName>
<CachePath>SFX/SFX_Jump_04_818F3B66.wem</CachePath>
</File>
</Media>
<Events>
<Event Id="3833651337" Name="Jump">
<MediaRefs>
<MediaRef Id="143687057"/>
<MediaRef Id="260161493"/>
<MediaRef Id="413062689"/>
<MediaRef Id="963898419"/>
</MediaRefs>
</Event>
<Event Id="3157003241" Name="Test">
<MediaRefs>
<MediaRef Id="190522504"/>
</MediaRefs>
</Event>
</Events>
</SoundBank>
</SoundBanks>
<FileHash>{EC2B4A58-41D2-3263-26FD-0EC5819FA29C}</FileHash>
</SoundBanksInfo>
-86
View File
@@ -1,86 +0,0 @@
class_name AK
class EVENTS:
const JUMP = 3833651337
const TEST = 3157003241
const _dict = {
"Jump": JUMP,
"Test": TEST
}
class STATES:
const _dict = {}
class SWITCHES:
const _dict = {}
class GAME_PARAMETERS:
const SS_AIR_TIMEOFDAY = 3203397129
const SS_AIR_TURBULENCE = 4160247818
const SS_AIR_MONTH = 2648548617
const SS_AIR_PRESENCE = 3847924954
const SS_AIR_FURY = 1029930033
const SS_AIR_STORM = 3715662592
const SS_AIR_FREEFALL = 3002758120
const SS_AIR_RPM = 822163944
const SS_AIR_SIZE = 3074696722
const SS_AIR_FEAR = 1351367891
const _dict = {
"SS_Air_TimeOfDay": SS_AIR_TIMEOFDAY,
"SS_Air_Turbulence": SS_AIR_TURBULENCE,
"SS_Air_Month": SS_AIR_MONTH,
"SS_Air_Presence": SS_AIR_PRESENCE,
"SS_Air_Fury": SS_AIR_FURY,
"SS_Air_Storm": SS_AIR_STORM,
"SS_Air_Freefall": SS_AIR_FREEFALL,
"SS_Air_RPM": SS_AIR_RPM,
"SS_Air_Size": SS_AIR_SIZE,
"SS_Air_Fear": SS_AIR_FEAR
}
class TRIGGERS:
const _dict = {}
class BANKS:
const INIT = 1355168291
const MAIN = 3161908922
const _dict = {
"Init": INIT,
"Main": MAIN
}
class BUSSES:
const MASTER_AUDIO_BUS = 3803692087
const _dict = {
"Master Audio Bus": MASTER_AUDIO_BUS
}
class AUX_BUSSES:
const _dict = {}
class AUDIO_DEVICES:
const SYSTEM = 3859886410
const NO_OUTPUT = 2317455096
const _dict = {
"System": SYSTEM,
"No_Output": NO_OUTPUT
}
class EXTERNAL_SOURCES:
const _dict = {}
-47
View File
@@ -1,47 +0,0 @@
[gd_scene format=3 uid="uid://bc0hrnjouuhb4"]
[node name="Node2D" type="Node2D"]
[node name="Button" type="Button" parent="."]
offset_left = 266.0
offset_top = 141.0
offset_right = 844.0
offset_bottom = 391.0
[node name="Button2" type="Button" parent="."]
offset_left = 58.0
offset_top = 29.0
offset_right = 220.0
offset_bottom = 210.0
[node name="AkBank_Init" type="AkBank" parent="."]
bank = {
"id": 1355168291,
"name": "Init"
}
load_on = 1
[node name="AkBank_Main" type="AkBank" parent="AkBank_Init"]
bank = {
"id": 3161908922,
"name": "Main"
}
load_on = 1
[node name="AkEvent_TestEvent" type="AkEvent2D" parent="AkBank_Init/AkBank_Main"]
event = {
"id": 3157003241,
"name": "Test"
}
position = Vector2(266, 141)
[node name="AkEvent_Jump" type="AkEvent2D" parent="AkBank_Init/AkBank_Main"]
event = {
"id": 3833651337,
"name": "Jump"
}
[node name="AkListener2D" type="AkListener2D" parent="."]
[connection signal="pressed" from="Button" to="AkBank_Init/AkBank_Main/AkEvent_TestEvent" method="post_event"]
[connection signal="pressed" from="Button2" to="AkBank_Init/AkBank_Main/AkEvent_Jump" method="post_event"]
+1
View File
@@ -0,0 +1 @@
<svg height="24" viewBox="0 0 16 16" width="24" xmlns="http://www.w3.org/2000/svg"><path d="m8 1a1 1 0 0 0 -1 1v5h-2c-1.108 0-2 .892-2 2v1h10v-1c0-1.108-.892-2-2-2h-2v-5a1 1 0 0 0 -1-1zm-5 10v4l10-1v-3z" fill="#e0e0e0"/></svg>

After

Width:  |  Height:  |  Size: 227 B

+43
View File
@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bmnff63evbdhv"
path="res://.godot/imported/Clear.svg-d661617e27b91e3580171e3447fde514.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/SignalVisualizer/Clear.svg"
dest_files=["res://.godot/imported/Clear.svg-d661617e27b91e3580171e3447fde514.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false
@@ -0,0 +1,58 @@
class_name SignalConnection extends Object
# Properties
# |===================================|
# |===================================|
# |===================================|
var signal_id: int
var source_node_name: String
var destination_node_name: String
var method_signature: String
var description: String :
get:
return "ID: {signal_id} Source: {source_node_name} Destination: {destination_node_name} Method: {method_signature}".format({
"signal_id": signal_id,
"source_node_name": source_node_name,
"destination_node_name": destination_node_name,
"method_signature": method_signature,
})
var dictionary_key: String :
get:
return "{signal_id}__{source_node_name}__{destination_node_name}__{method_signature}".format({ "signal_id": signal_id, "source_node_name": source_node_name, "destination_node_name": destination_node_name, "method_signature": method_signature.replace("::", "_") })
var dictionary_representation: Dictionary :
get:
return {
"signal_id": signal_id,
"source_node_name": source_node_name,
"destination_node_name": destination_node_name,
"method_signature": method_signature,
}
# Lifecycle
# |===================================|
# |===================================|
# |===================================|
func _init(signal_id: int, source_node_name: String, destination_node_name: String, method_signature: String):
self.signal_id = signal_id
self.source_node_name = source_node_name
self.destination_node_name = destination_node_name
self.method_signature = method_signature
# Signals
# |===================================|
# |===================================|
# |===================================|
# Methods
# |===================================|
# |===================================|
# |===================================|
@@ -0,0 +1 @@
uid://dm613ct57qfwa
@@ -0,0 +1,56 @@
class_name SignalDescription extends Object
# Properties
# |===================================|
# |===================================|
# |===================================|
var id: int:
get:
if _source_id != null:
return _source_id
return get_instance_id()
var node_name: String
var signal_name: String
var description: String :
get:
return "ID: {id} Node: {node_name} Signal: {signal_name}".format({
"id": id,
"node_name": node_name,
"signal_name": signal_name,
})
var dictionary_representation: Dictionary :
get:
return {
"id": id,
"node_name": node_name,
"signal_name": signal_name,
}
var _source_id = null
# Lifecycle
# |===================================|
# |===================================|
# |===================================|
func _init(node_name: String, signal_name: String):
self.node_name = node_name
self.signal_name = signal_name
# Signals
# |===================================|
# |===================================|
# |===================================|
# Methods
# |===================================|
# |===================================|
# |===================================|
@@ -0,0 +1 @@
uid://dvgsocxisw3ae
@@ -0,0 +1,53 @@
class_name SignalGraph extends Object
# Properties
# |===================================|
# |===================================|
# |===================================|
var name: String
var signals: Array[SignalDescription]
var edges: Array[SignalConnection]
var description: String :
get:
return "Signals: {signals}\nEdges: {edges}".format({
"signals": signals.map(func (item): return item.description),
"edges": edges.map(func (item): return item.description),
})
var dictionary_representation: Dictionary :
get:
return {
"name": name,
"signals": signals.map(func (element): return element.dictionary_representation),
"edges": edges.map(func (element): return element.dictionary_representation),
}
# Lifecycle
# |===================================|
# |===================================|
# |===================================|
func _init(name: String, signals: Array[SignalDescription] = [], edges: Array[SignalConnection] = []):
self.name = name
self.signals = signals
self.edges = edges
# Signals
# |===================================|
# |===================================|
# |===================================|
# Methods
# |===================================|
# |===================================|
# |===================================|
func get_source_signal_for_edge(edge: SignalConnection) -> SignalDescription:
var result = signals.filter(func (item): return item.id == edge.signal_id)
if result.size() > 0:
return result[0]
return null
@@ -0,0 +1 @@
uid://2qj81iy1le0a
@@ -0,0 +1,170 @@
@tool
class_name SignalGraphUtility
static var SignalGraphNode = preload("res://addons/SignalVisualizer/Visualizer/signal_graph_node.tscn")
static var GraphNodeItem = preload("res://addons/SignalVisualizer/Visualizer/signal_graph_node_item.tscn")
const SOURCE_COLOR: Color = Color.SKY_BLUE
const DESTINATION_COLOR: Color = Color.CORAL
const CONNECTION_TYPE: int = 0
#region Methods
static func create_signal_graph(name: String, signals: Array, edges: Array) -> SignalGraph:
var signal_graph = SignalGraph.new(name)
for signal_item in signals:
var new_signal_description = SignalDescription.new(signal_item.node_name, signal_item.signal_name)
new_signal_description._source_id = signal_item.id
signal_graph.signals.append(new_signal_description)
for connection in edges:
var new_edge = SignalConnection.new(connection.signal_id, connection.source_node_name, connection.destination_node_name, connection.method_signature)
signal_graph.edges.append(new_edge)
return signal_graph
static func create_signal_graph_from_node(root_node: Node, is_persistent_only: bool = false):
var signal_graph = SignalGraph.new(root_node.scene_file_path)
var all_nodes: Array[Node] = _gather_nodes_from_node(root_node)
var signals: Array[SignalDescription] = []
var edges: Array[SignalConnection] = []
for node in all_nodes:
for signal_item in node.get_signal_list():
var existing_signals = []
var connection_list = node.get_signal_connection_list(signal_item["name"] as String)
if connection_list.size() > 0:
for connection in connection_list:
var enabled_flags = connection["flags"] == CONNECT_PERSIST if is_persistent_only else true
var should_display_connection = "name" in connection["callable"].get_object() and not connection["callable"].get_object().name.begins_with("@") and enabled_flags
if should_display_connection:
var signal_description: SignalDescription
var filtered_signals = existing_signals.filter(func (element): return element.signal_name == signal_item.name and element.node_name == node.name)
if filtered_signals.size() == 1:
signal_description = filtered_signals[0]
else:
signal_description = SignalDescription.new(node.name, signal_item.name)
existing_signals.append(signal_description)
signals.append(signal_description)
var signal_edge = SignalConnection.new(signal_description.id, signal_description.node_name, connection["callable"].get_object().name, connection["callable"].get_method())
if not signal_graph.edges.any(func (element): return element.signal_id == signal_description.id):
edges.append(signal_edge)
var temp_signals = {}
for item in signals:
temp_signals[item.id] = item
var temp_edges = {}
for item in edges:
temp_edges[item.dictionary_key] = item
signal_graph.signals.assign(temp_signals.keys().map(func (key): return temp_signals[key]))
signal_graph.edges.assign(temp_edges.keys().map(func (key): return temp_edges[key]))
return signal_graph
static func generate_signal_graph_nodes(signal_graph: SignalGraph, graph_node: GraphEdit, open_script_callable: Callable):
var graph_nodes: Dictionary = {}
for signal_item in signal_graph.signals:
var current_graph_node: SignalGraphNode
if graph_nodes.has(signal_item.node_name):
current_graph_node = graph_nodes[signal_item.node_name]
if not current_graph_node:
current_graph_node = SignalGraphNode.instantiate()
current_graph_node.title = signal_item.node_name
current_graph_node.name = _get_graph_node_name(signal_item.node_name)
graph_node.add_child(current_graph_node)
graph_nodes[signal_item.node_name] = current_graph_node
for edge in signal_graph.edges:
var destination_graph_node: SignalGraphNode
if graph_nodes.has(edge.destination_node_name):
destination_graph_node = graph_nodes[edge.destination_node_name]
else:
destination_graph_node = SignalGraphNode.instantiate()
destination_graph_node.title = edge.destination_node_name
destination_graph_node.name = _get_graph_node_name(edge.destination_node_name)
graph_node.add_child(destination_graph_node)
graph_nodes[edge.destination_node_name] = destination_graph_node
var source_signal = signal_graph.get_source_signal_for_edge(edge)
if source_signal != null:
var source_graph_node: SignalGraphNode = graph_nodes[edge.source_node_name] as SignalGraphNode
if not source_graph_node.has_source_signal_description(source_signal.signal_name, edge.destination_node_name):
var source_signal_label = Label.new()
source_signal_label.text = source_signal.signal_name
source_signal_label.name = "source_" + source_signal.signal_name + "_" + edge.destination_node_name
source_graph_node.add_child(source_signal_label)
var destination_signal_name = "destination_" + source_signal.signal_name + "_" + edge.method_signature.replace("::", "__")
var has_destination = destination_graph_node.has_destination_signal_description(source_signal.signal_name, edge.method_signature)
if not has_destination:
var destination_signal_item = GraphNodeItem.instantiate()
destination_signal_item.signal_data = SignalGraphNodeItem.Metadata.new(source_signal.signal_name, edge.method_signature, edge.destination_node_name)
destination_signal_item.text = edge.method_signature
destination_signal_item.name = destination_signal_name
destination_signal_item.open_script.connect(open_script_callable)
destination_graph_node.add_child(destination_signal_item)
for edge in signal_graph.edges:
var source_signal = signal_graph.get_source_signal_for_edge(edge)
if source_signal != null:
var source_graph_node: SignalGraphNode = graph_nodes[edge.source_node_name] as SignalGraphNode
var destination_graph_node: SignalGraphNode = graph_nodes[edge.destination_node_name] as SignalGraphNode
var from_port = source_graph_node.get_source_slot(source_signal.signal_name, edge.destination_node_name)
var to_port = destination_graph_node.get_destination_slot(source_signal.signal_name, edge.method_signature)
source_graph_node.set_slot(from_port, false, CONNECTION_TYPE, Color.BLACK, true, CONNECTION_TYPE, SOURCE_COLOR)
destination_graph_node.set_slot(to_port, true, CONNECTION_TYPE, DESTINATION_COLOR, false, CONNECTION_TYPE, Color.BLACK)
var from_slot_index = source_graph_node.get_next_source_slot(source_signal.signal_name, edge.destination_node_name)
var to_slot_index = destination_graph_node.get_next_destination_slot(source_signal.signal_name, edge.method_signature)
if from_port >= 0 and to_port >= 0:
graph_node.connect_node(source_graph_node.name, from_slot_index, destination_graph_node.name, to_slot_index)
else:
print(">>> Invalid Connection Request")
static func generate_signal_graph_tree(signal_graph: SignalGraph, tree_node: Tree):
var root = tree_node.create_item()
root.set_text(0, signal_graph.name)
var tree_items: Dictionary = {}
for signal_item in signal_graph.signals:
var node_tree_item: TreeItem
if tree_items.has(signal_item.node_name):
node_tree_item = tree_items[signal_item.node_name] as TreeItem
else:
node_tree_item = tree_node.create_item(root)
node_tree_item.set_text(0, signal_item.node_name)
tree_items[signal_item.node_name] = node_tree_item
var signal_tree_item = tree_node.create_item(node_tree_item)
signal_tree_item.set_text(0, signal_item.signal_name)
for edge in signal_graph.edges.filter(func (item): return item.signal_id == signal_item.id):
var signal_connection_tree_item = tree_node.create_item(signal_tree_item)
signal_connection_tree_item.set_text(0, edge.destination_node_name + "::" + edge.method_signature)
static func _get_graph_node_name(name: String) -> String:
return "{node_name}_graph_node".format({ "node_name": name })
static func _gather_nodes_from_node(root_node: Node) -> Array[Node]:
var node_list: Array[Node] = [root_node]
return node_list + __gather_nodes_from_node(root_node)
static func __gather_nodes_from_node(node: Node) -> Array[Node]:
var nodes: Array[Node] = []
for child in node.get_children(false):
nodes.append(child)
nodes += __gather_nodes_from_node(child)
return nodes
#endregion
@@ -0,0 +1 @@
uid://csw8uccbs0vuk
@@ -0,0 +1,146 @@
extends Node
# Properties
# |===================================|
# |===================================|
# |===================================|
var _signal_graph: SignalGraph
var _lambda_map: Dictionary = {}
# Lifecycle
# |===================================|
# |===================================|
# |===================================|
func _ready():
if OS.is_debug_build():
EngineDebugger.register_message_capture("signal_debugger", _on_signal_debugger_message_capture)
# Signals
# |===================================|
# |===================================|
# |===================================|
func _on_signal_debugger_message_capture(message: String, data: Array) -> bool:
if message == "start":
_signal_graph = generate_signal_graph()
for signal_item in _signal_graph.signals:
_connect_to_signal(signal_item)
EngineDebugger.send_message(
"signal_debugger:generated_graph",
[[_signal_graph.signals.map(func (item): return item.dictionary_representation), _signal_graph.edges.map(func (item): return item.dictionary_representation)]]
)
if message == "stop" and _signal_graph:
for signal_item in _signal_graph.signals:
_disconnect_from_signal(signal_item)
if message == "invoke_signal" and data.size() == 2:
var node_name = data[0]
var signal_name = data[1]
var root_node = get_tree().current_scene
var node = root_node if root_node.name == node_name else root_node.find_child(node_name)
if node:
var connection_list = node.get_signal_connection_list(signal_name)
for connection in connection_list:
var callable = connection["callable"]
var bound_args = callable.get_bound_arguments()
var bound_args_count = callable.get_bound_arguments_count()
var method = callable.get_method()
callable.callv([node])
return true
func _on_signal_execution(signal_name: String, node_name: String, args):
EngineDebugger.send_message(
"signal_debugger:signal_executed",
[Time.get_datetime_string_from_system(), node_name, signal_name]
)
# Methods
# |===================================|
# |===================================|
# |===================================|
func generate_signal_graph() -> SignalGraph:
var graph = SignalGraphUtility.create_signal_graph_from_node(get_tree().current_scene)
return graph
#var signal_graph = SignalGraph.new(get_tree().current_scene.name)
#var all_nodes: Array[Node] = _gather_nodes_in_scene()
#var signals: Array[SignalDescription] = []
#var edges: Array[SignalConnection] = []
#
#for node in all_nodes:
#for signal_item in node.get_signal_list():
#var existing_signals = []
#var connection_list = node.get_signal_connection_list(signal_item["name"] as String)
#if connection_list.size() > 0:
#for connection in connection_list:
#var should_display_connection = "name" in connection["callable"].get_object() and not connection["callable"].get_object().name.begins_with("@")
#if should_display_connection:
#var signal_description: SignalDescription
#var filtered_signals = existing_signals.filter(func (element): return element.signal_name == signal_item.name and element.node_name == node.name)
#if filtered_signals.size() == 1:
#signal_description = filtered_signals[0]
#else:
#signal_description = SignalDescription.new(node.name, signal_item.name)
#existing_signals.append(signal_description)
#signals.append(signal_description)
#
#var signal_edge = SignalConnection.new(signal_description.id, signal_description.node_name, connection["callable"].get_object().name, connection["callable"].get_method())
#if not signal_graph.edges.any(func (element): return element.signal_id == signal_description.id):
#edges.append(signal_edge)
#
#var temp_signals = {}
#for item in signals:
#temp_signals[item.id] = item
#
#var temp_edges = {}
#for item in edges:
#temp_edges[item.dictionary_key] = item
#
#signal_graph.signals.assign(temp_signals.keys().map(func (key): return temp_signals[key]))
#signal_graph.edges.assign(temp_edges.keys().map(func (key): return temp_edges[key]))
#
#return signal_graph
#func _gather_nodes_in_scene() -> Array[Node]:
#var scene_root = get_tree().current_scene
#var node_list: Array[Node] = [scene_root]
#return node_list + _gather_nodes_from_node(scene_root)
#
#func _gather_nodes_from_node(node: Node) -> Array[Node]:
#var nodes: Array[Node] = []
#for child in node.get_children(false):
#nodes.append(child)
#nodes += _gather_nodes_from_node(child)
#
#return nodes
func _connect_to_signal(signal_item: SignalDescription):
var root_node = get_tree().current_scene
var _execute: Callable = func (args = []): _on_signal_execution(signal_item.signal_name, signal_item.node_name, args)
if root_node.name == signal_item.node_name:
root_node.connect(signal_item.signal_name, _execute)
_lambda_map[signal_item] = _execute
else:
var child = root_node.find_child(signal_item.node_name)
if child:
child.connect(signal_item.signal_name, _execute)
_lambda_map[signal_item] = _execute
func _disconnect_from_signal(signal_item: SignalDescription):
var root_node = get_tree().current_scene
if root_node.name == signal_item.node_name:
var callable = _lambda_map[signal_item]
if callable:
root_node.disconnect(signal_item.signal_name, callable)
_lambda_map.erase(signal_item)
else:
var child = root_node.find_child(signal_item.node_name)
if child:
var callable = _lambda_map[signal_item]
if callable:
child.disconnect(signal_item.signal_name, callable)
_lambda_map.erase(signal_item)
@@ -0,0 +1 @@
uid://bmsqdh2cnmgw8
@@ -0,0 +1,97 @@
[gd_scene load_steps=5 format=3 uid="uid://cbsmvov8u78q"]
[ext_resource type="Script" path="res://addons/SignalVisualizer/Debugger/signal_debugger_panel.gd" id="1_66cpc"]
[ext_resource type="Texture2D" uid="uid://be3nwoioa311t" path="res://addons/SignalVisualizer/Play.svg" id="2_2wkuv"]
[ext_resource type="Texture2D" uid="uid://oo1oq2colx5b" path="res://addons/SignalVisualizer/Stop.svg" id="3_bg5eu"]
[ext_resource type="Texture2D" uid="uid://bmnff63evbdhv" path="res://addons/SignalVisualizer/Clear.svg" id="4_vg63r"]
[node name="SignalDebugger" type="Control"]
clip_contents = true
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_66cpc")
start_icon = ExtResource("2_2wkuv")
stop_icon = ExtResource("3_bg5eu")
[node name="VBoxContainer" type="VBoxContainer" parent="."]
clip_contents = true
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer"]
custom_minimum_size = Vector2(2.08165e-12, 50)
layout_mode = 2
theme_override_constants/separation = 8
[node name="ActionButton" type="Button" parent="VBoxContainer/HBoxContainer"]
unique_name_in_owner = true
layout_mode = 2
disabled = true
text = "Start"
icon = ExtResource("2_2wkuv")
[node name="ClearAllButton" type="Button" parent="VBoxContainer/HBoxContainer"]
unique_name_in_owner = true
layout_mode = 2
text = "Clear All"
icon = ExtResource("4_vg63r")
[node name="Spacer" type="Control" parent="VBoxContainer/HBoxContainer"]
layout_mode = 2
size_flags_horizontal = 3
[node name="ClearLogsButton" type="Button" parent="VBoxContainer/HBoxContainer"]
layout_mode = 2
text = "Clear Logs"
icon = ExtResource("4_vg63r")
[node name="HSplitContainer" type="HSplitContainer" parent="VBoxContainer"]
layout_mode = 2
size_flags_vertical = 3
[node name="SignalTree" type="Tree" parent="VBoxContainer/HSplitContainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(250, 2.08165e-12)
layout_mode = 2
columns = 2
allow_reselect = true
allow_rmb_select = true
hide_root = true
[node name="VBoxContainer" type="VBoxContainer" parent="VBoxContainer/HSplitContainer"]
layout_mode = 2
[node name="TabBar" type="TabBar" parent="VBoxContainer/HSplitContainer/VBoxContainer"]
layout_mode = 2
tab_count = 2
tab_0/title = "Signal Log"
tab_1/title = "Signal Graph"
[node name="LogLabel" type="RichTextLabel" parent="VBoxContainer/HSplitContainer/VBoxContainer"]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_colors/default_color = Color(0.690196, 0.690196, 0.690196, 1)
bbcode_enabled = true
scroll_following = true
[node name="Graph" type="GraphEdit" parent="VBoxContainer/HSplitContainer/VBoxContainer"]
unique_name_in_owner = true
visible = false
layout_mode = 2
size_flags_vertical = 3
[connection signal="pressed" from="VBoxContainer/HBoxContainer/ActionButton" to="." method="_on_action_button_pressed"]
[connection signal="pressed" from="VBoxContainer/HBoxContainer/ClearAllButton" to="." method="_on_clear_all_button_pressed"]
[connection signal="pressed" from="VBoxContainer/HBoxContainer/ClearLogsButton" to="." method="_on_clear_logs_button_pressed"]
[connection signal="item_selected" from="VBoxContainer/HSplitContainer/SignalTree" to="." method="_on_signal_tree_item_selected"]
[connection signal="tab_changed" from="VBoxContainer/HSplitContainer/VBoxContainer/TabBar" to="." method="_on_tab_bar_tab_changed"]
@@ -0,0 +1,192 @@
@tool
class_name SignalDebuggerPanel extends Control
signal open_script(node_name: String, method_signature: String)
signal start_signal_debugging
signal stop_signal_debugging
var SignalGraphNode = preload("res://addons/SignalVisualizer/Visualizer/signal_graph_node.tscn")
var GraphNodeItem = preload("res://addons/SignalVisualizer/Visualizer/signal_graph_node_item.tscn")
const SOURCE_COLOR: Color = Color.SKY_BLUE
const DESTINATION_COLOR: Color = Color.CORAL
const CONNECTION_TYPE: int = 0
enum Tabs {
LOG,
GRAPH
}
# Properties
# |===================================|
# |===================================|
# |===================================|
@export var start_icon: Texture2D
@export var stop_icon: Texture2D
@onready var action_button: Button = %ActionButton
@onready var clear_all_button: Button = %ClearAllButton
@onready var signal_tree: Tree = %SignalTree
@onready var log_label: RichTextLabel = %LogLabel
@onready var graph_node: GraphEdit = %Graph
var is_started: bool = false :
get: return is_started
set(new_value):
is_started = new_value
_update_action_button()
var _signals: Array = []
var _signal_filter: Array = []
var _is_stack_trace_enabled: bool = false
var _debugger_tab_state: Tabs = Tabs.LOG
var _graph: SignalGraph
# Lifecycle
# |===================================|
# |===================================|
# |===================================|
func _ready():
disable()
_handle_tab_update(0)
# Signals
# |===================================|
# |===================================|
# |===================================|
func _on_action_button_pressed():
if is_started:
stop()
else:
start()
func _on_clear_all_button_pressed():
log_label.clear()
signal_tree.clear()
graph_node.clear_connections()
for child in graph_node.get_children():
if child is SignalGraphNode:
child.queue_free()
func _on_clear_logs_button_pressed():
log_label.clear()
func _on_signal_tree_item_selected():
# Updates the checkmark button
var selected_item = signal_tree.get_selected()
var is_checked = selected_item.is_checked(1)
selected_item.set_checked(1, (not is_checked))
# Add / Remove signal from filters
var selected_signal = _signals.filter(func (element): return element.signal_name == selected_item.get_text(0))[0]
if _signal_filter.has(selected_signal.signal_name):
var selected_index = _signal_filter.find(selected_signal.signal_name)
_signal_filter.remove_at(selected_index)
else:
_signal_filter.append(selected_signal.signal_name)
func _on_tab_bar_tab_changed(tab: int):
_handle_tab_update(tab)
func _on_stack_trace_button_pressed():
_is_stack_trace_enabled = not _is_stack_trace_enabled
func _on_open_signal_in_script(data: SignalGraphNodeItem.Metadata):
open_script.emit(data.node_name, data.method_signature)
# Methods
# |===================================|
# |===================================|
# |===================================|
func enable():
action_button.disabled = false
func disable():
action_button.disabled = true
func start():
if not is_started:
is_started = true
action_button.icon = stop_icon
start_signal_debugging.emit()
log_label.append_text("[color=#B0B0B0]Signal Debugging Started...[/color]")
log_label.newline()
log_label.newline()
func stop():
if is_started:
is_started = false
action_button.icon = start_icon
stop_signal_debugging.emit()
log_label.newline()
log_label.append_text("[color=#B0B0B0]Signal Debugging Stopped[/color]")
log_label.newline()
log_label.newline()
func create_tree_from_signals(signals: Array):
_signals = signals
var root = signal_tree.create_item()
root.set_text(0, "Signals")
var tree_items: Dictionary = {}
for signal_item in signals:
var node_tree_item: TreeItem
if tree_items.has(signal_item.node_name):
node_tree_item = tree_items[signal_item.node_name] as TreeItem
else:
node_tree_item = signal_tree.create_item(root)
node_tree_item.set_text(0, signal_item.node_name)
node_tree_item.set_selectable(0, false)
node_tree_item.set_selectable(1, false)
tree_items[signal_item.node_name] = node_tree_item
var signal_tree_item = signal_tree.create_item(node_tree_item)
signal_tree_item.set_text(0, signal_item.signal_name)
signal_tree_item.set_cell_mode(1, TreeItem.CELL_MODE_CHECK)
signal_tree_item.set_checked(1, true)
signal_tree_item.set_selectable(0, false)
signal_tree_item.set_selectable(1, true)
func create_signal_graph(signals: Array, edges: Array):
_graph = SignalGraphUtility.create_signal_graph(get_tree().edited_scene_root.scene_file_path, signals, edges)
SignalGraphUtility.generate_signal_graph_nodes(_graph, graph_node, _on_open_signal_in_script)
func log_signal_execution(time: String, node_name: String, signal_name: String):
if _signal_filter != null and _signal_filter.has(signal_name):
return
if not log_label.text.is_empty():
log_label.newline()
log_label.append_text(
"[color=#FFCC00]{time}[/color]\t\t{node_name}\t\t{signal_name}".format({ "time": time, "node_name": node_name, "signal_name": signal_name })
)
log_label.newline()
func _handle_tab_update(selected_tab_index: int):
match selected_tab_index:
1:
_debugger_tab_state = Tabs.GRAPH
_:
_debugger_tab_state = Tabs.LOG
match _debugger_tab_state:
Tabs.LOG:
log_label.show()
graph_node.hide()
Tabs.GRAPH:
log_label.hide()
graph_node.show()
func _update_action_button():
if is_started:
action_button.text = "Stop"
action_button.modulate = Color("#ff3b30")
else:
action_button.text = "Start"
action_button.modulate = Color.WHITE
@@ -0,0 +1 @@
uid://yg8cqm6f1prd
+1
View File
@@ -0,0 +1 @@
<svg height="24" width="24" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><path d="M11 1a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM6.732 5A2 2 0 0 1 7 6v1.117L9.268 6A2 2 0 0 1 9 5V3.883zM2 5a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1zm5 3.883V10a2 2 0 0 1-.268 1L9 12.117V11a2 2 0 0 1 .268-1zM11 10a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1z" fill="#8eef97"/></svg>

After

Width:  |  Height:  |  Size: 437 B

@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bxj8ep08wbnm6"
path="res://.godot/imported/GraphEdit.svg-90dae61e8e0b157ab8eff95fe4b91e53.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/SignalVisualizer/GraphEdit.svg"
dest_files=["res://.godot/imported/GraphEdit.svg-90dae61e8e0b157ab8eff95fe4b91e53.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false
+1
View File
@@ -0,0 +1 @@
<svg height="24" viewBox="0 0 16 16" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M4 12a1 1 0 0 0 1.555.832l6-4a1 1 0 0 0 0-1.664l-6-4A1 1 0 0 0 4 4z" fill="#e0e0e0"/></svg>

After

Width:  |  Height:  |  Size: 184 B

+43
View File
@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://be3nwoioa311t"
path="res://.godot/imported/Play.svg-a446691ffcef211028bb160b5a2d6ff1.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/SignalVisualizer/Play.svg"
dest_files=["res://.godot/imported/Play.svg-a446691ffcef211028bb160b5a2d6ff1.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false
+162
View File
@@ -0,0 +1,162 @@
@tool
extends EditorPlugin
class SignalDebuggerPlugin extends EditorDebuggerPlugin:
var SignalDebuggerPanelScene = preload("res://addons/SignalVisualizer/Debugger/SignalDebugger.tscn")
signal open_script
signal start_signal_debugging
signal stop_signal_debugging
var debugger_panel
func _has_capture(prefix) -> bool:
return prefix == "signal_debugger"
func _capture(message, data, session_id) -> bool:
if message == "signal_debugger:signal_executed":
if data.size() == 3:
var time = data[0]
var node_name = data[1]
var signal_name = data[2]
debugger_panel.log_signal_execution(time, node_name, signal_name)
return true
if message == "signal_debugger:generated_graph":
if data.size() == 1:
var signals = data[0][0] as Array
var edges = data[0][1] as Array
debugger_panel.create_tree_from_signals(signals)
debugger_panel.create_signal_graph(signals, edges)
return true
return false
func _setup_session(session_id):
debugger_panel = SignalDebuggerPanelScene.instantiate()
var session = get_session(session_id)
debugger_panel.name = "Signal Debugger"
debugger_panel.open_script.connect(func (arg1, arg2): open_script.emit(arg1, arg2))
debugger_panel.start_signal_debugging.connect(func (): start_signal_debugging.emit())
debugger_panel.stop_signal_debugging.connect(func (): stop_signal_debugging.emit())
session.started.connect(
func ():
debugger_panel.enable()
)
session.stopped.connect(
func ():
debugger_panel.stop()
debugger_panel.disable()
stop_signal_debugging.emit()
)
session.add_session_tab(debugger_panel)
var SignalVisualizerDockScene = preload("res://addons/SignalVisualizer/Visualizer/signal_visualizer_dock.tscn")
class ScriptMethodReference:
var script_reference: Script
var line_number: int
# Properties
# |===================================|
# |===================================|
# |===================================|
var dock: Control
var debugger: SignalDebuggerPlugin
# Lifecycle
# |===================================|
# |===================================|
# |===================================|
func _enter_tree():
dock = SignalVisualizerDockScene.instantiate()
debugger = SignalDebuggerPlugin.new()
dock.open_script.connect(_on_open_signal_in_script)
add_control_to_bottom_panel(dock, "Signal Visualizer")
debugger.start_signal_debugging.connect(_on_debugger_start_signal_debugging)
debugger.stop_signal_debugging.connect(_on_debugger_stop_signal_debugging)
debugger.open_script.connect(_on_open_signal_in_script)
add_debugger_plugin(debugger)
if not ProjectSettings.has_setting("autoload/Signal_Debugger"):
add_autoload_singleton("Signal_Debugger", "res://addons/SignalVisualizer/Debugger/SignalDebugger.gd")
func _exit_tree():
remove_control_from_bottom_panel(dock)
dock.free()
remove_debugger_plugin(debugger)
remove_autoload_singleton("Signal_Debugger")
# Signals
# |===================================|
# |===================================|
# |===================================|
func _on_open_signal_in_script(node_name: String, method_signature: String):
var node: Node
if get_tree().edited_scene_root.name == node_name:
node = get_tree().edited_scene_root
else:
node = get_tree().edited_scene_root.find_child(node_name)
if node != null:
var script: Script = node.get_script()
if script != null:
var editor = get_editor_interface()
var method_reference = _find_method_reference_in_script(script, method_signature)
if method_reference != null:
editor.edit_script(method_reference.script_reference, method_reference.line_number, 0)
editor.set_main_screen_editor("Script")
else:
push_warning("Requested method in script ({script}) for node ({name}) is not available.".format({ "name": node_name, "script": script.name }))
else:
push_warning("Requested script for node ({name}) is not available.".format({ "name": node_name }))
else:
push_warning("Requested script for node ({name}) is not available.".format({ "name": node_name }))
func _on_debugger_start_signal_debugging():
for session in debugger.get_sessions():
session.send_message("signal_debugger:start", [])
func _on_debugger_stop_signal_debugging():
for session in debugger.get_sessions():
session.send_message("signal_debugger:stop", [])
# Methods
# |===================================|
# |===================================|
# |===================================|
func _find_method_reference_in_script(script: Script, method_signature: String) -> ScriptMethodReference:
var line_number = __find_method_line_number_in_script(script, method_signature)
if line_number == -1:
var base_script = script.get_base_script()
if base_script:
return _find_method_reference_in_script(base_script, method_signature)
var reference = ScriptMethodReference.new()
reference.script_reference = script
reference.line_number = line_number
return reference
func __find_method_line_number_in_script(script: Script, method_signature: String) -> int:
var line_number = 0
var found = false
for line in script.source_code.split("\n", true):
line_number += 1
if line.contains(method_signature):
found = true
return line_number
return -1
@@ -0,0 +1 @@
uid://43lcsn3nt3ri
+1
View File
@@ -0,0 +1 @@
<svg height="24" viewBox="0 0 16 16" width="24" xmlns="http://www.w3.org/2000/svg"><rect x="3" y="3" height="10" width="10" rx="1" fill="#e0e0e0"/></svg>

After

Width:  |  Height:  |  Size: 154 B

@@ -2,22 +2,24 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://bvltdosfhfsrt"
path="res://.godot/imported/wwise_audio_speaker.svg-c8bbeea5359204d3be2da0640c91add2.ctex"
uid="uid://oo1oq2colx5b"
path="res://.godot/imported/Stop.svg-e085086fb31c334bc2f02ca2bffba522.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/Wwise/editor/images/wwise_audio_speaker.svg"
dest_files=["res://.godot/imported/wwise_audio_speaker.svg-c8bbeea5359204d3be2da0640c91add2.ctex"]
source_file="res://addons/SignalVisualizer/Stop.svg"
dest_files=["res://.godot/imported/Stop.svg-e085086fb31c334bc2f02ca2bffba522.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
@@ -25,13 +27,17 @@ mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0
detect_3d/compress_to=1
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false
@@ -0,0 +1,31 @@
@tool
extends Label
# Properties
# |===================================|
# |===================================|
# |===================================|
# Lifecycle
# |===================================|
# |===================================|
# |===================================|
# Signals
# |===================================|
# |===================================|
# |===================================|
# Methods
# |===================================|
# |===================================|
# |===================================|
func get_text_size() -> Vector2:
return get_theme_default_font().get_string_size(text)
@@ -0,0 +1 @@
uid://d3lyqancfvwup
@@ -0,0 +1,94 @@
@tool
class_name SignalGraphNode extends GraphNode
# Properties
# |===================================|
# |===================================|
# |===================================|
var connections: Array = [] :
get: return connections
set(new_value):
connections = new_value
# Lifecycle
# |===================================|
# |===================================|
# |===================================|
func _ready():
selectable = true
resizable = true
draggable = true
# Signals
# |===================================|
# |===================================|
# |===================================|
func _on_resize_request(new_minsize):
size = new_minsize
# Methods
# |===================================|
# |===================================|
# |===================================|
func has_source_signal_description(signal_name: String, destination_node_name: String) -> bool:
for child in get_children():
if child.name == "source_" + signal_name + "_" + destination_node_name:
return true
return false
func get_source_slot(signal_name: String, destination_node_name: String) -> int:
var index = 0
for child in get_children():
if child.name == "source_" + signal_name + "_" + destination_node_name:
return index
index += 1
return -1
func get_next_source_slot(signal_name: String, destination_node_name: String) -> int:
var index = 0
for child in get_children():
if child.name.begins_with("source_"):
if child.name == "source_" + signal_name + "_" + destination_node_name:
return index
index += 1
return -1
func has_destination_signal_description(signal_name: String, method_signature: String) -> bool:
for child in get_children():
if child.name == "destination_" + signal_name + "_" + _sanitize_method_signature(method_signature):
return true
return false
func get_destination_slot(signal_name: String, method_signature: String) -> int:
var index = 0
for child in get_children():
if child.name == "destination_" + signal_name + "_" + _sanitize_method_signature(method_signature):
return index
index += 1
return -1
func get_next_destination_slot(signal_name: String, method_signature: String) -> int:
var index = 0
for child in get_children():
if child.name.begins_with("destination_"):
if child.name == "destination_" + signal_name + "_" + _sanitize_method_signature(method_signature):
return index
index += 1
return -1
func _sanitize_method_signature(signature: String) -> String:
return signature.replace("::", "__")
@@ -0,0 +1 @@
uid://bdwkkgkhgfrtk
@@ -0,0 +1,12 @@
[gd_scene load_steps=2 format=3 uid="uid://cq10iaub18e54"]
[ext_resource type="Script" path="res://addons/SignalVisualizer/Visualizer/signal_graph_node.gd" id="1_ovklj"]
[node name="SignalGraphNode" type="GraphNode"]
custom_minimum_size = Vector2(100, 50)
offset_right = 232.0
offset_bottom = 54.0
resizable = true
script = ExtResource("1_ovklj")
[connection signal="resize_request" from="." to="." method="_on_resize_request"]
@@ -0,0 +1,57 @@
@tool
class_name SignalGraphNodeItem extends Control
signal open_script(metadata: SignalGraphNodeItem.Metadata)
class Metadata:
var signal_name: String
var method_signature: String
var node_name: String
func _init(signal_name: String, method_signature: String, node_name: String):
self.signal_name = signal_name
self.method_signature = method_signature
self.node_name = node_name
# Properties
# |===================================|
# |===================================|
# |===================================|
@onready var label: Label = %DescriptionLabel
var signal_data: Metadata = null
var text: String = "" :
get: return text
set(new_value):
text = new_value
if label:
label.text = text
# Lifecycle
# |===================================|
# |===================================|
# |===================================|
func _ready():
_update()
# Signals
# |===================================|
# |===================================|
# |===================================|
func _on_open_signal_in_script_button_pressed():
open_script.emit(signal_data)
# Methods
# |===================================|
# |===================================|
# |===================================|
func _update():
label.text = text
var text_size = label.get_text_size()
custom_minimum_size = Vector2((text_size.x * 2) + 50, text_size.y * 3)
@@ -0,0 +1 @@
uid://c0n3sifmbiih0
@@ -0,0 +1,43 @@
[gd_scene load_steps=3 format=3 uid="uid://b2lwtwp6kpwtb"]
[ext_resource type="Script" path="res://addons/SignalVisualizer/Visualizer/signal_graph_node_item.gd" id="1_jrd34"]
[ext_resource type="Script" path="res://addons/SignalVisualizer/Visualizer/resizable_label.gd" id="2_4wwd5"]
[node name="SignalItem" type="Control"]
clip_contents = true
custom_minimum_size = Vector2(51, 23)
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
size_flags_horizontal = 3
size_flags_vertical = 3
script = ExtResource("1_jrd34")
[node name="HBoxContainer" type="HBoxContainer" parent="."]
custom_minimum_size = Vector2(100, 50)
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="DescriptionLabel" type="Label" parent="HBoxContainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(100, 50)
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 1
vertical_alignment = 1
clip_text = true
script = ExtResource("2_4wwd5")
[node name="OpenSignalInScriptButton" type="Button" parent="HBoxContainer"]
layout_mode = 2
text = "Open"
flat = true
[connection signal="pressed" from="HBoxContainer/OpenSignalInScriptButton" to="." method="_on_open_signal_in_script_button_pressed"]
@@ -0,0 +1,67 @@
@tool
extends Control
signal open_script(node_name: String, method_signature: String)
var SignalGraphNode = preload("res://addons/SignalVisualizer/Visualizer/signal_graph_node.tscn")
var GraphNodeItem = preload("res://addons/SignalVisualizer/Visualizer/signal_graph_node_item.tscn")
# Properties
# |===================================|
# |===================================|
# |===================================|
const SOURCE_COLOR: Color = Color.SKY_BLUE
const DESTINATION_COLOR: Color = Color.CORAL
const CONNECTION_TYPE: int = 0
@onready var arrange_nodes_checkbox: CheckBox = %ArrangeNodesCheckBox
@onready var signal_details_checkbox: CheckBox = %SignalDetailsCheckBox
@onready var signal_tree: Tree = %SignalTree
@onready var graph: GraphEdit = %Graph
# Lifecycle
# |===================================|
# |===================================|
# |===================================|
# Signals
# |===================================|
# |===================================|
# |===================================|
func _on_clear_graph_button_pressed():
clear()
func _on_generate_graph_button_pressed():
clear()
var scene_signal_graph = SignalGraphUtility.create_signal_graph_from_node(get_tree().edited_scene_root, true)
SignalGraphUtility.generate_signal_graph_nodes(scene_signal_graph, graph, _on_open_signal_in_script)
SignalGraphUtility.generate_signal_graph_tree(scene_signal_graph, signal_tree)
if arrange_nodes_checkbox.button_pressed:
graph.arrange_nodes()
func _on_open_signal_in_script(data: SignalGraphNodeItem.Metadata):
open_script.emit(data.node_name, data.method_signature)
# Methods
# |===================================|
# |===================================|
# |===================================|
func clear():
_clear_graph_nodes()
_clear_tree()
func _clear_graph_nodes():
graph.clear_connections()
for child in graph.get_children():
if child is SignalGraphNode:
child.queue_free()
func _clear_tree():
signal_tree.clear()
@@ -0,0 +1 @@
uid://bbd48wbihmuos
@@ -0,0 +1,78 @@
[gd_scene load_steps=5 format=3 uid="uid://dppfamjc0ji40"]
[ext_resource type="Script" path="res://addons/SignalVisualizer/Visualizer/signal_visualizer_dock.gd" id="1_akar5"]
[ext_resource type="Texture2D" uid="uid://bmnff63evbdhv" path="res://addons/SignalVisualizer/Clear.svg" id="2_m8bsv"]
[ext_resource type="Texture2D" uid="uid://bxj8ep08wbnm6" path="res://addons/SignalVisualizer/GraphEdit.svg" id="3_dtmqs"]
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_ae0jg"]
[node name="SignalVisualizerDock" type="Control"]
clip_contents = true
custom_minimum_size = Vector2(2.08165e-12, 200)
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_akar5")
[node name="VBoxContainer" type="VBoxContainer" parent="."]
clip_contents = true
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
size_flags_horizontal = 3
[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer"]
clip_contents = true
custom_minimum_size = Vector2(2.08165e-12, 50)
layout_mode = 2
theme_override_constants/separation = 8
alignment = 2
[node name="ArrangeNodesCheckBox" type="CheckBox" parent="VBoxContainer/HBoxContainer"]
unique_name_in_owner = true
layout_mode = 2
text = "Arrange Nodes"
[node name="SignalDetailsCheckBox" type="CheckBox" parent="VBoxContainer/HBoxContainer"]
unique_name_in_owner = true
layout_mode = 2
text = "Signal Details"
[node name="Panel" type="Panel" parent="VBoxContainer/HBoxContainer"]
layout_mode = 2
size_flags_horizontal = 3
theme_override_styles/panel = SubResource("StyleBoxEmpty_ae0jg")
[node name="ClearGraphButton" type="Button" parent="VBoxContainer/HBoxContainer"]
layout_mode = 2
text = "Clear Graph"
icon = ExtResource("2_m8bsv")
[node name="GenerateGraphButton" type="Button" parent="VBoxContainer/HBoxContainer"]
layout_mode = 2
text = "Generate Graph"
icon = ExtResource("3_dtmqs")
[node name="HSplitContainer" type="HSplitContainer" parent="VBoxContainer"]
layout_mode = 2
size_flags_vertical = 3
[node name="SignalTree" type="Tree" parent="VBoxContainer/HSplitContainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(200, 2.08165e-12)
layout_mode = 2
column_titles_visible = true
[node name="Graph" type="GraphEdit" parent="VBoxContainer/HSplitContainer"]
unique_name_in_owner = true
layout_mode = 2
size_flags_vertical = 3
[connection signal="pressed" from="VBoxContainer/HBoxContainer/ClearGraphButton" to="." method="_on_clear_graph_button_pressed"]
[connection signal="pressed" from="VBoxContainer/HBoxContainer/GenerateGraphButton" to="." method="_on_generate_graph_button_pressed"]
+7
View File
@@ -0,0 +1,7 @@
[plugin]
name="SignalVisualizer"
description="Visual the current scene's signal connections as a graph. Debug the current running scene's signals with automatic logging in a new debugger panel."
author="MiniGameDev"
version="1.7.0"
script="SignalVisualizer.gd"
-2
View File
@@ -1,2 +0,0 @@
class AkBuildExport:
extends AkEditorExportPlugin
@@ -1,36 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="100%" height="100%" viewBox="0 0 15 15" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:1.41421;">
<g transform="matrix(1,0,0,1,-140,-285)">
<g transform="matrix(1,0,0,1,140,285)">
<g id="ObjectIcons_AcousticTexture_nor">
<g id="Icons">
<g transform="matrix(1,0,0,1,-40,-25)">
<g id="Base-Block" serif:id="Base Block">
<path d="M55,27.1C55,25.941 54.059,25 52.9,25L42.1,25C40.941,25 40,25.941 40,27.1L40,37.9C40,39.059 40.941,40 42.1,40L52.9,40C54.059,40 55,39.059 55,37.9L55,27.1Z" style="fill-opacity:0;"/>
</g>
</g>
<path d="M9,5.086L9,2.5C9,1.672 9.672,1 10.5,1C11.328,1 12,1.672 12,2.5L12,3.086C12.156,3.03 12.325,3 12.5,3C13.328,3 14,3.672 14,4.5L14,12.5C14,13.328 13.328,14 12.5,14C12.5,14 2.5,14 2.5,14C1.672,14 1,13.328 1,12.5L1,6.5C1,5.672 1.672,5 2.5,5C3.328,5 4,5.672 4,6.5L4,9.086C4.156,9.03 4.325,9 4.5,9C4.675,9 4.844,9.03 5,9.086L5,8.5C5,7.672 5.672,7 6.5,7C6.675,7 6.844,7.03 7,7.086L7,6.5C7,5.672 7.672,5 8.5,5C8.675,5 8.844,5.03 9,5.086ZM11,13L11,2L10,2L10,13L11,13ZM7,13L7,8L6,8L6,13L7,13ZM3,13L3,6L2,6L2,13L3,13ZM9,13L9,6L8,6L8,13L9,13ZM13,13L13,4L12,4L12,13L13,13ZM5,13L5,10L4,10L4,13L5,13Z" style="fill:rgb(34,34,34);"/>
<g transform="matrix(-1,0,0,1.75,5,2.5)">
<rect x="2" y="2" width="1" height="4" style="fill:rgb(216,216,216);"/>
</g>
<g transform="matrix(-1,0,0,1.5,9,7)">
<rect x="4" y="2" width="1" height="2" style="fill:rgb(216,216,216);"/>
</g>
<g transform="matrix(-1,0,0,1.66667,13,4.66667)">
<rect x="6" y="2" width="1" height="3" style="fill:rgb(216,216,216);"/>
</g>
<g transform="matrix(-1,0,0,1.75,17,2.5)">
<rect x="8" y="2" width="1" height="4" style="fill:rgb(216,216,216);"/>
</g>
<g transform="matrix(-1,0,0,1.83333,21,-1.66667)">
<rect x="10" y="2" width="1" height="6" style="fill:rgb(216,216,216);"/>
</g>
<g transform="matrix(-1,0,0,1.8,25,0.4)">
<rect x="12" y="2" width="1" height="5" style="fill:rgb(216,216,216);"/>
</g>
</g>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.8 KiB

@@ -1 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg width="100%" height="100%" viewBox="0 0 15 15" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;"><g id="ObjectIcons_AuxBus_nor"><path id="AuxBus" d="M15,2.1c0,-1.159 -0.941,-2.1 -2.1,-2.1l-10.8,0c-1.159,0 -2.1,0.941 -2.1,2.1l0,10.8c0,1.159 0.941,2.1 2.1,2.1l10.8,0c1.159,0 2.1,-0.941 2.1,-2.1l0,-10.8Z" style="fill-opacity:0;"/><g id="AuxBus1" serif:id="AuxBus"><path d="M12,4.409c0,-0.778 -0.631,-1.409 -1.409,-1.409c0,0 -8.182,0 -8.182,0c-0.778,0 -1.409,0.631 -1.409,1.409c0,0 0,6.005 0,6.005l3.586,3.586l6.005,0c0.778,0 1.409,-0.631 1.409,-1.409l0,-8.182Z" style="fill:#212121;"/><path d="M4.5,0c-0.828,0 -1.5,0.672 -1.5,1.5l0,1c0,0.828 0.672,1.5 1.5,1.5c0.828,0 1.5,-0.672 1.5,-1.5l0,-1c0,-0.828 -0.672,-1.5 -1.5,-1.5Z" style="fill:#212121;"/><path d="M6.5,0c-0.828,0 -1.5,0.672 -1.5,1.5l0,1c0,0.828 0.672,1.5 1.5,1.5c0.828,0 1.5,-0.672 1.5,-1.5l0,-1c0,-0.828 -0.672,-1.5 -1.5,-1.5Z" style="fill:#212121;"/><path d="M8.5,0c-0.828,0 -1.5,0.672 -1.5,1.5l0,1c0,0.828 0.672,1.5 1.5,1.5c0.828,0 1.5,-0.672 1.5,-1.5l0,-1c0,-0.828 -0.672,-1.5 -1.5,-1.5Z" style="fill:#212121;"/><path d="M4,1l0,2l1,0l0,-2l-1,0Z" style="fill:#c8c8c8;"/><path d="M6,1l0,2l1,0l0,-2l-1,0Z" style="fill:#c8c8c8;"/><path d="M8,1l0,2l1,0l0,-2l-1,0Z" style="fill:#c8c8c8;"/><path d="M15,6.5c0,-0.828 -0.672,-1.5 -1.5,-1.5l-1,0c-0.828,0 -1.5,0.672 -1.5,1.5c0,0.828 0.672,1.5 1.5,1.5l1,0c0.828,0 1.5,-0.672 1.5,-1.5Z" style="fill:#212121;"/><path d="M15,8.5c0,-0.828 -0.672,-1.5 -1.5,-1.5l-1,0c-0.828,0 -1.5,0.672 -1.5,1.5c0,0.828 0.672,1.5 1.5,1.5l1,0c0.828,0 1.5,-0.672 1.5,-1.5Z" style="fill:#212121;"/><path d="M15,10.5c0,-0.828 -0.672,-1.5 -1.5,-1.5l-1,0c-0.828,0 -1.5,0.672 -1.5,1.5c0,0.828 0.672,1.5 1.5,1.5l1,0c0.828,0 1.5,-0.672 1.5,-1.5Z" style="fill:#212121;"/><rect x="12" y="6" width="2" height="1" style="fill:#c8c8c8;"/><rect x="12" y="8" width="2" height="1" style="fill:#c8c8c8;"/><rect x="12" y="10" width="2" height="1" style="fill:#c8c8c8;"/><path d="M11,4.409c0,-0.226 -0.183,-0.409 -0.409,-0.409l-8.182,0c-0.226,0 -0.409,0.183 -0.409,0.409l0,5.591l3,3l5.591,0c0.226,0 0.409,-0.183 0.409,-0.409l0,-8.182Z" style="fill:#c8c8c8;"/><rect x="8" y="3" width="1" height="1" style="fill:#919191;"/><rect x="6" y="3" width="1" height="1" style="fill:#919191;"/><rect x="4" y="3" width="1" height="1" style="fill:#919191;"/><rect x="11" y="6" width="1" height="1" style="fill:#919191;"/><rect x="11" y="8" width="1" height="1" style="fill:#919191;"/><rect x="11" y="10" width="1" height="1" style="fill:#919191;"/></g></g></svg>

Before

Width:  |  Height:  |  Size: 2.8 KiB

@@ -1 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg width="100%" height="100%" viewBox="0 0 15 15" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;"><g id="ObjectIcons_BusSimple_nor"><g id="Base-Block" serif:id="Base Block"><path d="M15,2.1c0,-1.159 -0.941,-2.1 -2.1,-2.1l-10.8,0c-1.159,0 -2.1,0.941 -2.1,2.1l0,10.8c0,1.159 0.941,2.1 2.1,2.1l10.8,0c1.159,0 2.1,-0.941 2.1,-2.1l0,-10.8Z" style="fill-opacity:0;"/></g><g id="Bus"><path d="M15,2c0,-0.552 -0.448,-1 -1,-1l-11,0c-0.552,0 -1,0.448 -1,1l0,11c0,0.552 0.448,1 1,1l11,0c0.552,0 1,-0.448 1,-1l0,-11Z" style="fill:#212121;"/><path d="M4,5.5c0,-0.828 -0.672,-1.5 -1.5,-1.5l-1,0c-0.828,0 -1.5,0.672 -1.5,1.5c0,0.828 0.672,1.5 1.5,1.5l1,0c0.828,0 1.5,-0.672 1.5,-1.5Z" style="fill:#212121;"/><path d="M4,7.5c0,-0.828 -0.672,-1.5 -1.5,-1.5l-1,0c-0.828,0 -1.5,0.672 -1.5,1.5c0,0.828 0.672,1.5 1.5,1.5l1,0c0.828,0 1.5,-0.672 1.5,-1.5Z" style="fill:#212121;"/><path d="M4,9.5c0,-0.828 -0.672,-1.5 -1.5,-1.5l-1,0c-0.828,0 -1.5,0.672 -1.5,1.5c0,0.828 0.672,1.5 1.5,1.5l1,0c0.828,0 1.5,-0.672 1.5,-1.5Z" style="fill:#212121;"/><path d="M14,2.5c0,-0.276 -0.224,-0.5 -0.5,-0.5l-10,0c-0.276,0 -0.5,0.224 -0.5,0.5l0,10c0,0.276 0.224,0.5 0.5,0.5l10,0c0.276,0 0.5,-0.224 0.5,-0.5l0,-10Z" style="fill:#c8c8c8;"/><rect x="1" y="5" width="1" height="1" style="fill:#c8c8c8;"/><rect x="1" y="7" width="1" height="1" style="fill:#c8c8c8;"/><rect x="1" y="9" width="1" height="1" style="fill:#c8c8c8;"/><path d="M3,10l-1,0l0,-1l1,0l0,1Zm0,-2l-1,0l0,-1l1,0l0,1Zm0,-2l-1,0l0,-1l1,0l0,1Z" style="fill:#919191;"/></g><g id="Parameters"><rect x="4" y="4" width="3" height="1" style="fill:#222;fill-opacity:0.41;"/><rect x="4" y="4" width="3" height="1" style="fill:#919191;"/><rect x="5" y="4" width="2" height="1" style="fill:#222;fill-opacity:0.73;"/><rect x="5" y="4" width="2" height="1" style="fill:#434343;"/><rect x="4" y="6" width="3" height="1" style="fill:#222;fill-opacity:0.41;"/><rect x="4" y="6" width="3" height="1" style="fill:#222;fill-opacity:0.73;"/><rect x="4" y="6" width="3" height="1" style="fill:#434343;"/><rect x="8" y="6" width="4" height="1" style="fill:#222;"/><rect x="8" y="6" width="4" height="1" style="fill:#212121;"/><rect x="8" y="4" width="4" height="1" style="fill:#222;"/><rect x="8" y="4" width="4" height="1" style="fill:#212121;"/><rect x="5" y="8" width="2" height="1" style="fill:#222;fill-opacity:0.41;"/><rect x="5" y="8" width="2" height="1" style="fill:#919191;"/><rect x="7" y="4" width="1" height="1" style="fill:#222;fill-opacity:0.3;"/><rect x="7" y="4" width="1" height="1" style="fill:#919191;"/><rect x="7" y="6" width="1" height="1" style="fill:#222;fill-opacity:0.3;"/><path d="M7,6l1,0l0,1l-1,0l0,-1Zm0.5,0.5c0,0 0,0 0,0Z" style="fill:#919191;"/><rect x="7" y="8" width="1" height="1" style="fill:#222;fill-opacity:0.3;"/><path d="M7,8l1,0l0,1l-1,0l0,-1Zm0.5,0.5c0,0 0,0 0,0Z" style="fill:#919191;"/><rect x="6" y="8" width="1" height="1" style="fill:#222;fill-opacity:0.73;"/><rect x="6" y="8" width="1" height="1" style="fill:#434343;"/><rect x="8" y="8" width="4" height="1" style="fill:#222;"/><rect x="8" y="8" width="4" height="1" style="fill:#212121;"/><rect x="12" y="8" width="1" height="1" style="fill:#222;fill-opacity:0.6;"/><path d="M12,8l1,0l0,1l-1,0l0,-1Zm0.5,0.5c0,0 0,0 0,0Z" style="fill:#717171;"/><rect x="12" y="6" width="1" height="1" style="fill:#222;fill-opacity:0.6;"/><path d="M12,6l1,0l0,1l-1,0l0,-1Zm0.5,0.5c0,0 0,0 0,0Z" style="fill:#717171;"/><rect x="12" y="4" width="1" height="1" style="fill:#222;fill-opacity:0.6;"/><rect x="12" y="4" width="1" height="1" style="fill:#717171;"/></g></g></svg>

Before

Width:  |  Height:  |  Size: 3.8 KiB

-45
View File
@@ -1,45 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="100%" height="100%" viewBox="0 0 15 15" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:1.41421;">
<g transform="matrix(1,0,0,1,-20,-45)">
<g transform="matrix(1,0,0,1,20,45)">
<g id="ObjectIcons_Event_nor">
<g id="Icons">
<g transform="matrix(1,0,0,1,-40,-25)">
<g id="Base-Block" serif:id="Base Block">
<path d="M55,27.1C55,25.941 54.059,25 52.9,25L42.1,25C40.941,25 40,25.941 40,27.1L40,37.9C40,39.059 40.941,40 42.1,40L52.9,40C54.059,40 55,39.059 55,37.9L55,27.1Z" style="fill-opacity:0;"/>
</g>
</g>
<path d="M4.86,6L2.14,6C1.511,6 1,5.489 1,4.86L1,4.14C1,3.512 1.509,3.001 2.14,3L4.86,3L4.976,3.006L5,3.009L5,2.56C5,1.7 5.698,1.001 6.56,1L9.44,1C10.302,1.001 11,1.7 11,2.56L11,5L12.86,5C13.495,5.006 14,5.515 14,6.14L14,6.86C14,7.488 13.491,7.999 12.86,8C13.491,8.001 14,8.512 14,9.14L14,9.86C14,10.485 13.495,10.994 12.86,11L11,11L12.86,11C13.491,11.001 14,11.512 14,12.14L14,12.86C14,13.486 13.494,13.995 12.86,14L10.14,14C10.028,14 9.919,13.984 9.816,13.952C9.7,13.983 9.578,13.999 9.44,14L6.56,14C5.699,14 5,13.301 5,12.44L5,5.991L4.976,5.994L4.86,6ZM10,6L10,2L6,2L6,4L2,4L2,5L6,5L6,13L13,13L13,12L10,12L10,10L13,10L13,9L10,9L10,7L13,7L13,6L10,6Z" style="fill:rgb(34,34,34);"/>
<g transform="matrix(0.5,0,0,1,6,2)">
<rect x="10" y="7" width="4" height="1" style="fill:rgb(200,200,200);"/>
</g>
<g transform="matrix(0.5,0,0,1,6,-3)">
<rect x="10" y="9" width="4" height="1" style="fill:rgb(200,200,200);"/>
</g>
<g transform="matrix(0.5,0,0,1,6,7)">
<rect x="10" y="5" width="4" height="1" style="fill:rgb(200,200,200);"/>
</g>
<g transform="matrix(0.75,0,0,1,1.25,-5)">
<rect x="1" y="9" width="4" height="1" style="fill:rgb(200,200,200);"/>
</g>
<g transform="matrix(0.8,0,0,1.57143,2,-4.28571)">
<rect x="5" y="4" width="5" height="7" style="fill:rgb(200,200,200);"/>
</g>
<g transform="matrix(-1,-0,0,1,21,-3)">
<rect x="10" y="9" width="1" height="1" style="fill:rgb(113,113,113);"/>
</g>
<g transform="matrix(-1,-0,0,1,21,2)">
<rect x="10" y="7" width="1" height="1" style="fill:rgb(113,113,113);"/>
</g>
<g transform="matrix(-1,-0,0,1,21,7)">
<rect x="10" y="5" width="1" height="1" style="fill:rgb(113,113,113);"/>
</g>
<g transform="matrix(-1,-0,0,1,10,-5)">
<rect x="4" y="9" width="1" height="1" style="fill:rgb(113,113,113);"/>
</g>
</g>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 3.3 KiB

-23
View File
@@ -1,23 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="100%" height="100%" viewBox="0 0 15 15" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:1.41421;">
<g transform="matrix(1,0,0,1,-40,-85)">
<g transform="matrix(1,0,0,1,40,86.0003)">
<g id="ObjectIcons_Folder_nor">
<g id="Icons">
<g transform="matrix(1,0,0,1,-40,-26.0003)">
<g id="Base-Block" serif:id="Base Block">
<path d="M55,27.1C55,25.941 54.059,25 52.9,25L42.1,25C40.941,25 40,25.941 40,27.1L40,37.9C40,39.059 40.941,40 42.1,40L52.9,40C54.059,40 55,39.059 55,37.9L55,27.1Z" style="fill-opacity:0;"/>
</g>
</g>
<path d="M0,0L0,13L15,13L15,2L8,1.999L8,-0.001L0,0ZM7,3L7,1L1,1L1,12L14,12L14,3L7,3Z" style="fill:rgb(34,34,34);"/>
<path d="M7,3L14,3L14,12L1,12L1,3L1,1L7,1L7,3ZM6,4L6,2L2,2L2,11L13,11L13,4L6,4Z" style="fill:rgb(200,200,200);"/>
<path d="M6,4L13,4L13,11L2,11L2,4L2,2L6,2L6,4ZM5,5L5,3L3,3L3,10L12,10L12,5L5,5Z" style="fill:rgb(67,67,67);"/>
<g transform="matrix(1,0,0,1,-60,-46.0003)">
<path d="M65,51L72,51L72,56L63,56L63,51L63,49L65,49L65,51Z" style="fill:rgb(145,145,145);"/>
</g>
</g>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.7 KiB

@@ -1,39 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="100%" height="100%" viewBox="0 0 15 15" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:1.41421;">
<g transform="matrix(1,0,0,1,-20,-165)">
<g transform="matrix(1,0,0,1,20,165)">
<g id="ObjectIcons_GameParameter_nor">
<g id="Icons">
<g transform="matrix(1,0,0,1,-40,-25)">
<g id="Base-Block" serif:id="Base Block">
<path d="M55,27.1C55,25.941 54.059,25 52.9,25L42.1,25C40.941,25 40,25.941 40,27.1L40,37.9C40,39.059 40.941,40 42.1,40L52.9,40C54.059,40 55,39.059 55,37.9L55,27.1Z" style="fill-opacity:0;"/>
</g>
</g>
<path d="M9.802,6C9.589,6.323 9.317,6.594 9,6.8L9,9.205C9.753,9.695 10.25,10.544 10.25,11.508C10.25,13.025 9.019,14.256 7.502,14.256C6.536,14.256 5.685,13.756 5.196,13L0.75,13C0.336,13 0,12.664 0,12.25L0,10.75C0,10.337 0.335,10.001 0.75,10L5.206,10C5.413,9.685 5.684,9.415 6,9.208L6,6.797C5.25,6.307 4.754,5.459 4.754,4.497C4.754,2.98 5.986,1.749 7.502,1.749C8.464,1.749 9.311,2.244 9.806,3L14.25,3C14.67,3.007 15,3.34 15,3.75L15,5.25C15,5.66 14.67,5.993 14.25,6L9.802,6ZM14,5L14,4L9.177,4C8.962,3.277 8.292,2.75 7.5,2.75C6.534,2.75 5.75,3.534 5.75,4.5C5.75,5.292 6.277,5.962 7,6.177L7,9.823C6.436,9.991 5.991,10.436 5.823,11L1,11L1,12L5.823,12C6.038,12.723 6.708,13.25 7.5,13.25C8.466,13.25 9.25,12.466 9.25,11.5C9.25,10.708 8.723,10.038 8,9.823L8,6.177C8.561,6.01 9.004,5.57 9.177,5L14,5Z" style="fill:rgb(34,34,34);"/>
<g transform="matrix(1,0,0,1,-80,-45)">
<path d="M87,51.177C86.277,50.962 85.75,50.292 85.75,49.5C85.75,48.534 86.534,47.75 87.5,47.75C88.292,47.75 88.962,48.277 89.177,49C89.264,49.363 89.261,49.695 89.177,50C89.009,50.564 88.564,51.009 88,51.177L88,54.823C88.723,55.038 89.25,55.708 89.25,56.5C89.25,57.466 88.466,58.25 87.5,58.25C86.708,58.25 86.038,57.723 85.823,57C85.727,56.693 85.721,56.361 85.823,56C85.991,55.436 86.436,54.991 87,54.823L87,51.177Z" style="fill:rgb(216,216,216);"/>
</g>
<g transform="matrix(3.31388e-17,-0.138727,-1,-4.66124e-16,15,7.54407)">
<path d="M10,7L4,7L4,8L10,8C9.35,7.679 9.37,7.345 10,7Z" style="fill:rgb(113,113,113);"/>
</g>
<g transform="matrix(-5.86225e-17,0.138727,1,4.83287e-16,2.45137e-13,7.44509)">
<path d="M17.208,7L15.764,7L15.586,7L11.208,7L11.208,8L17.208,8C16.559,7.679 16.579,7.345 17.208,7Z" style="fill:rgb(113,113,113);"/>
</g>
<g transform="matrix(-0.138727,0,0,1,10.5549,-3)">
<path d="M10,7L4,7L4,8L10,8C9.35,7.679 9.37,7.345 10,7Z" style="fill:rgb(113,113,113);"/>
</g>
<g transform="matrix(1,0,0,1,-80,-45)">
<rect x="90" y="49" width="4" height="1" style="fill:rgb(226,226,226);"/>
</g>
<g transform="matrix(-0.166667,0,0,1,6.66667,3)">
<path d="M10,8L5.128,8C5.632,8.311 5.691,8.642 5.128,9L10,9L10,8Z" style="fill:rgb(113,113,113);"/>
</g>
<g transform="matrix(1,0,0,1,-89,-38)">
<rect x="90" y="49" width="4" height="1" style="fill:rgb(226,226,226);"/>
</g>
</g>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 3.7 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 6.7 KiB

@@ -1,38 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://5lleamn0de73"
path="res://.godot/imported/Project_nor.svg-58e5690f105d9fa4cc5677e77b09a4c1.ctex"
metadata={
"has_editor_variant": true,
"vram_texture": false
}
[deps]
source_file="res://addons/Wwise/editor/images/Project_nor.svg"
dest_files=["res://.godot/imported/Project_nor.svg-58e5690f105d9fa4cc5677e77b09a4c1.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
svg/scale=1.0
editor/scale_with_editor_scale=true
editor/convert_colors_with_editor_theme=false
@@ -1 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg width="100%" height="100%" viewBox="0 0 15 15" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;"><g id="ObjectIcons_SoundbankInit_nor"><g id="Icons"><g id="Base-Block" serif:id="Base Block"><path d="M15,2.1c-0,-1.159 -0.941,-2.1 -2.1,-2.1l-10.8,0c-1.159,0 -2.1,0.941 -2.1,2.1l-0,10.8c-0,1.159 0.941,2.1 2.1,2.1l10.8,0c1.159,0 2.1,-0.941 2.1,-2.1l-0,-10.8Z" style="fill-opacity:0;"/></g><path d="M2,4l-0.25,0c-0.966,0 -1.75,0.784 -1.75,1.75l-0,3.5c-0,0.966 0.784,1.75 1.75,1.75l0.25,0l-0,0.58c-0,1.336 1.084,2.42 2.42,2.42l6.16,0c1.336,0 2.42,-1.084 2.42,-2.42l-0,-0.58l0.25,0c0.966,0 1.75,-0.784 1.75,-1.75l-0,-3.5c-0,-0.966 -0.784,-1.75 -1.75,-1.75l-0.25,0l-0,-0.58c-0,-1.336 -1.084,-2.42 -2.42,-2.42l-6.16,0c-1.336,0 -2.42,1.084 -2.42,2.42l-0,0.58Zm10,1l-0,-1.74c-0,-0.695 -0.565,-1.26 -1.26,-1.26l-6.48,0c-0.695,0 -1.26,0.565 -1.26,1.26l-0,1.74l-2,0l-0,1l2,0l-0,1l-2,0l-0,1l2,0l-0,1l-2,0l-0,1l2,0l-0,1.74c-0,0.695 0.565,1.26 1.26,1.26l6.48,0c0.695,0 1.26,-0.565 1.26,-1.26l-0,-1.74l2,0l-0,-1l-2,0l-0,-1l2,0l-0,-1l-2,0l-0,-1l2,0l-0,-1l-2,0Z" style="fill:#222;"/><rect x="13" y="7" width="1" height="1" style="fill:#e2e2e2;"/><rect x="13" y="5" width="1" height="1" style="fill:#e2e2e2;"/><rect x="13" y="9" width="1" height="1" style="fill:#e2e2e2;"/><rect x="1" y="7" width="1" height="1" style="fill:#e2e2e2;"/><rect x="1" y="5" width="1" height="1" style="fill:#e2e2e2;"/><rect x="1" y="9" width="1" height="1" style="fill:#e2e2e2;"/><path d="M12,3.26c-0,-0.695 -0.565,-1.26 -1.26,-1.26l-6.48,0c-0.695,0 -1.26,0.565 -1.26,1.26l-0,8.48c-0,0.695 0.565,1.26 1.26,1.26l6.48,0c0.695,0 1.26,-0.565 1.26,-1.26l-0,-8.48Z" style="fill:#c8c8c8;"/><path d="M5,11l0,-0.977l2,-0.023l-0,-5l-2,-0l0,-1l5,0l0,1l-2,-0l-0,5l2,-0l0,1l-5,0Z" style="fill:#222;fill-rule:nonzero;"/><rect x="12" y="5" width="1" height="1" style="fill:#919191;"/><rect x="12" y="7" width="1" height="1" style="fill:#919191;"/><rect x="12" y="9" width="1" height="1" style="fill:#919191;"/><rect x="2" y="5" width="1" height="1" style="fill:#919191;"/><rect x="2" y="7" width="1" height="1" style="fill:#919191;"/><rect x="2" y="9" width="1" height="1" style="fill:#919191;"/></g></g></svg>

Before

Width:  |  Height:  |  Size: 2.4 KiB

@@ -1,58 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="100%" height="100%" viewBox="0 0 15 15" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:1.41421;">
<g transform="matrix(1,0,0,1,-100,-85)">
<g transform="matrix(1,0,0,1,100,85)">
<g id="ObjectIcons_Soundbank_nor">
<g id="Icons">
<g transform="matrix(1,0,0,1,-40,-25)">
<g id="Base-Block" serif:id="Base Block">
<path d="M55,27.1C55,25.941 54.059,25 52.9,25L42.1,25C40.941,25 40,25.941 40,27.1L40,37.9C40,39.059 40.941,40 42.1,40L52.9,40C54.059,40 55,39.059 55,37.9L55,27.1Z" style="fill-opacity:0;"/>
</g>
</g>
<path d="M10.58,14L4.42,14C3.084,14 2,12.916 2,11.58L2,11L1.75,11C0.784,11 0,10.216 0,9.25L0,5.75C0,4.786 0.781,4.003 1.75,4L2,4L2,3.42C2,2.086 3.081,1.003 4.42,1L10.58,1C11.919,1.003 13,2.086 13,3.42L13,4L13.25,4C14.219,4.003 15,4.786 15,5.75L15,9.25C15,10.216 14.216,11 13.25,11L13,11L13,11.58C13,12.915 11.916,14 10.58,14ZM10.74,2L4.26,2C3.564,2.001 3,2.565 3,3.26L3,5L1,5L1,6L3,6L3,7L1,7L1,8L3,8L3,9L1,9L1,10L3,10L3,11.74C3,12.435 3.565,13 4.26,13L10.74,13C11.435,13 12,12.435 12,11.74L12,10L14,10L14,9L12,9L12,8L14,8L14,7L12,7L12,6L14,6L14,5L12,5L12,3.26C12,2.565 11.436,2.001 10.74,2Z" style="fill:rgb(34,34,34);"/>
<g transform="matrix(0.333333,0,0,1,9.33333,0)">
<rect x="11" y="7" width="3" height="1" style="fill:rgb(226,226,226);"/>
</g>
<g transform="matrix(0.333333,0,0,1,9.33333,-4)">
<rect x="11" y="9" width="3" height="1" style="fill:rgb(226,226,226);"/>
</g>
<g transform="matrix(0.333333,0,0,1,9.33333,4)">
<rect x="11" y="5" width="3" height="1" style="fill:rgb(226,226,226);"/>
</g>
<g transform="matrix(0.333333,0,0,1,0.666667,0)">
<rect x="1" y="7" width="3" height="1" style="fill:rgb(226,226,226);"/>
</g>
<g transform="matrix(0.333333,0,0,1,0.666667,-4)">
<rect x="1" y="9" width="3" height="1" style="fill:rgb(226,226,226);"/>
</g>
<g transform="matrix(0.333333,0,0,1,0.666667,4)">
<rect x="1" y="5" width="3" height="1" style="fill:rgb(226,226,226);"/>
</g>
<path d="M10.74,2C11.438,2.003 12,2.566 12,3.26L12,11.74C12,12.435 11.435,13 10.74,13L4.26,13C3.565,13 3,12.435 3,11.74L3,3.26C3,2.566 3.562,2.003 4.26,2L10.74,2ZM10,6C9.984,4.653 9.505,3.898 7.527,3.898C5.409,3.898 4.883,4.772 4.883,6C4.883,7.228 5.478,8.083 7.508,8.06C8.724,8.047 9,8.279 9,9C9,9.721 8.718,10 7.522,10C6.15,10 6.012,9.698 6,9L5,9C4.985,10.256 5.361,11.106 7.578,11.106C9.794,11.106 10.102,10.303 10.102,9C10.102,7.42 9.628,6.962 7.557,6.953C6.62,6.949 6.011,6.947 6,6C5.99,5.179 6.716,5 7.573,5C8.752,5 8.996,5.125 9,6L10,6Z" style="fill:rgb(200,200,200);"/>
<g transform="matrix(-1,-0,0,1,24,-4)">
<rect x="11" y="9" width="1" height="1" style="fill:rgb(145,145,145);"/>
</g>
<g transform="matrix(0.842382,0,0,0.774249,-117.591,-64.2877)">
<path d="M148.589,97.376C145.958,97.376 145.511,96.278 145.529,94.656L146.716,94.656C146.731,95.558 146.894,95.948 148.523,95.948C149.943,95.948 150.278,95.587 150.278,94.656C150.278,93.726 149.949,93.425 148.506,93.443C146.097,93.472 145.391,92.368 145.391,90.782C145.391,89.196 146.014,88.067 148.529,88.067C150.88,88.067 151.447,89.044 151.465,90.782L150.278,90.782C150.273,89.651 149.983,89.49 148.584,89.49C147.566,89.49 146.705,89.721 146.716,90.782C146.73,92.005 147.453,92.008 148.564,92.013C151.023,92.025 151.586,92.616 151.586,94.656C151.586,96.339 151.221,97.376 148.589,97.376Z" style="fill:rgb(34,34,34);"/>
</g>
<g transform="matrix(-1,-0,0,1,24,0)">
<rect x="11" y="7" width="1" height="1" style="fill:rgb(145,145,145);"/>
</g>
<g transform="matrix(-1,-0,0,1,24,4)">
<rect x="11" y="5" width="1" height="1" style="fill:rgb(145,145,145);"/>
</g>
<g transform="matrix(-1,-0,0,1,6,-4)">
<rect x="3" y="9" width="1" height="1" style="fill:rgb(145,145,145);"/>
</g>
<g transform="matrix(-1,-0,0,1,6,0)">
<rect x="3" y="7" width="1" height="1" style="fill:rgb(145,145,145);"/>
</g>
<g transform="matrix(-1,-0,0,1,6,4)">
<rect x="3" y="5" width="1" height="1" style="fill:rgb(145,145,145);"/>
</g>
</g>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 5.2 KiB

@@ -1,27 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="100%" height="100%" viewBox="0 0 15 15" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:1.41421;">
<g transform="matrix(1,0,0,1,-40,-165)">
<g transform="matrix(1,0,0,1,40,165)">
<g id="ObjectIcons_StateGroup_nor">
<g id="Icons">
<g transform="matrix(1,0,0,1,-40,-25)">
<g id="Base-Block" serif:id="Base Block">
<path d="M55,27.1C55,25.941 54.059,25 52.9,25L42.1,25C40.941,25 40,25.941 40,27.1L40,37.9C40,39.059 40.941,40 42.1,40L52.9,40C54.059,40 55,39.059 55,37.9L55,27.1Z" style="fill-opacity:0;"/>
</g>
</g>
<path d="M4.346,6.008C4.123,5.554 4,5.041 4,4.5C4,2.568 5.568,1 7.5,1C9.432,1 11,2.568 11,4.5C11,5.041 10.877,5.554 10.654,6.008C12.514,6.084 14,7.62 14,9.5C14,11.432 12.432,13 10.5,13C9.225,13 8.108,12.317 7.5,11.295C6.892,12.317 5.775,13 4.5,13C2.568,13 1,11.432 1,9.5C1,7.62 2.486,6.084 4.346,6.008ZM7.183,9.48C7.183,10.923 5.991,12.092 4.52,12.092C3.05,12.092 1.858,10.923 1.858,9.48C1.858,8.037 3.05,6.867 4.52,6.867C5.991,6.867 7.183,8.037 7.183,9.48ZM13.183,9.48C13.183,10.923 11.991,12.092 10.52,12.092C9.05,12.092 7.858,10.923 7.858,9.48C7.858,8.037 9.05,6.867 10.52,6.867C11.991,6.867 13.183,8.037 13.183,9.48ZM4,11C5.414,11 5.96,10.345 5.96,9.48C5.96,8.613 5.414,8 4,8L4,11ZM10,11C11.414,11 11.96,10.345 11.96,9.48C11.96,8.613 11.414,8 10,8L10,11ZM10.183,4.48C10.183,5.923 8.991,7.092 7.52,7.092C6.05,7.092 4.858,5.923 4.858,4.48C4.858,3.037 6.05,1.867 7.52,1.867C8.991,1.867 10.183,3.037 10.183,4.48ZM7,6C8.414,6 8.96,5.345 8.96,4.48C8.96,3.613 8.414,3 7,3L7,6Z" style="fill:rgb(34,34,34);"/>
<g transform="matrix(1.06499,0,0,1.04499,6.98777,2.70325)">
<path d="M0.011,3.155C1.339,3.155 1.852,2.528 1.852,1.7C1.852,0.871 1.339,0.284 0.011,0.284L0.011,3.155ZM3,1.7C3,3.081 1.881,4.2 0.5,4.2C-0.881,4.2 -2,3.081 -2,1.7C-2,0.319 -0.881,-0.8 0.5,-0.8C1.881,-0.8 3,0.319 3,1.7" style="fill:rgb(226,226,226);"/>
</g>
<g transform="matrix(1.06499,0,0,1.04499,6.12999,8.83599)">
<path d="M-2,2.071C-0.672,2.071 -0.159,1.444 -0.159,0.616C-0.159,-0.213 -0.672,-0.8 -2,-0.8L-2,2.071ZM0.989,0.616C0.989,1.997 -0.13,3.116 -1.511,3.116C-2.892,3.116 -4.011,1.997 -4.011,0.616C-4.011,-0.765 -2.892,-1.884 -1.511,-1.884C-0.13,-1.884 0.989,-0.765 0.989,0.616" style="fill:rgb(226,226,226);"/>
</g>
<g transform="matrix(1.06499,0,0,1.04499,6.98777,2.70325)">
<path d="M2.828,7.94C4.156,7.94 4.669,7.313 4.669,6.485C4.669,5.656 4.156,5.069 2.828,5.069L2.828,7.94ZM5.817,6.485C5.817,7.866 4.698,8.985 3.317,8.985C1.936,8.985 0.817,7.866 0.817,6.485C0.817,5.104 1.936,3.985 3.317,3.985C4.698,3.985 5.817,5.104 5.817,6.485" style="fill:rgb(226,226,226);"/>
</g>
</g>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 3.3 KiB

-21
View File
@@ -1,21 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="100%" height="100%" viewBox="0 0 15 15" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:1.41421;">
<g transform="matrix(1,0,0,1,-60,-165)">
<g transform="matrix(1,0,0,1,60,165)">
<g id="ObjectIcons_State_nor">
<g id="Icons">
<g transform="matrix(1,0,0,1,-40,-25)">
<g id="Base-Block" serif:id="Base Block">
<path d="M55,27.1C55,25.941 54.059,25 52.9,25L42.1,25C40.941,25 40,25.941 40,27.1L40,37.9C40,39.059 40.941,40 42.1,40L52.9,40C54.059,40 55,39.059 55,37.9L55,27.1Z" style="fill-opacity:0;"/>
</g>
</g>
<path d="M7.5,1C11.087,1 14,3.913 14,7.5C14,11.087 11.087,14 7.5,14C3.913,14 1,11.087 1,7.5C1,3.913 3.913,1 7.5,1ZM13,7.5C13,10.538 10.537,13 7.5,13C4.463,13 2,10.538 2,7.5C2,4.462 4.463,2 7.5,2C10.537,2 13,4.462 13,7.5ZM7,11C9.709,11 11.175,9.709 11.175,7.5C11.175,5.291 9.709,4 7,4L7,11Z" style="fill:rgb(34,34,34);"/>
<g transform="matrix(1,0,0,1,7,3.5)">
<path d="M0,7.5C2.709,7.5 4.175,6.209 4.175,4C4.175,1.791 2.709,0.5 0,0.5L0,7.5ZM6,4C6,7.038 3.537,9.5 0.5,9.5C-2.537,9.5 -5,7.038 -5,4C-5,0.962 -2.537,-1.5 0.5,-1.5C3.537,-1.5 6,0.962 6,4" style="fill:rgb(200,200,200);"/>
</g>
</g>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.7 KiB

@@ -1,33 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="100%" height="100%" viewBox="0 0 15 15" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:1.41421;">
<g transform="matrix(1,0,0,1,-80,-165)">
<g transform="matrix(1,0,0,1,80,165)">
<g id="ObjectIcons_SwitchGroup_nor">
<g id="Icons">
<g transform="matrix(1,0,0,1,-40,-25)">
<g id="Base-Block" serif:id="Base Block">
<path d="M55,27.1C55,25.941 54.059,25 52.9,25L42.1,25C40.941,25 40,25.941 40,27.1L40,37.9C40,39.059 40.941,40 42.1,40L52.9,40C54.059,40 55,39.059 55,37.9L55,27.1Z" style="fill-opacity:0;"/>
</g>
</g>
<g transform="matrix(1,0,0,1,-80,-105)">
<path d="M84.65,106C85.395,106 86,106.605 86,107.35L86,117.65C86,118.395 85.395,119 84.65,119L84.35,119C83.605,119 83,118.395 83,117.65L83,107.35C83,106.605 83.605,106 84.35,106L84.65,106ZM85,107L84,107L84,118L85,118L85,107Z" style="fill:rgb(34,34,34);"/>
</g>
<path d="M6.558,5.5C6.214,5.173 6,4.711 6,4.2L6,2.8C6,1.807 6.807,1 7.8,1L9.2,1C10.193,1 11,1.807 11,2.8L11,4.2C11,4.711 10.786,5.173 10.442,5.5C10.786,5.827 11,6.289 11,6.8L11,8.2C11,8.711 10.786,9.173 10.442,9.5C10.786,9.827 11,10.289 11,10.8L11,12.2C11,13.192 10.196,13.998 9.2,14L7.8,14C6.807,14 6,13.193 6,12.2L6,10.8C6,10.289 6.214,9.827 6.558,9.5C6.214,9.173 6,8.711 6,8.2L6,6.8C6,6.289 6.214,5.827 6.558,5.5ZM10,10L9.2,10C9.2,10 7.8,10 7.8,10C7.8,10 7,10 7,10L7,13L10,13L10,10ZM7.8,6L7,6L7,9L10,9L10,6L9.2,6L7.8,6ZM10,2L7,2L7,5L10,5L10,2Z" style="fill:rgb(34,34,34);"/>
<g transform="matrix(1,0,0,1,-3,-8)">
<rect x="10" y="10" width="3" height="3" style="fill:rgb(200,200,200);"/>
</g>
<g transform="matrix(1,0,0,1,-3,-4)">
<rect x="10" y="10" width="3" height="3" style="fill:rgb(200,200,200);"/>
</g>
<g transform="matrix(1,0,0,1,-3,-1.42109e-13)">
<rect x="10" y="10" width="3" height="3" style="fill:rgb(200,200,200);"/>
</g>
<g transform="matrix(6.12323e-17,-1,1,5.72119e-18,2,7)">
<rect x="-6" y="2" width="11" height="1" style="fill:rgb(200,200,200);"/>
</g>
</g>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.7 KiB

-19
View File
@@ -1,19 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="100%" height="100%" viewBox="0 0 15 15" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:1.41421;">
<g transform="matrix(1,0,0,1,-100,-165)">
<g transform="matrix(1,0,0,1,100,165)">
<g id="ObjectIcons_Switch_nor">
<g id="Icons">
<g transform="matrix(1,0,0,1,-40,-25)">
<g id="Base-Block" serif:id="Base Block">
<path d="M55,27.1C55,25.941 54.059,25 52.9,25L42.1,25C40.941,25 40,25.941 40,27.1L40,37.9C40,39.059 40.941,40 42.1,40L52.9,40C54.059,40 55,39.059 55,37.9L55,27.1Z" style="fill-opacity:0;"/>
</g>
</g>
<path d="M4.2,13L3.8,13C2.807,13 2,12.193 2,11.2L2,3.8C2,2.808 2.805,2.002 3.8,2L4.2,2L4.384,2.009L4.5,2.027L4.616,2.009L4.8,2L10.2,2L10.384,2.009L10.5,2.027L10.616,2.009L10.8,2L11.2,2C12.195,2.002 13,2.808 13,3.8L13,11.2C13,12.191 12.197,12.996 11.2,13L10.8,13C10.698,13 10.597,12.991 10.5,12.973L10.384,12.991L10.2,13L4.8,13C4.698,13 4.597,12.991 4.5,12.973L4.384,12.991L4.2,13ZM12,12L12,3L3,3L3,12L12,12ZM10,5L10,10L5,10L5,5L10,5ZM9,6L6,6L6,9L9,9L9,6Z" style="fill:rgb(34,34,34);"/>
<path d="M10,5L5,5L5,10L10,10L10,5ZM12,12L3,12L3,3L12,3L12,12Z" style="fill:rgb(200,200,200);"/>
</g>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.7 KiB

@@ -1,38 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://1r1vuey5c32k"
path="res://.godot/imported/Switch_nor.svg-8d49f8fe707baf8c0ac91b5a53c494a7.ctex"
metadata={
"has_editor_variant": true,
"vram_texture": false
}
[deps]
source_file="res://addons/Wwise/editor/images/Switch_nor.svg"
dest_files=["res://.godot/imported/Switch_nor.svg-8d49f8fe707baf8c0ac91b5a53c494a7.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
svg/scale=1.0
editor/scale_with_editor_scale=true
editor/convert_colors_with_editor_theme=false
@@ -1,18 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="100%" height="100%" viewBox="0 0 15 15" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:1.41421;">
<g transform="matrix(1,0,0,1,-60,-85)">
<g id="ObjectIcons_Workunit_nor" transform="matrix(1,0,0,1,-160,-40)">
<g transform="matrix(1,0,0,1,180,100)">
<g id="Base-Block" serif:id="Base Block">
<path d="M55,27.1C55,25.941 54.059,25 52.9,25L42.1,25C40.941,25 40,25.941 40,27.1L40,37.9C40,39.059 40.941,40 42.1,40L52.9,40C54.059,40 55,39.059 55,37.9L55,27.1Z" style="fill-opacity:0;"/>
</g>
</g>
<path d="M227.5,125.735L221,128.926L221,136.062L227.5,139.63L234,136.062L234,128.926L227.5,125.735ZM227.5,126.817L222,129.5L222,135.5L227.5,138.5L233,135.5L233,129.5L227.5,126.817Z" style="fill:rgb(34,34,34);"/>
<path d="M227.5,126.817L222,129.5L222,135.5L227.5,138.5L233,135.5L233,129.5L227.5,126.817ZM226,130L224,130L224,132.553C223.97,134.358 225.313,136.008 227.54,136C229.778,135.992 231.013,134.238 231,132.856L231,130L229,130L229,132.769C229.003,133.482 228.282,133.997 227.527,134C226.762,134.001 225.996,133.509 226,132.683L226,130Z" style="fill:rgb(200,200,200);"/>
<g transform="matrix(1,0,0,1,60,20)">
<path d="M166,110L164,110L164,112.553C163.97,114.358 165.313,116.008 167.54,116C169.778,115.992 171.013,114.238 171,112.856L171,110L169,110L169,112.769C169.003,113.482 168.282,113.997 167.527,114C166.762,114.001 165.996,113.509 166,112.683L166,110Z" style="fill:rgb(34,34,34);"/>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.9 KiB

@@ -1,38 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://pc88x388tcsm"
path="res://.godot/imported/Workunit_nor.svg-e25848aba6a8174e5430bbb0701de596.ctex"
metadata={
"has_editor_variant": true,
"vram_texture": false
}
[deps]
source_file="res://addons/Wwise/editor/images/Workunit_nor.svg"
dest_files=["res://.godot/imported/Workunit_nor.svg-e25848aba6a8174e5430bbb0701de596.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
svg/scale=1.0
editor/scale_with_editor_scale=true
editor/convert_colors_with_editor_theme=false
@@ -1,3 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="64" height="64" xml:space="preserve" version="1.1" viewBox="0 0 64 64">
<image width="64" height="64" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAADXElEQVR4Xu2aTa7aMBDHyWurqk/qphU7hNi8FZfgEnAeuA5cgkuw6wIhdkjt5kmtqtemThpbjjP2zPgjJCQsiTPM/Pz3319kk4F/soHXPxkBjAoYOIFxCAxcAKMJdmEI5JoKQ/ORschxyA0TDBVVeJ7nkyxTqfjmpIOU6aKx0AYJCi9ClskWheufCoJPTo141Fg+PxbKBCy+CEpNGkhAsARhlmFdCbcNwFp8KACHopwQ2gTgLD4QQFV/0wYwVbUBoGZ2Tjn+N0JKTtDM4fIVa1zKj4WMeZnUXxHkCQuE9Vb1vioUmDnY5poSACp5EwgVgG54EASOIaYCwC6e4QGY47NUkAKAV/EhAIB3MUhKfLEBeBfPAUCY8sgqiAkgqHgLANs+gVIgSQUmAGg9jZm3em6aD/nFqqFhgi63B+d9wxApkGpzbnAPcgtGZoFaD3pOeTYVgDuvRuPQgrjvmwogbJawArHndQWESphbMEcBmkfoqzpsnGPPuw3A4fZSwtg4x553GoDL6HTzxmTufO4MFCpp7vvAUth20EEZBkolLi/pOgCKCh5aASMAQSCoh7H3xyGgGVXXFkIytSQKWK/X7w+Hw5/BKkBQfRKzTv6wAPb7/ctms/k2WA9YLpcfT6fT774DQJeytgKlxHsPgHDAGWSSXfcAsLjVavXheDy+VdPEwwIgyd/cMXJPhbqsAHQvbxvf8/n8y+Vy+eEY/2oz1UcA1LMA6z5CM8jmmSB3C6st13xfVe+5jsQ8boAoQ4h0EUkpLMqBKnQqbPw42vvT6fTz7XZ7pchfP1SgFIm1CYYA3Q0KuWa73S7bbrfFBSu2P0APShaLxafz+fxLBop5MVKOuZAhQb0cNZ2/rFpcrevLX1uboqnek7EBqPqhBDAJUQEELI4aqk8FQKmBc9QeAmA2mz1fr9efUoWEO4WyP1ICYEPwAcBY+ID1pgbAgkAFAAwl6wmw9Ad97m/DA8wcSTMEEUAZG5gdOvkfIR0EOkNwABiEvYpvwwMg47eqIQQAZLZFPGGOX4U5frfNQG14ABlCTADU/x7fC0DDHKkJW3qypipOrHsCUBBkUcZBB7ZuAo1WfimWzu+M5TMY794AuEVGbz8CiI60ZwFHBfSsw6KnOyogOtKeBRy8Av4BmuykXyL1kYAAAAAASUVORK5CYII="/>
</svg>

Before

Width:  |  Height:  |  Size: 1.4 KiB

@@ -1,46 +0,0 @@
[gd_scene format=3 uid="uid://bomvl5s3ftk53"]
[node name="WwisePickerControl" type="VBoxContainer"]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="ParentVBoxContainer" type="VBoxContainer" parent="."]
layout_mode = 2
size_flags_vertical = 3
[node name="TopVBoxContainer" type="VBoxContainer" parent="ParentVBoxContainer"]
layout_mode = 2
[node name="ButtonsHContainer" type="HBoxContainer" parent="ParentVBoxContainer/TopVBoxContainer"]
layout_mode = 2
[node name="RefreshProjectButton" type="Button" parent="ParentVBoxContainer/TopVBoxContainer/ButtonsHContainer"]
layout_mode = 2
text = "Refresh Project"
[node name="ExportSoundbanksButton" type="Button" parent="ParentVBoxContainer/TopVBoxContainer/ButtonsHContainer"]
layout_mode = 2
text = "Generate Soundbanks"
[node name="GenerateIdsButton" type="Button" parent="ParentVBoxContainer/TopVBoxContainer/ButtonsHContainer"]
layout_mode = 2
text = "Generate Wwise IDs"
[node name="ConnectionText" type="Label" parent="ParentVBoxContainer/TopVBoxContainer/ButtonsHContainer"]
layout_mode = 2
[node name="SearchText" type="LineEdit" parent="ParentVBoxContainer/TopVBoxContainer"]
layout_mode = 2
placeholder_text = "Search Wwise project..."
caret_blink = true
caret_blink_interval = 0.5
[node name="ProjectObjectsTree" type="Tree" parent="ParentVBoxContainer"]
layout_mode = 2
size_flags_vertical = 3
allow_reselect = true
-161
View File
@@ -1,161 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<class name="Waapi" inherits="Node" version="4.1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../class.xsd">
<brief_description>
</brief_description>
<description>
</description>
<tutorials>
</tutorials>
<methods>
<method name="client_call">
<return type="Dictionary" />
<param index="0" name="uri" type="String" />
<param index="1" name="args" type="String" />
<param index="2" name="options" type="String" />
<description>
Calls the Waapi client with a given [param uri], [param arguments] and [param
options]. Example of usage:
[gdscript]
var json: JSON = JSON.new()
var connectResult = Waapi.connect_client("127.0.0.1", 8080)
if connectResult:
var args = {"from": {"ofType": ["Project", "Bus", "Switch", "State", "Event",
"SoundBank"]}}
var options = {"return": ["name", "type", "workunit", "path", "shortId"]}
var dict = Waapi.client_call("ak.wwise.core.object.get", JSON.stringify(args),
JSON.stringify(options))
var json_document = json.parse(dict["result_string"])
if json_document == OK:
if json.data.has("return"):
print(json.data["return"])
if Waapi.is_client_connected():
Waapi.disconnect_client()
[/gdscript]
Returns a Dictionary with keys [code]call_result[/code], [code]result_string[/code].
</description>
</method>
<method name="client_call_with_timeout">
<return type="Dictionary" />
<param index="0" name="uri" type="String" />
<param index="1" name="args" type="String" />
<param index="2" name="options" type="String" />
<param index="3" name="timeout_ms" type="int" />
<description>
Calls the Waapi client with a given [param uri], [param args] and [param options], specifying a timeout in
milliseconds.[br][br]
Returns a Dictionary with keys [code]call_result[/code], [code]result_string[/code].
</description>
</method>
<method name="connect_client">
<return type="bool" />
<param index="0" name="uri" type="String" />
<param index="1" name="port" type="int" />
<description>
Connects the Waapi client at the given [param uri] and [param port]. The Wwise
authoring application
should be open and available at the given location and port in order for this call
to succeed. Example:
[gdscript]
var connect_result = Waapi.connect_client("127.0.0.1", 8080)
if connect_result:
# Do something...
[/gdscript]
Returns [code]true[/code] if the connection succeeded.
</description>
</method>
<method name="disconnect_client">
<return type="void" />
<description>
Disconnects the client.
</description>
</method>
<method name="get_last_string">
<return type="String" />
<description>
Gets the last string result from [method subscribe], [method unsubscribe] or [method client_call]. Useful for
debugging.[br][br]
Returns a [code]result[/code] String.
</description>
</method>
<method name="is_client_connected">
<return type="bool" />
<description>
Checks the connection status of the Waapi client.[br][br]
Returns [code]true[/code] if the client is connected, [code]false[/code] otherwise.
</description>
</method>
<method name="process_callbacks">
<return type="void" />
<description>
</description>
</method>
<method name="subscribe">
<return type="Dictionary" />
<param index="0" name="uri" type="String" />
<param index="1" name="options" type="String" />
<description>
Subscribes the Waapi client to changes to the Wwise project in the authoring
app. In order to get the data dictionary with keys [code]subscription_id[/code], [code]subscribe_result[/code]
and [code]result_string.[br]
The signal wamp_event should be connected in GDScripts, e.g.
[gdscript]
Waapi.connect("wamp_event", Callable(self, "_on_wamp_event"))
func _on_wamp_event(data):
print(data)
[/gdscript]
Return a dictionary with keys [code]subscription_id[/code], [code]subscribe_result[/code]
and [code]result_string.
</description>
</method>
<method name="subscribe_with_timeout">
<return type="Dictionary" />
<param index="0" name="uri" type="String" />
<param index="1" name="options" type="String" />
<param index="2" name="timeout_ms" type="int" />
<description>
Subscribes the Waapi client to changes to the Wwise project in the authoring
app and returns after some timeout in milliseconds has passed. Works similarly to
[method subscribe] but with a timeout.[br][br]
Return a dictionary with keys [code]subscription_id[/code],
[code]subscribe_result[/code]
and [code]result_string.
</description>
</method>
<method name="unsubscribe">
<return type="Dictionary" />
<param index="0" name="subscription_id" type="int" />
<description>
Unsubscribes the Waapi client to changes to the Wwise project in the authoring app,
given a subscription ID.[br][br]
Returns a Dictionary with keys [code]unsubscribe_result[/code],
[code]result_string[/code].
</description>
</method>
<method name="unsubscribe_with_timeout">
<return type="Dictionary" />
<param index="0" name="subscription_id" type="int" />
<param index="1" name="timeout_ms" type="int" />
<description>
Unsubscribes the Waapi client to changes to the Wwise project in the authoring app
with a timeout in milliseconds. Works similarly to [method unsubscribe] but with a
timeout.[br][br]
Returns a Dictionary with keys [code]unsubscribe_result[/code],
[code]result_string[/code].
</description>
</method>
</methods>
<signals>
<signal name="wamp_event">
<param index="0" name="data" type="Dictionary" />
<description>
</description>
</signal>
</signals>
</class>
-754
View File
@@ -1,754 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<class name="Wwise" inherits="Object" version="4.1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../class.xsd">
<brief_description>
</brief_description>
<description>
</description>
<tutorials>
<link title="Wwise Integration for Godot Wiki">
https://github.com/alessandrofama/wwise-godot-integration/wiki</link>
</tutorials>
<methods>
<method name="add_output">
<return type="bool" />
<param index="0" name="share_set" type="String" />
<param index="1" name="output_id" type="int" />
<description>
Adds an output to with the given [param share_set] and [param output_id] to the
sound engine. Calls [code]AK::SoundEngine::AddOutput[/code].[br][br]
Returns [code]true[/code] if adding the output succeeded.
</description>
</method>
<method name="get_playing_segment_info">
<return type="Dictionary" />
<param index="0" name="playing_id" type="int" />
<param index="1" name="extrapolate" type="bool" />
<description>
Queries information on the active segment of a music object that is playing,
associated with the given [param playing_id], obtained from [method
post_event_callback] or
[method post_event_id_callback]. You need to pass the
[code]AK_EnableGetMusicPlayPosition[/code]
[code]AkCallbackType[/code] flag defined in the [AkUtils] class to use this method.
Calls
[code]AK::MusicEngine::GetPlayingSegmentInfo[/code].[br][br]
Returns a Dictionary with the segment info.
</description>
</method>
<method name="get_rtpc_value">
<return type="float" />
<param index="0" name="name" type="String" />
<param index="1" name="game_object" type="Object" />
<description>
Gets the RTPC value with the given [param name] of the [param game_object]. Pass
[code]null[/code] to
[param game_object] to get a global RTPC value. Calls
[code]AK::SoundEngine::Query::GetRTPCValue[/code].[br][br]
Returns the RTPC value if succeeded, 1.0f (INVALID_RTPC_VALUE) if failed.
</description>
</method>
<method name="get_rtpc_value_id">
<return type="float" />
<param index="0" name="id" type="int" />
<param index="1" name="game_object" type="Object" />
<description>
Gets the RTPC value with the given [param id] of the [param game_object]. Pass
[code]null[/code] to
[param game_object] to get a global RTPC value. Calls
[code]AK::SoundEngine::Query::GetRTPCValue[/code].[br][br]
Returns the RTPC value if succeeded, 1.0f (INVALID_RTPC_VALUE) if failed.
</description>
</method>
<method name="get_source_play_position">
<return type="int" />
<param index="0" name="playing_id" type="int" />
<param index="1" name="extrapolate" type="bool" />
<description>
Gets the current position of the source associated with the given [param
playing_id],
obtained from [method post_event_callback] or [method post_event_id_callback]. You
need to
pass
the [code]AK_EnableGetSourcePlayPosition[/code] [code]AkCallbackType[/code] flag
defined in the [AkUtils] class
to use this method. Calls
[code]AK::SoundEngine::GetSourcePlayPosition[/code].[br][br]
Returns the current position of the source if succeeded, 0 if failed.
</description>
</method>
<method name="init">
<return type="void" />
<description>
Initializes the Wwise Soundengine. This is called automatically by the Wwise Runtime
autoload singleton at each game start.
</description>
</method>
<method name="load_bank">
<return type="bool" />
<param index="0" name="bank_name" type="String" />
<description>
Loads a bank with the given [param bank_name]. Calls
[code]AK::SoundEngine::LoadBank[/code].[br][br]
Returns [code]true[/code] if bank loading succeeded.
</description>
</method>
<method name="load_bank_async">
<return type="bool" />
<param index="0" name="bank_name" type="String" />
<param index="1" name="cookie" type="CookieWrapper" />
<description>
Loads a bank with the given [param bank_name]. The [param cookie] Object should be a
[CookieWrapper]
instance variable. Set the [param cookie] property of the wrapper to a [Callable] of
your
choice. Calls [code]AK::SoundEngine::LoadBank[/code].[br][br]
Returns [code]true[/code] if bank loading succeeded.
</description>
</method>
<method name="load_bank_async_id">
<return type="bool" />
<param index="0" name="bank_id" type="int" />
<param index="1" name="cookie" type="CookieWrapper" />
<description>
Loads a bank with the given [param bank_id]. The [param cookie] Object should be a
[CookieWrapper]
instance variable. Set the [param cookie] property of the wrapper to a [Callable] of
your
choice. Calls [code]AK::SoundEngine::LoadBank[/code].[br][br]
Returns [code]true[/code] if bank loading succeeded.
</description>
</method>
<method name="load_bank_id">
<return type="bool" />
<param index="0" name="bank_id" type="int" />
<description>
Loads a bank with the given [param bank:id]. Calls
[code]AK::SoundEngine::LoadBank[/code].[br][br]
Returns [code]true[/code] if bank loading succeeded.
</description>
</method>
<method name="post_event">
<return type="int" />
<param index="0" name="event_name" type="String" />
<param index="1" name="game_object" type="Object" />
<description>
Posts an Event with the given [param event_name] on the given [param game_object] to
the sound
engine. Calls [code]AK::SoundEngine::PostEvent[/code].[br][br]
Returns the [code]playing ID[/code] of the Event launched, or [code]0[/code] if
posting the Event failed.
</description>
</method>
<method name="post_event_callback">
<return type="int" />
<param index="0" name="event_name" type="String" />
<param index="1" name="flags" type="int" enum="AkUtils.AkCallbackType" />
<param index="2" name="game_object" type="Object" />
<param index="3" name="cookie" type="CookieWrapper" />
<description>
Posts an Event with the given [param event_name] on the given [param game_object] to
the sound
engine. Pass the [code]AkCallbackType[/code] flag defined in the [AkUtils] class to
[param flags]. The
[param cookie] Object should be a [CookieWrapper] instance variable. Set the [param
cookie] property of the wrapper to a [Callable] of your choice.
Calls [code]AK::SoundEngine::PostEvent[/code].[br][br]
Returns the [code]playing ID[/code] of the Event launched, or [code]0[/code] if
posting the Event failed.
</description>
</method>
<method name="post_event_id">
<return type="int" />
<param index="0" name="event_id" type="int" />
<param index="1" name="game_object" type="Object" />
<description>
Posts an Event with the given [param event_id] on the given [param game_object] to
the sound
engine. Calls [code]AK::SoundEngine::PostEvent[/code].[br][br]
Returns the [code]playing ID[/code] of the Event launched, or [code]0[/code] if
posting the Event failed.
</description>
</method>
<method name="post_event_id_callback">
<return type="int" />
<param index="0" name="event_id" type="int" />
<param index="1" name="flags" type="int" enum="AkUtils.AkCallbackType" />
<param index="2" name="game_object" type="Object" />
<param index="3" name="cookie" type="CookieWrapper" />
<description>
Posts an Event with the given [param event_id] on the given [param game_object] to
the sound
engine. Pass the [code]AkCallbackType[/code] flag defined in the [AkUtils] class to
[param flags]. The
[param cookie] Object should be a [CookieWrapper] instance variable. Set the [param
cookie] property of the wrapper to a [Callable] of your choice.
Calls [code]AK::SoundEngine::PostEvent[/code].[br][br]
Returns the [code]playing ID[/code] of the Event launched, or [code]0[/code] if
posting the Event failed.
</description>
</method>
<method name="post_external_source">
<return type="int" />
<param index="0" name="event_name" type="String" />
<param index="1" name="game_object" type="Object" />
<param index="2" name="source_object_name" type="String" />
<param index="3" name="filename" type="String" />
<param index="4" name="id_codec" type="int" enum="AkUtils.AkCodecID" />
<description>
Posts an Event with the given [param event_name] with an External Source on the
[param game_object].
[param source_object_name] is the Wwise External Source SFX name added through the
Contents
Editor in the authoring application. [param file_path] refers to the relative file
path of
the external source specified in the Output Path of the External Sources settings in
the authoring application. Pass the [code]AkCodecID[/code] value defined in
[AkUtils] class to
[param id_codec]. Calls [code]AK::SoundEngine::PostEvent[/code].[br][br]
Returns the [code]playing ID[/code] of the Event launched, or [code]0[/code] if
posting the Event failed.
</description>
</method>
<method name="post_external_source_id">
<return type="int" />
<param index="0" name="event_id" type="int" />
<param index="1" name="game_object" type="Object" />
<param index="2" name="source_object_id" type="int" />
<param index="3" name="filename" type="String" />
<param index="4" name="id_codec" type="int" enum="AkUtils.AkCodecID" />
<description>
Posts an Event with the given [param event_id] with an External Source on the [param
game_object].
[param source_object_id] is the Wwise External Source SFX ID added through the
Contents
Editor in the authoring application. [param file_path] refers to the relative file
path of
the external source specified in the Output Path of the External Sources settings in
the authoring application. Pass the [code]AkCodecID[/code] value defined in
[AkUtils] class to
[param id_codec]. Calls [code]AK::SoundEngine::PostEvent[/code].[br][br]
Returns the [code]playing ID[/code] of the Event launched, or [code]0[/code] if
posting the Event failed.
</description>
</method>
<method name="post_trigger">
<return type="bool" />
<param index="0" name="name" type="String" />
<param index="1" name="game_object" type="Object" />
<description>
Posts a trigger with the given [param name] on the given [param game_object]. Calls
[code]AK::SoundEngine::PostTrigger[/code].[br][br]
Returns [code]true[/code] if posting the trigger succeeded.
</description>
</method>
<method name="post_trigger_id">
<return type="bool" />
<param index="0" name="id" type="int" />
<param index="1" name="game_object" type="Object" />
<description>
Posts a trigger with the given [param id] on the given [param game_object]. Calls
[code]AK::SoundEngine::PostTrigger[/code].[br][br]
Returns [code]true[/code] if posting the trigger succeeded.
</description>
</method>
<method name="register_game_obj">
<return type="bool" />
<param index="0" name="game_object" type="Object" />
<param index="1" name="name" type="String" />
<description>
Registers a game object with the given [param game_object] and [param name].
Calls [code]AK::SoundEngine::RegisterGameObj[/code].[br][br]
Returns [code]true[/code] if registering the game object succeeded.
</description>
</method>
<method name="register_listener">
<return type="bool" />
<param index="0" name="game_object" type="Object" />
<description>
Registers a listener with the given [param game_object].
Returns [code]true[/code] if registering the listener succeeded.
</description>
</method>
<method name="register_spatial_listener">
<return type="bool" />
<param index="0" name="game_object" type="Object" />
<description>
Registers a spatial audio listener with the given [param game_object].Calls
[code]AK::SpatialAudio::RegisterListener[/code].[br][br]
Returns [code]true[/code] if registering the listener succeeded.[br][br]
Note: There can be only one Spatial Audio listener registered at any given time.
</description>
</method>
<method name="remove_game_object_from_room">
<return type="bool" />
<param index="0" name="game_object" type="Object" />
<description>
Removes the given [param game_object] from any room. Calls
[code]AK::SpatialAudio::SetGameObjectInRoom[/code].[br][br]
Returns [code]true[/code] if removing the game_object from a room succeeded.
</description>
</method>
<method name="remove_geometry">
<return type="bool" />
<param index="0" name="game_object" type="Object" />
<description>
Removes a geometry set. Pass the [param game_object] that was
used to register the geometry. Calls
[code]AK::SpatialAudio::RemoveGeometry[/code].[br][br]
Returns [code]true[/code] if removing the geometry set succeeded.
</description>
</method>
<method name="remove_output">
<return type="bool" />
<param index="0" name="output_id" type="int" />
<description>
Removes an output with the given [param output_id]. Calls
[code]AK::SoundEngine::RemoveOutput[/code].[br][br]
Returns [code]true[/code] if removing the output succeeded.
</description>
</method>
<method name="remove_portal">
<return type="bool" />
<param index="0" name="game_object" type="Object" />
<description>
Removes a portal created previously with [param set_portal]. Calls
[code]AK::SpatialAudio::RemovePortal[/code].[br][br]
Returns [code]true[/code] if removing the portal succeeded.
</description>
</method>
<method name="remove_room">
<return type="bool" />
<param index="0" name="game_object" type="Object" />
<description>
Removes a room with the given [param game_object]. Calls
[code]AK::SpatialAudio::RemoveRoom[/code].[br][br]
Returns [code]true[/code] if removing the room succeeded.
</description>
</method>
<method name="render_audio">
<return type="void" />
<description>
Processes all commands in the sound engine's command queue. This is called
automatically by the Wwise Runtime autoload singleton. Calls
[code]AK::SoundEngine::RenderAudio[/code].
</description>
</method>
<method name="set_2d_position">
<return type="bool" />
<param index="0" name="game_object" type="Object" />
<param index="1" name="transform_2d" type="Transform2D" />
<param index="2" name="z_depth" type="float" />
<description>
Sets the 3D position of the given [param game_object] with the given [param
transform_2d]
and [param z_depth]. Use the [param z_depth] parameter to position the game object
on the z-axis. Calls [code]AK::SoundEngine::SetPosition[/code].[br][br]
Returns [code]true[/code] if setting the position succeeded.
</description>
</method>
<method name="set_3d_position">
<return type="bool" />
<param index="0" name="game_object" type="Object" />
<param index="1" name="transform_3d" type="Transform3D" />
<description>
Sets the 3D position of the given [param game_object] with the given [param
transform_3d]. Calls [code]AK::SoundEngine::SetPosition[/code].[br][br]
Returns [code]true[/code] if setting the position succeeded.
</description>
</method>
<method name="set_base_path">
<return type="bool" />
<param index="0" name="base_path" type="String" />
<description>
Configures the root path for the generated soundbanks. This feature proves
beneficial when loading soundbanks from external sources beyond Godot's virtual
filesystem.
</description>
</method>
<method name="set_current_language">
<return type="void" />
<param index="0" name="language" type="String" />
<description>
Sets the current language. This is done automatically based on the
[code]startup_language[/code] setting in the Common User Wwise settings (Project
Settings).
</description>
</method>
<method name="set_early_reflections_aux_send">
<return type="bool" />
<param index="0" name="game_object" type="Object" />
<param index="1" name="aux_id" type="int" />
<description>
Set the given early reflections auxiliary bus [param aux_id] for the particular
[param game_object]. Calls
[code]AK::SpatialAudio::SetEarlyReflectionsAuxSend[/code].[br][br]
Returns [code]true[/code] if setting the early reflections auxiliary bus succeeded.
</description>
</method>
<method name="set_early_reflections_volume">
<return type="bool" />
<param index="0" name="game_object" type="Object" />
<param index="1" name="volume" type="float" />
<description>
Set the given early reflections send [param volume] for the particular [param
game_object].
Calls [code]AK::SpatialAudio::SetEarlyReflectionsVolume[/code].[br][br]
Returns [code]true[/code] if setting the early reflections send volume succeeded.
</description>
</method>
<method name="set_game_object_aux_send_values">
<return type="bool" />
<param index="0" name="game_object" type="Object" />
<param index="1" name="ak_aux_send_values" type="Array" />
<param index="2" name="num_send_values" type="int" />
<description>
Sets the Auxiliary Busses to route the specified [param game_object]. Pass an Array
of
Dictionaries to [param ak_aux_send_values] representing environments. The
Dictionaries
should contain the keys [code]aux_bus_id[/code] (the Aux Bus ID) and
[code]control_value[/code] (float
representing the attenuation or amplification factor applied to the volume of the
sound going through the auxiliary bus). Pass the number of environments to
[param num_send_values], 0 to clear the game object's auxiliary send. Calls
[code]AK::SoundEngine::SetGameObjectAuxSendValues[/code].[br][br]
Returns [code]true[/code] if succeeded.
</description>
</method>
<method name="set_game_object_in_room">
<return type="bool" />
<param index="0" name="game_object" type="Object" />
<param index="1" name="room" type="Object" />
<description>
Sets the room that the game object is currently located in. Pass a previously
registered game object to [param game_object] and the room to [param room]. Calls
[code]AK::SpatialAudio::SetGameObjectInRoom[/code].[br][br]
Returns [code]true[/code] if setting the game object in a room succeeded.
</description>
</method>
<method name="set_game_object_output_bus_volume">
<return type="bool" />
<param index="0" name="game_object" type="Object" />
<param index="1" name="listener" type="Object" />
<param index="2" name="f_control_value" type="float" />
<description>
Sets the Output Bus Volume of the given [param game_object]. Calls
[code]AK::SoundEngine::SetGameObjectOutputBusVolume[/code].[br][br]
Returns [code]true[/code] if setting the Output Bus Volume succeeded.
</description>
</method>
<method name="set_game_object_radius">
<return type="bool" />
<param index="0" name="game_object" type="Object" />
<param index="1" name="outer_radius" type="float" />
<param index="2" name="inner_radius" type="float" />
<description>
Sets the outer and inner radius for the specified [param game_object]. Calls
[code]AK::SpatialAudio::SetGameObjectRadius[/code].
</description>
</method>
<method name="set_game_object_to_portal_obstruction">
<return type="bool" />
<param index="0" name="game_object" type="Object" />
<param index="1" name="portal" type="Object" />
<param index="2" name="obstruction_value" type="float" />
<description>
</description>
</method>
<method name="set_geometry">
<return type="bool" />
<param index="0" name="vertices" type="Array" />
<param index="1" name="triangles" type="Array" />
<param index="2" name="acoustic_texture" type="Resource" />
<param index="3" name="transission_loss_value" type="float" />
<param index="4" name="game_object" type="Object" />
<param index="5" name="enable_diffraction" type="bool" />
<param index="6" name="enable_diffraction_on_boundary_edges" type="bool" />
<description>
Adds a set of geometry from the SpatialAudio module for geometric reflection and
diffaction processing on the given [param game_object]. [param vertices] should be
an Array
containing Vertices (Vector3), pass an Array of triangles (int) to [param
triangles].
[param enable_diffraction] enables or disables geometric diffraction for this
geometry,
[param enable_diffraction_on_boundary_edges] enables or disables geometric
diffraction on
boundary edges for this geometry. [param acoustic_texture] is a AkAcousticTexture
resource (currently not supported). Pass
null here if you don't use acoustic textures. Calls
[code]AK::SpatialAudio::SetGeometry[/code].
</description>
</method>
<method name="set_listeners">
<return type="bool" />
<param index="0" name="emtter" type="Object" />
<param index="1" name="listener" type="Object" />
<description>
Associates the game object [param emitter] with a [param listener] object.[br][br]
Returns [code]true[/code] if succeeded.
</description>
</method>
<method name="set_multiple_positions_2d">
<return type="bool" />
<param index="0" name="game_object" type="Object" />
<param index="1" name="positions" type="Transform2D[]" />
<param index="2" name="z_depths" type="float[]" />
<param index="3" name="num_positions" type="int" />
<param index="4" name="multi_position_type" type="int" enum="AkUtils.MultiPositionType" />
<description>
Sets the 2D position of the given [param game_object] with the given [param
positions] array.
Specify the number of position with [param num_positions] and the position type with
[enum AkUtils.MultiPositionType]. Calls
[code]AK::SoundEngine::SetMultiplePositions[/code].
</description>
</method>
<method name="set_multiple_positions_3d">
<return type="bool" />
<param index="0" name="game_object" type="Object" />
<param index="1" name="positions" type="Transform3D[]" />
<param index="2" name="num_positions" type="int" />
<param index="3" name="multi_position_type" type="int" enum="AkUtils.MultiPositionType" />
<description>
Sets the 3D position of the given [param game_object] with the given [param
positions] array.
Specify the number of position with [param num_positions] and the position type with
[enum AkUtils.MultiPositionType]. Calls
[code]AK::SoundEngine::SetMultiplePositions[/code].
</description>
</method>
<method name="set_object_obstruction_and_occlusion">
<return type="bool" />
<param index="0" name="game_object" type="Object" />
<param index="1" name="listener" type="Object" />
<param index="2" name="calculated_obs" type="float" />
<param index="3" name="calculated_occ" type="float" />
<description>
Sets the obstruction and occlusion levels of the given [param game_object]. It's up
to you
to calculate the [param calculated_obs] and [param calculated_occ] values. Calls
[code]AK::SoundEngine::SetObjectObstructionAndOcclusion[/code].[br][br]
Returns [code]true[/code] if succeeded.
</description>
</method>
<method name="set_portal">
<return type="bool" />
<param index="0" name="game_object" type="Object" />
<param index="1" name="transform" type="Transform3D" />
<param index="2" name="extent" type="Vector3" />
<param index="3" name="front_room" type="Object" />
<param index="4" name="back_room" type="Object" />
<param index="5" name="enabled" type="bool" />
<description>
Adds an acoustic portal with the given [param game_object] at the [param transform]
position. [param extent]
defines the dimensions of the portal relative to its center. Pass room objects
created with [method set_room] to [param front_room] and [param back_room]. [param
enabled] defines wheter the portal
is active or enabled. [code]Calls AK::SpatialAudio::SetPortal[/code].[br][br]
Returns [code]true[/code] if setting the portal succeeded.
</description>
</method>
<method name="set_portal_obstruction_and_occlusion">
<return type="bool" />
<param index="0" name="portal" type="Object" />
<param index="1" name="obstruction_value" type="float" />
<param index="2" name="occlusion_value" type="float" />
<description>
</description>
</method>
<method name="set_portal_to_portal_obstruction">
<return type="bool" />
<param index="0" name="portal0" type="Object" />
<param index="1" name="portal1" type="Object" />
<param index="2" name="obstruction_value" type="float" />
<description>
</description>
</method>
<method name="set_random_seed">
<return type="void" />
<param index="0" name="seed" type="int" />
<description>
Sets the random seed value. Can be used to synchronize randomness across instances
of the Soundengine. Calls [code]AK::SoundEngine::SetRandomSeed[/code].
</description>
</method>
<method name="set_room">
<return type="bool" />
<param index="0" name="game_object" type="Object" />
<param index="1" name="aux_bus_id" type="int" />
<param index="2" name="reverb_level" type="float" />
<param index="3" name="transmission_loss" type="float" />
<param index="4" name="front_vector" type="Vector3" />
<param index="5" name="up_vector" type="Vector3" />
<param index="6" name="keep_registered" type="bool" />
<param index="7" name="associated_geometry" type="Object" />
<description>
Adds a room with the given [param game_object]. Pass the reverb aux bus that is
associated
with the room to [param aux_bus_id].
Calls [code]AK::SpatialAudio::SetRoom[/code].[br][br]
Returns [code]true[/code] if setting the room succeeded.
</description>
</method>
<method name="set_rtpc_value">
<return type="bool" />
<param index="0" name="name" type="String" />
<param index="1" name="value" type="float" />
<param index="2" name="game_object" type="Object" />
<description>
Sets the RTPC [param name] with the given [param value] on the [param game_object].
Pass [code]null[/code] to [param game_object] to set a global RTPC value. Calls
[code]AK::SoundEngine::SetRTPCValue[/code].[br][br]
Returns [code]true[/code] if setting the RTPC succeeded.
</description>
</method>
<method name="set_rtpc_value_id">
<return type="bool" />
<param index="0" name="id" type="int" />
<param index="1" name="value" type="float" />
<param index="2" name="game_object" type="Object" />
<description>
Sets the RTPC [param id] with the given [param value] on the [param game_object].
Pass [code]null[/code] to [param game_object] to set a global RTPC value. Calls
[code]AK::SoundEngine::SetRTPCValue[/code].[br][br]
Returns [code]true[/code] if setting the RTPC succeeded.
</description>
</method>
<method name="set_state">
<return type="bool" />
<param index="0" name="state_group" type="String" />
<param index="1" name="state_value" type="String" />
<description>
Sets the given [param state_value] of the [param state_group]. Calls
[code]AK::SoundEngine::SetState[/code].[br][br]
Returns [code]true[/code] if setting the state succeeded.
</description>
</method>
<method name="set_state_id">
<return type="bool" />
<param index="0" name="state_group_id" type="int" />
<param index="1" name="state_value_id" type="int" />
<description>
Sets the given [param state_value_id] of the [param state_group_id]. Calls
[code]AK::SoundEngine::SetState[/code].[br][br]
Returns [code]true[/code] if setting the state succeeded.
</description>
</method>
<method name="set_switch">
<return type="bool" />
<param index="0" name="switch_group" type="String" />
<param index="1" name="switch_value" type="String" />
<param index="2" name="game_object" type="Object" />
<description>
Sets the given [param switch_value] of the [param switch_group] on the given [param
game_object]. Calls [code]AK::SoundEngine::SetSwitch[/code].[br][br]
Returns [code]true[/code] if setting the switch succeeded.
</description>
</method>
<method name="set_switch_id">
<return type="bool" />
<param index="0" name="switch_group_id" type="int" />
<param index="1" name="switch_value_id" type="int" />
<param index="2" name="game_object" type="Object" />
<description>
Sets the given [param switch_value_id] of the [param switch_group_id] on the given
[param
game_object]. Calls [code]AK::SoundEngine::SetSwitch[/code].[br][br]
Returns [code]true[/code] if setting the switch succeeded.
</description>
</method>
<method name="shutdown">
<return type="void" />
<description>
Shuts down the Wwise sound engine. This is called automatically by the Wwise Runtime
autoload singleton.
</description>
</method>
<method name="stop_event">
<return type="void" />
<param index="0" name="playing_id" type="int" />
<param index="1" name="fade_time" type="int" />
<param index="2" name="interpolation" type="int" enum="AkUtils.AkCurveInterpolation" />
<description>
Stops an Event with the given [param playing_id]. [param fade_time] describes the
fade time duration
in milliseconds. Pass the [enum AkUtils.AkCurveInterpolation] value to
[param interpolation]. Calls [code]AK::SoundEngine::ExecuteActionOnPlayingID[/code].
</description>
</method>
<method name="suspend">
<return type="bool" />
<param index="0" name="render_anyway" type="bool" />
<description>
Suspends the sound engine. Set [param render_anyway] to true if your game still runs
in
backround. Calls [code]AK::SoundEngine::Suspend[/code].[br][br]
Returns [code]true[/code] if suspending the sound engine succeeded.
</description>
</method>
<method name="unload_bank">
<return type="bool" />
<param index="0" name="bank_name" type="String" />
<description>
Unloads a bank with the given [param bank_name]. Calls
[code]AK::SoundEngine::UnloadBank[/code].[br][br]
Returns [code]true[/code] if bank unloading succeeded.
</description>
</method>
<method name="unload_bank_async">
<return type="bool" />
<param index="0" name="bank_name" type="String" />
<param index="1" name="cookie" type="CookieWrapper" />
<description>
Unloads a bank with the given [param bank_name]. The [param cookie] Object should be
a
[CookieWrapper] instance variable. Set the [param cookie] property of the wrapper to
a [Callable] of
your choice. Calls [code]AK::SoundEngine::UnloadBank[/code].[br][br]
Returns [code]true[/code] if bank unloading succeeded.
</description>
</method>
<method name="unload_bank_async_id">
<return type="bool" />
<param index="0" name="bank_id" type="int" />
<param index="1" name="cookie" type="CookieWrapper" />
<description>
Unloads a bank with the given [param bank_id]. The [param cookie] Object should be a
[CookieWrapper] instance variable. Set the [param cookie] property of the wrapper to
a [Callable] of
your choice. Calls [code]AK::SoundEngine::UnloadBank[/code].[br][br]
Returns [code]true[/code] if bank unloading succeeded.
</description>
</method>
<method name="unload_bank_id">
<return type="bool" />
<param index="0" name="bank_id" type="int" />
<description>
Unloads a bank with the given [param bank_id]. Calls
[code]AK::SoundEngine::UnloadBank[/code].[br][br]
Returns [code]true[/code] if bank unloading succeeded.
</description>
</method>
<method name="unregister_game_obj">
<return type="bool" />
<param index="0" name="game_object" type="Object" />
<description>
Unregisters a game object with the given [param game_object]. Calls
[code]AK::SoundEngine::UnregisterGameObj[/code].
</description>
</method>
<method name="wakeup_from_suspend">
<return type="bool" />
<description>
Wakes up the sound engine and starts processing audio again. Calls
[code]AK::SoundEngine::WakeupFromSuspend[/code].[br][br]
Returns [code]true[/code] if waking up the sound engine succeeded.
</description>
</method>
</methods>
</class>
@@ -1,24 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleIdentifier</key>
<string>com.gdextension.framework.libwwise.ios.template_debug</string>
<key>CFBundleName</key>
<string>libwwise.ios.template_debug</string>
<key>CFBundleExecutable</key>
<string>libwwise.ios.template_debug</string>
<key>DTPlatformName</key>
<string>iphoneos</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleVersion</key>
<string>1</string>
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>MinimumOSVersion</key>
<string>11.0</string>
</dict>
</plist>
@@ -1,24 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleIdentifier</key>
<string>com.gdextension.framework.libwwise.ios.template_release</string>
<key>CFBundleName</key>
<string>libwwise.ios.template_release</string>
<key>CFBundleExecutable</key>
<string>libwwise.ios.template_release</string>
<key>DTPlatformName</key>
<string>iphoneos</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleVersion</key>
<string>1</string>
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>MinimumOSVersion</key>
<string>11.0</string>
</dict>
</plist>

Some files were not shown because too many files have changed in this diff Show More