changeset 678:1d81a449c436

Implement ECL instructions DelayAttack and NoDelayAttack.
author Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
date Thu, 15 Aug 2019 21:35:22 +0200
parents 082c39d7d1c3
children 6020e33d4fc4
files src/th06/ecl_vm.rs
diffstat 1 files changed, 12 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/th06/ecl_vm.rs
+++ b/src/th06/ecl_vm.rs
@@ -519,6 +519,17 @@ impl EclRunner {
                 enemy.angle = angle;
             }
 
+            // 78
+            SubInstruction::DelayAttack() => {
+                let mut enemy = self.enemy.borrow_mut();
+                enemy.delay_attack = true;
+            }
+            // 79
+            SubInstruction::NoDelayAttack() => {
+                let mut enemy = self.enemy.borrow_mut();
+                enemy.delay_attack = false;
+            }
+
             // 83 -> star items >>> life items
 
             // 97
@@ -585,7 +596,7 @@ impl EclRunner {
                 enemy.death_flags = death_flags;
             }
 
-            _ => unimplemented!()
+            _ => unimplemented!("{:?}", instruction)
         }
     }
 }