Repository navigation
ADFA-6489 | Add the Fun and Games LibGDX template bundle - #132
Open
jimturner-adfa wants to merge 8 commits into
Open
jimturner-adfa wants to merge 8 commits into
jimturner-adfa wants to merge 8 commits into
Conversation
Converts the standalone FunandGames-libGDX repository into a template addon under templates/Fun-and-Games-LibGDX, the same way as Fun and Games JME: three playable libGDX 1.13.1 games (Demo in Java, Tetris and Bubble Wand in Kotlin), with addon.json, the gallery page, README.md, .gitignore and day/night icons. templates.json lists the libGDX files under "libraries" (gdx, its gdx-jnigen-loader dependency, gdx-backend-android as an .aar, and the armeabi-v7a and arm64-v8a natives jars) from Maven Central, pinned by sha256, into app/libs. Each app/build.gradle uses those files instead of Maven. A local .aar does not carry its dependencies, so androidx.core is declared directly, at the 1.9.0 the template already forces. copyAndroidNatives now unpacks libgdx.so into build/gdx-natives/<abi>/ rather than app/libs/<abi>/. A Copy task owns its whole destination, so with the jars in app/libs Gradle 9 counted them as its output and failed compileDebugJavaWithJavac for using them without depending on the task. The template .gitignore drops its app/libs/ line, which would also have kept the jars out of generated projects' git. Verified on a Pixel 6 Pro: the bundle installs, and all three games build and run. Each game also builds on the desktop (AGP 9.3.1, Gradle 9.6.1, configuration cache on) without libGDX ever entering the Gradle cache. Co-Authored-By: Claude Opus 5.5 <[email protected]>
The review of #131 corrected the Fun and Games JME docs; apply the same corrections here. The gallery page's "How the IDE finds it" now describes the Extensions Manager install, and Limitations gives the bundle size. Demo's README drops the missing screenshot and the Android Studio steps, describes running in Code on the Go with libGDX in app/libs, and names the libGDX license (Apache 2.0) instead of MIT. Docs only. Co-Authored-By: Claude Opus 5.5 <[email protected]>
…layName Tetris is a trademark The Tetris Company actively enforces, including against block games whose names end in "-tris". Rename the falling-block template to "Block Game (libGDX)": the template directory (tetris/ -> blockgame/), the game class (TetrisGame -> BlockGame), the piece enum (TetrominoType -> PieceType), and every mention in the gallery summary, README and gallery page. This matches the rename of the JME bundle. Also give the bundle a collection-level "displayName": "Fun and Games (libGDX)" in templates.json, so its Extensions Manager card no longer takes the first template's name. Co-Authored-By: Claude Opus 5.5 <[email protected]>
Replaces the placeholder thumb.png in demo, blockgame and bubblewand (blockgame and bubblewand shared one blue square) with the new artwork: 512x512 RGBA on a transparent background, matching Flutter-Starter-Kit. - demo: the round art came on opaque white corners; masked to a circle with an anti-aliased 2 px inset so no white fringe shows on dark themes. - bubblewand: square art, resized. - blockgame: already a transparent 500 px circle, centred on the 512 canvas rather than upscaled. Co-Authored-By: Claude Opus 5.5 <[email protected]>
Every template shipped the same 48x48 blue square as ic_launcher.png in all four mipmap densities, so a generated app showed a blue box on the home screen, in Recents, and in the install and Play Protect prompts. - ic_launcher.png now uses the template's own art at the right size per density: mdpi 48, hdpi 72, xhdpi 96, xxhdpi 144. - New mipmap-xxxhdpi (192) so high-density screens do not upscale 144. - New app/src/main/ic_launcher-playstore.png (512x512) for the Play Store listing, following Android Studio's Image Asset convention. Sourced from the 512 px thumb.png, which is already masked to a transparent background. Co-Authored-By: Claude Opus 5.5 <[email protected]>
Contributor
Author
|
Added ADFA-6567's icons to the libGDX templates, the same files as #146 uses for jME: new |
Use the same displayName as the JME bundle (#141), dropping the "(libGDX)" suffix. Co-Authored-By: Claude Opus 5.5 <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Adds Fun and Games LibGDX, a template bundle with three playable libGDX 1.13.1 games, converted from the standalone FunandGames-libGDX repository. It is the libGDX counterpart of Fun and Games JME from #131, and uses that PR's
librariesfield the same way: libGDX ships in each game'sapp/libs/instead of being fetched from Maven Central.Details
addon.json(org.appdevforall.funandgameslibgdx), the gallery page,README.md,.gitignore, and day and night icons. The game source is unchanged from the source repository.templates.jsonlists five files per game from Maven Central, withsha256, toapp/libs:gdx-1.13.1.jargdx-jnigen-loader-2.5.2.jar, whichgdxdepends ongdx-backend-android-1.13.1.aargdx-platformnatives jars forarmeabi-v7aandarm64-v8aapp/build.gradle.pebuses those files instead of Maven. Where libGDX differs from jME:.aardoes not carry its dependencies, soandroidx.core:coreis declared directly, at the 1.9.0 the template already forces for Code on the Go's offline repository.copyAndroidNativesnow unpackslibgdx.sointobuild/gdx-natives/<abi>/instead ofapp/libs/<abi>/. A Copy task owns its whole destination, so with the jars inapp/libsGradle 9 counted them as its output and failedcompileDebugJavaWithJavacfor an undeclared implicit dependency. This was found on the device and fixed..gitignore: each template's.gitignoredrops itsapp/libs/line, which would have kept the jars out of generated projects' git..cgtis about 7.8 MB.Testing
addons checkpasses and the bundle builds. The workflow's template checks pass locally: XML, JSON5, Pebble brace balance, and no unwanted files.assembleDebug, using AGP 9.3.1, Gradle 9.6.1 and the configuration cache. Each APK containslibgdx.sofor both ARM ABIs, and libGDX never entered the Gradle cache, so it came only fromapp/libs.Ticket
Follow-up to ADFA-6489 (#131).
Update: Block Game rename and displayName (ab41fee)
tetris/→blockgame/directory,TetrisGame→BlockGame,TetrominoType→PieceType, and the README,addon.jsonand gallery page. This matches the JME bundle's rename in ADFA-6568 | Rename the Tetris template to Block Game #140.templates.jsonhas a top-level"displayName": "Fun and Games", the same as the JME bundle in ADFA-6571 | Give Fun-and-Games-JME a collection displayName #141 (changed from "Fun and Games (libGDX)" in 502306f), which titles the bundle's Extensions Manager card once the IDE reads it (ADFA-6570). Older IDEs ignore the key.addons checkpasses, and the built.cgtlistsdemo,blockgameandbubblewandwith the newdisplayName. Notetristext is left. This update was not re-tested on a device.🤖 Generated with Claude Code