The Enhanced Status Icon replaces UT's player status icon. It can correctly
draw the status icons for the male, the female and the boss model.UT's icon has
some difficulties drawing the boss model, e.g. the lower part of the chest
armor is only drawn when the player has the Thigh Pads, but then even when the
player does not have the chest armor. The enhanced status icon can also display
whether the player is invisible by making the icon more transparent. This can
be helpful when playing with hidden weapons. The shield belt icon is drawn
darker when the shield belt is not at full charge.
The enhanced status icon can display five different types of items. These can
either be drawn in the HUD's color to indicate armor items or in inverted color
to indicate special items like jump boots or the Chaos UT gravity belt.
Every
PickupPlus can be displayed as any combination
of these options. Non-PickupPlus items need to be subclasses of certain items
to be displayed. Subclasses of UnrealShare.Armor (assault vest) and
Botpack.Armor2 (body armor) are displayed as chest armor. Botpack.Thighpads and
its subclasses are shown as thigh armor. Subclasses of UnrealShare.JumpBoots,
Botpack.UT_JumpBoots and UTChaosMap.c_JumpBoots (Chaos UT SUPER Jump Boots) are
displayed as special boots. ChaosUT.GravBelt and its subclasses are displayed
as special belt. Any subclass of UnrealShare.Suits like the Kevlar Suit and the
Asbestos Suit are displayed as all five armor types. If any subclasses of
Botpack.UT_Invisibility or UnrealI.Invisibility are found in the player's
inventory the the player will be considered invisible. UnrealShare.ShieldBelt
and Botpack.UT_Shieldbelt and their subclasses result the shield icon to be
drawn. When the player has a damage factor greater than 2.0 the icon will be
drawn pink. Items are still drawn in the HUD's color.
The Enhanced Player Icon is drawn by the EIChallengeHUD mutator in the
EIChallengeHUD.u package. Some textures used for drawing special shields are
contained in the EITextures.utx package, but the Enhanced Player Icon will work
without this file.
The Enhanced Status Icon supports custom add-ons for special HUD classes.
This is done via the CustomHUDIcon class. It is a subclass of EIChallengeHUD
(the mutator used to draw the Enhanced Status Icon which is a subclass of
EnhancedMutator) and offers the following
functions:
- CheckCustomHUDConfig (EIChallengeHUD
MyOwner) [simulated]
- Checks the configuration of the custom HUD icon. By default the
configuration of the Enhanced Status Icon is used.
- bool AllowDrawCustomStatus
(EIChallengeHUD MyOwner) [simulated]
- Returns whether the icon should be drawn. By default it returns the value
of MyOwner.AllowDrawStatus.
- DrawCustomStatus (Canvas Canvas,
EIChallengeHUD MyOwner) [simulated]
- Draws the player status icon. By default MyOwner.DrawStatus(Canvas) is
called.
Make the new custom icon available write an INT file for your package. Put the
following line in the
[Public]
section of that file:
Object=(Name=MyPackage.MyCustomIconClass, Class=Class,
MetaClass=EIChallengeHUD.CustomHUDIcon, Description="HUDPackage.HUDClass")
- MyPackage.MyCustomIconClass
- This is the custom HUD icon class.
- HUDPackage.HUDClass
- The HUD class the custom icon is used for. The custom icon will be used for
any subclass of this class. The Enhanced Player Icon looks for the custom HUD
icon whose HUD class is exactly the class currently used or the closest
superclass.