Ejemplo n.º 1
0
        void MatchLightMethod()
        {
            if (ammo[0] > 0)
            {
                if (currentObject != null)
                {
                    Destroy(currentObject);

                    if (pickLoadout[currentIndex] != null)
                    {
                        pickLoadout[currentIndex].isSelected = false;
                    }
                }
                GameObject match = Instantiate(loadout[2].prefab, objectParent.position, objectParent.rotation, objectParent) as GameObject;
                JhonnyAnimator.SetBool("HaveTorch", false);

                match.transform.localPosition    = Vector3.zero;
                match.transform.localEulerAngles = Vector3.zero;
                weaponProperties.attackRange     = loadout[2].attackRange;
                weaponProperties.attackRate      = loadout[2].attackRate;
                weaponProperties.attackDamage    = loadout[2].damage;
                //weaponProperties.animationObj = loadout[2].animatorObject;
                currentObject = match;

                UI.ActiveWeapon(-1);
            }
            else
            {
                Debug.Log("fiammiferi finiti");
            }
        }
Ejemplo n.º 2
0
        private void Update()
        {
            if (Input.GetKeyDown(KeyCode.Q))
            {
                obj.ammo[0]--;
                Debug.Log(obj.ammo[0]);
                isOn = !isOn;
                if (isOn)
                {
                    fireLight.enabled = true;
                    fire.Play();
                }
                else
                {
                    /*fireLight.enabled = false;
                     * fire.Stop();*/
                    Destroy(obj.getCurrentObj());

                    UI.UpdateResources("Matches", -1);
                    UI.ActiveWeapon(3);
                }
            }

            if (isOn)
            {
                currentTimeOfMatchLife -= decrementRate * Time.deltaTime;

                // fadelight

                if (currentTimeOfMatchLife <= fireTimeLeftTot)
                {
                    fireLight.DOIntensity(0f, fireTimeLeftTot);
                    for (int i = 0; i < firech.Length; i++)
                    {
                        if (startRate == 0f)
                        {
                            startRate = firech[i].emission.rateOverTime.Evaluate(1f);
                            //Debug.Log("startrate assigned value: " + startRate);
                            fireTimeLeft = fireTimeLeftTot;
                        }
                        if (firech[i].emission.rateOverTime.Evaluate(1f) > 0)
                        {
                            var emission = firech[i].emission;
                            emission.rateOverTime = Mathf.Clamp(Mathf.Lerp(0f, startRate, fireTimeLeft / fireTimeLeftTot), 0f, startRate);
                            //Debug.Log("Emission: " + firech[i].emission.rateOverTime.Evaluate(1f) + "firetimeleft: " + fireTimeLeft);
                        }
                    }
                    fireTimeLeft -= decrementRate * Time.deltaTime;
                }

                //end fadelight
            }

            if (currentTimeOfMatchLife <= 0)
            {
                Destroy(obj.getCurrentObj());

                UI.UpdateResources("Matches", -1);
            }
        }
Ejemplo n.º 3
0
        void Update()
        {
            if (torch.isSelected == true)
            {
                if (Input.GetKeyDown(KeyCode.Q))
                {
                    Debug.Log(torch.isSelected);

                    isOn = !isOn;

                    if (obj.getCurrentObj() == null)
                    {
                        return;
                    }

                    if (isOn)
                    {
                        currentTimeOfTorchLife = ssr.GetRemainLifeTorch();
                        if (obj.ammo[0] > 0)
                        {
                            fireLight.enabled = true;
                            fire.Play();
                            obj.ammo[0]--;

                            UI.UpdateResources("Matches", -1);
                        }
                    }
                    else
                    {
                        fireLight.enabled = false;
                        fire.Stop();
                        ssr.SetRemainLifeTorch(currentTimeOfTorchLife);
                        if (obj.ammo[0] == 0)
                        {
                            Debug.Log("Sono finiti i fiammiferi");
                        }
                    }
                }

                if (isOn)
                {
                    currentTimeOfTorchLife -= decrementRate * Time.deltaTime;
                    //Debug.Log(Mathf.Round(currentTimeOfTorchLife));

                    //fadelight

                    if (currentTimeOfTorchLife <= fireTimeLeftTot)
                    {
                        fireLight.DOIntensity(0f, fireTimeLeftTot);
                        for (int i = 0; i < firech.Length; i++)
                        {
                            if (startRate == 0f)
                            {
                                startRate = firech[i].emission.rateOverTime.Evaluate(1f);
                                //Debug.Log("startrate assigned value: " + startRate);
                                fireTimeLeft = fireTimeLeftTot;
                            }
                            if (firech[i].emission.rateOverTime.Evaluate(1f) > 0)
                            {
                                var emission = firech[i].emission;
                                emission.rateOverTime = Mathf.Clamp(Mathf.Lerp(0f, startRate, fireTimeLeft / fireTimeLeftTot), 0f, startRate);
                                //Debug.Log("Emission: " + firech[i].emission.rateOverTime.Evaluate(1f) + "firetimeleft: " + fireTimeLeft);
                            }
                        }
                        fireTimeLeft -= decrementRate * Time.deltaTime;
                    }

                    //end fadelight
                }
                if (currentTimeOfTorchLife <= 0)
                {
                    int i = obj.getCurrentIndex();
                    obj.pickLoadout[i].isSelected = false;
                    obj.pickLoadout[i]            = null;
                    Destroy(obj.getCurrentObj());

                    UI.ActiveWeapon(3);
                    UI.UpdateWeapons("", i);
                }
            }
            if (torch.isSelected == false)
            {
                ssr.SetRemainLifeTorch(currentTimeOfTorchLife);
            }
        }