override public void Harvest() { if (destroyed) { return; } GameMaster.colonyController.storage.AddResource(ResourceType.Lumber, CountLumber()); if (stage > TRANSIT_STAGE & transform.childCount != 0) { Transform model = transform.GetChild(0); model.transform.parent = null; FallingTree ft = model.gameObject.AddComponent <FallingTree>(); ft.returnFunction = ReturnModelToPool; } Annihilate(false); }
override public void Harvest(bool replenish) { if (destroyed) { return; } GameMaster.realMaster.colonyController.storage.AddResource(ResourceType.Lumber, CountLumber()); if (stage > TRANSIT_STAGE & modelHolder != null) { modelHolder.transform.parent = null; FallingTree ft = modelHolder.gameObject.AddComponent <FallingTree>(); ft.SetModelStage(stage); ft.returnFunction = ReturnModelToPool; modelHolder = null; spriter = null; } Annihilate(PlantAnnihilationOrder.Gathered); }
private void GrowTree(Chunk chunk) { int direction = Random.Range(-1, 2); int block = Random.Range(0, 25); Block b = null; if (block == 0) { b = new VineBlock(); } else { b = new FallingTree(); } switch (direction) { case -1: if (LeftBlock == null) { SetLeftBlock(chunk, b); } break; case 0: if (TopBlock == null) { SetTopBlock(chunk, b); } break; case 1: if (RightBlock == null) { SetRightBlock(chunk, b); } break; } SetThisBlock(chunk, new FallingTree()); }
override public void Harvest(bool replenish) { if (destroyed) { return; } GameMaster.realMaster.colonyController.storage.AddResource(ResourceType.Lumber, CountLumber()); if (stage > TRANSIT_STAGE & modelHolder != null) { modelHolder.transform.parent = null; FallingTree ft = modelHolder.gameObject.AddComponent <FallingTree>(); ft.SetModelStage(stage); ft.returnFunction = ReturnModelToPool; modelHolder = null; spriter = null; } //if (!replenish) Annihilate(true, false, false); // реплениш отключен, тк глючит - не успевает поставить спрайтер до обновления //else ResetToDefaults(); }