Exemplo n.º 1
0
    protected override List <ButtonData> CreateMyButtonData()
    {
        var commandData = GetSkillData();
        //var dataList = BattleController_mono.Instance.battle.GetCommandTargetDicide(commandData).GetTargetPool();
        var targetPool = BattleController_mono.Instance.battle.GetTargetPool(commandData);
        var resultList = new List <ButtonData>();

        bool allSelect = !Battle_targetDicide.IsInputSelect(commandData._target);
        var  btType    = (allSelect) ? ButtonData.ButtonType.Selected : ButtonData.ButtonType.Selectable;

        foreach (var target in targetPool)
        {
            if (!target.IsAlive())
            {
                continue;
            }
            //使用可能かどうかの判断
            bool isuseable = Battle_targetResource.IsUseAble(commandData._TargetResourceType, true, target);
            if (!isuseable)
            {
                btType = ButtonData.ButtonType.Unselectable;
            }

            resultList.Add(new ButtonData(target._displayName,
                                          CreateClickEvent(target, commandData),
                                          btType));
        }
        return(resultList);
    }
Exemplo n.º 2
0
    protected override List <ButtonData> CreateMyButtonData()
    {
        var targetList = _menuCharctes.GetTargetPool(GetMyItemData()._data);

        bool allSelect = !Battle_targetDicide.IsInputSelect(GetMyItemData()._data._targetType);
        var  btType    = (allSelect) ? ButtonData.ButtonType.Selected : ButtonData.ButtonType.Selectable;
        var  result    = new List <ButtonData>();

        foreach (var target in targetList)
        {
            //クリックイベントの作成
            UnityEvent ue = new UnityEvent();
            ue.AddListener(() => {
                _menuCharctes.UseItem_menu(GetMyItemData()._data, target);
                _menuCharctes.SyncParam_pl();
                _successEvent?.Invoke();
            });
            //使用可能かどうかの判断
            bool isuseable = Battle_targetResource.IsUseAble(GetMyItemData()._data._targetResource, true, target);
            if (!isuseable)
            {
                btType = ButtonData.ButtonType.Unselectable;
            }
            //作成
            var add = new ButtonData(target._displayName, ue, btType);
            result.Add(add);
        }
        return(result);
    }
Exemplo n.º 3
0
    protected override void TrrigerEffect(int attack, CommandData command, List <BattleChar> targetList, bool isCure, Action <bool, bool, BattleChar, int> damageAction)
    {
        foreach (var target in targetList)
        {
            var actNum = Battle_targetResource.Action(command._targetResourceType, attack, target, isCure);

            damageAction?.Invoke(isCure, !target.IsAlive(), target, actNum);
        }
    }
Exemplo n.º 4
0
    protected override List <ButtonData> CreateMyButtonData()
    {
        //var targetPool = BattleController_mono.Instance.battle.GetTargetPool(GetMyItemData()._data).GetTargetPool();
        var  targetPool = BattleController_mono.Instance.battle.GetTargetPool(GetMyItemData()._data);
        var  result     = new List <ButtonData>();
        bool allSelect  = !Battle_targetDicide.IsInputSelect(GetMyItemData()._data._targetType);
        var  btType     = (allSelect) ? ButtonData.ButtonType.Selected : ButtonData.ButtonType.Selectable;

        foreach (var target in targetPool)
        {
            //使用可能かどうかの判断

            bool isuseable = Battle_targetResource.IsUseAble(GetMyItemData()._data._targetResource, true, target);
            if (!isuseable)
            {
                btType = ButtonData.ButtonType.Unselectable;
            }

            result.Add(new ButtonData(target._displayName,
                                      CreateClickEvent(GetMyItemData()._data, target),
                                      btType));
        }
        return(result);
    }
Exemplo n.º 5
0
        public void Test_IsUseAble(int hpnow, int spnow, ResourceType resourcetype, bool iscure, bool expect)
        {
            var pl = CreatePl(hpnow, spnow);

            Assert.AreEqual(expect, Battle_targetResource.IsUseAble(resourcetype, iscure, pl));
        }