Wake of Gods Forum | Форум Во Имя Богов

Full Version: ERA II
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I had a single constant crash, when using "advanced map infos" mod, clicking on the left corner of a warrior tomb (this didn't occur in 2.46, tried). I changed the code to exit if no yellow square and now is going ok.
Could you show ERM code?
Strange indeed. I'm checking WoG code, nothing changed there, should be no crashes, but I remember crashes related to object position in Phoenix. I had to set v2/v3/v4 to click coordinates, then substract 1 from v2, than search UN:U to find object of needed type and subtype from specified coordinates. And then I used v2/v3/v4 as canonical coordinates, not original click coordinates.

Make s stable crash savegame for me please. Just for future.
Some objects have multiple square size, so if you code to respond on click-position, then click not on entrance, I get the erm dump thing.

But I think this is normal, even in 3.56 sorcery script, Fnord adds +1 or -1 to position if player clicks left/right (warrior tomb work that way). But this is not always possible; for example, prisons have one red/one yellow square then 2 empty squares, so is impossible to know where the player clicks. So I think must code exit if no yellow square.
Right, I see no perfect solution either. Of course, we can write low level function to find first yellow square, but may be not safe either.
Berserker, не искушай меня, демон...
...
*проходит три часа усиленного реверсинга и скриптописания*
...
Координаты в v2/v3/v4 обновляются на правильные.

#erm #snippet #map #objects #coordinates #yellow
gamecreator, ага, вызвал-таки тебя Ab
Здорово! А что не так с кодом ZVS, он один и тот же для OB и WT при получении объекта? Меня это больше смущает.
Я даже не смотрел туда. OB не центрируется на клетку входа автоматически. Сейчас проверил, WT тоже.
Да, там одна и та же функция взятия адреса объекта из массива клеток карты. Почему вылетает — хз.
Да потому что там мусорное значение в контрольном слове, из него и берётся номер артефакта. Вот игра и вылетает при попытке показать в сообщении несуществующий артефакт.
Или ты меня теперь спросишь почему там мусорное значение? Потому что настоящее значение там не нужно, да ещё и синхронизировать его каждый раз пришлось бы. Вместо этого Герои просто используют функцию 40AF10 для получения клетки с реальным контрольным словом.
Понял, очень доступно, спасибо. Эта функция для любых объектов подходит ведь? Может вынести в команду?
Должна. Можешь выносить (в OB:Y если не жалко: Y?$1/?$2/?$3 - получить координаты входа).
Если мне не изменяет, есть объекты с двумя "входами". Как в этом случае?
Да, не изменяет: Оазис (2), Магический источник (2), Водоем (4!).
Не знаю. Какой-нибудь да вернёт. Проверить можно так: посети один из входов в игре и наведи/ПКМ на клетку без входа. Если скажет то же, что и наведение/ПКМ на посещённой клетке - значит вернёт этот вход.
(да, все эти входы считаются отдельными объектами с т.з. посещения: магический источник или водоём можно посещать несколько раз, я давно уже это заметил)
Reference URL's