Hide the HUD

From AOW HT Wiki

In this mod, we want to create a shortcut (F) that permits to hide most of the HUD (so that remain only the minimap and the unit commands).

Image:Mod-fullscreen.jpg

The HUD in defined in <GameDirectory>\AOW\DataLight\Interface2D\InGame\zHUD_jeu_principal.ndf

First, we can add a boolean which tells if the HUD is displayed or not. At the top of the file, add :

IsFullScreenValue is TEUGBBoolean :
   Value = false
IsFullScreen is TAccesseurBooleanFromEUGBObject :
   EUGBObject = IsFullScreenValue

To add a shortcut that will change this value, add in Ecran_InGame/Frame/RootIFControl :

Template_RaccourcisClavierInvisible :
  FullScreenShortcut is ToucheRaccourcis = $/defaultconst/VK_F
    EFFET = SEQ with
            [
              IsFullScreenValue := TConditionNot :
                                     SubCondition = IsFullScreen
              ,
              TEffetAffectPropertyBoolean :
                EugObject = $/M3D/SCENES/Scene_3D_Principale
                PropertyName = 'ModeViewPortFullScreen'
                AccesseurBoolean = IsFullScreenValue
            ]

The second effect permits to display the game in fullscreen (otherwise the bottom of the screen is black)

Now we have got a lot of panels to hide. We will use their propertie "HiddenAccesseur" to do that.

  • In Ecran_InGame/Frame/RootIFControl :
$/m3d/interface2d/sousbarreduhaut/afficheur_messageinfo

becomes :

Template_NewPanelVideWithFils :
  HiddenAccesseur = IsFullScreenValue
  Fils = [ $/m3d/interface2d/sousbarreduhaut/afficheur_messageinfo ]
,
  • In Ecran_InGame/Panel_Principal_Bas

Here we have to create a new background picture for our fullscreen mode. Save your picture in aow\customdata\imtexture\interface\ingame\Panel_FullScreen.tga.

After that, replace :

Panel_Interface_TextureGauche_US is Template_NewPanelWithTexture
(
  Texture = 'aow\data\imtexture\interface\ingame\panel_us_general_texturegauche.tga'
),

by :

Panel_Interface_FullScreen is Template_NewPanelWithTexture :
  HiddenAccesseur = TConditionNot :
                      SubCondition = IsFullScreen
  Texture = 'aow\customdata\imtexture\interface\ingame\Panel_FullScreen.tga'
,
Panel_Interface_TextureGauche_US is Template_NewPanelWithTexture :
  HiddenAccesseur = IsFullScreenValue
  Texture = 'aow\data\imtexture\interface\ingame\panel_us_general_texturegauche.tga'
,

You also have some invisible panels which prevent you to clic in the map (giving a order to a unit) below the HUD. When the HUD is hidden, we must be able to clic on the map. So add HiddenAccesseur = IsFullScreenValue to Panel_Invisible_OpaqueALaSouris_Bas_US and Panel_Invisible_OpaqueALaSouris_Medaille_US

Do the same for the CS and TFT panels.

  • In Ecran_InGame/Panel_Autre :

At last, we have to hide lots of things in the HUD : replace

 
                ~/Jeu_Logo/SousPanel_General,
                ~/Jeu_Avion/souspanel_general,
                ~/Jeu_FastHealRepair/souspanel_general,
                $/m3d/interface2d/menuobjectif/souspanel_general,
                $/m3d/interface2d/playerslist/souspanel_general,
                $/m3d/interface2D/InterfaceMarineOne/PanelBoiteDialogue_Scores,
                ~/ToolBar_Minimap/SousPanel_General,
                ~/ToolBar_PMC/SousPanel_General,
                ~/Jeu_Selection/SousPanel_General,
                ~/Jeu_Ressources/SousPanel_General,

by

 
            VisualElements is Template_NewPanelVideWithFils :
              HiddenAccesseur = IsFullScreen
              Fils =
              [
                ~/Jeu_Logo/SousPanel_General,
                ~/Jeu_Avion/souspanel_general,
                ~/Jeu_FastHealRepair/souspanel_general,
                $/m3d/interface2d/menuobjectif/souspanel_general,
                $/m3d/interface2d/playerslist/souspanel_general,
                $/m3d/interface2D/InterfaceMarineOne/PanelBoiteDialogue_Scores,
                ~/ToolBar_Minimap/SousPanel_General,
                ~/ToolBar_PMC/SousPanel_General,
                ~/Jeu_Selection/SousPanel_General,
                ~/Jeu_Ressources/SousPanel_General,
              ]
            ,