コード例 #1
0
    public void Request(IBattelStateData battel)
    {
        Action act = () => battel.AssingNewState(new ImplementationState());

        // Реализовать действия врага
        battel.Enemy.BringCardsToBattlefield(0.8f, act);
    }
コード例 #2
0
    public void Run(IBattelStateData battel)
    {
        this.battel = battel;
        battel.OnInteractableButtonNextTurn(true);

        battel.Player.ReservCards.ForEach(x => x.SetClickListener(SelectReserveCard));
        battel.Player.Cell.ForEach(x => x.SetClickListener(PutCardFromReserve));
    }
コード例 #3
0
    public void Run(IBattelStateData battel)
    {
        (this.Battel, finishRound) = (battel, battel.OnNextTurn);
        battel.OnInteractableButtonNextTurn(false);

        Battel.GetAllAttackCards().ForEach(x => x.Combat.RoundData = Battel.CombatData);

        var startPhase = new StartRoundAbilityPhase(Battel, ApplyCardResetCounter);

        Battel.Player.ReservCards.ReservLocation(startPhase.Execute, -500, 90);
    }
コード例 #4
0
    public void Run(IBattelStateData battel)
    {
        this.battel = battel;

        //Очистить данные
        battel.Player.AttackCards.ForEach(x => x.Warrior.Clear());
        battel.Enemy.AttackCards.ForEach(x => x.Warrior.Clear());

        battel.OnInteractableButtonNextTurn(true);
        battel.Player.AttackCards.ForEach(x => x.SetClickListener(SelectReserveCard));
        battel.Enemy.AttackCards.ForEach(x => x.SetClickListener(AssignAttack));
    }
コード例 #5
0
    public void Request(IBattelStateData battel)
    {
        // Сменить удачу
        battel.Enemy.Fortune = !(battel.Player.Fortune = !battel.Player.Fortune);

        // Пропустить резерв, если все карты на поле боя живы
        if (battel.GetAllAttackCards().Count == 8)
        {
            battel.AssingNewState(new ImplementationState());
        }
        else
        {
            battel.AssingNewState(new ReserveState());
        }
    }
コード例 #6
0
    public void Request(IBattelStateData battel)
    {
        // внедрить данные о действиях врага в карты на поле боя
        var data = JsonConvert.DeserializeObject <List <int> >(battel.Enemy.Report);

        for (int i = 0; i < data.Count; i++)
        {
            battel.Enemy.AttackCards[i].Warrior.AttackTargetID = data[i];
        }

        Action act = () =>
        {
            battel.BattelSpecific.Rounds++;
            battel.AssingNewState(new RoundState());
        };

        battel.Player.AttackCards.ReturnCardToPlace(act);
    }
コード例 #7
0
    public void Run(IBattelStateData battel)
    {
        battel.OnInteractableButtonNextTurn(false);

        new ImplementationAbility(battel, () => battel.OnNextTurn()).Execute();
    }
コード例 #8
0
 public void Request(IBattelStateData battel)
 {
 }
コード例 #9
0
 public void Request(IBattelStateData battel)
 {
     battel.AssingNewState(new TacticsState());
 }
コード例 #10
0
 public void Run(IBattelStateData battel) =>
 this.battel = battel;
コード例 #11
0
 public void Request(IBattelStateData battel)
 {
     battel.InitialDefinitionFortune();
     battel.AssingNewState(new ReserveState());
 }