public JigsawGrid(Vector2Int lvlIndicator, string jigsaw_subject, string gameDifficulty, Canvas parentCanvas) { this.parentCanvas = parentCanvas; this.rows = lvlIndicator.y; this.cols = lvlIndicator.x; this.sprites_array = Resources.LoadAll <Sprite>("Sprites/" + jigsaw_subject); this.tiles_grid = new TileTracker[rows * cols]; this.gameObjectGrid = MonoBehaviour.Instantiate(Resources.Load <GameObject>("Jigsaw_prefabs/Grid_" + gameDifficulty), parentCanvas.transform, false); TileTracker[] gridChildren = gameObjectGrid.GetComponentsInChildren <TileTracker>(); int key = 0; for (int i = 0; i < rows * cols; i++) { TileTracker tileTracker = gridChildren[key]; tileTracker .SetOriginTileKey(key) .SetCurrentTileKey(key) .SetStationaryPosition(gridChildren[key].transform.localPosition) .SetSprite(sprites_array[key]); tiles_grid[key++] = tileTracker; } }
public void StartGame() { _tileTracker = new TileTracker(_board.Size.x, _board.Size.y); _scoreTracker.Refresh(); _gameTimer.StartTimer(GameOver); _moleSpawner.StartSpawner(null, null, _scoreTracker.AddScore); }
public void StartSpawner(Action onHit, Action onMiss, Action <float> scoreCallback) { _tileTracker = new TileTracker(_board.Size.x, _board.Size.y); _running = true; // @TODO: less dynamic calculations UpdateSpawnRate(); _timer = Time.time; _onHit = onHit; _onMiss = onMiss; _scoreCallback = scoreCallback; }
public static void EnableFlames(TileTracker tile, bool top, bool bottom, bool left, bool right) { ParticleSystem[] fireArray = tile.GetComponentsInChildren <ParticleSystem>(); ParticleSystem.EmissionModule p_bottom = fireArray[0].emission; p_bottom.enabled = bottom; ParticleSystem.EmissionModule p_up = fireArray[1].emission; p_up.enabled = top; ParticleSystem.EmissionModule p_left = fireArray[2].emission; p_left.enabled = left; ParticleSystem.EmissionModule p_right = fireArray[3].emission; p_right.enabled = right; } //method for setting particular tile edges on fire
public ModConfig(IModHelper helper, IDictionary <String, String> options) { _options = options; _helper = helper; _showFishInfo = new TileTracker(helper); _elementsToDispose = new List <IDisposable>() { _showFishInfo }; _showFishInfo.ManageEventRegistration(true); // Version thisVersion = Assembly.GetAssembly(this.GetType()).GetName().Version; }
public void MarkNewPlacement(TileTracker dragged, TileTracker on, bool isInit) { Vector3 onPos = on.GetStationaryPosition(); Vector3 draggedPos = dragged.GetStationaryPosition(); int onCurrentKey = on.GetcurrentTileKey(); int draggedCurrentKey = dragged.GetcurrentTileKey(); on.SetStationaryPosition(draggedPos); on.SetCurrentTileKey(draggedCurrentKey); dragged.SetStationaryPosition(onPos); dragged.SetCurrentTileKey(onCurrentKey); if (!isInit) { CheckProperPlacement(); } }
// Start is called before the first frame update void Start() { myTile = myManager.myTileTracker; SpriteRenderer mySprite = GetComponent <SpriteRenderer>(); float rnd = Random.Range(0f, 1f); if (rnd < 0.4f) { mySprite.sprite = myTile.floorTileSprite[0]; } else if (rnd < 0.4f) { mySprite.sprite = myTile.floorTileSprite[1]; } else if (rnd < 0.525f) { mySprite.sprite = myTile.floorTileSprite[2]; } else if (rnd < 0.65f) { mySprite.sprite = myTile.floorTileSprite[3]; } else if (rnd < 0.85f) { float rnd2 = Random.Range(0f, 1f); if (rnd2 < 0.25f) { mySprite.sprite = myTile.floorTileSprite[5]; } else if (rnd2 < 0.5f) { mySprite.sprite = myTile.floorTileSprite[6]; } else if (rnd2 < 0.75f) { mySprite.sprite = myTile.floorTileSprite[7]; } else { mySprite.sprite = myTile.floorTileSprite[8]; } } else if (rnd < 0.925f) { float rnd2 = Random.Range(0f, 1f); if (rnd2 < 0.5f) { mySprite.sprite = myTile.floorTileSprite[9]; } else { mySprite.sprite = myTile.floorTileSprite[10]; } } else if (rnd < 0.975f) { mySprite.sprite = myTile.floorTileSprite[4]; } else { float rnd2 = Random.Range(0f, 1f); if (rnd2 < 1f / 11f) { mySprite.sprite = myTile.floorTileSprite[11]; } else if (rnd2 < 2f / 11f) { mySprite.sprite = myTile.floorTileSprite[12]; } else if (rnd2 < 3f / 11f) { mySprite.sprite = myTile.floorTileSprite[13]; } else if (rnd2 < 4f / 11f) { mySprite.sprite = myTile.floorTileSprite[14]; } else if (rnd2 < 5f / 11f) { mySprite.sprite = myTile.floorTileSprite[15]; } else if (rnd2 < 6f / 11f) { mySprite.sprite = myTile.floorTileSprite[16]; } else if (rnd2 < 7f / 11f) { mySprite.sprite = myTile.floorTileSprite[17]; } else if (rnd2 < 8f / 11f) { mySprite.sprite = myTile.floorTileSprite[18]; } else if (rnd2 < 9f / 11f) { mySprite.sprite = myTile.floorTileSprite[19]; } else if (rnd2 < 10f / 11f) { mySprite.sprite = myTile.floorTileSprite[20]; } else { mySprite.sprite = myTile.floorTileSprite[21]; } } Destroy(this); }