(28.10.2020 06:29)Berserker Wrote: Bes, потому что ты пишешь простой линейный код без сложных функций, вложенных циклов, активного использования массивов и косвенной адресации, без динамических массивов и вложенных динамических массивов и т.д.
так я ж не спорю, для такого сложного профессионального кода нужна практика и опыт в построении логики кода, чего у меня естественно нет. Считай начинаю всё заново, лишь имея бэкграунд старой школы скриптинга.
Вот, мои первые пробы пера... жаль нет щас возможности на работе с ПК позаниматься, а на бумаге сложно получается (без справки и материала), вчера пробовал )))
- !#DC(TRUE) = 1;
- !#DC(OBJ_WAR_MACHINE_FACTORY) = 106;
- !#DC(WOG_OPT_WAR_MACHINE_III) = 73;
- !#DC(CURRENT_PLAYER) = -1;
- !#DC(NO_HERO) = -1;
- !#UN:P(WOG_OPT_WAR_MACHINE_III)/?i^OPT_STATUS^
- !?OB(OBJ_WAR_MACHINE_FACTORY)&i(OPT_STATUS)=(TRUE);
- !!OW:A(CURRENT_PLAYER)/?(hero_ID:y);
- !!FU&(hero_ID)=(NO_HERO):E;
- !!HE(hero_ID):P?(x:y)/?(y:y)/?(l:y) O?(hero_OWNER);
- !!OW:G(hero_OWNER)/?(mp_status:y);
- !!if&(mp_status)=(TRUE):;
- !!OB998:S;
- !!PO998:O(hero_OWNER);
- !!VR(x):+1;
- !!PO(x)/(y)/(l):O(hero_OWNER);
- !!VR(x):-1;
- !!FU7799:P(hero_ID);
- !!FU7800:P(hero_ID);
- !!FU(WOG_SCRIPT.05_GET_MACHINE_DL):P(x)/(y)/(l)/0/0/0/(hero_ID);
- !!IF&(ERM_FLAG_IS_HUMAN):Q2/z173009;
- !!FU7814&(ERM_FLAG_IS_HUMAN)/2:P(x)/(y)/(l)/(hero_ID);
- !!en:;
- !!FU7815&-(ERM_FLAG_IS_HUMAN):P(x)/(y)/(l)/(hero_ID);
- !!OB998&-(ERM_FLAG_IS_HUMAN):R;
Это пока просто переписал родной WoG скрипт, с РО костылями, которые потом уберу.
И да, не знаю, как быть с вот таким смещением координат
- !!PO998:O(hero_OWNER);
- !!VR(x):+1;
- !!PO(x)/(y)/(l):O(hero_OWNER);
- !!VR(x):-1;
ведь SN:O во второй версии ERA с изъяном, и по сути я, убрав эти древние изголяния с подгонкой кода под красныве клетки объекта и последующего диалога вывода инфы по объекту, автоматом заложу возможный баг при известной ситуацией с другим героем на входе фабрики. Да, код будет под ERA3 написан, но и на ERA2 перекомпилированный тож уйдёт в сборку, потому такая вилка и возникает