コード例 #1
0
    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);
    }
コード例 #2
0
    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);
            }
        }
    }
コード例 #3
0
 public void SetTask(S_Task_Element STE_)
 {
     _Icon.sprite = STE_._Chest._Icon;
     _Could.text  = STE_._Could.ToString();
 }