Название спрайта беру из файла, ГМ его считывает, но не

  Вход на форум   логин       пароль   Забыли пароль? Регистрация
On-line:  

Раздел: 
Game Maker Форум / Вопросы и Ответы (Для Опытных) / Название спрайта беру из файла, ГМ его считывает, но не

Страницы: 1  новая тема

Автор Сообщение


Группа: Участники
Сообщений: 3
Добавлено: 29-06-2006 19:01
Название спрайта беру из файла, ГМ его считывает, но не использует. К примеру - название спрайта z099, это я записываю в текстовом файле, закидываю в игру, присваиваю переменной card_pic это значение, а при рисовании этот спрайт не выводится... Пришлось узнать порядковый номер спрайта в игре, и его записать в текст, перевёл в вещественные числа - всё работает!

Дундук - не беспокоить!
Группа: Модераторы
Сообщений: 1435
Добавлено: 29-06-2006 23:07
Конечно! Текст - это просто текст, а то, что ты пишешь в скрипте - это указатель.

Тут могла быть ваша реклама
Группа: Сообщество GM
Сообщений: 1014
Добавлено: 30-06-2006 00:40
если чё работает так:
execute_string('draw_sprite('+string(card_pic)+',image_number,x,y)

Тут могла быть ваша реклама
Группа: Сообщество GM
Сообщений: 1014
Добавлено: 30-06-2006 00:48
лишнее переменные не будут нужны)

магистр
Группа: Сообщество GM
Сообщений: 453
Добавлено: 19-07-2006 11:59
Я вот так делал:

for(sz=0;sz<argument0;sz+=1){sprite[sz]=sprite_get_name(sz)} //см. ниже
text=file_text_open_read('sprites.rts')
col=file_text_read_real(text)
file_text_readln(text)
folder=file_text_read_string(text)
file_text_readln(text)

for(ss=col;ss>0;ss-=1)
{
str=file_text_read_string(text)
rdname=string_replace(string_copy(str,0,string_pos(' ',str)),' ','')
rd=rdname
str=string_delete(string_replace(str,rdname,''),1,1)
rename=string_replace(string_copy(str,0,string_pos(' ',str)),' ','')
rm=rename
str=string_delete(string_replace(str,rename,''),1,1)
imgnum=string_replace(string_copy(str,0,string_pos(' ',str)),' ','')
in=imgnum
str=string_delete(string_replace(str,imgnum,''),1,1)
xorig=string_replace(string_copy(str,0,string_pos(' ',str)),' ','')
xo=xorig
str=string_delete(string_replace(str,xorig,''),1,1)
yorig=str
yo=yorig
file_text_readln(text)
for(sg=sz-1;sg>=0;sg-=1){if (rd=sprite[sg]) then {load_sprite(sg,string(folder)+string(rm),real(in),real(xo),real(yo))}}}


/*
argument0 - Имя спрайта замены
argument1 - Имя спрайта заменяющего
argument2 - Количество кадров
argument3 - ось икс в спрайте(центр спрайта)
argument4 - ось игрек см.выше
load_sprite(rdname,string(folder)+string(rename),imgnum,xorig,yorig)
*/
sprite_replace(argument0,argument1,argument2,1,1,1,1,argument3,argument4)

Файл тикст такой

25
sprites\
s_mineral1 mineral1.gif 36 19 19
s_mineral2 mineral2.gif 36 19 19
s_mineral3 mineral3.gif 36 21 21


Группа: Участники
Сообщений: 3
Добавлено: 21-07-2006 12:02
Конечно! Текст - это просто текст, а то, что ты пишешь в скрипте - это указатель.


Вопрос, я закачал в переменную (к примеру Sprite_Name) название спрайта, этот спрайт имеется в наличии. Но
draw_sprite(Sprite_Name,subimg,x,y)
не изволит выводить картинку...
я поставил порядковый номер спрайта (узнав его заранее)
global.masscardsprite[i]=file_text_read_string(file_readed_id)
Sprite_Name=real(global.masscardsprite[card_num]);

Пробовал real заменить на string, но всё равно, ничего не получилось. Как превратить текст в указатель? (Блин.)

магистр
Группа: Сообщество GM
Сообщений: 453
Добавлено: 25-07-2006 14:04
Не знаю, но по-мойму для загрузки спрайта, это очень большой скрипт.

Ну для загрузки файлов с одинаковыми параметрами можно написать и покороче. Но чтобы потом волосы на волосатой попе не рвать лучше придумать скрипт который отделяет знаки в строке. Это пригодится нетолько в загрузке ресурсов но и в загрузке карт например.

Тут могла быть ваша реклама
Группа: Сообщество GM
Сообщений: 1014
Добавлено: 27-07-2006 12:02
ДА я тоже делал, как у WertyXBOCT. Если я всё правильно понял, там для каждого значения не строка пропускается, а ставиться знак. ну типа "val1;val2;val3;", но ворпос не в этом. Вообще всегда когд читаешь текст из файла нужна функция execute_string()

Тут могла быть ваша реклама
Группа: Сообщество GM
Сообщений: 1014
Добавлено: 28-07-2006 22:52
ну да, я имел ввиду надо об этом помнить, что если чёто не получается, то надо пользоваться ей

Страницы: 1  новая тема
Раздел: 
Game Maker Форум / Вопросы и Ответы (Для Опытных) / Название спрайта беру из файла, ГМ его считывает, но не

Отвечать на темы в данном разделе могут только зарегистрированные пользователи

Отвечать на темы могут только зарегистрированные пользователи

KXK.RU