FireURQ Bugtracker - FireURQ
Просмотр подробностей проблемы
0000067FireURQинтерпретаторобщая2009-08-21 02:052009-08-25 01:35
uux 
fireton 
обычныйбольшаявсегда
закрытизменения не нужны 
1.0.5 
 
0000067: Проблемы в работе со шрифтами
Во-первых, в документации недостаточно полно описана работа со шрифтами - но это другой вопрос. Если бы я не занялся экспериментами, то не нашел бы этот баг.

Я создал текстовый HGE-файл при помощи прилагаемого к FireURQ редактора и поместил его в папку с игрой. Далее, если в начале игры (до выведения каких-либо кнопок) указать инструкцию

textfont="<имя_файла>", интерпретатор молча закрывается.

Если ту же самую инструкцию разместить где-нибудь в другой локации, появляется ошибка, показанная на прилагаемом скриншоте.

Если в данной инструкции указать имя несуществующего файла либо имя файла неверного формата, инструкция, судя по всему, игнорируется - это в общем правильное поведение.

Тексты тестовых примеров:

Пример 1 (инструкция в начале файла):

textfont="fotname.fnt"
:1
btn 1, TEST
end

Пример 2 (инструкция не в начале файла):

:1
btn 2, TEST
end

:2
textfont="fotname.fnt"
btn 1, TEST2
end
Абстрагируясь от ошибки, хочется еще раз повторить - работа со шрифтами описана недостаточно полно. Лично у меня сразу возник ряд ламерских вопросов (я частично нашел ответы на них экспериментальным путем, но вообще это не дело):

1) куда класть сконвертированный файл HGE-шрифта - в папку с игрой, в папку с интерпретатором или в системную папку?
2) надо ли к нему прилагать создаваемый автоматически png-файл или нет?
3) какое значение присваивать - собственно название созданного шрифта (например, Arial), название файла шрифта без расширения, название файла шрифта с расширением?

И еще один момент: textfont - явно строковая переменная, однако, судя по документации и по моим экспериментам, значение ей необходимо присваивать не как это принято в URQ (instr textfont=имя_шрифта), а нестандартным для URQ образом (textfont="имя_шрифта"). ИМХО надо сделать единообразно, а то выходит путаница.

Надеюсь, не очень утомил многословием;).
Нет прикрепленных меток.
дублируется 0000072закрыт fireton Проблемы в работе со шрифтами - 2 
jpg screenshot2.JPG (29,945) 2009-08-21 02:05
https://bt.fireurq.ru/file_download.php?file_id=9&type=bug
jpg
история изменений
2009-08-21 02:05uuxНовый инцидент
2009-08-21 02:05uuxОтветственный => fireton
2009-08-21 02:05uuxФайл добавлен: screenshot2.JPG
2009-08-21 02:44firetonКомментарий добавлен: 0000073
2009-08-21 02:44firetonСостояниеновый => рассмотрен
2009-08-21 09:07uuxКомментарий добавлен: 0000075
2009-08-21 22:23uuxКомментарий добавлен: 0000076
2009-08-22 09:57firetonКомментарий добавлен: 0000077
2009-08-24 09:47uuxКомментарий добавлен: 0000079
2009-08-24 21:31uuxКомментарий добавлен: 0000081
2009-08-25 01:35firetonСостояниерассмотрен => закрыт
2009-08-25 01:35firetonРешениеоткрыт => изменения не нужны
2009-08-25 23:48firetonСвязь добавленадублируется 0000072

Комментарии
(0000073)
fireton   
2009-08-21 02:44   
Все файлы всегда кладутся рядом с игрой. То, что фурка падает, не находя png, это, безусловно, ошибка. Будем чинить.
Присваивать надо имя файла .fnt

Присваивание с кавычками сто лет работает в досурке, проверь на досуге. Так что это стандартный способ.
(0000075)
uux   
2009-08-21 09:07   
Ну, png-файл я тоже клал в папку с игрой - результат тот же;).

Про присваивание с кавычками - согласен, мой косяк. Проверил еще раз - с instr, действительно, ситуация такая же.
(0000076)
uux   
2009-08-21 22:23   
Да, проверил еще раз - такой косяк именно при наличии png-файла. При его отсутствии игра просто не выводит текст, который идет после инструкции instr textfont=...
(0000077)
fireton   
2009-08-22 09:57   
Какой косяк? Опиши последовательность действий, пожалуйста. У меня шрифты работают без всяких проблем.
1. Делаешь шрифт в редакторе шрифтов
2. Записываешь полученные .fnt и .png в папку с игрой
3. Пишешь в коде игры textfont="myfont.fnt"
4.?

У тебя все падает на четвертом шаге?
(0000079)
uux   
2009-08-24 09:47   
Проверил еще раз на другом компьютере (под Windows XP). Действительно все работает.

У меня на домашнем компе Vista, видимо, с этим и связан глюк.

А так - да, я все делаю, как у тебя описано, и при запуске игры наблюдаются описанные эффекты: молчаливое закрытие окна интерпретатора при назначении textfont до того, как выводились какие-либо кнопки, и указанная в скриншоте картинка при назначении textfont после вывода кнопок.
(0000081)
uux   
2009-08-24 21:31   
В общем, проверил. Похоже, это fonted у меня криво сработал - со шрифтами, созданными на другом компе, все работает, как часы, даже там, где изначально были проблемы.