Arz, в GM нет функции, которая получала бы произвольные имена файлов из папки. Нужно либо использовать стороннюю dll, либо переименовывать музыку под определенный формат, либо записывать имена файлов с музыкой в текстовый документ и считывать их от туда. Напишу про второй вариант:
Добавь sound в соответствующую папку, только не выбирай мелодию. Создай объект и у него create напиши:
Code
num=0
В step напиши:
Code
if !sound_isplaying(sound0) //проверяем играет ли мелодия { if file_exists('sound'+string(num)+'.mp3') //если нет, то проверяем существует ли мелодия в папке { sound_replace(sound0,'sound'+string(num)+'.mp3',3,0) // если существует то добавляем её к проекту sound_play(sound0) // и проигрываем num+=1 // переходим к следующей мелодии } else num=0 // если мелодия не существует, то начинаем проигрывать с первой }
В папку с проектом помести музыку в формате mp3 и переименуй их по шаблону sound0, sound1, sound2.... и т.д хоть до скольки. Вся эта музыка будет проигрываться по очереди.
Сообщение отредактировал LunarPixel - Понедельник, 15 Августа 2011, 15:52
каксделать гравицацию и физику на ГМ? ГГ идёт идёт и даже если земля кончается не падает, по склону или лестнице не спускается. Если ты стоишь на краю пропасти и думаешь прыгать или нет, то лучше прыгнуть. (с) Джон Леннон
фурилон, нужно прочитать справку от и до, почитать статьи, посмотреть примеры в крайнем случае, потом проанализировать полученные знания, включить мозг и тогда всё получится. Если лень это делать, то вообще незачем тогда заниматься созданием игр или чего то ещё. Ибо если бы хоть справку осилил, то увидел бы такие функции, как gravity и gravity_direction
В кратце суть проблемы: при расстановке башен мышью они игнорируют столкновения с объектами.
Теперь подробнее. Upor – невидимый объект, которым я маркирую занятые области. Inventar – окно инвентаря. В зависимости от индекса меняется тип башни, которую оно создает. По клику создает объект Osnovanie. Osnovanie – промежуточный объект, который привязан к курсору мыши для расстановки башен. Он проверяет свободные области.
Для проверки я пока написал, чтобы Osnovanie рисовал фиолетовую окружность, когда нет столкновения и красную, когда есть. В итоге он всегда рисует красную. Я даже понял почему: несмотря на то, что проверка столкновения стоит в объекте Osnovanie, проверяется почему-то столкновение объекта Inventar. Т.е. как только я убираю Upor из-под инвентаря – круг становится фиолетовым.
Может был такой вопрос, но: как сделать передвижение ГГ как в стратегии- выделяем ГГ и курсором показываем место, куда перейти? Если ты стоишь на краю пропасти и думаешь прыгать или нет, то лучше прыгнуть. (с) Джон Леннон
выделяем ГГ и курсором показываем место, куда перейти?
e_x с выделением не парился еще но движение можно осуществить так: в Create перса:
Code
xx=x yy=y
Дальше в Step:
Code
if mouse_check_button(mb_right)//если нажата правая кнопка мыши... {xx=mouse_x;yy=mouse_y}//задаем точку к которой нужно идти... if !( xx=x and yy=)//если новая точка не сходится с позицией перса... {mp_ptential_step(xx,yy,speed)}//ведем перса к заданой точке.
P.S. возможно в написании ф-ций допустил ошибки=))
если честно уже фиг знает сколько балуюсь ГМ-ом, но правильно настраивать эти ф-ции(а также vspeed\hspeed) так и не научился=)))уже придумал кучу способов как делать аналогичные действия и они работают как надо, а эти демоны не ведутся=)))
Arz, а у тебя есть опыт в создании ММО, чтобы писать статью?! Напиши урок + пример, основанный на любом жанре ММО. Но только если это будет что то новое, а не то что уже есть. Ну это лично мое мнение. Ты то можешь делать всё, что тебе захочется.
Arz, а у тебя есть опыт в создании ММО, чтобы писать статью?! smile
Да, я начал увлекаться этим ещё с прошлого года
Quote (LunarPixel)
Напиши урок + пример, основанный на любом жанре ММО. Но только если это будет что то новое, а не то что уже есть. Ну это лично мое мнение. Ты то можешь делать всё, что тебе захочется. smile
Я как бы планировал написать всё старенькое, только более подробно. Ладно, спасибо за совет: сделаю и то, и то P.S. Утопал писать примерчик
Я как бы планировал написать всё старенькое, только более подробно.
Ну можешь и так конечно, таких уроков по крайней мере мало, в отличии, например, от уроков по созданию ТДС. Все же добавь что нибудь свое, какую нибудь интересную особенность, или жанр выбери необычный для ММО. Чтобы было интересно и тем, кто уже умеет работать с 39dll
Делая стратегию, решил добавить всем знакомый приём открытия карты, по мере продвижения по ней ГГ ( проявление из чёрного ). Решил сделать это простейшим способом: тёмная зона- это большое количество чёрных объектов, которые при появлении в прописанный им радиус взаимодействия с ГГ, исчезают, оставляя под собой уже изученный участок. Но решив сделать так, не понял как заставить появляться детали самой карты- лес, вода, нпс. Ведь на их месте может быть только 1 объект, и в данном случае это чёрный кусочек. Как решить эту задачу? =) Пожалуйста, уже день голову ломаю))) Если ты стоишь на краю пропасти и думаешь прыгать или нет, то лучше прыгнуть. (с) Джон Леннон
фурилон, при расстановке объектов в комнате убери галочку Delete underlying на вкладке Objects, это позволит ставить в одну и туже позицию много объектов, не удаляя предыдущие. Таким образом сделай карту и поверх заставь её черными объектами, все объекты под черными сохранятся.
или можно просто при создании комнаты "построить" эти черные пятна кодом... хотя мне кажется что это лишняя нагрузка и легче нарисовать черный сурфейс и стирать его вокруг гг... Более мощный компьютер глючит быстрее и точнее.