コード例 #1
0
    /// <summary>
    /// 点击研究
    /// </summary>
    public void OnClickResearch()
    {
        GameDataBean gameData = GameDataHandler.Instance.manager.GetGameData();

        AudioHandler.Instance.PlaySound(AudioSoundEnum.ButtonForNormal);
        //首先判断客栈等级是否足够
        if (!buildBedData.CheckCanResearch(gameData, out string failStr))
        {
            ToastHandler.Instance.ToastHint(failStr);
            return;
        }
        DialogBean dialogData = new DialogBean
        {
            title = TextHandler.Instance.manager.GetTextById(3071)
        };
        PickForCharacterDialogView pickForCharacterDialog = DialogHandler.Instance.CreateDialog <PickForCharacterDialogView>(DialogEnum.PickForCharacter, this, dialogData);

        pickForCharacterDialog.SetPickCharacterMax(1);
        //设置排出人员 (老板和没有在休息的员工)
        List <CharacterBean> listCharacter = gameData.listWorkerCharacter;
        List <string>        listExpelIds  = new List <string>();

        listExpelIds.AddRange(gameData.GetAllFamilyCharacterIds());
        foreach (CharacterBean itemData in listCharacter)
        {
            //休息日 排出不是工作或者休息的
            if (GameTimeHandler.Instance.GetDayStatus() == GameTimeHandler.DayEnum.Rest)
            {
                if (itemData.baseInfo.GetWorkerStatus() != WorkerStatusEnum.Rest && itemData.baseInfo.GetWorkerStatus() != WorkerStatusEnum.Work)
                {
                    listExpelIds.Add(itemData.baseInfo.characterId);
                }
            }
            //工作日 排出除休息中的所有员工
            else if (GameTimeHandler.Instance.GetDayStatus() == GameTimeHandler.DayEnum.Work)
            {
                if (itemData.baseInfo.GetWorkerStatus() != WorkerStatusEnum.Rest)
                {
                    listExpelIds.Add(itemData.baseInfo.characterId);
                }
            }
        }
        pickForCharacterDialog.SetExpelCharacter(listExpelIds);
    }