/* * Copyright (c) 2014 PikaMug and contributors. All rights reserved. * * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN * NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ package me.blackvein.quests.actions; import org.bukkit.block.Block; import org.bukkit.conversations.ConversationContext; import org.bukkit.conversations.ConversationFactory; import org.bukkit.conversations.Prompt; import java.util.List; import java.util.Map; import java.util.UUID; public interface ActionFactory { Map getSelectedExplosionLocations(); void setSelectedExplosionLocations(final Map selectedExplosionLocations); Map getSelectedEffectLocations(); void setSelectedEffectLocations(final Map selectedEffectLocations); Map getSelectedMobLocations(); void setSelectedMobLocations(final Map selectedMobLocations); Map getSelectedLightningLocations(); void setSelectedLightningLocations(final Map selectedLightningLocations); Map getSelectedTeleportLocations(); void setSelectedTeleportLocations(final Map selectedTeleportLocations); ConversationFactory getConversationFactory(); List getNamesOfActionsBeingEdited(); void setNamesOfActionsBeingEdited(final List actionNames); Prompt returnToMenu(final ConversationContext context); void loadData(final IAction event, final ConversationContext context); void clearData(final ConversationContext context); void deleteAction(final ConversationContext context); void saveAction(final ConversationContext context); }