Remove build artifacts, dev tool configs, unused dependencies, and third-party source dumps. Add proper README, update .gitignore, clean up Makefile.
40 lines
834 B
Java
40 lines
834 B
Java
package com.tiedup.remake.state;
|
|
|
|
import com.tiedup.remake.util.tasks.ItemTask;
|
|
import org.jetbrains.annotations.Nullable;
|
|
|
|
/**
|
|
* Standalone sale state interface for entities that can be put up for sale.
|
|
*
|
|
* @see IRestrainable
|
|
*/
|
|
public interface ISaleable {
|
|
|
|
/**
|
|
* Check if this entity is marked for sale by a captor.
|
|
*
|
|
* @return true if captive is being sold
|
|
*/
|
|
boolean isForSell();
|
|
|
|
/**
|
|
* Get the sale price for this captive.
|
|
*
|
|
* @return The sale price ItemTask, or null if not for sale
|
|
*/
|
|
@Nullable
|
|
ItemTask getSalePrice();
|
|
|
|
/**
|
|
* Mark this captive as for sale with the given price.
|
|
*
|
|
* @param price The sale price
|
|
*/
|
|
void putForSale(ItemTask price);
|
|
|
|
/**
|
|
* Cancel the sale and reset sale state.
|
|
*/
|
|
void cancelSale();
|
|
}
|