В общем - так. Часа 2 мне потребовалось для вспоминания, как же оно всё-таки работает! Но я смог! )
Я ввёл понятие "версии".
В первую очередь это, конечно, касается Форджа.
Сейчас из главного меню на него сохранились 3 ссылки. (я их поправил, они работают). Но суть в том, что ссылка "heroes3towns.com/?town=forge&page=buildings" больше не работает и не может работать, так как в папке towns\forge теперь находятся 3 каталога, с названиями "1", "2", "3". Каталогов "towns\forge_*" - соответственно нету и быть не должно.
И зайдя в ЛЮБОЙ фордж из главного меню - между ними можно переключаться. Причём не так, как между другими разными городами - а из "О проекте" Форджа NWC - можно перейти сразу в "О проекте" Польского Форджа и т.д.
Ссылки на проекты с версиями (Пока это Фордж, планируется также Роща) теперь будут выглядеть следующим образом: "heroes3towns.com/?town=forge&ver=2&page=buildings"
прямой доступ к файлам: "heroes3towns.com/towns/forge/2/buildings.dat"
Соответственно - из меню лишние Форджи - можно изъять! (Даже не знаю - оставить ли его в концептах NWC - не заслужили! Да и картинку портит это "не был выпущен" - не был - так место ему в проектах, а не в первых двух рядах!)
Как это реализовано. Для Спартака, может - Доцента.
Во всех dat-файлах объединённых проектов в начале стоит несколько (по числу проектов) строк:
Код
smi 1 NWC Forge
smi 2 Кузница ХотА
smi 3 Польский Фордж
brk
Команда smi не имеет отношения к средствам массовой информации - означает submenu item
Субменю имеет формат - один символ для обозначения версии (можно букву) и остальной текст для выбора в качестве пункта меню. Через один пробел или абсолютно любой другой символ. То есть, первая позиция используется для идентификатора вложенного каталога, вторая НЕ ИСПОЛЬЗУЕТСЯ, с третьей - отображение во внутреннем меню.
Команда brk - тоже новая. Введена для логического отступа, потому что после smi во всех разделах, кроме юнитов - было наложение меню на следующие элементы. Можно эту команду использовать где угодно, она довольно безобидна, но лучше изучить последствия ))
И в units.dat - её лучше не использовать. Большой разрыв получится.
Известные проблемы (буду ликвидировать).
Отображение названия города в верхней строке в городах с "версиями" пока глючит. Я исправлю.
Статистика сайта - по-моему она глючна везде! (В Башне - 40 посещений!) А в городах с "версиями" вообще ничего не отображает.
Да, и от этого жуткого костыля "Скриншоты ХотА" - стоит избавиться. Где нововведения относятся к Причалу, или ни к чему конкретно - залить в Галерею Причала. Где к Кронверку - в Кронверк, где к Собору - в Собор. Если вдруг встретится что-то вроде "Причал против Кронверка" - и туда и туда! Но (не знаю, кто правил мой код в work.php) - из-за этого костыля я очень долго не мог разобраться...
Да, забыл сказать. Ссылка вроде "heroes3towns.com/?town=forge/2&page=buildings" работать будет, но она неправильна, потому что если с неё перейти на другой проект - мы получим что-то вроде "heroes3towns.com/?town=forge/2&ver=3&page=buildings" - а уж это точно работать не будет - ибо попытается обратиться к каталогу и файлу, которых не существует в принципе: "towns\forge\2\3\buildings.dat"
Для выкладывания картинок такое использовать можно (меньше букафф) - но не для сцылок!