Example #1
0
    public HarvesterData(ItemQuality quality, float level, HarvesterType type, int harvestTime) : base(quality, level)
    {
        this.type        = type;
        this.harvestTime = harvestTime;

        name        = type.name();
        description = type.description();
        volume      = type.volume();
        itemType    = ItemType.HARVESTER;
    }
Example #2
0
    public static string description(this HarvesterType type)
    {
        switch (type)
        {
        case HarvesterType.MECHANICAL: return("Дроид-Харвестер на\nмеханической основе");

        case HarvesterType.PLASMATIC: return("Дроид-Харвестер на\nплазматической основе");

        case HarvesterType.GENERATIVE: return("Дроид-Харвестре на\nгенеративной основе");

        default: return("Неизвестный тип сборщика");
        }
    }
Example #3
0
    public static int cost(this HarvesterType type)
    {
        switch (type)
        {
        case HarvesterType.MECHANICAL: return(100);

        case HarvesterType.PLASMATIC: return(200);

        case HarvesterType.GENERATIVE: return(300);

        default: return(0);
        }
    }
Example #4
0
    public static float volume(this HarvesterType type)
    {
        switch (type)
        {
        case HarvesterType.MECHANICAL: return(1);

        case HarvesterType.PLASMATIC: return(1);

        case HarvesterType.GENERATIVE: return(1);

        default: return(0);
        }
    }
Example #5
0
    public static string name(this HarvesterType type)
    {
        switch (type)
        {
        case HarvesterType.MECHANICAL: return("Механический сборщик");

        case HarvesterType.PLASMATIC: return("Плазматический сборщик");

        case HarvesterType.GENERATIVE: return("Генеративный сборщик");

        default: return("Неизвестный тип сборщика");
        }
    }
Example #6
0
    public static Sprite getHarvesterSprite(HarvesterType type)
    {
        switch (type)
        {
        case HarvesterType.MECHANICAL: return(harvesters[0]);

        case HarvesterType.PLASMATIC: return(harvesters[1]);

        case HarvesterType.GENERATIVE: return(harvesters[2]);

        default: Debug.Log("Unknown harvester type: " + type); return(null);
        }
    }
Example #7
0
    public static HarvesterData createHarvesterData(HarvesterType type)
    {
        ItemQuality quality = randQuality();
        float       level   = randLevel();

        float harvestMulty = quality == ItemQuality.UNIQUE? 0.6f: quality == ItemQuality.SUPERIOR? 0.8f: 1;
        int   harvestTime  = Mathf.RoundToInt((type.harvestTime() / level) * harvestMulty);

        HarvesterData data = new HarvesterData(quality, level, type, harvestTime);

        data.initCommons(calculateCost(data), calculateEnergy(data));

        return(data);
    }
Example #8
0
    public static HarvesterData createHarvesterData()
    {
        HarvesterType type = HarvesterType.MECHANICAL;

        switch (UnityEngine.Random.Range(0, Enum.GetNames(typeof(HarvesterType)).Length))
        {
        case 0: type = HarvesterType.MECHANICAL; break;

        case 1: type = HarvesterType.PLASMATIC; break;

        case 2: type = HarvesterType.GENERATIVE; break;

        default: Debug.Log("Unmapped value for harvester"); break;
        }
        return(createHarvesterData(type));
    }