You can use this function to cook up your own attack types that use the internal damage amount names (massacre, obliterate, etc). The damage amount name will depend on the value of @damage. This can usually be retrieved from the return value of %damage() to get an accurate amount of damage inflicted. The type of attack shoul dbe specified via @attackSingular, and @attackPlural. For instance you might use 'slash' and 'slashes' respectively. The return value will be an array containing 3 fields that can be passed to the %act function. The fields are as follows:
toRoom toActor toTarget
These are tailored to the specific audience of the message and will be properly populated with the appropriate singular or plural attack type where relevant. Note that this function is very similar to %damageMessages().
Example:
@damageFlags->1 = slash @damageFlags->2 = skipMessages
@amount = %damage( @actor, @target, 10 + 1d10, @damageFlags ) @phrases = %damageGetPhrases( @amount, "slash", "slashes" )
%act( @phrases->toRoom, 0, @actor, null, @target, skipPair ) %act( @phrases->toRoom, 0, @actor, null, @target, actorOnly ) %act( @phrases->toRoom, 0, @actor, null, @target, victimOnly ) |