public void FillTile(Index index)
    {
        if (AlreadySpawned(index))
        {
            return;
        }

        tempBuildingInstance = instanceManager.GetBuilding(index);
        if (tempBuildingInstance != null)
        {
            MapUtils.GetIndexDistanceToAreaMidPoint(index, tempBuildingInstance.index, tempBuildingInstance.lastIndex, out offsetVec);

            tempPoolObje = poolController.GetPoolObje(buildingObjeType.value, GetTileByIndex(index.x, index.y).transform.position + (Vector3)offsetVec);
            tempBuilding = tempPoolObje.GetComponent <Building>();
            tempBuilding.Set(tempBuildingInstance);
            activeBuildings.Add(tempBuilding);
            return;
        }

        tempSoldierInstances = instanceManager.GetSoldier(index);
        if (tempSoldierInstances != null)
        {
            for (int i = 0; i < tempSoldierInstances.Count; i++)
            {
                tempPoolObje = poolController.GetPoolObje(soldierObjeType.value, GetTileByIndex(index.x, index.y).transform.position);
                tempSoldier  = tempPoolObje.GetComponent <Soldier>();
                tempSoldier.Set(tempSoldierInstances[i]);
                activeSoldiers.Add(tempSoldier);
                E_SoldierActivated.Invoke(tempSoldier);
            }
        }
    }
    public void Set(Instance_Building buildingInstance)
    {
        this.buildingInstance = buildingInstance;
        spriteRenderer.color  = buildingInstance.currentColor;
        base.SetData(buildingInstance);

        boxCollider.size = new Vector2(buildingInstance.width * tileSize.value, buildingInstance.height * tileSize.value);
    }
 /// <summary>
 /// <para>Arka arkaya asker uretmede islem kolayligi saglar</para>
 /// <para>Her uretimde siradaki uretim noktasinin indexini tutar,</para>
 /// <para>son ureten bina su an uretenle ayni ise </para>
 /// <para>ayni islemleri yapmasina gerek kalmadan direk noktayi dondurur</para>
 /// </summary>
 public override bool UsingSamePoint()
 {
     if (lastSpawnerBuilding != currentSelectedBuilding.selectedBuildingInstance ||
         soldiersMoved
         )
     {
         lastSpawnerBuilding = currentSelectedBuilding.selectedBuildingInstance;
         soldiersMoved       = false;
         return(false);
     }
     else
     {
         return(true);
     }
 }
Beispiel #4
0
    public void Set(Instance_Building buildingData)
    {
        this.buildingData = buildingData;

        mapObjeDisplayer.Set(buildingData);

        if (buildingData.producableUnit != null)
        {
            soldierButton.Set(buildingData.producableUnit);
        }
        else
        {
            soldierButton.Clear();
        }
    }
 public void Raise(Instance_Building item)
 {
     this.Event.Invoke(item);
 }