Author: zookeeper
Date: Sat Nov 22 18:28:51 2008
New Revision: 30961

URL: http://svn.gna.org/viewcvs/wesnoth?rev=30961&view=rev
Log:
Optimized the great horde upkeep calculations a bit and made it handle 
advancing units immediately.

Modified:
    trunk/data/campaigns/Son_Of_The_Black_Eye/utils/utils.cfg

Modified: trunk/data/campaigns/Son_Of_The_Black_Eye/utils/utils.cfg
URL: 
http://svn.gna.org/viewcvs/wesnoth/trunk/data/campaigns/Son_Of_The_Black_Eye/utils/utils.cfg?rev=30961&r1=30960&r2=30961&view=diff
==============================================================================
--- trunk/data/campaigns/Son_Of_The_Black_Eye/utils/utils.cfg (original)
+++ trunk/data/campaigns/Son_Of_The_Black_Eye/utils/utils.cfg Sat Nov 22 
18:28:51 2008
@@ -70,6 +70,93 @@
 
 #define GOT_THE_GREAT_HORDE SIDES
     [event]
+        name=prerecruit
+        first_time_only=no
+
+        [filter]
+            side={SIDES}
+        [/filter]
+
+        {VARIABLE unit.upkeep $unit.level}
+        {VARIABLE_OP unit.upkeep add -1}
+        {VARIABLE unit.variables.great_horde_upkeep_mod_applied yes}
+
+        [unstore_unit]
+            variable=unit
+            find_vacant=no
+        [/unstore_unit]
+    [/event]
+
+    [event]
+        name=prerecall
+        first_time_only=no
+
+        [filter]
+            side={SIDES}
+
+            [not]
+                [filter_wml]
+                    [modifications]
+                        [trait]
+                            id=loyal
+                        [/trait]
+                    [/modifications]
+                [/filter_wml]
+            [/not]
+
+            [not]
+                [filter_wml]
+                    [variables]
+                        great_horde_upkeep_mod_applied=yes
+                    [/variables]
+                [/filter_wml]
+            [/not]
+        [/filter]
+
+        {VARIABLE unit.upkeep $unit.level}
+        {VARIABLE_OP unit.upkeep add -1}
+        {VARIABLE unit.variables.great_horde_upkeep_mod_applied yes}
+
+        [unstore_unit]
+            variable=unit
+            find_vacant=no
+        [/unstore_unit]
+    [/event]
+
+    [event]
+        name=post_advance
+        first_time_only=no
+
+        [filter]
+            side={SIDES}
+
+            [not]
+                [filter_wml]
+                    [modifications]
+                        [trait]
+                            id=loyal
+                        [/trait]
+                    [/modifications]
+                [/filter_wml]
+            [/not]
+        [/filter]
+
+        {VARIABLE unit.upkeep $unit.level}
+        {VARIABLE_OP unit.upkeep add -1}
+        {VARIABLE unit.variables.great_horde_upkeep_mod_applied yes}
+
+        [unstore_unit]
+            variable=unit
+            find_vacant=no
+        [/unstore_unit]
+    [/event]
+#enddef
+
+# This is commented out because it seems to incur a little delay at turn start
+# yet it's not actually used (the player or allies don't get any units spawned
+# for them in the final scenarios). Belongs to the above macro.
+#ifdef __UNUSED
+    [event]
         name=side turn
         first_time_only=no
 
@@ -85,6 +172,7 @@
                 [store_unit]
                     [filter]
                         side={SIDES}
+                        x,y=1-99,1-99
 
                         [not]
                             canrecruit=yes
@@ -98,7 +186,9 @@
                                     [/trait]
                                 [/modifications]
                             [/filter_wml]
-
+                        [/not]
+
+                        [not]
                             [filter_wml]
                                 [variables]
                                     great_horde_upkeep_mod_applied=yes
@@ -125,56 +215,4 @@
             [/then]
         [/if]
     [/event]
-
-    [event]
-        name=prerecruit
-        first_time_only=no
-
-        [filter]
-            side={SIDES}
-        [/filter]
-
-        {VARIABLE unit.upkeep $unit.level}
-        {VARIABLE_OP unit.upkeep add -1}
-        {VARIABLE unit.variables.great_horde_upkeep_mod_applied yes}
-
-        [unstore_unit]
-            variable=unit
-            find_vacant=no
-        [/unstore_unit]
-    [/event]
-
-    [event]
-        name=prerecall
-        first_time_only=no
-
-        [filter]
-            side={SIDES}
-
-            [not]
-                [filter_wml]
-                    [modifications]
-                        [trait]
-                            id=loyal
-                        [/trait]
-                    [/modifications]
-                [/filter_wml]
-
-                [filter_wml]
-                    [variables]
-                        great_horde_upkeep_mod_applied=yes
-                    [/variables]
-                [/filter_wml]
-            [/not]
-        [/filter]
-
-        {VARIABLE unit.upkeep $unit.level}
-        {VARIABLE_OP unit.upkeep add -1}
-        {VARIABLE unit.variables.great_horde_upkeep_mod_applied yes}
-
-        [unstore_unit]
-            variable=unit
-            find_vacant=no
-        [/unstore_unit]
-    [/event]
-#enddef
+#endif


_______________________________________________
Wesnoth-commits mailing list
[email protected]
https://mail.gna.org/listinfo/wesnoth-commits

Reply via email to