package li.cil.oc.api.internal; /** * This interface is implemented by tile entities that can be colored by * players, such as screens, computer cases and cables. * <p/> * Colors are in the common <tt>RRGGBB</tt> format. * <p/> * This interface is <em>not meant to be implemented</em>, just used. */ public interface Colored { /** * Get the current color value. * * @return the current color value. */ int getColor(); /** * Set the color value. * * @param value the new color value. */ void setColor(int value); /** * Whether the color of the implementing object controls how it can connect * to other objects. If this is <tt>true</tt> for <em>both</em> involved * objects, silver/light gray objects connect to any other object, but * objects of otherwise different color do not connect to each other. If * this is <tt>false</tt> for <em>either</em> of the two objects, they may * always connect to each other. * * @return whether the color influences this object's connectivity. */ boolean controlsConnectivity(); }