From b59ab96f1d9de50be06055f89c25e29917b6086e Mon Sep 17 00:00:00 2001 From: Jacob Signorovitch Date: Tue, 5 Nov 2024 16:59:00 -0500 Subject: [PATCH] Added to rendering methods. --- mastermind/src/mastermind/Main.java | 40 ++++++++++++++++++++++++++--- 1 file changed, 36 insertions(+), 4 deletions(-) diff --git a/mastermind/src/mastermind/Main.java b/mastermind/src/mastermind/Main.java index 9d734bb..af6f785 100644 --- a/mastermind/src/mastermind/Main.java +++ b/mastermind/src/mastermind/Main.java @@ -102,8 +102,12 @@ class Examples { boolean testDrawMethods(Tester t) { WorldCanvas c = new WorldCanvas(1000, 1000); WorldScene s = new WorldScene(1000, 1000); + + IncompleteGuess incomplete = new IncompleteGuess(exampleDotsOne); + return - c.drawScene(s.placeImageXY(exampleFeedback.draw(), 100, 100)) + c.drawScene(s.placeImageXY(incomplete.draw(), incomplete.getW()/2, 100)) + //c.drawScene(s.placeImageXY(exampleFeedback.draw(), 100, 100)) //c.drawScene(s.placeImageXY(redDot.draw(), 100, 100)) //c.drawScene(s.placeImageXY(dotsOne.draw(), 250, 250)) && c.show(); @@ -113,8 +117,20 @@ class Examples { class Util { static int scale = 2; - static int gapw = 4 * scale; // The gap between objects. - static WorldImage gap = new RectangleImage(gapw, gapw, "outline", new Color(0, 0, 0, 0)); + static int fontSz = 16 * scale; + static int gapW = 4 * scale; // The gap between objects. + + // Drawing methods. + static WorldImage gap = new RectangleImage(gapW, gapW, "outline", new Color(0, 0, 0, 0)); + static WorldImage pairGap(WorldImage img1, WorldImage img2) { + return new BesideAlignImage(AlignModeY.MIDDLE, img1, gap, img2); + } + + static WorldImage strPair(String str1, String str2) { + return pairGap(new TextImage(str1, fontSz, Color.black), new TextImage(str2, fontSz, Color.black)); + } + + static int pairgapW = 2 * 16 * scale + gapW; } // A game state. @@ -190,6 +206,22 @@ class Guess { } } +class IncompleteGuess { + ILoDot guessSoFar; + + IncompleteGuess(ILoDot guessSoFar) { + this.guessSoFar = guessSoFar; + } + + WorldImage draw() { + return Util.pairGap(guessSoFar.draw(), Util.strPair("-", "-")); + } + + int getW() { + return this.guessSoFar.getW() + 2 * Util.gapW + 2 * Util.fontSz; + } +} + class Feedback { int exact, inexact; @@ -214,7 +246,7 @@ class Feedback { } int getW() { - return 2 * 16 * Util.scale + Util.gapw; + return 2 * 16 * Util.scale + Util.gapW; } }