Wiki » History » Version 33
Distorted Admin, 04/19/2020 11:35 AM
| 1 | 2 | Distorted Admin | h1. Overview |
|---|---|---|---|
| 2 | 1 | Distorted Admin | |
| 3 | 6 | Distorted Admin | Magic Cube is an application which lets one play with Cubes and Pyraminxes of any size. It contains graphhics effects provided by the "Distorted":https://distorted.org/redmine/projects/distorted-android/wiki/wiki library. |
| 4 | 5 | Distorted Admin | Users can submit their best times to a central High Scores list and download results made by others. |
| 5 | A 3x3x3 Cube solver and a Pretty Patterns tutorial is in the plans. |
||
| 6 | |||
| 7 | 2 | Distorted Admin | Magic Cube is open source and released under the terms of the "GNU General Public License v2":http://www.gnu.org/licenses/old-licenses/gpl-2.0.html (GPL). |
| 8 | 1 | Distorted Admin | |
| 9 | 32 | Distorted Admin | h1. Downloads |
| 10 | |||
| 11 | 33 | Distorted Admin | Google play : https://play.google.com/store/apps/details?id=org.distorted.magic |
| 12 | Amazon App Store: https://www.amazon.co.uk/Developer-Magic-Cube/dp/B0875PSWTK |
||
| 13 | 32 | Distorted Admin | |
| 14 | 2 | Distorted Admin | h1. Source code |
| 15 | 1 | Distorted Admin | |
| 16 | 2 | Distorted Admin | <pre> |
| 17 | 1 | Distorted Admin | git clone http://distorted.org/git/distorted-library.git |
| 18 | git clone http://distorted.org/git/distorted-cube.git |
||
| 19 | 2 | Distorted Admin | </pre> |
| 20 | 3 | Distorted Admin | |
| 21 | h1. Tutorials |
||
| 22 | 13 | Distorted Admin | |
| 23 | 30 | Distorted Admin | |
| 24 | 3 | Distorted Admin | h2. How to add a new Rubik Object |
| 25 | |||
| 26 | 21 | Distorted Admin | * Write a new class which extends "RubikObject":https://distorted.org/redmine/projects/magic-cube/repository/magiccube/revisions/master/entry/src/main/java/org/distorted/objects/RubikObject.java |
| 27 | 22 | Distorted Admin | * Write a new class which extends "RubikObjectMovement":https://distorted.org/redmine/projects/magic-cube/repository/magiccube/revisions/master/entry/src/main/java/org/distorted/objects/RubikObjectMovement.java |
| 28 | 23 | Distorted Admin | * add your new classes to the "RubikObjectList":https://distorted.org/redmine/projects/magic-cube/repository/magiccube/revisions/master/entry/src/main/java/org/distorted/objects/RubikObjectList.java enum (here you will also need to provide a small icon to add to the "play" drop-down object list) |
| 29 | 20 | Distorted Admin | |
| 30 | and your new Object will automatically become available in the "Play" drop-down list. |
||
| 31 | 3 | Distorted Admin | |
| 32 | 24 | Distorted Admin | Currently implemented Objects: a "Cube":https://distorted.org/redmine/projects/magic-cube/repository/magiccube/revisions/master/entry/src/main/java/org/distorted/objects/RubikCube.java and a "Pyraminx":https://distorted.org/redmine/projects/magic-cube/repository/magiccube/revisions/master/entry/src/main/java/org/distorted/objects/RubikPyraminx.java. |
| 33 | 3 | Distorted Admin | |
| 34 | 30 | Distorted Admin | |
| 35 | 3 | Distorted Admin | h2. How to add a new Transition Effect |
| 36 | |||
| 37 | 25 | Distorted Admin | If you would like to add, say, a new WIN effect (i.e. animation which happens when the Object gets solved) all you need to do is add a new class which extends "org.distorted.effect.WinEffect":https://distorted.org/redmine/projects/magic-cube/repository/magiccube/revisions/master/entry/src/main/java/org/distorted/effects/win/WinEffect.java and add the new class to the "org.distorted.effect.WinEffect.Type":https://distorted.org/redmine/projects/magic-cube/repository/magiccube/revisions/master/entry/src/main/java/org/distorted/effects/win/WinEffect.java enum. |
| 38 | 15 | Distorted Admin | |
| 39 | 16 | Distorted Admin | The new effect will automatically become available in the "Effects dialog":https://distorted.org/redmine/projects/magic-cube/repository/magiccube/revisions/master/entry/src/main/java/org/distorted/dialogs/RubikDialogEffects.java. |
| 40 | 17 | Distorted Admin | |
| 41 | 30 | Distorted Admin | |
| 42 | 17 | Distorted Admin | h2. How to add a new Pretty Pattern |
| 43 | |||
| 44 | 26 | Distorted Admin | If you've got a collection of Pretty Patterns for a given (already implemented!) RubikObject, say a Pyraminx 3x3x3, all you need to do to connect it to the Magic Cube is to create a table of Strings describing the patterns ( format needs to follow the one already done in "Cube Patterns":https://distorted.org/redmine/projects/magic-cube/repository/magiccube/revisions/master/entry/src/main/java/org/distorted/patterns/RubikPatternCube3.java ) and add the new pattern list to the "org.distorted.patterns.RubikPatternList":https://distorted.org/redmine/projects/magic-cube/repository/magiccube/revisions/master/entry/src/main/java/org/distorted/patterns/RubikPatternList.java enum. |
| 45 | 17 | Distorted Admin | |
| 46 | The new list of Patterns will automatically become available in the "Patterns dialog":https://distorted.org/redmine/projects/magic-cube/repository/magiccube/revisions/master/entry/src/main/java/org/distorted/dialogs/RubikDialogPattern.java. |
||
| 47 | 18 | Distorted Admin | |
| 48 | 30 | Distorted Admin | |
| 49 | 18 | Distorted Admin | h2. How to add a new Solver |
| 50 | 1 | Distorted Admin | |
| 51 | 31 | Distorted Admin | Work in the "org.distorted.solvers":https://distorted.org/redmine/projects/magic-cube/repository/magiccube/revisions/master/show/src/main/java/org/distorted/solvers package. First create a subdirectory containing the code of your actual solver, then connect it to the rest of the program by modifying the "org.distorted.solvers.SolverMain":https://distorted.org/redmine/projects/magic-cube/repository/magiccube/revisions/master/entry/src/main/java/org/distorted/solvers/SolverMain.java class, and finally add the new solver to the "org.distorted.solvers.ImplementedSolversList":https://distorted.org/redmine/projects/magic-cube/repository/magiccube/revisions/master/entry/src/main/java/org/distorted/solvers/ImplementedSolversList.java enum. |
| 52 | 18 | Distorted Admin | |
| 53 | 19 | Distorted Admin | Currently implemented solvers: "a near-perfect, instantenous Cube3 solver":https://distorted.org/redmine/projects/magic-cube/repository/magiccube/revisions/master/show/src/main/java/org/distorted/solvers/cube3. |