fix for a crasher
further fixes for crashers
several fixes for crashers
compiles now
progress
ObjectMove
minor
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.
Integration of the Algorithmic solvers into the App.
Restructuring for the solvers in the app.
Progeress towards automatically integrating the Algorithmic solvers into the list of solvers in the App.
Glow cubits involved in the phase.
Step towards glowing cubits involved in a phase.
push objectRatio up from TwistyObjectControllable to the last layer.
Remove the final remnants of legacy 'ghost' stuff.
Carve out the fifth layer: touch control.
Carve out the fourth layer: stickers.
Carve out the third layer from the Puzzle implementation: TwistyPuzzleSolved, i.e. detection of the solved state.
Next: the fourth layer: stickers.Then: fifth layer: touch control.Then: everything else. (metadata?)
API name changes; fix for Dino4's solved state!
Minor
remove numLayers from parameter list of 3 next methods.
correction.
remove numLayers from 4 API methods.
Clean up TwistyObjectWithMesh's API (remove getDist3D() and getSize() )
Make calculation of circumscribed radius work for any current and future object.
Cleanup
bugfix (move iconode to TwistyObjectWithMesh as mesh creation sometimes depends on the mode)
port fixes from master
Carve out another, 2nd layer from TwistyObject: everything related to creating its Mesh.
Progress with PhasedSolver app.
SolverKilominx finished.
Add possibility to select different solvers.
Better structure things architecturally.
More for Solver Kilominx (almost finished)