summaryrefslogtreecommitdiffstats
path: root/Assault/cards.lou
diff options
context:
space:
mode:
Diffstat (limited to 'Assault/cards.lou')
-rw-r--r--Assault/cards.lou827
1 files changed, 827 insertions, 0 deletions
diff --git a/Assault/cards.lou b/Assault/cards.lou
new file mode 100644
index 0000000..9f7120f
--- /dev/null
+++ b/Assault/cards.lou
@@ -0,0 +1,827 @@
+# encoding : iso-8859-1
+
+@SysInclude { langdefs }
+@SysInclude { bsf }
+@SysInclude { dsf }
+@SysInclude { docf }
+@SysInclude { tbl }
+@SysInclude { xrgb }
+
+@Use { @BasicSetup
+ @InitialFont { Times Base 10p }
+ @ListOuterGap { 0.50v @OrIfPlain 1f }
+ @ListIndent { 0s }
+ @ListLabelWidth { 0.60f @OrIfPlain 5s }
+ @DisplayGap { .10v }
+}
+@Use { @DocumentSetup
+ @PageOrientation { Landscape }
+ @TopMargin { 0.5c @OrIfPlain 6f }
+ @FootMargin { 0.5c @OrIfPlain 6f }
+ @OddLeftMargin { .1c @OrIfPlain 10s }
+ @OddRightMargin { .1c @OrIfPlain 10s }
+ @EvenLeftMargin { .1c @OrIfPlain 10s }
+ @EvenRightMargin { .1c @OrIfPlain 10s }
+ @ColumnNumber { 4 }
+ @ColumnGap { .1c @OrIfPlain 6s }
+}
+@Use { @OrdinarySetup }
+@SysDatabase @FontDef { fontdefs }
+@SysDatabase @RefStyle { refstyle }
+
+@Include {defs.lou}
+
+def @CCHeader right x { @Display @B 13p @Font x }
+# 65mm x 89mm
+#def @HCard right x { 90d @Rotate black @Color @CurveBox margin {.2c} 8.7c @Wide 6.3c @High black @Color { x } }
+def @VCard right x { black @Color @CurveBox margin {.1c} 6.3c @Wide 8.7c @High black @Color { x } }
+
+
+def @CSpotting { @VCard {
+ @CCHeader{@Spotting Spotting @Rule 10.5}
+ @Display 8p @Font {
+ @BulletList
+ gap {.6v}
+ #@ListItem{@I Turret @Vehicle have 60 @Sym degree front arc of @I Fire}
+ @ListItem{@B Roll if targets is @AHide @Sym slash @AHidden @Sym slash @AAmbush}
+ @ListItem{target is @B Spotted if is either :
+ @BulletList
+ gap {.5v}
+ @ListItem{adjacent @B or marked with @AFiring @Sym slash @AFast @Sym slash @ADelayed} # /.1v @B not @AMoveFire @Sym slash @AFireMove}
+ #@ListItem{in @I{Arc of Fire} (@I Turret @Vehicle have 60 @Sym{degree})
+ # @BulletList
+ # @ListItem{clear LOS or no @Defense die hex}
+ #@RawEndList}
+ @ListItem{@B or in @I{Arc of Fire} @Sym ampersand clear LOS or no @Defense die hex}
+ @RawEndList}
+ @ListItem{else @Sym arrowdblright @B Roll}
+ @ListItem{1d6 : @B 6 is always a @B success}
+ @ListItem{-1 for each @Hindered hex along the LOS}
+ @EndList
+@Display @Tbl
+ rule {yes}
+ i {ctr}
+ iv {ctr}
+ aformat{ @Cell A | @Cell B | @Cell C }
+ bformat{ @Cell A | @Cell B | @Cell C }
+ {
+ @Rowa
+ paint {@HeaderPaint}
+ B{in @I{Arc of Fire}} C{@B not in @I{Arc of Fire}}
+ @Rowb ruleabovewidth { 1p } A{@Inf} B{2+} C{2+}
+ @Rowb A{@Arty} B{2+} C{3+}
+ @Rowb A{@Vehicle} B{4+} C{5+}
+ }
+ @BulletList
+ gap {.3v}
+ @ListItem{on @B failure (@I{fires blindly}) :
+ @BulletList
+ gap {.2v}
+ #@ListItem{only @B{1 symbol} @Sym slash dice counts (@B no @I Critical allowed)}
+ @ListItem{@SingleSuccess, no @Critical}
+ @ListItem{@Half unit rolls attack dice @Sym slash 2 @Sym arrowup}
+ #@ListItem{@Half unit rolls half round up of its attack dice}
+ @RawEndList}
+ @EndList
+} } }
+
+def @CEndOfTurn { @VCard {
+ @CCHeader{End Of Turn}
+ /.1c @Display 8p @Font { @BulletList
+ gap {.7v}
+ @ListItem{markers upkeep :
+ @BulletList
+ @ListItem{@B remove @AWhite actions:
+ @BulletList
+ @ListItem{@ASuppressed : @Recruit roll @Blue @Sym slash @Regular roll @Green :
+ @BulletList
+ @ListItem{remove only on @Hit @Sym slash @Critical}
+ @RawEndList}
+ #@ListItem{Suppression : @Recruit @Sym slash @B Regular roll @Blue @Sym slash @Green}
+ #@ListItem{remove only on @Hit @Sym slash @Critical}
+ @RawEndList}
+ @ListItem{@B flip @AYellow actions}
+ @ListItem{@AHidden @Sym arrowdblright @AAmbush}
+ @RawEndList}
+ #@ListItem{reduce @B smoke by 1}
+ #@ListItem{advance turn}
+ #@ListItem{update occupied @B objectives (unarmored @Vehicle do not)}
+ @ListItem{@B @Smoke -1}
+ @ListItem{@B turn +1}
+ @ListItem{update occupied @Objective /.2c @B not by @Unarmoured or @ASuppressed @Sym slash @AFallback units}
+ #@ListItem{update : @B smoke -1, @B turn +1, occupied @B objectives /.2c @B not by unarmored @Vehicle or @ASuppressed @Sym slash @AFallback marked units}
+ @ListItem{@B victory check}
+ @ListItem{reveal @B reinforcements @Sym ampersand take @B{command points}}
+ @EndList }
+} }
+
+def @CMinefields { @VCard {
+ @CCHeader{Minefields @Rule 9.5.9}
+ @Display 8p @Font {
+ @BulletList
+ gap {.6v}
+ #@ListItem{take the amount + same amount of dummy}
+ @ListItem{@B not in fortifications {@Sym slash} obstacles, @B no ATM in buildings}
+ @ListItem{roll to enter @Sym ampersand to leave}
+ #@ListItem{@B no effects on friendly units}
+ #@ListItem{@B no @AFast , @B no close combat, @B no moving through friendly}
+ @ListItem{@B no : friendly attack, close combat, crossing, @AFast}
+ ### - no transport vehicles (loaded or not)
+ #@ListItem{escape on : @Inf 5+ @CDot @Arty{@Sym slash}@Vehicle 6+}
+ #@ListItem{escape on 1d6:}
+ @EndList
+ @Display @Tbl
+ rule {yes}
+ i {left}
+ iv {ctr}
+ aformat{ @Cell A | @Cell B | @Cell C | @Cell D }
+ {
+ #@Row
+ # format{ @StartHSpan @Cell i {ctr} A | @HSpan | @HSpan | @HSpan }
+ # A{1d6 escape roll modifiers}
+ @Rowa
+ paint {@HeaderPaint}
+ A{@Inf} B{{@Xrgb blue} @Color 5+} C{@Arty{@Sym slash}@Vehicle} D{{@Xrgb blue} @Color 6+}
+ @Rowa ruleabovewidth { 1p }
+ A{@Ability Scout} B{+1} C{Unhidden Minefield} D{+1}
+ @Rowa
+ A{@Ability{Mine Detection}} B{+2} C{Fallback action} D{-1}
+ }
+ @Display @Tbl
+ rule {yes}
+ i {left}
+ iv {ctr}
+ aformat{ @Cell A | @Cell B | @Cell C }
+ {
+ @Rowa
+ paint {@HeaderPaint}
+ A{unit} B{mine attack} C{defense}
+ @Rowa ruleabovewidth { 1p } A{@InfArty} B{@Yellow @Green} C{@Green}
+ @Rowa A{@Vehicle} B{@Green} C{@Blue}
+ }
+ @Display @Tbl
+ rule {yes}
+ i {ctr}
+ iv {ctr}
+ aformat{ @Cell A | @Cell B | @Cell C }
+ {
+ @Rowa
+ paint {@HeaderPaint}
+ A{result} B{@InfArty} C{@Vehicle}
+ @Rowa ruleabovewidth { 1p } A{@Critical @Sym slash @Hit} B{1 Damage} C{1 Damage + @AImmobile}
+ #@Rowa A{@Hit} B{1 Damage} C{Damage @Sym ampersand immobilized}
+ @Rowa A{@Suppress} B{Suppressed} C{Suppressed}
+ }
+ /.3v use strongest result @Sym slash die @Sym ampersand apply @I Critical rules : @Rule 10.8.1
+} } }
+
+def @CMovements { @VCard {
+ @CCHeader{Movements @Rule 9.0}
+ /.1c @Display 8p @Font { || @Tbl
+ rule {yes}
+ i {left}
+ iv {ctr}
+ aformat { @StartVSpan @Cell i{right} A | @Cell B | @Cell C }
+ bformat { @VSpan | @Cell B | @Cell C }
+ cformat { @Cell i{right} A | @Cell B | @Cell C }
+ {
+ @Rowa B{ @Sym emptyset } C{ Rivers }
+ @Rowb B{ 1 @MP } C{ Roads @Sym slash Large Bridge }
+ @Rowb B{ +1 @MP } C{@Sym slash @Ea climbed }
+ @Rowa ruleabovewidth { 1p } A{ @InfArty @LP 1 @MP} B{ @ADelayed } C{ Swampy }
+ @Rowb B{ 2 @MP } C{ Heavy Forest @Sym slash Fields @LLP Shallow Water }
+ @Rowb B{ 2 @MP } C{ Buildings }
+ @Rowb C{ +1 @MP Multy-storey ({{@Xrgb red} @Color roof})}
+ @Rowb C{ +2 @MP Church Tower}
+ @Rowa ruleabovewidth { 1p } A{ @Vehicle @LP 2 @MP} B{ @Sym emptyset } C{Heavy Forest @Sym slash Buildings @LLP Shallow Water @Sym slash Swampy}
+ @Rowc ruleabovewidth { 1p } A{ @Tracked } B{ 1 @MP } C{ Clear @Sym slash Brush @Sym slash Fields }
+ @Rowa ruleabovewidth { 1p } A{ @Wheeled } B{ @Sym emptyset } C{ Groves }
+ @Rowb B{ 1 @MP } C{ Wheat Field }
+ @Rowb B{ 3 @MP } C{ Rocky }
+ }
+# @LP Fast Movement
+# @BulletList
+# @ListItem{@InfArty @B not if @Cap Slow or marked with @AAttack}
+# #@ListItem{@InfArty lose @Weakest @Defense dice (keep min 1)}
+# @ListItem{@Vehicle + @Blue @Defense}
+# @EndList
+ @LLP /.3v @Bullet @Harsh : 1 Hex @ADelayed, @B no @AFast, @B no @I{CCard}
+} } }
+
+def @CSandbags { @VCard {
+ @CCHeader{Sandbags @Rule 9.5.7.1}
+ /.1c @Display || @Tbl
+ i {ctr}
+ iv {ctr}
+ bformat { @Cell i {right} A | @StartHSpan @Cell i{left} B | @HSpan }
+ cformat { @StartHSpan @Cell A | @HSpan | @HSpan }
+ {
+ @Rowb A {@Inf @Arty} B{terrain @Strongest defense die +}
+ @Rowb A {@Vehicle} B{terrain @Weakest dice +}
+ @Rowc A { || @Tbl
+ rule {no}
+ i {ctr}
+ iv {ctr}
+ aformat { @Cell i {right} A | @Cell B | @Cell i {left} C }
+ {
+ @Rowa B {8p @Font{no terrain} @LP @Yellow @Green}
+ @Rowa A {@Green} B {@IncludeGraphic "imgs/sandbags.eps"} C {@Yellow @Green}
+ @Rowa B {@Yellow @Green}
+ }
+ }
+ @Rowb A {@Tracked} B{+1 @MP}
+ @Rowb A {@Wheeled} B{+2 @MP}
+ @Rowc A {@ReactionFire: terrain defense die @B only}
+ }
+} }
+
+def @CPillbox { @VCard {
+ @CCHeader{Pillbox @Rule 9.5.7.5}
+ /.3c @Display || @Tbl
+ rule {no}
+ i {ctr}
+ iv {ctr}
+ bformat { @Cell i {right} A | @StartHSpan @Cell i{left} B | @HSpan }
+ cformat { @StartHSpan @Cell A | @HSpan | @HSpan }
+ {
+ @Rowb A {@Inf} B{terrain @Strongest defense die +}
+ @Rowc A { /.1c || @Tbl
+ rule {no}
+ i {ctr}
+ iv {ctr}
+ aformat { @Cell i {right} A | @Cell B | @Cell i {left} C }
+ {
+ @Rowa B {8p @Font{no terrain} @LP @Red @Yellow}
+ @Rowa A {@Yellow} B {@IncludeGraphic "imgs/pillbox.eps"} C {@Red @Yellow}
+ @Rowa B {@Red @Yellow}
+ } /.1c
+ }
+ @Rowb A {@Tracked} B{+1 @MP (may @B not cross)}
+ @Rowb A {@Wheeled} B{+2 @MP (may @B not cross)}
+ @Rowc A {/.1c @ReactionFire: terrain defense die @B only}
+ }
+} }
+
+def @CTrenches { @VCard {
+ @CCHeader{Trenches @Rule 9.5.7.2}
+ /.2c @Display || @Tbl
+ rule {no}
+ i {ctr}
+ iv {ctr}
+ bformat { @Cell i {right} A | @StartHSpan @Cell i{left} B | @HSpan }
+ cformat { @StartHSpan @Cell A | @HSpan | @HSpan }
+ dformat { @StartHSpan @Cell i{left} A | @HSpan | @HSpan }
+ {
+ @Rowb A {@Inf} B {terrain @Strongest defense die +}
+ @Rowc A { || @Tbl
+ rule {no}
+ i {ctr}
+ iv {ctr}
+ aformat { @Cell i {right} A | @Cell B | @Cell i {left} C }
+ {
+ @Rowa B {8p @Font{no terrain} @LP @Yellow @Yellow}
+ @Rowa A {@Yellow} B {@IncludeGraphic "imgs/trenches.eps"} C {@Yellow @Yellow}
+ @Rowa B {@Yellow}
+ }
+ }
+ @Rowb A {@Tracked} B{+1 @MP}
+ @Rowb A {@Wheeled} B{+2 @MP (may @B not cross)}
+ @Rowd A {/.05c attack @B{from flank} - @Weakest attack die}
+ @Rowc A {@ReactionFire: terrain defense die @B only}
+ }
+} }
+
+def @CGunposition { @VCard {
+ @CCHeader{Gunposition @Rule 9.5.7.3}
+ /.3c @Display || @Tbl
+ rule {no}
+ i {ctr}
+ iv {ctr}
+ bformat { @Cell i {right} A | @StartHSpan @Cell i{left} B | @HSpan }
+ cformat { @StartHSpan @Cell A | @HSpan | @HSpan }
+ {
+ @Rowb A {@Inf @Arty} B {terrain @Strongest defense die +}
+ @Rowc A { || @Tbl
+ rule {no}
+ i {ctr}
+ iv {ctr}
+ aformat { @Cell i {right} A | @Cell B | @Cell i {left} C }
+ {
+ @Rowa B {/.1c 8p @Font{no terrain} @LP @Red @Green}
+ @Rowa A {@Green} B {@IncludeGraphic "imgs/gunposition.eps"} C {@Red @Green}
+ @Rowa B {@Red}
+ } /.1c
+ }
+ @Rowb A {@Tracked} B{+1 @MP (may @B not cross)}
+ @Rowb A {@Wheeled} B{+2 @MP (may @B not cross)}
+ @Rowc A {/.1c @ReactionFire: terrain defense die @B only}
+ }
+} }
+
+def @CBunker { @VCard {
+ @CCHeader{Bunker @Rule 9.5.7.4}
+ /.1c @Display 8p @Font { || @Tbl
+ rule {no}
+ i {ctr}
+ iv {ctr}
+ bformat { @Cell i {right} A | @StartHSpan @Cell i{left} B | @HSpan }
+ cformat { @StartHSpan @Cell A | @HSpan | @HSpan }
+ dformat { @StartHSpan @Cell i{left} A | @HSpan | @HSpan }
+ {
+ #@Rowc A {@Inf (@Arty on game setup)}
+ #@Rowc A {terrain @Strongest defense die +}
+ @Rowc A {@Arty on game @B setup only}
+ @Rowb A {@Inf @Arty} B {terrain @Strongest defense die +}
+ #@Rowd A {ignore loss of @Weakest defense die against @B OAS}
+ @Rowc A { || @Tbl
+ rule {no}
+ i {ctr}
+ iv {ctr}
+ aformat { @Cell i {right} A | @Cell B | @Cell i {left} C }
+ bformat { @StartHSpan @Cell A | @HSpan | @HSpan }
+ {
+ @Rowa B {8p @Font{no terrain}}
+ @Rowb A {@B OAS : ignore loss of @Weakest defense die}
+ @Rowa B {@Red @Red}
+ @Rowa A {@Red} B {@IncludeGraphic "imgs/bunker.eps"} C {@Red @Red}
+ @Rowa B {@Red}
+ }
+ }
+ @Rowb A {@Tracked} B{+2 @MP (may @B not cross)}
+ @Rowb A {@Wheeled} B{+3 @MP (may @B not cross)}
+ @Rowd A {@Arty have their @I {Arc of Fire} limited to @I Front}
+ @Rowc A {/.1c @ReactionFire: terrain defense die @B only}
+ }
+} } }
+
+def @CHide { @VCard {
+ @CCHeader{Hide, Hidden, Ambush @Rule 9.11}
+ /.1c @Display {
+ @BulletList
+ gap {1.6v}
+ @ListItem{@B Hide Action @Rule 9.11
+ @BulletList
+ gap {.6v}
+ #@ListItem{@Inf @B not on roads}
+ #@ListItem{@Arty{@Sym slash}@Vehicle @B not on roads or clear}
+ @ListItem{@B not on roads, @Arty{@Sym slash}@Vehicle @B not on clear}
+ @ListItem{@Defense: + @Blue |.5c @Spotting: -1}
+ @ListItem{@Inf may move 1 hex, @B not if @Cap Slow, /.2c @B not on road, @B not in @I harsh terrain}
+ @RawEndList}
+ @ListItem{@B Hidden Action @Rule 9.11.1
+ @BulletList
+ gap {.6v}
+ @ListItem{@Defense: + @Blue |.5c @Spotting: -2}
+ @ListItem{@Attack: -1 @Weakest die @AAttack}
+ #@ListItem{@Attack: @AAttack (-1 @Weakest @Attack die)}
+ @RawEndList}
+ @ListItem{@B Ambush Action @Rule 9.11.2
+ @BulletList
+ gap {.6v}
+ @ListItem{@Defense: + @Blue |.5c @Spotting: -2}
+ @ListItem{@Attack: +@Suppress |.2c @Defense: -1 @Weakest die}
+ @RawEndList}
+ @EndList
+} } }
+
+def @CInfantry { @VCard {
+ @CCHeader{Infantry Specific Movements @Rule 9.7}
+ /.1c @Display 9p @Font {
+ @BulletList
+ gap {1.6v}
+ @ListItem{@B Digging In @Rule 9.7.1
+ @BulletList
+ gap {.6v}
+ @ListItem{@B not in fortifications, -1 @Weakest @Defense die}
+ @ListItem{@Defense: + @Green when @ADugIn}
+ @RawEndList}
+ @ListItem{@B Reinforcing Position @Rule 9.7.2
+ @BulletList
+ gap {.6v}
+ @ListItem{mark @ANormal 2 @B adjacent units (2 @CMP)}
+ @ListItem{swap them, @B no @Harsh, @ADugIn stays}
+ @ListItem{1 unit is subject to @ReactionFire}
+ @RawEndList}
+ @ListItem{@B Smoke Cover @Rule 9.7.3 (max 4 @Sym slash hex)
+ @BulletList
+ gap {.6v}
+ @ListItem{-1 @MP @ANormal @Sym slash @AFast @Sym slash @AHide or @AAttack}
+ @ListItem{1 @B adjacent @Smoke +1 {@Sym slash} @Hit @Critical on @Green @Green}
+ @RawEndList}
+ @EndList
+} } }
+
+def @CTransportingUnits { @VCard {
+ @CCHeader{Transporting Units @Rule 9.10}
+ /.5c @Display 9p @Font {
+ @BulletList
+ @ListItem{@Armoured may transport @B 4 @Inf riders}
+ @ListItem{do not count units partial damage}
+ @ListItem{unloading triggers @ReactionFire}
+ @ListItem{ @B {Loading Units} @Rule 9.10.2
+ @BulletList
+ gap {.6v}
+ @ListItem{@B not in a @AFast @Sym slash @ADelayed @Sym slash @AImmobile @Sym slash @ASuppressed @Sym slash @AFallback @Vehicle}
+ @ListItem{move the unit in transport hex}
+ @RawEndList}
+ @ListItem{ @B {Dismounting Units} @Rule 9.10.3
+ @BulletList
+ gap {.6v}
+ @ListItem{unload into an empty adjacent hex}
+ @ListItem{marked with @AFast , @ADelayed if @Cap Slow or @I harsh}
+ @RawEndList}
+ @EndList
+} } }
+
+def @CTransportingArtillery { @VCard {
+ @CCHeader{Transporting Artillery @Rule 9.10}
+ /.3c @Display 9p @Font {
+ @BulletList
+ @ListItem{do not count units partial damage}
+ @ListItem{unloading triggers @ReactionFire}
+ @ListItem{@B {Loading Immobile Artillery} @Rule 9.10.4
+ @BulletList
+ gap {.6v}
+ @ListItem{@Arty may @B not be @ADelayed @Sym slash @ASuppressed @Sym slash @AFallback}
+ @ListItem{the @Vehicle moves into the @Arty hex @Sym ampersand is @ADelayed}
+ @RawEndList}
+ @ListItem{@B {Unloading Immobile Artillery} @Rule 9.10.5
+ @BulletList
+ gap {.6v}
+ @ListItem{@B not if the @Vehicle moved into a @I harsh terrain}
+ @ListItem{mark the @Vehicle with @ANormal if it did not move}
+ @ListItem{mark the @Arty with @ADelayed}
+ @RawEndList}
+ @EndList
+} } }
+
+def @COverrunningArtillery { @VCard {
+ @CCHeader{Overrunning Artillery @Rule 9.9.1}
+ /.1c @Display 10p @Font {
+ @BulletList
+ gap {.8v}
+ @ListItem{armoured @Tracked @Vehicle}
+ @ListItem{@B not while transporting, @B not in @I harsh terrain}
+ @ListItem{@B must use a @AFast}
+ @ListItem{@Arty @B unless marked @ASuppressed @Sym slash @AFallback @Sym slash @AFast @Sym slash @ADelayed :
+ @BulletList
+ gap {.6v}
+ indent {1v}
+ @ListItem{has 1 vertex facing change}
+ @ListItem{fire range 0 for @Free}
+ @ListItem{no dice mod, @Attack vs frontal armour}
+ @ListItem{apply @I Critical rules @Rule 10.8.1}
+ @RawEndList}
+ @ListItem{the @Vehicle is @I Immobilized, @I Suppressed /.5v or @I Destroyed in the last adjacent hex}
+ @ListItem{otherwise the @Arty is @I Destroyed}
+ @EndList
+} } }
+
+def @CCoverMovement { @VCard {
+ @CCHeader{Covering Fire @Rule 9.12}
+ @Display 8p @Font {
+ @BulletList
+ gap {.6v}
+ @ListItem{activate 2 @B adjacent units (2 @CMP) @LP with @ANormal @Sym slash @AFast @Sym ampersand @AFiring for the @B{F}ire @B{S}upport @B{U}nit}
+ #@ListItem{the @I{Firing unit} must have LOS to the @I{Reactiong unit}}
+ #@ListItem{add @I{Firing unit} @Strongest @Attack die to @I{Moving unit} @Defense}
+ @ListItem{@B{FSU} may @B once react to a @ReactionFire unit in LOS:
+ @BulletList
+ gap {.6v}
+ @ListItem{add @B FSU @Strongest @Attack die to @I{Moving unit} @Defense}
+ @ListItem{(next @Strongest @Attack if @Half or has @AAttack)}
+ @RawEndList}
+ @EndList
+ /1v
+ @CCHeader{Joint Fire @Rule 10.9.4}
+ @BulletList
+ gap {.6v}
+ @ListItem{mark 2 @B adjacent @Inf with @AFiring, cost 1 @CMP}
+ @ListItem{lead unit does the @Spotting and the @Attack roll}
+ @ListItem{support unit adds:
+ @BulletList
+ gap {.6v}
+ @ListItem{its @Strongest @Attack die}
+ @ListItem{its @B next @Strongest @Attack die if @AAttack or has @LOSH}
+ @ListItem{use @B stronger symbol of double if @Half}
+ @RawEndList}
+ @EndList
+} } }
+
+def @CInderctFire { @VCard {
+ @CCHeader{Indirect Fire @Rule 7.1}
+ @Display 10p @Font {
+ @BulletList
+ @ListItem{@Support units with @Ability {Indirect Fire}}
+ @ListItem{@B not from forest or multy-storey buildings}
+ @ListItem{@B ignore @Hindered hexes @Defense dice}
+ @ListItem{adjacent @InfArty @Sym slash @Ability Scout may spot for @Free :
+ @BulletList
+ indent {1v}
+ #@ListItem{spotting is a @Free action}
+ @ListItem{mark with @AAttack (if already @Sym arrowdblright @ANormal)}
+ @RawEndList}
+ @ListItem{against @Vehicle @Rule 7.1.2 :
+ @BulletList
+ indent {1v}
+ @ListItem{@Defense: + @Green}
+ @ListItem{pre-roll : keep @Hit @Sym ampersand @Critical dice then roll}
+ @ListItem{use @B flank @Defense, @B above if any @Critical}
+ #@ListItem{on @B critical result, use @B above @Defense instead of @B flank}
+ @ListItem{transporting units @Sym arrowdblright @Rule 10.11 FIXME}
+ @RawEndList}
+ @EndList
+} } }
+
+def @CDamageCritical { @VCard {
+ @CCHeader{Range Fire Results @Rule 10.8}
+ @Display 8p @Font {
+ @BulletList
+ gap {.1v}
+ @ListItem{assign 1 damage point for each @Critical @Hit @Rule 10.8.2}
+ @ListItem{if any @Suppress remains mark the unit with @ASuppressed:
+ @BulletList
+ gap {.1v}
+ indent {1v}
+ @ListItem{fallback @AFallback if marked with @ADelayed}
+ @ListItem{if already @ASuppressed:
+ @BulletList
+ gap {.1v}
+ indent {1v}
+ @ListItem{@Inf are marked with @AFallback}
+ @ListItem{@Arty and @AImmobile @Vehicle are @Eliminated}
+ @RawEndList}
+ @RawEndList}
+ @ListItem{for each @Critical: roll @Attack: @Green |.2c @Defense: @Blue}
+ @ListItem{on any success @AImmobile @Vehicle are @Eliminated}
+ @RawEndList
+ #for each @Critical: roll @Attack: @Green |.2c @Defense: @Blue
+ #@LP on any success @AImmobile @Vehicle are @Eliminated
+ #@LP @Tbl
+ || @Tbl
+ rule {yes}
+ i {ctr}
+ iv {ctr}
+ aformat { @Cell A | @Cell B | @Cell C | @Cell D }
+ bformat { @Cell | @StartHSpan @Cell i {ctr} A | @HSpan | @HSpan }
+ {
+ @Rowa
+ paint {@HeaderPaint}
+ B {@Inf} C {@Arty} D {@Vehicle}
+ @Rowa A {@Suppress} B {@Sym arrowdbldown} C {@Sym arrowdbldown} D {@ASuppressed @Sym arrowdown}
+ @Rowa A {@Hit} B {@Suppress @Sym arrowdown} C {@Suppress @Sym arrowdown} D {@AFallback @Sym arrowdown @Sym arrowdown}
+ @Rowa A {@Critical} B {@AFallback @Sym arrowdown} C {@Sym arrowdbldown} D {@AImmobile @Sym arrowdown}
+ @Rowb A {@Eliminated}
+ }
+ #@LP if already marked, follow the @Sym arrowdown
+} } }
+
+def @CRangeFireAttack { @VCard {
+ @CCHeader{Range Fire Attack @Rule 10.9}
+ @Display 10p @Font { /.3c | @Tbl
+ rule {yes}
+ i {ctr}
+ iv {ctr}
+ aformat { @Cell A | @Cell B | @Cell C }
+ bformat { @StartVSpan @Cell A | @Cell B | @Cell C }
+ cformat { @VSpan | @StartHSpan @Cell B | @HSpan}
+ {
+ @Rowa
+ paint {@HeaderPaint}
+ A {@Attack} B {attacker} C {target}
+ @Rowb A {+ @Blue} B {@Veteran @Elite}
+ @Rowa A {+ @Suppress} B {@AAmbush} C { @Recruit }
+ @Rowa A {- @Weakest} B {@AHidden @AAttack}
+ } /.2v | @BulletList
+ @ListItem{@Half : @SingleSuccess}
+ @ListItem{failed @Spotting:
+ @BulletList
+ gap {.5v}
+ @ListItem{@SingleSuccess, no @Critical}
+ @ListItem{@Half: @Sym numbersign attack dice @Sym slash 2 @Sym arrowup}
+ @RawEndList}
+ @ListItem{Joint Fire @B FSU adds its:
+ @BulletList
+ gap {.6v}
+ @ListItem{@Strongest @Attack die}
+ @ListItem{@AAttack @Sym slash @LOSH: @B next @Strongest}
+ #@ListItem{@Half : @SingleSuccess}
+ @RawEndList}
+ @EndList
+} } }
+
+def @CRangeFireDefense { @VCard {
+ @CCHeader{Range Fire Defense @Rule 10.10}
+ @Display 10p @Font { /1v
+ @Bullet @Defense: terrain + cumulative @LOSH
+ @LP | @Tbl
+ rule {yes}
+ i {ctr}
+ iv {ctr}
+ aformat { @Cell A | @Cell B | @Cell C }
+ bformat { @StartVSpan @Cell A | @Cell B | @Cell C }
+ cformat { @VSpan | @StartHSpan @Cell B | @HSpan}
+ {
+ @Rowa
+ paint {@HeaderPaint}
+ A {@Defense} B {attacker} C {target}
+ @Rowa A {+ @Green} B {@AFireMove @LP @AMoveFire} C {@ASuppressed @InfArty @LP @ADugIn @Inf}
+ @Rowb A {+ @Blue} B {@ATurret} C {@AFast @Vehicle @LP @AHide @AHidden @AAmbush @LP @Hardened @Veteran @Elite}
+ @Rowc B {@Sym slash @Smoke}
+ @Rowa A {- @Weakest} B {@AAmbush} C {@AFast @InfArty @LP @ADigIn @Inf}
+ }
+} } }
+
+def @CFireAtTransport { @VCard {
+ @CCHeader{Firing at Transport @Rule 10.11}
+ @Display 9p @Font {
+ @BulletList
+ @ListItem{@B{Firing at Tank Riders} @Rule 10.11.1
+ @BulletList
+ gap {.6v}
+ @ListItem{the vehicle is @B not affected}
+ @ListItem{use @B unit inherent defense dice, @B no terrain dice}
+ @ListItem{on @Suppress @Sym slash @Hit @Sym slash @Critical @Sym arrowdblright @B Emergency}
+ @RawEndList}
+ @ListItem{@B{Firing at Transport} @Rule 10.11.2
+ @BulletList
+ gap {.6v}
+ @ListItem{on @Suppress @Sym slash @Hit @Sym slash @AImmobile @Sym arrowdblright @B Emergency}
+ @ListItem{on @Critical @Eliminated @Sym arrowdblright @B Emergency
+ @BulletList
+ gap {.6v}
+ @ListItem{@B each transported unit suffers @B{1 damage} point}
+ #@ListItem{apply @B {Emergency Disembark}}
+ @RawEndList}
+ @RawEndList}
+ @ListItem{@B{Emergency Disembark} @Rule 10.11.3 @Free actions
+ @BulletList
+ gap {.6v}
+ @ListItem{into @Sym emptyset @B adjacent hexes @Sym ampersand trigger @ReactionFire}
+ @ListItem{if no possible move, the unit is @Eliminated}
+ @ListItem{marked @AFast , @ADelayed if @Cap Slow or in @Harsh}
+ @RawEndList}
+ @EndList
+} } }
+
+def @CCAttack { @VCard {
+ @CCHeader{Close Combat Attack @Rule 11.4}
+ /.5c @Display 8p @Font { || @Tbl
+ rule {yes}
+ i {ctr}
+ iv {ctr}
+ aformat { @VSpan | @StartHSpan @Cell A | @HSpan | @Cell B }
+ bformat { @VSpan | @VSpan | @Cell A | @Cell B }
+ cformat { @VSpan | @StartVSpan @Cell X | @Cell A | @Cell B }
+{
+ @Row format {@StartVSpan @Cell | @StartHSpan @Cell A | @HSpan | @Cell B }
+ A{@Veteran @Elite} B{+ @Blue}
+ @Rowa
+ A{@Half @LLP @Vehicle vs @Inf} B{only @Strongest @LLP result}
+ @Row format {@StartVSpan @Cell paint {@HeaderPaint} 90d @Rotate X | @StartHSpan @Cell A | @HSpan | @Cell B }
+ ruleabovewidth { 1p }
+ X{@B First round only} A{close combat @I Support} B{1 re-roll}
+ @Rowa
+ A{@AAttack} B{lose @Weakest die}
+ @Rowc
+ ruleabovewidth { 1p }
+ X{@Attacker} A{crossing obstacle} B{lose @Weakest die}
+ @Row format {@VSpan | @VSpan | @Cell A | @Cell B }
+ A{@I Outflanked @LLP or @AImmobile @Vehicle} B{1 re-roll}
+ @Rowc
+ ruleabovewidth { 1p }
+ X{@Defender} A{@ASuppressed} B{@B cannot @LLP attack back}
+ @Rowb
+ A{@I Activated} B{@SingleSuccess}
+ @Rowb
+ A{@I Activated @LLP @Sym ampersand @Half} B{lose @Weakest die}
+} } } }
+
+def @CCDefense { @VCard {
+ @CCHeader{Close Combat Defense @Rule 11.5}
+ /.2c @Display 8p @Font { || @Tbl
+ rule {yes}
+ i {ctr}
+ iv {ctr}
+ aformat { @VSpan | @StartHSpan @Cell A | @HSpan | @Cell B }
+ bformat { @VSpan | @VSpan | @Cell A | @Cell B }
+ cformat { @VSpan | @StartVSpan @Cell X | @Cell A | @Cell B }
+{
+ @Row format {@StartVSpan @Cell | @StartHSpan @Cell A | @HSpan | @Cell B }
+ B{ @Strongest terrain @LLP @B or fortification dice}
+ @Rowa
+ A{@Hardened @Veteran @Elite} B{+ @Blue}
+ @Rowa
+ A{@Arty} B{@Weakest @Defense dice}
+ @Rowa
+ A{@Vehicle} B{@B no terrain}
+ @Rowa
+ A{@Vehicle vs @Vehicle} B{@B frontal armour}
+ @Rowa
+ A{@Inf vs @Vehicle} B{@Weakest armour}
+ @Rowa
+ A{@Vehicle @AImmobile} B{@B rear armour @LLP @B First round as well}
+ @Row format {@StartVSpan @Cell paint {@HeaderPaint} 90d @Rotate X | @StartHSpan @Cell A | @HSpan | @Cell B }
+ ruleabovewidth { 1p }
+ X{@B First round only} A{@I Support} B{1 re-roll}
+ @Rowc
+ X{@Attacker} B{@Weakest terrain dice}
+ @Rowb
+ A{@AFast} B{lose @Weakest dice}
+ @Rowc
+ ruleabovewidth { 1p }
+ X{@Defender} B{@Strongest terrain @LLP @B and fortification dice @LLP @Sym arrowdown @I flank @B{@Sym arrowdown @Sym arrowdown} @I rear}
+ @Rowb
+ A{@Vehicle vs @Vehicle} B{@B facing armour}
+} } } }
+
+def @CCResult { @VCard {
+ @CCHeader{Close Combat Damage @Rule 11.5.4}
+ @Display 8p @Font {
+ @BulletList
+ gap {.3v}
+ @ListItem{assign 1 damage point for each @Critical @Hit @Rule 10.8.2}
+ @ListItem{during @B First round, all units ignore 1 @Suppress}
+ @ListItem{any uncancelled @Suppress : @AFallback, mark the other unit @ANormal}
+ @ListItem{each uncancelled @Critical : reduce @Half}
+ @ListItem{if 1 unit is @Eliminated, mark the other unit @AFast}
+ @ListItem{@ADugIn stays if the unit wins the close combat}
+ @EndList
+ /1v
+ @CCHeader{Voluntary Withdrawal @Rule 11.5.6.1}
+ @BulletList
+ gap {.3v}
+ @ListItem{other player execute a final close combat attack}
+ @ListItem{the withdrawing unit perfom a @AFast, @B not into an @Objective}
+ @ListItem{the other unit is marked @ANormal}
+ @EndList
+} } }
+
+def @CCSpecial { @VCard {
+ @CCHeader{Close Combat Transport @Rule 11.8}
+ @Display 8p @Font {
+@BulletList
+ gap {.3v}
+ @ListItem{may attack each transported units :
+ @BulletList
+ @ListItem{range @B 0 @Strongest die @I vs rinted @Defense dice}
+ @RawEndList}
+ @ListItem{then execute an @B{Emergency Disembark} @Rule 10.11.3}
+@EndList
+ /1v
+ @CCHeader{Desperate Attack @Rule 11.9}
+@BulletList
+ gap {.3v}
+ @ListItem{other player execute a final close combat attack}
+ @ListItem{the withdrawing unit perfom a @AFast, @B not into an @Objective}
+ @ListItem{the other unit is marked @ANormal}
+ @ListItem{each round, @Inf vs @Vehicle may:
+ @BulletList
+ gap {.3v}
+ @ListItem{@Vehicle counter attack is resolved as normal}
+ @ListItem{@Inf @Green vs @Vehicle @Blue, @Green if @B first @Sym ampersand @Inf @AFast :
+ @BulletList
+ gap {.3v}
+ @ListItem{on @B double success : @AImmobile + 1 @Hit}
+ @ListItem{on @Critical @Sym slash @Hit : @AImmobile}
+ @ListItem{on @Suppress: @Suppress @Sym ampersand must @B Withdraw}
+ @RawEndList}
+ @RawEndList}
+@EndList
+} } }
+
+# FIXME : dice values & units quality
+
+@Document
+@InitialSpace { lout }
+//
+@Text @Begin
+
+@LLP @LLP # silence : 8.9c object too high for 0.0c space; will try elsewhere, but why ?
+@Display @CEndOfTurn
+@Display @CSpotting
+@Display @CMinefields
+@Display @CMovements
+@Display @CHide
+@Display @CInfantry
+@Display @CTransportingUnits
+@Display @CTransportingArtillery
+@Display @COverrunningArtillery
+@Display @CCoverMovement
+@Display @CInderctFire
+@Display @CRangeFireAttack
+@Display @CRangeFireDefense
+@Display @CDamageCritical
+@Display @CCAttack
+@Display @CCDefense
+@Display @CCResult
+@Display @CCSpecial
+@Display @CFireAtTransport
+@Display @CSandbags
+@Display @CPillbox
+@Display @CTrenches
+@Display @CGunposition
+@Display @CBunker
+# @Inf @Arty @Wheeled @Tracked
+
+@End @Text