Metal293 1 Опубликовано 21 Января 2018 Ребята, кто шарит - помогите. Битый час пытаюсь приладить этот пак к чистому АМК 1.4.1, и на выхлопе безлоговый вылет. Может кто уже делал, или увидит где я там что поломал Pastebin. 1 Поделиться этим сообщением Ссылка на сообщение
Metal293 1 Опубликовано 24 Января 2018 upd. Худо-бедно прикрутил, полёт нормальный. Один неприятный косяк вылез - в баре осведомитель и бармен говорят фразы посетителей. Вроде как-бы к модулю rx_sound не относится, какие-то затыки в xr_kamp скорее, но шашки с эвалюаторами ничего не дали. Поделиться этим сообщением Ссылка на сообщение
Metal293 1 Опубликовано 24 Января 2018 (изменено) Плюс к тому, неписей плющит во время выброса, когда они находятся в укрытии - тоже не вышло ничего переделать под новый state_mgr. Код там такой: Скрытый текст function action_inhide:initialize() action_base.initialize(self) local npc=self.object npc:set_detail_path_type(move.line) npc:set_path_type(game_object.level_path) if self.st.hide==nil then self.st.hide={} end if self.st.hide.place==nil then self.st.hide.place={} end -- get_console():execute("load ~~~inhide init "..npc:character_name()) -- get_console():execute("flush") -- Выбираем точку внутри укрытия local ang0=math.random(0,360) local r0=math.random(1,15) local v0=vector():set(1,0,0) self.lvid=npc:level_vertex_id() local stop=false for r=r0,0,-1 do for ang=ang0,ang0+360,30 do local v=utils.vector_rotate_y(v0,ang) local lvid=level.vertex_in_direction(self.st.hide.center,v,r) if npc:accessible(lvid) and (not self.st.hide.place[lvid]) and amk_mod.check_npc_in_hideout(level.vertex_position(lvid),self.st.hide) and level.vertex_position(lvid):distance_to(level.vertex_position(self.st.hide.center))>r/1.5 then self.lvid=lvid stop=true break end if stop then break end end end state_mgr.set_state(npc,"raid") self.begin=time_global() self.kicktime=time_global()+5000 utils.send_to_nearest_accessible_vertex(npc,self.lvid) self.tgtvec=control_entrance_vec(self.lvid,self.st.hide) self.st.hide.place[self.lvid]=true end function action_inhide:execute() action_base.execute(self) local npc=self.object -- get_console():execute("load ~~~inhide exec "..npc:character_name()) -- get_console():execute("flush") if npc:level_vertex_id()==self.lvid and self.begin and self.begin<time_global() then self.begin=nil state_mgr.set_state(npc,"hide_na",nil,nil,{look_position=self.tgtvec}) elseif npc:level_vertex_id()~=self.lvid then if self.kicktime<time_global() then if not self.begin then state_mgr.set_state(npc,"raid") end self.kicktime=time_global()+5000 utils.send_to_nearest_accessible_vertex(npc,self.lvid) self.begin=0 end end end function action_inhide:finalize() action_base.finalize(self) local npc=self.object if self.st.hide and self.st.hide.place then self.st.hide.place[self.lvid]=nil end -- get_console():execute("load ~~~inhide fin "..npc:character_name()) -- get_console():execute("flush") end function control_entrance_vec(vtx,hide) local delt=level.vertex_position(vtx):sub(level.vertex_position(hide.center)) local tgtvtx=vector():set(0,0,0) local maxdist=-10000 for i,v in ipairs(hide.entrances) do local delt1=level.vertex_position(v):sub(level.vertex_position(hide.center)) local dist=delt1:dotproduct(delt) if dist>maxdist then maxdist=dist tgtvtx=level.vertex_position(v) end end return tgtvtx end Изменено 24 Января 2018 пользователем Metal293 Поделиться этим сообщением Ссылка на сообщение
Metal293 1 Опубликовано 31 Января 2018 (изменено) Сейчас ещё один неприятный момент обнаружился - зомбированные в массе своей не могут достать оружие, какие-то конфликты в state_mgr, после замены на оригинальный проблема исчезает. @I am Dead Тот же косяк в твоей адаптации. А ещё ты там конфликтующую схему watcher_act оставил подключенной в modules. Изменено 31 Января 2018 пользователем Metal293 Поделиться этим сообщением Ссылка на сообщение
Metal293 1 Опубликовано 2 Февраля 2018 (изменено) @I am Dead На свалке в ангаре такое наблюдал, когда рядом с неписями в укрытии был противник, они начинали приседать и вскакивать, пряча за спину и доставая оружие при этом, с периодичностью в полсекунды, и так до самого конца выброса. Очевидно там надо переписывать переход на анимацию под новый state_mgr с новой функцией lock. Код я выше давал, у самого у меня не получилось ничего там выдумать. @Han Sola А толку там что-то отдельно вмонтировать, если конфликт в state_mgr, который адаптации не поддаётся в принципе. Изменено 2 Февраля 2018 пользователем Metal293 1 Поделиться этим сообщением Ссылка на сообщение