Increate number of Burr Cube scrambles to 487.
BAN5_4 and BAN6_4: fix creating their signatures (improper signatures --> wrong scrambling type 2!)
Burr Cube: tutorials, new jsons.
Minor
Correct the mesh of the Burr Cube according to the versions in YT.Scrambling doesn't work...
Add Burr Cube (aka Wall Cube)
Camouflage: new json (change complexity and num scrambles)
Camouflage: new mesh and json.
Correct Camouflage's cubits (centers must be 1x1x1!) and add YTS' scrambling algorithms.
Correct Masterball's mesh so that its 'FAST' mode looks good.
Bugfixes for touch control - specifically for furious swiping and concurrect backing of moves.
Update P. Diamond's touchcontrol
Some more debugging.
Minor.
Withdraw the last change.
Make it impossible to addNewRotation() (i.e. the automatic rotations triggered from backMove, scrambleEffect etc) or beginNewRotation() (by swiping a finger) when we are currently finishing a previous rotation and haven't removed it yet.
Fix for a crasher.
Make it possible to (fully!) read version 6 JSONs - some users might have Pyraminx Duo v. 6 already downloaded!
Minor correction to the reporting of blocked rotations - now it is actually going to report correct rotation block time.
Unblock PreRender's scrambling & solving oonly AFTER we change screen to READ post-scrambling (otherwise it was possible to press the 'solve' button in the brief period between unblocking and switching screen because switching screen runs on the background UI thread)
still return the right value in case of slow and fast scrambling.
calls to FastScramble and SlowScramble might fail (preRender is blocked). Return false then and if so, do not do anything in the app.
Minor bugfix.
Don't do slow scramblng if numScrambles>=50 - do a fast scramble instead.
AI Cube: rename the icon.
Icon (and icon creation) for the Camouflage 3x3x3.
AI Cube: rename BAN5_3 to BAN5_4
AI Cube: even thicker stroke.
AI Cube: thicker stroke.
AI Cube: scrambling algorithms.
AI Cube: dmesh, jsons. Only scrambling now missing.
Beginnings of support for AI Cube.
Support for multi-step scrambling algorithms.
We need to support reading from earlier JSONs. Support v. 6 (partially - only the objects which do not have the new in v. 7 algorithms & edges - i.e. locally created bandaged cuboids)
Fix a bug with level buttons in objects with less than 9 numScramble.
Correct scramble tables for Starminx, P. Crystal, Kilominx, Megaminx, Master Kilominx & Gigaminx.
Correct scramble tables for the Pyraminxes.
Correct scramble tables for the Rex and Void Cubes.
Correct scramble tables for the Pyraminx Duo and Pyraminx Diamond.
Correct scramble tables for the Crazy 2x2.
Correct scramble tables for Redi, Dino4 and Dino6.
Bugfixes
Produce new JSONs files (version 7, with new scrambling method)
Move scrambling to a new model where there are spearete scrambling 'algorithms' and 'edges' of the scrambling graph.Now each edge can contain a whole algorithm, i.e. a sequence of moves leading from state to state, which permits construction of scrambling for more complicated bandaged objects such as the AI cube....
Progress with the Camouflage 3x3x3.Now only proper scrambling remains.
Progress with the Camouflage 3x3x3.
Beginnings of support for the Camouflage 3x3x3.
Preparation for Camouflage Cubes.
Fix touch-replacing colors of the stickers. Now correctly takes into account the shape of the sticker.
Remove the 'switchTouchControl' optimization which, with many different objects in the solver screen now, does not work any more.
Progress with SolverScreen.
Some improvements to blocking, mostly to the names of variables.
Finally fix the 'impossible records' bug!
Thanks for a bug report from Jacob Powell - if one, during scrambling, minimized the app and re-entered it, the UI lock got removed (by a call to 'unblockEverything' from RubikActivity's onResume) and one could then keep solving the object mid-scramble....
small improvement for the TwistyObject.
Move the control of object scaling out the objectlib.Thee xact way the object is scaled needs to be decided in the app, as only the app knows that e.g. in the Rubik main screen, if it is a square, then obejct needs to be a bit smaller than in case of Config screen (if that one happens to be a square)
Update 2 more tutorials that were dead.
Update 3 tutorials that were dead.
More debugging for the mysterious case of corrupted rotation quat (?)
Make it possible to decide about FastScramble duration fromo outside the ObjectControl.
Fix for the issue that a resized object wasn't TouchControlled correctly in the Solver screen.(mObjectRatio was set to incorrect instance of the TouchControl class)
Additional debugging for one weird crash.
Always prepare() TouchControlShapeChanging when we enter the Solver. Otherwise it could sometimes be prepared with some different object and would crash in touching the screen.
Pyraminx Diamond & Duo: meshes, jsons.
New Pyraminx Diamond.
fix rounding corners of bandaged cuboids.
Bugfixes.
Bugfix for reading JSONs version 6.
Minor bugfixes for creating JSON files version 6 (with per-cubit lists of VertexEffects)
corrections for rounding corners of bandaged cuboids.
corrections for rounding corners of kilo/megaminx.
Major change in JSOn file format:
replace the old (corners,centers) system with a list of VertexEffects which are applied to each cubit variant.
Make several objects built-inoone fix for USE_IAP
Very important bugfix for an issue which probably has been the reason for many mysterious behaviours in the past: the JsonReader class cannot be a singleton! Convert it into a normal 'instanced' class.With it being a singleton there's a major issue: when we create a new TwistyObject from a JSON file (by, for example, going to PurchaseActivity) and then we come back to the old object (by, for example, going back to the main RubikActivity) - then the JsonReader inside the old object has read the new JSON file and thus many of the 'abstract' methods in the old TwistyObject (for example getShortName()) all of the sudden start returning new values!
Purchase Pane: buttons
Win effects: first remove all effects, only then inform the Listener the whole Win sequence finished.
Changes to the initialization - initialize the 'bought objects'
switch off Masterball in the enum
minor
Masterball: correct scrambling (we must begin with a horizontal move)
Make it possible to create Diamond and Icosahedron-shaped objects to be read from json.
correct Masterball's icon.
Masterball: icon, mesh, jsons.
Masterball: detection of solved states.
Finish TouchControl for the Masterball.detection of the solved staet remains.
Progress with Masterball.Remaining: touch control's newRotation() function.
Progress with Masterball TouchControl.
Progress with Masterball - the whole object gets drawn more or less correctly now.Remaining: issue with Sink effect not fully inflating the ball and TouchControl.
progress with Masterball - Cubits app works now.
progress with TouchControls
Shape and TouchControl for the Icosahedral puzzles.
Beginnings of support for TouchControl of Icosehedral and Ball-shaped objects.
Interface: properly support object which have numScrambles less than 8.
Make Pyraminx Duo invisible.
Pyraminx Duo: json, mesh, icon, etc.
Fix for a crash.
Implement Pyraminx Duo
New Mastermorphix & Megamorphix icons, some small corrections.