diff --git a/core/src/io/github/lonamiwebs/klooni/Klooni.java b/core/src/io/github/lonamiwebs/klooni/Klooni.java index 715c0b5..c1ad166 100644 --- a/core/src/io/github/lonamiwebs/klooni/Klooni.java +++ b/core/src/io/github/lonamiwebs/klooni/Klooni.java @@ -37,7 +37,7 @@ public class Klooni extends Game { public Skin skin; - public ShareChallenge shareChallenge; + public final ShareChallenge shareChallenge; public static boolean onDesktop; diff --git a/core/src/io/github/lonamiwebs/klooni/SkinLoader.java b/core/src/io/github/lonamiwebs/klooni/SkinLoader.java index e8fcd7f..4e5a08f 100644 --- a/core/src/io/github/lonamiwebs/klooni/SkinLoader.java +++ b/core/src/io/github/lonamiwebs/klooni/SkinLoader.java @@ -24,14 +24,14 @@ import com.badlogic.gdx.graphics.g2d.NinePatch; import com.badlogic.gdx.scenes.scene2d.ui.Skin; public class SkinLoader { - private static float[] multipliers = {0.75f, 1.0f, 1.25f, 1.5f, 2.0f, 4.0f}; - private static String[] ids = { + private final static float[] multipliers = {0.75f, 1.0f, 1.25f, 1.5f, 2.0f, 4.0f}; + private final static String[] ids = { "play", "play_saved", "star", "stopwatch", "palette", "home", "replay", "share", "sound_on", "sound_off", "snap_on", "snap_off", "issues", "credits", "web", "back", "ok", "cancel", "power_off", "effects" }; - private static float bestMultiplier; + private final static float bestMultiplier; static { // Use the height to determine the best match diff --git a/core/src/io/github/lonamiwebs/klooni/Theme.java b/core/src/io/github/lonamiwebs/klooni/Theme.java index 3ae8663..e394067 100644 --- a/core/src/io/github/lonamiwebs/klooni/Theme.java +++ b/core/src/io/github/lonamiwebs/klooni/Theme.java @@ -22,8 +22,6 @@ import com.badlogic.gdx.files.FileHandle; import com.badlogic.gdx.graphics.Color; import com.badlogic.gdx.graphics.Pixmap; import com.badlogic.gdx.graphics.Texture; -import com.badlogic.gdx.graphics.g2d.NinePatch; -import com.badlogic.gdx.math.MathUtils; import com.badlogic.gdx.scenes.scene2d.ui.ImageButton; import com.badlogic.gdx.scenes.scene2d.ui.Skin; import com.badlogic.gdx.utils.Array; @@ -58,7 +56,7 @@ public class Theme { public Texture cellTexture; // Save the button styles so the changes here get reflected - private ImageButton.ImageButtonStyle[] buttonStyles; + private final ImageButton.ImageButtonStyle[] buttonStyles; //endregion @@ -199,13 +197,6 @@ public class Theme { return colorIndex < 0 ? emptyCell : cells[colorIndex]; } - public Color getRandomCellColor() { - if (cells.length == 0) - return emptyCell; - else - return cells[MathUtils.random(cells.length - 1)]; - } - public void glClearBackground() { Gdx.gl.glClearColor(background.r, background.g, background.b, background.a); } @@ -234,7 +225,7 @@ public class Theme { //region Disposal void dispose() { - + cellTexture.dispose(); } //endregion diff --git a/core/src/io/github/lonamiwebs/klooni/actors/EffectCard.java b/core/src/io/github/lonamiwebs/klooni/actors/EffectCard.java index 0046d8d..2ae2136 100644 --- a/core/src/io/github/lonamiwebs/klooni/actors/EffectCard.java +++ b/core/src/io/github/lonamiwebs/klooni/actors/EffectCard.java @@ -33,7 +33,7 @@ public class EffectCard extends ShopCard { //region Members - public final Effect effect; + private final Effect effect; private final Board board; // We want to create an effect from the beginning @@ -139,7 +139,7 @@ public class EffectCard extends ShopCard { @Override public boolean isUsed() { - return game.effect.equals(effect.name); + return game.effect.name.equals(effect.name); } @Override diff --git a/core/src/io/github/lonamiwebs/klooni/actors/MoneyBuyBand.java b/core/src/io/github/lonamiwebs/klooni/actors/MoneyBuyBand.java index 035c3b2..9da434f 100644 --- a/core/src/io/github/lonamiwebs/klooni/actors/MoneyBuyBand.java +++ b/core/src/io/github/lonamiwebs/klooni/actors/MoneyBuyBand.java @@ -46,7 +46,7 @@ public class MoneyBuyBand extends Table { private ShopCard toBuy; // Used to interpolate between strings - private StringBuilder shownText; + private final StringBuilder shownText; // When the next text update will take place private long nextTextUpdate; diff --git a/core/src/io/github/lonamiwebs/klooni/actors/ShopCard.java b/core/src/io/github/lonamiwebs/klooni/actors/ShopCard.java index e875a5b..6a7cb20 100644 --- a/core/src/io/github/lonamiwebs/klooni/actors/ShopCard.java +++ b/core/src/io/github/lonamiwebs/klooni/actors/ShopCard.java @@ -31,7 +31,7 @@ public abstract class ShopCard extends Actor { final Klooni game; - final Label nameLabel; + private final Label nameLabel; final Label priceLabel; public final Rectangle nameBounds; @@ -39,8 +39,8 @@ public abstract class ShopCard extends Actor { public float cellSize; - public ShopCard(final Klooni game, final GameLayout layout, - final String itemName, final Color backgroundColor) { + ShopCard(final Klooni game, final GameLayout layout, + final String itemName, final Color backgroundColor) { this.game = game; Label.LabelStyle labelStyle = new Label.LabelStyle(); labelStyle.font = game.skin.getFont("font_small"); diff --git a/core/src/io/github/lonamiwebs/klooni/actors/SoftButton.java b/core/src/io/github/lonamiwebs/klooni/actors/SoftButton.java index cf59438..5cf8b14 100644 --- a/core/src/io/github/lonamiwebs/klooni/actors/SoftButton.java +++ b/core/src/io/github/lonamiwebs/klooni/actors/SoftButton.java @@ -17,7 +17,6 @@ */ package io.github.lonamiwebs.klooni.actors; -import com.badlogic.gdx.graphics.Color; import com.badlogic.gdx.graphics.g2d.Batch; import com.badlogic.gdx.scenes.scene2d.ui.ImageButton; import com.badlogic.gdx.scenes.scene2d.utils.Drawable; @@ -30,7 +29,7 @@ public class SoftButton extends ImageButton { //region Members - private int styleIndex; + private final int styleIndex; public Drawable image; //endregion diff --git a/core/src/io/github/lonamiwebs/klooni/actors/ThemeCard.java b/core/src/io/github/lonamiwebs/klooni/actors/ThemeCard.java index 1acfcde..d7f4963 100644 --- a/core/src/io/github/lonamiwebs/klooni/actors/ThemeCard.java +++ b/core/src/io/github/lonamiwebs/klooni/actors/ThemeCard.java @@ -30,7 +30,7 @@ public class ThemeCard extends ShopCard { //region Members - public final Theme theme; + private final Theme theme; private final Texture background; private final static int colorsUsed[][] = { diff --git a/core/src/io/github/lonamiwebs/klooni/effects/WaterdropEffect.java b/core/src/io/github/lonamiwebs/klooni/effects/WaterdropEffect.java index 62548aa..04b29fa 100644 --- a/core/src/io/github/lonamiwebs/klooni/effects/WaterdropEffect.java +++ b/core/src/io/github/lonamiwebs/klooni/effects/WaterdropEffect.java @@ -25,7 +25,7 @@ public class WaterdropEffect implements IEffect { private static final float FALL_VARIATION = 50.0f; private static final float COLOR_SPEED = 7.5f; - private static Texture dropTexture; + private final static Texture dropTexture; static { dropTexture = SkinLoader.loadPng("cells/drop.png"); diff --git a/core/src/io/github/lonamiwebs/klooni/game/BaseScorer.java b/core/src/io/github/lonamiwebs/klooni/game/BaseScorer.java index f2e4cba..d6bbd80 100644 --- a/core/src/io/github/lonamiwebs/klooni/game/BaseScorer.java +++ b/core/src/io/github/lonamiwebs/klooni/game/BaseScorer.java @@ -17,7 +17,6 @@ */ package io.github.lonamiwebs.klooni.game; -import com.badlogic.gdx.Gdx; import com.badlogic.gdx.graphics.Color; import com.badlogic.gdx.graphics.Texture; import com.badlogic.gdx.graphics.g2d.SpriteBatch; @@ -88,9 +87,8 @@ public abstract class BaseScorer implements BinSerializable { //region Public methods // Adds the score a given piece would give - public int addPieceScore(int areaPut) { + public void addPieceScore(final int areaPut) { currentScore += areaPut; - return areaPut; } // Adds the score given by the board, this is, the count of cleared strips diff --git a/core/src/io/github/lonamiwebs/klooni/game/Board.java b/core/src/io/github/lonamiwebs/klooni/game/Board.java index 86b94f6..545092f 100644 --- a/core/src/io/github/lonamiwebs/klooni/game/Board.java +++ b/core/src/io/github/lonamiwebs/klooni/game/Board.java @@ -235,21 +235,17 @@ public class Board implements BinSerializable { return clearCount; } - public int clearAll(final int clearFromX, final int clearFromY, final Effect effect) { - int clearCount = 0; + public void clearAll(final int clearFromX, final int clearFromY, final Effect effect) { final Vector2 culprit = cells[clearFromY][clearFromX].pos; for (int i = 0; i < cellCount; ++i) { for (int j = 0; j < cellCount; ++j) { if (!cells[i][j].isEmpty()) { - clearCount++; effects.add(effect.create(cells[i][j], culprit)); cells[i][j].set(-1); } } } - - return clearCount; } public boolean effectsDone() { return effects.size == 0; } diff --git a/core/src/io/github/lonamiwebs/klooni/game/BonusParticle.java b/core/src/io/github/lonamiwebs/klooni/game/BonusParticle.java index e608c3d..97d1be8 100644 --- a/core/src/io/github/lonamiwebs/klooni/game/BonusParticle.java +++ b/core/src/io/github/lonamiwebs/klooni/game/BonusParticle.java @@ -27,7 +27,7 @@ import io.github.lonamiwebs.klooni.Klooni; class BonusParticle { - private Label label; + private final Label label; private float lifetime; private final static float SPEED = 1f; diff --git a/core/src/io/github/lonamiwebs/klooni/game/GameLayout.java b/core/src/io/github/lonamiwebs/klooni/game/GameLayout.java index 2a912fb..74153e1 100644 --- a/core/src/io/github/lonamiwebs/klooni/game/GameLayout.java +++ b/core/src/io/github/lonamiwebs/klooni/game/GameLayout.java @@ -131,6 +131,7 @@ public class GameLayout { band.infoBounds.set(area.x, area.y + area.height * 0.10f, area.width, area.height * 0.35f); } + @SuppressWarnings("SuspiciousNameCombination") public void update(ShopCard card) { card.setSize(availableWidth - marginWidth, shopCardHeight); card.cellSize = shopCardHeight * 0.2f; diff --git a/core/src/io/github/lonamiwebs/klooni/game/Piece.java b/core/src/io/github/lonamiwebs/klooni/game/Piece.java index 2044468..87b600d 100644 --- a/core/src/io/github/lonamiwebs/klooni/game/Piece.java +++ b/core/src/io/github/lonamiwebs/klooni/game/Piece.java @@ -41,7 +41,7 @@ public class Piece { private final int rotation; public final int cellCols, cellRows; - private boolean shape[][]; + private final boolean shape[][]; // Default arbitrary value float cellSize = 10f; diff --git a/core/src/io/github/lonamiwebs/klooni/game/PieceHolder.java b/core/src/io/github/lonamiwebs/klooni/game/PieceHolder.java index ff62e63..8f7bb22 100644 --- a/core/src/io/github/lonamiwebs/klooni/game/PieceHolder.java +++ b/core/src/io/github/lonamiwebs/klooni/game/PieceHolder.java @@ -66,7 +66,7 @@ public class PieceHolder implements BinSerializable { //region Static members - public static final float DRAG_SPEED = 0.5f; // Interpolation value ((pos -> new) / frame) + private static final float DRAG_SPEED = 0.5f; // Interpolation value ((pos -> new) / frame) //endregion @@ -188,11 +188,11 @@ public class PieceHolder implements BinSerializable { } // If no piece is currently being held, the area will be 0 - public int calculateHeldPieceArea() { + private int calculateHeldPieceArea() { return heldPiece > -1 ? pieces[heldPiece].calculateArea() : 0; } - public Vector2 calculateHeldPieceCenter() { + private Vector2 calculateHeldPieceCenter() { return heldPiece > -1 ? pieces[heldPiece].calculateGravityCenter() : null; } diff --git a/core/src/io/github/lonamiwebs/klooni/screens/CustomizeScreen.java b/core/src/io/github/lonamiwebs/klooni/screens/CustomizeScreen.java index a7da1a9..09463b9 100644 --- a/core/src/io/github/lonamiwebs/klooni/screens/CustomizeScreen.java +++ b/core/src/io/github/lonamiwebs/klooni/screens/CustomizeScreen.java @@ -49,8 +49,8 @@ class CustomizeScreen implements Screen { //region Members - private Klooni game; - private Stage stage; + private final Klooni game; + private final Stage stage; private final Screen lastScreen; @@ -58,7 +58,7 @@ class CustomizeScreen implements Screen { private final SoftButton toggleShopButton; private final VerticalGroup shopGroup; // Showing available themes or effects private final ScrollPane shopScroll; - final MoneyBuyBand buyBand; + private final MoneyBuyBand buyBand; private boolean showingEffectsShop; private int showcaseIndex; diff --git a/core/src/io/github/lonamiwebs/klooni/screens/GameScreen.java b/core/src/io/github/lonamiwebs/klooni/screens/GameScreen.java index f245c9a..c7c006f 100644 --- a/core/src/io/github/lonamiwebs/klooni/screens/GameScreen.java +++ b/core/src/io/github/lonamiwebs/klooni/screens/GameScreen.java @@ -25,7 +25,6 @@ import com.badlogic.gdx.audio.Sound; import com.badlogic.gdx.files.FileHandle; import com.badlogic.gdx.graphics.GL20; import com.badlogic.gdx.graphics.g2d.SpriteBatch; -import com.badlogic.gdx.math.MathUtils; import java.io.DataInputStream; import java.io.DataOutputStream; diff --git a/core/src/io/github/lonamiwebs/klooni/screens/ShareScoreScreen.java b/core/src/io/github/lonamiwebs/klooni/screens/ShareScoreScreen.java index 3e8f6c0..0fbb2ea 100755 --- a/core/src/io/github/lonamiwebs/klooni/screens/ShareScoreScreen.java +++ b/core/src/io/github/lonamiwebs/klooni/screens/ShareScoreScreen.java @@ -19,37 +19,20 @@ package io.github.lonamiwebs.klooni.screens; import com.badlogic.gdx.Gdx; -import com.badlogic.gdx.Input; import com.badlogic.gdx.Screen; import com.badlogic.gdx.graphics.GL20; import com.badlogic.gdx.graphics.g2d.SpriteBatch; -import com.badlogic.gdx.graphics.g2d.TextureRegion; -import com.badlogic.gdx.scenes.scene2d.Actor; -import com.badlogic.gdx.scenes.scene2d.InputEvent; -import com.badlogic.gdx.scenes.scene2d.InputListener; -import com.badlogic.gdx.scenes.scene2d.Stage; -import com.badlogic.gdx.scenes.scene2d.ui.HorizontalGroup; import com.badlogic.gdx.scenes.scene2d.ui.Label; -import com.badlogic.gdx.scenes.scene2d.ui.ScrollPane; -import com.badlogic.gdx.scenes.scene2d.ui.Table; -import com.badlogic.gdx.scenes.scene2d.ui.VerticalGroup; -import com.badlogic.gdx.scenes.scene2d.utils.ChangeListener; -import com.badlogic.gdx.scenes.scene2d.utils.TextureRegionDrawable; import com.badlogic.gdx.utils.Align; import io.github.lonamiwebs.klooni.Klooni; -import io.github.lonamiwebs.klooni.Theme; -import io.github.lonamiwebs.klooni.actors.MoneyBuyBand; -import io.github.lonamiwebs.klooni.actors.SoftButton; -import io.github.lonamiwebs.klooni.actors.ThemeCard; -import io.github.lonamiwebs.klooni.game.GameLayout; // Screen where the user can customize the look and feel of the game class ShareScoreScreen implements Screen { //region Members - private Klooni game; + private final Klooni game; private final Label infoLabel; private final SpriteBatch spriteBatch; diff --git a/core/src/io/github/lonamiwebs/klooni/serializer/BinSerializer.java b/core/src/io/github/lonamiwebs/klooni/serializer/BinSerializer.java index b85eb42..7bc05e2 100644 --- a/core/src/io/github/lonamiwebs/klooni/serializer/BinSerializer.java +++ b/core/src/io/github/lonamiwebs/klooni/serializer/BinSerializer.java @@ -27,11 +27,11 @@ import java.util.Arrays; public class BinSerializer { // ascii (klooni) and binary (1010b) - private static byte[] HEADER = { 0x6B, 0x6C, 0x6F, 0x6F, 0x6E, 0x69, 0xa }; + private final static byte[] HEADER = { 0x6B, 0x6C, 0x6F, 0x6F, 0x6E, 0x69, 0xa }; // MODIFY THIS VALUE EVERY TIME A BinSerializable IMPLEMENTATION CHANGES // Or unwanted results will happen and corrupt the game in an unknown way. - private static int VERSION = 2; + private final static int VERSION = 2; public static void serialize(final BinSerializable serializable, final OutputStream output) throws IOException { diff --git a/desktop/build.gradle b/desktop/build.gradle index 074e5b5..58305a9 100644 --- a/desktop/build.gradle +++ b/desktop/build.gradle @@ -37,7 +37,8 @@ eclipse { task afterEclipseImport(description: "Post processing after project generation", group: "IDE") { doLast { def classpath = new XmlParser().parse(file(".classpath")) - new Node(classpath, "classpathentry", [ kind: 'src', path: 'assets' ]); + // Result of "new" was being ignored + // new Node(classpath, "classpathentry", [ kind: 'src', path: 'assets' ]); def writer = new FileWriter(file(".classpath")) def printer = new XmlNodePrinter(new PrintWriter(writer)) printer.setPreserveWhitespace(true) diff --git a/desktop/src/io/github/lonamiwebs/klooni/desktop/DesktopLauncher.java b/desktop/src/io/github/lonamiwebs/klooni/desktop/DesktopLauncher.java index ffd98cf..f6872f8 100644 --- a/desktop/src/io/github/lonamiwebs/klooni/desktop/DesktopLauncher.java +++ b/desktop/src/io/github/lonamiwebs/klooni/desktop/DesktopLauncher.java @@ -22,7 +22,7 @@ import com.badlogic.gdx.backends.lwjgl.LwjglApplication; import com.badlogic.gdx.backends.lwjgl.LwjglApplicationConfiguration; import io.github.lonamiwebs.klooni.Klooni; -public class DesktopLauncher { +class DesktopLauncher { public static void main (String[] arg) { LwjglApplicationConfiguration config = new LwjglApplicationConfiguration(); config.title = "Klooni 1010!"; diff --git a/ios/src/io/github/lonamiwebs/klooni/IOSLauncher.java b/ios/src/io/github/lonamiwebs/klooni/IOSLauncher.java index e537761..9348373 100644 --- a/ios/src/io/github/lonamiwebs/klooni/IOSLauncher.java +++ b/ios/src/io/github/lonamiwebs/klooni/IOSLauncher.java @@ -24,7 +24,7 @@ import com.badlogic.gdx.backends.iosrobovm.IOSApplication; import com.badlogic.gdx.backends.iosrobovm.IOSApplicationConfiguration; import io.github.lonamiwebs.klooni.Klooni; -public class IOSLauncher extends IOSApplication.Delegate { +class IOSLauncher extends IOSApplication.Delegate { @Override protected IOSApplication createApplication() { IOSApplicationConfiguration config = new IOSApplicationConfiguration(); diff --git a/themes/create-theme.html b/themes/create-theme.html index 53e4ce4..40e3e84 100644 --- a/themes/create-theme.html +++ b/themes/create-theme.html @@ -46,9 +46,9 @@ code {

Theme properties

Change the theme name, price, shape and elements' color.

- + + onchange="updateJson()" autocomplete="off">