… | |
… | |
910 | tmp->stats.exp = 0; |
910 | tmp->stats.exp = 0; |
911 | add_friendly_object (tmp); |
911 | add_friendly_object (tmp); |
912 | tmp->attack_movement = PETMOVE; |
912 | tmp->attack_movement = PETMOVE; |
913 | return calc_skill_exp (pl, tmp, skill); |
913 | return calc_skill_exp (pl, tmp, skill); |
914 | } |
914 | } |
|
|
915 | |
915 | /* Charm failed. Creature may be angry now */ |
916 | /* Charm failed. Creature may be angry now */ |
916 | else if ((skill->level + ((pl->stats.Cha - 10) / 2)) < random_roll (1, 2 * tmp->level, pl, PREFER_LOW)) |
917 | else if ((skill->level + ((pl->stats.Cha - 10) / 2)) < random_roll (1, 2 * tmp->level, pl, PREFER_LOW)) |
917 | { |
918 | { |
918 | new_draw_info_format (NDI_UNIQUE, 0, pl, "Your speech angers the %s!\n", query_name (tmp)); |
919 | new_draw_info_format (NDI_UNIQUE, 0, pl, "Your speech angers the %s!\n", query_name (tmp)); |
919 | if (QUERY_FLAG (tmp, FLAG_FRIENDLY)) |
920 | if (QUERY_FLAG (tmp, FLAG_FRIENDLY)) |
920 | { |
921 | { |
921 | CLEAR_FLAG (tmp, FLAG_FRIENDLY); |
922 | CLEAR_FLAG (tmp, FLAG_FRIENDLY); |
922 | remove_friendly_object (tmp); |
923 | remove_friendly_object (tmp); |
923 | tmp->attack_movement = 0; /* needed? */ |
924 | tmp->attack_movement = 0; /* needed? */ |
924 | } |
925 | } |
|
|
926 | |
925 | CLEAR_FLAG (tmp, FLAG_UNAGGRESSIVE); |
927 | CLEAR_FLAG (tmp, FLAG_UNAGGRESSIVE); |
926 | } |
928 | } |
927 | |
929 | |
928 | return 0; /* Fall through - if we get here, we didn't charm anything */ |
930 | return 0; /* Fall through - if we get here, we didn't charm anything */ |
929 | } |
931 | } |