Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Как передать во флэш данные из внешнего редактора? (http://www.flasher.ru/forum/showthread.php?t=114994)

Tfp 15.08.2008 13:19

Как передать во флэш данные из внешнего редактора?
 
Есть мной написаный мной редактор карт не на флэше. Есть флешка в которой ети карты должны использоваться. Но при етом должен быть один sfw то есть внешнаяя загружка не подходит.. пришли в голову два варианта:
1. Редактор генерит AS3 код карты, который я просто вставлю во флеш.
Например в кадр с картой. Например если на карте есть только два типа стены то он генерит код
Код:

create_wall(123,45,Red_wall)
create_wall(123,25,Red_wall)
create_wall(100,0,Green_wall)
.........................................

2. вот с етим нужна помощь)
Нада сделать так что б на выходе редактора получалась строка с данными которую я вставлю как аргумент в функцию создания уровня
Код:

current_level=make_data(сосбсно сткрока из редактора)
build_level(current_level)

вот что должно быть в make_data?(редактор может как по byte-ово(bin_write_byte(file,position,byte) где byte: 0-255) создавать файл, и как текстовій файл)
Вохможно считать строки из ByteArray? Как собсно ету бинарную строку получить(из файла который сделает редактор, и потом ее использовать как аргумент)?

Tfp 17.08.2008 21:50

ну хоть какието мысли?(

tyapichu 18.08.2008 16:07

оригинально кстати... а почему ты не создаешь XMLку карты? я насоздавал некоторое количество XMLек с объектами и их описаниями карт и объектов по этим картам расставленных. а в коде обеспечиваю правильную реакцию на свойства этих объектов.

Tfp 18.08.2008 18:24

ну дак мне нада что б без внешних файлов(
именно что б строка была..

Felicast 18.08.2008 19:42

можно попробовать такую схему:
редактор выдает строку кажый символ - это значение 0-255 (но тут проблема, врядли получится использовать первые 32 символа)

второй вариант: выдавать строку со значениями, разделенными спец символом(например ; ). а во флеше просто распарсить и получить массив данных.

Division 18.08.2008 20:20

Tfp можно подробнее, в чем именно проблема? Что-то ничего понять не могу.
Цитата:

Вохможно считать строки из ByteArray?
Что за bytearray? Откуда берется? Судя по названию, это массив байт, что по сути строкой и является (:
Цитата:

Как собсно ету бинарную строку получить(из файла который сделает редактор, и потом ее использовать как аргумент)?
Редактор ты писал? Если да, то проблем возникать не должно. Если нет, то блокнотом этот файл не открывается?)

wvxvw 18.08.2008 20:42

Прочитать строку из массива байт можно, ну так чтобы не соврать, наверное в 30 разных кодировках... Кроме того есть как минимум 3 распространенных формата подходящих для сериализации флешевых данных - XML, AMF и JSON. Удобнее и читаемее естесственно в XML, самый экономный - AMF.
Но, если честно, то я кажется не совсем понял вопрос... а в чем была сложность сгенерить ХМЛ и зашить его в SWFку?

Tfp 18.08.2008 22:43

Division вот открыл я блокнотом, как теперь из етой строки сделать ByteArray ?
В редакторе нет возможности генерить XML...

Division 18.08.2008 23:15

Что за редактор? Ты его писал? Если ты, то в чем ты его писал? Если не ты, то я слабо представляю как ты собираешься использовать эти данные без знания структуры файлов этого редактора.

UPD:
не заметил:
Цитата:

Есть мной написаный редактор
В чем ты его писал? Кинь код сохранения карты в файл. И вообще я не понимаю как ты можешь задавать подобные вопросы если редактор писал ты? Ты не можешь сохранить в текстовый файл нужную тебе информацию? Тогда тебе одна дорога - в магазин за учебником. Если я тебя не правильно понял, и ты можешь генерить текстовые файлы - почему ты это не сделаешь? (:

UPD2: Я так подумал, всё-же я не понимаю что именно ты хочешь и что именно у тебя не получается. Попробуй более четко всё объяснить.

Felicast 19.08.2008 01:03

Цитата:

Сообщение от Tfp (Сообщение 758902)
В редакторе нет возможности генерить XML...

а что мешает добавить такую возможность? к томуже в последствии можно будет легко переделать на подгрузка карт извне.
Цитата:

Сообщение от Tfp (Сообщение 758902)
вот открыл я блокнотом, как теперь из етой строки сделать ByteArray

я конечно не уверен:
Код:

public function writeMultiByte(value:String, charSet:String):void


Часовой пояс GMT +4, время: 02:10.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.