![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 10.10.2011
Сообщений: 2
|
![]()
Здравствуйте. Решил продолжить свое изучение C# на практике. Хочется написать небольшой рогалик. В общем - сейчас реализовал только до жути примитивный рендер карты из массива, и движение/столкновение персонажа("@").
Но вот чувствую что я пишу всё через задницу, и ничего "правильного" в моем коде нет. Конкретные неувязки:
Ну и в общем хотелось бы посмотреть на то, как нужно делать правильно. ![]() Спасибо. Код:
|
![]() |
![]() |
![]() |
#2 |
personality
Старожил
Регистрация: 28.04.2009
Сообщений: 2,899
|
![]()
Мне Ваш код не понравился.
Во-первых, надо использовать декомпозицию, а у Вас всё в куче. А в декомпозированных объектах следить за уровнями доступа, временем жизни подэлементов. Во-вторых, надо писать на "языке предметной области", т.е. в терминах сущностей для рогалика (работу их вычленить как раз при декомпозиции). В-третьих, нужны абстракции, не привязывайтесь к консоли, киинпутам, символам, массивам и т.п. (оборачивайте по возможности все такие вещи - по идее при прохождении предыдущих этапов). В-четвёртых, в рогалике обычно используют "слои", а у вас карта "плоская", когда герой стоит на клетке - она не является полом, а является героем, и это крест для любой интеракции в игре. В-пятых, из-за непроработанных этапов 1-3 у Вас плодится копипаста и отсутствие гибкости. Я бы, если собирался делать простой рогалик, начал бы минимум с чего-то такого (вложение). Хотя, конечно, там много чего ещё бы сделать, чтобы соответствовало моим же словам (этапам), как минимум, карту надо вынести в отдельный класс. Ответы на все 3 Ваших вопроса там есть, но их надо малость поискать. Последний раз редактировалось phomm; 28.10.2014 в 19:55. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Посмотрите мои код на Делфи (Азбука Морзе) | darla1991 | Помощь студентам | 0 | 21.10.2012 15:02 |
Roguelike игра на WinAPI | apromix | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 1 | 20.08.2011 15:19 |
Посмотрите код! | Spicus | Visual C++ | 6 | 30.01.2011 14:47 |
нужна Блок-схема... посмотрите код | Настёна_19 | Помощь студентам | 0 | 26.12.2010 03:05 |
Посмотрите код | Assemblerru | Общие вопросы C/C++ | 3 | 05.05.2010 17:57 |