F3n1kz
offline
Опыт:
4,548Активность: |
DOS Text (vJass)
Переводит текст в ASCII картинку =)
пример: "test" будет отображен примерно так OOO=OOO=OO=OOO =O==O===O=== O= =O==OOO=OO==O= =O==O=====O= O= =O==OOO=OO==O= Наработка состоит из 4 фций DOS_Text_Initialize - "библиотека" символов DOS_Text_Convert - Внутр конвертер DOS_Text_Create_Line - тож внутр фция) DOSText - Осн фция, ее и вызываем) DOSText (player p, string towr, real period, real timeout) Плеер - кому будем выводить towr - строка, которую будет выводить (пока что не более 15 символов) Период - т.к. арт выводиться построчно, это задержка между выводом строк (типа как в фильмах про хакеров не сразу выводица а постепенно) Таймаут - Сколько будет "висеть" наш арт) Наработка юзает 5 гломалок (1 технич. и 4 для настройки) integer array udg_DOStext_Alf - осн. "библиотека" string udg_DOStext_ColorText = "|cFF00FF00" - цвет текста string udg_DOStext_ColorBack = "|cFF000000" - цвет фона string udg_DOStext_CharText = "H" - символ текста string udg_DOStext_CharBack = "H" - символ фона (елси они будт не совпадать, то возможно "съезжание" текста) Поддержка только англ алфавита, цифр и нескольких значков(=, ), .) Впринципе добавить новый символ оч просто, макс размеры - 5х5 клеток PS: Йа нуб, елси укажете ашипки - буду очень благодарен ^_^ |
11.04.2008, 02:00 | #1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
reload
offline
Опыт:
2,230Активность: |
круть, молодец, вот токо ее использовать та вроде как и негде :( |
11.04.2008, 03:00 | #2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
F3n1kz
offline
Опыт:
4,548Активность: |
reload, можно доработать и выводить ASCII арты =)
а ваще делалось чисто ради интереса))) |
11.04.2008, 11:46 | #3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
adic3x
offline
Опыт:
108,439Активность: |
впринципе неплохо, такие всяки сисмы весьма полезны для саморазвития правда в жасс норм со строками непоработаешь, и из этого надо исходить) |
11.04.2008, 14:36 | #4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
adic3x
offline
Опыт:
108,439Активность: |
я кста посмотрел код, на днях выложу для ознакомления свои идеи как это можно реализовать, думаю афтору будет интересно) |
12.04.2008, 11:45 | #5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
S
offline
Опыт:
43,833Активность: |
Посмотрел... наработка более-менее, но такое ощущение что это гуи2jass, или по карте проехались X-dep`ом... =\ |
12.04.2008, 12:30 | #6
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
adic3x
offline
Опыт:
108,439Активность: |
Код:
обьяснять как работает щас времени нет, + много чего нужно для отладки но попробуйте откомпилить это в "чистой карте" т.е. у мну все пашет в таком виде) ADOLF добавил: Sasha, ТТ, гуи2жасс нету, хДеп нету, ты чего?! зы, я свой код потом откоменчу и поясню что да как, т.к. ща времени нету |
12.04.2008, 13:28 | #7
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
F3n1kz
offline
Опыт:
4,548Активность: |
ADOLF, а почему ты везде юзаешь 8ичные интегеры? о_О
PS: Ф код не фтыкнул о_О Особенно ф это: set s=" HOOH" set s=" HHOH" set s=" HOHH" set s=" HHHO" set s=" HOHO" Саша, с чегойта у тебя такие ощущения? Отредактировано F3n1kz, 12.04.2008 в 21:55. |
12.04.2008, 19:00 | #8
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ShadoW DaemoN
offline
Опыт:
37,078Активность: |
ADOLF, омфг, ты решил всех напугать? ^_^ В общем, идея мне ясна (как ни странно бы это ни звучало).
Известно, что когда создается новая строка, ей выделяется определенный хендл (при условии, что она уникальна). При инициализации мы получаем отступ (offset), чтобы знать, с какого дескриптора идут служебные строки (в данном случае это 21). Далее задаются комбинации представления символов, затем задаются "волшебные" числа для каждой буквы и задается массив для сдвига. (2^0, 2^6, 2^12, 2^18, 2^24) Т.е. степень обозначает позицию перед разделителем "пяти байтов". Собственно, в функции Get хитрая операция для получения id хендла строки. Суть ее в том, чтобы вытащить 5 байтов, которые являются номером комбинации в HEX-представлении (номеруются они с нуля). А т.к. мы делали аллокацию этих самых комбинаций, то нужно просто добавить оффсет (+21), чтобы получить id хендла строки. С помощью Str(I2Sx(...)) корректное получение строки гарантировано. ADOLF, кстати, можно в данном случае не 8-байтовые, а 5-байтовые числа юзать, мб понятнее было бы для народа =) |
12.04.2008, 21:04 | #9
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
S
offline
Опыт:
43,833Активность: |
Цитата:
Да так... =\ Просто камрад я вас знаю, и чтобы вы такое на джассе написали - почти что фонтаздега =) Sasha добавил: Хотя если это реально твоя наработка то ты делаешь успехи в изучении jass ;) |
|
12.04.2008, 21:13 | #10
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
FellGuard
Losyash
offline
Опыт:
39,547Активность: |
ShadoW DaemoN, а в случае с русскими символами?
|
12.04.2008, 21:16 | #11
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ShadoW DaemoN
offline
Опыт:
37,078Активность: |
FellGuard, ты имеешь в виду handle-id от строки на русском? Если да, то в системе Адольфа не имеет значения, символы какого языка используются, хендл будет корректен (это более чем вероятно).
|
12.04.2008, 21:25 | #12
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
adic3x
offline
Опыт:
108,439Активность: |
+1 и пряник для ShadoW DaemoN=)
т.е. он прохавал фичу) ну понятно что код в таком виде бцдет в стопицот раз бестрее кучи циклов и ифов=) т.е. в жасс строки - это обьекты, а в переменных храниться ссылка на этот обьект (т.е. она может быть расмотренна и как число с помощью рб) Цитата:
ну вообще то 16ричные + тут они как раз нужны, описывать сдвиги в 10 бред))) Цитата:
??? если вы про хекс и дец, то тут как я говорил хекс просто необходим для того, что бы было понятно что это сдвиги, к примеру 0x00400000 куда яснее чем 262144 =) |
||
13.04.2008, 22:50 | #13
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
F3n1kz
offline
Опыт:
4,548Активность: |
%) не, йа пока еще не дорос до такого ;) |
14.04.2008, 03:34 | #14
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
adic3x
offline
Опыт:
108,439Активность: |
ну кста мб у мну ненаглядно получилось, ну в моем примере Н - закрашенная ячейка, О - нет, т.е. строки имеют вид, ну вы поняли, мне просто влом подбирать было)
Цитата:
ну как сказать, впринципе мой код куда проще) http://xgm.guru/forum/showthread.php?t=15888 вот статья, можно почитать на досуге, а так... дорастай потихеньку=) |
|
14.04.2008, 13:55 | #15
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|