abstract class BaseItemAction extends BaseScriptableAction
{
	private var m_itemData : weak< gameItemData >;
	private var m_removeAfterUse : Bool;
	private var m_quantity : Int32;
	default m_quantity = 1;

	public function ShouldRemoveAfterUse() : Bool
	{
		return m_removeAfterUse;
	}

	public function GetItemData() : weak< gameItemData >
	{
		return m_itemData;
	}

	public function SetRemoveAfterUse()
	{
		m_removeAfterUse = TweakDBInterface.GetBool( m_objectActionID + T".removeAfterUse", true );
	}

	public function SetItemData( item : weak< gameItemData > )
	{
		m_itemData = item;
	}

	public const function GetItemType() : gamedataItemType
	{
		return m_itemData.GetItemType();
	}

	public function SetRequestQuantity( quantity : Int32 )
	{
		m_quantity = quantity;
	}

	public function GetRequestQuantity() : Int32
	{
		return m_quantity;
	}

}

