示例#1
0
 public void AddEnergy(bool isEnemy, EnergyPoint energyPoint)
 {
     if (isEnemy)
     {
         enemyEnergy.Add(energyPoint);
     }
     else
     {
         playerEnergy.Add(energyPoint);
     }
 }
示例#2
0
 public void AddEnergy(bool isEnemy, EnergyPoint energyPoint)
 {
     // used by GameUICtrl to add energy
     if (isEnemy)
     {
         enemyEnergy.Add(energyPoint);
     }
     else
     {
         playerEnergy.Add(energyPoint);
     }
 }
示例#3
0
    void Start()
    {
        // create energy bars
        for (int i = 0; i < Params.energyBarCount; i++)
        {
            GameObject  eE  = Instantiate(energyPoint, enemyEnergyBarObj.transform);
            EnergyPoint eEP = eE.GetComponent <EnergyPoint>();
            eEP.SetColor(true);
            GameManager.AddEnergy(true, eEP);

            GameObject  eP  = Instantiate(energyPoint, playerEnergyBarObj.transform);
            EnergyPoint ePP = eP.GetComponent <EnergyPoint>();
            ePP.SetColor(false);
            GameManager.AddEnergy(false, ePP);
        }

        if (Globals.bgm)
        {
            bgmText.text = "BGM: Yes";
        }
        else
        {
            bgmText.text = "BGM: No";
        }

        if (Globals.sound)
        {
            soundText.text = "Sound: Yes";
        }
        else
        {
            soundText.text = "Sound: No";
        }

        if (Globals.supportsAR)
        {
            if (Globals.usingAR)
            {
                toggleARBtn.GetComponentInChildren <TextMeshProUGUI>().text = "Non-AR mode";
            }
            else
            {
                toggleARBtn.GetComponentInChildren <TextMeshProUGUI>().text = "AR mode";
            }
        }
        else
        {
            toggleARBtn.SetActive(false);
        }
    }
示例#4
0
    void FillEnergy(List <EnergyPoint> energyPoints, float value)
    {
        int   integerPart    = (int)(value);
        float fractionalPart = value - integerPart;

        for (int i = 0; i < integerPart; i++)
        {
            EnergyPoint energyPoint = energyPoints[i];
            energyPoint.SetValue(1);
        }
        if (integerPart >= energyPoints.Count)
        {
            return;
        }
        for (int i = integerPart; i < energyPoints.Count; i++)
        {
            EnergyPoint energyPoint = energyPoints[i];
            energyPoint.SetValue(0);
        }
        energyPoints[integerPart].SetValue(fractionalPart);
    }
示例#5
0
    public void MoveEnergyPoint(EnergyPoint energyPoint, float distance)  // -> MoveButton - OnPointerClick()
    {
        if (moving)
        {
            return;         // previous movement did not end
        }
        moving = true;

        if (particleEnergy.isPlaying)         // it only needs to be done when we move in activated energy mode
        {
            currentEnergyPoint.Deactivated(); // from the point at which they started to move
            energyPoint.TryActivate();        // to the point where we are moving

            ParticleSystem.MainModule pm = particleEnergy.main;
            pm.startSize = 2f;
            ParticleSystem.EmissionModule pe = particleEnergy.emission;
            pe.rateOverTime  = 240;
            boxCollider.size = Vector3.one * 2; // under the jerk a larger area of Enemy's lesion
        }
        currentEnergyPoint = energyPoint;
        transform.DOMove(energyPoint.transform.position, distance / speed).SetEase(Ease.Linear).OnComplete
            (() => {
            moving = false;
            if (particleEnergy.isPlaying)
            {
                particleEnergyWave.Play();
                HitEnergyWave();

                ParticleSystem.MainModule pm = particleEnergy.main;
                pm.startSize = 1;
                ParticleSystem.EmissionModule pe = particleEnergy.emission;
                pe.rateOverTime  = 60;
                boxCollider.size = Vector3.one;
            }

            targetEnemy = null; // In order for the shooting sight not to go astray by Enemy, after movement
        });
    }
示例#6
0
    void FillEnergy(List <EnergyPoint> energyPoints, float value)
    {
        // Fill the energy bar, using integer part & fractional part
        // i.e: value == 4.5 => 4 Energy Point filled & 0.5 filling
        int   integerPart    = (int)(value);
        float fractionalPart = value - integerPart;

        for (int i = 0; i < integerPart; i++)
        {
            EnergyPoint energyPoint = energyPoints[i];
            energyPoint.SetValue(1);
        }
        if (integerPart >= energyPoints.Count)
        {
            return;
        }
        for (int i = integerPart; i < energyPoints.Count; i++)
        {
            EnergyPoint energyPoint = energyPoints[i];
            energyPoint.SetValue(0);
        }
        energyPoints[integerPart].SetValue(fractionalPart);
    }
示例#7
0
 void Awake()
 {
     HP = new HitPoint(statusData);
     SP = new StaminaPoint(statusData);
     EP = new EnergyPoint(statusData);
 }