]> granicus.if.org Git - xconq/blobdiff - lib/lhsunit.g
commits for 7.5.0 pre-release tarball
[xconq] / lib / lhsunit.g
index f95419fc223076e76d2e2f2e73dc7658a66c64bc..bd28bc818b0679fbef1ebbb371e0d6340c41a00c 100644 (file)
@@ -36,7 +36,7 @@
 ;;;
 ;;; new unit types for the modern world
 ;;;
-(unit-type radar (image-name "") (char "r")
+(unit-type radar (image-name "radar") (char "r")
   (help "looks for units"))
 (unit-type artillery (image-name "pz-how") (char "A")
   (help "blows things up at a distance"))
@@ -60,8 +60,8 @@
 (define cv carrier)
 (define bb battleship)
 (define nuke nuclear-bomb)
-(define / base)
-(define * town)
+(define B base)
+(define T town)
 (define @ city)
 (define A artillery)
 (define e engineer)
@@ -78,8 +78,8 @@
 (define ground (i a r A aaa e))
 (define aircraft (f b))
 (define ship (d s t cv bb ms))
-(define cities (* @))
-(define places (/ * @ m))
+(define cities (T @))
+(define places (B T @ m))
 (define movers (i a f b d r s t cv bb nuke A aaa e ms))
 
 (define water (sea shallows))
   (ground t 1)
   (aircraft cv 1)
   ;; Bases can hold 10 of most unit types, but up to 20 fighters.
-  (u* / 2)
-  (fighter / 1)
+  (u* B 2)
+  (fighter B 1)
   ;; City types have lots of capacity for everything.
   (movers cities 1)
   (e m 2)
 ;;;                  transport carrier battleship nuke base town city radar artillery aaa engineer mine mineship
 (add u* cp (1 3 4 5 6 10 5 15 17 20 4 1 1 6 2 2 2 1 5))
 
+(table can-create
+  (cities movers 1)
+  (e B 1)
+  (e m 1)
+  (ms m 1)
+  )
+
 (table acp-to-create
   (cities movers 1)
-  (e / 1)
+  (e B 1)
   (e m 1)
   (ms m 1)
   )
 
 (table cp-on-creation
-  (e / 1)
+  (e B 1)
+  )
+
+(table can-build
+  (e B 1)
+  (e m 1)
+  (cities movers 1)
+  (ms m 1)
   )
 
 (table acp-to-build
-  (e / 1)
+  (e B 1)
   (e m 1)
   (cities movers 1)
   (ms m 1)
   )
 
 (table cp-per-build
-  (a / 2)
-  (e / 1)
+  (a B 2)
+  (e B 1)
   (e m 1)
   (ms m 1)
   )
 
 ;; Explicit repair actions accelerate the recovery of lost hp.
 
+(table can-repair
+  (cities u* true)
+;  (B u* true)
+  (cv cv true)
+  (bb bb true)
+  (i places (true true true false))
+  (e places (true true true false))
+  (e u* true)
+  (m u* false)
+  )
+
 (table acp-to-repair
   (cities u* 1)
-;  (/ u* 1)
+;  (B u* 1)
   (cv cv 1)
   (bb bb 1)
   (i places (1 1 1 0))
 (table hp-per-repair
   ;; Towns and cities can repair anything.
   (cities u* 1.00)
-;  (/ u* 3.00)  ; what is this all about?
+;  (B u* 3.00)  ; what is this all about?
   ;; Capital ships are equipped to do major repairs to themselves.
   (cv cv 1.00)
   (bb bb 1.00)
 ;; Some types have sufficient people and redundancy to do some repair work
 ;; without affecting their readiness to act.
 
-(add (cv bb /) hp-recovery 0.50)
+(add (cv bb B) hp-recovery 0.50)
 (add cities hp-recovery 1.00)
 
 ;;; Production.
 (table productivity
   ;; Plains are assumed to be settled and have fuel stocks.
   (i (swamp desert mountains) 0)
-  ;; It *is* worthwhile to make players think about logistics
+  ;; It Tis* worthwhile to make players think about logistics
   ;; when operating in the desert.
   (a desert 0)
-  (/ land (0 100 50 20 20))
-  (* land (0 100 50 20 20))
+  (B land (0 100 50 20 20))
+  (T land (0 100 50 20 20))
   (@ land (0 100 50 20 20))
   )
 
 (table base-consumption
-  ;; Note that armor does *not* have a base consumption;
+  ;; Note that armor does Tnot* have a base consumption;
   ;; tanks that don't move don't need fuel.  (Infantry
   ;; still needs fuel, because an infantry unit in real life
   ;; has a large number of personnel, and fuel represents
   (cv u* (  0   0  40  30  20  10  40  20  20   0   0   0   0   0   0   0   0   0  40))
   (bb u* ( 85  60  30  20  90  10  90  90  80   0 100  90  90  50  75  75  80   0  90))
 (nuke u* (100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100   0 100))
-  (/  u* ( 10  10  20  20  20   0  30  20  20   0   0   0   0   0  15  15  20   0  30))
-  (*  u* ( 30  20  50  40  40   0  30  20  50   0   0   0   0   0  25  25  40   0  30))
+  (B  u* ( 10  10  20  20  20   0  30  20  20   0   0   0   0   0  15  15  20   0  30))
+  (T  u* ( 30  20  50  40  40   0  30  20  50   0   0   0   0   0  25  25  40   0  30))
   (@  u* ( 50  40  70  60  50   0  30  20  50   0   0   0   0   0  45  45  60   0  30))
   (r  u* (  0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0))
    (A u* ( 85  65   0   0  15   0  10  30  40  50  95  80  70  60  80  80  95   0  40))
   (i places (80 80 80 0))
   (a places (60 60 60 0))
   ; bases benefit more from protection.
-  (ground / (50 40 0 0 0 0))
+  (ground B (50 40 0 0 0 0))
   )
 
 ;; Combat requires ammo, and uses it up.
 
 (table consumption-per-attack (u* ammo 1))
 
+(table consumption-per-fire 
+       ((aaa artillery bb d f s) ammo 1)
+)
+
 (table hit-by (u* ammo 1))
 
 ;;; Detonation.
 
 ;; Takes a while to dismantle a base.
 
-(add / hp-per-disband 2)
+(add B hp-per-disband 2)
 
 ;;; Changing sides.
 
 (add u* acp-to-change-side 1)
 (add i acp-to-change-side 0)
 
-(add i possible-sides '(not "independent"))
+(add i possible-sides (not "independent"))
 
 ;;; Automatic things.
 
   ;; Supply to ground units can go a couple hexes away.
   (ground m* 3)
   ;; Cities and bases can get their supplies from some distance away.
-  (/ m* 6)
+  (B m* 6)
   (cities m* 12)
   (m m* 1)
   )
 (table favored-terrain
   (u* t* 0)
   (@ plains 100)
-  (* land 20)
-  (* plains 40)
+  (T land 20)
+  (T plains 40)
   )
 
 (table independent-density (town plains 100))
   "of any size!  Bombs are imagined to be transported by a team of scientists,"
   "and can go on any sort of terrain without running out of supplies."
   ))
-(add / notes '(
+(add B notes '(
   "To simplify matters, this can serve as a camp, airbase, and port."
   "Bases cannot build units, although they can repair some damage."
   ))
-(add * notes '(
+(add T notes '(
   "Towns are the staple of territory.  They can build, repair, produce"
   "fuel and ammo, and serve as a safe haven for quite a few units."
   ))