… | |
… | |
457 | insert_ob_in_map (who, who->map, pusher, 0); |
457 | insert_ob_in_map (who, who->map, pusher, 0); |
458 | insert_ob_in_map (pusher, pusher->map, pusher, 0); |
458 | insert_ob_in_map (pusher, pusher->map, pusher, 0); |
459 | return 0; |
459 | return 0; |
460 | } |
460 | } |
461 | |
461 | |
462 | |
|
|
463 | /* We want ONLY become enemy of evil, unaggressive monster. We must RUN in them */ |
462 | /* We want ONLY become enemy of evil, unaggressive monster. We must RUN in them */ |
464 | /* In original we have here a unaggressive check only - that was the reason why */ |
463 | /* In original we have here a unaggressive check only - that was the reason why */ |
465 | /* we so often become an enemy of friendly monsters... */ |
464 | /* we so often become an enemy of friendly monsters... */ |
466 | /* funny: was they set to unaggressive 0 (= not so nice) they don't attack */ |
465 | /* funny: was they set to unaggressive 0 (= not so nice) they don't attack */ |
467 | |
|
|
468 | if (owner != pusher && pusher->type == PLAYER && who->type != PLAYER && |
466 | if (owner != pusher && pusher->type == PLAYER && who->type != PLAYER && |
469 | !QUERY_FLAG (who, FLAG_FRIENDLY) && !QUERY_FLAG (who, FLAG_NEUTRAL)) |
467 | !QUERY_FLAG (who, FLAG_FRIENDLY) && !QUERY_FLAG (who, FLAG_NEUTRAL)) |
470 | { |
468 | { |
471 | if (pusher->contr->run_on) /* only when we run */ |
469 | if (pusher->contr->run_on) /* only when we run */ |
472 | { |
470 | { |
473 | new_draw_info_format (NDI_UNIQUE, 0, pusher, "You start to attack %s !!", &who->name); |
471 | new_draw_info_format (NDI_UNIQUE, 0, pusher, "You start to attack %s!!", &who->name); |
474 | CLEAR_FLAG (who, FLAG_UNAGGRESSIVE); /* the sucker don't like you anymore */ |
472 | CLEAR_FLAG (who, FLAG_UNAGGRESSIVE); /* the sucker don't like you anymore */ |
475 | who->enemy = pusher; |
473 | who->enemy = pusher; |
476 | return 1; |
474 | return 1; |
477 | } |
475 | } |
478 | else |
476 | else |
479 | { |
|
|
480 | new_draw_info_format (NDI_UNIQUE, 0, pusher, "You avoid attacking %s.", &who->name); |
477 | new_draw_info_format (NDI_UNIQUE, 0, pusher, "You avoid attacking %s.", &who->name); |
481 | } |
|
|
482 | } |
478 | } |
483 | |
479 | |
484 | /* now, lets test stand still. we NEVER can push stand_still monsters. */ |
480 | /* now, lets test stand still. we NEVER can push stand_still monsters. */ |
485 | if (QUERY_FLAG (who, FLAG_STAND_STILL)) |
481 | if (QUERY_FLAG (who, FLAG_STAND_STILL)) |
486 | { |
482 | { |