コード例 #1
0
 private void ChangeShootMode()
 {
     if (shootingMode == ShootMode.Auto)
     {
         shootingMode = ShootMode.Semi;
     }
     else
     {
         shootingMode = ShootMode.Auto;
     }
 }
コード例 #2
0
ファイル: GunController.cs プロジェクト: uboaaa/Rouge-FPS
    // セミオートかフルオートかの判定
    public bool GetInput(ShootMode shootMode)
    {
        switch (shootMode)
        {
        case ShootMode.AUTO:
            return(Input.GetMouseButton(0));

        case ShootMode.SEMIAUTO:
            return(Input.GetMouseButtonDown(0));
        }
        return(false);
    }
コード例 #3
0
    // Use this for initialization
    void Start()
    {
        _player          = GameObject.Find("FPS_Controller").GetComponent <Player>();
        normalView       = _FPPCamera.fieldOfView;
        _anim            = GetComponent <Animator>();
        _audioSource     = GetComponent <AudioSource>();
        currentBullets   = bulletsPerMag;
        shootingMode     = ShootMode.Auto; // initialize shoot mode
        originalPosition = transform.localPosition;

        UpdateAmmoText();
    }
コード例 #4
0
    // End of MainProcess
    #endregion

    #region SetMode

    /// <summary>
    /// Shot Mode Change
    /// </summary>
    void ModeChange()
    {
        if (Input.GetKeyDown(KeyCode.Alpha1))
        {
            _shotMode = ShootHorizon;
            Debug.Log("Mode1");
        }
        else if (Input.GetKeyDown(KeyCode.Alpha2))
        {
            _shotMode = ShootSpread;
            Debug.Log("Mode2");
        }
    }
コード例 #5
0
 public bool ChangeShootMode()
 {
     if (!canChangeMode)
     {
         return(false);
     }
     if (!audioSource.isPlaying)
     {
         audioSource.clip = changeModeClip;
         audioSource.Play();
         shootMode = shootMode == ShootMode.Single? ShootMode.Auto : ShootMode.Single;
         return(true);
     }
     return(false);
 }
コード例 #6
0
 void ShootModeChanger()
 {
     if (Input.GetKeyDown(KeyCode.E) && unlockedLevel > 0)
     {
         audioSource.PlayOneShot(shootmodechangeSound);
         if (shootMode == ShootMode.AUTO)
         {
             shootMode = ShootMode.SEMIAUTO;
         }
         else
         {
             shootMode = ShootMode.AUTO;
         }
     }
 }
コード例 #7
0
        //
        void Update()
        {
            if (!mobile)
            {
                if (holder)
                {
                    shootMode = holder.shootMode;
                    switch (shootMode)
                    {
                    case ShootMode.burst:
                        if (Input.GetKey(GameManager._gameManager.shootOptions.key))
                        {
                            Shoot();
                        }
                        break;

                    case ShootMode.single:
                        if (Input.GetKeyDown(GameManager._gameManager.shootOptions.key))
                        {
                            Shoot();
                        }
                        break;

                    default:
                        break;
                    }
                }
            }
            if (shot)
            {
                Shoot();                                    // if bool shot is true, start shooting
            }
            if (enableAmmo)
            {
                Ammo = ammo.ammo;   // Get actual Ammo from AmmoText GameObject.
            }
            else
            {
                Ammo = int.MaxValue;
            }
        }
コード例 #8
0
 private void Start()
 {
     PushBullet(2);
     _shotMode = ShootHorizon;
 }
コード例 #9
0
        // Update is called once per frame
        void Update()
        {
            if (enableAmmo)
            {
                Ammo = _ammo.ammo;  // Get actual Ammo from AmmoText GameObject.
            }
            else
            {
                Ammo = int.MaxValue; // set ammo to max value.
            }

            if (mobile)
            {
                if (holder)
                {
                    switch (trigger)
                    {
                    case M_ShootTrigger.Joystick:
                        if (rt)
                        {
                            if (rt.anchoredPosition.x != 0 && rt.anchoredPosition.y != 0)
                            {
                                Shoot();
                            }
                        }
                        break;

                    case M_ShootTrigger.Button:

                        if (m_Button != null)
                        {
                            if (m_Button.buttonDown)
                            {
                                Shot = true;
                            }
                            else
                            {
                                Shot = false;
                            }
                        }
                        break;

                    default:
                        break;
                    }
                }
            }
            if (!mobile)
            {
                if (holder)
                {
                    shootMode = holder.shootMode;
                    switch (shootMode)
                    {
                    case ShootMode.burst:
                        if (Input.GetKey(GameManager._gameManager.shootOptions.key))
                        {
                            Shoot();
                        }
                        break;

                    case ShootMode.single:
                        if (Input.GetKeyDown(GameManager._gameManager.shootOptions.key))
                        {
                            Shoot();
                        }
                        break;

                    default:
                        break;
                    }
                }
            }
            if (Shot)
            {
                Shoot();
            }
        }
コード例 #10
0
        //
        void FixedUpdate()
        {
            if (mobile)
            {
                if (holder)
                {
                    switch (trigger)
                    {
                    case M_ShootTrigger.Joystick:
                        if (rt)
                        {
                            if (rt.anchoredPosition.x != 0 && rt.anchoredPosition.y != 0)
                            {
                                shot = true;
                            }
                            else
                            {
                                shot = false;
                            }
                        }
                        break;

                    case M_ShootTrigger.Button:

                        if (m_Button != null)
                        {
                            shootMode = holder.shootMode;
                            switch (shootMode)
                            {
                            case ShootMode.burst:
                                if (m_Button.buttonDown)
                                {
                                    shot = true;
                                }
                                else
                                {
                                    shot = false;
                                }
                                break;

                            case ShootMode.single:
                                if (m_Button.buttonDown && singleShot == false)
                                {
                                    shot       = true;
                                    singleShot = true;
                                }
                                else
                                {
                                    shot = false;
                                }
                                if (!m_Button.buttonDown && shootMode == ShootMode.single)
                                {
                                    singleShot = false;
                                }
                                break;

                            default:
                                break;
                            }
                        }
                        break;

                    default:
                        break;
                    }
                }
            }
        }
コード例 #11
0
    void Update()
    {
        if (isActive)
        {
            //bossBulletCam.enabled = true;
            if (Camera.main.GetComponent <CameraController>().camSpeed != 0)
            {
                Camera.main.GetComponent <CameraController>().camSpeed = 0;
            }
            modeCooldown.cooldown -= Time.deltaTime;

            if (modeCooldown.cooldown <= 0)
            {
                prevIndex             = modeIndex;
                modeCooldown.cooldown = modeCooldown.delay;
                shootMode             = GetMode();
            }


            switch (shootMode)
            {
            case ShootMode.flower:
                if (targetIndex == 0)
                {
                    targetIndex = Random.Range(0, targets.Length);
                }

                if (transform.position == targets[targetIndex].position)
                {
                    FlowerPattern(12, 60f, 50f);
                }

                break;

            case ShootMode.rotator:
                targetIndex = 0;

                if (transform.position == targets[targetIndex].position)
                {
                    UseRotatorPattern();
                }

                break;

            case ShootMode.burst:
                if (transform.position == targets[targetIndex].position)
                {
                    targetIndex = Random.Range(0, targets.Length);
                }

                BurstPattern(12);
                break;

            case ShootMode.none:
                if (transform.position == targets[targetIndex].position)
                {
                    targetIndex = Random.Range(0, targets.Length);
                }
                RotatingSecondaries(12, 90f);
                break;

            case ShootMode.move:
                if (transform.position == targets[targetIndex].position)
                {
                    targetIndex = Random.Range(0, targets.Length);
                }
                break;
            }
            transform.position = Vector3.MoveTowards(transform.position, targets[targetIndex].position, speed * Time.deltaTime);
        }
        else
        {
            //bossBulletCam.enabled = false;
        }
    }
コード例 #12
0
        //
        void Update()
        {
            if (mobile)
            {
                if (holder)
                {
                    switch (trigger)
                    {
                    case M_ShootTrigger.Joystick:
                        if (rt)
                        {
                            if (rt.anchoredPosition.x != 0 && rt.anchoredPosition.y != 0)
                            {
                                if (isLight)
                                {
                                    startLight = true;
                                }
                                if (isFlamethrower)
                                {
                                    startFlamethrower = true;
                                }
                            }
                            else
                            {
                                if (isLight)
                                {
                                    startLight = false;
                                }
                                if (isFlamethrower)
                                {
                                    startFlamethrower = false;
                                }
                            }
                        }
                        break;

                    case M_ShootTrigger.Button:

                        if (m_Button != null)
                        {
                            if (m_Button.buttonDown)
                            {
                                if (isLight)
                                {
                                    startLight = true;
                                }
                                if (isFlamethrower)
                                {
                                    startFlamethrower = true;
                                }
                            }
                            else
                            {
                                if (isLight)
                                {
                                    startLight = false;
                                }
                                if (isFlamethrower)
                                {
                                    startFlamethrower = false;
                                }
                            }
                        }
                        break;

                    default:
                        break;
                    }
                }
            }
            if (!mobile)
            {
                if (holder)
                {
                    shootMode = holder.shootMode;
                    switch (shootMode)
                    {
                    case ShootMode.burst:
                        break;

                    case ShootMode.single:
                        if (Input.GetKeyDown(GameManager._gameManager.shootOptions.key))
                        {
                            if (isLight)
                            {
                                startLight = true;
                            }
                            if (isFlamethrower)
                            {
                                startFlamethrower = true;
                            }
                        }
                        if (Input.GetKeyUp(GameManager._gameManager.shootOptions.key))
                        {
                            if (isLight)
                            {
                                startLight = false;
                            }
                            if (isFlamethrower)
                            {
                                startFlamethrower = false;
                            }
                        }
                        break;

                    default:
                        break;
                    }
                }
            }

            if (startLight)
            {
                Launch();                                       // Activate Light
            }
            if (!startLight && isLight)
            {
                WeaponToLaunch.SetActive(false);                // Deactivate Light
            }

            if (startFlamethrower)
            {
                LaunchFlamethrower();                           // Start ParticleSystem
            }
            if (!startFlamethrower && isFlamethrower)
            {
                Flamethrower.Stop();                            // Stop ParticleSystem
            }


            if (enableAmmo)
            {
                Ammo = ammo.ammo;   // Get actual Ammo from AmmoText GameObject.
            }
            else
            {
                Ammo = Mathf.Infinity;
            }
        }
コード例 #13
0
 void Change(bool a, bool b)
 {
     ShieldMode.SetActive(a);
     ShootMode.SetActive(b);
     //if (StartCOUNT) oCount = 30;
 }
コード例 #14
0
        /** Método que carga las características de cada marcadora */
        private void loadModel(MarkerModel model)
        {
            switch (model)
            {
            case MarkerModel.SPYDER_VICTOR:
                name        = "Spyder Victor";
                description = language.getMessage("spyderVictor_description");
                price       = "65";
                texture     = Textures.markerSpyderVictor;
                shootType   = ShootMode.SEMI;
                accuracy    = 180f;
                fireRate    = 5f;
                loader      = new Vector2(150, 150);
                break;

            case MarkerModel.TIPPMANN_98:
                name        = "Tippmann 98";
                description = language.getMessage("tippmann98_description");
                price       = "140";
                texture     = Textures.markerTippmann98;
                shootType   = ShootMode.SEMI;
                accuracy    = 140f;
                fireRate    = 8f;
                loader      = new Vector2(200, 200);
                break;

            case MarkerModel.TIPPMANN_A5:
                name        = "Tippmann A5 AK Model";
                description = language.getMessage("tippmannA5_description");
                price       = "289";
                texture     = Textures.markerTippmannA5;
                shootType   = ShootMode.AUTO;
                accuracy    = 110f;
                fireRate    = 14f;
                loader      = new Vector2(50, 50);
                break;

            case MarkerModel.EMPIRE_AXE:
                name        = "Empire Axe 2.0";
                description = language.getMessage("empireAxe_description");
                price       = "499";
                texture     = Textures.markerEmpireAxe;
                shootType   = ShootMode.DOUBLE_TRIGGER;
                accuracy    = 75f;
                fireRate    = 20f;
                loader      = new Vector2(200, 200);
                break;

            case MarkerModel.ECLIPSE_CSR:
                name        = "Eclipse Geo CSR";
                description = language.getMessage("eclipseGeo_description");
                price       = "2095";
                texture     = Textures.markerEclipseCSR;
                shootType   = ShootMode.DOUBLE_TRIGGER;
                accuracy    = 40f;
                fireRate    = 24f;
                loader      = new Vector2(200, 200);
                break;

            case MarkerModel.RAP4_T68:
                name        = "Rap4 T68";
                description = language.getMessage("rap4_description");
                price       = "699";
                texture     = Textures.markerT68;
                shootType   = ShootMode.SEMI;
                accuracy    = 10f;
                fireRate    = 3f;
                loader      = new Vector2(20, 20);
                break;
            }
        }
コード例 #15
0
ファイル: Weapon.cs プロジェクト: Alx666/ProjectPhoenix
        public WeaponShoot(Weapon hWeap, int iCount, ShootMode hMode)
        {
            m_hOwner = hWeap;
            m_iShootCount = iCount;

            ShootModeFactory shootFactory = new ShootModeFactory(this);
            m_hShootStrategy = shootFactory.GetMode(hMode);
        }
コード例 #16
0
ファイル: Weapon.cs プロジェクト: Alx666/ProjectPhoenix
        public WeaponShoot(Weapon hWeap, ShootMode hMode) : this(hWeap, 1, hMode)
        {

        }
コード例 #17
0
ファイル: Weapon.cs プロジェクト: Alx666/ProjectPhoenix
 internal IShootStrategy GetMode(ShootMode hMode)
 {
     IShootStrategy res;
     if (ShootModes.TryGetValue(hMode, out res))
         return res;
     else
         throw new UnityException("Unknown Implementation of ShootMode");
 }
コード例 #18
0
 public void setShootType(ShootMode shootType)
 {
     this.shootType = shootType;
 }
コード例 #19
0
        public new virtual IEnumerable <Gizmo> CompGetGizmosExtra()
        {
            switch (WeaponShootMode)
            {
            case ShootMode.OneShoot:

                yield return(new Command_Action
                {
                    defaultLabel = "OneShootLabel".Translate(),
                    defaultDesc = "OneToThree".Translate(),
                    icon = Texture2Ds.Icon_OneShoot,

                    action = delegate()
                    {
                        WeaponShootMode = ShootMode.ThreeShoot;
                    }
                });

                break;

            case ShootMode.ThreeShoot:
                if (enableFullAuto)
                {
                    yield return new Command_Action
                           {
                               defaultLabel = "ThreeShootLabel".Translate(),
                               defaultDesc  = "ThreeToFullAuto".Translate(),
                               icon         = Texture2Ds.Icon_ThreeShoot,
                               action       = delegate()
                               {
                                   WeaponShootMode = ShootMode.FullAuto;
                               }
                           }
                }
                ;
                else
                {
                    yield return new Command_Action
                           {
                               defaultLabel = "ThreeShootLabel".Translate(),
                               defaultDesc  = "ThreeToOne".Translate(),
                               icon         = Texture2Ds.Icon_ThreeShoot,
                               action       = delegate()
                               {
                                   WeaponShootMode = ShootMode.OneShoot;
                               }
                           }
                };
                break;

            case ShootMode.FullAuto:
                yield return(new Command_Action
                {
                    defaultLabel = "FullAutoLabel".Translate(),
                    defaultDesc = "FullAutoToOne".Translate(),
                    icon = Texture2Ds.Icon_FullAuto,
                    iconAngle = Find.TickManager.TicksGame % 360,
                    action = delegate()
                    {
                        WeaponShootMode = ShootMode.OneShoot;
                    }
                });

                break;

            default:
                break;
            }
        }