From 19aba81bd9920c470ff258b35ef14276faa1146e Mon Sep 17 00:00:00 2001 From: Andrew Lee Date: Fri, 5 Aug 2022 20:17:55 -0400 Subject: Finally some gameplay --- Game.tscn | 3 - Menu.gd | 29 -- Menu.tscn | 61 ----- README.md | 2 +- android/.build_version | 1 + android/build/.gdignore | 1 + android/build/AndroidManifest.xml | 97 +++++++ android/build/assetPacks/installTime/build.gradle | 8 + android/build/build.gradle | 243 +++++++++++++++++ android/build/config.gradle | 303 +++++++++++++++++++++ android/build/gradle.properties | 25 ++ android/build/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 59203 bytes .../build/gradle/wrapper/gradle-wrapper.properties | 5 + android/build/gradlew | 185 +++++++++++++ android/build/gradlew.bat | 89 ++++++ android/build/libs/debug/godot-lib.debug.aar | Bin 0 -> 45464250 bytes android/build/libs/release/godot-lib.release.aar | Bin 0 -> 41009628 bytes android/build/res/drawable-nodpi/splash.png | Bin 0 -> 14766 bytes .../build/res/drawable-nodpi/splash_bg_color.png | Bin 0 -> 1360 bytes android/build/res/drawable/splash_drawable.xml | 12 + .../res/values-ar/godot_project_name_string.xml | 5 + .../res/values-bg/godot_project_name_string.xml | 5 + .../res/values-ca/godot_project_name_string.xml | 5 + .../res/values-cs/godot_project_name_string.xml | 5 + .../res/values-da/godot_project_name_string.xml | 5 + .../res/values-de/godot_project_name_string.xml | 5 + .../res/values-el/godot_project_name_string.xml | 5 + .../res/values-en/godot_project_name_string.xml | 5 + .../values-es-rES/godot_project_name_string.xml | 5 + .../res/values-es/godot_project_name_string.xml | 5 + .../res/values-fa/godot_project_name_string.xml | 5 + .../res/values-fi/godot_project_name_string.xml | 5 + .../res/values-fr/godot_project_name_string.xml | 5 + .../res/values-hi/godot_project_name_string.xml | 5 + .../res/values-hr/godot_project_name_string.xml | 5 + .../res/values-hu/godot_project_name_string.xml | 5 + .../res/values-in/godot_project_name_string.xml | 5 + .../res/values-it/godot_project_name_string.xml | 5 + .../res/values-iw/godot_project_name_string.xml | 5 + .../res/values-ja/godot_project_name_string.xml | 5 + .../res/values-ko/godot_project_name_string.xml | 5 + .../res/values-lt/godot_project_name_string.xml | 5 + .../res/values-lv/godot_project_name_string.xml | 5 + .../res/values-nb/godot_project_name_string.xml | 5 + .../res/values-nl/godot_project_name_string.xml | 5 + .../res/values-pl/godot_project_name_string.xml | 5 + .../res/values-pt/godot_project_name_string.xml | 5 + .../res/values-ro/godot_project_name_string.xml | 5 + .../res/values-ru/godot_project_name_string.xml | 5 + .../res/values-sk/godot_project_name_string.xml | 5 + .../res/values-sl/godot_project_name_string.xml | 5 + .../res/values-sr/godot_project_name_string.xml | 5 + .../res/values-sv/godot_project_name_string.xml | 5 + .../res/values-th/godot_project_name_string.xml | 5 + .../res/values-tl/godot_project_name_string.xml | 5 + .../res/values-tr/godot_project_name_string.xml | 5 + .../res/values-uk/godot_project_name_string.xml | 5 + .../res/values-vi/godot_project_name_string.xml | 5 + .../values-zh-rHK/godot_project_name_string.xml | 5 + .../values-zh-rTW/godot_project_name_string.xml | 5 + .../res/values-zh/godot_project_name_string.xml | 5 + .../build/res/values/godot_project_name_string.xml | 5 + android/build/res/values/themes.xml | 10 + android/build/settings.gradle | 2 + android/build/src/com/godot/game/GodotApp.java | 47 ++++ assets/images/red.png | Bin 0 -> 556 bytes assets/images/red.png.import | 35 +++ assets/images/text236.png | Bin 0 -> 10363 bytes assets/images/text236.png.import | 35 +++ assets/images/white.png | Bin 0 -> 560 bytes assets/images/white.png.import | 35 +++ assets/tilemap.tres | 29 ++ assets/tilemap.tscn | 16 ++ game/Characters/Player/Player.gd | 34 +++ game/Characters/Player/Player.tscn | 38 +++ game/FPS.gd | 16 ++ game/Game.gd | 16 ++ game/Game.tscn | 39 +++ game/Interface.tscn | 23 ++ icon.png | Bin 3305 -> 25981 bytes menu/Menu.gd | 31 +++ menu/Menu.tscn | 61 +++++ project.godot | 16 +- text236.png | Bin 10363 -> 0 bytes text236.png.import | 35 --- 85 files changed, 1659 insertions(+), 133 deletions(-) delete mode 100644 Game.tscn delete mode 100644 Menu.gd delete mode 100644 Menu.tscn create mode 100644 android/.build_version create mode 100644 android/build/.gdignore create mode 100644 android/build/AndroidManifest.xml create mode 100644 android/build/assetPacks/installTime/build.gradle create mode 100644 android/build/build.gradle create mode 100644 android/build/config.gradle create mode 100644 android/build/gradle.properties create mode 100644 android/build/gradle/wrapper/gradle-wrapper.jar create mode 100644 android/build/gradle/wrapper/gradle-wrapper.properties create mode 100755 android/build/gradlew create mode 100644 android/build/gradlew.bat create mode 100644 android/build/libs/debug/godot-lib.debug.aar create mode 100644 android/build/libs/release/godot-lib.release.aar create mode 100644 android/build/res/drawable-nodpi/splash.png create mode 100644 android/build/res/drawable-nodpi/splash_bg_color.png create mode 100644 android/build/res/drawable/splash_drawable.xml create mode 100644 android/build/res/values-ar/godot_project_name_string.xml create mode 100644 android/build/res/values-bg/godot_project_name_string.xml create mode 100644 android/build/res/values-ca/godot_project_name_string.xml create mode 100644 android/build/res/values-cs/godot_project_name_string.xml create mode 100644 android/build/res/values-da/godot_project_name_string.xml create mode 100644 android/build/res/values-de/godot_project_name_string.xml create mode 100644 android/build/res/values-el/godot_project_name_string.xml create mode 100644 android/build/res/values-en/godot_project_name_string.xml create mode 100644 android/build/res/values-es-rES/godot_project_name_string.xml create mode 100644 android/build/res/values-es/godot_project_name_string.xml create mode 100644 android/build/res/values-fa/godot_project_name_string.xml create mode 100644 android/build/res/values-fi/godot_project_name_string.xml create mode 100644 android/build/res/values-fr/godot_project_name_string.xml create mode 100644 android/build/res/values-hi/godot_project_name_string.xml create mode 100644 android/build/res/values-hr/godot_project_name_string.xml create mode 100644 android/build/res/values-hu/godot_project_name_string.xml create mode 100644 android/build/res/values-in/godot_project_name_string.xml create mode 100644 android/build/res/values-it/godot_project_name_string.xml create mode 100644 android/build/res/values-iw/godot_project_name_string.xml create mode 100644 android/build/res/values-ja/godot_project_name_string.xml create mode 100644 android/build/res/values-ko/godot_project_name_string.xml create mode 100644 android/build/res/values-lt/godot_project_name_string.xml create mode 100644 android/build/res/values-lv/godot_project_name_string.xml create mode 100644 android/build/res/values-nb/godot_project_name_string.xml create mode 100644 android/build/res/values-nl/godot_project_name_string.xml create mode 100644 android/build/res/values-pl/godot_project_name_string.xml create mode 100644 android/build/res/values-pt/godot_project_name_string.xml create mode 100644 android/build/res/values-ro/godot_project_name_string.xml create mode 100644 android/build/res/values-ru/godot_project_name_string.xml create mode 100644 android/build/res/values-sk/godot_project_name_string.xml create mode 100644 android/build/res/values-sl/godot_project_name_string.xml create mode 100644 android/build/res/values-sr/godot_project_name_string.xml create mode 100644 android/build/res/values-sv/godot_project_name_string.xml create mode 100644 android/build/res/values-th/godot_project_name_string.xml create mode 100644 android/build/res/values-tl/godot_project_name_string.xml create mode 100644 android/build/res/values-tr/godot_project_name_string.xml create mode 100644 android/build/res/values-uk/godot_project_name_string.xml create mode 100644 android/build/res/values-vi/godot_project_name_string.xml create mode 100644 android/build/res/values-zh-rHK/godot_project_name_string.xml create mode 100644 android/build/res/values-zh-rTW/godot_project_name_string.xml create mode 100644 android/build/res/values-zh/godot_project_name_string.xml create mode 100644 android/build/res/values/godot_project_name_string.xml create mode 100644 android/build/res/values/themes.xml create mode 100644 android/build/settings.gradle create mode 100644 android/build/src/com/godot/game/GodotApp.java create mode 100644 assets/images/red.png create mode 100644 assets/images/red.png.import create mode 100644 assets/images/text236.png create mode 100644 assets/images/text236.png.import create mode 100644 assets/images/white.png create mode 100644 assets/images/white.png.import create mode 100644 assets/tilemap.tres create mode 100644 assets/tilemap.tscn create mode 100644 game/Characters/Player/Player.gd create mode 100644 game/Characters/Player/Player.tscn create mode 100644 game/FPS.gd create mode 100644 game/Game.gd create mode 100644 game/Game.tscn create mode 100644 game/Interface.tscn create mode 100644 menu/Menu.gd create mode 100644 menu/Menu.tscn delete mode 100644 text236.png delete mode 100644 text236.png.import diff --git a/Game.tscn b/Game.tscn deleted file mode 100644 index b171e8d..0000000 --- a/Game.tscn +++ /dev/null @@ -1,3 +0,0 @@ -[gd_scene format=2] - -[node name="Node2D" type="Node2D"] diff --git a/Menu.gd b/Menu.gd deleted file mode 100644 index 4a20621..0000000 --- a/Menu.gd +++ /dev/null @@ -1,29 +0,0 @@ -extends MarginContainer - - -# Declare member variables here. Examples: -# var a = 2 -# var b = "text" - - -# Called when the node enters the scene tree for the first time. -func _ready(): - pass # Replace with function body. - - -# Called every frame. 'delta' is the elapsed time since the previous frame. -#func _process(delta): -# pass - - -func _on_Play_button_up(): - pass # Replace with function body. - - -func _on_Credits_button_up(): - pass # Replace with function body. - - -func _on_Quit_button_up(): - get_tree().quit() - pass # Replace with function body. diff --git a/Menu.tscn b/Menu.tscn deleted file mode 100644 index fbfc482..0000000 --- a/Menu.tscn +++ /dev/null @@ -1,61 +0,0 @@ -[gd_scene load_steps=3 format=2] - -[ext_resource path="res://text236.png" type="Texture" id=1] -[ext_resource path="res://Menu.gd" type="Script" id=2] - -[node name="Menu" type="MarginContainer"] -anchor_right = 1.0 -anchor_bottom = 1.0 -rect_scale = Vector2( 1.00487, 1.03334 ) -rect_pivot_offset = Vector2( -1427, -96 ) -script = ExtResource( 2 ) - -[node name="CenterContainer" type="CenterContainer" parent="."] -margin_right = 1280.0 -margin_bottom = 720.0 - -[node name="VBoxContainer" type="VBoxContainer" parent="CenterContainer"] -margin_left = 448.0 -margin_top = 308.0 -margin_right = 832.0 -margin_bottom = 412.0 - -[node name="Logo" type="Sprite" parent="CenterContainer/VBoxContainer"] -position = Vector2( 505, 64 ) -scale = Vector2( 0.991787, 1.0997 ) -texture = ExtResource( 1 ) - -[node name="Play" type="Button" parent="CenterContainer/VBoxContainer"] -margin_right = 384.0 -margin_bottom = 20.0 -text = "Play" - -[node name="Credits" type="Button" parent="CenterContainer/VBoxContainer"] -margin_top = 24.0 -margin_right = 384.0 -margin_bottom = 44.0 -text = "Credits" - -[node name="Quit" type="Button" parent="CenterContainer/VBoxContainer"] -margin_top = 48.0 -margin_right = 384.0 -margin_bottom = 68.0 -text = "Quit" - -[node name="About" type="Label" parent="CenterContainer/VBoxContainer"] -margin_top = 72.0 -margin_right = 384.0 -margin_bottom = 86.0 -text = "Made for the bits & Bytes Unofficial Game Jam! August 2022" -align = 1 - -[node name="Copyright" type="Label" parent="CenterContainer/VBoxContainer"] -margin_top = 90.0 -margin_right = 384.0 -margin_bottom = 104.0 -text = "Copyright 2022 Andrew Lee. Powered by the Godot Engine" -align = 1 - -[connection signal="button_up" from="CenterContainer/VBoxContainer/Play" to="." method="_on_Play_button_up"] -[connection signal="button_up" from="CenterContainer/VBoxContainer/Credits" to="." method="_on_Credits_button_up"] -[connection signal="button_up" from="CenterContainer/VBoxContainer/Quit" to="." method="_on_Quit_button_up"] diff --git a/README.md b/README.md index 598e2ee..474c6b8 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,2 @@ -# Frivolous Run +# FrivoRun Made for the bits & Bytes Game Jam August 2022 diff --git a/android/.build_version b/android/.build_version new file mode 100644 index 0000000..5a8332e --- /dev/null +++ b/android/.build_version @@ -0,0 +1 @@ +3.4.5.stable diff --git a/android/build/.gdignore b/android/build/.gdignore new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/android/build/.gdignore @@ -0,0 +1 @@ + diff --git a/android/build/AndroidManifest.xml b/android/build/AndroidManifest.xml new file mode 100644 index 0000000..d38c2d6 --- /dev/null +++ b/android/build/AndroidManifest.xml @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/android/build/assetPacks/installTime/build.gradle b/android/build/assetPacks/installTime/build.gradle new file mode 100644 index 0000000..b06faac --- /dev/null +++ b/android/build/assetPacks/installTime/build.gradle @@ -0,0 +1,8 @@ +apply plugin: 'com.android.asset-pack' + +assetPack { + packName = "installTime" // Directory name for the asset pack + dynamicDelivery { + deliveryType = "install-time" // Delivery mode + } +} diff --git a/android/build/build.gradle b/android/build/build.gradle new file mode 100644 index 0000000..d03f708 --- /dev/null +++ b/android/build/build.gradle @@ -0,0 +1,243 @@ +// Gradle build config for Godot Engine's Android port. +// +// Do not remove/modify comments ending with BEGIN/END, they are used to inject +// addon-specific configuration. +apply from: 'config.gradle' + +buildscript { + apply from: 'config.gradle' + + repositories { + google() + mavenCentral() +//CHUNK_BUILDSCRIPT_REPOSITORIES_BEGIN +//CHUNK_BUILDSCRIPT_REPOSITORIES_END + } + dependencies { + classpath libraries.androidGradlePlugin + classpath libraries.kotlinGradlePlugin +//CHUNK_BUILDSCRIPT_DEPENDENCIES_BEGIN +//CHUNK_BUILDSCRIPT_DEPENDENCIES_END + } +} + +apply plugin: 'com.android.application' + +allprojects { + repositories { + google() + mavenCentral() +//CHUNK_ALLPROJECTS_REPOSITORIES_BEGIN +//CHUNK_ALLPROJECTS_REPOSITORIES_END + + // Godot user plugins custom maven repos + String[] mavenRepos = getGodotPluginsMavenRepos() + if (mavenRepos != null && mavenRepos.size() > 0) { + for (String repoUrl : mavenRepos) { + maven { + url repoUrl + } + } + } + } +} + +dependencies { + implementation libraries.kotlinStdLib + implementation libraries.androidxFragment + + if (rootProject.findProject(":lib")) { + implementation project(":lib") + } else if (rootProject.findProject(":godot:lib")) { + implementation project(":godot:lib") + } else { + // Custom build mode. In this scenario this project is the only one around and the Godot + // library is available through the pre-generated godot-lib.*.aar android archive files. + debugImplementation fileTree(dir: 'libs/debug', include: ['*.jar', '*.aar']) + releaseImplementation fileTree(dir: 'libs/release', include: ['*.jar', '*.aar']) + } + + // Godot user plugins remote dependencies + String[] remoteDeps = getGodotPluginsRemoteBinaries() + if (remoteDeps != null && remoteDeps.size() > 0) { + for (String dep : remoteDeps) { + implementation dep + } + } + + // Godot user plugins local dependencies + String[] pluginsBinaries = getGodotPluginsLocalBinaries() + if (pluginsBinaries != null && pluginsBinaries.size() > 0) { + implementation files(pluginsBinaries) + } + +//CHUNK_DEPENDENCIES_BEGIN +//CHUNK_DEPENDENCIES_END +} + +android { + compileSdkVersion versions.compileSdk + buildToolsVersion versions.buildTools + + compileOptions { + sourceCompatibility versions.javaVersion + targetCompatibility versions.javaVersion + } + + assetPacks = [":assetPacks:installTime"] + + defaultConfig { + // The default ignore pattern for the 'assets' directory includes hidden files and directories which are used by Godot projects. + aaptOptions { + ignoreAssetsPattern "!.svn:!.git:!.gitignore:!.ds_store:!*.scc:_*:!CVS:!thumbs.db:!picasa.ini:!*~" + } + + ndk { + String[] export_abi_list = getExportEnabledABIs() + abiFilters export_abi_list + } + + manifestPlaceholders = [godotEditorVersion: getGodotEditorVersion()] + + // Feel free to modify the application id to your own. + applicationId getExportPackageName() + versionCode getExportVersionCode() + versionName getExportVersionName() + minSdkVersion getExportMinSdkVersion() + targetSdkVersion getExportTargetSdkVersion() +//CHUNK_ANDROID_DEFAULTCONFIG_BEGIN +//CHUNK_ANDROID_DEFAULTCONFIG_END + } + + lintOptions { + abortOnError false + disable 'MissingTranslation', 'UnusedResources' + } + + ndkVersion versions.ndkVersion + + packagingOptions { + exclude 'META-INF/LICENSE' + exclude 'META-INF/NOTICE' + + // 'doNotStrip' is enabled for development within Android Studio + if (shouldNotStrip()) { + doNotStrip '**/*.so' + } + } + + signingConfigs { + debug { + if (hasCustomDebugKeystore()) { + storeFile new File(getDebugKeystoreFile()) + storePassword getDebugKeystorePassword() + keyAlias getDebugKeyAlias() + keyPassword getDebugKeystorePassword() + } + } + + release { + File keystoreFile = new File(getReleaseKeystoreFile()) + if (keystoreFile.isFile()) { + storeFile keystoreFile + storePassword getReleaseKeystorePassword() + keyAlias getReleaseKeyAlias() + keyPassword getReleaseKeystorePassword() + } + } + } + + buildTypes { + + debug { + // Signing and zip-aligning are skipped for prebuilt builds, but + // performed for custom builds. + zipAlignEnabled shouldZipAlign() + if (shouldSign()) { + signingConfig signingConfigs.debug + } else { + signingConfig null + } + } + + release { + // Signing and zip-aligning are skipped for prebuilt builds, but + // performed for custom builds. + zipAlignEnabled shouldZipAlign() + if (shouldSign()) { + signingConfig signingConfigs.release + } else { + signingConfig null + } + } + } + + sourceSets { + main { + manifest.srcFile 'AndroidManifest.xml' + java.srcDirs = [ + 'src' +//DIR_SRC_BEGIN +//DIR_SRC_END + ] + res.srcDirs = [ + 'res' +//DIR_RES_BEGIN +//DIR_RES_END + ] + aidl.srcDirs = [ + 'aidl' +//DIR_AIDL_BEGIN +//DIR_AIDL_END + ] + assets.srcDirs = [ + 'assets' +//DIR_ASSETS_BEGIN +//DIR_ASSETS_END + ] + } + debug.jniLibs.srcDirs = [ + 'libs/debug' +//DIR_JNI_DEBUG_BEGIN +//DIR_JNI_DEBUG_END + ] + release.jniLibs.srcDirs = [ + 'libs/release' +//DIR_JNI_RELEASE_BEGIN +//DIR_JNI_RELEASE_END + ] + } + + applicationVariants.all { variant -> + variant.outputs.all { output -> + output.outputFileName = "android_${variant.name}.apk" + } + } +} + +task copyAndRenameDebugApk(type: Copy) { + from "$buildDir/outputs/apk/debug/android_debug.apk" + into getExportPath() + rename "android_debug.apk", getExportFilename() +} + +task copyAndRenameReleaseApk(type: Copy) { + from "$buildDir/outputs/apk/release/android_release.apk" + into getExportPath() + rename "android_release.apk", getExportFilename() +} + +task copyAndRenameDebugAab(type: Copy) { + from "$buildDir/outputs/bundle/debug/build-debug.aab" + into getExportPath() + rename "build-debug.aab", getExportFilename() +} + +task copyAndRenameReleaseAab(type: Copy) { + from "$buildDir/outputs/bundle/release/build-release.aab" + into getExportPath() + rename "build-release.aab", getExportFilename() +} + +//CHUNK_GLOBAL_BEGIN +//CHUNK_GLOBAL_END diff --git a/android/build/config.gradle b/android/build/config.gradle new file mode 100644 index 0000000..5a8b4e0 --- /dev/null +++ b/android/build/config.gradle @@ -0,0 +1,303 @@ +ext.versions = [ + androidGradlePlugin: '7.0.3', + compileSdk : 30, + minSdk : 19, // Also update 'platform/android/java/lib/AndroidManifest.xml#minSdkVersion' & 'platform/android/export/export_plugin.cpp#DEFAULT_MIN_SDK_VERSION' + targetSdk : 31, // Also update 'platform/android/java/lib/AndroidManifest.xml#targetSdkVersion' & 'platform/android/export/export_plugin.cpp#DEFAULT_TARGET_SDK_VERSION' + buildTools : '30.0.3', + kotlinVersion : '1.6.10', + fragmentVersion : '1.3.6', + javaVersion : 11, + ndkVersion : '21.4.7075529' // Also update 'platform/android/detect.py#get_project_ndk_version()' when this is updated. + +] + +ext.libraries = [ + androidGradlePlugin: "com.android.tools.build:gradle:$versions.androidGradlePlugin", + kotlinGradlePlugin : "org.jetbrains.kotlin:kotlin-gradle-plugin:$versions.kotlinVersion", + kotlinStdLib : "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$versions.kotlinVersion", + androidxFragment : "androidx.fragment:fragment:$versions.fragmentVersion", +] + +ext.getExportPackageName = { -> + // Retrieve the app id from the project property set by the Godot build command. + String appId = project.hasProperty("export_package_name") ? project.property("export_package_name") : "" + // Check if the app id is valid, otherwise use the default. + if (appId == null || appId.isEmpty()) { + appId = "com.godot.game" + } + return appId +} + +ext.getExportVersionCode = { -> + String versionCode = project.hasProperty("export_version_code") ? project.property("export_version_code") : "" + if (versionCode == null || versionCode.isEmpty()) { + versionCode = "1" + } + try { + return Integer.parseInt(versionCode) + } catch (NumberFormatException ignored) { + return 1 + } +} + +ext.getExportVersionName = { -> + String versionName = project.hasProperty("export_version_name") ? project.property("export_version_name") : "" + if (versionName == null || versionName.isEmpty()) { + versionName = "1.0" + } + return versionName +} + +ext.getExportMinSdkVersion = { -> + String minSdkVersion = project.hasProperty("export_version_min_sdk") ? project.property("export_version_min_sdk") : "" + if (minSdkVersion == null || minSdkVersion.isEmpty()) { + minSdkVersion = "$versions.minSdk" + } + try { + return Integer.parseInt(minSdkVersion) + } catch (NumberFormatException ignored) { + return versions.minSdk + } +} + +ext.getExportTargetSdkVersion = { -> + String targetSdkVersion = project.hasProperty("export_version_target_sdk") ? project.property("export_version_target_sdk") : "" + if (targetSdkVersion == null || targetSdkVersion.isEmpty()) { + targetSdkVersion = "$versions.targetSdk" + } + try { + return Integer.parseInt(targetSdkVersion) + } catch (NumberFormatException ignored) { + return versions.targetSdk + } +} + +ext.getGodotEditorVersion = { -> + String editorVersion = project.hasProperty("godot_editor_version") ? project.property("godot_editor_version") : "" + if (editorVersion == null || editorVersion.isEmpty()) { + // Try the library version first + editorVersion = getGodotLibraryVersion() + + if (editorVersion.isEmpty()) { + // Fallback value. + editorVersion = "custom_build" + } + } + return editorVersion +} + +ext.generateGodotLibraryVersion = { List requiredKeys -> + // Attempt to read the version from the `version.py` file. + String libraryVersion = "" + + File versionFile = new File("../../../version.py") + if (versionFile.isFile()) { + def map = [:] + + List lines = versionFile.readLines() + for (String line in lines) { + String[] keyValue = line.split("=") + String key = keyValue[0].trim() + String value = keyValue[1].trim().replaceAll("\"", "") + + if (requiredKeys.contains(key)) { + if (!value.isEmpty()) { + map[key] = value + } + requiredKeys.remove(key) + } + } + + if (requiredKeys.empty) { + libraryVersion = map.values().join(".") + } + } + + if (libraryVersion.isEmpty()) { + // Fallback value in case we're unable to read the file. + libraryVersion = "custom_build" + } + return libraryVersion +} + +ext.getGodotLibraryVersion = { -> + List requiredKeys = ["major", "minor", "patch", "status", "module_config"] + return generateGodotLibraryVersion(requiredKeys) +} + +ext.getGodotPublishVersion = { -> + List requiredKeys = ["major", "minor", "patch", "status"] + return generateGodotLibraryVersion(requiredKeys) +} + +final String VALUE_SEPARATOR_REGEX = "\\|" + +// get the list of ABIs the project should be exported to +ext.getExportEnabledABIs = { -> + String enabledABIs = project.hasProperty("export_enabled_abis") ? project.property("export_enabled_abis") : ""; + if (enabledABIs == null || enabledABIs.isEmpty()) { + enabledABIs = "armeabi-v7a|arm64-v8a|x86|x86_64|" + } + Set exportAbiFilter = []; + for (String abi_name : enabledABIs.split(VALUE_SEPARATOR_REGEX)) { + if (!abi_name.trim().isEmpty()){ + exportAbiFilter.add(abi_name); + } + } + return exportAbiFilter; +} + +ext.getExportPath = { + String exportPath = project.hasProperty("export_path") ? project.property("export_path") : "" + if (exportPath == null || exportPath.isEmpty()) { + exportPath = "." + } + return exportPath +} + +ext.getExportFilename = { + String exportFilename = project.hasProperty("export_filename") ? project.property("export_filename") : "" + if (exportFilename == null || exportFilename.isEmpty()) { + exportFilename = "godot_android" + } + return exportFilename +} + +/** + * Parse the project properties for the 'plugins_maven_repos' property and return the list + * of maven repos. + */ +ext.getGodotPluginsMavenRepos = { -> + Set mavenRepos = [] + + // Retrieve the list of maven repos. + if (project.hasProperty("plugins_maven_repos")) { + String mavenReposProperty = project.property("plugins_maven_repos") + if (mavenReposProperty != null && !mavenReposProperty.trim().isEmpty()) { + for (String mavenRepoUrl : mavenReposProperty.split(VALUE_SEPARATOR_REGEX)) { + mavenRepos += mavenRepoUrl.trim() + } + } + } + + return mavenRepos +} + +/** + * Parse the project properties for the 'plugins_remote_binaries' property and return + * it for inclusion in the build dependencies. + */ +ext.getGodotPluginsRemoteBinaries = { -> + Set remoteDeps = [] + + // Retrieve the list of remote plugins binaries. + if (project.hasProperty("plugins_remote_binaries")) { + String remoteDepsList = project.property("plugins_remote_binaries") + if (remoteDepsList != null && !remoteDepsList.trim().isEmpty()) { + for (String dep: remoteDepsList.split(VALUE_SEPARATOR_REGEX)) { + remoteDeps += dep.trim() + } + } + } + return remoteDeps +} + +/** + * Parse the project properties for the 'plugins_local_binaries' property and return + * their binaries for inclusion in the build dependencies. + */ +ext.getGodotPluginsLocalBinaries = { -> + Set binDeps = [] + + // Retrieve the list of local plugins binaries. + if (project.hasProperty("plugins_local_binaries")) { + String pluginsList = project.property("plugins_local_binaries") + if (pluginsList != null && !pluginsList.trim().isEmpty()) { + for (String plugin : pluginsList.split(VALUE_SEPARATOR_REGEX)) { + binDeps += plugin.trim() + } + } + } + + return binDeps +} + +ext.getDebugKeystoreFile = { -> + String keystoreFile = project.hasProperty("debug_keystore_file") ? project.property("debug_keystore_file") : "" + if (keystoreFile == null || keystoreFile.isEmpty()) { + keystoreFile = "." + } + return keystoreFile +} + +ext.hasCustomDebugKeystore = { -> + File keystoreFile = new File(getDebugKeystoreFile()) + return keystoreFile.isFile() +} + +ext.getDebugKeystorePassword = { -> + String keystorePassword = project.hasProperty("debug_keystore_password") ? project.property("debug_keystore_password") : "" + if (keystorePassword == null || keystorePassword.isEmpty()) { + keystorePassword = "android" + } + return keystorePassword +} + +ext.getDebugKeyAlias = { -> + String keyAlias = project.hasProperty("debug_keystore_alias") ? project.property("debug_keystore_alias") : "" + if (keyAlias == null || keyAlias.isEmpty()) { + keyAlias = "androiddebugkey" + } + return keyAlias +} + +ext.getReleaseKeystoreFile = { -> + String keystoreFile = project.hasProperty("release_keystore_file") ? project.property("release_keystore_file") : "" + if (keystoreFile == null || keystoreFile.isEmpty()) { + keystoreFile = "." + } + return keystoreFile +} + +ext.getReleaseKeystorePassword = { -> + String keystorePassword = project.hasProperty("release_keystore_password") ? project.property("release_keystore_password") : "" + return keystorePassword +} + +ext.getReleaseKeyAlias = { -> + String keyAlias = project.hasProperty("release_keystore_alias") ? project.property("release_keystore_alias") : "" + return keyAlias +} + +ext.isAndroidStudio = { -> + def sysProps = System.getProperties() + return sysProps != null && sysProps['idea.platform.prefix'] != null +} + +ext.shouldZipAlign = { -> + String zipAlignFlag = project.hasProperty("perform_zipalign") ? project.property("perform_zipalign") : "" + if (zipAlignFlag == null || zipAlignFlag.isEmpty()) { + if (isAndroidStudio()) { + zipAlignFlag = "true" + } else { + zipAlignFlag = "false" + } + } + return Boolean.parseBoolean(zipAlignFlag) +} + +ext.shouldSign = { -> + String signFlag = project.hasProperty("perform_signing") ? project.property("perform_signing") : "" + if (signFlag == null || signFlag.isEmpty()) { + if (isAndroidStudio()) { + signFlag = "true" + } else { + signFlag = "false" + } + } + return Boolean.parseBoolean(signFlag) +} + +ext.shouldNotStrip = { -> + return isAndroidStudio() || project.hasProperty("doNotStrip") +} diff --git a/android/build/gradle.properties b/android/build/gradle.properties new file mode 100644 index 0000000..19587bd --- /dev/null +++ b/android/build/gradle.properties @@ -0,0 +1,25 @@ +# Godot custom build Gradle settings. +# These properties apply when running custom build from the Godot editor. +# NOTE: This should be kept in sync with 'godot/platform/android/java/gradle.properties' except +# where otherwise specified. + +# For more details on how to configure your build environment visit +# http://www.gradle.org/docs/current/userguide/build_environment.html + +android.enableJetifier=true +android.useAndroidX=true + +# Specifies the JVM arguments used for the daemon process. +# The setting is particularly useful for tweaking memory settings. +org.gradle.jvmargs=-Xmx4536m + +# When configured, Gradle will run in incubating parallel mode. +# This option should only be used with decoupled projects. More details, visit +# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects +# org.gradle.parallel=true + +org.gradle.warning.mode=all + +# Enable resource optimizations for release build. +# NOTE: This is turned off for template release build in order to support the build legacy process. +android.enableResourceOptimizations=true diff --git a/android/build/gradle/wrapper/gradle-wrapper.jar b/android/build/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..e708b1c Binary files /dev/null and b/android/build/gradle/wrapper/gradle-wrapper.jar differ diff --git a/android/build/gradle/wrapper/gradle-wrapper.properties b/android/build/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..ffed3a2 --- /dev/null +++ b/android/build/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-bin.zip +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/android/build/gradlew b/android/build/gradlew new file mode 100755 index 0000000..4f906e0 --- /dev/null +++ b/android/build/gradlew @@ -0,0 +1,185 @@ +#!/usr/bin/env sh + +# +# Copyright 2015 the original author or authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn () { + echo "$*" +} + +die () { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; + NONSTOP* ) + nonstop=true + ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin or MSYS, switch paths to Windows format before running java +if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=`expr $i + 1` + done + case $i in + 0) set -- ;; + 1) set -- "$args0" ;; + 2) set -- "$args0" "$args1" ;; + 3) set -- "$args0" "$args1" "$args2" ;; + 4) set -- "$args0" "$args1" "$args2" "$args3" ;; + 5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + 6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + 7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + 8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + 9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Escape application args +save () { + for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done + echo " " +} +APP_ARGS=`save "$@"` + +# Collect all arguments for the java command, following the shell quoting and substitution rules +eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" + +exec "$JAVACMD" "$@" diff --git a/android/build/gradlew.bat b/android/build/gradlew.bat new file mode 100644 index 0000000..ac1b06f --- /dev/null +++ b/android/build/gradlew.bat @@ -0,0 +1,89 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto execute + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/android/build/libs/debug/godot-lib.debug.aar b/android/build/libs/debug/godot-lib.debug.aar new file mode 100644 index 0000000..d2d255d Binary files /dev/null and b/android/build/libs/debug/godot-lib.debug.aar differ diff --git a/android/build/libs/release/godot-lib.release.aar b/android/build/libs/release/godot-lib.release.aar new file mode 100644 index 0000000..a0b91a0 Binary files /dev/null and b/android/build/libs/release/godot-lib.release.aar differ diff --git a/android/build/res/drawable-nodpi/splash.png b/android/build/res/drawable-nodpi/splash.png new file mode 100644 index 0000000..7bddd43 Binary files /dev/null and b/android/build/res/drawable-nodpi/splash.png differ diff --git a/android/build/res/drawable-nodpi/splash_bg_color.png b/android/build/res/drawable-nodpi/splash_bg_color.png new file mode 100644 index 0000000..004b6fd Binary files /dev/null and b/android/build/res/drawable-nodpi/splash_bg_color.png differ diff --git a/android/build/res/drawable/splash_drawable.xml b/android/build/res/drawable/splash_drawable.xml new file mode 100644 index 0000000..30627b9 --- /dev/null +++ b/android/build/res/drawable/splash_drawable.xml @@ -0,0 +1,12 @@ + + + + + + + + + diff --git a/android/build/res/values-ar/godot_project_name_string.xml b/android/build/res/values-ar/godot_project_name_string.xml new file mode 100644 index 0000000..23aa5cf --- /dev/null +++ b/android/build/res/values-ar/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-ar + diff --git a/android/build/res/values-bg/godot_project_name_string.xml b/android/build/res/values-bg/godot_project_name_string.xml new file mode 100644 index 0000000..dbb7e04 --- /dev/null +++ b/android/build/res/values-bg/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-bg + diff --git a/android/build/res/values-ca/godot_project_name_string.xml b/android/build/res/values-ca/godot_project_name_string.xml new file mode 100644 index 0000000..709d096 --- /dev/null +++ b/android/build/res/values-ca/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-ca + diff --git a/android/build/res/values-cs/godot_project_name_string.xml b/android/build/res/values-cs/godot_project_name_string.xml new file mode 100644 index 0000000..ab248a8 --- /dev/null +++ b/android/build/res/values-cs/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-cs + diff --git a/android/build/res/values-da/godot_project_name_string.xml b/android/build/res/values-da/godot_project_name_string.xml new file mode 100644 index 0000000..906bf44 --- /dev/null +++ b/android/build/res/values-da/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-da + diff --git a/android/build/res/values-de/godot_project_name_string.xml b/android/build/res/values-de/godot_project_name_string.xml new file mode 100644 index 0000000..0cacb01 --- /dev/null +++ b/android/build/res/values-de/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-de + diff --git a/android/build/res/values-el/godot_project_name_string.xml b/android/build/res/values-el/godot_project_name_string.xml new file mode 100644 index 0000000..047de61 --- /dev/null +++ b/android/build/res/values-el/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-el + diff --git a/android/build/res/values-en/godot_project_name_string.xml b/android/build/res/values-en/godot_project_name_string.xml new file mode 100644 index 0000000..bb3a5db --- /dev/null +++ b/android/build/res/values-en/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-en + diff --git a/android/build/res/values-es-rES/godot_project_name_string.xml b/android/build/res/values-es-rES/godot_project_name_string.xml new file mode 100644 index 0000000..d4537f3 --- /dev/null +++ b/android/build/res/values-es-rES/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-es_ES + diff --git a/android/build/res/values-es/godot_project_name_string.xml b/android/build/res/values-es/godot_project_name_string.xml new file mode 100644 index 0000000..d63a160 --- /dev/null +++ b/android/build/res/values-es/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-es + diff --git a/android/build/res/values-fa/godot_project_name_string.xml b/android/build/res/values-fa/godot_project_name_string.xml new file mode 100644 index 0000000..c303f13 --- /dev/null +++ b/android/build/res/values-fa/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-fa + diff --git a/android/build/res/values-fi/godot_project_name_string.xml b/android/build/res/values-fi/godot_project_name_string.xml new file mode 100644 index 0000000..bd60055 --- /dev/null +++ b/android/build/res/values-fi/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-fi + diff --git a/android/build/res/values-fr/godot_project_name_string.xml b/android/build/res/values-fr/godot_project_name_string.xml new file mode 100644 index 0000000..2e94b65 --- /dev/null +++ b/android/build/res/values-fr/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-fr + diff --git a/android/build/res/values-hi/godot_project_name_string.xml b/android/build/res/values-hi/godot_project_name_string.xml new file mode 100644 index 0000000..0bf75dc --- /dev/null +++ b/android/build/res/values-hi/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-hi + diff --git a/android/build/res/values-hr/godot_project_name_string.xml b/android/build/res/values-hr/godot_project_name_string.xml new file mode 100644 index 0000000..d3f7591 --- /dev/null +++ b/android/build/res/values-hr/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-hr + diff --git a/android/build/res/values-hu/godot_project_name_string.xml b/android/build/res/values-hu/godot_project_name_string.xml new file mode 100644 index 0000000..012b613 --- /dev/null +++ b/android/build/res/values-hu/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-hu + diff --git a/android/build/res/values-in/godot_project_name_string.xml b/android/build/res/values-in/godot_project_name_string.xml new file mode 100644 index 0000000..eedecff --- /dev/null +++ b/android/build/res/values-in/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-in + diff --git a/android/build/res/values-it/godot_project_name_string.xml b/android/build/res/values-it/godot_project_name_string.xml new file mode 100644 index 0000000..7e73404 --- /dev/null +++ b/android/build/res/values-it/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-it + diff --git a/android/build/res/values-iw/godot_project_name_string.xml b/android/build/res/values-iw/godot_project_name_string.xml new file mode 100644 index 0000000..03893f0 --- /dev/null +++ b/android/build/res/values-iw/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-iw + diff --git a/android/build/res/values-ja/godot_project_name_string.xml b/android/build/res/values-ja/godot_project_name_string.xml new file mode 100644 index 0000000..f9dd4fa --- /dev/null +++ b/android/build/res/values-ja/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-ja + diff --git a/android/build/res/values-ko/godot_project_name_string.xml b/android/build/res/values-ko/godot_project_name_string.xml new file mode 100644 index 0000000..26f5dac --- /dev/null +++ b/android/build/res/values-ko/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-ko + diff --git a/android/build/res/values-lt/godot_project_name_string.xml b/android/build/res/values-lt/godot_project_name_string.xml new file mode 100644 index 0000000..1c2e976 --- /dev/null +++ b/android/build/res/values-lt/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-lt + diff --git a/android/build/res/values-lv/godot_project_name_string.xml b/android/build/res/values-lv/godot_project_name_string.xml new file mode 100644 index 0000000..b5e638e --- /dev/null +++ b/android/build/res/values-lv/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-lv + diff --git a/android/build/res/values-nb/godot_project_name_string.xml b/android/build/res/values-nb/godot_project_name_string.xml new file mode 100644 index 0000000..e6d89d6 --- /dev/null +++ b/android/build/res/values-nb/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-nb + diff --git a/android/build/res/values-nl/godot_project_name_string.xml b/android/build/res/values-nl/godot_project_name_string.xml new file mode 100644 index 0000000..93cb3a3 --- /dev/null +++ b/android/build/res/values-nl/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-nl + diff --git a/android/build/res/values-pl/godot_project_name_string.xml b/android/build/res/values-pl/godot_project_name_string.xml new file mode 100644 index 0000000..e5d6ac7 --- /dev/null +++ b/android/build/res/values-pl/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-pl + diff --git a/android/build/res/values-pt/godot_project_name_string.xml b/android/build/res/values-pt/godot_project_name_string.xml new file mode 100644 index 0000000..a462465 --- /dev/null +++ b/android/build/res/values-pt/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-pt + diff --git a/android/build/res/values-ro/godot_project_name_string.xml b/android/build/res/values-ro/godot_project_name_string.xml new file mode 100644 index 0000000..19e0266 --- /dev/null +++ b/android/build/res/values-ro/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-ro + diff --git a/android/build/res/values-ru/godot_project_name_string.xml b/android/build/res/values-ru/godot_project_name_string.xml new file mode 100644 index 0000000..2848452 --- /dev/null +++ b/android/build/res/values-ru/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-ru + diff --git a/android/build/res/values-sk/godot_project_name_string.xml b/android/build/res/values-sk/godot_project_name_string.xml new file mode 100644 index 0000000..f8ab4a5 --- /dev/null +++ b/android/build/res/values-sk/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-sk + diff --git a/android/build/res/values-sl/godot_project_name_string.xml b/android/build/res/values-sl/godot_project_name_string.xml new file mode 100644 index 0000000..98bd53e --- /dev/null +++ b/android/build/res/values-sl/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-sl + diff --git a/android/build/res/values-sr/godot_project_name_string.xml b/android/build/res/values-sr/godot_project_name_string.xml new file mode 100644 index 0000000..3f400f2 --- /dev/null +++ b/android/build/res/values-sr/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-sr + diff --git a/android/build/res/values-sv/godot_project_name_string.xml b/android/build/res/values-sv/godot_project_name_string.xml new file mode 100644 index 0000000..8670b7c --- /dev/null +++ b/android/build/res/values-sv/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-sv + diff --git a/android/build/res/values-th/godot_project_name_string.xml b/android/build/res/values-th/godot_project_name_string.xml new file mode 100644 index 0000000..a1cc1bc --- /dev/null +++ b/android/build/res/values-th/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-th + diff --git a/android/build/res/values-tl/godot_project_name_string.xml b/android/build/res/values-tl/godot_project_name_string.xml new file mode 100644 index 0000000..6d66d11 --- /dev/null +++ b/android/build/res/values-tl/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-tl + diff --git a/android/build/res/values-tr/godot_project_name_string.xml b/android/build/res/values-tr/godot_project_name_string.xml new file mode 100644 index 0000000..ba3bd7d --- /dev/null +++ b/android/build/res/values-tr/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-tr + diff --git a/android/build/res/values-uk/godot_project_name_string.xml b/android/build/res/values-uk/godot_project_name_string.xml new file mode 100644 index 0000000..5f14ab2 --- /dev/null +++ b/android/build/res/values-uk/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-uk + diff --git a/android/build/res/values-vi/godot_project_name_string.xml b/android/build/res/values-vi/godot_project_name_string.xml new file mode 100644 index 0000000..295378e --- /dev/null +++ b/android/build/res/values-vi/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-vi + diff --git a/android/build/res/values-zh-rHK/godot_project_name_string.xml b/android/build/res/values-zh-rHK/godot_project_name_string.xml new file mode 100644 index 0000000..40ab0f2 --- /dev/null +++ b/android/build/res/values-zh-rHK/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-zh_HK + diff --git a/android/build/res/values-zh-rTW/godot_project_name_string.xml b/android/build/res/values-zh-rTW/godot_project_name_string.xml new file mode 100644 index 0000000..095bd56 --- /dev/null +++ b/android/build/res/values-zh-rTW/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-zh_TW + diff --git a/android/build/res/values-zh/godot_project_name_string.xml b/android/build/res/values-zh/godot_project_name_string.xml new file mode 100644 index 0000000..31aa8c2 --- /dev/null +++ b/android/build/res/values-zh/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name-zh + diff --git a/android/build/res/values/godot_project_name_string.xml b/android/build/res/values/godot_project_name_string.xml new file mode 100644 index 0000000..7ec2738 --- /dev/null +++ b/android/build/res/values/godot_project_name_string.xml @@ -0,0 +1,5 @@ + + + + godot-project-name + diff --git a/android/build/res/values/themes.xml b/android/build/res/values/themes.xml new file mode 100644 index 0000000..99f723f --- /dev/null +++ b/android/build/res/values/themes.xml @@ -0,0 +1,10 @@ + + + + + diff --git a/android/build/settings.gradle b/android/build/settings.gradle new file mode 100644 index 0000000..e38d7b2 --- /dev/null +++ b/android/build/settings.gradle @@ -0,0 +1,2 @@ +// This is the root directory of the Godot custom build. +include ':assetPacks:installTime' diff --git a/android/build/src/com/godot/game/GodotApp.java b/android/build/src/com/godot/game/GodotApp.java new file mode 100644 index 0000000..c9684bc --- /dev/null +++ b/android/build/src/com/godot/game/GodotApp.java @@ -0,0 +1,47 @@ +/*************************************************************************/ +/* GodotApp.java */ +/*************************************************************************/ +/* This file is part of: */ +/* GODOT ENGINE */ +/* https://godotengine.org */ +/*************************************************************************/ +/* Copyright (c) 2007-2022 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2022 Godot Engine contributors (cf. AUTHORS.md). */ +/* */ +/* 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. */ +/*************************************************************************/ + +package com.godot.game; + +import org.godotengine.godot.FullScreenGodotApp; + +import android.os.Bundle; + +/** + * Template activity for Godot Android custom builds. + * Feel free to extend and modify this class for your custom logic. + */ +public class GodotApp extends FullScreenGodotApp { + @Override + public void onCreate(Bundle savedInstanceState) { + setTheme(R.style.GodotAppMainTheme); + super.onCreate(savedInstanceState); + } +} diff --git a/assets/images/red.png b/assets/images/red.png new file mode 100644 index 0000000..ad471a0 Binary files /dev/null and b/assets/images/red.png differ diff --git a/assets/images/red.png.import b/assets/images/red.png.import new file mode 100644 index 0000000..5a2c519 --- /dev/null +++ b/assets/images/red.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/red.png-d44243e19e862ff3fcc4b3076df74c71.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/images/red.png" +dest_files=[ "res://.import/red.png-d44243e19e862ff3fcc4b3076df74c71.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/images/text236.png b/assets/images/text236.png new file mode 100644 index 0000000..4782070 Binary files /dev/null and b/assets/images/text236.png differ diff --git a/assets/images/text236.png.import b/assets/images/text236.png.import new file mode 100644 index 0000000..10b4f58 --- /dev/null +++ b/assets/images/text236.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/text236.png-c757a07bfcf94ab3a52770a58a7988a2.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/images/text236.png" +dest_files=[ "res://.import/text236.png-c757a07bfcf94ab3a52770a58a7988a2.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/images/white.png b/assets/images/white.png new file mode 100644 index 0000000..a862f3b Binary files /dev/null and b/assets/images/white.png differ diff --git a/assets/images/white.png.import b/assets/images/white.png.import new file mode 100644 index 0000000..20d42ac --- /dev/null +++ b/assets/images/white.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/white.png-14ff6f3314f5ef7a1250366477ea4777.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/images/white.png" +dest_files=[ "res://.import/white.png-14ff6f3314f5ef7a1250366477ea4777.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/tilemap.tres b/assets/tilemap.tres new file mode 100644 index 0000000..2f345ba --- /dev/null +++ b/assets/tilemap.tres @@ -0,0 +1,29 @@ +[gd_resource type="TileSet" load_steps=3 format=2] + +[ext_resource path="res://assets/images/red.png" type="Texture" id=1] + +[sub_resource type="RectangleShape2D" id=1] +extents = Vector2( 8, 8 ) + +[resource] +0/name = "Ground" +0/texture = ExtResource( 1 ) +0/tex_offset = Vector2( 0, 0 ) +0/modulate = Color( 1, 1, 1, 1 ) +0/region = Rect2( 0, 0, 16, 16 ) +0/tile_mode = 0 +0/occluder_offset = Vector2( 8, 8 ) +0/navigation_offset = Vector2( 8, 8 ) +0/shape_offset = Vector2( 8, 8 ) +0/shape_transform = Transform2D( 1, 0, 0, 1, 8, 8 ) +0/shape = SubResource( 1 ) +0/shape_one_way = false +0/shape_one_way_margin = 1.0 +0/shapes = [ { +"autotile_coord": Vector2( 0, 0 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 1 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 8, 8 ) +} ] +0/z_index = 0 diff --git a/assets/tilemap.tscn b/assets/tilemap.tscn new file mode 100644 index 0000000..77d8f80 --- /dev/null +++ b/assets/tilemap.tscn @@ -0,0 +1,16 @@ +[gd_scene load_steps=3 format=2] + +[ext_resource path="res://assets/images/red.png" type="Texture" id=1] + +[sub_resource type="RectangleShape2D" id=1] +extents = Vector2( 8, 8 ) + +[node name="Node2D" type="Node2D"] + +[node name="Ground" type="Sprite" parent="."] +texture = ExtResource( 1 ) + +[node name="StaticBody2D" type="StaticBody2D" parent="Ground"] + +[node name="CollisionShape2D" type="CollisionShape2D" parent="Ground/StaticBody2D"] +shape = SubResource( 1 ) diff --git a/game/Characters/Player/Player.gd b/game/Characters/Player/Player.gd new file mode 100644 index 0000000..f764015 --- /dev/null +++ b/game/Characters/Player/Player.gd @@ -0,0 +1,34 @@ +extends KinematicBody2D + +const UP = Vector2(0,-1) +export var GRAVITY = 20 +export var MAXFALLSPEED = 200 +export var MAXSPEED = 80 +export var JUMPFORCE = 300 +export var ACCEL = 10 + +var motion = Vector2() + +# Called when the node enters the scene tree for the first time. +func _ready(): + pass # Replace with function body. + + +func _physics_process(_delta): + + motion.y += GRAVITY + + if motion.y > MAXFALLSPEED: + motion.y = MAXFALLSPEED + + if is_on_floor(): + if Input.is_action_just_released("jump"): + motion.y = -JUMPFORCE + pass + + motion.x = clamp(motion.x,-MAXSPEED,MAXSPEED) + + motion.x += ACCEL + motion = move_and_slide(motion,UP) + + pass diff --git a/game/Characters/Player/Player.tscn b/game/Characters/Player/Player.tscn new file mode 100644 index 0000000..a7ee0e4 --- /dev/null +++ b/game/Characters/Player/Player.tscn @@ -0,0 +1,38 @@ +[gd_scene load_steps=4 format=2] + +[ext_resource path="res://assets/images/white.png" type="Texture" id=2] + +[sub_resource type="GDScript" id=2] +script/source = "extends KinematicBody2D + + +# Declare member variables here. Examples: +# var a = 2 +# var b = \"text\" + + +# Called when the node enters the scene tree for the first time. +func _ready(): + pass # Replace with function body. + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +#func _process(delta): +# pass +" + +[sub_resource type="RectangleShape2D" id=1] +extents = Vector2( 160, 160 ) + +[node name="Player" type="KinematicBody2D"] +script = SubResource( 2 ) + +[node name="White" type="Sprite" parent="."] +position = Vector2( -4.76837e-07, 0 ) +scale = Vector2( 20, 20 ) +texture = ExtResource( 2 ) + +[node name="CollisionShape2D" type="CollisionShape2D" parent="."] +shape = SubResource( 1 ) + +[node name="Camera2D" type="Camera2D" parent="."] diff --git a/game/FPS.gd b/game/FPS.gd new file mode 100644 index 0000000..8b4c50f --- /dev/null +++ b/game/FPS.gd @@ -0,0 +1,16 @@ +extends Label + + +# Declare member variables here. Examples: +# var a = 2 +# var b = "text" + + +# Called when the node enters the scene tree for the first time. +func _ready(): + pass # Replace with function body. + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +func _process(_delta: float) -> void: + set_text("FPS " + String(Engine.get_frames_per_second())) diff --git a/game/Game.gd b/game/Game.gd new file mode 100644 index 0000000..d144d48 --- /dev/null +++ b/game/Game.gd @@ -0,0 +1,16 @@ +extends Node2D + + +# Declare member variables here. Examples: +# var a = 2 +# var b = "text" + + +# Called when the node enters the scene tree for the first time. +func _ready(): + pass # Replace with function body. + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +#func _process(delta): +# pass diff --git a/game/Game.tscn b/game/Game.tscn new file mode 100644 index 0000000..426b2ae --- /dev/null +++ b/game/Game.tscn @@ -0,0 +1,39 @@ +[gd_scene load_steps=7 format=2] + +[ext_resource path="res://game/Game.gd" type="Script" id=1] +[ext_resource path="res://game/Interface.tscn" type="PackedScene" id=2] +[ext_resource path="res://assets/tilemap.tres" type="TileSet" id=3] +[ext_resource path="res://assets/images/white.png" type="Texture" id=4] +[ext_resource path="res://game/Characters/Player/Player.gd" type="Script" id=5] + +[sub_resource type="RectangleShape2D" id=1] +extents = Vector2( 8, 8 ) + +[node name="World" type="Node2D"] +script = ExtResource( 1 ) + +[node name="Interface" parent="." instance=ExtResource( 2 )] + +[node name="TileMap" type="TileMap" parent="."] +tile_set = ExtResource( 3 ) +cell_size = Vector2( 16, 16 ) +format = 1 +tile_data = PoolIntArray( 1966133, 0, 0, 1966134, 0, 0, 1966135, 0, 0, 1966136, 0, 0, 1966137, 0, 0, 1966138, 0, 0, 1966139, 0, 0, 1966140, 0, 0, 1966141, 0, 0, 1966142, 0, 0, 1966143, 0, 0, 1966144, 0, 0, 1966145, 0, 0, 1966146, 0, 0, 1966147, 0, 0, 1966148, 0, 0, 1966149, 0, 0, 1966150, 0, 0, 1966151, 0, 0, 1966152, 0, 0, 1966153, 0, 0, 1966154, 0, 0, 1966155, 0, 0, 1966156, 0, 0, 1966157, 0, 0, 1966158, 0, 0, 1966159, 0, 0, 2424870, 0, 0, 2424871, 0, 0, 2424872, 0, 0, 2424873, 0, 0, 2424874, 0, 0, 2424875, 0, 0, 2424876, 0, 0, 2424877, 0, 0, 2424878, 0, 0, 2424879, 0, 0, 2424880, 0, 0, 2424881, 0, 0, 2424882, 0, 0, 2424883, 0, 0, 2424884, 0, 0, 2424885, 0, 0, 2424886, 0, 0, 2424887, 0, 0, 2424888, 0, 0, 2424889, 0, 0, 2424890, 0, 0, 2424891, 0, 0, 2424892, 0, 0, 2424893, 0, 0, 2424894, 0, 0, 2424895, 0, 0, 2424896, 0, 0, 2424897, 0, 0, 2424898, 0, 0, 2818048, 0, 0, 2818049, 0, 0, 2818050, 0, 0, 2818051, 0, 0, 2818052, 0, 0, 2818053, 0, 0, 2818054, 0, 0, 2818055, 0, 0, 2818056, 0, 0, 2818057, 0, 0, 2818058, 0, 0, 2818059, 0, 0, 2818060, 0, 0, 2818061, 0, 0, 2818062, 0, 0, 2818063, 0, 0, 2818064, 0, 0, 2818065, 0, 0, 2818066, 0, 0, 2818067, 0, 0, 2818068, 0, 0, 2818069, 0, 0, 2818070, 0, 0, 2818071, 0, 0, 2818072, 0, 0, 2818073, 0, 0, 2818074, 0, 0, 2818075, 0, 0, 2818076, 0, 0, 2818077, 0, 0, 2818078, 0, 0, 2818079, 0, 0, 2818080, 0, 0, 2818081, 0, 0, 2818082, 0, 0, 2818083, 0, 0, 2818084, 0, 0, 2818085, 0, 0, 2818086, 0, 0, 2818087, 0, 0, 2818088, 0, 0, 2818089, 0, 0, 2818090, 0, 0, 2818091, 0, 0, 2818092, 0, 0, 2818093, 0, 0, 2818094, 0, 0, 2818095, 0, 0, 2818096, 0, 0, 2818097, 0, 0, 2818098, 0, 0, 2818099, 0, 0, 2818100, 0, 0, 2818101, 0, 0, 2818102, 0, 0, 2818103, 0, 0, 2818104, 0, 0, 2818105, 0, 0, 2818106, 0, 0, 2818107, 0, 0, 2818108, 0, 0, 2818109, 0, 0, 2818110, 0, 0, 2818111, 0, 0, 2818112, 0, 0, 2818113, 0, 0, 2818114, 0, 0, 2818115, 0, 0, 2818116, 0, 0, 2818117, 0, 0, 2818118, 0, 0, 2818119, 0, 0, 2818120, 0, 0, 2818121, 0, 0, 2818122, 0, 0, 2818123, 0, 0, 2818124, 0, 0, 2818125, 0, 0, 2818126, 0, 0, 2818127, 0, 0, 2883584, 0, 0, 2883585, 0, 0, 2883586, 0, 0, 2883587, 0, 0, 2883588, 0, 0, 2883589, 0, 0, 2883590, 0, 0, 2883591, 0, 0, 2883592, 0, 0, 2883593, 0, 0, 2883594, 0, 0, 2883595, 0, 0, 2883596, 0, 0, 2883597, 0, 0, 2883598, 0, 0, 2883599, 0, 0, 2883600, 0, 0, 2883601, 0, 0, 2883602, 0, 0, 2883603, 0, 0, 2883604, 0, 0, 2883605, 0, 0, 2883606, 0, 0, 2883607, 0, 0, 2883608, 0, 0, 2883609, 0, 0, 2883610, 0, 0, 2883611, 0, 0, 2883612, 0, 0, 2883613, 0, 0, 2883614, 0, 0, 2883615, 0, 0, 2883616, 0, 0, 2883617, 0, 0, 2883618, 0, 0, 2883619, 0, 0, 2883620, 0, 0, 2883621, 0, 0, 2883622, 0, 0, 2883623, 0, 0, 2883624, 0, 0, 2883625, 0, 0, 2883626, 0, 0, 2883627, 0, 0, 2883628, 0, 0, 2883629, 0, 0, 2883630, 0, 0, 2883631, 0, 0, 2883632, 0, 0, 2883633, 0, 0, 2883634, 0, 0, 2883635, 0, 0, 2883636, 0, 0, 2883637, 0, 0, 2883638, 0, 0, 2883639, 0, 0, 2883640, 0, 0, 2883641, 0, 0, 2883642, 0, 0, 2883643, 0, 0, 2883644, 0, 0, 2883645, 0, 0, 2883646, 0, 0, 2883647, 0, 0, 2883648, 0, 0, 2883649, 0, 0, 2883650, 0, 0, 2883651, 0, 0, 2883652, 0, 0, 2883653, 0, 0, 2883654, 0, 0, 2883655, 0, 0, 2883656, 0, 0, 2883657, 0, 0, 2883658, 0, 0, 2883659, 0, 0, 2883660, 0, 0, 2883661, 0, 0, 2883662, 0, 0, 2883663, 0, 0 ) + +[node name="Player" type="KinematicBody2D" parent="."] +position = Vector2( 50, 600 ) +script = ExtResource( 5 ) +MAXSPEED = 100 +JUMPFORCE = 500 +ACCEL = 200 + +[node name="Sprite" type="Sprite" parent="Player"] +texture = ExtResource( 4 ) + +[node name="CollisionShape2D" type="CollisionShape2D" parent="Player"] +shape = SubResource( 1 ) + +[node name="Camera2D" type="Camera2D" parent="Player"] +current = true +zoom = Vector2( 0.5, 0.5 ) +smoothing_enabled = true diff --git a/game/Interface.tscn b/game/Interface.tscn new file mode 100644 index 0000000..8efd082 --- /dev/null +++ b/game/Interface.tscn @@ -0,0 +1,23 @@ +[gd_scene load_steps=2 format=2] + +[ext_resource path="res://game/FPS.gd" type="Script" id=1] + +[node name="Interface" type="Control"] +margin_right = 40.0 +margin_bottom = 40.0 + +[node name="VBoxContainer" type="VBoxContainer" parent="."] +margin_right = 67.0 +margin_bottom = 40.0 + +[node name="FPS" type="Label" parent="VBoxContainer"] +margin_right = 67.0 +margin_bottom = 14.0 +text = "FPS" +script = ExtResource( 1 ) + +[node name="Money" type="Label" parent="VBoxContainer"] +margin_top = 18.0 +margin_right = 67.0 +margin_bottom = 32.0 +text = "Money: $0" diff --git a/icon.png b/icon.png index c98fbb6..af81127 100644 Binary files a/icon.png and b/icon.png differ diff --git a/menu/Menu.gd b/menu/Menu.gd new file mode 100644 index 0000000..d04aad7 --- /dev/null +++ b/menu/Menu.gd @@ -0,0 +1,31 @@ +extends MarginContainer + + +# Declare member variables here. Examples: +# var a = 2 +# var b = "text" + + +# Called when the node enters the scene tree for the first time. +func _ready(): + pass # Replace with function body. + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +#func _process(delta): +# pass + + +func _on_Play_button_up(): + if get_tree().change_scene("res://game/game.tscn") != OK: + print("There was an error trying to load the scene...") + pass # Replace with function body. + + +func _on_Credits_button_up(): + pass # Replace with function body. + + +func _on_Quit_button_up(): + get_tree().quit() + pass # Replace with function body. diff --git a/menu/Menu.tscn b/menu/Menu.tscn new file mode 100644 index 0000000..b7d3a05 --- /dev/null +++ b/menu/Menu.tscn @@ -0,0 +1,61 @@ +[gd_scene load_steps=3 format=2] + +[ext_resource path="res://menu/Menu.gd" type="Script" id=1] +[ext_resource path="res://assets/images/text236.png" type="Texture" id=2] + +[node name="Menu" type="MarginContainer"] +anchor_right = 1.0 +anchor_bottom = 1.0 +rect_scale = Vector2( 1.00487, 1.03334 ) +rect_pivot_offset = Vector2( -1427, -96 ) +script = ExtResource( 1 ) + +[node name="CenterContainer" type="CenterContainer" parent="."] +margin_right = 1280.0 +margin_bottom = 720.0 + +[node name="VBoxContainer" type="VBoxContainer" parent="CenterContainer"] +margin_left = 448.0 +margin_top = 308.0 +margin_right = 832.0 +margin_bottom = 412.0 + +[node name="Logo" type="Sprite" parent="CenterContainer/VBoxContainer"] +position = Vector2( 505, 64 ) +scale = Vector2( 0.991787, 1.0997 ) +texture = ExtResource( 2 ) + +[node name="Play" type="Button" parent="CenterContainer/VBoxContainer"] +margin_right = 384.0 +margin_bottom = 20.0 +text = "Play" + +[node name="Credits" type="Button" parent="CenterContainer/VBoxContainer"] +margin_top = 24.0 +margin_right = 384.0 +margin_bottom = 44.0 +text = "Credits" + +[node name="Quit" type="Button" parent="CenterContainer/VBoxContainer"] +margin_top = 48.0 +margin_right = 384.0 +margin_bottom = 68.0 +text = "Quit" + +[node name="About" type="Label" parent="CenterContainer/VBoxContainer"] +margin_top = 72.0 +margin_right = 384.0 +margin_bottom = 86.0 +text = "Made for the bits & Bytes Unofficial Game Jam! August 2022" +align = 1 + +[node name="Copyright" type="Label" parent="CenterContainer/VBoxContainer"] +margin_top = 90.0 +margin_right = 384.0 +margin_bottom = 104.0 +text = "Copyright 2022 Andrew Lee. Powered by the Godot Engine" +align = 1 + +[connection signal="button_up" from="CenterContainer/VBoxContainer/Play" to="." method="_on_Play_button_up"] +[connection signal="button_up" from="CenterContainer/VBoxContainer/Credits" to="." method="_on_Credits_button_up"] +[connection signal="button_up" from="CenterContainer/VBoxContainer/Quit" to="." method="_on_Quit_button_up"] diff --git a/project.godot b/project.godot index cb26263..981a2f3 100644 --- a/project.godot +++ b/project.godot @@ -10,16 +10,24 @@ config_version=4 [application] -config/name="Frivolous Run" -run/main_scene="res://Menu.tscn" +config/name="FrivoRun" +run/main_scene="res://menu/Menu.tscn" config/icon="res://icon.png" [display] window/size/width=1280 window/size/height=720 -window/stretch/mode="2d" -window/stretch/aspect="keep" +window/stretch/mode="viewport" +window/stretch/aspect="expand" + +[input] + +jump={ +"deadzone": 0.5, +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":32,"physical_scancode":0,"unicode":0,"echo":false,"script":null) + ] +} [physics] diff --git a/text236.png b/text236.png deleted file mode 100644 index 4782070..0000000 Binary files a/text236.png and /dev/null differ diff --git a/text236.png.import b/text236.png.import deleted file mode 100644 index 44cb95e..0000000 --- a/text236.png.import +++ /dev/null @@ -1,35 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/text236.png-ac7c1c4ba3a80623be9d9bdf46e25e36.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://text236.png" -dest_files=[ "res://.import/text236.png-ac7c1c4ba3a80623be9d9bdf46e25e36.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 -- cgit v1.2.3