| 2868 | } |
| 2869 | |
| 2870 | BOOL M_RoundWalk(int i, int md, int *dir) |
| 2871 | { |
| 2872 | int mdtemp; |
| 2873 | BOOL ok; |
| 2874 | if (*dir) |
| 2875 | md = left[left[md]]; |
| 2876 | else |
| 2877 | md = right[right[md]]; |
| 2878 | |
| 2879 | ok = DirOK(i, md); |
| 2880 | mdtemp = md; |
| 2881 | if (!ok) { |
| 2882 | if (*dir) { |
| 2883 | md = right[mdtemp]; |
| 2884 | ok = DirOK(i, md) || (md = right[right[mdtemp]], DirOK(i, md)); |
| 2885 | } else { |
| 2886 | md = left[mdtemp]; |
| 2887 | ok = (DirOK(i, md) || (md = left[left[mdtemp]], DirOK(i, md))); |
| 2888 | } |
| 2889 | } |
| 2890 | if (ok) { |
| 2891 | M_WalkDir(i, md); |
| 2892 | } else { |
| 2893 | *dir = !*dir; |
| 2894 | ok = M_CallWalk(i, opposite[mdtemp]); |
| 2895 | } |
| 2896 | return ok; |
| 2897 | } |
| 2898 | |
| 2899 | void MAI_Zombie(int i) |
| 2900 | { |
no test coverage detected