A_MinotaurDecide

From ZDoom Wiki
Jump to navigation Jump to search

A_MinotaurDecide
(no parameters)


This function lets a minotaur decides which attack to attempt. If the calling actor has no valid target, it does nothing.

If the minotaur does not have the SUMMONEDMONSTER flag, plays the "minotaur/sight" sound on the WEAPON channel.

Charge attack
This attack has an about 60% chance of being selected, if the target is at a lower height than the calling actor and the horizontal distance between both is greater than 64 map units but less than 1024 map units (for minotaurs with the SUMMONEDMONSTER flag) or half that (other minotaurs).
If this attack is selected, the calling actor is put in its Charge state, receives the SKULLFLY flag and, if not summoned, becomes invulnerable. Its special1 field is set to 17 and its horizontal velocity is set to 13 map units per tic.
Hammer attack
This attack has an about 40% chance of being selected if the minotaur has the SUMMONEDMONSTER flag, 85% of being selected otherwise; if the charge attack has not been already selected, the target is on the floor and is within 576 map units of the calling actor.
If this attack is selected, the calling actor is put in its Hammer state and its special2 field is cleared.
Swing attack
If neither of the attacks has been selected, this function does nothing else than calling A_FaceTarget. In the original code, the call to A_MinotaurDecide is followed by a call to A_MinotaurAtk2, making the volley of fireballs the fallback default attack.

This codepointer is restricted to Minotaur and derived classes.