bool CanSelect() { if (currentPowerUp < 0) { return(false); } string powerUpName = powerUpPanel.GetChild(currentPowerUp).name.ToUpper(); try { PowerUPType powerUp = (PowerUPType)Enum.Parse(typeof(PowerUPType), powerUpName); if (powerUpTracker.ContainsKey(powerUp)) { if (powerUpTracker[powerUp] == 0) { return(false); } } } catch { return(false); } return(true); }
public void CreateAndFlyPowerUP(PowerUPType type, PlayerData pm) { PowerUP powerUP = Instantiate(PowerUPPrefab); powerUP.SetPowerType(type, powerUPtypeSprites.Find(x => x.type == type).Sprite); powerUP.transform.position = pm.gameObject.transform.position; powerUP.FlyToTarget(GetRandomTargetTile(true, true)); }
public int GetClampPowerUpValue(PowerUPType type, int value) { if (ClampUpgrades == false || clampedPowerUPTypeAmount == null || clampedPowerUPTypeAmount.ContainsKey(type) == false) { return(value); } return(Mathf.Clamp(value, 0, clampedPowerUPTypeAmount[type])); }
private void RemoveNegativeEffect() { if (HasNegativEffect == false) { return; } lastEffect = PowerUPType.Bomb; powerUPTypeToAmount[lastEffect] = 0; }
//void AddOption(PowerUPType powerUp) { // for (int i = 0; i < powerUpPanel.childCount; i++) { // string powerUpName = powerUpPanel.GetChild(i).name.ToUpper(); // if ((PowerUPType)Enum.Parse(typeof(PowerUPType), powerUpName) == powerUp) // powerUpPanel.GetChild(i).GetComponentInChildren<Text>().gameObject.SetActive(true); // } //} void RemoveOption(PowerUPType powerUp) { for (int i = 0; i < powerUpPanel.childCount; i++) { string powerUpName = powerUpPanel.GetChild(i).name.ToUpper(); if ((PowerUPType)Enum.Parse(typeof(PowerUPType), powerUpName) == powerUp) { powerUpPanel.GetChild(i).GetComponentInChildren <Text>().gameObject.SetActive(false); } } }
private void AddPowerUp(PowerUPType type) { switch (type) { case PowerUPType.DoubleJump: doubleJumpPowerUp.SetActive(true); break; case PowerUPType.Sprint: sprintPowerUp.SetActive(true); break; } }
public void ReactOnPowerUpAdded(PowerUPType powerUPType) { switch (powerUPType) { case PowerUPType.DoubleJump: thirdPersonCharacter.doubleJumpUnlocked = true; break; case PowerUPType.Sprint: thirdPersonUserControl.sprintUnlocked = true; break; } }
// For saves public void ReactOnPowerUpAdded(PowerUPType powerUPType) { switch (powerUPType) { case PowerUPType.DoubleJump: audioManager.PlaySFx(SFXType.PowerUpJump); powerUpDoubleJumpUnlocked = true; break; case PowerUPType.Sprint: audioManager.PlaySFx(SFXType.PowerUpSprint); powerUpSprintUnlocked = true; break; } }
void PowerUpPlayer() { if (currentPowerUp < 0) { return; } string powerUpName = powerUpPanel.GetChild(currentPowerUp).name.ToUpper(); PowerUPType powerUp = (PowerUPType)Enum.Parse(typeof(PowerUPType), powerUpName); switch (powerUp) { case PowerUPType.SPEEDUP: FindObjectOfType <Player>().speed += 1.5f; break; case PowerUPType.MISSLES: FindObjectOfType <Player>().AddLauncher(); break; case PowerUPType.EXTRABLASTERS: FindObjectOfType <Player>().AddBlaster(); break; case PowerUPType.SHIELD: FindObjectOfType <Player>().ShieldsUp(); break; default: break; } if (powerUpTracker.ContainsKey(powerUp)) { powerUpTracker[powerUp]--; if (powerUpTracker[powerUp] == 0) { RemoveOption(powerUp); } } ResetOption(); }
private void OnBoxDestroy(Vector3Int vector3Int) { int random = UnityEngine.Random.Range(0, 8); PowerUPType put = PowerUPType.Blastradius; switch (random) { case 0: case 1: case 2: //Speed, Blastradius, Bomb put = (PowerUPType)random; break; case 3: //Push, Throw put = (PowerUPType)(random + UnityEngine.Random.Range(0, 2)); break; case 4: //Diarrhea, Joint, Superspeed int negative = UnityEngine.Random.Range(0, 16); if (negative > 2) { //no powereffect return; } put = (PowerUPType)5 + negative; break; default: return; } PowerUP pu = Instantiate(PowerUPPrefab); pu.SetPowerType(put, powerUPtypeSprites.Find(x => x.type == put).Sprite); pu.transform.position = new Vector3(0.5f, 0.5f) + vector3Int; Tiles[vector3Int.x, vector3Int.y].Type = TileType.Floor; }
internal void AddPowerUP(PowerUPType powerType) { if (HasNegativEffect) { MapController.Instance.CreateAndFlyPowerUP(lastEffect, PlayerData); RemoveNegativeEffect(); } switch (powerType) { case PowerUPType.Diarrhea: case PowerUPType.Joint: case PowerUPType.Superspeed: audioSource.PlayOneShot(Array.Find(PlayerData.powerUPsounds, x => x.type == powerType).clip); NegativeEffectTimer = NegativeEffectTime; break; default: audioSource.PlayOneShot(PlayerData.OtherPowerUPSound); break; } powerUPTypeToAmount[powerType]++; lastEffect = powerType; }
public void ConfigureType(PowerUPType type) { powerUPType = type; thisMeshRenderer.material = type == PowerUPType.DoubleJump ? jumpMaterial : sprintMaterial; }
public PowerUp(PowerUPType type, Vector2Int pos) { this.type = type; this.pos = pos; }
internal void SetPowerType(PowerUPType powerUPType, Sprite sprite) { PowerType = powerUPType; GetComponent <SpriteRenderer>().sprite = sprite; }
public PowerUp SpawnPowerUp(Vector3 pos, PowerUPType type) { var p = powerPool.Spawn(pos, type); return(p); }
public static DBPowerUP PowerUP(PowerUPType type) { return(instance.powerUps[type]); }