Ru-Board.club
← Вернуться в раздел «Программы»

» Autoplay Media Studio

Автор: GOOSE
Дата сообщения: 10.02.2007 21:31
Xom9I4oK
А там и есть всего одна страница. А кнопки это не совсем кнопки Это MenuBar, добавляющий реалистичности виндовой в проекты

PvHawk

Цитата:
Этот проект сразу открываетя во весь экран, а надо добавить - кнопку развернуть(свернуть в окно) (или при использовании стандартной) и что бы при запуске проекта окно имело размеры 800*600.
Это реалезуемо? Если да - подскажите как. (что где дописать)

Теоретически да Но код писать не могу, времени разбираться нет, а с лету у меня не получится...
Думаю, что копать нужнов сторону свойств первого окна (масштабируемое) потом отлавливать разрешение юзера и расставлять все объекты, вычисляя их координаты (например от левого верхнего угла монитора). Геморно. Брось ты это, не стоит того. А если у тебя еще и много объектов будет, вообще запутаться можно. да и код громоздкий будет. ИМХО, конечно.
Автор: Vasia6
Дата сообщения: 11.02.2007 00:04
Как получить список файлов папки в ComboBox?
А если можно то и подпапки.
Заранее спасибо.
Автор: Djon1970
Дата сообщения: 11.02.2007 05:50
GOOSE
Хочу чтобы при нажатии один раз на кнопку открывался текстовый файл (File.Open("AutoPlay\\Docs\\CODEC\\RAD Video Tools 1.8i.4.2c\\readme_rus.txt", "", SW_SHOWNORMAL);
А при двойном нажатии - запускалась установка программы (result = File.Run("AutoPlay\\Docs\\CODEC\\RAD Video Tools 1.8i.4.2c\\RADTools.exe", "", "", SW_SHOWNORMAL, false);
Но открывается только текстовый файл. Ткни пожалуйста, меня носом в мои ошибки.
И еще: пути к файлам выбирать в gallery или project??

Пожалуйста ответь еще на мои вопросы шестью постами выше.
Автор: Xom9I4oK
Дата сообщения: 11.02.2007 12:29
GOOSE

Цитата:
Xom9I4oK
А там и есть всего одна страница. А кнопки это не совсем кнопки Это MenuBar, добавляющий реалистичности виндовой в проекты

Ты меня не понял у меня в проекте куча страниц и мне этот меню бар на всех из них нафиг не нужен )), а только на одной куда я впихнул этот блокнот!
Автор: Vasia6
Дата сообщения: 11.02.2007 21:38

Цитата:
Ты меня не понял у меня в проекте куча страниц и мне этот меню бар на всех из них нафиг не нужен )), а только на одной куда я впихнул этот блокнот!


Можно попробывать использовать Application.SetMenu ( table Menu )
задавать меню на каждой странице и там где не должно его быть видно использовать
tblMenu = {};
Application.SetMenu(tblMenu);

Возможно это не правельно, но это все до чего я додумался, и великие гуру GOOSE и tavria2 где вы, ответте на мой вопрос 3 постами выше )

Автор: GOOSE
Дата сообщения: 11.02.2007 22:59
Djon1970

Цитата:
разве можно в ней делать допустим так: первая страница-прямоугольная, вторая - квадратная, третья - круглая?

Можно конечно Нужно использовать маски окон.

Цитата:
Вообще я действия назначаю в свойсвах кнопки допустим. А где там тащить и бросать не вижу.

Там и негде. Справа у тебя должна быть панель ресурсов проекта (если нет, включи в верхнем меню) Так вот там структура папки AutoPlay. Все используемые в проекте файлы нужно скопировать туда. Плюс в верхнем меню есть пункт Project -->>File Layout Это проводник, поддерживающий drag-n-drop. Там и тащи

Цитата:
Обязательно писать сценарий к кнопке на ее задачу или можно тупо воспользоваться Быстрым действием?

Можно. Но это "тупо" Я бы рекомендовал им не пользоваться.

Цитата:
Но открывается только текстовый файл. Ткни пожалуйста, меня носом в мои ошибки.

Ошибка проста. Ты не разобрался в идеологии и логике скриптов АМС... Вот ты где пишешь этот код? На какой вкладке? Если внимательно посмотришь, то увидишь всего четыре варианта:
- по клику мышкой
- по правому клику мышкой
- при наведении мышки
- при уходе мышки
И где там двойной клик?
То, что ты хочешь, легко реализуемо в примере, который я писал для статьи. Прочти, там все понятно и просто
Vasia6

Цитата:
Как получить список файлов папки в ComboBox?
А если можно то и подпапки.

А скажи пожалуйста, чем отличается ComboBox от ListBox? Ничем, кроме визуального представления списка. В первом он выпадающий, а во втором простой.
Буду банален Но ответ тут на форуме пробегал не раз и в статье именно так получается список из папки
Автор: Vasia6
Дата сообщения: 11.02.2007 23:20
Плиииз дайте ссылочку, небудте банальным )
Жаль нет поиска, подумаешь сервак загнется зато удобно )
Ну или подскажите откуда ближе листать с конца или с начала.
Или вышлите пример на мыло
И в идеале добавьте этот пример в топик для ленивых )
Автор: Djon1970
Дата сообщения: 12.02.2007 05:04
GOOSE
Ну я точно тупой , почему-то втемяшилось в голову, что там по двойному клику, а не по правой кнопке. С английским то вообще не дружу. В школе учительница была, ей бы в гестапо работать. Ростом метра два, пару центнеров весом, ну и голос соотвественно, Галина Германовна. До сих пор дрожь по коже. Вот и привила нелюбовь к английскому, сколько раз пытался учиться, бесполезно.

GOOSE Ты еще на один вопрос не ответил: пути к файлам выбирать в gallery или project??
Автор: GOOSE
Дата сообщения: 12.02.2007 07:54
Vasia6
Ссылочка "для ленивых: в шапке "Для начала читаем статьи: тут раз илитут раз"
Там идет выбор файлов из директории в ЛистБокс.


Цитата:
пути к файлам выбирать в gallery или project

эээ.... я не понял этого вопроса... честно! путь к файлу выбирать правильно на вкладке, куда помещаешь скрипт... Когда выбираешь действие, вылетает окно проводника, в котором и выбираешь нужный файл. Путь формируется автоматом. При этом сам файл копируется в нужную папку проекта. Все это классно работает со "стандартными" файлами, типа кнопок, звуков, фонов и пр. "Посторонние" файлы, типа дистрибутивов, текстовых описаний и пр. лучше ЗАРАНЕЕ скопировать в директорию Docs проекта (можно назначить вложенные папки).

Добавлено:
Vasia6

Цитата:
Жаль нет поиска, подумаешь сервак загнется зато удобно )

Да, с поиском в некоторых темах было бы классно... А подобие поиска тут надо юзать так: открываешь тему "для печати" и при помощи "Найти" ищещь
Автор: Vasia6
Дата сообщения: 12.02.2007 12:43
Ну вродь нашел тока вот охото чтоб объяснили

folder = SourceFolder.."\\data\\";
    tbSearchFiles = {"*.desc"};
    for index,type in tbSearchFiles do -- Что за index type? откуда они в таблице tbSearchFiles
file = File.Find(folder, "*.desc", false, false, nil);
    if file ~= nil then
for j,file_path in file do -- откуда взялось file_path и что это такое
tbFilePath = String.SplitPath(file_path);
sFile = tbFilePath.Filename;
ComboBox.AddItem("ComboBox1", sFile sFile);
end
    end
end
Автор: tavria2
Дата сообщения: 12.02.2007 13:53
Vasia6

Цитата:
for index,type in tbSearchFiles do -- Что за index type? откуда они в таблице tbSearchFiles

index - это пользовательская переменная, которая в цикле принимает номер текущей строки таблицы.
type - это пользовательская переменная, которая в цикле принимает значение текущей строки таблицы.

Цитата:
for j,file_path in file do -- откуда взялось file_path и что это такое

Аналогично вышесказанному.
Автор: Djon1970
Дата сообщения: 16.02.2007 12:55
В проект вставил часы флеш, в сценарии на один клик написал:

if flash then
Button.SetText("Button9", "Включить часы");
Flash.SetVisible("Flash1", false);
flash = false;
else
Button.SetText("Button9", "Отключить часы");
Flash.SetVisible("Flash1", true);
flash = true;
end

но с первого раза, чтобы отключить часы приходится нажать два раза на кнопку. А дальше работает все нормально. Как подправить сценарий?
Автор: tavria2
Дата сообщения: 16.02.2007 13:59
Djon1970

Цитата:
но с первого раза, чтобы отключить часы приходится нажать два раза на кнопку. А дальше работает все нормально. Как подправить сценарий?

Событие кнопки On Click
Код: if (Flash.IsVisible("Flash1")) then -- если флеш отображен
Button.SetText(this, "Включить часы"); -- меняем текст на кнопке
Flash.SetVisible("Flash1", false); -- скрываем флеш
else -- если флеш скрыт
Button.SetText(this, "Отключить часы"); -- меняем текст на кнопке
Flash.SetVisible("Flash1", true); -- отображаем флеш
end
Автор: DenVl
Дата сообщения: 16.02.2007 21:25
Добрый день господа
Помогите разобраться в следующем:
Ниже приведен код, который располагается в событии On Select объекта ListBox:

Код: tblSelected = ListBox.GetSelected("ListBox1");
if (tblSelected) then
-- Get all of the section names in an INI file.
all_sections = INIFile.GetSectionNames("AutoPlay\\Docs\\123.ini");

-- Check to see if any error occurred.
error = Application.GetLastError();

-- If an error occurred, display the error message.
if (error ~= 0) then
Dialog.Message("Error", _tblErrorMessages[error], MB_OK, MB_ICONEXCLAMATION);
-- Check to see if any sections are present.
if (all_sections ~= nil) then
-- Go through each section and try to get a value.
for index_section, section in all_sections do
-- Try to get the data of the value you want.
title = INIFile.GetValue("AutoPlay\\Docs\\123.ini", section, "title");
text = INIFile.GetValue("AutoPlay\\Docs\\123.ini", section, "text");
-- If the value was found, ...
if title and text ~= "" then
???

-- Check to see if any error occurred.
error = Application.GetLastError();
-- If an error occurred, display the error message.
if (error ~= 0) then
Dialog.Message("Error", _tblErrorMessages[error], MB_OK, MB_ICONEXCLAMATION);
end
end
end
end
end
end
Автор: tavria2
Дата сообщения: 16.02.2007 22:50
DenVl
Что ты отображаешь в ListBox'е? Имена секций или title каждой секции?
Автор: tavria2
Дата сообщения: 17.02.2007 09:23
Autoplay Media Studio 6.0.5.0 - February 16, 2007
[more=Подробнее...]Feature: Added Windows Vista support to AutoPlay Media Studio's design and runtime.
Feature: Added a configurable "Requested User Privilege Level (Vista)" option for the application manifest of applications when run on Windows Vista. This feature can be found on the Advanced tab of Project > Settings.
Feature: Added a warning dialog for Widows Vista distribution that is shown before the Publish dialog if any Requested User Privilege Level other than "Require administrator" is set. This is to notify of possible changes needed for Windows Vista.
Feature: Updated a couple of table values in the "System.GetOSVersionInfo" action as well ensuring support on Windows Vista.
Feature: Added Windows Vista support to the "System.GetOSName" action.
Feature: Updated a couple of table values in the "System.GetOSVersionInfo" action as well ensuring support on Windows Vista.
Feature: Added a new error code (error 1045) for the "File.Run" action that tells if it failed due to elevation requirement.
Feature: Added a new table return value to the "System.GetUserInfo" action called "IsVistaAdminLimitedToken" that determines whether the user is logged in as an administrator, but is running with a limited access token.
Feature: Added the topic "Running On Windows Vista" to the command reference (located in the Introduction).
Feature: Updated various areas of the command reference.
Note: The "Burn data CD/DVD" option is currently not supported on Windows Vista in AutoPlay Media Studio. This issue will be addressed in a future service release. Instead, choose the "Hard drive folder" option and burn the files using your favorite burning software.
Fix: Fixed a bug where bookmarks weren't being saved for events in the script editor.
Fix: Fixed a bug where blank strings passed as variable values to an "HTTP.Submit" action were not being passed properly.
Fix: Fixed a bug where variables passed to an "HTTP.Submit" GET action were being appended to the URL twice in some situations.
Fix: Fixed a bug where bookmarks in the script editor were not being saved between sessions.
Fix: Fixed a bug where _IR_ProductID was not returning the correct value for AutoPlay Media Studio 6.0. It now returns "AMS60".
Fix: Fixed an error where "Application.GetWndHandle" was returning a string instead of a number.
Fix: Fixed an issue where the some of the Crypto action's parameters could not be edited directly through the action wizard without using the file browse button. The parameters can now either be browsed for, or typed directly.
Fix: Fixed an issue with the "Flash.Load" action where if you loaded a file into an object that didn't already contain a file, it would not be shown until a page redraw was performed.
Fix: Fixed a bug where Quick Actions failed in certain circumstances when the "Rename resource files" feature was used.
Fix: Fixed a bug where the process return code was not being returned properly when published as a "Web/Email Executable".
Fix: Fixed a bug where the page's "On Key" event was being fired twice when the application window "style" and "taskbar" settings were anything other than "Standard".
Fix: Fixed a bug where a Tree object's image list would not show if the project was published with the "Rename resource files" option selected.
Fix: Fixed a bug in the "Window.Show" action where an incorrect error was being set if the target window was previously hidden even though the action itself succeeded.
Fix: Fixed a bug in the "Zip.Extract" action where the status message showing the file path would not appear correctly if the path was too long.[/more]
Автор: DenVl
Дата сообщения: 17.02.2007 12:33
tavria2

Цитата:
Что ты отображаешь в ListBox'е? Имена секций или title каждой секции?

Имена секций, а title надо отобразить в Label
Автор: tavria2
Дата сообщения: 17.02.2007 13:03
DenVl

Событие страницы On Preload:
Код: cFileName =_SourceFolder.."\\AutoPlay\\Docs\\123.ini"; -- имя INI-фйала
tSectionNames = INIFile.GetSectionNames(cFileName); -- таблица секций INI-файла
if (tSectionNames) then -- если таблица не пустая
for n, cName in tSectionNames do -- получаем имя секции
ListBox.AddItem("ListBox1", cName, ""); -- добавляем имя секции в ListBox
end
end
Автор: DenVl
Дата сообщения: 17.02.2007 18:17
tavria2
Идеально и гениально...вообщем спасибо большое.
И еще один маленький вопросик: a можно дописать код на событие страницы On Preload, чтоб автоматически выбиралась первая строка ListBoxa и соответственно загружались данные в Labelы.
Автор: tavria2
Дата сообщения: 17.02.2007 19:27
DenVl

Цитата:
a можно дописать код на событие страницы On Preload, чтоб автоматически выбиралась первая строка ListBoxa и соответственно загружались данные в Labelы.

Можно. Перенеси код из события страницы On Preload в On Show и добавь одну строчку ListBox.SelectItem("ListBox1", 1);.

Событие страницы On Show:
Код: cFileName =_SourceFolder.."\\AutoPlay\\Docs\\123.ini"; -- имя INI-фйала
tSectionNames = INIFile.GetSectionNames(cFileName); -- таблица секций INI-файла
if (tSectionNames) then -- если таблица не пустая
for n, cName in tSectionNames do -- получаем имя секции
ListBox.AddItem("ListBox1", cName, ""); -- добавляем имя секции в ListBox
end
ListBox.SelectItem("ListBox1", 1); -- выделяем первый пункт
end
Автор: DenVl
Дата сообщения: 17.02.2007 19:30
tavria2 спасибо те огромное, что не отказываешь в помощи, но помоги пожалста еще вот с этим: если ключ title пустой, т.е.

Цитата:

[Prog1]
title=""
text="Text"

то кнопка Button1 становилась неактивной. Как эт сделать?

Добавлено:
tavria2

Цитата:
добавь одну строчку ListBox.SelectItem("ListBox1", 1);.

это тока выделяет первую строку, а мне надобно чтоб еще и инфа загружалась в Labelы, т.е. чтот типа как при клике на ListBox тока при загрузке страницы.
Автор: tavria2
Дата сообщения: 17.02.2007 20:25
DenVl

Цитата:
это тока выделяет первую строку, а мне надобно чтоб еще и инфа загружалась в Labelы

Невнимательно читаем посты:
Цитата:
Перенеси код из события страницы On Preload в On Show и добавь одну строчку ListBox.SelectItem("ListBox1", 1);.



Цитата:
если ключ title пустой, то кнопка Button1 становилась неактивной. Как эт сделать?

Событие ListBox On Select:
Код: tSelect = ListBox.GetSelected("ListBox1"); -- таблица выделенных пунктов
if (tSelect) then -- если есть выделенные пункты
cName = ListBox.GetItemText("ListBox1", tSelect[1]); -- имя выделенной секции из ListBox
if (INIFile.GetValue(cFileName, cName, "title")=="") then -- если параметр title пустой
Button.SetEnabled("Button1", false); -- блокируем кнопку
else -- если параметр title не пустой
Button.SetEnabled("Button1", true); -- активируем кнопку
end
Label.SetText("Label1", INIFile.GetValue(cFileName, cName, "title")); -- отображаем "title"
Label.SetText("Label2", INIFile.GetValue(cFileName, cName, "text")); -- отображаем "text"
else -- если нет выбранных пунктов
Label.SetText("Label1", "");
Label.SetText("Label2", "");
end
Автор: DenVl
Дата сообщения: 19.02.2007 21:09
tavria2
Глянь пожалста в личку.
Автор: BIGNik
Дата сообщения: 22.02.2007 10:29
Здравствуйте!
Не ругайтесь сильно, если вопрос где то уже пробегал. Форум смотрел (весь OFF-line вариант), не встретилось...
Можно ли в Autoplay Media Studio описать трёхмерный массив/таблицу (ну, на худой конец, двумерный)?

Задача такая, что есть несколько таблиц с информацией, в зависимости от выбора пользователя конечные индексы массива будут вычислятся и в конце концов я должен буду вынуть информацию из массива -> arrary(Var1, Var2, Var3), где Var - числовые вычисляемые переменные.
Например, есть таблица с ценами на печатные услуги (цифры в таблице с потолка):
Тираж -> 1-10 11-50 51-100
Красок
1 (1+0) 15 13 11
4 (4+0) 77 66 55
5 (4+1) 80 75 70

Но таких таблиц несколько, для каждого формата печати (A5, A4, A3, A3+ и т.д.) своя.
Идеально все расценки вогнать в трёхмерный массив. Потом, например,
при выборе тиража 20 экземпляров: Var1=2
при цветности 4+1: Var2 = 3
при выборе формата A3: Var3 = 4
и уже из массива по адресу Arrary{Var1, Var2, Var3} брать число (цену) для расчета.

Как можно организовть такой массив?
Писать "стомнадцать" строчек с "IF" и геморно, и коряво, и неправильно...
Буду признателен за любую подсказку.
Автор: GOOSE
Дата сообщения: 22.02.2007 10:45
BIGNik
А почему выбран массив, а не SQLite?
Автор: tavria2
Дата сообщения: 22.02.2007 10:50
BIGNik
AMS не поддерживает многомерные массивы, я думаю тебе нужно смотреть в сторону плагина SQLite - работа с базами данных. Примеры можно скачать с сайта GOOSE.

Добавлено:
Sorry, за дублирование ответа. Пока писал, ответ уже был дан.
Автор: countryman
Дата сообщения: 23.02.2007 09:37
Здравствуйте!
У меня пара вопросов к знатокам.
Форум просмотрел, но примеры немного отличны, а так, как я в программировании вообще не силен, то прошу помощи:
1. Работа с запароленными архивами.
Конкретно - с презентациями ppt. Вьювер записан на диск вместе с презентациями. Пример приводился в шапке, но у меня не работает. Презентации у меня жаты zip’ом и запароленные. Перечень презентаций дан в листбоксе (ListBox2). Использую следующий код:

sTempDirectory = _TempFolder .. "\\";
tSelected = ListBox.GetSelected("ListBox2");
sFile = ListBox.GetItemData("ListBox2", tSelected[1]);
Zip.Extract(sFile, {sFile}, sTempDirectory, false, false, "password", 0, nil);
ViewerPath = _SourceFolder .. "\\PowerPointViewer\\pptview.exe";

Label.SetText("Label1", sFile); - отслеживаю путь, все время возвращает путь к архиву, а не к распакованному файлу!

File.Run(ViewerPath, sFile, "", SW_SHOWNORMAL, true);

В итоге получаю: "PowerPointViewer не может найти файл 1.zip"
То есть, конкретно вопрос в следующем: Как в строку File.Run передать путь к распакованному файлу?
А то я понимаю, что sFile - это путь к архиву, но что поменять, не представляю вообще!
Помогите, пожалуйста, разобраться! Пару дней с этим вожусь, все нервы истрепал, даже сегодня настроение не праздничное!
Заранее благодарен за помощь и понимание.
Автор: BIGNik
Дата сообщения: 23.02.2007 09:46
Здравствуйте !
Во пeрвых, спасибо и GOOSE, и tavria2 за оперативный отклик/помощь, обязательно посмотрю этот плагин как альтернативу 3D-массивам и вообще, работать с внешним файлом данных - хорошая штука.
Только по поводу массивов. Да, в хелпе программы плохо (непонятно) описано то, что касается работы с вложенными таблицами (многомерными массивами). Нигде не написано, как объявить их, как обращаться к ним.
Но всё таки, в конце концов, опытным путём удалось найти, как объявлять и работать с 2D и 3D массивами...
Привожу пример, как работать с многомерными массивами (работает на версии 6.0.4.0)

Код:
-- oбъявляeм мaccивы
one_mass2D = {}
two_mass2D = {}
mass3D = {}

-- Coздaeм пepвый двумepный мaccив
one_mass2D[1] = {1110, 1120, 1130, 1140};
one_mass2D[2] = {1210, 1220, 1230, 1240};
one_mass2D[3] = {1310, 1320, 1330, 1340};

-- Пpиcвaивaeм пepeмeннoй Var1 знaчeниe 1240 и вывoдим нa экpaн
Var1 = one_mass2D[2][4]
Dialog.Message("Arrary 2D", Var1);

-- Coздaeм втopoй двумepный мaccив
two_mass2D[1] = {2110, 2120, 2130, 2140};
two_mass2D[2] = {2210, 2220, 2230, 2240};
two_mass2D[3] = {2310, 2320, 2330, 2340};

-- Coздaeм тpexмepный мaccив нa ocнoвe двуx двумepныx
mass3D[1] = one_mass2D
mass3D[2] = two_mass2D

-- вывoдим нa экpaн знaчeниe 2130
Dialog.Message("Arrary 3D", mass3D[2][1][3]);

-- Объявляем двумерный массив (таблицу) с 4 столбцами и 99999... строками,
-- присваиваем значение и выводим на экран

dim2D = {{}, {}, {}, {}};
dim2D[4][356] = 45 ; -- первый индекс <4> максимальный для объявленного массива
Dialog.Message("Arrary 2D", dim2D[4][356]);

-- пример "ассоциативного" двумерного массива
adrbook = {kod={}, name={}, family={}, phone={}};
adrbook.name[356] = "Иван" ;
adrbook.family[356] = "Иванов" ;
adrbook.phone[356] = "(999) 123-45-67" ;
Dialog.Message("Associative arrary 2D", adrbook.name[356].."\n"..adrbook.family[356].."\n\n"..adrbook.phone[356]);

-- пример обявления трехмерного массива, размерностью 2x3x9999... ( massiv3D[2][3][99999...] ),
-- где максимальное значение первого индекса - 2, второго - 3, третьего - 9999...

massiv3D = { { {},{},{} }, { {},{},{} } }

Автор: tavria2
Дата сообщения: 23.02.2007 10:23
BIGNik
Отлично!


countryman

Цитата:
Zip.Extract(sFile, {sFile}, sTempDirectory, false, false, "password", 0, nil);

Твой код указывает на то, что из архивного файла sFile нужно извлечь этот же архивный файл sFile ?!
Автор: countryman
Дата сообщения: 23.02.2007 11:21
tavria2

В смысле, в скобках {sFile} - это переменная, описывающая имя файла после разархивирования? Имеешь в виду, что достаточно создать новую переменную? или нужно писать точное имя файла (напр. 123.ppt)?
Попробовал поменять {sFile} на {sFile1}, при запуске получил:

Line8: Argument 2must be of type string

Подскажи, пожалуйста, что конкретно нужно вписать? Или хотя бы на чем основываться при выборе переменной?
Я хочу, чтобы при выборе файла из листбокса происходила его разархивация, а потом полученный файл открывался вьювером. Так как файлов много, это должен быть какой-то скрипт, чтобы все происходило автоматом.

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667

Предыдущая тема: Matrix Screensaver


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.