// Use this for initialization void Start() { plate = GetComponentInChildren <OBSPlate>(); jets = new Dictionary <string, LiquidJet>(); LiquidJet[] jetList = GetComponentsInChildren <LiquidJet>(); foreach (LiquidJet j in jetList) { jets.Add(j.ingredientName, j); } }
public void setupGlasses(int numGlasses, FillMode fillMode, bool randomizePositions = true, bool randomizeSameGlasses = true) { if (plate == null) { plate = GetComponentInChildren <OBSPlate>(); } plate.clear(); int[] positions = new int[numPositions]; for (int i = 0; i < positions.Length; i++) { positions[i] = i; } if (randomizePositions) { Shuffle(positions); } int rPlug = randomizeSameGlasses ? UnityEngine.Random.Range(0, mixes.Length) : 0; for (int i = 0; i < numGlasses; i++) { int plug = -1; switch (fillMode) { case FillMode.Same: plug = rPlug; break; case FillMode.Different: plug = i % mixes.Length; break; case FillMode.Random: plug = UnityEngine.Random.Range(0, mixes.Length); break; } plate.addGlass(positions[i], plug); } }