aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortomsmeding <tom.smeding@gmail.com>2017-03-01 20:12:33 +0100
committertomsmeding <tom.smeding@gmail.com>2017-03-01 20:12:33 +0100
commit2148f4e5d4effa5d1613a074f91da2c34ac6e5ed (patch)
treed673d7f6ef7b6865dec2dfd57d6c2de9729f8d50
parentb0c5387e66f23199191feac71930db412762406d (diff)
Add example programs
-rw-r--r--programs/mine.rob18
-rw-r--r--programs/wl.rob100
2 files changed, 118 insertions, 0 deletions
diff --git a/programs/mine.rob b/programs/mine.rob
new file mode 100644
index 0000000..8c37a6a
--- /dev/null
+++ b/programs/mine.rob
@@ -0,0 +1,18 @@
+; RoboCombat program
+
+Published Name Mine
+Published Author Dennis C. Bemmann
+;Country Germany
+
+Bank MINE
+ @Loop
+ Turn 1 ; Turn right.
+ Set %Active, 0 ; Deactivate potential enemy.
+ Scan #1 ; Scan the field.
+ Comp #1, 1 ; Is an enemy?
+ Jump @Loop ; No, turn again.
+ Trans 2, 1 ; Transfer Black Bank.
+ Set %Active, 1 ; Reactivate.
+ ; Auto-Reboot
+Bank MINE MORTAL
+ Die ; The classic Black Bank. \ No newline at end of file
diff --git a/programs/wl.rob b/programs/wl.rob
new file mode 100644
index 0000000..c1b47f0
--- /dev/null
+++ b/programs/wl.rob
@@ -0,0 +1,100 @@
+Published Name WL
+Published Author Tom Smeding
+Published Language RC300
+Published OptionSet RC3 Standards
+
+Define &code_lostbattle { 100 }
+Define &code_wonbattle { 200 }
+Define &code_killahead { 300 }
+Define &code_justdie { 666 }
+
+Bank WallBuild
+ comp #active, &code_justdie
+ jump @WB.startbuild
+ die
+@WB.startbuild
+ scan #1
+ comp #1, 0
+ jump @WB.notempty
+ create 2, 1, 0
+ scan #1
+ comp #1, 2
+ jump @WB.enemyfound
+ comp #active, 1
+ jump @WB.cancelbuild
+ trans 1, 1
+ set %active, 1
+ jump @WB.wait
+
+@WB.cancelbuild
+ set %active, &code_justdie
+@WB.justdie
+ die
+
+@WB.wait
+ comp #active, &code_lostbattle
+ jump @WB.wait.1
+ jump @WB.lostbattle
+@WB.wait.1
+ comp #active, &code_wonbattle
+ jump @WB.wait.2
+ jump @WB.wonbattle
+@WB.wait.2
+ comp #active, &code_killahead
+ jump @WB.wait
+ jump @WB.killahead
+
+@WB.notempty
+ comp #1, 1
+ jump @WB.walldone
+@WB.enemyfound
+ set %active, 0
+ comp #active, 1
+ jump @WB.wonbattle.pre.signalloss
+ set %active, &code_wonbattle
+ jump @WB.lostbattle
+
+@WB.lostbattle
+ turn 1
+ turn 1
+ scan #1
+ comp #1, 2
+ jump @WB.disabled
+ set %active, &code_lostbattle
+ die
+
+@WB.wonbattle.pre.signalloss
+ set %active, &code_lostbattle
+@WB.wonbattle
+ scan #1
+ comp #1, 2
+ jump @WB.wonbattle.1
+ set %active, &code_killahead
+@WB.wonbattle.1
+ turn 1
+ turn 1
+ scan #1
+ comp #1, 2
+ jump @WB.leader
+ set %active, &code_wonbattle
+ die
+
+@WB.killahead
+ scan #1
+ comp #1, 2
+ die
+ set %active, &code_killahead
+ die
+
+@WB.walldone
+ turn 1
+ jump @WB.walldone
+
+@WB.disabled
+ set #active, 0
+
+@WB.leader
+ turn 0
+ turn 0
+ turn 1
+ jump @WB.leader