All Downloads are FREE. Search and download functionalities are using the official Maven repository.

mmb.content.stn.attachment.STNattachment Maven / Gradle / Ivy

Go to download

Dependency for the MultiMachineBuilder, a voxel game about building an industrial empire in a finite world. THIS RELEASE IS NOT PLAYABLE. To play the game, donwload from >ITCH.IO LINK HERE< or >GH releases link here<

There is a newer version: 0.6
Show newest version
/**
 * 
 */
package mmb.content.stn.attachment;

import java.awt.Component;
import java.util.function.Supplier;

/**
 * A base interface for all STN attachments
 * @author oskar
 * @param  type of the attachment
 * @param  type of the GUI component (it must also implement a get() method, which provides a new state
 */
public interface STNattachment> {
	public T state();
	
	/**
	 * Replaces a state. This method does not have any side effects
	 * @param newState
	 * @return a new attachment
	 */
	public STNattachment replaceState(T newState);
	
	/**
	 * Create a GUI component
	 * @return a GUI component
	 */
	public U createGUI();
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy