Вопросы товарища Likantrop'а (7) - Проблема - решение. GML и прочее. - Разработка игр на Game Maker (Simple Mode) - Форум Game Maker. Разработка игр.
Здравствуй Гость | Перейти на сайт

Главная | Форум | Регистрация | Войти
gmaker.net ;) [ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 7 из 10«125678910»
Форум Game Maker. Разработка игр. » Разработка игр на Game Maker (Simple Mode) » Проблема - решение. GML и прочее. » Вопросы товарища Likantrop'а (Вопросы серьезные,... дважды! xD)
Вопросы товарища Likantrop'а
Likantrop Дата: Понедельник, 19.10.2009, 20:21 | Сообщение # 121
Хрен заткнешь
Группа: Проверенные
Сообщений: 260
Статус: Offline
Quote (yata)
http://forum.gmaker.su/forum/11-3580-1

Ого, круто...) Но у меня таким и не пахнет...И код там ппц сложный для меня)

Quote (yata)
можно только глубину тайлов вроде..

Лажово...Ну хотя можно и тайлами сделать...
 
3bl3gamer Дата: Понедельник, 19.10.2009, 21:47 | Сообщение # 122
Хоть палкой гони
Группа: Проверенные
Сообщений: 650
Статус: Offline
землю через сюрфы? а след исчезать не должен? если нет, то, конечно, можно.
 
Likantrop Дата: Среда, 21.10.2009, 12:51 | Сообщение # 123
Хрен заткнешь
Группа: Проверенные
Сообщений: 260
Статус: Offline
Новый вопрос....Я в тупике...
Делаю следующее: создаю тайл размером 18000 на 192 из фона размером 2056 на 192:
Code
fon=tile_add(back4,0,0,18000,192,0,0,-2);

Затем в степе:

Code

sdvig+=0.5;
tile_set_position(fon,view_xview-sdvig,0);

Запускаю игру. Вроде кажется все нормально, но после того, как view_xview превышает примерно 12000, часть тайла отрисовывается как какая-то смазанная хрень...Скрин прилагаю...
Не знаете, что сие означает?

Добавлено (21.10.2009, 12:51)
---------------------------------------------
ап

Прикрепления: 4760362.jpg(72Kb)
 
FIXMAX Дата: Среда, 21.10.2009, 14:03 | Сообщение # 124
Болтун
Группа: Пользователь
Сообщений: 166
Статус: Offline
Было бы хорошо еще увидеть и оригинал (точнее как все выглядит в начале), сравнить не с чем.
И еще, я конечно не эксперт в ГМ, но "тайл размером 18000 на 192" не перебор ли это с размерами тайла?


http://bird-parrots.ru/ - Попугаи
 
WertyXBOCT Дата: Среда, 21.10.2009, 16:08 | Сообщение # 125
Каждый 5й пост мой
Группа: Страж
Сообщений: 2467
Статус: Offline
Розовые червяки! Ыыы!
Нет не знаю, но думаю, пора начинать тайлы с начала... или перемещать вид на несколько тысяч едениц обратно...


Blog:www.WeslomPo.ru
mailto: i@weslompo.ru
 
Likantrop Дата: Четверг, 26.11.2009, 21:18 | Сообщение # 126
Хрен заткнешь
Группа: Проверенные
Сообщений: 260
Статус: Offline
Quote (FIXMAX)
И еще, я конечно не эксперт в ГМ, но "тайл размером 18000 на 192" не перебор ли это с размерами тайла?

А фиг его знает)
Вообще, я думал, что он уродски растянет мой тайл, он взял и замостил им...Тем более странно, что потом такая шняга...)

Quote (WertyXBOCT)
Розовые червяки! Ыыы!

biggrin
Я попросил художника перерисовать червя, но до конца конкурса два дня, а у него куча еще работы(много чего еще нарисовать надо)...

Quote (WertyXBOCT)
Нет не знаю, но думаю, пора начинать тайлы с начала... или перемещать вид на несколько тысяч едениц обратно...

Вообще такая запара, я столько вчера вариантов перебрал...И все из-за того, что фону нельзя глубину указать >.<
Проблема в том, что длина тайла - 2056, его позицию я понемногу смещаю и фиг знает, что делать дальше...)) Теоретически можно вычислить кол-во нужных тайлов, и все их смещать...Но как-то запарно...

Добавлено (26.11.2009, 21:18)
---------------------------------------------
новый вопрос.
Мне нужно соединить все точки таким макаром: каждая точка соединяется с двумя ближайшими. Если точек всего две - рисуется одна линия. Ах да, "соединяется" значит рисуется линия между ними. Еще бы хотелось, чтобы линии повторно одни и те же не рисовались.

 
SRes Дата: Четверг, 26.11.2009, 21:31 | Сообщение # 127
Каждый 5й пост мой
Группа: Страж
Сообщений: 2512
Статус: Offline
Берем 2 ближайшие точки, проверяем чтобы они существовали ( != noone ) - рисуем.
Quote
Еще бы хотелось, чтобы линии повторно одни и те же не рисовались.

А вот с этим проблемы, лишний геморой (если, конечно, точек не очень-очень много).


Velociped Inc.
 
WertyXBOCT Дата: Четверг, 26.11.2009, 21:51 | Сообщение # 128
Каждый 5й пост мой
Группа: Страж
Сообщений: 2467
Статус: Offline
А каким макаром точки у тебя храняться, объектами?


Blog:www.WeslomPo.ru
mailto: i@weslompo.ru
 
Likantrop Дата: Пятница, 27.11.2009, 10:34 | Сообщение # 129
Хрен заткнешь
Группа: Проверенные
Сообщений: 260
Статус: Offline
Quote (WertyXBOCT)
А каким макаром точки у тебя храняться, объектами?

ага
 
WertyXBOCT Дата: Пятница, 27.11.2009, 11:38 | Сообщение # 130
Каждый 5й пост мой
Группа: Страж
Сообщений: 2467
Статус: Offline
Ну тогда проще.
Заведи где нибудь список этих точек. На всякий случай.
А искать две ближайшие точки просто, находишь ближайшую точку, запоминаешь ее, например в переменную left(если она слева конечно), в точке указываешь ссылку на себя в переменной right, и деактивируешь найденную точку. Ищешь вторую ближайшую точку... так до тех пор пока не найдешь правую точку (относительно первой, все найденые точки деактивируешь, и заносишь в список в этой точке, список потом нужно активироть и удалить). Когда все точки были перебраны (с тем условием, что правые и левые у некоторых точек будут найдены), активируешь все точки, в контроллере заносишь в список обработаных точек, и деактивируешь. Повторяешь для всех точек. После того как все точки будут найдены, рисуешь линию от левой к правой. Как то так.


Blog:www.WeslomPo.ru
mailto: i@weslompo.ru
 
3bl3gamer Дата: Суббота, 28.11.2009, 17:21 | Сообщение # 131
Хоть палкой гони
Группа: Проверенные
Сообщений: 650
Статус: Offline
Likantrop, World Of Goo делаешь? smile
 
Likantrop Дата: Пятница, 05.02.2010, 15:22 | Сообщение # 132
Хрен заткнешь
Группа: Проверенные
Сообщений: 260
Статус: Offline
3bl3gamer, нет)
его уже сделали, так что неинтересно...

Добавлено (05.02.2010, 15:22)
---------------------------------------------
Просьбочка.
Есть герой. Есть враг. Враг должен пытаться "напасть" на игрока, при этом он ограничен в перемещении длиной определенной цепи, на которой он сидит. Он может двигаться только в пределах окружности, радиус которой равен радиусу цепи. Ну как пес на цепи)

Помогите написать код такого перемещения для врага. У меня что-то тухло как-то, не получается...Надеюсь, понятно объяснил)

 
DragonSkiN Дата: Пятница, 05.02.2010, 16:03 | Сообщение # 133
Всех уже задолбал
Группа: Страж
Сообщений: 1180
Статус: Offline
уравнение окружности: (X - Xсм)^2/R^2 + (Y - Yсм)^2/R^2 = 1;
где X и Y - проверяемые координаты
Xсм и Yсм - центр окружности
R - радиус.

т.е. если (X - Xсм)^2 + (Y - Yсм)^2 < R^2, то твоя собака внутри окружности.

Добавлено (05.02.2010, 16:03)
---------------------------------------------
и вообще в ГМ можно и дистанцию до точки проверить (курим справку)



http://gamegraphycs.do.am/ - сайт о 2D графике
http://dragonskin.ath.cx:777/- доступ по хттп к сборнику ресурсов для игр


Сообщение отредактировал DragonSkiN - Пятница, 05.02.2010, 16:03
 
Likantrop Дата: Пятница, 05.02.2010, 18:47 | Сообщение # 134
Хрен заткнешь
Группа: Проверенные
Сообщений: 260
Статус: Offline
Quote (DragonSkiN)
и вообще в ГМ можно и дистанцию до точки проверить (курим справку)

я в курсе, курил немало
я могу например сделать, чтобы собака доходила до края круга, а чтобы смещалась вдоль него(при перемещении ГГ) - уже нет
либо могу сделать ленгтхдирами чтобы она по окружности ходила, но тогда она не будет внутри круга перемещаться
хочется простой какой-нибудь метод совмещения этих двух
 
Ninja Дата: Пятница, 05.02.2010, 20:19 | Сообщение # 135
Хоть палкой гони
Группа: Проверенные
Сообщений: 683
Статус: Offline
в степ, (200, 200) - коорд. центра, 100 - макс расстояние
Code
dir = point_direction(x, y, o_hero.x, o_hero.y);
tmpx = x + lengthdir_x(3, dir);
tmpy = y + lengthdir_y(3, dir);
if (point_distance(tmpx, tmpy, 200, 200) < 100)
{
   x = tmpx;
   y = tmpy;
}


Oh, my God! You kill Kenny! You bastard!
 
Likantrop Дата: Пятница, 05.02.2010, 21:03 | Сообщение # 136
Хрен заткнешь
Группа: Проверенные
Сообщений: 260
Статус: Offline
хе, а ведь это мысль)
спасибо, но я уже немного по-другому сделал, хоть и позапарней...)

Code
if instance_exists(obj_hat)
{
if point_distance(obj_ward.x,obj_ward.y,obj_hat.x,obj_hat.y)<150
{move_towards_point(obj_hat.x,obj_hat.y,5);}
else
{xx=obj_ward.x+lengthdir_x(150,point_direction(obj_ward.x,obj_ward.y,obj_hat.x,obj_hat.y));
yy=obj_ward.y+lengthdir_y(150,point_direction(obj_ward.x,obj_ward.y,obj_hat.x,obj_hat.y));
move_towards_point(xx,yy,5);}

}
 
Ninja Дата: Пятница, 05.02.2010, 21:15 | Сообщение # 137
Хоть палкой гони
Группа: Проверенные
Сообщений: 683
Статус: Offline
только лучше так сделать
Code
tmpdir = lengthdir_x(150, point_direction(obj_ward.x, obj_ward.y, obj_hat.x, obj_hat.y);
xx = obj_ward.x + lengthdir_x(150, tmpdir);  
yy = obj_ward.y + lengthdir_y(150, tmpdir);

быстрее работать будет



Oh, my God! You kill Kenny! You bastard!
 
Likantrop Дата: Суббота, 13.03.2010, 22:03 | Сообщение # 138
Хрен заткнешь
Группа: Проверенные
Сообщений: 260
Статус: Offline
Давно не работал с файлами, возник вопрос.
Написал скрипт сохранения и загрузки, есть некие глюки. Помню, что такие проблемы решал еще в первой игре ("Битва стихий", если кто может помнит biggrin ).

Скрипт сохранения:

Code
file=file_text_open_write("autosave.txt");
file_text_write_real(file,room);
file_text_writeln(file);
file_text_write_real(file,round(obj_death_numb.score);
file_text_close(file);

загрузки:

Code
file=file_text_open_read("autosave.txt");
go_room=round(file_text_read_real(file));
file_text_close(file);
global.load=1;
room_goto(go_room);

Этот скрипт, как видим, отправляет в нужную комнату. В этой комнате есть объект, отвечающий за всякую нужную шнягу.
В его событии создания:
Code
if global.load=1
{
file=file_text_open_read("autosave.txt");
file_text_readln(file); //пропускаем строку с комнатой
if !instance_exists(obj_death_numb)
{instance_create(x,y,obj_death_numb);}
obj_death_numb.score=file_text_read_real(file);
global.load=0
file_text_close(file);}

Так вот. Код работает) Перемещает в нужную комнату, делает нужный счет. НО: выскакивают две ошибки. При выполнении скрипта загрузки, и в событии создания объекта, отвечающего за важную шнягу: Error reading real. Два раза получается. Не знаете, с чем сие может быть связано?

 
Generalisimys Дата: Суббота, 13.03.2010, 23:04 | Сообщение # 139
Каждый 5й пост мой
Группа: Страж
Сообщений: 1263
Статус: Offline
Тоже была такая фигня, по идее глюк в гамаке...Пришлось пользоваться строками вместо чисел.


Блог инди-разработчика
mailto:admin@half-bit.ru
 
Wertolet Дата: Суббота, 13.03.2010, 23:16 | Сообщение # 140
Хоть палкой гони
Группа: Проверенные
Сообщений: 781
Статус: Offline
Likantrop, надо писать не file_write_real, а file_write_string.
Просто он при загрузке читает с точкой (12.123346), а при сохранений реалом с запятой (12,123346) (или наоборот я не помню).


 
Форум Game Maker. Разработка игр. » Разработка игр на Game Maker (Simple Mode) » Проблема - решение. GML и прочее. » Вопросы товарища Likantrop'а (Вопросы серьезные,... дважды! xD)
Страница 7 из 10«125678910»
Поиск:



Сообщество Gmaker.SU 2005-2012
Используются технологии uCoz
Простой вход