void UpdateMovement(float deltaTime) { fAge += deltaTime; // if life is over, unspawn if (fAge > fLife) { BEObjectPool.Unspawn(gameObject); return; } // set alpha by life ratio float fRatio = fAge / fLife; float fAlpha = Mathf.Clamp((1.0f - fRatio) * 3.0f, 0.0f, 1.0f); groupRoot.alpha = fAlpha; // keep move up vOffset += vSpeed * deltaTime; Vector3 vWorldPos = trObject.position + vOffset; Vector3 vScreenPos = Camera.main.WorldToScreenPoint(vWorldPos); vScreenPos.z = 0; tr.position = vScreenPos; }
public void SetRowCount(int value) { // set row count range 3 ~ 7 value = Mathf.Clamp(value, 3, 7); //Debug.Log ("SetRowCount "+value.ToString ()); RowCount = value; for (int x = 0; x < Reels.Count; ++x) { if ((Reels[x] == null) || (Reels[x].gameObject == null)) { continue; } for (int y = 0; y < Reels[x].Symbols.Length; ++y) { if (Reels[x].Symbols[y] != null) { BEObjectPool.Unspawn(Reels[x].Symbols[y]); } } Reels[x].Init(this, x); } RepositionSymbols(); }
public void SymbolShiftDown(int addedValue) { SpinCount++; if (bWildFCExist && (SymbolFC == null) && (StopOffset == -1)) { Symbol symbolFC = game.GetSymbolByType(SymbolType.WildFC); if (symbolFC != null) { float yOffset = game.SymbolSizePlusMargin * (float)(game.RowCount - 1) * 0.5f; GameObject go = BEObjectPool.Spawn(symbolFC.prfab); go.transform.SetParent(tr); go.transform.localScale = Vector3.one; go.transform.localPosition = SymbolPos[3] + new Vector3(0, yOffset, 0); SymbolFC = go; //Debug.Log ("SymbolFC Created Pos:"+SymbolPos[3]); } else { Debug.Log("No Wild-FullColumn found!!!"); } } if ((SymbolFC != null) && (SpinCount == game.RowCount)) { BEObjectPool.Unspawn(SymbolFC); SymbolFC = null; } for (int y = 0; y < game.RowCount + 1; ++y) { if (y == 0) { BEObjectPool.Unspawn(Symbols[0]); //Destroy(Symbols[0]); } if (y == game.RowCount) { Symbols[y] = null; SetSymbol(y, addedValue); } else { Symbols[y] = Symbols[y + 1]; } Symbols[y].transform.localPosition = SymbolPos[y]; Symbols[y].name = "Symbol" + y.ToString(); } if (SymbolFC != null) { SymbolFC.transform.SetAsLastSibling(); } }
public void RemoveInGameUI(Transform trObject) { int idx = InGameUIs.FindIndex(x => x.trObject == trObject); if (idx != -1) { InGameUI newDU = InGameUIs[idx]; BEObjectPool.Unspawn(newDU.trUI.gameObject); InGameUIs.RemoveAt(idx); newDU = null; } }
public void SetReelCount(int value) { // set reel count range 3 ~ 10 value = Mathf.Clamp(value, 3, 10); //Debug.Log ("SetReelCount "+value.ToString ()); for (int x = 0; x < Reels.Count; ++x) { if ((Reels[x] == null) || (Reels[x].gameObject == null)) { continue; } for (int y = 0; y < Reels[x].Symbols.Length; ++y) { if (Reels[x].Symbols[y] != null) { BEObjectPool.Unspawn(Reels[x].Symbols[y]); } } DestroyImmediate(Reels[x].gameObject); } Reels.Clear(); for (int x = 0; x < value; ++x) { GameObject go = new GameObject("Reel" + x.ToString()); go.AddComponent <RectTransform>(); go.transform.SetParent(transform); go.transform.localPosition = Vector3.zero; go.transform.localScale = Vector3.one; UISGReel reel = go.AddComponent <UISGReel>(); reel.Init(this, x); Reels.Add(reel); } RepositionSymbols(); }
public void SetSymbol(int y, int Value) { if (Symbols[y] != null) { BEObjectPool.Unspawn(Symbols[y]); } //Debug.Log ("SetSymbol y:"+y+" Value:"+Value); Symbol newSymbol = game.GetSymbol(Value); //Debug.Log ("newSymbol "+newSymbol); if (newSymbol.type == SymbolType.WildFC) { newSymbol = game.GetSymbolByType(SymbolType.Wild); } GameObject go = BEObjectPool.Spawn(newSymbol.prfab); //Debug.Log ("go "+go); go.transform.SetParent(tr); go.transform.localScale = Vector3.one; go.transform.localPosition = SymbolPos[y]; Symbols[y] = go; }