Среда, 18 Декабря 2024, 18:49

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Помогите с загрузкой анимированного спрайта!
AGENTX001Дата: Суббота, 24 Декабря 2011, 22:14 | Сообщение # 1
почётный гцупер
Сейчас нет на сайте
Всем привет! Имеется стрип_мап в котором 4 анимации, по одной на строчку, попытался написать скрипт для загрузки, но получается полная ахинея.

Код скрипта
Code
var f_name, strip_str, w_img, h_img, sprite, spr_w, spr_h, surf, i, new_spr;

f_name = argument0
strip_str = argument1
w_img = argument2
h_img = argument3

sprite = sprite_add(f_name,1,true,false,0,0);
if sprite = -1 {show_message("Error loading "+f_name) exit}

spr_w = sprite_get_width(sprite)
spr_h = sprite_get_height(sprite)

surf = surface_create(spr_w,spr_h)
surface_set_target(surf)
draw_sprite(sprite,0,0,0);

for (i=0;i<(spr_w/w_img)-1;i+=1) {
     if i=0 {
         new_spr = sprite_create_from_surface(surf,0,strip_str*h_img,w_img,(strip_str*h_img)+h_img,false,false,0,0)     
     } else {
         sprite_add_from_surface(new_spr,surf,w_img*i,strip_str*h_img,(w_img*i)+w_img,(strip_str*h_img)+h_img,false,false)
     }
}

surface_free(surf)
surface_reset_target()

return new_spr


load_strip("hero_graphicpaused.png",0,96,96); 0 - строка в стрипе, 96,96 - длина, высота кадра
QvantДата: Воскресенье, 25 Декабря 2011, 10:27 | Сообщение # 2
почти ветеран
Сейчас нет на сайте
AGENTX001,не ищи сложности там где их нет !
Разбей свой 4x4 стрип по 4 отдельных стрипа , или 1x16 ...

Вот вместо вашего кода выше будит только это :
sprite = sprite_add(f_name,4,true,false,0,0); //для стрипа из 4x1
или
sprite = sprite_add(f_name,16,true,false,0,0);//для стрипа из 16x1
AGENTX001Дата: Воскресенье, 25 Декабря 2011, 21:48 | Сообщение # 3
почётный гцупер
Сейчас нет на сайте
Qvant, собственно я уже разобрался со сложностями:) Но всёравно спасибо за желание помочь!
  • Страница 1 из 1
  • 1
Поиск:

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