Atavism Version 2018.1AGIS API

atavism.agis.objects
Class QuestState

java.lang.Object
  extended by atavism.agis.objects.QuestState
All Implemented Interfaces:
MessageCallback, MessageDispatch, java.io.Serializable
Direct Known Subclasses:
BasicQuestState

public abstract class QuestState
extends java.lang.Object
implements MessageCallback, MessageDispatch, java.io.Serializable

See Also:
Serialized Form

Field Summary
protected  java.util.concurrent.locks.Lock lock
           
 
Fields inherited from interface atavism.msgsys.MessageCallback
NO_FLAGS, RESPONSE_EXPECTED
 
Constructor Summary
QuestState()
           
QuestState(AgisQuest quest, OID playerOid)
           
 
Method Summary
abstract  void abandonQuest(OID playerOid)
           
abstract  boolean activate()
          gets activated by QuestPlugin.
 void addReward(int grade, int reward, int number)
           
 void addRewardToChoose(int grade, int reward, int number)
           
abstract  void deactivate()
           
 void dispatchMessage(Message message, int flags, MessageCallback callback)
          Dispatch message to queue or thread pool.
 boolean getCompleted()
           
 int getCompletionLevel()
           
 boolean getConcluded()
           
 java.util.HashMap<java.lang.Integer,java.util.HashMap<java.lang.Integer,java.lang.Integer>> getCurrencyRewards()
           
 int getGrades()
           
 java.lang.String getName()
           
abstract  java.util.HashMap<java.lang.Integer,java.util.List<java.lang.String>> getObjectiveStatus()
          returns a string representation of the current objectives for display on the client.
 OID getPlayerOid()
           
 java.util.HashMap<java.lang.Integer,java.lang.String> getQuestCompletionText()
           
 java.lang.String getQuestDesc()
           
 java.lang.String getQuestObjective()
           
 OID getQuestOid()
           
 java.lang.String getQuestProgressText()
           
 int getQuestRef()
           
 java.lang.String getQuestTitle()
           
 boolean getRepeatable()
           
 java.util.HashMap<java.lang.Integer,java.util.HashMap<java.lang.Integer,java.lang.Integer>> getRepRewards()
           
 int getReqLevel()
           
 java.util.HashMap<java.lang.Integer,java.util.HashMap<java.lang.Integer,java.lang.Integer>> getRewards()
          returns a list item template names
 java.util.HashMap<java.lang.Integer,java.util.HashMap<java.lang.Integer,java.lang.Integer>> getRewardsToChoose()
          returns a list item template names
 java.util.HashMap<java.lang.Integer,java.lang.Integer> getXpRewards()
           
 boolean handleConclude()
          called when the player is concluding (turning in) the quest returns false if the quest state cannot conclude the quest
 void handleDeath(AgisMob mobKilled)
          called when a mob is killed that the player is getting credit for
 void handleInit()
          called after the queststate is initialized and set by the world server to the player
 void handleInvUpdate()
          called when the player's inv changes
abstract  void handleMessage(Message msg, int flags)
          Handle message.
 void sendStateStatusChange()
          send a StateStatusChangeMessage to notify that this quest has been updated
 void setCompleted(boolean flag)
           
 void setConcluded(boolean flag)
           
 void setCurrencyRewards(java.util.HashMap<java.lang.Integer,java.util.HashMap<java.lang.Integer,java.lang.Integer>> rewards)
           
 void setGrades(int numGrades)
           
 void setPlayerOid(OID oid)
           
 void setQuestCompletionText(java.util.HashMap<java.lang.Integer,java.lang.String> completionTexts)
           
 void setQuestDesc(java.lang.String desc)
           
 void setQuestObjective(java.lang.String objective)
           
 void setQuestOid(OID oid)
           
 void setQuestProgressText(java.lang.String s)
           
 void setQuestRef(int quest)
           
 void setQuestTitle(java.lang.String title)
           
 void setRepeatable(boolean repeatable)
           
 void setRepRewards(java.util.HashMap<java.lang.Integer,java.util.HashMap<java.lang.Integer,java.lang.Integer>> rewards)
           
 void setReqLevel(int leval)
           
 void setRewards(java.util.HashMap<java.lang.Integer,java.util.HashMap<java.lang.Integer,java.lang.Integer>> rewards)
           
 void setRewardsToChoose(java.util.HashMap<java.lang.Integer,java.util.HashMap<java.lang.Integer,java.lang.Integer>> rewards)
           
protected  void setupTransient()
           
 void setXpRewards(java.util.HashMap<java.lang.Integer,java.lang.Integer> rewards)
           
 java.lang.String toString()
           
 void updateQuestLog()
          sends QuestLogInfo message for this quest
 void updateQuestObjectives()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

lock

protected transient java.util.concurrent.locks.Lock lock
Constructor Detail

QuestState

public QuestState()

QuestState

public QuestState(AgisQuest quest,
                  OID playerOid)
Method Detail

setupTransient

protected void setupTransient()

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

activate

public abstract boolean activate()
gets activated by QuestPlugin. the quest is typically created by the QuestBehavior and sent over to the QuestPlugin, which then adds it to the players quest states and also calls activate on the quest state object


deactivate

public abstract void deactivate()

abandonQuest

public abstract void abandonQuest(OID playerOid)

getName

public java.lang.String getName()

getPlayerOid

public OID getPlayerOid()

setPlayerOid

public void setPlayerOid(OID oid)

handleInit

public void handleInit()
called after the queststate is initialized and set by the world server to the player


handleDeath

public void handleDeath(AgisMob mobKilled)
called when a mob is killed that the player is getting credit for


handleInvUpdate

public void handleInvUpdate()
called when the player's inv changes


handleConclude

public boolean handleConclude()
called when the player is concluding (turning in) the quest returns false if the quest state cannot conclude the quest


updateQuestLog

public void updateQuestLog()
sends QuestLogInfo message for this quest


updateQuestObjectives

public void updateQuestObjectives()

sendStateStatusChange

public void sendStateStatusChange()
send a StateStatusChangeMessage to notify that this quest has been updated


getCompletionLevel

public int getCompletionLevel()

getQuestRef

public int getQuestRef()

setQuestRef

public void setQuestRef(int quest)

getReqLevel

public int getReqLevel()

setReqLevel

public void setReqLevel(int leval)

setCompleted

public void setCompleted(boolean flag)

getCompleted

public boolean getCompleted()

setConcluded

public void setConcluded(boolean flag)

getConcluded

public boolean getConcluded()

getObjectiveStatus

public abstract java.util.HashMap<java.lang.Integer,java.util.List<java.lang.String>> getObjectiveStatus()
returns a string representation of the current objectives for display on the client. should return a copy that wont be changed eg: entry1: 0/1 orc scalps entry2: 4/10 orc hides


getQuestOid

public OID getQuestOid()

setQuestOid

public void setQuestOid(OID oid)

getQuestTitle

public java.lang.String getQuestTitle()

setQuestTitle

public void setQuestTitle(java.lang.String title)

getQuestDesc

public java.lang.String getQuestDesc()

setQuestDesc

public void setQuestDesc(java.lang.String desc)

getQuestObjective

public java.lang.String getQuestObjective()

setQuestObjective

public void setQuestObjective(java.lang.String objective)

setQuestProgressText

public void setQuestProgressText(java.lang.String s)

getQuestProgressText

public java.lang.String getQuestProgressText()

setQuestCompletionText

public void setQuestCompletionText(java.util.HashMap<java.lang.Integer,java.lang.String> completionTexts)

getQuestCompletionText

public java.util.HashMap<java.lang.Integer,java.lang.String> getQuestCompletionText()

setGrades

public void setGrades(int numGrades)

getGrades

public int getGrades()

getRepeatable

public boolean getRepeatable()

setRepeatable

public void setRepeatable(boolean repeatable)

getRewards

public java.util.HashMap<java.lang.Integer,java.util.HashMap<java.lang.Integer,java.lang.Integer>> getRewards()
returns a list item template names


setRewards

public void setRewards(java.util.HashMap<java.lang.Integer,java.util.HashMap<java.lang.Integer,java.lang.Integer>> rewards)

addReward

public void addReward(int grade,
                      int reward,
                      int number)

getRewardsToChoose

public java.util.HashMap<java.lang.Integer,java.util.HashMap<java.lang.Integer,java.lang.Integer>> getRewardsToChoose()
returns a list item template names


setRewardsToChoose

public void setRewardsToChoose(java.util.HashMap<java.lang.Integer,java.util.HashMap<java.lang.Integer,java.lang.Integer>> rewards)

addRewardToChoose

public void addRewardToChoose(int grade,
                              int reward,
                              int number)

getXpRewards

public java.util.HashMap<java.lang.Integer,java.lang.Integer> getXpRewards()

setXpRewards

public void setXpRewards(java.util.HashMap<java.lang.Integer,java.lang.Integer> rewards)

setRepRewards

public void setRepRewards(java.util.HashMap<java.lang.Integer,java.util.HashMap<java.lang.Integer,java.lang.Integer>> rewards)

getRepRewards

public java.util.HashMap<java.lang.Integer,java.util.HashMap<java.lang.Integer,java.lang.Integer>> getRepRewards()

setCurrencyRewards

public void setCurrencyRewards(java.util.HashMap<java.lang.Integer,java.util.HashMap<java.lang.Integer,java.lang.Integer>> rewards)

getCurrencyRewards

public java.util.HashMap<java.lang.Integer,java.util.HashMap<java.lang.Integer,java.lang.Integer>> getCurrencyRewards()

handleMessage

public abstract void handleMessage(Message msg,
                                   int flags)
Description copied from interface: MessageCallback
Handle message.

Specified by:
handleMessage in interface MessageCallback
Parameters:
msg - Message sent from other agent.
flags - Bitwise OR of MessageCallback.NO_FLAGS, MessageCallback.RESPONSE_EXPECTED.

dispatchMessage

public void dispatchMessage(Message message,
                            int flags,
                            MessageCallback callback)
Description copied from interface: MessageDispatch
Dispatch message to queue or thread pool. Implementations should pass the flags through unaltered.

Specified by:
dispatchMessage in interface MessageDispatch
Parameters:
message - Message sent from other agent.
flags - Bitwise OR of MessageCallback.NO_FLAGS, MessageCallback.RESPONSE_EXPECTED
callback - Callback to handle the message (currently, always the same as 'this').


Copyright © 2018 Dragonsan Studios Sp. z o.o.