Esempio n. 1
0
    public Data.GameTimeStructure GetFutureTime(int week)
    {
        Data.GameTimeStructure futureTime = gameTimeStructure.Clone();

        for (int i = 0; i < week; i++)
        {
            futureTime.week++;

            if (futureTime.week > weekSet)
            {
                futureTime.week = 1;
                futureTime.month++;

                if (futureTime.month > monthSet)
                {
                    futureTime.month = 1;
                    futureTime.year++;
                }
            }
        }
        futureTime.timeMinute = timeMinuteSet;
        futureTime.timeSecond = timeSecondSet;

        return(futureTime);
    }
Esempio n. 2
0
    public void AddOutSourceWork(ContractData ContractData)
    {
        Data.GameTimeStructure temp = GameTimeStructure.instance.GetGameTimeStructure();
        string timeStamp            = temp.timeSecond.ToString("#.#").Replace(".", "") + "" + temp.timeMinute + "" + temp.week + "" + temp.month;

        ContractData.workID = ContractData.workID + "-" + timeStamp;
        WorkStructure.instance.AddOutSourceWork(ContractData);
    }
Esempio n. 3
0
    public void Clock()
    {
        if (GameTimeStructure.instance.GetGameTimeStructure() != null)
        {
            Data.GameTimeStructure gameTime = GameTimeStructure.instance.GetGameTimeStructure();

            time.text = gameTime.timeMinute + ":" + gameTime.timeSecond.ToString("0#");
        }
    }
Esempio n. 4
0
    public void Time()
    {
        if (GameTimeStructure.instance.GetGameTimeStructure() != null)
        {
            Data.GameTimeStructure gameTime = GameTimeStructure.instance.GetGameTimeStructure();

            day.text = gameTime.week + "/" + gameTime.month + "/" + gameTime.year;
        }
    }
Esempio n. 5
0
 public void Set(Data.GameTimeStructure gameTime, int unitSelling, int price, int cost, int income, int profit, int fan)
 {
     this.gameTime    = gameTime;
     this.unitSelling = unitSelling;
     this.price       = price;
     this.cost        = cost;
     this.income      = income;
     this.profit      = profit;
     this.fan         = fan;
 }
Esempio n. 6
0
    public void SaveGameTime(string fileName, Data.GameTimeStructure gameTimeStructure)
    {
        FileOut = Application.dataPath + "/SaveData";

        if (!Directory.Exists(FileOut))
        {
            Debug.Log("Create folder " + FileOut);
            Directory.CreateDirectory(FileOut);
        }

        FileOut = Application.dataPath + "/SaveData/" + fileName + ".json";

        string json = JsonUtility.ToJson(gameTimeStructure);

        File.WriteAllText(FileOut, json);

        Debug.Log("FileOut: " + FileOut);
    }
Esempio n. 7
0
    public ContractData GenerateContract(ContractType contractType)
    {
        ContractData contractData = new ContractData();

        contractData.contractType = contractType;
        contractData.scaleType    = (ScaleType)UnityEngine.Random.Range(1, Enum.GetValues(typeof(ScaleType)).Length);


        int maxComponentRequirements = 0;

        Data.GameTimeStructure dueDate = new Data.GameTimeStructure();

        if (contractData.scaleType == ScaleType.Small)
        {
            maxComponentRequirements = UnityEngine.Random.Range(2, 3 + 1);
            dueDate = GameTimeStructure.instance.GetFutureTime(UnityEngine.Random.Range(2, 3));
        }
        else if (contractData.scaleType == ScaleType.Medium)
        {
            maxComponentRequirements = UnityEngine.Random.Range(4, 9 + 1);
            dueDate = GameTimeStructure.instance.GetFutureTime(UnityEngine.Random.Range(2, 4));
        }
        else if (contractData.scaleType == ScaleType.Large)
        {
            maxComponentRequirements = UnityEngine.Random.Range(10, 15 + 1);
            dueDate = GameTimeStructure.instance.GetFutureTime(UnityEngine.Random.Range(4, 12));
        }

        MaxComponent maxComponent = CompanyStructure.instance.GetMaxComponent();

        if (contractType == ContractType.Scenario)
        {
            contractData.genreDatas  = ComponentAsset.instance.RandomComponentGenre(maxComponentRequirements, maxComponent.maxGenre);
            contractData.cameraDatas = ComponentAsset.instance.RandomComponentCamera(maxComponentRequirements, maxComponent.maxCamera);
        }
        else if (contractType == ContractType.Graphic)
        {
            contractData.themeDatas   = ComponentAsset.instance.RandomComponentTheme(maxComponentRequirements, maxComponent.maxTheme);
            contractData.graphicDatas = ComponentAsset.instance.RandomComponentGraphic(maxComponentRequirements, maxComponent.maxGraphic);
        }
        else if (contractType == ContractType.Module)
        {
            contractData.featureDatas  = ComponentAsset.instance.RandomComponentFeature(maxComponentRequirements, maxComponent.maxFeature);
            contractData.platformDatas = ComponentAsset.instance.RandomComponentPlatform(maxComponentRequirements, maxComponent.maxPlatform);
        }
        else if (contractType == ContractType.Support)
        {
            //Wait
        }
        else if (contractType == ContractType.FullGameProject)
        {
            contractData.genreDatas    = ComponentAsset.instance.RandomComponentGenre(maxComponentRequirements, maxComponent.maxGenre);
            contractData.cameraDatas   = ComponentAsset.instance.RandomComponentCamera(maxComponentRequirements, maxComponent.maxCamera);
            contractData.themeDatas    = ComponentAsset.instance.RandomComponentTheme(maxComponentRequirements, maxComponent.maxTheme);
            contractData.graphicDatas  = ComponentAsset.instance.RandomComponentGraphic(maxComponentRequirements, maxComponent.maxGraphic);
            contractData.featureDatas  = ComponentAsset.instance.RandomComponentFeature(maxComponentRequirements, maxComponent.maxFeature);
            contractData.platformDatas = ComponentAsset.instance.RandomComponentPlatform(maxComponentRequirements, maxComponent.maxPlatform);
        }

        int    allLevelComponent_temp = 0;
        string workID = "";

        foreach (ComponentData componentRequirements in contractData.genreDatas)
        {
            allLevelComponent_temp += componentRequirements.productLevel;
            workID += (componentRequirements.componentID[componentRequirements.componentID.Length - 1] * componentRequirements.productLevel).ToString();
        }
        foreach (ComponentData componentRequirements in contractData.cameraDatas)
        {
            allLevelComponent_temp += componentRequirements.productLevel;
            workID += (componentRequirements.componentID[componentRequirements.componentID.Length - 1] * componentRequirements.productLevel).ToString();
        }
        foreach (ComponentData componentRequirements in contractData.themeDatas)
        {
            allLevelComponent_temp += componentRequirements.productLevel;
            workID += (componentRequirements.componentID[componentRequirements.componentID.Length - 1] * componentRequirements.productLevel).ToString();
        }
        foreach (ComponentData componentRequirements in contractData.graphicDatas)
        {
            allLevelComponent_temp += componentRequirements.productLevel;
            workID += (componentRequirements.componentID[componentRequirements.componentID.Length - 1] * componentRequirements.productLevel).ToString();
        }
        foreach (ComponentData componentRequirements in contractData.featureDatas)
        {
            allLevelComponent_temp += componentRequirements.productLevel;
            workID += (componentRequirements.componentID[componentRequirements.componentID.Length - 1] * componentRequirements.productLevel).ToString();
        }
        foreach (ComponentData componentRequirements in contractData.platformDatas)
        {
            allLevelComponent_temp += componentRequirements.productLevel;
            workID += (componentRequirements.componentID[componentRequirements.componentID.Length - 1] * componentRequirements.productLevel).ToString();
        }

        contractData.processMax = allLevelComponent_temp;

        contractData.workID = (int)contractData.contractType + (int)contractData.scaleType + maxComponentRequirements + workID + "";

        Reward reward = new Reward();

        reward.exp   = (10 * allLevelComponent_temp);
        reward.money = allLevelComponent_temp * 5000;


        Fine fine = new Fine();

        fine.money = (allLevelComponent_temp * 5000) / 2;

        contractData.reward  = reward;
        contractData.fine    = fine;
        contractData.dueDate = dueDate;

        return(contractData);
    }
Esempio n. 8
0
 public void Set(string json)
 {
     gameTimeStructure = JsonUtility.FromJson <Data.GameTimeStructure>(json);
     set = true;
 }