public void doAnEffect(EffetcType effetc) { GameObject effetcObject = null; Vector3 effetcPos = player.transform.position; foreach (GameObject eObject in effetcs) { EffetcController eController = eObject.GetComponent <EffetcController>(); if (eController != null) { switch (effetc) { case EffetcType.None: break; case EffetcType.LandingPuff: if (eController.ID.Equals("puff")) { effetcObject = eObject; effetcPos = new Vector3(effetcPos.x, 1.0f, effetcPos.z); } break; case EffetcType.DeathPuff: if (eController.ID.Equals("death")) { effetcObject = eObject; effetcPos = new Vector3(effetcPos.x, effetcPos.y + 3.0f, effetcPos.z + 3.0f); } break; case EffetcType.StumplePuff: if (eController.ID.Equals("stumple")) { effetcObject = eObject; effetcPos = new Vector3(effetcPos.x, effetcPos.y + 3.0f, effetcPos.z); } break; } } } if (effetcObject != null) { GameObject createdEffetc = (GameObject)GameObject.Instantiate(effetcObject, effetcPos, Quaternion.identity); createdEffetc.transform.parent = effetcsRoot.transform; } }
public void doAnEffect(EffetcType effetc) { if (effetcsRoot.transform.childCount >= 5 && effetc != EffetcType.QuicScore) { return; } GameObject effetcObject = null; Vector3 effetcPos = player.transform.position; foreach (GameObject eObject in effetcs) { EffetcController eController = eObject.GetComponent <EffetcController>(); if (eController != null) { switch (effetc) { case EffetcType.None: break; case EffetcType.LandingPuff: if (eController.ID.Equals("puff")) { effetcObject = eObject; effetcPos = new Vector3(effetcPos.x, 1.0f, effetcPos.z); } break; case EffetcType.PointPickup: if (eController.ID.Equals("point")) { effetcObject = eObject; effetcPos = new Vector3(effetcPos.x, effetcPos.y + 3.0f, effetcPos.z); } break; case EffetcType.PowerupPickUp: if (eController.ID.Equals("powerup")) { effetcObject = eObject; effetcPos = new Vector3(effetcPos.x, effetcPos.y + 3.0f, effetcPos.z); } break; case EffetcType.DeathPuff: if (eController.ID.Equals("death")) { effetcObject = eObject; effetcPos = new Vector3(effetcPos.x, effetcPos.y + 3.0f, effetcPos.z + 3.0f); } break; case EffetcType.StumplePuff: if (eController.ID.Equals("stumple")) { effetcObject = eObject; effetcPos = new Vector3(effetcPos.x, effetcPos.y + 3.0f, effetcPos.z); } break; case EffetcType.QuicScore: if (eController.ID.Equals("quickscore")) { effetcObject = eObject; effetcPos = new Vector3(effetcPos.x, effetcPos.y + 4.0f, effetcPos.z + 15.0f); } break; } } } if (effetcObject != null) { GameObject createdEffetc = (GameObject)GameObject.Instantiate(effetcObject, effetcPos, Quaternion.identity); createdEffetc.transform.parent = effetcsRoot.transform; // Quick Score Points if (effetc == EffetcType.QuicScore) { int[] points = new int[4] { 5, 10, 20, 50 }; int selectedPoint = points[UnityEngine.Random.Range(0, points.Length)]; float pitch = 0; switch (selectedPoint) { case 5: pitch = 0.9f; break; case 10: pitch = 1.0f; break; case 20: pitch = 1.3f; break; case 50: pitch = 1.6f; break; } GameGlobals.Instance.audioController.playSoundPitched("UIQuestion", pitch); GameGlobals.Instance.achievements.increaseScore(selectedPoint); Transform pointsRoot = createdEffetc.transform.Find("pointsGroup"); if (pointsRoot != null) { foreach (Transform point in pointsRoot) { if (point.name.Equals(selectedPoint.ToString())) { point.gameObject.SetActive(true); } else { point.gameObject.SetActive(false); } } } } } }