static public S_Task GetRandomTask() { S_Task Tas = new S_Task(); S_I_Diff DIFF_ = S_A_GameRoom.GetInstance().GetDiff(); float MUL_DIF = DIFF_.GetDiffMul(); float MUL_DIF_M = 2 - MUL_DIF; int Could_Task = ConvertDiff(Random.Range(0, 100), 100, MUL_DIF, 3); int Max_Chest_Task = ConvertDiff(Random.Range(0, 100), 100, MUL_DIF * 1.1f, 4); List <GameObject> Temp = new List <GameObject>(); Temp.AddRange(S_A_GameRoom.GetInstance().GetAllTemplate()); for (int T_ = 0; T_ < Could_Task; T_++) { S_Task_Element ST = new S_Task_Element(); GameObject TT = Temp[Random.Range(0, Temp.Count)]; Temp.Remove(TT); ST._Could = Random.Range(1, Max_Chest_Task); ST._Chest = TT.GetComponent <S_A_Chest>(); Tas.Reward += (int)(ST._Could * 10f * MUL_DIF); Tas.Reward = (int)(Tas.Reward * 1.1f); Tas.Timer += ST._Could * 25f * MUL_DIF_M; Tas._ListTask.Add(ST); } return(Tas); }
public void E_Chest(S_A_Chest Ch_) { if (_Task != null) { S_Task_Element SE = _Task.GetSubTask(_Task.CouldSubTask() - 1); if (Ch_._ID == SE._Chest._ID) { SE._Could--; } else { _Task.Failed(); } if (SE._Could <= 0) { _Task.DeleteTask(_Task.CouldSubTask() - 1); } } }
public void SetTask(S_Task_Element STE_) { _Icon.sprite = STE_._Chest._Icon; _Could.text = STE_._Could.ToString(); }