From 2cc12929462e96499ead7742087c0c0806796b24 Mon Sep 17 00:00:00 2001 From: sigonasr2 Date: Sat, 11 Jun 2022 18:06:41 -0500 Subject: [PATCH] Move and refactor engine objects Co-authored-by: r3cp3ct <45179536+r3cp3ct@users.noreply.github.com> Co-authored-by: sigonasr2 --- src/sig/RabiClone.java | 2 +- src/sig/engine/Panel.java | 1 + src/sig/engine/String.java | 2 ++ .../engine/{ => objects}/AnimatedObject.java | 5 +++- src/sig/engine/{ => objects}/Object.java | 24 ++++++++++++++----- src/sig/objects/ConfigureControls.java | 4 ++-- src/sig/objects/EditorRenderer.java | 4 ++-- src/sig/objects/Erinoah.java | 2 +- src/sig/objects/LevelRenderer.java | 9 +++++-- src/sig/objects/Player.java | 8 ++++--- 10 files changed, 43 insertions(+), 18 deletions(-) rename src/sig/engine/{ => objects}/AnimatedObject.java (92%) rename src/sig/engine/{ => objects}/Object.java (85%) diff --git a/src/sig/RabiClone.java b/src/sig/RabiClone.java index b493c90..68efa3e 100644 --- a/src/sig/RabiClone.java +++ b/src/sig/RabiClone.java @@ -11,6 +11,7 @@ import java.util.List; import sig.engine.Panel; import sig.engine.Point; +import sig.engine.objects.Object; import sig.map.Maps; import sig.objects.ConfigureControls; import sig.objects.EditorRenderer; @@ -18,7 +19,6 @@ import sig.objects.LevelRenderer; import sig.objects.Player; import sig.engine.Key; import sig.engine.KeyBind; -import sig.engine.Object; import sig.engine.PaletteColor; import java.awt.Toolkit; diff --git a/src/sig/engine/Panel.java b/src/sig/engine/Panel.java index d280894..2c987ed 100644 --- a/src/sig/engine/Panel.java +++ b/src/sig/engine/Panel.java @@ -22,6 +22,7 @@ import java.awt.event.KeyListener; import sig.DrawLoop; import sig.RabiClone; +import sig.engine.objects.Object; public class Panel extends JPanel implements Runnable,KeyListener { JFrame window; diff --git a/src/sig/engine/String.java b/src/sig/engine/String.java index 1ba8b19..7af2927 100644 --- a/src/sig/engine/String.java +++ b/src/sig/engine/String.java @@ -2,6 +2,8 @@ package sig.engine; import java.util.regex.Pattern; +import sig.engine.objects.Object; + public class String{ private StringBuilder sb; private Point bounds = new Point(0,1); diff --git a/src/sig/engine/AnimatedObject.java b/src/sig/engine/objects/AnimatedObject.java similarity index 92% rename from src/sig/engine/AnimatedObject.java rename to src/sig/engine/objects/AnimatedObject.java index 679234b..9906e3e 100644 --- a/src/sig/engine/AnimatedObject.java +++ b/src/sig/engine/objects/AnimatedObject.java @@ -1,4 +1,7 @@ -package sig.engine; +package sig.engine.objects; + +import sig.engine.AnimatedSprite; +import sig.engine.Panel; public abstract class AnimatedObject extends Object{ diff --git a/src/sig/engine/Object.java b/src/sig/engine/objects/Object.java similarity index 85% rename from src/sig/engine/Object.java rename to src/sig/engine/objects/Object.java index e97cbd5..027e3fb 100644 --- a/src/sig/engine/Object.java +++ b/src/sig/engine/objects/Object.java @@ -1,7 +1,19 @@ -package sig.engine; +package sig.engine.objects; import java.awt.event.MouseEvent; import sig.DrawLoop; +import sig.engine.Action; +import sig.engine.Alpha; +import sig.engine.AnimatedSprite; +import sig.engine.Font; +import sig.engine.GameEntity; +import sig.engine.KeyBind; +import sig.engine.MouseScrollValue; +import sig.engine.PaletteColor; +import sig.engine.Panel; +import sig.engine.Sprite; +import sig.engine.String; +import sig.engine.Transform; public abstract class Object implements GameEntity{ double x,y; @@ -102,16 +114,16 @@ public abstract class Object implements GameEntity{ return KeyBind.isKeyHeld(a); } - protected void KeyPressed(Action a) { + public void KeyPressed(Action a) { } - protected void KeyReleased(Action a) { + public void KeyReleased(Action a) { } - protected void MousePressed(MouseEvent e) { + public void MousePressed(MouseEvent e) { } - protected void MouseReleased(MouseEvent e) { + public void MouseReleased(MouseEvent e) { } protected boolean MouseHeld(int mb) { @@ -122,6 +134,6 @@ public abstract class Object implements GameEntity{ * @param scrolled -1 is UP, 1 is DOWN * @return */ - protected void MouseScrolled(MouseScrollValue scrolled) { + public void MouseScrolled(MouseScrollValue scrolled) { } } diff --git a/src/sig/objects/ConfigureControls.java b/src/sig/objects/ConfigureControls.java index 41973d4..b8bd390 100644 --- a/src/sig/objects/ConfigureControls.java +++ b/src/sig/objects/ConfigureControls.java @@ -13,10 +13,10 @@ import sig.engine.Action; import sig.engine.Alpha; import sig.engine.Font; import sig.engine.KeyBind; -import sig.engine.Object; import sig.engine.PaletteColor; import sig.engine.Panel; import sig.engine.String; +import sig.engine.objects.Object; public class ConfigureControls extends Object{ @@ -120,7 +120,7 @@ public class ConfigureControls extends Object{ } @Override - protected void MousePressed(MouseEvent e) { + public void MousePressed(MouseEvent e) { if ((e.getButton()==MouseEvent.BUTTON3||e.getButton()==MouseEvent.BUTTON1)&&selectedKeybind!=null) { //Remove that keybind. List keybinds = KeyBind.KEYBINDS.get(selectedAction); diff --git a/src/sig/objects/EditorRenderer.java b/src/sig/objects/EditorRenderer.java index 634028a..a6d08ac 100644 --- a/src/sig/objects/EditorRenderer.java +++ b/src/sig/objects/EditorRenderer.java @@ -87,7 +87,7 @@ public class EditorRenderer extends LevelRenderer{ } @Override - protected void MouseScrolled(MouseScrollValue scrolled) { + public void MouseScrolled(MouseScrollValue scrolled) { int up = scrolled==MouseScrollValue.UP?1:0; int down = scrolled==MouseScrollValue.DOWN?1:0; int tempIndex = selectedTile.ordinal()+down-up; @@ -174,7 +174,7 @@ public class EditorRenderer extends LevelRenderer{ @Override @SuppressWarnings("incomplete-switch") - protected void KeyPressed(Action a) { + public void KeyPressed(Action a) { int tileX = (int)(RabiClone.MOUSE_POS.getX()+getX())/Tile.TILE_WIDTH; int tileY = (int)(RabiClone.MOUSE_POS.getY()+getY())/Tile.TILE_HEIGHT; switch (a) { diff --git a/src/sig/objects/Erinoah.java b/src/sig/objects/Erinoah.java index 86a2377..ee951f7 100644 --- a/src/sig/objects/Erinoah.java +++ b/src/sig/objects/Erinoah.java @@ -1,8 +1,8 @@ package sig.objects; -import sig.engine.AnimatedObject; import sig.engine.Panel; import sig.engine.Sprite; +import sig.engine.objects.AnimatedObject; public class Erinoah extends AnimatedObject{ diff --git a/src/sig/objects/LevelRenderer.java b/src/sig/objects/LevelRenderer.java index a2450ac..0223022 100644 --- a/src/sig/objects/LevelRenderer.java +++ b/src/sig/objects/LevelRenderer.java @@ -4,13 +4,13 @@ import java.util.Arrays; import sig.RabiClone; import sig.engine.Alpha; -import sig.engine.AnimatedObject; import sig.engine.Font; -import sig.engine.Object; import sig.engine.PaletteColor; import sig.engine.Panel; import sig.engine.Sprite; import sig.engine.Transform; +import sig.engine.objects.AnimatedObject; +import sig.engine.objects.Object; import sig.engine.String; import sig.map.Background; import sig.map.CollisionType; @@ -79,6 +79,11 @@ public class LevelRenderer extends Object{ Draw_Text(4,4,new String(RabiClone.player.x_velocity),Font.PROFONT_12); Draw_Text(4,4+Font.PROFONT_12.getGlyphHeight(),new String(RabiClone.player.slide_time3),Font.PROFONT_12); } + //RenderCollisionGrid(p); + } + + @SuppressWarnings("unused") + private void RenderCollisionGrid(byte[] p) { for (int y=0;y