![]() |
2Tormoz or Anybody!
Как мне реализовать меню в игре? Tormoz предложил конечно суперский вариант, но почему-то мне кажется, что я так и делаю, но у меня ничего не выходит из-за ошибки( (о которой я уже писал)...и ничего не могу с этим поделать! |
После адских мучений:
В цикле: Код:
If gamestate$="mainmenu" Код:
Function fnMenuGame() Проблема: Если из моего меню выйти в главное (нажатием ecs) то при входе в игру, все начнется с этого черного меню, что тоже неправильно, хотя: Код:
Case 1;new gamestate$= "game" у меня идет так: Код:
If gamestate$="mainmenu" Next RenderWorld Вообщем помогите с завершением цикла! И почему у меня игра начинается с черного экранчика этой заразной функции? :bad: |
Чем плох EXIT?
|
Если честно то ошибок столько что легче заново написать с нуля.
Ошибки не синтаксические. а стратегические. Делай как я тебе написал. иначе утонешь в логике. выходить из цикла элементарно по переменной: Код:
|
To Imper (можно тебя так называть?) :rolleyes:
Exit - супер) но к сожалению он никак не действует...вообще :blink: я сам выпал... 2Tormoz Код:
Function fnMenuGame() Зато в моем коде, блин, при нажатии "новая игра" все начиналось с черного экрана...и я не знал как заверщить функцию. (см. пост выше) Короче хрен редьки не слаще...что так не пашет, что так :bad: И еще...tormoz...я не проитв твоего кода! Ты мне 100 раз писал, что бы я юзал его! Да я не против, просто я не понял как! А так я бы с радостью! Поэтому думаю, что ты зря писал, что я его "не юзаю" ... я же не баран) Зачем мне делать по-своему неправильно, если ты советуешь правильно) вывод тока 1...я просто не смог реализовать твою...идею!... |
Еще раз: графику задавай заново ТОЛЬКО если в меню менялись настройки разрешения.
И просто очищай весь мир тогда и гото на начало (там где графа инициализируется) А почему у тебя вылетает на updateworld, да еще и в главном цикле - можно только гадать. Ищи. |
давноооо суда не заходил
тут уже гон пошол :) совет #1 - зделай меню так чтобы оно в любом разрешении выглядело одинаково совет #2 - меню надо зделать так чтобы оно создавалось в начале игры, а потом если надо просто visible / invisible :) и все я конешно щас мудрю с task trees :) но пока ты вникниш что ето такое - пройдет много времени кстати остальным : task trees очень удобная оказывается вещь - засунул к примеру обновление ai и всего остального по taskам и давай если че то кусок дерева на паузу ставиш, или чет другое делаеш да и еще приоритеты и чилды класно юзаются :) а весь главный цикл довел до минимального для меня состояния : Код:
bool game_run = 1; |
Ну...и смех и слезы...
А ларчик-то просто открывался. Вот как я решил траблу, и все пашет: Код:
Function fnMenuGame() Код:
ScaleEntity (bomb\obj,scale#,scale#,scale#) Можно пойти на хитрость) fnDestroyField() если esc нажали, но тогда будет ошибка в удаоении: типа объекта нет, а вы удаляете (как я растолковал это для себя) Как мне быть в этой ситуации? |
Я тебе уже писал: чисть типы
|
удаление:
Код:
Function fnDestroyField() |
не уверен в потребности en1\obj=0 и тд
|
Хорошо! Я тоже не очень уверен...так что мне с багом делать?
|
Блин.
Найди мой пост про чистку типов и перечитай. Пишу А С Пушкину что ли ??? |
Delete Each MyType - очищает весь тип MyType - вои ваш пост
А можно мне простой примерчик по очищению? В хелпе никакого примера по Delete Each MyType не нашел! ВОт нужен пример по: Delete Each MyType |
Код:
Type TPoint Если же эти числа - указатели на объекты, к примеру, на картинку, то прежде чем удалить экземпляр типа, нужно удалить из памяти эту картинку (или любой другой объект, на который указывает переменная). Если звучит как-то непонятно, не расстраивайся, ты до того как связаться с "УДАЛИТЬ_КАЖДЫЙ" всё нормально удалял. Теперь не знаю чё будет... |
Часовой пояс GMT +4, время: 10:10. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot