Beispiel #1
0
 void TrainingUnit()
 {
     if (isTraining)
     {
         cancelUI.gameObject.SetActive(true);
         barUI.gameObject.SetActive(true);
         if (cancelUI.CheckClick())
         {
             cancelUI.SetClick(false);
             isTraining = false;
         }
         if (trainTimeNow >= trainTimeMax)
         {
             isTraining = false;
             GameObject      unit  = Instantiate(unitTrainNow, spawnPoint.transform.position, spawnPoint.transform.rotation) as GameObject;
             UnitGroupSystem group = unit.GetComponent <UnitGroupSystem>();
             if (group != null)
             {
                 group.SetOwner(build.GetOwner());
             }
             WorkerUnit worker = unit.GetComponent <WorkerUnit>();
             if (worker != null)
             {
                 worker.SetOwner(this.build.GetOwner());
             }
         }
         trainTimeNow += Time.deltaTime;
         barUI.SetProgress(trainTimeNow / trainTimeMax);
     }
     else
     {
         cancelUI.gameObject.SetActive(false);
         barUI.gameObject.SetActive(false);
         VRPlayerIndicator player = null;
         foreach (GameObject plays in GameObject.FindGameObjectsWithTag("Player"))
         {
             VRPlayerIndicator ind = plays.GetComponent <VRPlayerIndicator>();
             if (ind.GetPlayerNumber() == stat.GetOwner())
             {
                 player = ind;
             }
         }
         for (int i = 0; i < trainUI.Length; i++)
         {
             if (trainUI[i].CheckClick() && player.GetEther() >= trainCost[i])
             {
                 isTraining   = true;
                 unitTrainNow = trainUnit[i];
                 trainTimeMax = trainTime[i];
                 trainTimeNow = 0;
                 player.ChangeEther(-trainCost[i]);
                 barUI.SetProgress(0);
                 trainUI[i].SetClick(false);
                 Debug.Log("Start Training!!!");
             }
         }
     }
 }
Beispiel #2
0
    public IEnumerator BuildingConstrutMove(Transform transform, Vector3 position, float timeToMove)
    {
        var currentPos = transform.position;
        var t          = 0f;

        barUI.SetProgress(0);
        while (t < 1)
        {
            t += Time.deltaTime / timeToMove;
            transform.position = Vector3.Lerp(currentPos, position, t);
            barUI.SetProgress(t);
            yield return(null);
        }
        FinishBuild();
        yield return(null);
    }