public async System.Threading.Tasks.Task Attack(MonsterLogic victimLogic)
 {
     var damageInfo = new DamageInfo()
     {
         Damage = MonsterState.PhysicalAttackRange.Random()
     };
     await View.PerformVisualEffect(GameEntry.Config.visualEffectType.normalAttack1, new TimePointHandler[] { new TimePointHandler()
                                                                                                              {
                                                                                                                  start      = (a, b, c) => { _ = victimLogic.SufferDamagePre(damageInfo); },
                                                                                                                  realEffect = (a, b, c) => { _ = victimLogic.SufferDamage(damageInfo); },
                                                                                                                  end        = (a, b, c) => { _ = victimLogic.SufferDamagePost(damageInfo); },
                                                                                                              } });
 }
        public CreatureOldLogic CreateLogic(CreatureInfo info)
        {
            CreatureOldLogic logic;

            switch (info.type)
            {
            case CreaturesType.Monsters:
                logic = new MonsterLogic(info);
                return(logic);

            case CreaturesType.Player:
                logic = new PlayerLogic(info);
                return(logic);

            default:
                throw new NotImplementedException("还没有这种类型的Logic");
            }
        }