#c# #xna #playback #role
#c# #xna #воспроизведение #Роль
Вопрос:
Я создаю ролевую игру на C #, используя XNA. У меня уже есть карта и кое-что еще, но в данный момент это неинтересно. Мой вопрос таков: как я могу предоставить игроку возможность входить в дома или комнаты?
Для создания миров я использовал стандартные int-массивы, где каждое число представляет другой тип плитки. Все это работает нормально, но дом не доступен для ввода, а представляет собой сплошной текстурированный блок из чего-либо.
Кстати, я использовал Вектор3, чтобы определить, в каком мире игрок находится в данный момент и какой из них программа должна загрузить следующим.
Есть предложения, как я могу сделать дома доступными для ввода?
Комментарии:
1. прямоугольник срабатывает перед дверями, который срабатывает, когда вы наступаете на него … затем вы можете выбрать, входить или продолжать блуждать.
Ответ №1:
Один из простых способов сделать дома доступными для ввода — создать объект триггера у двери дома. Этот объект может быть простым прямоугольником вместе с идентификатором.
Пока игрок перемещается по вашей карте, проверьте, нет ли столкновения между игроком и триггером.
Когда игрок вводит этот триггер, вы можете изменить отображаемую карту на новую (интерьер дома) и переместить игрока туда, куда должна вести дверь.
Ответ №2:
Если вы используете C # для создания игры, возможно, вам захочется переключиться на MonoGame (которая практически является преемницей XNA, поскольку XNA мертва) или Unity.
Как упоминалось ранее, ваш лучший вариант в XNA — создать прямоугольник, который сработает при столкновении и изменит игровой мир.
Комментарии:
1. Спасибо за информацию о MonoGame, я только что скачал ее 😉