示例#1
0
    public bool ExePoop(BreedingSceneManager.OnPoop _callback)
    {
        int exeCount = CheckPoopTiming();

        if (exeCount > 0)
        {
            Debug.Log("ExePoop");
            int poopSum = 0;
            for (int i = 0; i < exeCount; i++)
            {
                if (m_charaRecord.status.toilet >= m_master.maxToilet)
                {
                    break;
                }

                int poopNum = (m_charaRecord.status.satiety > POOP_SATIETY_BORDER) ? 2 : 1;
                m_charaRecord.status.satiety -= POOP_SUB_SATIETY * poopNum;
                if (m_charaRecord.status.satiety < 0)
                {
                    m_charaRecord.status.satiety = 0;
                }
                m_charaRecord.status.toilet += POOP_ADD_TOILET * poopNum;
                if (m_charaRecord.status.toilet > m_master.maxToilet)
                {
                    m_charaRecord.status.toilet = m_master.maxToilet;
                }
                poopSum += poopNum;
            }
            _callback(poopSum);
            m_charaRecord.time.toiletAdd = DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss");
            return(true);
        }

        return(false);
    }
 public void ExePoopRequest(BreedingSceneManager.OnCharaSave _saveCallback, BreedingSceneManager.OnPoop _callback)
 {
     if (m_model.ExePoop(_callback))
     {
         _saveCallback(m_model.MCharaRecord);
     }
 }
 public void SetCallback(BreedingSceneManager.OnCharaSave _saveCallback, BreedingSceneManager.OnPoop _poopCallback, BreedingSceneManager.GetRoomPoopNum _getRoomPoopCallback)
 {
     m_saveCallback = _saveCallback;
     m_poopCallback = _poopCallback;
     _m_getRoomPoop = _getRoomPoopCallback;
 }