Skip to content

Commit

Permalink
chore: commit the global script class cache
Browse files Browse the repository at this point in the history
  • Loading branch information
florianvazelle committed Jan 4, 2024
1 parent 9b95290 commit 03a68db
Show file tree
Hide file tree
Showing 4 changed files with 167 additions and 8 deletions.
28 changes: 28 additions & 0 deletions .github/workflows/release-packaging.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@ jobs:

steps:
- uses: actions/checkout@v4
with:
lfs: true

- uses: extractions/setup-just@v1

- name: Load dotenv
Expand All @@ -39,11 +42,22 @@ jobs:

steps:
- uses: actions/checkout@v4
with:
lfs: true

- uses: extractions/setup-just@v1

- name: Load dotenv
run: just ci-load-dotenv

- name: Cache Godot
uses: actions/cache@v3
with:
path: |
~/.mkflower/bin
~/.local/share/godot/export_templates/${{ env.godot_version }}.stable
key: ${{ env.godot_version }}

- name: Export
run: just export

Expand All @@ -63,8 +77,19 @@ jobs:

steps:
- uses: actions/checkout@v4
with:
lfs: true

- uses: extractions/setup-just@v1

- name: Cache Godot
uses: actions/cache@v3
with:
path: |
~/.mkflower/bin
~/.local/share/godot/export_templates/${{ env.godot_version }}.stable
key: ${{ env.godot_version }}

- name: Load dotenv
run: just ci-load-dotenv

Expand Down Expand Up @@ -92,6 +117,9 @@ jobs:

steps:
- uses: actions/checkout@v4
with:
lfs: true

- uses: extractions/setup-just@v1

- name: Load dotenv
Expand Down
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
# Godot-specific ignores
.godot/
.godot/*
!.godot/global_script_class_cache.cfg
.import/
gfxrecon_capture_*

Expand Down
115 changes: 115 additions & 0 deletions .godot/global_script_class_cache.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,115 @@
list=Array[Dictionary]([{
"base": &"Node",
"class": &"AudioStreamPlayerPool",
"icon": "",
"language": &"GDScript",
"path": "res://addons/ez-sfx-and-music/scenes/AudioStreamPlayerPool/audio_stream_player_pool.gd"
}, {
"base": &"AudioStreamPlayer",
"class": &"AudioStreamPlayerWithFade",
"icon": "",
"language": &"GDScript",
"path": "res://addons/ez-sfx-and-music/scenes/AudioStreamPlayerWithFade/audio_stream_player_with_fade.gd"
}, {
"base": &"Ghost",
"class": &"BossGhost",
"icon": "",
"language": &"GDScript",
"path": "res://scripts/props/boss_ghost.gd"
}, {
"base": &"CanvasLayer",
"class": &"Fade",
"icon": "",
"language": &"GDScript",
"path": "res://addons/UniversalFade/Fade.gd"
}, {
"base": &"StaticBody3D",
"class": &"Ghost",
"icon": "",
"language": &"GDScript",
"path": "res://scripts/props/ghost.gd"
}, {
"base": &"Node3D",
"class": &"Healthbar3D",
"icon": "",
"language": &"GDScript",
"path": "res://scripts/gui/healthbar.gd"
}, {
"base": &"Control",
"class": &"Menu",
"icon": "",
"language": &"GDScript",
"path": "res://scripts/gui/menu.gd"
}, {
"base": &"CharacterBody3D",
"class": &"MovementController",
"icon": "",
"language": &"GDScript",
"path": "res://scripts/player/movement_controller.gd"
}, {
"base": &"Node",
"class": &"MusicPlayer",
"icon": "",
"language": &"GDScript",
"path": "res://addons/ez-sfx-and-music/scenes/MusicPlayer/music_player.gd"
}, {
"base": &"RichTextEffect",
"class": &"Nervous",
"icon": "",
"language": &"GDScript",
"path": "res://scripts/gui/nervous.gd"
}, {
"base": &"Node",
"class": &"OptionsConstants",
"icon": "",
"language": &"GDScript",
"path": "res://addons/EasyMenus/Scripts/options_constants.gd"
}, {
"base": &"Control",
"class": &"Overlay",
"icon": "",
"language": &"GDScript",
"path": "res://scripts/gui/overlay.gd"
}, {
"base": &"Resource",
"class": &"ProtonScatterBaseShape",
"icon": "",
"language": &"GDScript",
"path": "res://addons/proton_scatter/src/shapes/base_shape.gd"
}, {
"base": &"ProtonScatterBaseShape",
"class": &"ProtonScatterBoxShape",
"icon": "",
"language": &"GDScript",
"path": "res://addons/proton_scatter/src/shapes/box_shape.gd"
}, {
"base": &"Resource",
"class": &"ProtonScatterCacheResource",
"icon": "",
"language": &"GDScript",
"path": "res://addons/proton_scatter/src/common/cache_resource.gd"
}, {
"base": &"ProtonScatterBaseShape",
"class": &"ProtonScatterPathShape",
"icon": "",
"language": &"GDScript",
"path": "res://addons/proton_scatter/src/shapes/path_shape.gd"
}, {
"base": &"ProtonScatterBaseShape",
"class": &"ProtonScatterSphereShape",
"icon": "",
"language": &"GDScript",
"path": "res://addons/proton_scatter/src/shapes/sphere_shape.gd"
}, {
"base": &"Node",
"class": &"Scenario",
"icon": "",
"language": &"GDScript",
"path": "res://scripts/scenario.gd"
}, {
"base": &"Node",
"class": &"SfxPlayer",
"icon": "",
"language": &"GDScript",
"path": "res://addons/ez-sfx-and-music/scenes/SfxPlayer/sfx_player.gd"
}])
29 changes: 22 additions & 7 deletions Justfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
#!/usr/bin/env -S just --justfile

# === Settings ===

set dotenv-load := true

export PIP_REQUIRE_VIRTUALENV := "true"
Expand Down Expand Up @@ -27,11 +29,26 @@ dist_dir := justfile_directory() / "dist"

# Godot variables
godot_version := env_var('GODOT_VERSION')
godot_platform := if arch() == "x86" { "linux.x86_32" } else { if arch() == "x86_64" { "linux.x86_64" } else { "" } }
godot_platform := if arch() == "x86" {
"linux.x86_32"
} else {
if arch() == "x86_64" {
"linux.x86_64"
} else {
if arch() == "arm" {
"linux.arm32"
} else {
if arch() == "aarch64" {
"linux.arm64"
} else { "" }
}
}
}
godot_filename := "Godot_v" + godot_version + "-stable_" + godot_platform
godot_template := "Godot_v" + godot_version + "-stable_export_templates.tpz"
godot_bin := bin_dir / godot_filename
godot_editor_data_dir := "~/.local/share/godot/"
use_x11_wrapper := if godot_platform =~ "x11*" { env("CI", "false") } else { "false" }

# Game variables
game_name := env_var('GAME_NAME')
Expand Down Expand Up @@ -100,8 +117,6 @@ install-addons:
# Import game resources
import-resources:
just godot --headless --export-pack null /dev/null
# timeout 60 just godot --editor || true
# just godot --headless --quit --editor

# Updates the game version for export
@bump-version:
Expand Down Expand Up @@ -131,27 +146,27 @@ fmt:
# Export game on Windows
export-windows: bump-version install-addons import-resources
mkdir -p {{ build_dir }}/windows
just godot --export-release '"Windows Desktop"' --headless {{ build_dir }}/windows/{{ game_name }}.exe
just godot --headless --export-release '"Windows Desktop"' {{ build_dir }}/windows/{{ game_name }}.exe
(cd {{ build_dir }}/windows && zip {{ game_name }}-windows-v{{ game_version }}.zip -r .)
mv {{ build_dir }}/windows/{{ game_name }}-windows-v{{ game_version }}.zip {{ dist_dir }}/{{ game_name }}-windows-v{{ game_version }}.zip
rm -rf {{ build_dir }}/windows

# Export game on MacOS
export-mac: bump-version install-addons import-resources
just godot --export-release "macOS" --headless {{ dist_dir }}/{{ game_name }}-mac-v{{ game_version }}.zip
just godot --headless --export-release "macOS" {{ dist_dir }}/{{ game_name }}-mac-v{{ game_version }}.zip

# Export game on Linux
export-linux: bump-version install-addons import-resources
mkdir -p {{ build_dir }}/linux
just godot --export-release "Linux/X11" --headless {{ build_dir }}/linux/{{ game_name }}.x86_64
just godot --headless --export-release "Linux/X11" {{ build_dir }}/linux/{{ game_name }}.x86_64
(cd {{ build_dir }}/linux && zip {{ game_name }}-linux-v{{ game_version }}.zip -r .)
mv {{ build_dir }}/linux/{{ game_name }}-linux-v{{ game_version }}.zip {{ dist_dir }}/{{ game_name }}-linux-v{{ game_version }}.zip
rm -rf {{ build_dir }}/linux

# Export game for the web
export-web: bump-version install-addons import-resources
mkdir -p {{ build_dir }}/web
just godot --export-release "Web" --headless {{ build_dir }}/web/index.html
just godot --headless --export-release "Web" {{ build_dir }}/web/index.html

# Export on all platform
export: export-windows export-mac export-linux
Expand Down

0 comments on commit 03a68db

Please sign in to comment.