diff --git a/.github/workflows/godot.yml b/.github/workflows/godot.yml deleted file mode 100644 index b3c4412..0000000 --- a/.github/workflows/godot.yml +++ /dev/null @@ -1,32 +0,0 @@ -name: Build Godot Project - -on: - push: - branches: [main, develop, "releases/**"] - pull_request: - branches: [main, develop, "releases/**"] - -jobs: - Godot: - timeout-minutes: 15 - continue-on-error: true - runs-on: ubuntu-latest - strategy: - matrix: - platform: [linux, windows] - steps: - - uses: actions/checkout@v2 - with: - lfs: true - - name: Build - id: build - uses: manleydev/build-godot-action@v1.4.1 - with: - name: My Simulation - preset: ${{ matrix.platform }} - debugMode: "true" - # - name: Upload Artifact - # uses: actions/upload-artifact@v2 - # with: - # name: Client - ${{ matrix.platform }} - # path: ${{ github.workspace }}/${{ steps.build.outputs.build }} diff --git a/.gitignore b/.gitignore index 26147bf..f868dda 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,40 @@ # File created using '.gitignore Generator' for Visual Studio Code: https://bit.ly/vscode-gig -# Created by https://www.toptal.com/developers/gitignore/api/windows,visualstudiocode,macos,linux,godot,executable,backup -# Edit at https://www.toptal.com/developers/gitignore?templates=windows,visualstudiocode,macos,linux,godot,executable,backup +# Created by https://www.toptal.com/developers/gitignore/api/windows,visualstudiocode,macos,linux,godot,executable,backup,archives +# Edit at https://www.toptal.com/developers/gitignore?templates=windows,visualstudiocode,macos,linux,godot,executable,backup,archives + +### Archives ### +# It's better to unpack these files and commit the raw source because +# git has its own built in compression methods. +*.7z +*.jar +*.rar +*.zip +*.gz +*.gzip +*.tgz +*.bzip +*.bzip2 +*.bz2 +*.xz +*.lzma +*.cab +*.xar + +# Packing-only formats +*.iso +*.tar + +# Package management formats +*.dmg +*.xpi +*.gem +*.egg +*.deb +*.rpm +*.msi +*.msm +*.msp +*.txz ### Backup ### *.bak @@ -16,7 +50,6 @@ *.com *.exe *.gadget -*.jar *.pif *.vb *.wsf @@ -56,8 +89,7 @@ data_*/ .LSOverride # Icon must end with two \r -Icon - +Icon # Thumbnails ._* @@ -101,6 +133,12 @@ Temporary Items .history .ionide +# Support for Project snippet scope +.vscode/*.code-snippets + +# Ignore code-workspaces +*.code-workspace + ### Windows ### # Windows thumbnail cache files Thumbs.db @@ -118,17 +156,13 @@ ehthumbs_vista.db $RECYCLE.BIN/ # Windows Installer files -*.cab -*.msi *.msix -*.msm -*.msp # Windows shortcuts *.lnk -# End of https://www.toptal.com/developers/gitignore/api/windows,visualstudiocode,macos,linux,godot,executable,backup +# End of https://www.toptal.com/developers/gitignore/api/windows,visualstudiocode,macos,linux,godot,executable,backup,archives # Custom rules (everything added below won't be overriden by 'Generate .gitignore File' if you use 'Update' option) -!export_presets.cfg \ No newline at end of file +export/** diff --git a/addons/beehave/blackboard.gd b/addons/beehave/blackboard.gd deleted file mode 100644 index 4cff1ce..0000000 --- a/addons/beehave/blackboard.gd +++ /dev/null @@ -1,24 +0,0 @@ -extends Reference - -var blackboard = {} - -func set(key, value, blackboard_name = 'default'): - if not blackboard.has(blackboard_name): - blackboard[blackboard_name] = {} - - blackboard[blackboard_name][key] = value - - -func get(key, default_value = null, blackboard_name = 'default'): - if has(key, blackboard_name): - return blackboard[blackboard_name].get(key, default_value) - return default_value - - -func has(key, blackboard_name = 'default'): - return blackboard.has(blackboard_name) and blackboard[blackboard_name].has(key) and blackboard[blackboard_name][key] != null - - -func erase(key, blackboard_name = 'default'): - if blackboard.has(blackboard_name): - blackboard[blackboard_name][key] = null diff --git a/addons/beehave/icons/action.svg b/addons/beehave/icons/action.svg deleted file mode 100644 index 7c224d5..0000000 --- a/addons/beehave/icons/action.svg +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - image/svg+xml - - - - - - - - - - diff --git a/addons/beehave/icons/action.svg.import b/addons/beehave/icons/action.svg.import deleted file mode 100644 index ee085b3..0000000 --- a/addons/beehave/icons/action.svg.import +++ /dev/null @@ -1,35 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/action.svg-e8a91246d0ba9ba3cf84290d65648f06.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://addons/beehave/icons/action.svg" -dest_files=[ "res://.import/action.svg-e8a91246d0ba9ba3cf84290d65648f06.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -process/normal_map_invert_y=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/addons/beehave/icons/blackboard.svg b/addons/beehave/icons/blackboard.svg deleted file mode 100644 index af009c6..0000000 --- a/addons/beehave/icons/blackboard.svg +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - image/svg+xml - - - - - - - - - - diff --git a/addons/beehave/icons/blackboard.svg.import b/addons/beehave/icons/blackboard.svg.import deleted file mode 100644 index fd5d540..0000000 --- a/addons/beehave/icons/blackboard.svg.import +++ /dev/null @@ -1,35 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/blackboard.svg-18d4dfd4f6de558de250b67251ff1e69.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://addons/beehave/icons/blackboard.svg" -dest_files=[ "res://.import/blackboard.svg-18d4dfd4f6de558de250b67251ff1e69.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -process/normal_map_invert_y=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/addons/beehave/icons/category_bt.svg b/addons/beehave/icons/category_bt.svg deleted file mode 100644 index ab92d03..0000000 --- a/addons/beehave/icons/category_bt.svg +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - image/svg+xml - - - - - - - - - - diff --git a/addons/beehave/icons/category_bt.svg.import b/addons/beehave/icons/category_bt.svg.import deleted file mode 100644 index f8400a5..0000000 --- a/addons/beehave/icons/category_bt.svg.import +++ /dev/null @@ -1,35 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/category_bt.svg-8537bebd1c5f62dca3d7ee7f17efeed4.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://addons/beehave/icons/category_bt.svg" -dest_files=[ "res://.import/category_bt.svg-8537bebd1c5f62dca3d7ee7f17efeed4.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -process/normal_map_invert_y=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/addons/beehave/icons/category_composite.svg b/addons/beehave/icons/category_composite.svg deleted file mode 100644 index 0f157de..0000000 --- a/addons/beehave/icons/category_composite.svg +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - image/svg+xml - - - - - - - - - - diff --git a/addons/beehave/icons/category_composite.svg.import b/addons/beehave/icons/category_composite.svg.import deleted file mode 100644 index 75f2a39..0000000 --- a/addons/beehave/icons/category_composite.svg.import +++ /dev/null @@ -1,35 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/category_composite.svg-43f66e63a7ccfa5ac8ec6da0583b3246.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://addons/beehave/icons/category_composite.svg" -dest_files=[ "res://.import/category_composite.svg-43f66e63a7ccfa5ac8ec6da0583b3246.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -process/normal_map_invert_y=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/addons/beehave/icons/category_decorator.svg b/addons/beehave/icons/category_decorator.svg deleted file mode 100644 index 02c0375..0000000 --- a/addons/beehave/icons/category_decorator.svg +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - image/svg+xml - - - - - - - - - - diff --git a/addons/beehave/icons/category_decorator.svg.import b/addons/beehave/icons/category_decorator.svg.import deleted file mode 100644 index b4687fd..0000000 --- a/addons/beehave/icons/category_decorator.svg.import +++ /dev/null @@ -1,35 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/category_decorator.svg-79d598d6456f32724156248e09d6eaf3.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://addons/beehave/icons/category_decorator.svg" -dest_files=[ "res://.import/category_decorator.svg-79d598d6456f32724156248e09d6eaf3.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -process/normal_map_invert_y=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/addons/beehave/icons/condition.svg b/addons/beehave/icons/condition.svg deleted file mode 100644 index 5d7bbb0..0000000 --- a/addons/beehave/icons/condition.svg +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - image/svg+xml - - - - - - - - - - diff --git a/addons/beehave/icons/condition.svg.import b/addons/beehave/icons/condition.svg.import deleted file mode 100644 index 9e499d7..0000000 --- a/addons/beehave/icons/condition.svg.import +++ /dev/null @@ -1,35 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/condition.svg-57892684b10a64086f68c09c388b17e5.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://addons/beehave/icons/condition.svg" -dest_files=[ "res://.import/condition.svg-57892684b10a64086f68c09c388b17e5.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -process/normal_map_invert_y=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/addons/beehave/icons/fail.svg b/addons/beehave/icons/fail.svg deleted file mode 100644 index d96bb98..0000000 --- a/addons/beehave/icons/fail.svg +++ /dev/null @@ -1,66 +0,0 @@ - - - - - - image/svg+xml - - - - - - - - - - diff --git a/addons/beehave/icons/fail.svg.import b/addons/beehave/icons/fail.svg.import deleted file mode 100644 index 103fcc3..0000000 --- a/addons/beehave/icons/fail.svg.import +++ /dev/null @@ -1,35 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/fail.svg-85247bd8065819a11b971d222d3d43bb.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://addons/beehave/icons/fail.svg" -dest_files=[ "res://.import/fail.svg-85247bd8065819a11b971d222d3d43bb.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -process/normal_map_invert_y=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/addons/beehave/icons/inverter.svg b/addons/beehave/icons/inverter.svg deleted file mode 100644 index 45b8e97..0000000 --- a/addons/beehave/icons/inverter.svg +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - image/svg+xml - - - - - - - - - - diff --git a/addons/beehave/icons/inverter.svg.import b/addons/beehave/icons/inverter.svg.import deleted file mode 100644 index a3b53d7..0000000 --- a/addons/beehave/icons/inverter.svg.import +++ /dev/null @@ -1,35 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/inverter.svg-1f1b976d95de42c4ad99a92fa9a6c5d0.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://addons/beehave/icons/inverter.svg" -dest_files=[ "res://.import/inverter.svg-1f1b976d95de42c4ad99a92fa9a6c5d0.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -process/normal_map_invert_y=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/addons/beehave/icons/limiter.svg b/addons/beehave/icons/limiter.svg deleted file mode 100644 index 2d6bbb6..0000000 --- a/addons/beehave/icons/limiter.svg +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - image/svg+xml - - - - - - - - - - diff --git a/addons/beehave/icons/limiter.svg.import b/addons/beehave/icons/limiter.svg.import deleted file mode 100644 index 8a02cf0..0000000 --- a/addons/beehave/icons/limiter.svg.import +++ /dev/null @@ -1,35 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/limiter.svg-b4c7646605c46f53c5e403fe21d8f584.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://addons/beehave/icons/limiter.svg" -dest_files=[ "res://.import/limiter.svg-b4c7646605c46f53c5e403fe21d8f584.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -process/normal_map_invert_y=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/addons/beehave/icons/selector.svg b/addons/beehave/icons/selector.svg deleted file mode 100644 index 01b107a..0000000 --- a/addons/beehave/icons/selector.svg +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - image/svg+xml - - - - - - - - - - diff --git a/addons/beehave/icons/selector.svg.import b/addons/beehave/icons/selector.svg.import deleted file mode 100644 index 05bed9c..0000000 --- a/addons/beehave/icons/selector.svg.import +++ /dev/null @@ -1,35 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/selector.svg-78bccfc448bd1676b5a29bfde4b08e5b.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://addons/beehave/icons/selector.svg" -dest_files=[ "res://.import/selector.svg-78bccfc448bd1676b5a29bfde4b08e5b.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -process/normal_map_invert_y=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/addons/beehave/icons/selector_star.svg b/addons/beehave/icons/selector_star.svg deleted file mode 100644 index e112337..0000000 --- a/addons/beehave/icons/selector_star.svg +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/addons/beehave/icons/selector_star.svg.import b/addons/beehave/icons/selector_star.svg.import deleted file mode 100644 index 2b6ac98..0000000 --- a/addons/beehave/icons/selector_star.svg.import +++ /dev/null @@ -1,35 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/selector_star.svg-368af7abfb9842c3f4258786871d1f03.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://addons/beehave/icons/selector_star.svg" -dest_files=[ "res://.import/selector_star.svg-368af7abfb9842c3f4258786871d1f03.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=false -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -process/normal_map_invert_y=false -stream=false -size_limit=0 -detect_3d=false -svg/scale=1.0 diff --git a/addons/beehave/icons/sequencer.svg b/addons/beehave/icons/sequencer.svg deleted file mode 100644 index 1304ab0..0000000 --- a/addons/beehave/icons/sequencer.svg +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - image/svg+xml - - - - - - - - - - diff --git a/addons/beehave/icons/sequencer.svg.import b/addons/beehave/icons/sequencer.svg.import deleted file mode 100644 index c4358f4..0000000 --- a/addons/beehave/icons/sequencer.svg.import +++ /dev/null @@ -1,35 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/sequencer.svg-a7b0e1cc6b00c0067836f9a81d0b2f9b.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://addons/beehave/icons/sequencer.svg" -dest_files=[ "res://.import/sequencer.svg-a7b0e1cc6b00c0067836f9a81d0b2f9b.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -process/normal_map_invert_y=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/addons/beehave/icons/sequencer_star.svg b/addons/beehave/icons/sequencer_star.svg deleted file mode 100644 index 66efd5c..0000000 --- a/addons/beehave/icons/sequencer_star.svg +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/addons/beehave/icons/sequencer_star.svg.import b/addons/beehave/icons/sequencer_star.svg.import deleted file mode 100644 index 6bfbf77..0000000 --- a/addons/beehave/icons/sequencer_star.svg.import +++ /dev/null @@ -1,35 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/sequencer_star.svg-2385cbba0c38b4d4ec43e0996f8a3493.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://addons/beehave/icons/sequencer_star.svg" -dest_files=[ "res://.import/sequencer_star.svg-2385cbba0c38b4d4ec43e0996f8a3493.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=false -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -process/normal_map_invert_y=false -stream=false -size_limit=0 -detect_3d=false -svg/scale=1.0 diff --git a/addons/beehave/icons/succeed.svg b/addons/beehave/icons/succeed.svg deleted file mode 100644 index d8c5133..0000000 --- a/addons/beehave/icons/succeed.svg +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - image/svg+xml - - - - - - - - - - diff --git a/addons/beehave/icons/succeed.svg.import b/addons/beehave/icons/succeed.svg.import deleted file mode 100644 index 0b98563..0000000 --- a/addons/beehave/icons/succeed.svg.import +++ /dev/null @@ -1,35 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/succeed.svg-c70f0a6f3d9b2864e4771942f0762307.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://addons/beehave/icons/succeed.svg" -dest_files=[ "res://.import/succeed.svg-c70f0a6f3d9b2864e4771942f0762307.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -process/normal_map_invert_y=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/addons/beehave/icons/tree.svg b/addons/beehave/icons/tree.svg deleted file mode 100644 index 26dac9f..0000000 --- a/addons/beehave/icons/tree.svg +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - image/svg+xml - - - - - - - - - - diff --git a/addons/beehave/icons/tree.svg.import b/addons/beehave/icons/tree.svg.import deleted file mode 100644 index 028a5a1..0000000 --- a/addons/beehave/icons/tree.svg.import +++ /dev/null @@ -1,35 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/tree.svg-c0b20ed88b2fe300c0296f7236049076.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://addons/beehave/icons/tree.svg" -dest_files=[ "res://.import/tree.svg-c0b20ed88b2fe300c0296f7236049076.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -process/normal_map_invert_y=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/addons/beehave/nodes/beehave_node.gd b/addons/beehave/nodes/beehave_node.gd deleted file mode 100644 index d52e67b..0000000 --- a/addons/beehave/nodes/beehave_node.gd +++ /dev/null @@ -1,8 +0,0 @@ -extends BeehaveTree - -class_name BeehaveNode, "../icons/action.svg" - -enum { SUCCESS, FAILURE, RUNNING } - -func tick(actor, blackboard): - pass diff --git a/addons/beehave/nodes/beehave_root.gd b/addons/beehave/nodes/beehave_root.gd deleted file mode 100644 index 5201cc7..0000000 --- a/addons/beehave/nodes/beehave_root.gd +++ /dev/null @@ -1,84 +0,0 @@ -extends BeehaveTree - -class_name BeehaveRoot, "../icons/tree.svg" - -const Blackboard = preload("../blackboard.gd") -const SUCCESS = 0 -const FAILURE = 1 -const RUNNING = 2 - -enum ProcessMode { - PHYSICS_PROCESS, - IDLE, - MANUAL -} - -export (ProcessMode) var process_mode = ProcessMode.PHYSICS_PROCESS setget set_process_mode -export (bool) var enabled = true - -export (NodePath) var actor_node_path - -var actor : Node - -onready var blackboard = Blackboard.new() - -func _ready(): - if self.get_child_count() != 1: - push_error("Beehave error: Root %s should have one child (NodePath: %s)" % [self.name, self.get_path()]) - disable() - return - - actor = get_parent() - if actor_node_path: - actor = get_node(actor_node_path) - - set_process_mode(self.process_mode) - -func _process(delta): - tick(delta) - -func _physics_process(delta): - tick(delta) - -func tick(delta): - blackboard.set("delta", delta) - - var status = self.get_child(0).tick(actor, blackboard) - - if status != RUNNING: - blackboard.set("running_action", null) - -func get_running_action(): - if blackboard.has("running_action"): - return blackboard.get("running_action") - return null - -func get_last_condition(): - if blackboard.has("last_condition"): - return blackboard.get("last_condition") - return null - -func get_last_condition_status(): - if blackboard.has("last_condition_status"): - var status = blackboard.get("last_condition_status") - if status == SUCCESS: - return "SUCCESS" - elif status == FAILURE: - return "FAILURE" - else: - return "RUNNING" - return "" - -func enable(): - self.enabled = true - set_process_mode(self.process_mode) - -func disable(): - self.enabled = false - set_process(self.enabled) - set_physics_process(self.enabled) - -func set_process_mode(value): - process_mode = value - set_process(process_mode == ProcessMode.IDLE) - set_physics_process(process_mode == ProcessMode.PHYSICS_PROCESS) diff --git a/addons/beehave/nodes/beehave_tree.gd b/addons/beehave/nodes/beehave_tree.gd deleted file mode 100644 index 9def663..0000000 --- a/addons/beehave/nodes/beehave_tree.gd +++ /dev/null @@ -1,3 +0,0 @@ -extends Node - -class_name BeehaveTree diff --git a/addons/beehave/nodes/composites/composite.gd b/addons/beehave/nodes/composites/composite.gd deleted file mode 100644 index 5a691f9..0000000 --- a/addons/beehave/nodes/composites/composite.gd +++ /dev/null @@ -1,8 +0,0 @@ -extends BeehaveNode - -class_name Composite, "../../icons/category_composite.svg" - - -func _ready(): - if self.get_child_count() < 1: - push_error("BehaviorTree Error: Composite %s should have at least one child (NodePath: %s)" % [self.name, self.get_path()]) diff --git a/addons/beehave/nodes/composites/selector.gd b/addons/beehave/nodes/composites/selector.gd deleted file mode 100644 index f78be66..0000000 --- a/addons/beehave/nodes/composites/selector.gd +++ /dev/null @@ -1,18 +0,0 @@ -extends Composite - -class_name SelectorComposite, "../../icons/selector.svg" - -func tick(actor, blackboard): - for c in get_children(): - var response = c.tick(actor, blackboard) - - if c is ConditionLeaf: - blackboard.set("last_condition", c) - blackboard.set("last_condition_status", response) - - if response != FAILURE: - if c is ActionLeaf and response == RUNNING: - blackboard.set("running_action", c) - return response - - return FAILURE diff --git a/addons/beehave/nodes/composites/selector_star.gd b/addons/beehave/nodes/composites/selector_star.gd deleted file mode 100644 index 0a272b5..0000000 --- a/addons/beehave/nodes/composites/selector_star.gd +++ /dev/null @@ -1,33 +0,0 @@ -# Special implementation of a selector that will -# "wait" for running nodes and will not re-attempt -# to execute previous nodes until that node is either -# FAILED or SUCCEEDED -extends Composite - -class_name SelectorStarComposite, "../../icons/selector_star.svg" - - -var last_execution_index = 0 - -func tick(actor, blackboard): - for c in get_children(): - if c.get_index() < last_execution_index: - continue - - var response = c.tick(actor, blackboard) - - if c is ConditionLeaf: - blackboard.set("last_condition", c) - blackboard.set("last_condition_status", response) - - if response != FAILURE: - if c is ActionLeaf and response == RUNNING: - blackboard.set("running_action", c) - if response == SUCCESS: - last_execution_index = 0 - return response - else: - last_execution_index += 1 - - last_execution_index = 0 - return FAILURE diff --git a/addons/beehave/nodes/composites/sequence.gd b/addons/beehave/nodes/composites/sequence.gd deleted file mode 100644 index 52d401d..0000000 --- a/addons/beehave/nodes/composites/sequence.gd +++ /dev/null @@ -1,18 +0,0 @@ -extends Composite - -class_name SequenceComposite, "../../icons/sequencer.svg" - -func tick(actor, blackboard): - for c in get_children(): - var response = c.tick(actor, blackboard) - - if c is ConditionLeaf: - blackboard.set("last_condition", c) - blackboard.set("last_condition_status", response) - - if response != SUCCESS: - if c is ActionLeaf and response == RUNNING: - blackboard.set("running_action", c) - return response - - return SUCCESS diff --git a/addons/beehave/nodes/composites/sequence_star.gd b/addons/beehave/nodes/composites/sequence_star.gd deleted file mode 100644 index f0ae03f..0000000 --- a/addons/beehave/nodes/composites/sequence_star.gd +++ /dev/null @@ -1,35 +0,0 @@ -# Special implementation of sequencer who will execute -# successful nodes only once until all nodes were successful - -extends Composite - -class_name SequenceStarComposite, "../../icons/sequencer_star.svg" - -var successful_index = 0 - -func tick(actor, blackboard): - for c in get_children(): - if c.get_index() < successful_index: - continue - - var response = c.tick(actor, blackboard) - - if c is ConditionLeaf: - blackboard.set("last_condition", c) - blackboard.set("last_condition_status", response) - - if response != SUCCESS: - if response == FAILURE: - successful_index = 0 - if c is ActionLeaf and response == RUNNING: - blackboard.set("running_action", c) - return response - else: - successful_index += 1 - - if successful_index == get_child_count(): - successful_index = 0 - return SUCCESS - else: - successful_index = 0 - return FAILURE diff --git a/addons/beehave/nodes/decorators/decorator.gd b/addons/beehave/nodes/decorators/decorator.gd deleted file mode 100644 index b0568d5..0000000 --- a/addons/beehave/nodes/decorators/decorator.gd +++ /dev/null @@ -1,8 +0,0 @@ -extends BeehaveNode - -class_name Decorator, "../../icons/category_decorator.svg" - - -func _ready(): - if self.get_child_count() != 1: - push_error("Beehave Error: Decorator %s should have only one child (NodePath: %s)" % [self.name, self.get_path()]) diff --git a/addons/beehave/nodes/decorators/failer.gd b/addons/beehave/nodes/decorators/failer.gd deleted file mode 100644 index 15dfef4..0000000 --- a/addons/beehave/nodes/decorators/failer.gd +++ /dev/null @@ -1,11 +0,0 @@ -extends Decorator - -class_name AlwaysFailDecorator, "../../icons/fail.svg" - - -func tick(action, blackboard): - for c in get_children(): - var response = c.tick(action, blackboard) - if response == RUNNING: - return RUNNING - return FAILURE diff --git a/addons/beehave/nodes/decorators/inverter.gd b/addons/beehave/nodes/decorators/inverter.gd deleted file mode 100644 index e1e70ea..0000000 --- a/addons/beehave/nodes/decorators/inverter.gd +++ /dev/null @@ -1,17 +0,0 @@ -extends Decorator - -class_name InverterDecorator, "../../icons/inverter.svg" - - -func tick(action, blackboard): - for c in get_children(): - var response = c.tick(action, blackboard) - - if response == SUCCESS: - return FAILURE - if response == FAILURE: - return SUCCESS - - if c is Leaf and response == RUNNING: - blackboard.set("running_action", c) - return RUNNING diff --git a/addons/beehave/nodes/decorators/limiter.gd b/addons/beehave/nodes/decorators/limiter.gd deleted file mode 100644 index 725f784..0000000 --- a/addons/beehave/nodes/decorators/limiter.gd +++ /dev/null @@ -1,19 +0,0 @@ -extends Decorator - -class_name LimiterDecorator, "../../icons/limiter.svg" - -onready var cache_key = 'limiter_%s' % self.get_instance_id() - -export (float) var max_count = 0 - -func tick(actor, blackboard): - var current_count = blackboard.get(cache_key) - - if current_count == null: - current_count = 0 - - if current_count <= max_count: - blackboard.set(cache_key, current_count + 1) - return self.get_child(0).tick(actor, blackboard) - else: - return FAILED diff --git a/addons/beehave/nodes/decorators/succeeder.gd b/addons/beehave/nodes/decorators/succeeder.gd deleted file mode 100644 index 1a7bacf..0000000 --- a/addons/beehave/nodes/decorators/succeeder.gd +++ /dev/null @@ -1,11 +0,0 @@ -extends Decorator - -class_name AlwaysSucceedDecorator, "../../icons/succeed.svg" - - -func tick(action, blackboard): - for c in get_children(): - var response = c.tick(action, blackboard) - if response == RUNNING: - return RUNNING - return SUCCESS diff --git a/addons/beehave/nodes/leaves/action.gd b/addons/beehave/nodes/leaves/action.gd deleted file mode 100644 index a30041d..0000000 --- a/addons/beehave/nodes/leaves/action.gd +++ /dev/null @@ -1,3 +0,0 @@ -extends Leaf - -class_name ActionLeaf, "../../icons/action.svg" diff --git a/addons/beehave/nodes/leaves/condition.gd b/addons/beehave/nodes/leaves/condition.gd deleted file mode 100644 index d91ff37..0000000 --- a/addons/beehave/nodes/leaves/condition.gd +++ /dev/null @@ -1,3 +0,0 @@ -extends Leaf - -class_name ConditionLeaf, "../../icons/condition.svg" diff --git a/addons/beehave/nodes/leaves/leaf.gd b/addons/beehave/nodes/leaves/leaf.gd deleted file mode 100644 index 503fa1b..0000000 --- a/addons/beehave/nodes/leaves/leaf.gd +++ /dev/null @@ -1,3 +0,0 @@ -extends BeehaveNode - -class_name Leaf, "../../icons/action.svg" diff --git a/addons/beehave/plugin.cfg b/addons/beehave/plugin.cfg deleted file mode 100644 index 7a1b19b..0000000 --- a/addons/beehave/plugin.cfg +++ /dev/null @@ -1,7 +0,0 @@ -[plugin] - -name="Beehave" -description="🐝 Behaviour Tree addon for Godot Engine" -author="bitbrain" -version="1.2.0" -script="plugin.gd" diff --git a/addons/beehave/plugin.gd b/addons/beehave/plugin.gd deleted file mode 100644 index d670e1b..0000000 --- a/addons/beehave/plugin.gd +++ /dev/null @@ -1,5 +0,0 @@ -tool -extends EditorPlugin - -func _init(): - print("Beehave initialized!") diff --git a/addons/godot-version-management/LICENSE b/addons/godot-version-management/LICENSE deleted file mode 100644 index 743520c..0000000 --- a/addons/godot-version-management/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2019 Tomek - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. \ No newline at end of file diff --git a/addons/godot-version-management/README.md b/addons/godot-version-management/README.md deleted file mode 100644 index 40a0123..0000000 --- a/addons/godot-version-management/README.md +++ /dev/null @@ -1,70 +0,0 @@ -# Godot Version Manager - - - -This addon is for developpers that want a centralized place for version naming / build number and then display it in game. - -It allow you to configure version and build in project settings. - -These configurations are synchronized to all existing export of your project. - -Moreover configurations can be loaded for in game display. - -## How to install it - -You can find this addon in Godot AssetLibrary -See the Godot Addon install section : https://docs.godotengine.org/en/stable/tutorials/plugins/editor/installing_plugins.html - -## How to use it for exports - -Once the addon activated it add two entry in your project configuration: - -- Application / Config / Version as String (application/config/version default to 0.0.1) -- Application / Config / Build as Integer (application/config/build default to 1) - -You can change the version and the build numbers. -It will update all your exports versions value to the project config value. -Then you need to reload the project (Project / Reload current project). - -See below section to know why you need to reload project. - -For Android exports: -* version is version/name -* build is version/code - -For iOS and MacOS exports: -* version is application/short_version -* build is application/version - -For Windows Desktop exports: -* version is application/file_version and application/product_version - -For HTML5 and UWP exports no versions specified. - -## How to use it for in game display - -The version and build numbers can be accessed for in game use like that: - - -```GDScript - # To get version string - var version = ProjectSettings.get_setting("application/config/version") - # To get build number - var build = ProjectSettings.get_setting("application/config/build") -``` - - - - -## Why I need to reload project ? - -The GodotVersionManager addon update the export-presets.cfg file. - -Because of Godot keep in memory ExportsSettings and do not reload it from export-presets.cfg file you will need to reload your project. - -When project is loaded Godot load in memory the export-presets.cfg . - -## Support Me - -You to buy me a coffee ? -Buy Me a Coffee diff --git a/addons/godot-version-management/godot_version_manager.gd b/addons/godot-version-management/godot_version_manager.gd deleted file mode 100644 index d7fea72..0000000 --- a/addons/godot-version-management/godot_version_manager.gd +++ /dev/null @@ -1,78 +0,0 @@ -# By Erasor -tool -extends EditorPlugin - -const PLUGIN_NAME = "Godot-Version-Manager" -const DEBUG = true -# Use same name as https://github.com/godotengine/godot/pull/35555 -const PROJECT_VERSION_SETTING = "application/config/version" -const PROJECT_BUILD_SETTING = "application/config/build" -const EXPORT_PRESETS_FILE = "res://export_presets.cfg" -var current_version -var current_build - -func _enter_tree(): - if not ProjectSettings.has_setting(PROJECT_VERSION_SETTING): - ProjectSettings.set_setting(PROJECT_VERSION_SETTING, "0.0.1") - if not ProjectSettings.has_setting(PROJECT_BUILD_SETTING): - ProjectSettings.set_setting(PROJECT_BUILD_SETTING, 1) - current_version = ProjectSettings.get_setting(PROJECT_VERSION_SETTING) - current_build = ProjectSettings.get_setting(PROJECT_BUILD_SETTING) - - -func _exit_tree(): - # Do not remove the verson config, may conflict with https://github.com/godotengine/godot/pull/35555 - pass - - -func apply_changes(): - _update_export_presets() - - -func save_external_data(): - _update_export_presets() - - -func _update_export_presets(): - # If config version changed, update all exports - if ProjectSettings.get_setting(PROJECT_VERSION_SETTING) != current_version: - var export_config: ConfigFile = ConfigFile.new() - var err = export_config.load(EXPORT_PRESETS_FILE) - if err == OK: - # Loop limited to 100 exports - for i in range(0, 100): - var section = "preset." + str(i) - if export_config.has_section(section): - plugin_log("Update Export " + export_config.get_value(section, "platform")) - # Update Android exports configs - if export_config.get_value(section, "platform") == "Android": - export_config.set_value(section + ".options", 'version/name', ProjectSettings.get_setting(PROJECT_VERSION_SETTING)) - export_config.set_value(section + ".options", 'version/code', ProjectSettings.get_setting(PROJECT_BUILD_SETTING)) - if export_config.get_value(section, "platform") == "iOS" or export_config.get_value(section, "platform") == "Mac OSX": - export_config.set_value(section + ".options", 'application/short_version', ProjectSettings.get_setting(PROJECT_VERSION_SETTING)) - export_config.set_value(section + ".options", 'application/version', ProjectSettings.get_setting(PROJECT_BUILD_SETTING)) - if export_config.get_value(section, "platform") == "UWP": - # TODO parsing of version to minor/major - pass - if export_config.get_value(section, "platform") == "Windows Desktop": - export_config.set_value(section + ".options", 'application/file_version', ProjectSettings.get_setting(PROJECT_VERSION_SETTING)) - export_config.set_value(section + ".options", 'application/product_version', ProjectSettings.get_setting(PROJECT_VERSION_SETTING)) - else: - break - err = export_config.save(EXPORT_PRESETS_FILE) - ProjectSettings.save() - if err == OK: - plugin_log("All exports updated") - else: - plugin_log("Error saving " + EXPORT_PRESETS_FILE + ", exports not updated") - else: - plugin_log('Error open ' + EXPORT_PRESETS_FILE) - - -func plugin_log(message): - if (DEBUG): - var time : Dictionary = OS.get_datetime() - var date_string : String = "%02d:%02d" % [time.hour, time.minute] - print(date_string, " - ", PLUGIN_NAME, " - ", message) - - diff --git a/addons/godot-version-management/plugin.cfg b/addons/godot-version-management/plugin.cfg deleted file mode 100644 index 52c8d5a..0000000 --- a/addons/godot-version-management/plugin.cfg +++ /dev/null @@ -1,8 +0,0 @@ -[plugin] - -name="Godot-Version-Manager" -description="Godot plugin to manage versions for exports. -It centralize the version number in project." -author="Erasor" -version="1.0.0" -script="godot_version_manager.gd" diff --git a/export_presets.cfg b/export_presets.cfg deleted file mode 100644 index d740d50..0000000 --- a/export_presets.cfg +++ /dev/null @@ -1,141 +0,0 @@ -[preset.0] - -name="windows" -platform="Windows Desktop" -runnable=true -custom_features="" -export_filter="all_resources" -include_filter="" -exclude_filter="" -export_path="" -script_export_mode=1 -script_encryption_key="" - -[preset.0.options] - -custom_template/debug="" -custom_template/release="" -binary_format/64_bits=true -binary_format/embed_pck=false -texture_format/bptc=false -texture_format/s3tc=true -texture_format/etc=false -texture_format/etc2=false -texture_format/no_bptc_fallbacks=true -codesign/enable=false -codesign/identity_type=0 -codesign/identity="" -codesign/password="" -codesign/timestamp=true -codesign/timestamp_server_url="" -codesign/digest_algorithm=1 -codesign/description="" -codesign/custom_options=PoolStringArray( ) -application/modify_resources=true -application/icon="" -application/file_version="" -application/product_version="" -application/company_name="" -application/product_name="" -application/file_description="" -application/copyright="" -application/trademarks="" - -[preset.1] - -name="mac" -platform="Mac OSX" -runnable=true -custom_features="" -export_filter="all_resources" -include_filter="" -exclude_filter="" -export_path="" -script_export_mode=1 -script_encryption_key="" - -[preset.1.options] - -custom_template/debug="" -custom_template/release="" -application/name="" -application/info="Made with Godot Engine" -application/icon="" -application/identifier="com.tonybark.mysim" -application/signature="" -application/app_category="Simulation-games" -application/short_version="1.0" -application/version="1.0" -application/copyright="" -display/high_res=false -privacy/microphone_usage_description="" -privacy/camera_usage_description="" -privacy/location_usage_description="" -privacy/address_book_usage_description="" -privacy/calendar_usage_description="" -privacy/photos_library_usage_description="" -privacy/desktop_folder_usage_description="" -privacy/documents_folder_usage_description="" -privacy/downloads_folder_usage_description="" -privacy/network_volumes_usage_description="" -privacy/removable_volumes_usage_description="" -codesign/enable=true -codesign/identity="" -codesign/timestamp=true -codesign/hardened_runtime=true -codesign/replace_existing_signature=true -codesign/entitlements/custom_file="" -codesign/entitlements/allow_jit_code_execution=false -codesign/entitlements/allow_unsigned_executable_memory=false -codesign/entitlements/allow_dyld_environment_variables=false -codesign/entitlements/disable_library_validation=false -codesign/entitlements/audio_input=false -codesign/entitlements/camera=false -codesign/entitlements/location=false -codesign/entitlements/address_book=false -codesign/entitlements/calendars=false -codesign/entitlements/photos_library=false -codesign/entitlements/apple_events=false -codesign/entitlements/debugging=false -codesign/entitlements/app_sandbox/enabled=false -codesign/entitlements/app_sandbox/network_server=false -codesign/entitlements/app_sandbox/network_client=false -codesign/entitlements/app_sandbox/device_usb=false -codesign/entitlements/app_sandbox/device_bluetooth=false -codesign/entitlements/app_sandbox/files_downloads=0 -codesign/entitlements/app_sandbox/files_pictures=0 -codesign/entitlements/app_sandbox/files_music=0 -codesign/entitlements/app_sandbox/files_movies=0 -codesign/custom_options=PoolStringArray( ) -notarization/enable=false -notarization/apple_id_name="" -notarization/apple_id_password="" -notarization/apple_team_id="" -texture_format/s3tc=true -texture_format/etc=false -texture_format/etc2=false - -[preset.2] - -name="linux" -platform="Linux/X11" -runnable=true -custom_features="" -export_filter="all_resources" -include_filter="" -exclude_filter="" -export_path="" -script_export_mode=1 -script_encryption_key="" - -[preset.2.options] - -custom_template/debug="" -custom_template/release="" -binary_format/64_bits=true -binary_format/embed_pck=false -texture_format/bptc=false -texture_format/s3tc=true -texture_format/etc=false -texture_format/etc2=false -texture_format/no_bptc_fallbacks=true diff --git a/project.godot b/project.godot index 40e806f..9db388f 100644 --- a/project.godot +++ b/project.godot @@ -8,106 +8,6 @@ config_version=4 -_global_script_classes=[ { -"base": "Leaf", -"class": "ActionLeaf", -"language": "GDScript", -"path": "res://addons/beehave/nodes/leaves/action.gd" -}, { -"base": "Decorator", -"class": "AlwaysFailDecorator", -"language": "GDScript", -"path": "res://addons/beehave/nodes/decorators/failer.gd" -}, { -"base": "Decorator", -"class": "AlwaysSucceedDecorator", -"language": "GDScript", -"path": "res://addons/beehave/nodes/decorators/succeeder.gd" -}, { -"base": "BeehaveTree", -"class": "BeehaveNode", -"language": "GDScript", -"path": "res://addons/beehave/nodes/beehave_node.gd" -}, { -"base": "BeehaveTree", -"class": "BeehaveRoot", -"language": "GDScript", -"path": "res://addons/beehave/nodes/beehave_root.gd" -}, { -"base": "Node", -"class": "BeehaveTree", -"language": "GDScript", -"path": "res://addons/beehave/nodes/beehave_tree.gd" -}, { -"base": "BeehaveNode", -"class": "Composite", -"language": "GDScript", -"path": "res://addons/beehave/nodes/composites/composite.gd" -}, { -"base": "Leaf", -"class": "ConditionLeaf", -"language": "GDScript", -"path": "res://addons/beehave/nodes/leaves/condition.gd" -}, { -"base": "BeehaveNode", -"class": "Decorator", -"language": "GDScript", -"path": "res://addons/beehave/nodes/decorators/decorator.gd" -}, { -"base": "Decorator", -"class": "InverterDecorator", -"language": "GDScript", -"path": "res://addons/beehave/nodes/decorators/inverter.gd" -}, { -"base": "BeehaveNode", -"class": "Leaf", -"language": "GDScript", -"path": "res://addons/beehave/nodes/leaves/leaf.gd" -}, { -"base": "Decorator", -"class": "LimiterDecorator", -"language": "GDScript", -"path": "res://addons/beehave/nodes/decorators/limiter.gd" -}, { -"base": "Composite", -"class": "SelectorComposite", -"language": "GDScript", -"path": "res://addons/beehave/nodes/composites/selector.gd" -}, { -"base": "Composite", -"class": "SelectorStarComposite", -"language": "GDScript", -"path": "res://addons/beehave/nodes/composites/selector_star.gd" -}, { -"base": "Composite", -"class": "SequenceComposite", -"language": "GDScript", -"path": "res://addons/beehave/nodes/composites/sequence.gd" -}, { -"base": "Composite", -"class": "SequenceStarComposite", -"language": "GDScript", -"path": "res://addons/beehave/nodes/composites/sequence_star.gd" -} ] -_global_script_class_icons={ -"ActionLeaf": "res://addons/beehave/icons/action.svg", -"AlwaysFailDecorator": "res://addons/beehave/icons/fail.svg", -"AlwaysSucceedDecorator": "res://addons/beehave/icons/succeed.svg", -"BeehaveNode": "res://addons/beehave/icons/action.svg", -"BeehaveRoot": "res://addons/beehave/icons/tree.svg", -"BeehaveTree": "", -"Composite": "res://addons/beehave/icons/category_composite.svg", -"ConditionLeaf": "res://addons/beehave/icons/condition.svg", -"Decorator": "res://addons/beehave/icons/category_decorator.svg", -"InverterDecorator": "res://addons/beehave/icons/inverter.svg", -"Leaf": "res://addons/beehave/icons/action.svg", -"LimiterDecorator": "res://addons/beehave/icons/limiter.svg", -"SelectorComposite": "res://addons/beehave/icons/selector.svg", -"SelectorStarComposite": "res://addons/beehave/icons/selector_star.svg", -"SequenceComposite": "res://addons/beehave/icons/sequencer.svg", -"SequenceStarComposite": "res://addons/beehave/icons/sequencer_star.svg" -} - [application] config/name="City Limits" @@ -115,8 +15,6 @@ run/main_scene="res://scenes/Game.tscn" config/icon="res://icon.png" config/macos_native_icon="res://icon.icns" config/windows_native_icon="res://icon.ico" -config/version="0.0.1" -config/build=1000 [autoload] @@ -134,7 +32,7 @@ window/stretch/aspect="keep" [editor_plugins] -enabled=PoolStringArray( "res://addons/beehave/plugin.cfg", "res://addons/godot-version-management/plugin.cfg" ) +enabled=PoolStringArray( ) [gdnative] @@ -168,8 +66,8 @@ ui_down={ } ui_cheats={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":true,"control":true,"meta":true,"command":true,"pressed":false,"scancode":67,"physical_scancode":0,"unicode":0,"echo":false,"script":null) -, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":true,"meta":true,"command":true,"pressed":false,"scancode":88,"physical_scancode":0,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":true,"control":false,"meta":true,"command":true,"pressed":false,"scancode":67,"physical_scancode":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":true,"command":true,"pressed":false,"scancode":88,"physical_scancode":0,"unicode":0,"echo":false,"script":null) ] } diff --git a/scenes/deparments/CoalPlant.tscn b/scenes/deparments/CoalPlant.tscn index 6729fa6..f072987 100644 --- a/scenes/deparments/CoalPlant.tscn +++ b/scenes/deparments/CoalPlant.tscn @@ -1,10 +1,7 @@ -[gd_scene load_steps=8 format=2] +[gd_scene load_steps=5 format=2] -[ext_resource path="res://scripts/simtactics/turn_on.gd" type="Script" id=1] +[ext_resource path="res://scripts/power_station.gd" type="Script" id=1] [ext_resource path="res://assets/coal.png" type="Texture" id=2] -[ext_resource path="res://addons/beehave/nodes/composites/sequence.gd" type="Script" id=3] -[ext_resource path="res://scripts/simtactics/zone.gd" type="Script" id=4] -[ext_resource path="res://addons/beehave/nodes/beehave_root.gd" type="Script" id=6] [sub_resource type="RectangleShape2D" id=1] extents = Vector2( 32.2297, 31.8602 ) @@ -29,19 +26,9 @@ tracks/0/keys = { [node name="PowerStation" type="KinematicBody2D"] input_pickable = true - -[node name="BeehaveRoot" type="Node" parent="."] -script = ExtResource( 6 ) - -[node name="SequenceComposite" type="Node" parent="BeehaveRoot"] -script = ExtResource( 3 ) - -[node name="TurnOn" type="Node" parent="BeehaveRoot/SequenceComposite"] script = ExtResource( 1 ) - -[node name="ActionLeaf" type="Node" parent="BeehaveRoot/SequenceComposite"] -script = ExtResource( 4 ) -zone_texture = "res://assets/res_houses.png" +income = 0 +expense = 250 [node name="Quarters" type="Timer" parent="."] wait_time = 10.0 @@ -57,3 +44,5 @@ playback_speed = 5.0 anims/Animante = SubResource( 2 ) [node name="RayCast2D" type="RayCast2D" parent="."] + +[connection signal="timeout" from="Quarters" to="." method="_on_Quarters_timeout"] diff --git a/scenes/deparments/Zone.tscn b/scenes/deparments/Zone.tscn index 7899a9a..f37acc0 100644 --- a/scenes/deparments/Zone.tscn +++ b/scenes/deparments/Zone.tscn @@ -1,17 +1,14 @@ -[gd_scene load_steps=9 format=2] +[gd_scene load_steps=5 format=2] [ext_resource path="res://scripts/zone.gd" type="Script" id=1] [ext_resource path="res://assets/res_zones.png" type="Texture" id=2] -[ext_resource path="res://scripts/simtactics/has_power.gd" type="Script" id=4] -[ext_resource path="res://addons/beehave/nodes/beehave_root.gd" type="Script" id=5] -[ext_resource path="res://addons/beehave/nodes/composites/selector.gd" type="Script" id=7] [sub_resource type="Animation" id=2] resource_name = "Animante" length = 5.0 step = 1.0 tracks/0/type = "value" -tracks/0/path = NodePath("Sprite:frame") +tracks/0/path = NodePath("../Sprite:frame") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/imported = false @@ -20,22 +17,7 @@ tracks/0/keys = { "times": PoolRealArray( 0, 1, 2, 3, 4 ), "transitions": PoolRealArray( 1, 1, 1, 1, 1 ), "update": 1, -"values": [ 0, 1, 2, 3, 4 ] -} - -[sub_resource type="Animation" id=4] -length = 0.001 -tracks/0/type = "value" -tracks/0/path = NodePath("Sprite:frame") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/keys = { -"times": PoolRealArray( 0 ), -"transitions": PoolRealArray( 1 ), -"update": 0, -"values": [ 1 ] +"values": [ 1, 2, 3, 4, 6 ] } [sub_resource type="CircleShape2D" id=3] @@ -44,26 +26,15 @@ radius = 34.955 [node name="Zone" type="Area2D"] script = ExtResource( 1 ) -[node name="Sprite" type="Sprite" parent="."] -texture = ExtResource( 2 ) -vframes = 19 -frame = 1 - -[node name="BeehaveRoot" type="Node" parent="."] -script = ExtResource( 5 ) - -[node name="SelectorComposite" type="Node" parent="BeehaveRoot"] -script = ExtResource( 7 ) - -[node name="HasPower" type="Node" parent="BeehaveRoot/SelectorComposite"] -script = ExtResource( 4 ) - [node name="Quarters" type="Timer" parent="."] wait_time = 10.0 +[node name="Sprite" type="Sprite" parent="."] +texture = ExtResource( 2 ) +vframes = 19 + [node name="AnimationPlayer" type="AnimationPlayer" parent="."] anims/Animante = SubResource( 2 ) -anims/RESET = SubResource( 4 ) [node name="CollisionShape2D" type="CollisionShape2D" parent="."] shape = SubResource( 3 ) diff --git a/scenes/game.tscn b/scenes/game.tscn index e471677..217a1a7 100644 --- a/scenes/game.tscn +++ b/scenes/game.tscn @@ -1,7 +1,6 @@ -[gd_scene load_steps=50 format=2] +[gd_scene load_steps=45 format=2] [ext_resource path="res://scenes/maps/MapOne.tscn" type="PackedScene" id=1] -[ext_resource path="res://addons/beehave/nodes/composites/selector.gd" type="Script" id=2] [ext_resource path="res://assets/symbols/fontawesome/population.svg" type="Texture" id=3] [ext_resource path="res://scenes/windows/Advisor.tscn" type="PackedScene" id=4] [ext_resource path="res://assets/ui/iccom.png" type="Texture" id=5] @@ -45,22 +44,16 @@ [ext_resource path="res://assets/symbols/fontawesome/envelope.svg" type="Texture" id=43] [ext_resource path="res://scenes/windows/Ordinance.tscn" type="PackedScene" id=44] [ext_resource path="res://scripts/ticker.gd" type="Script" id=45] -[ext_resource path="res://addons/beehave/nodes/beehave_root.gd" type="Script" id=46] -[ext_resource path="res://scenes/deparments/CoalPlant.tscn" type="PackedScene" id=47] -[ext_resource path="res://addons/beehave/nodes/beehave_node.gd" type="Script" id=48] -[ext_resource path="res://scenes/deparments/Zone.tscn" type="PackedScene" id=49] [node name="Game" type="Node2D"] script = ExtResource( 20 ) -[node name="BeehaveRoot" type="Node" parent="."] -script = ExtResource( 46 ) - -[node name="DayCycle" type="Node" parent="BeehaveRoot"] -script = ExtResource( 2 ) - -[node name="BeehaveNode" type="Node" parent="BeehaveRoot/DayCycle"] -script = ExtResource( 48 ) +[node name="DayCycle" type="Timer" parent="."] +wait_time = 12.0 +autostart = true +__meta__ = { +"_editor_description_": "Calculation based on: https://gaming.stackexchange.com/questions/110529/real-world-time-in-a-simcity-day-on-various-speeds" +} [node name="MapOne" parent="." instance=ExtResource( 1 )] @@ -293,16 +286,6 @@ __meta__ = { "_edit_use_anchors_": true } -[node name="VersionLbl" type="Label" parent="Controls/Control Panel/Windows"] -anchor_left = 0.0146199 -anchor_top = 0.0271318 -anchor_right = 0.182261 -anchor_bottom = 0.0542636 -text = "Version" -__meta__ = { -"_edit_use_anchors_": true -} - [node name="Status" type="Panel" parent="Controls/Control Panel"] anchor_top = 12.95 anchor_right = 25.65 @@ -311,6 +294,10 @@ __meta__ = { "_edit_use_anchors_": true } +[node name="RotateNews" type="Timer" parent="Controls/Control Panel/Status"] +wait_time = 5.0 +autostart = true + [node name="SettingsBtn" type="Button" parent="Controls/Control Panel/Status"] anchor_left = 0.0115391 anchor_top = 0.0555202 @@ -479,8 +466,6 @@ __meta__ = { "_edit_use_anchors_": true } -[node name="Zone" parent="." instance=ExtResource( 49 )] -position = Vector2( 650, 351 ) - -[node name="PowerStation" parent="." instance=ExtResource( 47 )] -position = Vector2( 758, 277 ) +[connection signal="timeout" from="DayCycle" to="." method="_on_DayCycle_timeout"] +[connection signal="timeout" from="Controls/Control Panel/Status/RotateNews" to="Controls/Control Panel" method="_on_RotateNews_timeout"] +[connection signal="pressed" from="Controls/Control Panel/Status/NewsBtn" to="Controls/Control Panel" method="_on_NewsBtn_pressed"] diff --git a/scripts/Zone.gd b/scripts/Zone.gd index f59c823..c885d74 100644 --- a/scripts/Zone.gd +++ b/scripts/Zone.gd @@ -1,5 +1,12 @@ extends Area2D +signal grabbed +signal has_power + +export var cost: int = 10000 +export var income: int = 100 +export var expense: int = 0 + onready var zone = $Sprite onready var quarters = $Quarters onready var animator = $AnimationPlayer @@ -8,32 +15,48 @@ var can_grab = false var grabbed_offset = Vector2() func _ready(): - zone.frame = 0 - -#func _drag_drop(event): -# if event is InputEventMouseButton and can_grab: -# # Substract from the player's budget and disable grabbing -# if SimData.budget >= cost: -# SimData.budget -= cost -# can_grab = false -# grabbed_offset = position - get_global_mouse_position() + SimEvents.connect("budget", self, "_get_budget") + connect("grabbed", self, "_grab_zone") -#func _input(event): -# _drag_drop(event) +func _drag_drop(event): + if event is InputEventMouseButton and can_grab: + # Substract from the player's budget and disable grabbing + if SimData.budget >= cost: + SimData.budget -= cost + can_grab = false + grabbed_offset = position - get_global_mouse_position() + +func _input(event): + _drag_drop(event) func _process(delta): - if SimData.has_power == true: + if can_grab: + position = get_global_mouse_position() + grabbed_offset + +func _animante_sprite(animante: bool = true): + if zone.hframes > 1 or zone.vframes > 1 and animante: animator.play("Animante") else: animator.stop() -# if can_grab: -# position = get_global_mouse_position() + grabbed_offset - -#func _animante_sprite(animante: bool = true): -# if zone.hframes > 1 or zone.vframes > 1 and animante: -# animator.play("Animante") -# else: -# animator.stop() -#func _grab_zone(): -# can_grab = true +func _grab_zone(): + can_grab = true + +func _get_budget(): + if SimData.budget >= expense and SimData.has_power: + SimData.budget -= expense + SimData.expenses = expense + + if SimData.has_power: + var total_income = SimData.res_tax * income + SimData.budget += total_income + SimData.res_income = total_income + +func _on_Zone_body_entered(body: Node): + if SimData.has_power and can_grab == false: + quarters.start() + _animante_sprite() + +func _on_Zone_body_exited(body: Node): + quarters.stop() + _animante_sprite(false) diff --git a/scripts/autoload/sim_data.gd b/scripts/autoload/sim_data.gd index baf0e19..d924d9e 100644 --- a/scripts/autoload/sim_data.gd +++ b/scripts/autoload/sim_data.gd @@ -17,9 +17,6 @@ var current_power_cap: int var prev_power_cap: int var has_power: bool -var res_tax: int = 5 -var res_income: int - var ticker_files: Array = [ "adverts.json", "sammy.json" diff --git a/scripts/simtactics/has_power.gd b/scripts/simtactics/has_power.gd deleted file mode 100644 index 7427664..0000000 --- a/scripts/simtactics/has_power.gd +++ /dev/null @@ -1,20 +0,0 @@ -extends ConditionLeaf - -export var cost: int = 10000 -export var income: int = 100 -export var expense: int = 0 - -func tick(actor, blackboard): - if SimData.has_power: - if SimData.budget >= expense: - SimData.budget -= expense - SimData.expenses = expense - - if SimData.has_power: - var total_income = SimData.res_tax * income - SimData.budget += total_income - SimData.res_income = total_income - - return SUCCESS - - return FAILURE diff --git a/scripts/simtactics/turn_on.gd b/scripts/simtactics/turn_on.gd deleted file mode 100644 index a45af1f..0000000 --- a/scripts/simtactics/turn_on.gd +++ /dev/null @@ -1,5 +0,0 @@ -extends ConditionLeaf - -func tick(actor, blackboard): - SimData.has_power = true - return RUNNING diff --git a/scripts/simtactics/zone.gd b/scripts/simtactics/zone.gd deleted file mode 100644 index 1d6d575..0000000 --- a/scripts/simtactics/zone.gd +++ /dev/null @@ -1,18 +0,0 @@ -extends ConditionLeaf - -export var cost: int = 10000 -export var income: int = 100 -export var expense: int = 0 - -func tick(actor, blackboard): - if SimData.has_power: - if SimData.budget >= expense: - SimData.budget -= expense - SimData.expenses = expense - - if SimData.has_power: - var total_income = SimData.res_tax * income - SimData.budget += total_income - SimData.res_income = total_income - - return RUNNING diff --git a/scripts/ticker.gd b/scripts/ticker.gd index 1c99bdc..7405cdd 100644 --- a/scripts/ticker.gd +++ b/scripts/ticker.gd @@ -1,42 +1,42 @@ extends Control -#const TICKER_PATH = "res://json/ticker/" -#const FNN_LOGO = "res://assets/ticker/fnn.png" -#const CONFIG_FILE = "config.json" -# -#onready var ticker_text = $Status/NewsBtn -#onready var ticker_box = $Windows/NewsWindow/News -#onready var ticker_window = $Windows/NewsWindow -# -#var news_file: String = "" -#var rng = RandomNumberGenerator.new() -#var all_news: Array = [] -#var speices: Array = [ -# "Cat", -# "Fennec", -# "Fox" -#] -# -#var json_files: Array = [] -# -#func _load_json(): -# var file = File.new() -# if file.file_exists(news_file): -# file.open(news_file, file.READ) -# var result = parse_json(file.get_as_text()) -# return result -# -#func _index_news(): -# var news = _load_json() -# all_news.clear() -# all_news = news["ticker"] -# randomize() -# all_news.shuffle() -# -#func _ready(): -# ticker_window.window_title = JsonHelper.key_value(TICKER_PATH, CONFIG_FILE, "outlet") -# -# _randomize_news(json_files) +const TICKER_PATH = "res://json/ticker/" +const FNN_LOGO = "res://assets/ticker/fnn.png" +const CONFIG_FILE = "config.json" + +onready var ticker_text = $Status/NewsBtn +onready var ticker_box = $Windows/NewsWindow/News +onready var ticker_window = $Windows/NewsWindow + +var news_file: String = "" +var rng = RandomNumberGenerator.new() +var all_news: Array = [] +var speices: Array = [ + "Cat", + "Fennec", + "Fox" +] + +var json_files: Array = [] + +func _load_json(): + var file = File.new() + if file.file_exists(news_file): + file.open(news_file, file.READ) + var result = parse_json(file.get_as_text()) + return result + +func _index_news(): + var news = _load_json() + all_news.clear() + all_news = news["ticker"] + randomize() + all_news.shuffle() + +func _ready(): + ticker_window.window_title = JsonHelper.key_value(TICKER_PATH, CONFIG_FILE, "outlet") + + _randomize_news(json_files) #func _process(delta): # var prev_json_Files = json_files @@ -60,64 +60,73 @@ extends Control # for files in city_life: # json_files.append(files) -#func _array_check(list1, list2): -# for item in list1: -# if item in list2: -# return true -# -# return false -# -#func _start_alert(message): -## if ticker_text.items.size() > 1: -## ticker_text.clear() -## -## SimData.on_alert = true -## news_file = str(TICKER_PATH + "ticker_alerts.json") -## ticker_text.add_item(all_news) -# -# pass -# -#func _randomize_news(files: Array): -# if all_news == null: -# json_files = JsonHelper.key_value(TICKER_PATH, CONFIG_FILE, "ticker_files") -# -# for file in files: -# news_file = str(TICKER_PATH + file) -# _load_json() -# _index_news() -# -# rng.randomize() -# randomize() -# files.shuffle() -# -# var news_range = rng.randi_range(0, all_news.size() - 1) -# var news_text: String = all_news[news_range] -# -# if "[competing_outlet]" in news_text: -# news_text = news_text.replace("[competing_outlet]", JsonHelper.key_value(TICKER_PATH, CONFIG_FILE, "competing_outlet")) -# -# if "[outlet]" in news_text: -# news_text = news_text.replace("[outlet]", JsonHelper.key_value(TICKER_PATH, CONFIG_FILE, "outlet")) -# -# if "[species]" in news_text: -# speices.shuffle() -# var speices_range = rng.randi_range(speices.size() - 1) -# news_text = news_text.replace("[species]", speices[speices_range]) -# -# if "[city]" in news_text: -# news_text = news_text.replace("[city]", SimData.city_name) -# -# if "[mayor]" in news_text: -# news_text = news_text.replace("[mayor]", SimData.mayor_name) -# -# # Prevent stack overflaw -# if ticker_box.items.size() > 10: -# ticker_box.clear() -# -# _randomize_news(json_files) -# _add_news(news_text) -# -#func _add_news(news_item): -# ticker_text.text = news_item -# ticker_box.add_item(news_item) +func _array_check(list1, list2): + for item in list1: + if item in list2: + return true + + return false + +func _start_alert(message): +# if ticker_text.items.size() > 1: +# ticker_text.clear() # +# SimData.on_alert = true +# news_file = str(TICKER_PATH + "ticker_alerts.json") +# ticker_text.add_item(all_news) + + pass + +func _randomize_news(files: Array): + if all_news == null: + json_files = JsonHelper.key_value(TICKER_PATH, CONFIG_FILE, "ticker_files") + + for file in files: + news_file = str(TICKER_PATH + file) + _load_json() + _index_news() + + rng.randomize() + randomize() + files.shuffle() + + var news_range = rng.randi_range(0, all_news.size() - 1) + var news_text: String = all_news[news_range] + + if "[competing_outlet]" in news_text: + news_text = news_text.replace("[competing_outlet]", JsonHelper.key_value(TICKER_PATH, CONFIG_FILE, "competing_outlet")) + + if "[outlet]" in news_text: + news_text = news_text.replace("[outlet]", JsonHelper.key_value(TICKER_PATH, CONFIG_FILE, "outlet")) + + if "[species]" in news_text: + speices.shuffle() + var speices_range = rng.randi_range(speices.size() - 1) + news_text = news_text.replace("[species]", speices[speices_range]) + + if "[city]" in news_text: + news_text = news_text.replace("[city]", SimData.city_name) + + if "[mayor]" in news_text: + news_text = news_text.replace("[mayor]", SimData.mayor_name) + + # Prevent stack overflaw + if ticker_box.items.size() > 10: + ticker_box.clear() + + _randomize_news(json_files) + _add_news(news_text) + +func _add_news(news_item): + ticker_text.text = news_item + ticker_box.add_item(news_item) + +func _on_NewsBtn_pressed(): + ticker_window.show() + +func _on_RotateNews_timeout(): + rng.randomize() + randomize() + all_news.shuffle() + json_files.shuffle() + _randomize_news(json_files) diff --git a/scripts/windows.gd b/scripts/windows.gd index c7b6dcd..7044d86 100644 --- a/scripts/windows.gd +++ b/scripts/windows.gd @@ -5,16 +5,7 @@ onready var tax_window = $TaxWindow onready var advsior_meet_window = $AdvisorMeet onready var tools_window = $ToolsWindow -onready var verLabel = $VersionLbl - func _ready(): - # To get version string - var version = ProjectSettings.get_setting("application/config/version") - # To get build number - var build = ProjectSettings.get_setting("application/config/build") - - verLabel.text = version + " (Build " + str(build) + ")" - SimData.city_name = SimData.city_name.capitalize() SimData.mayor_name = SimData.mayor_name.capitalize()