Среда, 06 Ноября 2024, 04:26

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Помогите с D3D (GM8)
TeaILSДата: Воскресенье, 14 Января 2024, 11:20 | Сообщение # 1
уже был
Сейчас нет на сайте
Код

var HP1;
var HP2;
HP1 = sprite_get_texture(sprite326,image_index)
HP2 =  sprite_get_texture(sprite325,image_index)
if !variable_local_exists("z") z = 0;
var tex_shape_1;
tex_shape_1 = ruin;

version =  1.68;   // 3d Animator version
var tex,curcolor,curalpha;
curcolor = draw_get_color();
curalpha = draw_get_alpha();
// shape 1
tex = background_get_texture(tex_shape_1);
draw_set_color(c_white);
draw_set_alpha(1);
d3d_transform_set_identity();
d3d_transform_set_rotation_z(direction)
d3d_transform_add_translation(x,y,z);
d3d_draw_block(1,-2,40,40,2,35,HP1,1,1);
d3d_draw_block(1,-2,40,HPBAR,2,35,HP2,1,1);
d3d_transform_set_identity();
draw_set_color(curcolor);
draw_set_alpha(curalpha);
// end draw event code

все работает идеально кроме того что полоска сдвинута вправо, как только я ее двигаю влево она смещается еще и на Y будто, и начинает крутится не по середине а от края
martukДата: Воскресенье, 14 Января 2024, 14:48 | Сообщение # 2
заслуженный участник
Сейчас нет на сайте
Я думаю проблема в функции d3d_transform_add_translation
Попробуй использовать отрицательные значения для x и y, чтобы переместить полосу ближе к центру.
попробуй вот на это заменить
d3d_transform_add_translation(-20 + 40/2, -2 + 35/2, z);

Если не получится, то попробуй изменить сразу эти две строчки:
d3d_draw_block(1,-2,40,40,2,35,HP1,1,1);
d3d_draw_block(1,-2,40,HPBAR,2,35,HP2,1,1);
на вот это:
d3d_draw_block(0, 0, 40, 40, 2, 35, HP1, 1, 1);
d3d_draw_block(0, 0, 40, HPBAR, 2, 35, HP2, 1, 1);

без визуала конечно сложно, не могу сам протестировать
  • Страница 1 из 1
  • 1
Поиск:

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