RS Game Maker Community
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

 
Расширенный поиск
  Главная  Форум   Вики Блоги FAQ Игры Статьи Примеры Войти Регистрация  
Вики
Все желающие приглашаются редактировать вики. Можете писать о своих (или чужих) играх, размещать туториалы, постить статьи - главное навесить категорию.
Страниц: 1 ... 359 360 361 362 363 364 365 366 367 ... 370   Вниз
  Печать  
Ответы@Gmakers.xyz — все вопросы сюда
0 Пользователей и 2 Гостей смотрят эту тему.
deathsoul
дезсоул
Ветеран форума
*****

Репутация: 548
Offline Offline

Награды:
Легенда сайта
Сообщений: 1 853


21 Апреля 2011 в 01:14
Чтобы не было тем с вопросами, которые содержат всего два-три сообщения, все свои вопросы задавайтесь здесь. Если вопрос окажется слишком сложным для общей темы, модераторы всегда могут вынести обсуждение в отдельную тему.
Для этой темы действуют те же правила, что и для всего раздела, так что перед тем, как задать вопрос, обязательно ознакомьтесь с этой темой: «Ознакомьтесь, прежде чем задать вопрос». И не забудьте проверить, нет ли ответа на ваш вопрос в FAQ по Game Maker.
Последнее редактирование: 13 Октября 2013 в 19:01 от Огион
 
tolich
to ne lich
Ветеран форума
*****

Репутация: 220
Offline Offline

Сообщений: 1 562


moonlite

Ответ № 7241 23 Апреля 2018 в 10:17
II.1.2. же. Только вместо draw_text надо использовать draw_text_transformed.

ELGReeN
Активный участник
**

Репутация: 8
Offline Offline

Сообщений: 124


Ответ № 7242 23 Мая 2018 в 22:50
Подскажите кто знает,  :GMS:html5
1) Ввод текста в броузере, английская раскладка, символ собачки - "@" вместо шифт+2 почему то на тильде.
2) И самое печальное, русский ввод совсем не работает.

Что пробовал:
Разные шрифты
Диапазоны 1-255 1040-1105 1024-1279
keyboard_string и keyboard_lastchar

tolich
to ne lich
Ветеран форума
*****

Репутация: 220
Offline Offline

Сообщений: 1 562


moonlite

Ответ № 7243 28 Мая 2018 в 11:04
Действительно, странно: в британской раскладке @ это Shift+'.

Илья
Ветеран форума
*****

Репутация: 100
Offline Offline

Сообщений: 1 572

Ответ № 7244 04 Июня 2018 в 16:19
Он вроде умер давным-давно. Поправьте, если я не прав.

input.txt
Не очень
Активный участник
**

Репутация: 20
Offline Offline

Сообщений: 156


stdin

Ответ № 7245 11 Июня 2018 в 20:07
Всё просто – если max_length <= 0, то цикл ни разу не выполнится и переменные lx и ly останутся неопределенными. Чтобы победить это, достаточно задать им значение по умолчанию: х и у соответственно.

Кстати это напомнило мне одну фичу GM. А именно, что область видимости локальных переменных – весь скрипт, независимо от того, где они объявлены. Вот например
v = "self";

var v = "local";

show_message( v );   // "local"
show_message( self.v ); // Error: uninitialized variable 'v'

Кажется, что первое присваивание записывает значение в переменную объекта (self.v), но это не так, т.к. локальная переменная (local.v) в том месте уже видна. Соответственно, строка записывается в неё, а self.v остаётся неопределённой.
input.txt
Не очень
Активный участник
**

Репутация: 20
Offline Offline

Сообщений: 156


stdin

Ответ № 7246 11 Июня 2018 в 23:56
Я имел в виду это (8-9 строка)

draw_sprite(sprite_index,image_index,x,y);

var max_length, solid_object;
max_length = distance_to_point(mouse_x, mouse_y);
solid_object = objWall;

var lx, ly;
lx = x;
ly = y;

for (i = 0; i < max_length; i+=1) {
    lx = x + lengthdir_x(i, direction);
    ly = y + lengthdir_y(i, direction);
    if(collision_line(x, y, lx, ly, solid_object, 1, 0)) {
        break;
    }
}

draw_line(x,y,lx,ly);
Макасин
[s]
Младший администратор
Старожил
******

Репутация: 350
Offline Offline

Награды:
Легенда сайта
Сообщений: 4 313


[/s]

Ответ № 7247 12 Июня 2018 в 23:25
Столкнулся тут с проблемой, может кто-то что-то знает.
Открыл проект, который делал на студии еще несколько лет назад и тогда все точно работало. Сейчас, на той же студии, но более новой версии полностью сломана физика. Даже сложно выделить проблему, она просто ведет себя неадекватно.
Используется стандартный движок, беглый осмотр проблему тоже не выявил. Разве что некоторые физические маски столкновений сбились, но их поправил. Единственная зацепка — постоянно "WARNING: Too many manifolds in collision" в консоли. Гугление говорит, что это от постоянных множественных столкновений, но их тоже нет.

Энтузиазм нашему форуму чужд. Sad but true.
Ogion.
Илья
Ветеран форума
*****

Репутация: 100
Offline Offline

Сообщений: 1 572

Ответ № 7248 13 Июня 2018 в 00:21
А может маски коллизий больше самих спрайтов? Так визуально коллизий не будет а по факту они могут быть.

Макасин
[s]
Младший администратор
Старожил
******

Репутация: 350
Offline Offline

Награды:
Легенда сайта
Сообщений: 4 313


[/s]

Ответ № 7249 13 Июня 2018 в 01:03
Не, не из-за этого

Энтузиазм нашему форуму чужд. Sad but true.
Ogion.
tolich
to ne lich
Ветеран форума
*****

Репутация: 220
Offline Offline

Сообщений: 1 562


moonlite

Ответ № 7250 13 Июня 2018 в 10:20
https://www.reddit.com/r/gamemaker/comments/4lqhj2/help_warning_too_many_manifolds_in_collision/
https://forum.yoyogames.com/index.php?threads/what-does-warning-too-many-manifolds-in-collison-mean.18733/
https://web.facebook.com/groups/GamemakersIJ/permalink/1444090768997651/?_rdc=1&_rdr

Макасин
[s]
Младший администратор
Старожил
******

Репутация: 350
Offline Offline

Награды:
Легенда сайта
Сообщений: 4 313


[/s]

Ответ № 7251 01 Июля 2018 в 07:48
Раздели и округли.

Энтузиазм нашему форуму чужд. Sad but true.
Ogion.
Макасин
[s]
Младший администратор
Старожил
******

Репутация: 350
Offline Offline

Награды:
Легенда сайта
Сообщений: 4 313


[/s]

Ответ № 7252 01 Июля 2018 в 20:48
"Программирование — это не знание языка, а умение решать задачи"

Да сотни способов. Раздели на десять, убери дробную часть, умножь на десять. Например. Или придумай способ получше.

Энтузиазм нашему форуму чужд. Sad but true.
Ogion.
input.txt
Не очень
Активный участник
**

Репутация: 20
Offline Offline

Сообщений: 156


stdin

Ответ № 7253 05 Августа 2018 в 23:46
Он создает и рисует туеву хучу поверхностей, можно попробовать уменьшить их размер. Например в SL_engine_ini переменную sl_buffer_texturesize можно без особых потерь качества поставить в 1/8.
Но хз как это правильно делается, там комменты на французском что ли.
input.txt
Не очень
Активный участник
**

Репутация: 20
Offline Offline

Сообщений: 156


stdin

Ответ № 7254 06 Августа 2018 в 19:08
Лучше конечно деактивировать, но часто бывает достаточно выключить только рисование: visible=false.
Также рисование по умолчанию (если у объекта пустое событие ) вне вида выключается автоматически, но если там есть код, даже если это draw_self(), то событие выполняется всегда.
ELGReeN
Активный участник
**

Репутация: 8
Offline Offline

Сообщений: 124


Ответ № 7255 08 Августа 2018 в 19:10
Как работает передвижение? где то было но не нашел
есть: x y direction speed
как из это вычислить новые xy? типа как xprevious yprevious но наоборот, потенциальные.

tolich
to ne lich
Ветеран форума
*****

Репутация: 220
Offline Offline

Сообщений: 1 562


moonlite

Ответ № 7256 09 Августа 2018 в 14:13
На каждом шаге игры, между событиями Step и End Step происходит расчёт нового положения всех объектов. Условно можно сказать, что для всех экземпляров выполняется код:
xprevious=x;
yprevious=y;
x+=hspeed;
y+=vspeed;

После перемещения всех объектов проверяются столкновения, и по результатам некоторые объекты могут вернуться обратно в xprevious,yprevious.

Специально ничего предпринимать для этого не нужно, предотвратить невозможно. Впрочем, в событии Step можно рассчитать новое  предполагаемое (так как столкновения и всё такое) положение:
var newx,newy;
newx=x+hspeed;
newy=y+vspeed;

Да, hspeed и vspeed - две переменные связанные с direction и speed соотношением:
hspeed=lengthdir_x(speed, direction);
vspeed=lengthdir_y(speed, direction);
И, опять же, это соответствие поддерживается автоматически: при изменении direction и speed автоматически изменяются hspeed и vspeed. И наоборот.

А ещё, надо читать справку.

Огион
Завсегдатай
****

Репутация: 133
Offline Offline

Сообщений: 992


Ответ № 7257 13 Августа 2018 в 12:19
Зачем gmZip.dll? Простую защиту файла несложно реализовать. Нужна только какая-нибудь функция для получения хэша файла. В GMS есть MD5 — для твоих нужд, думаю, будет достаточно.

Считаешь хэш файла, к хэшу дописываешь свой пароль и снова хэшируешь. Этот хэш записываешь или в сам файл, или куда-нибудь ещё. Чтобы проверить аутентичность файла, повторяешь те же действия и сверяешь с хэшем. Если файл отличается от исходного хоть на один байт, хэши не совпадут. Восстановить по хэшу исходный пароль практически невозможно.
tolich
to ne lich
Ветеран форума
*****

Репутация: 220
Offline Offline

Сообщений: 1 562


moonlite

Ответ № 7258 13 Августа 2018 в 12:39
Этот хэш записываешь в сам файл.
Думаю, это этого хеш файла изменится, так что не вариант. Или считать хеш для проверки нужно для файла с удалённым хешем.
Последнее редактирование: 13 Августа 2018 в 13:15 от tolich

Огион
Завсегдатай
****

Репутация: 133
Offline Offline

Сообщений: 992


Ответ № 7259 13 Августа 2018 в 13:48
Разумеется. Загрузить часть файла без хэша в какой-нибудь буфер и посчитать хэш.
Огион
Завсегдатай
****

Репутация: 133
Offline Offline

Сообщений: 992


Ответ № 7260 14 Августа 2018 в 23:37
Набросал пример. Для MD5 использовал Crypt.dll за авторством некого Freaked.
Прикреплённые файлы
* file_validation.7z (25.81 Кб - загружено 40 раз.)
Страниц: 1 ... 359 360 361 362 363 364 365 366 367 ... 370   Вверх
  Печать  
 
Перейти в:  

RSGMC (gmakers.ru) © 2007—2019
Счётчик–@Mail.ru