Понял, спасибо. Не погружался в исходники Dapper, видимо, нужно было там подсмотреть. Да и в документации видел, что используется в примере Query, но мне казалось, что нет, ExecuteAsync тоже будет работать :)
Что-то интересно мне стало, думаю, может заняться разработкой простой игры, потренироваться как раз, так как на работе в будущем может потребоваться навык работы с Unity.
Нужно начать с архитектуры и продумать её, что вот есть персонаж, у него есть те самые абилки. Есть игрок, который может фокусироваться на одном или нескольких объектах вокруг себя (вдруг будет магия по области). Персонаж может иметь в арсенале несколько абилок. Есть эффекты от абилок, которых может быть несколько. Есть объекты игрового мира, которые как-то реагируют на эти самые эффекты. Короче, здесь нужно хорошо подумать. Сначала продумать архитектуру игры надо, а потом уже писать. А анимация это вообще последнее дело, которое прикручивается к игроку и объекту, получающему эффект от абилки.
Взять игру Warcraft 3. Если посмотреть как там делаются в редакторе карт всякие абилки, например, атаки, то анимация там просто анимация, которой может и не быть. Я думаю, что нужно анимацию делать как опцию. То есть, её может не быть совсем, а добыча дерева идёт. Что если в игре появится магия добычи, что переписывать весь код? Я не критикую твоё сообщение я его читал и вижу, что есть разные варианты, я просто обсуждаю.
Я сразу говорю, игры не писал и не работал с Unity (только запускал демонстрационные игры). Представляю себе как-то это так: подходишь к дереву и оно получает как бы фокус игрока. Если дерево в фокусе (или другой какой-то объект игрового мира), то игрок может применить к объекту, который в фокусе какое-то действие, которых может быть много. Ты применяешь действие "Добыча", запускается какой-то тобой написанный код, который отбирает у дерева сколько-то HP в секунду или наоборот, есть время, за которое ты можешь добыть дерево и его HP снижается равномерно за это время (разные формулы). Как только объект (дерево) теряет фокус, добыча прекращается. Теряет оно фокус, когда ты от него отходишь и оно не попадает в определённую область вокруг игрока. Когда ты подходишь к нескольким объектам, то выбирается автоматом, что сейчас будет в фокусе. Ты сам пишешь алгоритм, что будет автоматически выбираться и возможность изменить объект, который в фокусе. В той же Terraria примерно так и сделано, там же ты фокусом выбираешь, что добывать. Да и в целом кажется это логичным.
Не уверен нужно ли опираться именно на анимацию. Думаю, нужно просто запускать механизм добычи дерева, а анимация это просто анимация. Возможно, эту самую анимацию можно подстраивать под добычу, но точно не наоборот.
Во-первых, код нужно выкладывать в нормальном виде (не в одну строку), это читать тяжело. Во-вторых, судя по коду, явно дело не в нём. Точнее, не выполняется ничего такого, что может вызывать зависание или долгую работу. Возможно, когда меняется значение селектора или переменной, то что-то уже тяжелое происходит.
soloveid, открытия и закрытия форм/окон, а не страниц. Всё правильно. Ну или никто не мешает ему не создавать новые страницы, а использовать существующие. По вашему я должен под каждый вопрос заново переписывать код со всеми тонкостями? Думаю, нет. В примере по ссылке сама идея как реализовать навигацию по страницам, а что делать со страницами каждый решит для себя сам. Решить создать новый экземпляр страницы или использовать ранее созданный - это элементарная задача
KaRaMiD, если проект только начат, можешь его залить куда-то, чтобы люди могли смотреть твой проект. Сидеть вот так разбираться конечно можно, но найдётся ли такой человек. Вопрос...
alexxxey_code, ну так напиши решение. Вопросы здесь не лично для твоего решения проблемы, а для всех людей, которые в будущем столкнутся с такой проблемой. Правда без кода смысла от решения, наверное, тоже много не будет. Я бы вообще удалил этот "вопрос".
Александр Фандеев, в задании нет условия в базовом классе писать тип возвращаемого значения как тип производного класса. Да и производных классов может быть много разных с разной иерархией наследования. Возможно, это проблема перевода.