// September 2015 // Levee Patroller / Dijk Patrouille // This source file is (c) by Deltares. This source file is open source but only available to select users. Do not redistribute without written permission of Stichting Deltares, Delft, The Netherlands. // This header has been automatically generated. //============================================================================= // // ------------------------------------------------------------ // © 2006, Geodelft // // Date Id Modification // 2006-10-07 The Created this header // 2006-10-08 The Implemented Dutch translations // 2006-10-09 The Rearranged checkboxes // 2006-10-09 The Hide irrelevant options (for this game) //============================================================================= class Tab_DetailSettings extends GUITabPanel; var config bool bExpert; var localized string DetailLevels[7]; var bool bPlayedSound; var GeoPlayerController GeoPC; var localized string NL_TextureDetailCaption, EN_TextureDetailCaption, NL_TextureDetailHint, EN_TextureDetailHint, NL_CharacterDetailCaption, EN_CharacterDetailCaption, NL_CharacterDetailHint, EN_CharacterDetailHint, NL_WorldDetailCaption, EN_WorldDetailCaption, NL_WorldDetailHint, EN_WorldDetailHint, NL_PhysicsDetailCaption, EN_PhysicsDetailCaption, NL_PhysicsDetailHint, EN_PhysicsDetailHint, NL_CharacterShadowsCaption, EN_CharacterShadowsCaption, NL_CharacterShadowsHint, EN_CharacterShadowsHint, NL_DecalsCaption, EN_DecalsCaption, NL_DecalsHint, EN_DecalsHint, NL_DynamicLightingCaption, EN_DynamicLightingCaption, NL_DynamicLightingHint, EN_DynamicLightingHint, NL_CoronasCaption, EN_CoronasCaption, NL_CoronasHint, EN_CoronasHint, NL_DetailTexturesCaption, EN_DetailTexturesCaption, NL_DetailTexturesHint, EN_DetailTexturesHint, NL_DecalStayCaption, EN_DecalStayCaption, NL_DecalStayHint, EN_DecalStayHint, NL_ProjectorsCaption, EN_ProjectorsCaption, NL_ProjectorsHint, EN_ProjectorsHint, NL_FoliageCaption, EN_FoliageCaption, NL_FoliageHint, EN_FoliageHint, NL_TrilinearCaption, EN_TrilinearCaption, NL_TrilinearHint, EN_TrilinearHint, NL_BlobCaption, EN_BlobCaption, NL_BlobHint, EN_BlobHint, NL_LevelLowest, EN_LevelLowest, NL_LevelLower, EN_LevelLower, NL_LevelLow, EN_LevelLow, NL_LevelNormal, EN_LevelNormal, NL_LevelHigh, EN_LevelHigh, NL_LevelHigher, EN_LevelHigher, NL_LevelHighest, EN_LevelHighest; // bit hacky - but needed to know if we are increasing detail var int prevWorldDetail, prevTextureDetail, prevCharDetail; //============================================================================= // Date Id Modification // 2006-10-07 The Created this header //============================================================================= function UpdateLanguage() { if (GeoPC.Dutch) { moComboBox(Controls[1]).MyLabel.Caption = NL_WorldDetailCaption; moComboBox(Controls[1]).MyComboBox.SetHint(NL_WorldDetailHint); moComboBox(Controls[2]).MyLabel.Caption = NL_CharacterDetailCaption; moComboBox(Controls[2]).MyComboBox.SetHint(NL_CharacterDetailHint); moComboBox(Controls[3]).MyLabel.Caption = NL_TextureDetailCaption; moComboBox(Controls[3]).MyComboBox.SetHint(NL_TextureDetailHint); moComboBox(Controls[4]).MyLabel.Caption = NL_PhysicsDetailCaption; moComboBox(Controls[4]).MyComboBox.SetHint(NL_PhysicsDetailHint); moCheckBox(Controls[5]).MyLabel.Caption = NL_CharacterShadowsCaption; moCheckBox(Controls[5]).MyCheckBox.SetHint(NL_CharacterShadowsHint); moCheckBox(Controls[6]).MyLabel.Caption = NL_DecalsCaption; moCheckBox(Controls[6]).MyCheckBox.SetHint(NL_DecalsHint); moCheckBox(Controls[7]).MyLabel.Caption = NL_DynamicLightingCaption; moCheckBox(Controls[7]).MyCheckBox.SetHint(NL_DynamicLightingHint); moCheckBox(Controls[8]).MyLabel.Caption = NL_CoronasCaption; moCheckBox(Controls[8]).MyCheckBox.SetHint(NL_CoronasHint); moCheckBox(Controls[9]).MyLabel.Caption = NL_DetailTexturesCaption; moCheckBox(Controls[9]).MyCheckBox.SetHint(NL_DetailTexturesHint); moComboBox(Controls[10]).MyLabel.Caption = NL_DecalStayCaption; moComboBox(Controls[10]).MyComboBox.SetHint(NL_DecalStayHint); moCheckBox(Controls[11]).MyLabel.Caption = NL_ProjectorsCaption; moCheckBox(Controls[11]).MyCheckBox.SetHint(NL_ProjectorsHint); moCheckBox(Controls[12]).MyLabel.Caption = NL_FoliageCaption; moCheckBox(Controls[12]).MyCheckBox.SetHint(NL_FoliageHint); moCheckBox(Controls[13]).MyLabel.Caption = NL_TrilinearCaption; moCheckBox(Controls[13]).MyCheckBox.SetHint(NL_TrilinearHint); moCheckBox(Controls[14]).MyLabel.Caption = NL_BlobCaption; moCheckBox(Controls[14]).MyCheckBox.SetHint(NL_BlobHint); DetailLevels[0] = NL_LevelLowest; DetailLevels[1] = NL_LevelLower; DetailLevels[2] = NL_LevelLow; DetailLevels[3] = NL_LevelNormal; DetailLevels[4] = NL_LevelHigh; DetailLevels[5] = NL_LevelHigher; DetailLevels[6] = NL_LevelHighest; } else { moComboBox(Controls[1]).MyLabel.Caption = EN_WorldDetailCaption; moComboBox(Controls[1]).MyComboBox.SetHint(EN_WorldDetailHint); moComboBox(Controls[2]).MyLabel.Caption = EN_CharacterDetailCaption; moComboBox(Controls[2]).MyComboBox.SetHint(EN_CharacterDetailHint); moComboBox(Controls[3]).MyLabel.Caption = EN_TextureDetailCaption; moComboBox(Controls[3]).MyComboBox.SetHint(EN_TextureDetailHint); moComboBox(Controls[4]).MyLabel.Caption = EN_PhysicsDetailCaption; moComboBox(Controls[4]).MyComboBox.SetHint(EN_PhysicsDetailHint); moCheckBox(Controls[5]).MyLabel.Caption = EN_CharacterShadowsCaption; moCheckBox(Controls[5]).MyCheckBox.SetHint(EN_CharacterShadowsHint); moCheckBox(Controls[6]).MyLabel.Caption = EN_DecalsCaption; moCheckBox(Controls[6]).MyCheckBox.SetHint(EN_DecalsHint); moCheckBox(Controls[7]).MyLabel.Caption = EN_DynamicLightingCaption; moCheckBox(Controls[7]).MyCheckBox.SetHint(EN_DynamicLightingHint); moCheckBox(Controls[8]).MyLabel.Caption = EN_CoronasCaption; moCheckBox(Controls[8]).MyCheckBox.SetHint(EN_CoronasHint); moCheckBox(Controls[9]).MyLabel.Caption = EN_DetailTexturesCaption; moCheckBox(Controls[9]).MyCheckBox.SetHint(EN_DetailTexturesHint); moComboBox(Controls[10]).MyLabel.Caption = EN_DecalStayCaption; moComboBox(Controls[10]).MyComboBox.SetHint(EN_DecalStayHint); moCheckBox(Controls[11]).MyLabel.Caption = EN_ProjectorsCaption; moCheckBox(Controls[11]).MyCheckBox.SetHint(EN_ProjectorsHint); moCheckBox(Controls[12]).MyLabel.Caption = EN_FoliageCaption; moCheckBox(Controls[12]).MyCheckBox.SetHint(EN_FoliageHint); moCheckBox(Controls[13]).MyLabel.Caption = EN_TrilinearCaption; moCheckBox(Controls[13]).MyCheckBox.SetHint(EN_TrilinearHint); moCheckBox(Controls[14]).MyLabel.Caption = EN_BlobCaption; moCheckBox(Controls[14]).MyCheckBox.SetHint(EN_BlobHint); DetailLevels[0] = EN_LevelLowest; DetailLevels[1] = EN_LevelLower; DetailLevels[2] = EN_LevelLow; DetailLevels[3] = EN_LevelNormal; DetailLevels[4] = EN_LevelHigh; DetailLevels[5] = EN_LevelHigher; DetailLevels[6] = EN_LevelHighest; } } //============================================================================= // Date Id Modification // 2006-10-07 The Created this header //============================================================================= function InitComponent(GUIController MyController, GUIComponent MyOwner) { local int i; Super.Initcomponent(MyController, MyOwner); GeoPC = GeoPlayerController(PlayerOwner()); for (i=0;i prevTextureDetail) goingUp = true; prevTextureDetail = newDetail; } else if (Sender==Controls[2]) { t = "set ini:Engine.Engine.ViewportManager TextureDetail"; if(moComboBox(Sender).GetText() == DetailLevels[0]) { v = "UltraLow"; newDetail = 0; } else if(moComboBox(Sender).GetText() == DetailLevels[1]) { v = "Low"; newDetail = 1; } else if(moComboBox(Sender).GetText() == DetailLevels[2]) { v = "Lower"; newDetail = 2; } else if(moComboBox(Sender).GetText() == DetailLevels[3]) { v = "Normal"; newDetail = 3; } else if(moComboBox(Sender).GetText() == DetailLevels[4]) { v = "Higher"; newDetail = 4; } else if(moComboBox(Sender).GetText() == DetailLevels[5]) { v = "High"; newDetail = 5; } else if(moComboBox(Sender).GetText() == DetailLevels[6]) { v = "UltraHigh"; newDetail = 6; } PlayerOwner().ConsoleCommand(t$"WeaponSkin"@v); PlayerOwner().ConsoleCommand(t$"PlayerSkin"@v); PlayerOwner().ConsoleCommand("flush"); if(newDetail > prevCharDetail) goingUp = true; prevCharDetail = newDetail; } else if (Sender==Controls[3]) { if(moComboBox(Sender).GetText() == DetailLevels[6]) { PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice HighDetailActors True"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice SuperHighDetailActors True"); PlayerOwner().Level.DetailChange(DM_SuperHigh); newDetail = 6; } else if(moComboBox(Sender).GetText() == DetailLevels[4]) { PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice HighDetailActors True"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice SuperHighDetailActors False"); PlayerOwner().Level.DetailChange(DM_High); newDetail = 4; } else if(moComboBox(Sender).GetText() == DetailLevels[3]) { PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice HighDetailActors False"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice SuperHighDetailActors False"); PlayerOwner().Level.DetailChange(DM_Low); newDetail = 3; } if(newDetail > prevWorldDetail) goingUp = true; prevWorldDetail = newDetail; } else if (Sender==Controls[4]) { if (moComboBox(Sender).GetText()==DetailLevels[2]) PlayerOwner().Level.default.PhysicsDetailLevel=PDL_Low; else if (moComboBox(Sender).GetText()==DetailLevels[3]) PlayerOwner().Level.default.PhysicsDetailLevel=PDL_Medium; else if (moComboBox(Sender).GetText()==DetailLevels[4]) PlayerOwner().Level.default.PhysicsDetailLevel=PDL_High; PlayerOwner().Level.PhysicsDetailLevel = PlayerOwner().Level.default.PhysicsDetailLevel; PlayerOwner().Level.SaveConfig(); } else if (Sender==Controls[5]) { PlayerOwner().ConsoleCommand("set GeoWorld.GeoHuman bPlayerShadows "$moCheckBox(Sender).IsChecked()); class'GeoWorld.GeoHuman'.default.bPlayerShadows = moCheckBox(Sender).IsChecked(); class'GeoWorld.GeoHuman'.static.StaticSaveConfig(); if( moCheckBox(Sender).IsChecked() ) goingUp = true; } else if (Sender==Controls[14]) { PlayerOwner().ConsoleCommand("set GeoWorld.GeoHuman bBlobShadow "$moCheckBox(Sender).IsChecked()); class'GeoWorld.GeoHuman'.default.bBlobShadow = moCheckBox(Sender).IsChecked(); class'GeoWorld.GeoHuman'.static.StaticSaveConfig(); } else if (Sender==Controls[7]) { b = moCheckBox(Sender).IsChecked(); b = b!=true; PlayerOwner().ConsoleCommand("set"@Sender.INIOption@b); if( moCheckBox(Sender).IsChecked() ) goingUp = true; } else if (Sender==Controls[10]) { if (moComboBox(Sender).GetText()==DetailLevels[4]) PlayerOwner().Level.default.DecalStayScale=2; else if (moComboBox(Sender).GetText()==DetailLevels[3]) PlayerOwner().Level.default.DecalStayScale=1; else if (moComboBox(Sender).GetText()==DetailLevels[2]) PlayerOwner().Level.default.DecalStayScale=0; PlayerOwner().Level.DecalStayScale=PlayerOwner().Level.default.DecalStayScale; PlayerOwner().Level.SaveConfig(); } else { PlayerOwner().ConsoleCommand("set"@Sender.INIOption@moCheckBox(Sender).IsChecked()); if( moCheckBox(Sender).IsChecked() ) goingUp = true; } // If we have increased the detail level, show paranoid warning if (goingUp && !bExpert) Controller.OpenMenu("GeoInterface.PerformWarn"); } //============================================================================= // Date Id Modification // 2006-10-07 The Created this header //============================================================================= defaultproperties { Begin Object class=GUIImage Name=DetailBK WinWidth=0.957500 WinHeight=0.521250 WinLeft=0.021641 WinTop=0.320000 Image=Material'GUIContent.BorderBoxD' ImageColor=(R=255,G=255,B=255,A=160); ImageRenderStyle=MSTY_Alpha ImageStyle=ISTY_Stretched End Object Controls(0)=GUIImage'DetailBK' Begin Object class=moComboBox Name=DetailWorldDetail WinWidth=0.4 WinHeight=0.050000 WinLeft=0.05 WinTop=0.1 Caption="Texture Detail" INIOption="ini:Engine.Engine.ViewportManager TextureDetailWorld" INIDefault="High" OnLoadINI=InternalOnLoadINI OnSaveINI=InternalOnSaveINI Hint="Changes how much world detail will be rendered." CaptionWidth=0.5 ComponentJustification=TXTA_Left End Object Controls(1)=moComboBox'DetailWorldDetail' Begin Object class=moComboBox Name=DetailCharacterDetail WinWidth=0.4 WinHeight=0.050000 WinLeft=0.55 WinTop=0.1 Caption="Character Detail" INIOption="ini:Engine.Engine.ViewportManager TextureDetailPlayerSkin" INIDefault="High" OnLoadINI=InternalOnLoadINI OnSaveINI=InternalOnSaveINI Hint="Changes how much character detail will be rendered." CaptionWidth=0.5 ComponentJustification=TXTA_Left End Object Controls(2)=moComboBox'DetailCharacterDetail' Begin Object class=moComboBox Name=DetailActorDetail WinWidth=0.4 WinHeight=0.050000 WinLeft=0.05 WinTop=0.2 Caption="World Detail" INIOption="@Internal" INIDefault="High" OnLoadINI=InternalOnLoadINI OnSaveINI=InternalOnSaveINI Hint="Changes the level of detail used for optional geometry and effects." CaptionWidth=0.5 ComponentJustification=TXTA_Left End Object Controls(3)=moComboBox'DetailActorDetail' Begin Object class=moComboBox Name=DetailPhysics WinWidth=0.4 WinHeight=0.050000 WinLeft=0.55 WinTop=0.2 Caption="Physics Detail" INIOption="@Internal" INIDefault="High" OnLoadINI=InternalOnLoadINI OnSaveINI=InternalOnSaveINI Hint="Changes the physics simulation level of detail." CaptionWidth=0.5 ComponentJustification=TXTA_Left End Object Controls(4)=moComboBox'DetailPhysics' Begin Object class=moCheckBox Name=DetailCharacterShadows WinWidth=0.3 WinHeight=0.050000 WinLeft=0.598750 WinTop=0.656251 Caption="Character Shadows" INIOption="@Internal" INIDefault="True" OnLoadINI=InternalOnLoadINI OnSaveINI=InternalOnSaveINI Hint="Enables character shadows." CaptionWidth=0.9 bSquare=true bVisible=false ComponentJustification=TXTA_Left End Object Controls(5)=moCheckBox'DetailCharacterShadows' Begin Object class=moCheckBox Name=DetailDecals WinWidth=0.3 WinHeight=0.050000 WinLeft=0.6 WinTop=0.46 Caption="Decals" INIOption="ini:Engine.Engine.ViewportManager Decals" INIDefault="True" OnLoadINI=InternalOnLoadINI OnSaveINI=InternalOnSaveINI Hint="Enables weapon scarring effects." CaptionWidth=0.9 bSquare=true bVisible=false ComponentJustification=TXTA_Left End Object Controls(6)=moCheckBox'DetailDecals' Begin Object class=moCheckBox Name=DetailDynamicLighting WinWidth=0.3 WinHeight=0.050000 WinLeft=0.1 WinTop=0.36 Caption="Dynamic Lighting" INIOption="ini:Engine.Engine.ViewportManager NoDynamicLights" INIDefault="True" OnLoadINI=InternalOnLoadINI OnSaveINI=InternalOnSaveINI Hint="Enables dynamic lights." CaptionWidth=0.9 bSquare=true ComponentJustification=TXTA_Left End Object Controls(7)=moCheckBox'DetailDynamicLighting' Begin Object class=moCheckBox Name=DetailCoronas WinWidth=0.3 WinHeight=0.050000 WinLeft=0.1 WinTop=0.56 Caption="Coronas" INIOption="ini:Engine.Engine.ViewportManager Coronas" INIDefault="True" OnLoadINI=InternalOnLoadINI OnSaveINI=InternalOnSaveINI Hint="Enables coronas." CaptionWidth=0.9 bSquare=true ComponentJustification=TXTA_Left End Object Controls(8)=moCheckBox'DetailCoronas' Begin Object class=moCheckBox Name=DetailDetailTextures WinWidth=0.3 WinHeight=0.050000 WinLeft=0.100000 WinTop=0.75 Caption="Detail Textures" INIOption="ini:Engine.Engine.RenderDevice DetailTextures" INIDefault="True" OnLoadINI=InternalOnLoadINI OnSaveINI=InternalOnSaveINI Hint="Enables detail textures." CaptionWidth=0.9 bSquare=true bVisible=false ComponentJustification=TXTA_Left End Object Controls(9)=moCheckBox'DetailDetailTextures' Begin Object class=moComboBox Name=DetailDecalStay WinWidth=0.350000 WinHeight=0.060000 WinLeft=0.598750 WinTop=0.550000 Caption="Decal Stay" INIOption="@Internal" INIDefault="Normal" OnLoadINI=InternalOnLoadINI OnSaveINI=InternalOnSaveINI Hint="Changes how long weapon scarring effects stay around." CaptionWidth=0.5 bVisible=false ComponentJustification=TXTA_Left End Object Controls(10)=moComboBox'DetailDecalStay' Begin Object class=moCheckBox Name=DetailProjectors WinWidth=0.300000 WinHeight=0.040000 WinLeft=0.6 WinTop=0.36 Caption="Projectors" INIOption="ini:Engine.Engine.ViewportManager Projectors" INIDefault="True" OnLoadINI=InternalOnLoadINI OnSaveINI=InternalOnSaveINI Hint="Enables Projectors." CaptionWidth=0.9 bSquare=true bVisible=false ComponentJustification=TXTA_Left End Object Controls(11)=moCheckBox'DetailProjectors' Begin Object class=moCheckBox Name=DetailDecoLayers WinWidth=0.300000 WinHeight=0.040000 WinLeft=0.100000 WinTop=0.656251 Caption="Foliage" INIOption="ini:Engine.Engine.ViewportManager DecoLayers" INIDefault="True" OnLoadINI=InternalOnLoadINI OnSaveINI=InternalOnSaveINI Hint="Enables grass and other decorative foliage." CaptionWidth=0.9 bSquare=true ComponentJustification=TXTA_Left End Object Controls(12)=moCheckBox'DetailDecoLayers' Begin Object class=moCheckBox Name=DetailTrilinear WinWidth=0.300000 WinHeight=0.040000 WinLeft=0.1 WinTop=0.46 Caption="Trilinear Filtering" INIOption="ini:Engine.Engine.RenderDevice UseTrilinear" INIDefault="False" OnLoadINI=InternalOnLoadINI OnSaveINI=InternalOnSaveINI Hint="Enable trilinear filtering, recommended for high-performance PCs." CaptionWidth=0.9 bSquare=true ComponentJustification=TXTA_Left End Object Controls(13)=moCheckBox'DetailTrilinear' Begin Object class=moCheckBox Name=DetailBlob WinWidth=0.300000 WinHeight=0.040000 WinLeft=0.598750 WinTop=0.75 Caption="Use Blob Shadows" INIOption="@Internal" INIDefault="False" OnLoadINI=InternalOnLoadINI Hint="Enable blob shadows. recommended for low-performance PCs." CaptionWidth=0.9 bSquare=true bVisible=false ComponentJustification=TXTA_Left End Object Controls(14)=moCheckBox'DetailBlob' WinTop=0.15 WinLeft=0 WinWidth=1 WinHeight=0.74 bAcceptsInput=false DetailLevels(0)="Lowest" DetailLevels(1)="Lower" DetailLevels(2)="Low" DetailLevels(3)="Normal" DetailLevels(4)="High" DetailLevels(5)="Higher" DetailLevels(6)="Highest" bExpert=false; NL_WorldDetailCaption = "Wereld Detail" NL_WorldDetailHint = "Verandert hoeveel wereld details getoond worden." NL_CharacterDetailCaption = "Figuur Detail" NL_CharacterDetailHint = "Verandert hoeveel figuur details getoond worden." NL_TextureDetailCaption = "Oppervlakte Detail" NL_TextureDetailHint = "Verandert hoeveel patroon details getoond worden." NL_PhysicsDetailCaption = "Beweging Detail" NL_PhysicsDetailHint = "Verandert de bewegings simulatie detail." NL_CharacterShadowsCaption = "Figuur Schaduwen" NL_CharacterShadowsHint = "Toon figuur schaduwen." NL_DecalsCaption = "Schade" NL_DecalsHint = "Toon schade door wapens." NL_DynamicLightingCaption = "Dynamische Belichting" NL_DynamicLightingHint = "Toon dynamische belichting." NL_CoronasCaption = "Lichtkransen" NL_CoronasHint = "Toon lichtkransen." NL_DetailTexturesCaption = "Detail Patronen" NL_DetailTexturesHint = "Toon detail patronen." NL_DecalStayCaption = "Schade afname" NL_DecalStayHint = "Verandert hoe lang schade door wapens zichtbaar blijft." NL_ProjectorsCaption = "Projectors" NL_ProjectorsHint = "Zet projectors aan." NL_FoliageCaption = "Gras" NL_FoliageHint = "Toont gras." NL_TrilinearCaption = "Trilineair Filtering" NL_TrilinearHint = "Aanzetten van trilineair filtering, gebruik alleen voor snelle PCs." NL_BlobCaption = "Gebruik eenvoudige schaduw" NL_BlobHint = "Gebruik eenvoudige schaduw. Toepassen bij langzame PCs." NL_LevelLowest = "Laagst" NL_LevelLower = "Lager" NL_LevelLow = "Laag" NL_LevelNormal = "Normaal" NL_LevelHigh = "Hoog" NL_LevelHigher = "Hoger" NL_LevelHighest = "Hoogst" EN_WorldDetailCaption = "World Detail" EN_WorldDetailHint = "Changes how much world detail will be rendered." EN_CharacterDetailCaption = "Character Detail" EN_CharacterDetailHint = "Changes how much character detail will be rendered." EN_TextureDetailCaption = "Texture Detail" EN_TextureDetailHint = "Changes how much texture detail will be rendered." EN_PhysicsDetailCaption = "Physics Detail" EN_PhysicsDetailHint = "Changes the physics simulation level of detail." EN_CharacterShadowsCaption = "Character Shadows" EN_CharacterShadowsHint = "Enables character shadows." EN_DecalsCaption = "Decals" EN_DecalsHint = "Enables weapon scarring effects." EN_DynamicLightingCaption = "Dynamic Lighting" EN_DynamicLightingHint = "Enables dynamic lights." EN_CoronasCaption = "Coronas" EN_CoronasHint = "Enables coronas." EN_DetailTexturesCaption = "Detail Textures" EN_DetailTexturesHint = "Enables detail textures." EN_DecalStayCaption = "Decal Stay" EN_DecalStayHint = "Changes how long weapon scarring effects stay around." EN_ProjectorsCaption = "Projectors" EN_ProjectorsHint = "Enables Projectors." EN_FoliageCaption = "Foliage" EN_FoliageHint = "Enables grass and other decorative foliage." EN_TrilinearCaption = "Trilinear Filtering" EN_TrilinearHint = "Enable trilinear filtering, recommended for high-performance PCs." EN_BlobCaption = "Use Blob Shadows" EN_BlobHint = "Enable blob shadows. recommended for low-performance PCs." EN_LevelLowest = "Lowest" EN_LevelLower = "Lower" EN_LevelLow = "Low" EN_LevelNormal = "Normal" EN_LevelHigh = "High" EN_LevelHigher = "Higher" EN_LevelHighest = "Highest" }