Not logged in.  Login/Logout/Register | List snippets | | Create snippet | Upload image | Upload data

67
LINES

< > BotCompany Repo | #1014991 // A. I. Game 8.5 / Circles Near Center [OK]

JavaX source code (desktop) [tags: use-pretranspiled] - run with: x30.jar

Download Jar. Uses 3874K of libraries. Click here for Pure Java version (11833L/85K).

!7

static int circles = 1;

!include #1006931 // AI Game & API

p-autorestart {
  newImageText = "New Letter!";
  gameTitle = "A. I. Game 8.5";
  reproZoom = 1;
  makeInstruction();
  pGame();
  swing {
    setImage(toRGBImage(toBWImage(loadImage(#1101188)))); // Instagram logo
    final JSpinner spinner = jSpinner(circles, 1, 100);
    addToWindowPack_keepWidth(is, withMargin(jRightAligned(withLabel("Number of circles to use:", spinner))));
    onChange(spinner, r {
      circles = intFromSpinner(spinner);
      makeInstruction(); restartAIs();
    });

    clickButton(last(aiButtons)); // Start the winner AI!
  }
}

svoid makeInstruction {
  setInstruction("Reproduce this image with " + n2(circles, "circle") + ":");
}

sclass Submission extends BackgroundPlus<CircleWithColor> {
  *() {}
  *(BackgroundPlus<CircleWithColor> b) { copyFields(b, this); check(); }
  
  void check {
    assertEqualsQuick(circles, l(things));
  }
}

!include #1014964 // Random letter puzzle maker 

///////////////
// RENDERERS //
///////////////

static RGBImage renderImage(Submission s) { ret new RGBImage(renderImage1(s)); }
static BufferedImage renderImage1(Submission s) { ret renderBackgroundPlusCircles(w, h, s); }
static BufferedImage renderWithHints(Submission s) { ret renderBackgroundPlusCircles_withHints(w, h, s); }

/////////////////////////////////
// AIs. Just add your own here //
/////////////////////////////////

AI_Random_abstract > AI_Random {
  Submission guess() {
    ret Submission(randomBackgroundPlusCirclesNearCenter(w, h, circles));
  }
}

AI_RandomWithVariation_abstract > AI_RandomWithVariation {
  AI_RandomWithVariation() { super(new AI_Random); }
  
  Submission vary(Submission s) {
    ret varyBackgroundPlusCirclesNearCenter(s, w, h);
  }
}

!include #1014957 // AI_Racer

Author comment

Began life as a copy of #1014980

download  show line numbers  debug dex  old transpilations   

Travelled to 13 computer(s): aoiabmzegqzx, bhatertpkbcr, cbybwowwnfue, cfunsshuasjs, gwrvuhgaqvyk, ishqpsrjomds, lpdgvwnxivlt, mqqgnosmbjvj, pyentgdyhuwx, pzhvpgtvlbxg, tslmcundralx, tvejysmllsmz, vouqrxazstgt

No comments. add comment

Snippet ID: #1014991
Snippet name: A. I. Game 8.5 / Circles Near Center [OK]
Eternal ID of this version: #1014991/5
Text MD5: 236a62ba472d1d4ff6da3a08e5b93265
Transpilation MD5: 3d0ca30fb8ed15223e97bf9d56a32f0c
Author: stefan
Category: javax / gui / a.i.
Type: JavaX source code (desktop)
Public (visible to everyone): Yes
Archived (hidden from active list): No
Created/modified: 2018-05-06 20:43:19
Source code size: 1869 bytes / 67 lines
Pitched / IR pitched: No / No
Views / Downloads: 547 / 1437
Version history: 4 change(s)
Referenced in: [show references]