Name: Signalling
Summary: Allows to emit and transfer signals (on/off) over network of blocks
Scope: Engine / Core Content (I hope) / Mod
Current Goal: Provide some basic functionality for emitting (i.e. switches, pressure plate), conducting/transmitting (i.e. cables, AND / OR gates) and consuming (i.e. lamp) signal, as well as a framework for other mods to use to introduce new signal emitters (quite likely), transmitters (not very likely) and consumers (most likely) of the signal.
Phase: Design / Implementation
Curator: @Marcin Sciesinski
GitHub Repository: https://github.com/Terasology/Signalling
Related: blockNetwork
Details:
Introduces a concept of a signal - boolean flag that can be acted upon by a mod/system. Uses producer/consumer model with a conductor in the middle (if any).
Producer can emit a signal with either an infinite strength (range) or with a limited strength (range). A signal of range 0 signifies that the emitter does not emit signal. Producer has to have a SignalProducer component defined.
Consumer defines in what way does it interpret signals from networks it is connected to. Consumer is also notified when it receives or stops receiving a signal. Consumer has to have two components defined: SignalConsumer (input component) and SignalConsumerState (output component). The latter is modified by the Signalling system whenever signal state is changed (on/off).
Use instructions:
If you want your block to receive a signal and act upon, make sure it has two components - SignalConsumer and SignalConsumerState. Register an event listener on ComponentChangedEvent for the SignalConsumerStateComponent and act upon changes done to the signal - yes that is ALL you have to do to integrate with the Signalling mod.
Need help with:
1. Suggestions on functionality blocks - have an idea for a cool emitter, conductor/transmitter or consumer that fits in a generic mod category, please let use know.
2. Would you like to help us with textures, please post here.
Summary: Allows to emit and transfer signals (on/off) over network of blocks
Scope: Engine / Core Content (I hope) / Mod
Current Goal: Provide some basic functionality for emitting (i.e. switches, pressure plate), conducting/transmitting (i.e. cables, AND / OR gates) and consuming (i.e. lamp) signal, as well as a framework for other mods to use to introduce new signal emitters (quite likely), transmitters (not very likely) and consumers (most likely) of the signal.
Phase: Design / Implementation
Curator: @Marcin Sciesinski
GitHub Repository: https://github.com/Terasology/Signalling
Related: blockNetwork
Details:
Introduces a concept of a signal - boolean flag that can be acted upon by a mod/system. Uses producer/consumer model with a conductor in the middle (if any).
Producer can emit a signal with either an infinite strength (range) or with a limited strength (range). A signal of range 0 signifies that the emitter does not emit signal. Producer has to have a SignalProducer component defined.
Consumer defines in what way does it interpret signals from networks it is connected to. Consumer is also notified when it receives or stops receiving a signal. Consumer has to have two components defined: SignalConsumer (input component) and SignalConsumerState (output component). The latter is modified by the Signalling system whenever signal state is changed (on/off).
Use instructions:
If you want your block to receive a signal and act upon, make sure it has two components - SignalConsumer and SignalConsumerState. Register an event listener on ComponentChangedEvent for the SignalConsumerStateComponent and act upon changes done to the signal - yes that is ALL you have to do to integrate with the Signalling mod.
Need help with:
1. Suggestions on functionality blocks - have an idea for a cool emitter, conductor/transmitter or consumer that fits in a generic mod category, please let use know.
2. Would you like to help us with textures, please post here.
Last edited by a moderator: