Пример #1
0
 private void UndoSelectWeapon()
 {
     battleManager.ChangeState(BattleManager.EBattleState.Menu);
     battleManager.ClearRangeAction();
     BattleSelectWeaponMenu.Show();
     BattleActionMenu.Hide();
 }
Пример #2
0
    private void BattleAction_SelectWeapon(WeaponItem item)
    {
        battleManager.ChangeState(BattleManager.EBattleState.SelectTarget);
        if (item == null)
        {
            Debug.LogError("选择的武器是null");
        }
        else
        {
            Debug.Log(item.ToString());
        }
        BattleActionMenu.Hide();
        BattleSelectWeaponMenu.Hide();
        CharacterLogic logic = battleManager.CurrentCharacterLogic;

        logic.Info.Items.EquipWeapon(item);
        //从选择的武器确定
        var rangeType = item.GetDefinition().RangeType;
        EnumSelectEffectRangeType selRangeType = rangeType.SelectType;
        Vector2Int selRange = rangeType.SelectRange;
        EnumSelectEffectRangeType effRangeType = rangeType.EffectType;
        Vector2Int effRange = rangeType.EffectRange;

        logic.BattleInfo.SetSelectTargetParam(CharacterBattleInfo.EBattleActionType.Attack, logic.GetTileCoord(), selRangeType, selRange, effRangeType, effRange);
        battleManager.ShowSelectTargetRangeAction(logic);
        MenuUndoAction.Push(UndoSelectWeapon);
    }
Пример #3
0
    public void BattleAction_Attack()
    {
        BattleActionMenu.Hide();
        //battleManager.ClearRangeAction();
        CharacterLogic logic = battleManager.CurrentCharacterLogic;

        BuildBattleSelectWeaponMenu(logic);
        BattleSelectWeaponMenu.Show();
        MenuUndoAction.Push(UndoShowBattleActionMenu);
    }
Пример #4
0
    public void BuildBattleSelectWeaponMenu(CharacterLogic chLogic)
    {
        BattleSelectWeaponMenu.Clear();
        List <WeaponItem> weaponItems = chLogic.Info.Items.GetAllWeapons();

        foreach (var v in weaponItems)
        {
            var weaponAction = new IActionMenu.UIActionButtonInfo(v.GetName(), () => BattleAction_SelectWeapon(v));
            BattleSelectWeaponMenu.AddAction(weaponAction);
        }
    }
Пример #5
0
 /// <summary>
 /// 不显示其他的Menu
 /// </summary>
 public void UndoShowBattleActionMenu()
 {
     BattleActionMenu.Show();
     BattleSelectWeaponMenu.Hide();
 }