minor
beginnings of abstract TwistyGhost
fix fastScrambling
consolidate TouchControl
bugfix for scrambling GhostCubes
bugfix for GhostCube; jsons and meshes for Ghost 2x2 and 3x3.
bugfix for GhostCube
progress with GhostCube
debugging GhostCubes
progress with GhostCubes
bugfixes
Merge remote-tracking branch 'origin/master'
Beginnings of generic TwistyGhostCube class.
Scrambling ghosts done
backing ghost moves works now.
start using the new (axis,rowBitmap,degrees) format in JSONs and up their version to 17.
change format of ObjectMove from (axis,rowBitmap,bareAngle) to (axis,rowBitmap,angleInDegrees)
fix scrambling shapeshifting cuboids.
improvements to the API
further bugfix for a crasher
progress
fix for a crasher
further fixes for crashers
several fixes for crashers
compiles now
ObjectMove
next fix for ghosts
further fixes for ghosts
This time it really looks like the Ghost model is finally correct, and the 2x2, 4x2 and 6x2 Ghosts do work (except automatic moves and possibly backing ghost moves)
Ghost....
completely separate out the Ghost part of the puzzle to its own class, TwistyObjectGhost.
move alll ghostStuff to TwistyObjectControllable
progress with Ghosts. Still far off...
another fix for the automatic rotations of Ghosts.
We still seem to be sometimes losing the correct mGhostAxis during automatic rotations.
partial fix for the automatic rotations of Ghosts.
unify test ghost classes into one
first part to support auto-rotations of Ghosts.
Ghost part of the puzzle is now properly saved/restored
All manual control over 4x2x2 and 2x2x2 Ghosts should be working now. Remaining:
- automatic moves (forcing the initial unblocking)- remembering the state of a ghost
progress with 2x2x2 Ghost. Almost good now!
progress with 2x2x2 Ghost
progress with generic ghostAxis switching.Proper Solve() including Ghost stuff.
progress with generic ghostAxis switching.
implement correct TouchControlShapeChanging for Ghosts - taking into account the Ghost rotation (part2).
implement correct TouchControlShapeChanging for Ghosts - taking into account the Ghost rotation.
unify TouchControl
Basic manual contorl over a 4x2x2 Ghost should be fine now.
Things still TODO:
1) correct axis in TouchControl when all rows are 'down'2) implement proper ghostAxis and rowBitmap switching that would work in general, not only in case of a 4x2x23) implement automatic rotation that would force unblocking on the first move
Big progress with Ghosts.
The test (4,2,2) almost works now - only sometimes, when we switch to mGhostRowBitmap=fullOnes, (all rows 'DOWN' ) then some cubits do not seem to belong to their assigned layers anymore.
progress with Ghosts
Work on Ghosts
replace all andoird logging with System.out.println
minor bugfix: eliminate too long move angles.
Solver for Megaminx.
bugfix in SolverActivity and speedup in MoveProviderAlgs
change one of objlib's APIs from 'onReplaceModeUP/Down' (which only comes when TouchControl is in REPLACE mode) to 'onStickerTouched/Untouched' (which reports the same thing, but comes always)
better minimalCubiesInRow in case of cuboids - take into account that the shapeshifters can be hollow inside if x>=3, y>=3, z>=3 (e.g. 3x3x5)
beginnings of PhasedSolverMegaminx.Verifier & locked cubits done - now define the actual phases!
Move all the strings from objlib to the app.Upgrade AGP from 8.1.4 to 8.3.2
New verifier mechanism finished and being used by both KILO3 and CUBE3 algorithmic solvers.
Progress with automatic verifiers.Appears to work now in case of KILO_3 and CUBE_3.In case of IVY_2, it crashes.
beginnings of the Kilominx verifier
beginnings of ther Kilominx verifier
comment
Another part of the fix for shape-shifting cuboids: we need to write numLayers to JSON (rather than computing it from mRotatable) because it turns out mNumLayers can be different than the lengths of mRotatable!
This and new object JSONs for the 3 shape-shifters (other object default back to the old method of computing numLayers on read from JSON)
fix for scrambling shape-shifting cuboids. Before when scrambling e.g. the CU_242, we would sometimes 'hit air' (try to rotate a layer which does not have any cubits in it)
Algorithmic solvers (at least the 3x3 beginner and the Kilominx) seem to be working now.
progress with Algorithmic solvers. Seem to solve all right now; but still problems with which cubits it lights.
fixes for Algorithmic solvers (but those still do not work correctly!)
a dialog to interrupt too long solves
Add the 'interrupt()' API to all solversAdd the 'start/stopSolving' notification to ResultScreen
Initial support for Algorithmic Kilominx verifier and introduction of it into the App.
Do not call the Kociemba solver on an already solved position.
Integration of the Algorithmic solver 'SolverAlgorithmicCUBE3' with the app pretty much done.
3x3 position validator finished; what's left is compute the quat table knowing the position is correct.
Properly define and separate the interface between the App and the 'solver' part of the objectlib. Move the 'position verifiers' to the objectlib.