Делаю карту с другом, который не приемлет код, только чистый гуи только хардкор. Ради него я почитал статью как добавлять свои функции в гуи. Но там есть ряд проблем, а главная из них: нужно доставать два файлика из архива, редактировать их, вставлять их обратно и себе и другу. А если хочешь работать с другой картой, в которой нет этих функций, то опять открывай вставляй бекап оригинала.
В JNGP есть папка с UMSWE, где я также нашел эти два файла, StringData или как там, и луа скрипт с названием намекающим на то, что он эти файлы вставляет при запуске редактора. Недолго думая, я вписал туда свою тестовую функцию и оно сработало, но когда я начал редактировать его второй раз, то изменения уже не применялись, сколько бы я не перезапускал редактор карт.
В общем, было бы круто иметь способ как-то быстро и стабильно добавлять свои функции в гуи. В идеале, мне бы стоило разобраться с теми скриптами на луа, так бы я смог написать для себя наиболее удобный вариант, но я плохо знаю луа, вряд ли потяну такое. Поэтому, пока я переберу варианты по типу создать папку UI в папке с варкрафтом.
`
ОЖИДАНИЕ РЕКЛАМЫ...
7
Научить его пользоваться CustomScript, если он даже на это не способен, боюсь от него будет больше вреда чем пользы.
25
нужно доставать два файлика из архива, редактировать их, вставлять их обратно и себе и другу.
Локальные файлы. Для рефа папка retail, для дорефа папка с игрой.
23
Если на 1.26а делаете карты, то запиши сразу все нужные функции в TriggerData TriggerStrings WorldEditStrings, запакуй в war3patch.mpq и отправь другу, пусть запихнет его в папку с игрой и у вас будет работать на всех картах
Модульно не выйдет, ведь всё это вписано в цельный файл, ну или кодьте сами софт, который будет открывать архив, доставать оттуда файлы, править их и запаковывать обратно)
Или менять друга-напарника, как выше написали)
10
Похоже на то, что легких+быстрых+чистых решений нет. Постараюсь научить друга вызывать функции с глобалками в аргументах. Заставлять его лезть в реестр, или делать какие-то сложные шаги, кроме как скопировать файлик, или запустить что-то одно, — не вариант, он просто психанет и бросит.
Скрипт был бы идеальным решением. Недавно наткнулся на StormLib, но он на С. Есть варианты и на луа, но они работают с luarock, а это вообще не вариант. Мне нужно маленькое  простое  и портативное решение. В общем, как я себе нафантазировал: конечная цель использовать  StormLib с помощью луа скриптов исполняемых  портативным  LuaBinaries. Без знаний С, мне нужно сделать из  StormLib какую-то особенную dll которая подходит для  LuaBinaries. Как я себе представляю, то нужно просто обернуть функции из оригинала, каким-то специфичным образом. Пожелайте мне удачи.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.