… | |
… | |
199 | if (defined (my $v = delete $ob->{slow_move})) { |
199 | if (defined (my $v = delete $ob->{slow_move})) { |
200 | $ob->{move_slow} |= MOVE_WALK; |
200 | $ob->{move_slow} |= MOVE_WALK; |
201 | $ob->{move_slow_penalty} = $v; |
201 | $ob->{move_slow_penalty} = $v; |
202 | } |
202 | } |
203 | if (defined (my $v = delete $ob->{walk_on})) { |
203 | if (defined (my $v = delete $ob->{walk_on})) { |
|
|
204 | $ob->{move_on} = MOVE_ALL unless exists $ob->{move_on}; |
204 | $ob->{move_on} = $v ? $ob->{move_on} | MOVE_WALK |
205 | $ob->{move_on} = $v ? $ob->{move_on} | MOVE_WALK |
205 | : $ob->{move_on} & ~MOVE_WALK; |
206 | : $ob->{move_on} & ~MOVE_WALK; |
206 | } |
207 | } |
207 | if (defined (my $v = delete $ob->{walk_off})) { |
208 | if (defined (my $v = delete $ob->{walk_off})) { |
|
|
209 | $ob->{move_off} = MOVE_ALL unless exists $ob->{move_off}; |
208 | $ob->{move_off} = $v ? $ob->{move_off} | MOVE_WALK |
210 | $ob->{move_off} = $v ? $ob->{move_off} | MOVE_WALK |
209 | : $ob->{move_off} & ~MOVE_WALK; |
211 | : $ob->{move_off} & ~MOVE_WALK; |
210 | } |
212 | } |
211 | if (defined (my $v = delete $ob->{fly_on})) { |
213 | if (defined (my $v = delete $ob->{fly_on})) { |
|
|
214 | $ob->{move_on} = MOVE_ALL unless exists $ob->{move_on}; |
212 | $ob->{move_on} = $v ? $ob->{move_on} | MOVE_FLY_LOW |
215 | $ob->{move_on} = $v ? $ob->{move_on} | MOVE_FLY_LOW |
213 | : $ob->{move_on} & ~MOVE_FLY_LOW; |
216 | : $ob->{move_on} & ~MOVE_FLY_LOW; |
214 | } |
217 | } |
215 | if (defined (my $v = delete $ob->{fly_off})) { |
218 | if (defined (my $v = delete $ob->{fly_off})) { |
|
|
219 | $ob->{move_off} = MOVE_ALL unless exists $ob->{move_off}; |
216 | $ob->{move_off} = $v ? $ob->{move_off} | MOVE_FLY_LOW |
220 | $ob->{move_off} = $v ? $ob->{move_off} | MOVE_FLY_LOW |
217 | : $ob->{move_off} & ~MOVE_FLY_LOW; |
221 | : $ob->{move_off} & ~MOVE_FLY_LOW; |
218 | } |
222 | } |
219 | if (defined (my $v = delete $ob->{flying})) { |
223 | if (defined (my $v = delete $ob->{flying})) { |
|
|
224 | $ob->{move_type} = MOVE_ALL unless exists $ob->{move_type}; |
220 | $ob->{move_type} = $v ? $ob->{move_type} | MOVE_FLY_LOW |
225 | $ob->{move_type} = $v ? $ob->{move_type} | MOVE_FLY_LOW |
221 | : $ob->{move_type} & ~MOVE_FLY_LOW; |
226 | : $ob->{move_type} & ~MOVE_FLY_LOW; |
222 | } |
227 | } |
223 | |
228 | |
224 | # convert idiotic event_xxx things into objects |
229 | # convert idiotic event_xxx things into objects |