Esempio n. 1
0
    //----------------------------------------------------------------ButtonFunctionArea----------------------------------------------------------------//


    public void SetBattleQueue()
    {
        //予めデリゲートに関数を登録
        SomeAttack attackToEnemy = new SomeAttack(AttackToEnemy);
        SomeAttack attackToParty = new SomeAttack(AttackToParty);

        foreach (Data Value in agilityOrder)             //DictionaryのValue値をもとに攻撃デリゲートがQueueされていく(Magic関数などもいる)
        {
            if (Value.KindOfChar != Data.Kind_Char.ENEMY)
            {
                if (Value.KindOfCommand == Data.Kind_Command.ATTACK)
                {
                    commandQueue.Enqueue(attackToEnemy);            //DataにEnum型のATTACK、MAGIC...を用意してif文でEnqueueするSomeAttack関数を変える
                }
                else if (Value.KindOfCommand == Data.Kind_Command.ATTACKMAGIC)
                {
                    ;
                }
            }
            else if (Value.KindOfChar == Data.Kind_Char.ENEMY)
            {
                if (Value.KindOfCommand == Data.Kind_Command.ATTACK)
                {
                    commandQueue.Enqueue(attackToParty);           //DataにEnum型のATTACK、MAGIC...を用意してif文でEnqueueするSomeAttack関数を変える
                }
                else if (Value.KindOfCommand == Data.Kind_Command.ATTACKMAGIC)
                {
                    ;
                }
            }
        }
    }
Esempio n. 2
0
        public void AttackUser(SomeAttack someAttack)
        {
            SaveStats();
            double punch = Bot.Unit.TakePunch(someAttack());

            log.logSaveAttack(Player.Name, punch);
        }