Exemple #1
0
    ////////////////////////
    /// Auxiliar Methods ///
    ////////////////////////

    void InitiallizeWorkOffers()
    {
        nonAllocatedWorkOffers = new List <Coords>();
        cityOffersGrid         = new WorkOfferInGrid[32, 32];
        Job.TYPE currentJobType = (Job.TYPE) 1;
        int      aux            = Global.Values.jobsQuantity[(int)Jobs[(int)currentJobType].GetExtension(), (int)currentJobType];

        for (int i = 0; i < 1024; i++)
        {
            //Global.Methods.PrintInfo(Jobs[(int)currentJobType].GetExtension() + "_" + i.ToString() +": " + currentJobType);
            if (i < aux)
            {
                if ((int)currentJobType >= Global.Values.jobsQuantity.Length)
                {
                    break;
                }
                int x = i / 32;
                int y = i % 32;
                cityOffersGrid[x, y] = new WorkOfferInGrid(currentJobType, false);
                nonAllocatedWorkOffers.Insert(Global.Methods.GetRandom(nonAllocatedWorkOffers.Count), new Coords(x, y)); // The insertion is random
            }
            else
            {
                currentJobType++;
                if (jobsCount > (int)currentJobType)
                {
                    aux += Global.Values.jobsQuantity[(int)Jobs[(int)currentJobType].GetExtension(), (int)currentJobType];
                }
                else
                {
                    break;
                }
            }
        }
    }
Exemple #2
0
 public static Job.TIME_DEMAND GetIndustryTimeDemandState(CityPart.PLACE cityPlace, Job.TYPE industryType)
 => City.CityParts[(int)cityPlace].IndustrySector.Jobs[(int)industryType].GetTimeDemand();
Exemple #3
0
 public static Job.EXTENSION GetIndustryExtensionState(CityPart.PLACE cityPlace, Job.TYPE industryType)
 => City.CityParts[(int)cityPlace].IndustrySector.Jobs[(int)industryType].GetExtension();
Exemple #4
0
 public static Job.DURATION GetIndustryContractsDurationState(CityPart.PLACE cityPlace, Job.TYPE industryType)
 => City.CityParts[(int)cityPlace].IndustrySector.Jobs[(int)industryType].GetDuration();
Exemple #5
0
 public static int GetIndustryScheduledWorkingHours(CityPart.PLACE cityPlace, Job.TYPE industryType)
 => City.CityParts[(int)cityPlace].IndustrySector.Jobs[(int)industryType].Schedule.RequieredTime;
Exemple #6
0
 public static int GetIndustryScheduledStart(CityPart.PLACE cityPlace, Job.TYPE industryType)
 => City.CityParts[(int)cityPlace].IndustrySector.Jobs[(int)industryType].Schedule.Start;
Exemple #7
0
 public static int GetIndustryContractsDurationDays(CityPart.PLACE cityPlace, Job.TYPE industryType)
 => City.CityParts[(int)cityPlace].IndustrySector.Jobs[(int)industryType].ContractedDays;
Exemple #8
0
 public WorkOfferInGrid(Job.TYPE job, bool allocated)
 {
     Allocated = allocated;
     Job       = job;
 }
Exemple #9
0
    //////////////////////
    // Industry Getters //
    //////////////////////

    public static int GetIndustryTotalOffersAmount(CityPart.PLACE cityPlace, Job.TYPE industryType)
    => City.CityParts[(int)cityPlace].IndustrySector.Jobs[(int)industryType].Quantity;
Exemple #10
0
 public static void AddIndustryRequiredEffortIndexChange(CityPart.PLACE cityPlace, Job.TYPE industryType, Index.CHANGE change)
 => City.Changes.AddIndexChange(City.CityParts[(int)cityPlace].IndustrySector.Jobs[(int)industryType].RequieredEffort, change);
Exemple #11
0
 public static void AddIndustryTimeDemandChange(CityPart.PLACE cityPlace, Job.TYPE industryType, Job.TIME_DEMAND newValue)
 => City.Changes.AddValueChange(City.CityParts[(int)cityPlace].IndustrySector.Jobs[(int)industryType].SetTimeDemand, newValue);
Exemple #12
0
 public static void AddIndustryExtensionChange(CityPart.PLACE cityPlace, Job.TYPE industryType, Job.EXTENSION newValue)
 => City.Changes.AddValueChange(City.CityParts[(int)cityPlace].IndustrySector.Jobs[(int)industryType].SetExtension, newValue);
Exemple #13
0
    //////////////////////
    // Industry Changes //
    //////////////////////

    public static void AddIndustryContractsDurationChange(CityPart.PLACE cityPlace, Job.TYPE industryType, Job.DURATION newValue)
    => City.Changes.AddValueChange(City.CityParts[(int)cityPlace].IndustrySector.Jobs[(int)industryType].SetDuration, newValue);
Exemple #14
0
 public AcceptedJob(Coords coords, Job.TYPE job, int salary, int enter, int time, int contractedDays, CityPart.PLACE cityPlace)
 {
     Coords = coords; JobType = job; Salary = salary; Enter = enter; TimeRequiered = time; RemainingDays = contractedDays; CityPlace = cityPlace;
 }
Exemple #15
0
 public static float GetIndustryRequiredEffortValue(CityPart.PLACE cityPlace, Job.TYPE industryType)
 => City.CityParts[(int)cityPlace].IndustrySector.Jobs[(int)industryType].RequieredEffort.Value;
Exemple #16
0
 public static Index.STATE GetIndustryRequiredEffortState(CityPart.PLACE cityPlace, Job.TYPE industryType)
 => City.CityParts[(int)cityPlace].IndustrySector.Jobs[(int)industryType].RequieredEffort.GetIndexState();
Exemple #17
0
 public static int GetIndustrySalary(CityPart.PLACE cityPlace, Job.TYPE industryType)
 => City.CityParts[(int)cityPlace].IndustrySector.Jobs[(int)industryType].Salary;