Progress with Circle 2x2.
First attempt at a Circle 2x2 - but this is implemented wrong. The smallInner pieces next to the FLD corner should never move relative to the corner.
Minor correction.
Crazy Planets: J1 M1 mode works now.
Crazy Planets: now can be created in J1 M0 mode. J1 M1 still doesn't work.
Crazy Planets: introduce cubit type and offset to the JSON; create (shared) mesh and all the JSONs.
Crazy Planets: minor
Crazy Planets: progress
Make the 4 built-in BandagedCuboids use the introduced InitData concept and remove all specific bandaged object classes.
Introduce InitData, a data structure used to initialize a TwistyObject.Current (optional) members: int[] numLayers, int param [intended: type of the Crazy 3x3 planet], float[][] pos [position of a bandaged cube] )
Crazy 3x3: icon, jsons, mesh.
Crazy 3x3: initial version. Still stickers need to be adjusted.
Mixup Plus Cube: icon,mesh,jsons.
Mixup Plus Cube: beginnings
Bump app version to 1.10.4
Mixup Cube: mesh, jsons, icon.
Big step towards the Mixup Cube.
Finally fix the bad bug where people could submit impossible records!
Slight memory saving.
Generalize the max number of moving parts and max size of quat group.
Fix for a crasher.
Progess with Mixup.
one more crash fix and a bump to 1.10.3
Improve scrambling locally-produced bandaged cuboid.
Introduce ObjectSignature that can incorporate 192-bit signatures (for 5x5x5 bandaged cubes).ObjectScrambler does not fully work yet.
Bandaged: add support for two-fingered rotation in the Creator.
Actually remove preferences of a deleted bandaged cube in a safe way.
Improvements.
Support reading num of scrambles from json version 2.
Bugfix
Preparation for Mixup Cube: take advantage of the recent bump in MAJOR_VERSION number and change the format of basicAngles to int[][] 'per-axis-per-layer' [ Mixup Cube has different basicAngle in its middle layers (8) - and different in its edge layers (4) ]
BandagedCreator: colorful cube.
Progress with cubit quaternions.
FactorySticker: further improvements.
preparation for dual animation on/off modes in BandagedPlay
New Pentultimate puzzle.
Simplify the way we remember cubit quats, and delete those from SharedPrefs when we delete a bandaged object.
minor
Starminx I: icon
Starminx I: progress
Starminx I: beginnings
Bandaged 3x3: remember object state and move history.
Make Container built-in.
Bugfix: if a puzzle has overridden 'getCubitFaceMap()' method (like for example Container, in order to make internal walls colorful) then before this might have screwed up computation of the solvedGroups. Correct that.
Bump version to 1.10.0Add Trajber 4x4, Mirror 4x4, Axis, Fisher, Pyramorphix to the list of built-in objects.
Mode the 'iconMode' from static variable in ObjectControl to member varaible in TwistyObject (safer)
Trajber's 4x4 : JSONs, mesh.
Special isSolved() function for the case where a puzzle has no corner or edge cubits (Trajber 4x4!)
Trajber's 4x4 : almost finished, what remains is the 'solved' function.
Beginnings of support for Trajber's 4x4.
Recreate Pyraminx Crystal mesh
Add Vietnamese Tutorials - json files
Pyraminx Crystal: puzzle works.
Pyraminx Crystal: beginnings.
(hopefully!) finally fix the long-standing bug where people could cheat and submit impossible records.
New, generic bandaged 3x3 class 'TwistyBandagedAbstract'.
Now, (almost!) any bandaged 3x3 can be created by extending this class and implementing one abstract method 'getPositions()'. Almost, because there's still one restriction: currently all cubits need to be one of the 5 allowed types: 1x1x1, 2x1x1, 3x1x1, 2x2x1, 2x2x2....
Preparation for local creation of puzzles: remove the 'ObjectType' enum from TwistyObject class.
up the number of scrambles of the BAN2 and BAN4 objects to respectively 20 and 22.
New, generalized ScrambleState generator that should work for any bandaged 3x3.
Minor.
Void Cube: switch it off.
Void Cube: create assets. Puzzle finished.
Void Cube: beginning.
Axis Cube: finish implementation
Progress with Axis Cube - model the first 2 cubits.
Beginnings of Axis Cube.
solve the 'wasDownloadableButNowIsBuiltIn()' bug in 1.9.6 and 1.9.7.
new API to enable/disable face culling
Simplify coloring internal stickers
Make it possible to color internal walls as well.
Bugfix for a rare (?) crash.
Introduce possibility not to export some already implemented objects to the app.
Downloaded Objects: subtle bugfix. We cannot use ObjectType in ObjectControl to check if two objects are the same because DownloadedObjects have ObjectType null !
Downloaded Objects more or less work now.
Re-organize tutorial list so that we can pull this one from JSON files.
Step towards tutorial JSON files.
Configurable internal colors. This somehow screwed up the Container!
Finish the Container.
Container Cube: mostly done.
Add Pyramorphix.
Add Fisher Cube.
Add 4x4 Mirror Blocks.
Add debugging for the case when people submit suspicious records.
change order of KILO_5 and MEGA_3.
Implement new TouchControlShapemod
Change the order
Implement the Windmill Cube
Remove 3 out of 4 object icons.
unify every isSolved() routine except one: part II : new JSONs.
unify every isSolved() routine except one - the Dino4 is still special.
Preparation for further unification of the isSolved() routine.
fix the non-standard isSolved() functions to reflect the changes in order of the quaternions in the group.
Standarize two next functions - getSolvedQuats and getSolvedFunctionIndex.Now all objects except Dino6, Dino4 and Square-2 have them the same.