Mercurial > touhou
comparison src/th06/ecl_vm.rs @ 724:8acaf45b47d0
ecl_vm: added spellcard 13
author | Gauvain "GovanifY" Roussel-Tarbouriech <gauvain@govanify.com> |
---|---|
date | Tue, 29 Oct 2019 14:39:03 +0100 |
parents | 420cec4005b5 |
children | fbf89cba04e2 |
comparison
equal
deleted
inserted
replaced
723:420cec4005b5 | 724:8acaf45b47d0 |
---|---|
1027 //TODO: this variable might not always be correct! it uses the argument in | 1027 //TODO: this variable might not always be correct! it uses the argument in |
1028 //th06: *(int *)(param_1 + 0x9b0) = local_60; | 1028 //th06: *(int *)(param_1 + 0x9b0) = local_60; |
1029 self._setval(-10004, n) | 1029 self._setval(-10004, n) |
1030 */ | 1030 */ |
1031 } | 1031 } |
1032 13 => { | |
1033 if self.frame.ints1[3] % 6 == 0 { | |
1034 let mut _angle=self.frame.floats[2]; | |
1035 /* | |
1036 (type_, anim, sprite_idx_offset, bullets_per_shot, number_of_shots, | |
1037 speed, speed2, launch_angle, angle, flags) = self._enemy.bullet_attributes | |
1038 for i in range(arg) { | |
1039 //TODO: distance is obtained directly by copying bullet attributes | |
1040 //in memory | |
1041 launch_pos = (192 + cos(_angle) * _distance, | |
1042 224 + sin(_angle) * _distance); | |
1043 | |
1044 bullet_attributes = (type_, anim, sprite_idx_offset, | |
1045 bullets_per_shot, number_of_shots, | |
1046 speed, speed2, | |
1047 _angle + self.frame.floats[1], angle, flags); | |
1048 enemy.fire(launch_pos=launch_pos,bullet_attributes=bullet_attributes); | |
1049 _angle += 2*std::f64::consts::PI/arg; | |
1050 }*/ | |
1051 } | |
1052 self.frame.ints1[3] += 1; | |
1053 } | |
1032 14 => { // Lävatein | 1054 14 => { // Lävatein |
1033 let mut enemy = self.enemy.borrow_mut(); | 1055 let mut enemy = self.enemy.borrow_mut(); |
1034 self.frame.ints1[3] = 0; | 1056 self.frame.ints1[3] = 0; |
1035 for laser in enemy.laser_by_id.values() { | 1057 for laser in enemy.laser_by_id.values() { |
1036 //for pos in laser.get_bullets_pos(){ | 1058 //for pos in laser.get_bullets_pos(){ |