//目前不只是制作,还有很多别的跟事件相关的功能都写在这儿 public void Produce() { if (canWork == true) { if (Failed == false) { if (CurrentTask != null && TaskChange == false) { int Pp = CountProducePower(CurrentTask.Num); CurrentTask.Progress += Pp; if (CurrentTask.Progress >= StandardProducePoint * 4) { GC.CreateMessage(Text_DepName.text + " 完成了 " + CurrentTask.TaskName + " 的生产"); GC.FinishedTask[(int)CurrentTask.TaskType * 3 + CurrentTask.Num - 1] += 1; GC.UpdateResourceInfo(); EmpsGetExp(CurrentTask.Num); CurrentTask.Progress = 0; if (CurrentTask.Num == 1 && (int)CurrentTask.TaskType == 2) { GC.StrC.SolveStrRequest(3, 1); } else if (CurrentTask.Num == 2 && (int)CurrentTask.TaskType == 1) { GC.StrC.SolveStrRequest(4, 1); } else if (CurrentTask.Num == 1 && (int)CurrentTask.TaskType == 0) { GC.StrC.SolveStrRequest(5, 1); } } UpdateUI(Pp); } else if (CurrentResearch != null) { int Pp = CountProducePower(4); CurrentResearch.CurrentProgress += Pp; CurrentResearch.UpdateUI(); if (CurrentResearch.CurrentProgress >= CurrentResearch.Progress) { GC.CreateMessage(Text_DepName.text + " 完成了 " + CurrentResearch.Text_Name.text + " 的研究"); CurrentResearch.ResearchFinish(); CurrentResearch.ExtraButton.gameObject.SetActive(false); EmpsGetExp(1); CurrentResearch = null; GC.StrC.SolveStrRequest(7, 1); } UpdateUI(Pp); } else if (SurveyStart == true) { int Pp = CountProducePower(4); SpProgress += Pp; if (SpProgress >= StandardProducePoint * 10) { GC.CreateMessage(Text_DepName.text + " 完成了调研"); RandomResearch(); SurveyButton.interactable = true; SurveyStart = false; } EmpsGetExp(1); UpdateUI(Pp); GC.StrC.SolveStrRequest(7, 1); } else if (WorkStart == true) { if (type == EmpType.HR) { int Pp = CountProducePower(5); SpProgress += Pp; if (SpProgress >= SpTotalProgress) { GC.CreateMessage(Text_DepName.text + " 完成了 招聘"); //GC.FinishedTask[9] += 1; 原人力资源部2相关 //GC.UpdateResourceInfo(); EmpsGetExp(8); GC.AddHireTypes(new HireType(SpTotalProgress / 100, SpType)); SpType = 0; SpProgress = 0; SpTotalProgress = 0; WorkStart = false; } UpdateUI(Pp); } } } else { int Pp = CountProducePower(4); FailProgress -= Pp; if (FailProgress <= 0) { GC.CreateMessage(Text_DepName.text + "完成了 失误处理"); Failed = false; FailProgress = 0; } UpdateUI(Pp); } } if (TaskChange == true) { TaskChangeTime -= 1; if (TaskChangeTime < 1) { GC.CreateMessage(Text_DepName.text + " 完成了生产线调整"); TaskChange = false; TaskChangeTime = 0; } UpdateUI(); } if (LevelDownTime > 0) { LevelDownTime -= 1; Text_LevelDownTime.text = "降级时间:" + LevelDownTime + "时"; if (LevelDownTime == 0 && EfficiencyLevel > 1) { EfficiencyLevel -= 1; Efficiency -= 0.2f; GC.CreateMessage(Text_DepName.text + " 的头脑风暴等级下降了"); } } if (SpTime > 0) { SpTime -= 1; } }