/c for y=-4,4,2 do
game.player.surface.create_entity({name="straight-rail", force=game.player.force, position={game.player.position.x, game.player.position.y+y}})
end
for x=-4,4,1 do
game.player.surface.create_entity({name="heat-pipe", force=game.player.force, position={game.player.position.x+x, game.player.position.y}})
end
콘솔에 위 커맨드를 입력하면
이런식으로 설치가 됨
기본적으로 entity끼리는 서로 충돌 판정이 존재하지만 이렇게 create_entity를 이용하면 충돌 판정을 씹고 설치하는게 가능함
이걸 하기 위해서는 지금까지 data.lua를 건드려서 prototype stage만 건드리는걸 넘어서 controllua=runtime stage까지 어느정도는 할 줄 알아야 함
https://lua-api.factorio.com/latest/classes/LuaSurface.html#create_entity
LuaSurface - Runtime Docs | FactorioLuaSurface - Runtime Docs | Factoriolua-api.factorio.com위의 문서에서 LuaSurface::create_entity에 대한 내용을 확인 가능
runtime 단에서 해결하는 걸 안하고 prototype stage에서만 해결을 보려면 열파이프의 충돌레이어를 잘 고쳐준다면 애초에 스크립트 안쓰고 손으로도 겹치게 설치가 될 것 같긴함
근데 문제는 "철도"와의 충돌판정만 없애고 나머지 다른 엔티티와 충돌판정 유지하는건 좀 힘들 것같음
열 파이프의 기본 collision mask중에 object-layer에 포함이 되어있는데 철도 또한 object-layer이기 때문에 철도와 충돌 판정을 없애려면 저 속성을 제거해줘야하고 문제는 이러면 열파이프는 다른 엔티티하고 겹치기가 가능해진다는 뜻
철도를 제외한 모든 나머지 엔티티에 임의의 충돌 마스크 "heat-pipe-layer"를 하나 추가해주는 식이 아니면 해결하기 난감할 것 같음
그냥 런타임 스크립트 방식으로 할거라면 철도 옆에 열파이프가 설치된다거나 하면 그 이벤트를 감지해서 자동으로 바닥에 열파이프를 추가로 깔아주는식으로 사용 가능
오 신기하네 철도 설치는 자주 있는 일이 아니고 열파이프 관통 철도 설치는 더 드물테니 컨트롤 루아로 해도 ups는 문제 없을듯 3번짤같은 화면은 어디서 볼수있음?
컨트롤 쉬프트 E 눌러봐
인게임에서 그냥 저거 누르면 됨? 지금은 끈상태라 확인이 안되네
ㅇㅇ 프로로타입 정보 볼 때 유용함
1*4칸짜리 열파이프를 만들고 걔한테만 충돌 무시 달아주면 될지도? 대신 레시피좀 비싸게하고
어 열파이프 크기 변경이 되는건가
우주파이프처럼 될거같다고 생각했는데 안되나 사실 아무것도 모름
크기조절 될거같은데 크기값은 모든 엔티티에 있는거 같으니 근데 그 모양에 맞는 리소스가 없으면 어색하고 회전 설정도 따로 추가해야할듯
근데 한 건물의 일부분에만 충돌판정 다르게 넣어줄 수 있나? 그거 되면 좀더 깔끔하게 가능할거같은데
듣고보니 안될 이유도 없어보이긴 함 ㅋㅋ
열파이프에는 원래 회전개념이란게 없으니 회전필요하면 재설치시키도록 해야하고
건물일부만 충돌판정 다르게 하려면 결국 각각 다른 엔티티가 되어야함
ㄲㅂ
ltn 설치하면 나오는 따까리를 충돌판정 없고 길쭉한 열파이프로 만들면 그게 철도에 부착되는 열선이 될듯
윗댓대로 더미 철도 신호나 더미 철도역 설치하면 열파이프 스크립트로 설치해주는것도 나름 괜찮을것 같긴하네