- splitters
- transport-belt
- belt-to-ground
- loaders
What I mean by this:
Check if the current entity can actually output into the forward entity
Check if the neighbour entity can properly input into this (ie: no pushing into the hood of a belt-to-ground or side of a splitter)
It doesn't have to be whether both input lines can reach, just if at least one can input/output.
It should return a table of either inputs and outputs, or all entities with some sort of indicator of whether each entity is an input or output to the current entity.
If possible, the ability to call neighbours.input or neighbours.output individually to only receive those specific tables without running the entire neighbours method and getting both tables.
A use example would be
Code: Select all
entity.neighbours ->
{
input = {}
output = {}
}
The table property input gives an array of up to three entity references, or an empty table
Code: Select all
neighbours.input ->
{
LuaEntity,
LuaEntity,
LuaEntity
}
Code: Select all
neighbours.output ->
LuaEntity
or
{
LuaEntity
}
The table property input gives an array of up to two entity references, or an empty table
Code: Select all
neighbours.input ->
{
LuaEntity,
LuaEntity
}
Code: Select all
neighbours.output ->
{
LuaEntity,
LuaEntity
}
The biggest thing here is that these types of entities are very different from pipes and anything with fluidboxes. It simply cannot act the same.