diff --git a/resources/JCasC.png b/resources/JCasC.png new file mode 100644 index 0000000..50121a4 --- /dev/null +++ b/resources/JCasC.png Binary files differ diff --git a/resources/bg.png b/resources/bg.png new file mode 100644 index 0000000..0695991 --- /dev/null +++ b/resources/bg.png Binary files differ diff --git a/src/main/java/JumpGame.java b/src/main/java/JumpGame.java index 2360302..0751e12 100644 --- a/src/main/java/JumpGame.java +++ b/src/main/java/JumpGame.java @@ -2,6 +2,7 @@ import models.JumpGameModel; import org.lwjgl.glfw.GLFW; import org.lwjgl.glfw.GLFWKeyCallback; +import views.BackgroundRenderer; import views.IView; import views.PlayerRenderer; import views.TileMapRenderer; @@ -32,8 +33,9 @@ // 初期化 public void init() { // view + views.add(new BackgroundRenderer("resources/bg.png")); views.add(new TileMapRenderer(model)); - views.add(new PlayerRenderer("resources/chicken.png")); + views.add(new PlayerRenderer("resources/JCasC.png")); } //--------------------------------------------------------------- diff --git a/src/main/java/entities/modelExtentions/Flags.java b/src/main/java/entities/modelExtentions/Flags.java index 7e0e0f0..7d68587 100644 --- a/src/main/java/entities/modelExtentions/Flags.java +++ b/src/main/java/entities/modelExtentions/Flags.java @@ -49,7 +49,7 @@ //--------------------------------------------------------------- // 奇数番目のフラグで穴を開けるフラグを提示する - public boolean isOpenFlag(int x) { + public boolean isOpenFlag(double x) { if (count % 2 != 0) return false; @@ -62,7 +62,7 @@ //--------------------------------------------------------------- // 偶数番目のフラグで穴を閉じるフラグを提示する - public boolean isCloseFlag(int x) { + public boolean isCloseFlag(double x) { if (count % 2 == 0) return false; if (values.get(count) <= x) { if (count < values.size() - 1) count++; diff --git a/src/main/java/views/BackgroundRenderer.java b/src/main/java/views/BackgroundRenderer.java new file mode 100644 index 0000000..4668cac --- /dev/null +++ b/src/main/java/views/BackgroundRenderer.java @@ -0,0 +1,41 @@ +package views; + +import entities.Pair; +import models.IModel; + +//--------------------------------------------------------------- +// +public class BackgroundRenderer implements IView { + + private Sprite sprite; + + //--------------------------------------------------------------- + //--------------------------------------------------------------- + // + public BackgroundRenderer(String path) { + this.sprite = new Sprite(path); + this.sprite.setScaleValue(1); + this.sprite.setPositionValue(new Pair<>(640d, 480d)); + } + + //--------------------------------------------------------------- + //--------------------------------------------------------------- + // + @Override + public void update(IModel model) { + } + + //--------------------------------------------------------------- + // + @Override + public void display() { + sprite.draw(); + } + + //--------------------------------------------------------------- + // + @Override + public void delete() { + sprite.delete(); + } +} diff --git a/src/main/java/views/PlayerRenderer.java b/src/main/java/views/PlayerRenderer.java index 011130a..1657a6e 100644 --- a/src/main/java/views/PlayerRenderer.java +++ b/src/main/java/views/PlayerRenderer.java @@ -12,9 +12,10 @@ //--------------------------------------------------------------- //--------------------------------------------------------------- + // public PlayerRenderer(String path) { this.sprite = new Sprite(path); - this.sprite.setScaleValue(1); + this.sprite.setScaleValue(0.1); this.sprite.setPositionValue(new Pair<>(640d, 480d)); } diff --git a/src/main/java/views/TileMapRenderer.java b/src/main/java/views/TileMapRenderer.java index 4aacf70..cff741f 100644 --- a/src/main/java/views/TileMapRenderer.java +++ b/src/main/java/views/TileMapRenderer.java @@ -59,7 +59,7 @@ else addNewTile(x, TileType.CLOSE); } - for (int i = 0; i < 100; i++) { + for (int i = 0; i < 120; i++) { double x = 32 * newTile.getScaleValue() * (i + space); // フラグのチェック diff --git a/src/main/java/views/TileRenderer.java b/src/main/java/views/TileRenderer.java index 0c81428..60ed17b 100644 --- a/src/main/java/views/TileRenderer.java +++ b/src/main/java/views/TileRenderer.java @@ -50,7 +50,11 @@ @Override public void update(IModel model) { JumpGameModel jumpGameModel = (JumpGameModel) model; - subPositionByPosition(jumpGameModel.getPosition().getValue()); + + Double x = this.initPositionValue.getFirst() - (jumpGameModel.getPosition().getValue().getFirst() * 64); + Double y = this.sprite.getPositionValue().getSecond(); + + this.sprite.setPositionValue(new Pair<>(x, y)); } //--------------------------------------------------------------- @@ -66,13 +70,4 @@ public void delete() { sprite.delete(); } - - //--------------------------------------------------------------- - //--------------------------------------------------------------- - // - private void subPositionByPosition(Pair position) { - Double x = this.initPositionValue.getFirst() - (position.getFirst() * 64); - Double y = this.sprite.getPositionValue().getSecond(); - this.sprite.setPositionValue(new Pair<>(x, y)); - } }