Skip to content

Commit

Permalink
Fillapix (Bram-Hub#569)
Browse files Browse the repository at this point in the history
* rework fill-a-pix UI pictures to make clearer

* allow right click to cycle backwards through cell states

* Rename file

* create isComplete utility, begin implementation of CompleteClue case rule

* find number of completion cases for a rule

* create icons for more fill-a-pix rules

* implement max possible number of cases

* fillapix utility for finding all combinations

* implement CompleteClue case rule, still some bugs

* potentially shorten time taken for calculating combinations, catch some null reference bugs

* make sure cell has empty adjacent cells before adding it to CompleteClue caseBoard

* combine similar rules into one

* begin work on verifying cases

* implement CompleteClueCaseRule

* fix typo

* initial version of MirrorDirectRule

* prevent trying to access out of board bounds

* further changing of contradictions to stop errors

* more stopping of accessing non-existent data

* remove duplicate methods

* complete mirror direct rule

* add another utility

* move method of FillapixUtilities

* add TouchingSides direct rule

* Rename a file, complete touching corners rule

* touch up some basic rule pictures

* add puzzle, rename puzzle

* implement nontouching shared direct rule

* implementing fillapix puzzle editor

* comply with style guide

* make fillapix boards editable through puzzle editor

* better handling of whether or not a cell is numbered

* give cells in blank board default number

* remove debug print

* register the FillapixView that is created

* fix setting elements in fillapix puzzle editor

* finally fix fillapix puzzle editor

* remove data when setting fillapix cell to empty in puzzle editor

* remove debug print

* add ability to save puzzles created in fillapix puzzle editor

* add more fillapix puzzles

* comply with checkstyle

* Changed max cases to 10

Talked to Bram and decided to up the limit to 10.

---------

Co-authored-by: Jacob Long <[email protected]>
Co-authored-by: Corppet <[email protected]>
Co-authored-by: Charles Tian <[email protected]>
Co-authored-by: charlestian23 <[email protected]>
Co-authored-by: Ivan Ho <[email protected]>
  • Loading branch information
6 people authored Oct 10, 2023
1 parent 97be2be commit b718165
Show file tree
Hide file tree
Showing 48 changed files with 1,768 additions and 73 deletions.
4 changes: 2 additions & 2 deletions bin/main/edu/rpi/legup/legup/config
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<puzzle name="Fillapix"
qualifiedClassName="edu.rpi.legup.puzzle.fillapix.Fillapix"
fileType=".xml"
fileCreationDisabled="true"/>
fileCreationDisabled="false"/>
<puzzle name="HeyAwake"
qualifiedClassName="edu.rpi.legup.puzzle.heyawake.Heyawake"
fileType=".xml"
Expand Down Expand Up @@ -40,4 +40,4 @@
fileType=".xml"
fileCreationDisabled="true"/>
</puzzles>
</Legup>
</Legup>
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<Legup version="2.0.0">
<puzzle name="Fillapix">
<board width="10" height="10">
<cells>
<cell value="3" x="2" y="0"/>
<cell value="3" x="3" y="0"/>
<cell value="3" x="0" y="1"/>
<cell value="0" x="6" y="1"/>
<cell value="0" x="8" y="1"/>
<cell value="3" x="2" y="2"/>
<cell value="4" x="3" y="2"/>
<cell value="3" x="5" y="2"/>
<cell value="3" x="0" y="3"/>
<cell value="4" x="2" y="3"/>
<cell value="3" x="7" y="3"/>
<cell value="2" x="0" y="4"/>
<cell value="3" x="1" y="4"/>
<cell value="5" x="3" y="4"/>
<cell value="4" x="5" y="4"/>
<cell value="4" x="6" y="4"/>
<cell value="4" x="9" y="4"/>
<cell value="5" x="2" y="5"/>
<cell value="4" x="3" y="5"/>
<cell value="6" x="4" y="5"/>
<cell value="6" x="5" y="5"/>
<cell value="4" x="7" y="5"/>
<cell value="4" x="9" y="5"/>
<cell value="3" x="5" y="6"/>
<cell value="3" x="6" y="6"/>
<cell value="4" x="9" y="6"/>
<cell value="3" x="1" y="7"/>
<cell value="5" x="4" y="7"/>
<cell value="6" x="5" y="7"/>
<cell value="5" x="6" y="7"/>
<cell value="4" x="9" y="7"/>
<cell value="7" x="3" y="8"/>
<cell value="7" x="7" y="8"/>
<cell value="5" x="9" y="8"/>
<cell value="4" x="1" y="9"/>
<cell value="6" x="4" y="9"/>
<cell value="6" x="6" y="9"/>
<cell value="5" x="8" y="9"/>
</cells>
</board>
</puzzle>
<Solved isSolved="false"/>
</Legup>
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<Legup version="3.0.0">
<puzzle name="Fillapix">
<board height="15" width="15">
<cells>
<cell value="4" x="3" y="0"/>
<cell value="4" x="6" y="0"/>
<cell value="6" x="8" y="0"/>
<cell value="5" x="10" y="0"/>
<cell value="4" x="11" y="0"/>
<cell value="1" x="14" y="0"/>
<cell value="4" x="1" y="1"/>
<cell value="7" x="9" y="1"/>
<cell value="4" x="2" y="2"/>
<cell value="0" x="5" y="2"/>
<cell value="1" x="6" y="2"/>
<cell value="4" x="8" y="2"/>
<cell value="5" x="10" y="2"/>
<cell value="6" x="12" y="2"/>
<cell value="4" x="0" y="3"/>
<cell value="0" x="3" y="3"/>
<cell value="0" x="5" y="3"/>
<cell value="3" x="7" y="3"/>
<cell value="4" x="10" y="3"/>
<cell value="5" x="12" y="3"/>
<cell value="4" x="14" y="3"/>
<cell value="1" x="2" y="4"/>
<cell value="2" x="5" y="4"/>
<cell value="3" x="7" y="4"/>
<cell value="5" x="8" y="4"/>
<cell value="4" x="9" y="4"/>
<cell value="4" x="11" y="4"/>
<cell value="5" x="12" y="4"/>
<cell value="2" x="1" y="5"/>
<cell value="3" x="4" y="5"/>
<cell value="5" x="6" y="5"/>
<cell value="5" x="9" y="5"/>
<cell value="5" x="10" y="5"/>
<cell value="5" x="11" y="5"/>
<cell value="1" x="2" y="6"/>
<cell value="2" x="3" y="6"/>
<cell value="5" x="5" y="6"/>
<cell value="3" x="7" y="6"/>
<cell value="4" x="8" y="6"/>
<cell value="5" x="14" y="6"/>
<cell value="0" x="1" y="7"/>
<cell value="0" x="2" y="7"/>
<cell value="1" x="3" y="7"/>
<cell value="5" x="6" y="7"/>
<cell value="6" x="8" y="7"/>
<cell value="7" x="10" y="7"/>
<cell value="6" x="12" y="7"/>
<cell value="4" x="14" y="7"/>
<cell value="5" x="8" y="8"/>
<cell value="5" x="9" y="8"/>
<cell value="6" x="12" y="8"/>
<cell value="0" x="1" y="9"/>
<cell value="4" x="4" y="9"/>
<cell value="6" x="6" y="9"/>
<cell value="6" x="10" y="9"/>
<cell value="7" x="12" y="9"/>
<cell value="8" x="5" y="10"/>
<cell value="8" x="7" y="10"/>
<cell value="7" x="8" y="10"/>
<cell value="7" x="12" y="10"/>
<cell value="3" x="14" y="10"/>
<cell value="5" x="2" y="11"/>
<cell value="7" x="4" y="11"/>
<cell value="8" x="6" y="11"/>
<cell value="7" x="8" y="11"/>
<cell value="7" x="9" y="11"/>
<cell value="5" x="12" y="11"/>
<cell value="2" x="1" y="12"/>
<cell value="8" x="3" y="12"/>
<cell value="8" x="5" y="12"/>
<cell value="6" x="9" y="12"/>
<cell value="5" x="10" y="12"/>
<cell value="5" x="14" y="12"/>
<cell value="1" x="1" y="13"/>
<cell value="5" x="3" y="13"/>
<cell value="5" x="5" y="13"/>
<cell value="3" x="7" y="13"/>
<cell value="5" x="10" y="13"/>
<cell value="3" x="12" y="13"/>
<cell value="4" x="14" y="13"/>
<cell value="2" x="11" y="14"/>
<cell value="3" x="12" y="14"/>
</cells>
</board>
</puzzle>
</Legup>
111 changes: 111 additions & 0 deletions puzzles files/fillapix/15x15 Fillapix Basic/FillapixBasic15x15_1
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<Legup version="3.0.0">
<puzzle name="Fillapix">
<board height="15" width="15">
<cells>
<cell value="0" x="0" y="0"/>
<cell value="4" x="3" y="0"/>
<cell value="3" x="4" y="0"/>
<cell value="2" x="5" y="0"/>
<cell value="1" x="6" y="0"/>
<cell value="3" x="12" y="0"/>
<cell value="5" x="2" y="1"/>
<cell value="4" x="5" y="1"/>
<cell value="4" x="8" y="1"/>
<cell value="4" x="9" y="1"/>
<cell value="3" x="14" y="1"/>
<cell value="5" x="1" y="2"/>
<cell value="4" x="2" y="2"/>
<cell value="5" x="3" y="2"/>
<cell value="4" x="4" y="2"/>
<cell value="5" x="5" y="2"/>
<cell value="5" x="6" y="2"/>
<cell value="5" x="8" y="2"/>
<cell value="3" x="9" y="2"/>
<cell value="1" x="11" y="2"/>
<cell value="2" x="12" y="2"/>
<cell value="3" x="14" y="2"/>
<cell value="4" x="0" y="3"/>
<cell value="4" x="4" y="3"/>
<cell value="4" x="7" y="3"/>
<cell value="2" x="8" y="3"/>
<cell value="1" x="10" y="3"/>
<cell value="5" x="2" y="4"/>
<cell value="4" x="3" y="4"/>
<cell value="2" x="5" y="4"/>
<cell value="2" x="6" y="4"/>
<cell value="1" x="8" y="4"/>
<cell value="0" x="9" y="4"/>
<cell value="7" x="12" y="4"/>
<cell value="5" x="13" y="4"/>
<cell value="5" x="3" y="5"/>
<cell value="0" x="6" y="5"/>
<cell value="4" x="11" y="5"/>
<cell value="5" x="12" y="5"/>
<cell value="2" x="14" y="5"/>
<cell value="4" x="0" y="6"/>
<cell value="5" x="3" y="6"/>
<cell value="4" x="4" y="6"/>
<cell value="2" x="5" y="6"/>
<cell value="0" x="6" y="6"/>
<cell value="0" x="7" y="6"/>
<cell value="5" x="11" y="6"/>
<cell value="6" x="12" y="6"/>
<cell value="5" x="0" y="7"/>
<cell value="6" x="3" y="7"/>
<cell value="5" x="4" y="7"/>
<cell value="3" x="10" y="7"/>
<cell value="3" x="11" y="7"/>
<cell value="3" x="12" y="7"/>
<cell value="3" x="14" y="7"/>
<cell value="5" x="2" y="8"/>
<cell value="5" x="4" y="8"/>
<cell value="3" x="5" y="8"/>
<cell value="3" x="12" y="8"/>
<cell value="5" x="0" y="9"/>
<cell value="6" x="3" y="9"/>
<cell value="5" x="4" y="9"/>
<cell value="3" x="6" y="9"/>
<cell value="5" x="7" y="9"/>
<cell value="6" x="9" y="9"/>
<cell value="0" x="12" y="9"/>
<cell value="0" x="14" y="9"/>
<cell value="5" x="2" y="10"/>
<cell value="4" x="4" y="10"/>
<cell value="3" x="5" y="10"/>
<cell value="2" x="6" y="10"/>
<cell value="4" x="7" y="10"/>
<cell value="5" x="8" y="10"/>
<cell value="4" x="10" y="10"/>
<cell value="1" x="13" y="10"/>
<cell value="7" x="1" y="11"/>
<cell value="5" x="4" y="11"/>
<cell value="1" x="7" y="11"/>
<cell value="5" x="9" y="11"/>
<cell value="5" x="10" y="11"/>
<cell value="5" x="11" y="11"/>
<cell value="6" x="2" y="12"/>
<cell value="4" x="3" y="12"/>
<cell value="4" x="4" y="12"/>
<cell value="4" x="5" y="12"/>
<cell value="3" x="6" y="12"/>
<cell value="1" x="7" y="12"/>
<cell value="2" x="8" y="12"/>
<cell value="4" x="9" y="12"/>
<cell value="6" x="12" y="12"/>
<cell value="4" x="13" y="12"/>
<cell value="5" x="1" y="13"/>
<cell value="6" x="3" y="13"/>
<cell value="4" x="9" y="13"/>
<cell value="6" x="10" y="13"/>
<cell value="3" x="6" y="14"/>
<cell value="2" x="7" y="14"/>
<cell value="0" x="8" y="14"/>
<cell value="4" x="10" y="14"/>
<cell value="4" x="11" y="14"/>
<cell value="3" x="12" y="14"/>
<cell value="2" x="14" y="14"/>
</cells>
</board>
</puzzle>
</Legup>
Loading

0 comments on commit b718165

Please sign in to comment.