Artos 99 Опубликовано 12 Сентября 2013 (изменено) @Malandrinus, правки движка (помимо колбэков на клавиши) необходимы для добавления двух функций, обеспечивающих получение данных объекта: obj.get_go_float и matrix().mul_43. Если бы ты дал немного больше информации о том, что можно было бы сделать скриптами (т.е. что требуется от доп.функций) то можно реализовать это уже доступными способами. obj.get_go_float - мною уже почти реализовано при помощи нет-пакетов, неясны остались индексы 1,4,5,6 (из 0...15). Можешь, уточнить что они должны означать в контексте векторов позиции и направления? И уточни, плз, что должен делать метод matrix().mul_43 по сравнению с уже имеющимся mul. Тогда можно сделать не привязанный к движку вариант zone-информера (даже под CS/CoP), позволяющего в игре наблюдать размеры/положения различных зон-объектов, что при тестах/отладках игры порою сильно помогает (особенно когда не известны параметры заспавненных зон/аномалий, а справляться в all.spawn'e иль SDK - потеря времени). Изменено 12 Сентября 2013 пользователем Artos 1 "Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени Поделиться этим сообщением Ссылка на сообщение
Artos 99 Опубликовано 12 Сентября 2013 Спасибо за пояснения. Собственно замену get_go_float уже попытался реализовать, но именно предположения о возможных искажениях при сдвигах объекта дали повод сомнениям. Вот как выглядит заглушка: local function get_floats(obj) local floats = {} if type(obj.get_go_float) == 'function' then --/#!# for i=0,15 do floats = obj:get_go_float(80 + i*4) end else --/ stub local pos, dir = obj:position(), obj:direction() --log("get_floats: obj=[%s] pos=[%s] dir=[%s]", obj:name(), pos, dir, "") --/#~# floats = { [ 0]=math.abs(dir.z), [ 1]=-0 , [ 2]=math.abs(dir.x), [ 3]=0, --/ 1:? [ 4]= 0, [ 5]= 1 , [ 6]= 0, [ 7]=0, --/ 4:? , 5:? , 6:? [ 8]= dir.x, [ 9]=dir.y, [10]= dir.z, [11]=0, [12]= pos.x, [13]=pos.y, [14]= pos.z, [15]=1 } end return floats --/> end достаточно ли это корректно или могут быть значительные искажения отображения от реального положения объекта? "Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени Поделиться этим сообщением Ссылка на сообщение