public PhysicalUIBlockController CreateBlock( Transform prefab, string text, Vector3 position, Vector3 scale, PhysicalUIBlockController.Action action) { Transform block = Instantiate( prefab, position, Quaternion.identity); block.transform.localScale = scale; PhysicalUIBlockController blockController = block.GetComponent <PhysicalUIBlockController>(); float textStretch = scale.z / scale.x; blockController.SetText(text, textStretch); blockController.SetAction(action); createdObjects.Add(block.gameObject); return(blockController); }
public void CreateLevelSelectBlocks(Vector3 localOrigin) { levelSelectCounter = mazeGenerator.maxLevelReached; CreateBlock( redBlockPrefab, "Your current\nbest: " + mazeGenerator.maxLevelReached, localOrigin + new Vector3(0.0f, -2.0f, 1.25f), new Vector3(1.5f, 1.0f, 1.0f), SilentDoNothing); levelSelectDisplayController = CreateBlock( redBlockPrefab, levelSelectCounter.ToString(), localOrigin + new Vector3(0.0f, -2.0f, 0.0f), new Vector3(1.0f, 1.0f, 1.0f), SilentDoNothing); CreateBlock( blueBlockPrefab, "-", localOrigin + new Vector3(-1.25f, -2.0f, 0.0f), new Vector3(0.75f, 0.75f, 0.75f), OnLevelSelectMinus); CreateBlock( blueBlockPrefab, "+", localOrigin + new Vector3(1.25f, -2.0f, 0.0f), new Vector3(0.75f, 0.75f, 0.75f), OnLevelSelectPlus); CreateBlock( blueBlockPrefab, "JUMP TO\nLEVEL", localOrigin + new Vector3(0.0f, -3.0f, -1.75f), new Vector3(1.5f, 1.0f, 1.0f), OnLevelSelect); CreateBlock( greenBlockPrefab, "MAIN\nSCREEN", localOrigin + new Vector3(-3.0f, -3.0f, 1.25f), new Vector3(1.3f, 1.0f, 1.0f), OnGlideToMainScreen); }