Make the Masterball built-in - we need to displace the old version of it with an old scrambling mechanism.
Debugging.
Make it possible to actually play at the MAX level the objects which have too many rostations for a normal SCRAMBLE effect (and instead do a FAST_SCRAMBLE)
New PruningTable data structure for solvers.
Master Icosamate: mesh, jsons.
Master Icosamate: first code.
Icosamate: switch it off
Icosamate: mesh, jsons.
Progress with Icosamate
first attempt at Icosamatenew PL tutorial for the Crazy Planets
Tablebase-based scrambling.
Close assets after use.
Introduce InitAssets. We'll use this later to pass on references to the tablebase file to the TwistyObject (so that it can use this for perfect scrambling)
Diamond Skewb solver should be fully working now.
Progress with the Diamond Skewb solver.
New button in the solver screen: reset all textures.
fix for a crasher.
Bump first 4 jsons to version 8
Constants for scrambling types.
Pyraminx Duo solver: initial code which creates the unpacked DB (does not work still)
Progress with the Pyraminx Duo solver
Progress with PDuo solver
Withdraw recent changes about the signatures.
- add the Pyraminx Duo solver to the list- make the signature of an object independent of its location in the ObjectType enum
- fix for the newly introduced TwistyObjectSolved- fix for the solvedQuats of the Trajber 4x4
separate the 'isSolved' part from TwistyObject
Increate number of Burr Cube scrambles to 487.
Minor
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.
Bugfixes for touch control - specifically for furious swiping and concurrect backing of moves.
Some more debugging.
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.
Minor.
Fix for a crasher.
Make it possible to (fully!) read version 6 JSONs - some users might have Pyraminx Duo v. 6 already downloaded!
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.
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: dmesh, jsons. Only scrambling now missing.
Beginnings of support for AI Cube.
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.
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.
Beginnings of support for the Camouflage 3x3x3.
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.
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)
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.
Minor bugfixes for creating JSON files version 6 (with per-cubit lists of VertexEffects)
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
Changes to the initialization - initialize the 'bought objects'
switch off Masterball in the enum
Make it possible to create Diamond and Icosahedron-shaped objects to be read from json.
Masterball: icon, mesh, jsons.
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.
Shape and TouchControl for the Icosahedral puzzles.
Beginnings of support for TouchControl of Icosehedral and Ball-shaped objects.
Make Pyraminx Duo invisible.
Pyraminx Duo: json, mesh, icon, etc.
Implement Pyraminx Duo
New Mastermorphix & Megamorphix icons, some small corrections.
Mastermorphix & Megamorphix: finishing touches (meshes, jsons, icons, final adjustments)
Take pillowing into account when doing TouchControlShapemod.
Corrections for Megamorphix.
Add Mastermorphix & Megamorphix.
More support for pillowing; pillow Morphix and Jing by default.
Introduce support for per-object pillowing.
IAP part 6: new 'Present' object effect (cont'd)
IAP part 6: new 'Present' object effect.
IAP, part 1: Introduce the concept of a 'free' and 'not free' object to
- ObjectType- DownloadedObject- RubikObject- jsons
Move the 'bandaged' button back to the main menu.
Simplification for the new way of storing records.
New way to store records, comopletely independent on the number of scrambles.Do away with the weird 'getDBLevel' thing.
Make Mixup & Mixup Plus built-in