]> git.pond.sub.org Git - empserver/blobdiff - tests/actofgod/geninput.pl
edit: Generalize edit to multiple objects
[empserver] / tests / actofgod / geninput.pl
index 24881d8b35c9236587001a26a9ce9b68f9ab7ba8..2620c0fbd421b327d4b4bbd0afc5673e282b8054 100755 (executable)
@@ -154,7 +154,6 @@ sub sect_int {
        edit_int1('sect', '1,1', $key, $lob, $upb);
        my $rkey = $edit2setres{$key};
        if (defined $rkey) {
-           $upb = 100;
            setres('2,2', $rkey, $lob);
            setres('4,2', $rkey, $lob - 1);
            setres('6,2', $rkey, $upb);
@@ -172,11 +171,11 @@ sub sect_int {
 sect_int(
     ['e', 0, 100],
     ['m', -127, 127],
-    ['i', 0, 127],
-    ['g', 0, 127],
-    ['f', 0, 127],
-    ['c', 0, 127],
-    ['u', 0, 127],
+    ['i', 0, 100],
+    ['g', 0, 100],
+    ['f', 0, 100],
+    ['c', 0, 100],
+    ['u', 0, 100],
     ['w', 0, 100],
     ['l', 0, 127],
     ['x', 0, 255],
@@ -190,15 +189,24 @@ sect_int(
     ['d', 0, 100],
 );
 
+# special case: unowned sector
+edit('sect', '-1,-1', 'i', 50);
+setres('-1,-1', 'g', 50);
+setsect('-1,-1', 'f', 50);
+
+# special case: mines in occupied sector
+setsect('1:3,-3', 'ol', 1);
+setsect('1,-3', 'mi', 1);
+edit('sect', '3,-3', 'M', 1);
+
 # dist
 edit('sect', '2,4', 'D', '4,4');
 edit('sect', '4,4', 'D', '4,4');
 
 # des newdes
 for my $key ('s', 'S') {
+    edit('sect', '6:8,4', $key, '+');
     edit('sect', '6,4', $key, '+');
-    edit('sect', '6,4', $key, '+');
-    edit('sect', '8,4', $key, '+');
     edit('sect', '8,4', $key, ',');
 }
 
@@ -207,6 +215,8 @@ edit('sect', '1,5', 'm', 1, 'a', 1);
 
 # interactive edit
 iedit('sect', '3,5', 'm 2', 'a 1');
+iedit('sect', '5,5', ' ');
+iedit('sect', '7:9,5', 'e 1', '', 'e 2');
 
 # give
 give('2,6', 'l', $INT_MIN);
@@ -298,8 +308,15 @@ sub unit_carrier {
 unit_carrier('plane', 's', 'y');
 unit_carrier('land', 'S', 'Y');
 
+# special case: move carrier's cargo away
+edit('plane', 4, 'l', '5,1');
+
+# special case: load teleports to carrier
+edit('land', 4, 'S', 2);
+
 # interactive edit
 iedit('ship', 0, 'M 2', 'm 1', 'f 1');
+iedit('ship', 0, 'R n', 'R ""');
 iedit('plane', 0, 'm 2', 'y -1');
 iedit('land', 0, 'M 2', 'Y -1');