Ejemplo n.º 1
0
 protected void DecrimentLifetime()
 {
     CurrentLifeTime -= Time.deltaTime * world.GrowthTimeScale;
     if (CurrentLifeTime < 0.0f) // no life left
     {
         DestroyPlaceable();
     }
     else if (CurrentLifeTime < placeableData.lifetime * 0.1f) //down 90% - 100% of its life
     {
         CurrentLifeStage = ePlaceableLifeStage.DECAYING;
     }
     else if (CurrentLifeTime < placeableData.lifetime * 0.6f) //down 40% - 89$ of its life
     {
         CurrentLifeStage = ePlaceableLifeStage.GROWN;
     }
     else if (CurrentLifeTime < placeableData.lifetime * 0.8f) //down 20% - 39% of its life
     {
         CurrentLifeStage = ePlaceableLifeStage.ADOLESCENT;
     }
     else if (CurrentLifeTime < placeableData.lifetime * 0.9f) //down 10% - 19% of its life
     {
         CurrentLifeStage = ePlaceableLifeStage.BUDDING;
     }
     else //Down 0% - 9% of its life
     {
         CurrentLifeStage = ePlaceableLifeStage.SEED;
     }
     UpdateModel();
 }
Ejemplo n.º 2
0
    public void UpdateModel(ePlaceableLifeStage stage)
    {
        switch (stage)
        {
        case ePlaceableLifeStage.SEED:
            meshFilter.mesh = placeableData.seedModel;
            break;

        case ePlaceableLifeStage.BUDDING:
            meshFilter.mesh = placeableData.buddingModel;
            break;

        case ePlaceableLifeStage.ADOLESCENT:
            meshFilter.mesh = placeableData.adolescentModel;
            break;

        case ePlaceableLifeStage.GROWN:
            meshFilter.mesh = placeableData.grownModel;
            break;

        case ePlaceableLifeStage.DECAYING:
            meshFilter.mesh = placeableData.decayingModel;
            break;
        }
    }