Stendhal Quest Coding: Difference between revisions

Jump to navigation Jump to search
Content deleted Content added
imported>Yoriy
imported>Kribbel
m replace old link
 
(48 intermediate revisions by 6 users not shown)
Line 1: Line 1:
{{Navigation for Stendhal Top|Contributing}}
{{Navigation for Stendhal Top|Contributing}}
{{Navigation for Stendhal Contributors}}
{{Navigation for Stendhal Contributors}}

{{ TODO | Update page for changes in quest coding }}




Line 58: Line 60:
</source>
</source>


Don't worry, if you don't understand a word of super; just copy it. We will explain the important parts and extend this skeleton in the following sections.
Don't worry, if you don't understand a word of this; just copy it. We will explain the important parts and extend this skeleton in the following sections.


In order for the Stendhal server to pick up this file, it has to be registered in the file StendhalQuestSystem.java in the package games.stendhal.server.core.rp by adding two lines at the appropriate places:
In order for the Stendhal server to pick up this file, it has to be registered in the file StendhalQuestSystem.java in the package games.stendhal.server.core.rp by adding two lines at the appropriate places:
Line 105: Line 107:
== Commonly used conversation phrases ==
== Commonly used conversation phrases ==


Good, Hayunn now replies to the trigger "quest". He does not, however, reply to "task". All other NPCs accept both words as synonym. A simple solution would be to add a second ''npc.addReply'' line. But there is a better way which makes it very easy to add additional synonyms later. We predefined lists of commonly used [http://arianne.cvs.sf.net/viewvc/arianne/stendhal/src/games/stendhal/server/entity/npc/ConversationPhrases.java?view=markup ConversationPhrases]. If there are already conversation phrases defined for the triggers that you would like to add, you should use the phrases.
Good, Hayunn now replies to the trigger "quest". He does not, however, reply to "task". All other NPCs accept both words as synonym. A simple solution would be to add a second ''npc.addReply'' line. But there is a better way which makes it very easy to add additional synonyms later. We predefined lists of commonly used [https://github.com/arianne/stendhal/blob/master/src/games/stendhal/server/entity/npc/ConversationPhrases.java ConversationPhrases]. If there are already conversation phrases defined for the triggers that you would like to add, you should use the phrases.


Let's adjust the above sample by using ''ConversationPhrases.QUEST_MESSAGES'' instead of the hard coded word "quest":
Let's adjust the above sample by using ''ConversationPhrases.QUEST_MESSAGES'' instead of the hard coded word "quest":