Orbital Request Combinator


Adds a combinator that outputs the orbital requests of all space platforms currently orbiting the surface it is placed on, with full quality signal support. Poll rate is configurable in mod settings.

Tweaks
a month ago
2.0
38
Logistic network Circuit network

g Wrong graphics.

a month ago

ahhh, the graphics haven't overrided the default combinator. Will fix.

a month ago

local remnants =
{
{
type = "corpse",
se_allow_in_space = true,
name = "ei-orbital-combinator-remnants",
icon = ei_path.."graphics/icons/orbital-request-combinator.png",
icon_size = 64, icon_mipmaps = 4,
flags = {"placeable-neutral", "not-on-map"},
subgroup = "circuit-network-remnants",
order = "a-d-a",
selection_box = {{-0.5, -0.5}, {0.5, 0.5}},
tile_width = 1,
tile_height = 1,
selectable_in_game = false,
time_before_removed = 60 * 60 * 15, -- 15 minutes
final_render_layer = "remnants",
remove_on_tile_placement = false,
animation = make_rotated_animation_variations_from_sheet (1,
{
filename = ei_path.."graphics/entities/orbital-request-combinator/orbital-request-combinator-remnants.png",
line_length = 1,
width = 118,
height = 112,
frame_count = 1,
variation_count = 1,
axially_symmetrical = false,
direction_count = 4,
shift = util.by_pixel(0, 0),
scale = 0.5,
})
},
}

for k, remnant in pairs (remnants) do
if not remnant.localised_name then
local name = remnant.name
if name:find("%-remnants") then
remnant.localised_name = {"remnant-name", {"entity-name."..name:gsub("%-remnants", "")}}
end
end
end

data:extend(remnants)

function OrbitalCombinator(combinator)
combinator.sprites =
make_4way_animation_from_spritesheet({ layers =
{
{
filename = ei_path.."graphics/entities/orbital-request-combinator/orbital-request-combinator.png",
width = 114,
height = 102,
frame_count = 1,
shift = util.by_pixel(0, 5),
scale = 0.5,
},
{
filename = ei_path.."graphics/entities/orbital-request-combinator/orbital-request-combinator-shadow.png",
width = 98,
height = 66,
frame_count = 1,
shift = util.by_pixel(8.5, 5.5),
scale = 0.5,
draw_as_shadow = true,
}
}
})
combinator.activity_led_sprites =
{
north = util.draw_as_glow
{
filename = "base/graphics/entity/combinator/activity-leds/constant-combinator-LED-N.png",
width = 14,
height = 12,
frame_count = 1,
shift = util.by_pixel(9, -11.5),
scale = 0.5,
},
east = util.draw_as_glow
{
filename = "base/graphics/entity/combinator/activity-leds/constant-combinator-LED-E.png",
width = 14,
height = 14,
frame_count = 1,
shift = util.by_pixel(7.5, -0.5),
scale = 0.5,
},
south = util.draw_as_glow
{
filename = "base/graphics/entity/combinator/activity-leds/constant-combinator-LED-S.png",
width = 14,
height = 16,
frame_count = 1,
shift = util.by_pixel(-9, 2.5),
scale = 0.5,
},
west = util.draw_as_glow
{
filename = "base/graphics/entity/combinator/activity-leds/constant-combinator-LED-W.png",
width = 14,
height = 16,
frame_count = 1,
shift = util.by_pixel(-7, -15),
scale = 0.5,
}
}
combinator.circuit_wire_connection_points =
{
-- north
{
shadow =
{
red = util.by_pixel(7, -6),
green = util.by_pixel(23, -6)
},
wire =
{
red = util.by_pixel(-8.5, -14.5),
green = util.by_pixel(7, -14.5)
}
},
-- east
{
shadow =
{
red = util.by_pixel(32, -5),
green = util.by_pixel(32, 8)
},
wire =
{
red = util.by_pixel(15, -13.5),
green = util.by_pixel(17.5, -0.5)
}
},
-- south
{
shadow =
{
red = util.by_pixel(25, 20),
green = util.by_pixel(9, 20)
},
wire =
{
red = util.by_pixel(9, 9.5),
green = util.by_pixel(-6, 9.5)
}
},
-- west
{
shadow =
{
red = util.by_pixel(1, 11),
green = util.by_pixel(1, -2)
},
wire =
{
red = util.by_pixel(-14, 3.5),
green = util.by_pixel(-16, -10.5)
}
}
}
return combinator
end

Working good for orbital request scanner in esir.

New response