Пятница, 29 Марта 2024, 15:50

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 2 из 5
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • »
Форум игроделов » Записи участника » Reker [85]
Результаты поиска
RekerДата: Воскресенье, 28 Октября 2018, 21:08 | Сообщение # 21 | Тема: Мини файловый менеджер на Game_maker8
почетный гость
Сейчас нет на сайте
Tim34, Думаю помогли бы уже давно, если бы знали или было не сложно.
RekerДата: Воскресенье, 28 Октября 2018, 03:45 | Сообщение # 22 | Тема: сурфейс света
почетный гость
Сейчас нет на сайте
Сделал сурфейс, чтобы вокруг персонажей и обьектов всегда был свет. Всё хорошо, но я хочу ещё добавить другой свет, чтобы он был поверх этого когда нужно.
На первой пикче, как работает обычный свет. Всё хорошо.
На второй я хочу чтобы он был как на первой пикче, но только другим цветом и полностью замещал первое свещение.


Вот код
obj_surf_light
Код

create

surf = surface_create(room_width,room_height);



Код

END STEP

surface_set_target (surf);
   gpu_set_blendmode(bm_normal)
   draw_clear_alpha (make_color_rgb(10,10,10), 1);
   surface_reset_target ();

//ЕСЛИ СУЩЕСТВУЕТ ИГРОК
  if (instance_exists(obj_player)) {
     var px = obj_player.x + random_range(0, 1.5);
     var py = obj_player.y + random_range(0, 1.5);
     var rr =  random_range(0, 1.5);
   
    surface_set_target (surf);
    gpu_set_blendmode(bm_subtract);
    draw_set_alpha(.35);
   draw_circle_color(px, py, 55 + rr,c_gray, c_gray, 0);
   draw_set_alpha(.75);
    draw_circle_color(px, py, 44 + rr,c_gray, c_gray, 0);
   draw_set_alpha(1);
   draw_circle_color(px, py, 31 + rr,c_gray, c_gray, 0);
    gpu_set_blendmode(bm_normal);
    surface_reset_target ();
   
  }

// ЕСЛИ ЕСТЬ ОБЬЕКТ НПС RM_6
  if (instance_exists(obj_npc_rm_6))
{
  var px = obj_npc_rm_6.x +  random_range(0, 1.5);
    var py = obj_npc_rm_6.y + random_range(0, 1.5);
    var rr =  random_range(0, 1.5);
  
     surface_set_target (surf);
                 gpu_set_blendmode(bm_subtract);// НА ПЕРВОЙ ПИКЧЕ!!
   gpu_set_blendmode(bm_add);// НА ВТОРОЙ ПИКЧЕ!!
   draw_set_alpha(.35);
  draw_circle_color(px, py, 120 + rr,make_color_rgb(46,160,232), make_color_rgb(46,160,232), 0);
  draw_set_alpha(.75);
   draw_circle_color(px, py, 84 + rr,make_color_rgb(139,196,232), make_color_rgb(139,196,232), 0);
  draw_set_alpha(1);
  draw_circle_color(px, py, 51 + rr,c_white, c_white, 0);
   gpu_set_blendmode(bm_normal);
   surface_reset_target ();
     
}



В draw я просто рисую сурфейс draw_surface(surf,0,0);

У меня есть 2 предположения. Проблема кроется в
Код

surface_set_target (surf);
   gpu_set_blendmode(bm_normal)
   draw_clear_alpha (make_color_rgb(10,10,10), 1);
   surface_reset_target ();

тк он рисует с этим цветом(make_color_rgb(10,10,10)), а не с теми которые я задаю обьекту npc.

Или же проблема со смешиванием, которое я плохо понимаю. В любом случае, надеюсь, кто-нибудь знает как мне быть. Постараюсь пока, что найти выход сам.

Добавлено (28 Октября 2018, 04:21)
---------------------------------------------
Попробовал создать ещё один сурф(в этом же объекте), для нового света.
Код

surface_set_target (surf1);
   gpu_set_blendmode(bm_normal);
   draw_clear_alpha (make_color_rgb(46,160,232), 1);
   surface_reset_target ();
   
  if (instance_exists(obj_npc_rm_6))
{
  var px = obj_npc_rm_6.x +  random_range(0, 1.5);
    var py = obj_npc_rm_6.y + random_range(0, 1.5);
    var rr =  random_range(0, 1.5);

     surface_set_target (surf1);
   gpu_set_blendmode(bm_subtract);
   draw_set_alpha(.35);
  draw_circle_color(px, py, 120 + rr,make_color_rgb(46,160,232), make_color_rgb(46,160,232), 0);
  draw_set_alpha(.75);
   draw_circle_color(px, py, 84 + rr,make_color_rgb(139,196,232), make_color_rgb(139,196,232), 0);
  draw_set_alpha(1);
  draw_circle_color(px, py, 51 + rr,c_white, c_white, 0);
   gpu_set_blendmode(bm_normal);
   surface_reset_target ();  
}




Не понимаю, почему голубой цвет стал по вверх серого.

Добавлено (28 Октября 2018, 20:34)
---------------------------------------------
Проще говоря, мне нужно, чтобы второй круг, был другого цвета.

Добавлено (28 Октября 2018, 21:06)
---------------------------------------------
Фух, ну вроде разобрался. Вроде вышло примерно то, что я хотел. Поиграл со смешиванием. Там есть парочку интересных эффектов. Достаточно интересно. Например 1 пикча, будто ты идёшь в каком нибудь зелёном тумане и видишь только перед собой.
2 пикча, что я хотел(не точь в точь, но очень близко)



Код

gpu_set_blendmode_ext(bm_src_alpha,bm_zero)
   draw_set_alpha(.35);
  draw_circle_color(px, py, 120 + rr,make_color_rgb(46,160,232), make_color_rgb(46,160,232), 0);
  draw_set_alpha(.35);
   draw_circle_color(px, py, 84 + rr,make_color_rgb(139,196,232), make_color_rgb(139,196,232), 0);
   gpu_set_blendmode(bm_subtract)
  draw_set_alpha(1);
  draw_circle_color(px, py, 51 + rr,c_white, c_white, 0);
   gpu_set_blendmode(bm_normal);
   surface_reset_target ();



Сообщение отредактировал Reker - Воскресенье, 28 Октября 2018, 21:07
RekerДата: Четверг, 25 Октября 2018, 22:13 | Сообщение # 23 | Тема: Рандомные индексы спрайтов или сами спрайты
почетный гость
Сейчас нет на сайте
Код

в Step

d = irandom_range(0,7);

image_index = d;

Меняешь кадры спрайта рандомно
RekerДата: Среда, 24 Октября 2018, 01:24 | Сообщение # 24 | Тема: Как убивать врагов? Какие команды нужны для убивания хп
почетный гость
Сейчас нет на сайте
Если есть навыки в инглише, есть много хороших каналов, которые всё объясняют. Русскоговорящих норм ютуберов не встречал
RekerДата: Понедельник, 22 Октября 2018, 00:43 | Сообщение # 25 | Тема: Радиус вида врага
почетный гость
Сейчас нет на сайте
уххх
RekerДата: Понедельник, 22 Октября 2018, 00:05 | Сообщение # 26 | Тема: Как уничтожить объект в другой комнате?
почетный гость
Сейчас нет на сайте
Находясь в одной комнате как уничтожить объект в другой комнате?
RekerДата: Воскресенье, 21 Октября 2018, 23:52 | Сообщение # 27 | Тема: ИИ врага и сам враг
почетный гость
Сейчас нет на сайте
на каком то сайте (тоже для разработчиков) есть прям список для новичков, FAQ так сказать. Поищи
RekerДата: Пятница, 19 Октября 2018, 06:18 | Сообщение # 28 | Тема: Начинает анимацию с 5 кадра в anim_end
почетный гость
Сейчас нет на сайте
UNIT02_GAMES, Да эт понятно. Я просто думал, что можно как нибудь проще это сделать, но да ладно. Так придётся немного подумать с учётом моего кода
RekerДата: Четверг, 18 Октября 2018, 09:47 | Сообщение # 29 | Тема: Помогите с убийством противников в 2д платформере
почетный гость
Сейчас нет на сайте
Надо понять как вообще игры делать. Способы различны, но я бы создавал коллизию как и сказал maker-rus. Можно создавать во время прыжка объект коллизии который будет в ногах и заставлять его двигаться по этим координатам (тобишь в ногах) и при соприкосновении с врагом воспроизводить скрипт смерти врага. Когда игрок не в прыжке, то уничтожаем этот объект коллизии. Что первое придумал.
RekerДата: Четверг, 11 Октября 2018, 23:35 | Сообщение # 30 | Тема: Начинает анимацию с 5 кадра в anim_end
почетный гость
Сейчас нет на сайте
Изначальный спрайт spr_player_lie_down
в anim_end пишу
Код

if (sprite_index = spr_player_lie_down) {
image_index = 5;
}

Всё нормально, воспроизводит анимацию и на последней останавливается, но дальше с этим объектом мне нужно взаимодействовать и когда я меняю ему спрайт он воспроизводит его с 5 кадра, как поправить не знаю. Надеюсь понятно написал.


Сообщение отредактировал Reker - Пятница, 19 Октября 2018, 06:19
RekerДата: Пятница, 21 Сентября 2018, 11:14 | Сообщение # 31 | Тема: Как изменить цвет фона при рисовании спрайтов?
почетный гость
Сейчас нет на сайте
Raven84, Я так и делал, просто думал, что оставили эту функцию в gms2.
RekerДата: Суббота, 15 Сентября 2018, 13:47 | Сообщение # 32 | Тема: Исчезновение объекта
почетный гость
Сейчас нет на сайте
LunarPixel, я тоже думал поставить ограничения, но потом подумал, ведь альфа не может быть меньше 0 и больше 1. А в create только тут ошибся, в коде нет опечатки. Но сейчас проверю, может поможет.
RekerДата: Суббота, 15 Сентября 2018, 10:32 | Сообщение # 33 | Тема: Исчезновение объекта
почетный гость
Сейчас нет на сайте
При приближении игрока к объекту, второй должен исчезать, а при отходе игрока опять появляться, но почему-то не работает.
create
Код

create
apha = 1;

step

image_alpha = alpha;
if (instance_exists(obj_player)) {
if (distance_to_point(obj_player.x,obj_player.y) < 100)
alpha -= 0.01;

if (distance_to_point(obj_player.x,obj_player.y) > 100)
  alpha += 0.01;
}



Сообщение отредактировал Reker - Суббота, 15 Сентября 2018, 15:32
RekerДата: Суббота, 08 Сентября 2018, 17:49 | Сообщение # 34 | Тема: Как изменить цвет фона при рисовании спрайтов?
почетный гость
Сейчас нет на сайте
DivES, Та не. Когда просто рисуешь спрайты, там серый фон, а у меня игра в мрачных и серых цветах и сливается. Не очень удобно рисовать.
RekerДата: Суббота, 08 Сентября 2018, 08:07 | Сообщение # 35 | Тема: Как изменить цвет фона при рисовании спрайтов?
почетный гость
Сейчас нет на сайте
Как изменить цвет фона при рисовании спрайтов? gms2

Сообщение отредактировал Reker - Пятница, 21 Сентября 2018, 11:14
RekerДата: Вторник, 28 Августа 2018, 21:29 | Сообщение # 36 | Тема: end step при использовании сурфейсов
почетный гость
Сейчас нет на сайте
Почему где бы я не читал про сурфейсы, везде пишут, что нужно писать код в end step. Почему не просто в step?
RekerДата: Понедельник, 27 Августа 2018, 11:37 | Сообщение # 37 | Тема: Мелькание при создании объекта
почетный гость
Сейчас нет на сайте
maksim1221232, в степ написал
Код
if path_position = 1
{
    instance_change(obj_player, true);
    
}


но всё равно мелькает

Добавлено (27 Августа 2018, 12:08)
---------------------------------------------
Странно, сейчас всё заработало! Я ничего не делал, просто запустил ещё раз и всё как надо.Хм

RekerДата: Понедельник, 27 Августа 2018, 11:08 | Сообщение # 38 | Тема: Мелькание при создании объекта
почетный гость
Сейчас нет на сайте
В конце пути объект должен создавать объект игрока и уничтожаться, но перед созданием игрока идёт момент когда обоих объектов нету и это выглядит как будто объект исчезает и потом создает объект игрока, а надо наоборот. Пробовал разные способы, примерный код.
Код

Create

path_start(pa_rmgoto_right,2,0,0)

step

if path_position = 1
{
    instance_create_layer(x,y, "Instances", obj_player)
    instance_destroy();
    
}



Надеюсь я понятно написал, если нет, то постараюсь уточнить


Сообщение отредактировал Reker - Четверг, 30 Августа 2018, 13:05
RekerДата: Четверг, 23 Августа 2018, 13:51 | Сообщение # 39 | Тема: Затенение экрана при переходе в другую комнату(проблема)
почетный гость
Сейчас нет на сайте
Спасибо, вроде помогло AlexanderBekker,
RekerДата: Среда, 22 Августа 2018, 09:19 | Сообщение # 40 | Тема: Затенение экрана при переходе в другую комнату(проблема)
почетный гость
Сейчас нет на сайте
создаю объект затенения obj_black в коде пишу
Код

create

alpha = 0;
draw_set_color(c_black)

step

alpha+=0.01
if alpha = 1 instance_destroy()

draw

draw_set_alpha(alpha)
draw_rectangle(0,0,room_width,room_height,0)


всё идёт как надо, но другие объекты тоже становятся прозрачными при создании этого объекта тобиш их альфа с 0 идёт до 1. Выглядит странно. А если переместить персонажа в другую комнату, пока альфа != 1, то персонаж будет полупрозрачным. Не знаю как исправить.


Сообщение отредактировал Reker - Четверг, 23 Августа 2018, 13:52
Форум игроделов » Записи участника » Reker [85]
  • Страница 2 из 5
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • »
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг