From: <ken...@us...> - 2009-03-05 08:27:44
|
Revision: 3138 http://planeshift.svn.sourceforge.net/planeshift/?rev=3138&view=rev Author: kennygraunke Date: 2009-03-05 08:27:36 +0000 (Thu, 05 Mar 2009) Log Message: ----------- - Ported ActionOp, KeyOp, ItemOp, and CreateFamiliarOp from trunk (I didn't write this code). - Fix premature commit in r3137 (thought I'd aborted it). Modified Paths: -------------- personal/Kayden/data/ProgressionSchema.rng personal/Kayden/src/server/scripting.cpp Modified: personal/Kayden/data/ProgressionSchema.rng =================================================================== --- personal/Kayden/data/ProgressionSchema.rng 2009-03-05 08:19:48 UTC (rev 3137) +++ personal/Kayden/data/ProgressionSchema.rng 2009-03-05 08:27:36 UTC (rev 3138) @@ -87,15 +87,17 @@ <attribute name="text"/> </element> <element name="fx"> - <attribute name="aim"/> + <optional> + <attribute name="source"/> + </optional> + <attribute name="target"/> + <attribute name="name"/> <attribute name="type"> <choice> <value>attached</value> <value>unattached</value> </choice> </attribute> - <attribute name="name"/> - <attribute name="duration"/> </element> <element name="teleport"> <ref name="teleport"/> </element> @@ -107,6 +109,7 @@ <element name="key"> <!-- TBH this is bad, we can't determine if keyID is necessary. --> <!-- should probably change these operations... --> + <attribute name="aim"/> <attribute name="funct"> <choice> <value>make</value> @@ -123,7 +126,29 @@ </attribute> </element> - <!-- TODO: action --> + <element name="action"> + <attribute name="aim"/> + <attribute name="sector"/> + <attribute name="stat"/> + </element> + + <element name="item"> + <attribute name="aim"/> + <attribute name="name"/> + <attribute name="count"/> + <attribute name="location"> + <choice> + <value>wallet</value> + <value>inventory</value> + <value>ground</value> + </choice> + </attribute> + </element> + + <element name="createfamiliar"> + <attribute name="aim"/> + </element> + <!-- TODO: summon --> <element name="fog"> <optional> @@ -212,7 +237,16 @@ </element> <element name="fx"> - <!-- do we need type="attached"/"unattached" here? --> + <optional> + <choice> + <attribute name="source"/> + <group> + <attribute name="x"/> + <attribute name="y"/> + <attribute name="z"/> + </group> + </choice> + </optional> <attribute name="name"/> </element> Modified: personal/Kayden/src/server/scripting.cpp =================================================================== --- personal/Kayden/src/server/scripting.cpp 2009-03-05 08:19:48 UTC (rev 3137) +++ personal/Kayden/src/server/scripting.cpp 2009-03-05 08:27:36 UTC (rev 3138) @@ -1841,6 +1841,22 @@ printf("TODO: implement imperative factions\n"); continue; } + else if (elem == "action") + { + op = new ActionOp; + } + else if (elem == "key") + { + op = new KeyOp; + } + else if (elem == "item") + { + op = new ItemOp; + } + else if (elem == "createfamiliar") + { + op = new CreateFamiliarOp; + } else { Error3("Unknown operation >%s< in script >%s< - validate against the schema!", elem.GetData(), name); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |