public static void LinkMagicCubeManagerAndUI(MagicCubeManager manager, MainGameUI mainGameUI) { manager.LinkGameTimer(mainGameUI); manager.LinkUndoRedo(mainGameUI); manager.LinkProcessUndoRedoPossible(mainGameUI); manager.LinkProcessOpenMenu(mainGameUI); }
public ActionRotateYXCounterClockWise(GameObject magicCube, MagicCubeManager manager, List <GameObject> cubeTileList, bool bStartImmediately = false) : base(magicCube, manager, cubeTileList, bStartImmediately) { if (bStartImmediately) { undoAction = new ActionRotateYXClockWise(magicCube, manager, cubeTileList, false); } }
public void CreateMagicCube(int size) { if (manager != null) { manager.Dispose(); } manager = new MagicCubeManager(tileRef, size, new Vector3(0, 2, 0)); }
public CubeAction(GameObject magicCube, MagicCubeManager manager, List <GameObject> cubeTileList, bool bStartImmediately = false) { this.cubeTileList = cubeTileList; this.bStartAction = bStartImmediately; this.magicCube = magicCube; this.manager = manager; if (!bStartImmediately) { timeToCompleteAction /= undoModifier; } else { if (!manager.IsLoading()) { StartAction(); } } }
public static MagicCubeSaveData CreateSaveData(MagicCubeManager manager) { MagicCubeSaveData savedata = new MagicCubeSaveData(); //deep copies to be safe. foreach (var cubeTile in manager.GetCubeTileListReference()) { savedata.positions.Add(Vector3Serializable.CreateVector3Serializable(cubeTile.transform.position)); savedata.rotations.Add(QuaternionSerializable.CreateQuaternionSerializable(cubeTile.transform.rotation)); savedata.cubeTileIDs.Add(cubeTile.GetComponent <CubeTileInfo>().GetID()); } foreach (var action in manager.GetUndoListReference()) { savedata.undoActions.Add(ActionSaveData.CreateSaveData(action)); } savedata.magicCubeSize = manager.GetMagicCubeSize(); savedata.time = manager.GetTimePassed(); return(savedata); }
public void Init(MagicCubeManager magicCubeManager) { this.magicCubeManager = magicCubeManager; timerText.text = "00:00"; }
internal static void LinkMagicCubeManagerAndFinish(MagicCubeManager manager, FinishCanvasHandler finishCanvasHandler) { manager.LinkProcessFinishGame(finishCanvasHandler); }
public void Init(MagicCubeManager manager) { this.manager = manager; }