// Use this for initialization void Start() { SpriteRenderer spriteItem = this.GetComponentInChildren <SpriteRenderer>(); spriteItem.sprite = spritesItems[0]; type = ((Type)Random.Range(0, 7)); spriteItem.transform.localScale = new Vector3(7f, 7f, 1); switch (Type1) { case Items.Type.FIRERATE: // necessite acces à RangedAttacks Magnitude = 0.25f; spriteItem.sprite = spritesItems[5]; break; case Items.Type.HEALTH: // necessite acces à Health Magnitude = 50; spriteItem.sprite = spritesItems[0]; break; case Items.Type.INVICIBILITY: // necessite acces à Health spriteItem.sprite = spritesItems[1]; timer = 5; break; case Items.Type.MVTSPEED: spriteItem.sprite = spritesItems[2]; Magnitude = 25; break; case Items.Type.POWER: // necessite acces à RangedAttacks spriteItem.sprite = spritesItems[3]; Magnitude = 0.35f; break; case Items.Type.REPAIR: spriteItem.sprite = spritesItems[4]; break; case Items.Type.WEAPON: // necessite acces à RangedAttacks spriteItem.transform.localScale = new Vector3(1.5f, 1.5f, 1); weapon = ((RangedAttack.Weapon)Random.Range(1, 3)); switch (weapon) { case RangedAttack.Weapon.SHOTGUN: spriteItem.sprite = spritesWeapon[1]; break; case RangedAttack.Weapon.MACHINEGUN: spriteItem.sprite = spritesWeapon[2]; break; } break; default: break; } }
private void GetBoost(Items.Type item, float magn, float tps, RangedAttack.Weapon weapon) { audioEvent.clip = audioLib[1]; audioEvent.Play(); //// Cas du Soin if (item == Items.Type.HEALTH) // necessite acces à Health { health.Heal((int)magn); } //// ATTENTION : Modèle à adapter au systeme de weapon else { // on verifie si on a deja eu ce type de boost if (memoryBoost.Contains(item)) // Si on l'a déjà eu on refresh le timer { if (item == Items.Type.WEAPON) // Si c'est une arme c'est un peu particulier { if (RangedAttack.ActualWeapon != weapon) { RangedAttack.ChangeWeapon(weapon); } } tempBoost[item] = tps; } else // Sinon on l'ajoute à notre base de boost { memoryBoost.Add(item); tempBoost.Add(item, tps); magnitudeBoost.Add(item, magn); switch (item) { case Items.Type.FIRERATE: // necessite acces à RangedAttacks RangedAttack.BoostFireRate(magn); break; case Items.Type.INVICIBILITY: // necessite acces à Health health.SwitchInviciblity(); break; case Items.Type.MVTSPEED: movementSpeed += magn; break; case Items.Type.POWER: // necessite acces à RangedAttacks RangedAttack.BoostDamage(magn); break; case Items.Type.REPAIR: if (interdictions != 0) // sous interdiction { EndPerturbation(); } //// Possibilité de mettre un état de "non j'ai pas d'interdictions!" (necessiterai un acces au game manager...Ou pas....) break; case Items.Type.WEAPON: // necessite acces à RangedAttacks RangedAttack.ChangeWeapon(weapon); break; default: break; } } } }