Lolman, что значит случайным образом? Если имеется ввиду создавать траву на блоке или нет, то вот код(для платформера):
Create in o_walt_t:
Code
switch(random(2)){ case 0: instance_create(x,y,o_walt_t) instnace_create(x,y-высота с учетом размера твоего блока,o_grass) //или можешь вместо y написать как у GameMix break; case 1: instance_create(x,y,o_walt_t) break;}
А проще создать один объект и рисовать разные спрайты: объект с травой и объект без травы. И потом делать это таким же образом как и выше, только надо заменить пару строчек кода)
Ну во-первых, художника можно заинтересовать только проектом, а не предложениями, мол давай со мной во-вторых, худ. нет резона присоедениться к тебе, а почему не к кому либо другому?(то см. п1) и в-третьих, за так ни чего не делается по поводу третьего аргумента есть конечно исключения, это люди волонтеры Но т.к. таких как ты много (без обид, но это так) то такие художники идут на расхват И эти люди помогают ради набора опыта,(или интереса, такое бывает) поэтому не сказать что это будет хороший художник. И вообще все зависит от проекта: какая графика нужна, ведь есть узконаправленные художники так сказать (например, один умеет рисовать хорошо людей, а другой вещи и т.п.) Вообщем выкладывай проект, а там уже люди посмотрят стоит ли к тебе присоедениться. Если ты плохо программируешь, то никакой художник дело иметь с тобой не захочет конечно же. Еще раз повторюсь, проект в первую очередь, а уж потом увидишь как там будет
Сообщение отредактировал Maxaon - Воскресенье, 19 Августа 2012, 17:31
Saladin, да нет, объект как раз был(куда я его только не вставлял) )
Quote
а генератор то тут зачем?
это я свой скрипт так назвал) можно канеш полноценный генер закодить так, чтобы по ходу следования рандомно создавались объекты а сзади удалялись, чтобы ресы не жрал, но не в этой сказке
Сообщение отредактировал Maxaon - Воскресенье, 19 Августа 2012, 00:19
Сегодня придумал простенький генератор. Собсно выкладываю код: var x1,x2,y2,y1; globalvar bl; x1=get_integer('x1',''); //отправная точка х x2=get_integer('x2',''); //отправная точка x2 y1=get_integer('y1',''); //конечная точка y y2=get_integer('y2',''); //конечная точка y2 bl=get_integer('bl',''); //бл* ой это кол-во блоков
x=x1; y=y1; if x1<x2 for(a=0;a<=bl;a+=1) { switch(choose(0,1,2)){ case 0: instance_create(x+32*a,y,object0); //создает блок справа break; case 1: instance_create(x+64*a,y-64,object0); создает левый нижний блок break; case 2: instance_create(x+32*a,y-32,object0); //создает правый нижний блок break; } }
Думаю все понятно, поэтому дальше писать не стал, т.к. дальше все идентично. Конечно не супер, но этим я хотел показать логику.Ведь необязательно писать супер сложный код, когда можно сделать просто.
Объяню некоторые тонкости. Я написал, что цикл будет выполняться если x1<x2, потому что чтобы указать явно в какую сторну идти. Можно и сделать наоборот, но как сказал выше не буду повторять код. Можно тут много чего усовершенстовать. Например, начиная от расположение блоков, до детального расположения путем проверок или доделать координату Y. Потому если я ее прикрутил бы стоило делать "ифы" а мне неохота Это можно прикрутить все потом... Еще добавлю, что globalvar bl я написал потому что гм у меня упрямился, мол неизвестная переменная и прочий бред. К примеру, выдал седня такую ошибку
Вроде бы смешно, а бывает и убить хочется))
Сообщение отредактировал Maxaon - Суббота, 18 Августа 2012, 22:46
Уже который час сижу додумать все немогу, хотя кажется просто. Может вы мне поможете) Есть цикл, есть координата х и у. Вообщем вот код for(a=0;a<gg;a+=1) //g-любое натуральное целое число { instance_create(x1*а,y1,obj) } Вопрос: как сделать так чтобы объект создавался путем приращения на одну и туже велечину, скажем на 32(относительно координаты х)? Надо чтобы создался объект и рядом с ним создался еще один. У меня выходит бред, т.к. а всегда увеличиватеся и расстояние, соотсветсвенно, между объектами тоже увеличивается
Добавлено (18.08.2012, 20:50) --------------------------------------------- Shevron_7, посмотри вот эту статью и ты увидишь все ответы на твои вопросы. А ладно подскажу, если mg-твоя грваитация, то просто умножь ее на sin@ Потом отпишись, работает нет. Я сам так не пробывал)
Нда, куча однотипных ответов и нет ни одного объяснения почему, например этот конструктор лучше и почему я им пользуюсь Время в трубу просто...ничего дельного
Ну так логично. 1.выделяешь массив и заполняешь случайными числами 2.задаешь цикл проверки ячеек 3.суммируешь значения какого-либо варианта 4.сравниваешь с остальными вариантами 5.выводишь самое минимальное
Добавлено (16.08.2012, 23:30) --------------------------------------------- Это теория. На практике же дело стоит иначе(для меня по крайней мере ) Есть два решения: 1.Самый простой: считать по ходу следования т.е. допустим есть стартовая ячейка(имеется ввиду двумерный массив) содержащая какоето значение. делаем цикл проверяющий ячейки стоящие близ ее на значения когда проверили, тогда начинаем сравнивать полученные значения на поиск минимального из них допустим нашли, дальше также делаем цикл проверки, только уже относительно новой ячейки Здесь, если подумать, есть некоторые нюансы. Вот те из них о которых я догодался пока я это писал: 1)допустим возникнет случай когда ячейки содержат большее значение, чем та откуда ты "пришел" здесь по логике произойдет переход назад и поэтому стоит делать доп. проверку(допустим можно запомнить, ту клетку от которой ты пришел и больше на нее не ходить ) 2)необходимо заранее задать направление следования(чтобы знать куда идти, но это не проблема) 3)это не совсем правильный вариант поэтому см. ниже 2.Можно сделать как вариант 1 только работающий несколько по другому принципу(и он долгий и сложный и затратный) Если посмотерть на т.Графов , то можно сделать что то подобное Допустим, сделать полную проверку(просто Гигансткую проверку... да просто Армагедноскую проверщину). Т.е. выходит, что это как бэ множество во множестве, содержащее множество, в свою очередь это множиство содержит другое множество и т.д. вариантов. По ходу проверки, надо выд. память куда записывать результаты сумм значений. И в конце концов сделать последний цикл проверки на наличие минимального значения да и тут тоже есть нюансы
Сообщение отредактировал Maxaon - Четверг, 16 Августа 2012, 23:32
fmangust, тогда вопрос: а что значит знать бейсик на 100%? Я например, знаю основы с++, я могу написать на нем примитивные программы. Однако, есть люди которые тоже знают основы с++, но почему то программы у них получаются по сложнее, относительно меня) Язык нельзя знать, язык-инструмент для реализации. Это как мой гаечный ключ. Надо уметь пользоваться, иметь опыт так сказать)
а не кто не догадался посетить офф. сайт game makera?? там все игры выкладываются. я там когда то находил многопользовательскую игру типа контры в TDS мне так понравилось, так как подобных игр сделаных на gm я еще не встречал)