Esempio n. 1
0
        /// <summary>
        /// Using Base Init for default Setup.
        /// Creating needed Setup for Laser.
        /// </summary>
        /// <param name="weaponSocket">Place for Weapon to create</param>
        /// <param name="weapon">What Weapon</param>
        /// <param name="hud">Weapon View for Visuals</param>
        /// <param name="aimOrigin"></param>
        /// <param name="hitEvent"></param>
        public override void Initialize(WeaponSocket weaponSocket, Weapon weapon, WeaponHud hud, AimOrigin aimOrigin,
                                        HitEvent hitEvent)
        {
            base.Initialize(weaponSocket, weapon, hud, aimOrigin, hitEvent);

            PhotonView.ObservedComponents.Add(this);

            // 1 default + reflect count
            m_rayNums = 1 + Weapon.ReflectCount;

            m_rays = new Ray[m_rayNums + 1];

            //max x reflections = x hits + 1 end point
            m_hitEffects = new ParticleSystem[Weapon.ReflectCount + 1];

            //each reflection is a hit + 1 end point
            for (var i = 0; i < Weapon.ReflectCount + 1; i++)
            {
                m_hitEffects[i] = Instantiate(weapon.HitEffect);
            }

            m_trailEffect = Instantiate(Weapon.TrailEffect, MuzzleFlash.transform, false).GetComponent <LineRenderer>();
            m_trailEffect.transform.localPosition = new Vector3(0, 0, 0);

            m_currentLength = Weapon.MaxLength;
        }
Esempio n. 2
0
        public override void Initialize(WeaponSocket weaponSocket, Weapon weapon, WeaponHud hud, AimOrigin aimOrigin,
                                        HitEvent hitEvent)
        {
            base.Initialize(weaponSocket, weapon, hud, aimOrigin, hitEvent);
            m_hitEffect = Instantiate(weapon.HitEffect);
            PhotonView.ObservedComponents.Add(this);

            m_trailEffect = Instantiate(Weapon.TrailEffect, MuzzleFlash.transform, false).GetComponent <TrailRenderer>();
            m_trailEffect.transform.localPosition = new Vector3(0, 0, 0);
        }
Esempio n. 3
0
        public override void Initialize(WeaponSocket weaponSocket, Weapon weapon, WeaponHud hud, AimOrigin aimOrigin,
                                        HitEvent hitEvent)
        {
            base.Initialize(weaponSocket, weapon, hud, aimOrigin, hitEvent);
            m_hitEffect = Instantiate(weapon.HitEffect);

            m_chargeEffect = Instantiate(weapon.ChargeEffect, WeaponObject.transform, false);
            m_chargeEffect.transform.localPosition = Weapon.MuzzleFlashOffset;

            //Get Components to Handle Effects
            var lineEffects = Instantiate(Weapon.TrailEffect, MuzzleFlash.transform, false);

            m_lineRender = lineEffects.GetComponent <LineRenderer>();
            m_lineRender.transform.localPosition = new Vector3(0, 0, 0);
            m_lineRender.positionCount           = 2;
            m_lineRender.widthMultiplier         = Weapon.RayThickness * 10;
            m_lineRender.enabled = false;

            m_lineAnimation = lineEffects.GetComponent <LineAnimation>();
        }
Esempio n. 4
0
 void Start()
 {
     _player       = FindObjectOfType <Player>();
     _weaponHud    = FindObjectOfType <WeaponHud>();
     _enemySpawner = FindObjectOfType <EnemySpawner>();
 }