Ответ: Внедрение стартого меню
Вот ещё вопрос есть: когда мне нужно сделать паузу, я останавливаю обработку процессов, выключая Update-ы, а когда продолжаю игру, то все враги и аптечки по своему состоянию(убит-жив, собран-не собран) остаются прежними, а если я загружаю другое место игры, то как мне отследить состояния, чтобы выгрузить их в игру?
|
Ответ: Внедрение стартого меню
Ну, составь список, всего того, что должно учитываться при загрузки левела, из которого уходишь и сохрани в файл, например или в банк или в массив или в тип, потом загрузи когда возвращаться будешь, да это всё просто, сложно игру сделать!
|
Ответ: Внедрение стартого меню
Это-то понятно, я вот пример почитал, переменные сохранять могу:
http://forum.boolean.name/showthread.php?t=1014 Дело в другом: у меня тип с врагами, и нужно сохранить, каких именно я убил, а каких - нет :dontknow: |
Ответ: Внедрение стартого меню
Ну, записывай тех которых убил, в тёмную книгу сохранения:pure_magic: я не знаю как ещё объяснить вроде просто всё.
и пусть они больше не загружаются. И с объектами которые можно подобрать поступай тем же борзом. А вообще лучше не возвращаться обратно, а то возникает ощущение что где-то я уже это видел, но это ощущение не похоже на дежавю это скорее говорит о том что игрок ходит по кругу. Ааа, ну тех которых убил Delete из типа, а их имена записывай, метод вроде тот-же, только с другой стороны пусть функция проверяет перед стартом кто или что было удалено из файла или откуда там. При старте проверяй что-то вроде if not б\блабла="бот который" делете б, я не помню как там на блитзе. Ну да тут смотря чего больше мёртвых ботов или живых, это уже оптимизация, тут думай сам каких сохранять, но в любом случае, сохранять нужно, либо живых либо мёртвых в зависимости от дальнейший загрузки! |
Ответ: Внедрение стартого меню
Я предлагаю забыть о сохранении состояния уровня, хранить только номер уровня: если игрок не прошёл уровень, то ничего страшного, заново начнет.:)
А потом когда-нибудь доработаешь. |
Ответ: Внедрение стартого меню
Думаю, что это неплохая идея, учитывая, что это первый проект :)
|
Ответ: Внедрение стартого меню
Цитата:
|
Ответ: Внедрение стартого меню
Цитата:
Когда у него будут нужные умения, то сделает всё что захочет. Если игрок предрасположен к неадеквату, то он найдёт другую игру без сохранения и психанёт на ней. Короче, у такого почти нет выбора.:) |
Ответ: Внедрение стартого меню
Да, вот ещё заключительный вопрос: как мне лучше всего организовать игру:
1)Сделать меню и все уровни в одном файле, загружать всё только после нажатия "New Game", а потом описывать переход по уровням - громоздкий код 2)Загрузить вообще всё сразу, скрыть и потом показывать, когда и что нужно(также в одном файле) - скрывать слишком много, код чуть-чуть поменьше, мне кажется, будет, но, по-моему, всё равно неудобно 3)Загрузить вообще всё, создать отдельные файлы уровней с функциями уже загруженных объектов и подружать когда надо - ну тут вообще не понятно, как тогда удалять функцию CreateBlaBla() со всеми её объектами...способ получился бы хорошим, если уровни можно бы было подгружать как функции и впоследствии удалять их, чтобы не нагружать комп |
Ответ: Внедрение стартого меню
Я б посоветовал в начале запуска игры загрузить все что касается интерфейса меню. И по возможности загрузить то что будет общим во всех уровнях. Там например интерфейс геймплея, персонажа, может еще что то.
Далее я б написал функции что то вроде этих: LoadLevel(levelname$) - для загрузки необходимого уровня. ClearLevel() - При окончании уровня удаляет все данные уровня для того, что б не мешали при загрузке следующего уровня, другими словами уберем шлак. Возможно здесь тоже пригодится параметр levelname$- это уже зависит от тебя и игры. Initialize(levelname$) - Подготовка переменных (например координаты X,Y,Z игрока на каждом уровне). Настройки камер и прочего что в разных уровнях будет отличатся. А загадочный levelname$ - путь к файлу с описанием левела. Либо можно по другом: PHP код:
|
Ответ: Внедрение стартого меню
Лично я предлагаю тот вариант, который будет удобней для тебя. Если ты будешь потом выкладывать исходники куда-то, то лучше удобночитаемый, красивый код. Если же это проект чисто для себя, то можно писать костыль на костыле, если тебе так удобно. Все равно потом можно будет оптимизировать
|
Ответ: Внедрение стартого меню
Hulk-DS, объясни, пожалуйста, как мне сделать функцию ClearLevel(), если нужно удалить всех врагов, сделанных типом?
|
Ответ: Внедрение стартого меню
Мало написал. Я не знаю в чем заключается твое непонимание данной проблемы...
Просто очищаешь все что есть только в этом уровне (модели, рисунки текстуры, звуки и т.д.) Припустим есть у тебя пару типов: PHP код:
Пишем: PHP код:
ClearWorld [entities][,brushes][,textures] В этом заключалась проблема? |
Ответ: Внедрение стартого меню
Да, в этом, просто у меня постоянно вылезали ошибки, либо не работало вовсе, сейчас попробую код заново весь перестроить :)
|
Ответ: Внедрение стартого меню
Уже крен знает какой рас пощу эту ссылку. Связанные списки в Blitz3D
Если всю статейку освоишь, то со списками проблем появляться больше не должно. |
Часовой пояс GMT +4, время: 00:46. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot