Esempio n. 1
0
 public void SetActiveBuildingType(BuildingTypeSO buildingType)
 {
     activeBuildingType = buildingType;
     OnActiveBuildingTypeChanged?.Invoke(this, new OnActiveBuildingTypeChangedEventArgs {
         activeBuildingType = activeBuildingType
     });
 }
Esempio n. 2
0
 // Update is called once per frame
 void Update()
 {
     if (activeBuilidingType != null)
     {
         if (Input.GetMouseButtonDown(0) && !EventSystem.current.IsPointerOverGameObject() && canspawn)
         {
             if (ResourceManager.Instance.CanAfford(activeBuilidingType.BuildingResourceCostArray))
             {
                 ResourceManager.Instance.SpendResourse(activeBuilidingType.BuildingResourceCostArray);
                 Instantiate(activeBuilidingType.prefabs, UtilsClass.GetMousePostition(), Quaternion.identity);
                 isClickFree = false;
             }
         }
         canSpawnBuilding(activeBuilidingType, UtilsClass.GetMousePostition());
         if (Input.GetKeyDown(KeyCode.Mouse1))
         {
             activeBuilidingType = null;
             isClickFree         = true;
             OnActiveBuildingTypeChanged?.Invoke(this, new OnActiveBuildingTypeChangedEventArgs
             {
                 activeBuilidingType = activeBuilidingType
             });
         }
     }
     if (Input.GetKeyDown(KeyCode.Z))
     {
         Vector3 enemyspawnpostion = UtilsClass.GetMousePostition() + UtilsClass.GetrandomDir() * 3f;
         Enemy.Create(enemyspawnpostion);
     }
 }
 public void SelectBuildingType(BuildingTypeScriptableObject buildingType)
 {
     _activeBuildingType = buildingType;
     OnActiveBuildingTypeChanged?.Invoke(this,
                                         new OnActiveBuildingTypeChangedEventArgs {
         buildingType = buildingType
     }
                                         );
 }