Project

General

Profile

Actions

Wiki » History » Revision 19

« Previous | Revision 19/61 (diff) | Next »
Distorted Admin, 04/16/2020 01:01 PM


Overview

Magic Cube is an application which lets one play with Cubes and Pyraminxes of any size. It contains graphhics effects provided by the Distorted library.
Users can submit their best times to a central High Scores list and download results made by others.
A 3x3x3 Cube solver and a Pretty Patterns tutorial is in the plans.

Magic Cube is open source and released under the terms of the GNU General Public License v2 (GPL).

Source code

git clone http://distorted.org/git/distorted-library.git
git clone http://distorted.org/git/distorted-cube.git 

Tutorials

How to add a new Rubik Object

Currently implemented Objects: a Cube and a Pyraminx.

How to add a new Transition Effect

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 and add the new class to the org.distorted.effect.WinEffect.Type enum.

The new effect will automatically become available in the Effects dialog.

How to add a new Pretty Pattern

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 ) 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.

The new list of Patterns will automatically become available in the Patterns dialog.

How to add a new Solver

Work in the org.distorted.solvers package. First create a subdirectory containing your actual solver, then connect it to the rest of the progra 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.

Currently implemented solvers: a near-perfect, instantenous Cube3 solver.

Updated by Distorted Admin over 4 years ago · 19 revisions