diff --git a/Docs/CHANGELOG.md b/Docs/CHANGELOG.md index 8cb2de1..48050eb 100644 --- a/Docs/CHANGELOG.md +++ b/Docs/CHANGELOG.md @@ -6,6 +6,44 @@ All notable changes to this project will be documented in this file. List of changes for version 0.2.0 may be incomplete. Weapon and perk changes are described relative to ScrN versions. +## [Update 404] - 00.00.2022 + +### General + +- NicePakc bundle is now in 7z. +- Code break: `meanreplicationinfo` disabled. +- Less scrnbalance hardcode. +- TSC and all it's classes removed. +- README, changelog, file directory updates. +- HUGE amount of accessed none fixes. +- Tabs -> x4 spaces. +- All hardcoded classes / subobjects removed. Now Kaio can compile his fpp 😂 + +#### Zeds + +- Disable all zed collisions on death. Now jumping crawlers, running gorefasts won't interupt your movement. +- Siren has faster iterator. +- Siren won't spawn emitter on death. +- Siren won't scream at low hp zeds, will try to melee instead. +- Husk doesn't shoot if headless, dying, falling, being moved by other husks. +- Husk ignores zeds that the he can't actually see. +- Husk's projectile won't detonate multiple times during slomo. + +### GUI + +- New lobby footer from base class. New fancy buttons! +- New lobby menu! Much cleaner and doesn't have ad square. +- Skill menu has new backgrounds. +- NiceGUISettings: New dropdown list to control Commando's zed health bars: + - All zeds. + - Only big zeds (>1000hp). + - Disabled. + +### Weapons + +- Fix for nade throwing if you hold non nice weapon. +- Machete pickup removed, axe spawns instead. + ## [Update 008] - 14.01.2022 ### Changed diff --git a/README.md b/README.md index 4ce1668..d1876ce 100644 --- a/README.md +++ b/README.md @@ -2,22 +2,19 @@ This repo contains sources for the last public NicePack release. -It is a haphazard bunch of changes that were made to customize ScrN for ourselves. It is unfinished, but due to some reasons I don't want to release it publicly anymore. +It is a haphazard bunch of changes that were made to customize [ScrN](https://github.com/poosh/KF-ScrnBalance) for ourselves. It is unfinished, but due to some reasons I don't want to release it publicly anymore. -The link to the compiled NicePack, along with all necessary files, is here: +## Documentation -## Config Files - -Only 1 file atm: [NicePack.ini](Configs/NicePack.ini) - -## Changelog - -Complete changelog lies [here](Docs/CHANGELOG.md). +- [Config file](Configs/NicePack.ini). +- [Changelog](Docs/CHANGELOG.md). ## Build Info > N.B. `NiceNameHack` is required for scrn testmap only! +You can use this [bat file](Docs/Compile%20Scripts/Compilation.bat) for basic compilation. + ```ini EditPackages=ServerPerks EditPackages=ServerPerksMut @@ -31,4 +28,51 @@ EditPackages=NicePack EditPackages=NiceNameHack ``` -You can use [this](Docs/Compile%20Scripts/Compilation.bat) bat file for basic compilation. +## Installation + +The link to the compiled NicePack, along with all necessary files, is here: + +```text +NicePack Assets: +├── Animations +│ └── NicePackA.ukx +├── Sounds +│ └── NicePackSnd.uax +├── StaticMeshes +│ └── NicePackSM.usx +└── Textures + ├── MeanZedSkins.utx + └── NicePackT.utx +``` + +```text +Requirements Assets +|-- Animations +| |-- HMG_A.ukx.ukx +| |-- HTec_A.ukx +| |-- ScrnAnims.ukx +| |-- ScrnWeaponPack_A.ukx +| `-- ScrnZedPack_A.ukx +|-- Maps +| |-- KFO-Foundry-SE.rom +| `-- KF-ScrnTestGrounds.rom +|-- Sounds +| |-- HMG_S.uax +| |-- ScrNFoundry.uax +| |-- ScrnSnd.uax +| |-- ScrnWeaponPack_SND.uax +| `-- ScrnZedPack_S.uax +|-- StaticMeshes +| |-- ScrnWeaponPack_SM.usx +| `-- ScrnZedPack_SM.usx +`-- Textures + |-- BDFonts.utx + |-- CountryFlagsTex.utx + |-- GunSkins_T.utx + |-- HMG_T.utx + |-- ScrnAch_T.utx + |-- ScrnTex.utx + |-- ScrnWeaponPack_T.utx + |-- ScrnZedPack_T.utx + `-- TSC_T.utx +``` diff --git a/sources/Effects/NiceIceChunkEmitter.uc b/sources/Effects/NiceIceChunkEmitter.uc index 7464f82..e3f48ca 100644 --- a/sources/Effects/NiceIceChunkEmitter.uc +++ b/sources/Effects/NiceIceChunkEmitter.uc @@ -1,14 +1,17 @@ class NiceIceChunkEmitter extends Emitter; + var() array ImpactSounds; simulated function PostBeginPlay(){ if(ImpactSounds.Length > 0) PlaySound(ImpactSounds[Rand(ImpactSounds.Length)]); } + // NICETODO: change linksfrom HTeac_A to NicePackSM (and change that file) defaultproperties { ImpactSounds(0)=Sound'KFWeaponSound.bullethitglass' ImpactSounds(1)=Sound'KFWeaponSound.bullethitglass2' + Begin Object Class=MeshEmitter Name=MeshEmitter0 StaticMesh=StaticMesh'HTec_A.IceChunk1' UseCollision=True @@ -29,7 +32,7 @@ defaultproperties InitialParticlesPerSecond=10000.000000 StartVelocityRange=(X=(Min=-75.000000,Max=75.000000),Y=(Min=-75.000000,Max=75.000000),Z=(Min=-100.000000,Max=300.000000)) End Object - Emitters(0)=MeshEmitter'NicePack.NiceIceChunkEmitter.MeshEmitter0' + Emitters(0)=MeshEmitter0 Begin Object Class=MeshEmitter Name=MeshEmitter2 StaticMesh=StaticMesh'HTec_A.IceChunk2' @@ -52,7 +55,7 @@ defaultproperties InitialParticlesPerSecond=10000.000000 StartVelocityRange=(X=(Min=-150.000000,Max=150.000000),Y=(Min=-150.000000,Max=150.000000),Z=(Min=-100.000000,Max=500.000000)) End Object - Emitters(1)=MeshEmitter'NicePack.NiceIceChunkEmitter.MeshEmitter2' + Emitters(1)=MeshEmitter2 Begin Object Class=MeshEmitter Name=MeshEmitter3 StaticMesh=StaticMesh'HTec_A.IceChunk3' @@ -75,7 +78,7 @@ defaultproperties InitialParticlesPerSecond=10000.000000 StartVelocityRange=(X=(Min=-200.000000,Max=200.000000),Y=(Min=-200.000000,Max=200.000000),Z=(Min=-100.000000,Max=500.000000)) End Object - Emitters(2)=MeshEmitter'NicePack.NiceIceChunkEmitter.MeshEmitter3' + Emitters(2)=MeshEmitter3 Begin Object Class=SpriteEmitter Name=SpriteEmitter8 UseCollision=True @@ -103,7 +106,7 @@ defaultproperties LifetimeRange=(Min=1.400000,Max=1.400000) StartVelocityRange=(X=(Min=-200.000000,Max=200.000000),Y=(Min=-200.000000,Max=200.000000),Z=(Min=-300.000000,Max=350.000000)) End Object - Emitters(3)=SpriteEmitter'NicePack.NiceIceChunkEmitter.SpriteEmitter8' + Emitters(3)=SpriteEmitter8 Begin Object Class=SpriteEmitter Name=SpriteEmitter9 ProjectionNormal=(Y=1.000000,Z=0.000000) @@ -139,7 +142,7 @@ defaultproperties LifetimeRange=(Min=0.750000,Max=0.750000) StartVelocityRange=(X=(Min=-150.000000,Max=150.000000),Y=(Min=-150.000000,Max=150.000000),Z=(Min=-25.000000,Max=300.000000)) End Object - Emitters(4)=SpriteEmitter'NicePack.NiceIceChunkEmitter.SpriteEmitter9' + Emitters(4)=SpriteEmitter9 Begin Object Class=SpriteEmitter Name=SpriteEmitter10 ProjectionNormal=(Y=1.000000,Z=0.000000) @@ -171,7 +174,7 @@ defaultproperties TextureVSubdivisions=8 LifetimeRange=(Min=0.350000,Max=0.350000) End Object - Emitters(5)=SpriteEmitter'NicePack.NiceIceChunkEmitter.SpriteEmitter10' + Emitters(5)=SpriteEmitter10 Begin Object Class=SpriteEmitter Name=SpriteEmitter11 ProjectionNormal=(Y=1.000000,Z=0.000000) @@ -203,7 +206,7 @@ defaultproperties TextureVSubdivisions=8 LifetimeRange=(Min=0.350000,Max=0.350000) End Object - Emitters(6)=SpriteEmitter'NicePack.NiceIceChunkEmitter.SpriteEmitter11' + Emitters(6)=SpriteEmitter11 Begin Object Class=SpriteEmitter Name=SpriteEmitter12 ProjectionNormal=(Y=1.000000,Z=0.000000) @@ -236,7 +239,7 @@ defaultproperties TextureVSubdivisions=8 LifetimeRange=(Min=0.350000,Max=0.350000) End Object - Emitters(7)=SpriteEmitter'NicePack.NiceIceChunkEmitter.SpriteEmitter12' + Emitters(7)=SpriteEmitter12 Begin Object Class=SpriteEmitter Name=SpriteEmitter13 ProjectionNormal=(Y=1.000000,Z=0.000000) @@ -272,7 +275,7 @@ defaultproperties LifetimeRange=(Min=0.750000,Max=0.750000) StartVelocityRange=(X=(Min=-150.000000,Max=150.000000),Y=(Min=-150.000000,Max=150.000000),Z=(Min=-5.000000,Max=150.000000)) End Object - Emitters(8)=SpriteEmitter'NicePack.NiceIceChunkEmitter.SpriteEmitter13' + Emitters(8)=SpriteEmitter13 Begin Object Class=SpriteEmitter Name=SpriteEmitter14 ProjectionNormal=(Y=1.000000,Z=0.000000) @@ -308,7 +311,7 @@ defaultproperties StartVelocityRange=(X=(Min=-350.000000,Max=350.000000),Y=(Min=-350.000000,Max=350.000000),Z=(Min=-5.000000,Max=50.000000)) VelocityLossRange=(X=(Min=3.000000,Max=3.000000),Y=(Min=3.000000,Max=3.000000)) End Object - Emitters(9)=SpriteEmitter'NicePack.NiceIceChunkEmitter.SpriteEmitter14' + Emitters(9)=SpriteEmitter14 Begin Object Class=SpriteEmitter Name=SpriteEmitter15 UseCollision=True @@ -336,7 +339,7 @@ defaultproperties LifetimeRange=(Min=1.400000,Max=1.400000) StartVelocityRange=(X=(Min=-200.000000,Max=200.000000),Y=(Min=-200.000000,Max=200.000000),Z=(Min=-300.000000,Max=350.000000)) End Object - Emitters(10)=SpriteEmitter'NicePack.NiceIceChunkEmitter.SpriteEmitter15' + Emitters(10)=SpriteEmitter15 AutoDestroy=True bNoDelete=False diff --git a/sources/Effects/NiceNitroGroundEffect.uc b/sources/Effects/NiceNitroGroundEffect.uc index f3ea062..2483921 100644 --- a/sources/Effects/NiceNitroGroundEffect.uc +++ b/sources/Effects/NiceNitroGroundEffect.uc @@ -31,7 +31,7 @@ defaultproperties StartVelocityRange=(X=(Min=-85.000000,Max=85.000000),Y=(Min=-85.000000,Max=85.000000)) StartVelocityRadialRange=(Min=-40.000000,Max=40.000000) End Object - Emitters(0)=SpriteEmitter'NicePack.NiceNitroGroundEffect.SpriteEmitter0' + Emitters(0)=SpriteEmitter0 LifeSpan=5.000000 } diff --git a/sources/GUI/NiceGUIBuyMenu.uc b/sources/GUI/NiceGUIBuyMenu.uc index a7a0202..d817e04 100644 --- a/sources/GUI/NiceGUIBuyMenu.uc +++ b/sources/GUI/NiceGUIBuyMenu.uc @@ -1,34 +1,37 @@ class NiceGUIBuyMenu extends UT2k4MainPage; -//The "Header" -var automated GUIImage HeaderBG_Left; -var automated GUIImage HeaderBG_Center; -var automated GUIImage HeaderBG_Right; -var automated GUILabel CurrentPerkLabel; -var automated GUILabel TimeLeftLabel; -var automated GUILabel WaveLabel; -var automated GUILabel HeaderBG_Left_Label; -var automated KFQuickPerkSelect QuickPerkSelect; -var automated KFBuyMenuFilter BuyMenuFilter; -var automated GUIButton StoreTabButton; -var automated GUIButton PerkTabButton; -//The "Footer" -var automated GUIImage WeightBG; -var automated GUIImage WeightIcon; -var automated GUIImage WeightIconBG; -var automated KFWeightBar WeightBar; -//const BUYLIST_CATS =7; -var() editconst noexport float SavedPitch; -var color RedColor; -var color GreenGreyColor; -var() UT2K4TabPanel ActivePanel; -var localized string CurrentPerk; -var localized string NoActivePerk; -var localized string TraderClose; -var localized string WaveString; -var localized string LvAbbrString; + +// The "Header" +var automated GUIImage HeaderBG_Left; +var automated GUIImage HeaderBG_Center; +var automated GUIImage HeaderBG_Right; +var automated GUILabel CurrentPerkLabel; +var automated GUILabel TimeLeftLabel; +var automated GUILabel WaveLabel; +var automated GUILabel HeaderBG_Left_Label; +var automated KFQuickPerkSelect QuickPerkSelect; +var automated KFBuyMenuFilter BuyMenuFilter; +var automated GUIButton StoreTabButton; +var automated GUIButton PerkTabButton; +// The "Footer" +var automated GUIImage WeightBG; +var automated GUIImage WeightIcon; +var automated GUIImage WeightIconBG; +var automated KFWeightBar WeightBar; +// const BUYLIST_CATS =7; +var() editconst noexport float SavedPitch; +var color RedColor; +var color GreenGreyColor; +var() UT2K4TabPanel ActivePanel; +var localized string CurrentPerk; +var localized string NoActivePerk; +var localized string TraderClose; +var localized string WaveString; +var localized string LvAbbrString; + function InitComponent(GUIController MyC, GUIComponent MyO) { local int i; + super.InitComponent(MyC, MyO); c_Tabs.BackgroundImage = none; c_Tabs.BackgroundStyle = none; @@ -39,14 +42,17 @@ function InitComponent(GUIController MyC, GUIComponent MyO) } UpdateWeightBar(); } + function InitTabs() { local int i; + for ( i = 0; i < PanelCaption.Length && i < PanelClass.Length && i < PanelHint.Length; i++ ) { c_Tabs.AddTab(PanelCaption[i], PanelClass[i],, PanelHint[i]); } } + function UpdateWeightBar() { if ( KFHumanPawn(PlayerOwner().Pawn) != none ) @@ -55,9 +61,11 @@ function UpdateWeightBar() WeightBar.CurBoxes = KFHumanPawn(PlayerOwner().Pawn).CurrentWeight; } } + event Opened(GUIComponent Sender) { local rotator PlayerRot; + super.Opened(Sender); c_Tabs.ActivateTabByName(PanelCaption[0], true); // Tell the controller that he is on a shopping spree @@ -78,29 +86,37 @@ event Opened(GUIComponent Sender) PlayerOwner().SetRotation(PlayerRot); SetTimer(0.05f, true); } + function Timer() { UpdateHeader(); UpdateWeightBar(); } + function InternalOnClose(optional bool bCanceled) { local rotator NewRot; + // Reset player NewRot = PlayerOwner().Rotation; NewRot.Pitch = SavedPitch; PlayerOwner().SetRotation(NewRot); - Super.OnClose(bCanceled); + super.OnClose(bCanceled); } + function UpdateHeader() { local int TimeLeftMin, TimeLeftSec; local string TimeString; + local KFGameReplicationInfo KFGRI; + if ( KFPlayerController(PlayerOwner()) == none || PlayerOwner().PlayerReplicationInfo == none || PlayerOwner().GameReplicationInfo == none ) { return; } + KFGRI = KFGameReplicationInfo(PlayerOwner().GameReplicationInfo); + // Current Perk if ( KFPlayerController(PlayerOwner()).SelectedVeterancy != none ) { @@ -110,9 +126,10 @@ function UpdateHeader() { CurrentPerkLabel.Caption = CurrentPerk$":" @ NoActivePerk; } + // Trader time left - TimeLeftMin = KFGameReplicationInfo(PlayerOwner().GameReplicationInfo).TimeToNextWave / 60; - TimeLeftSec = KFGameReplicationInfo(PlayerOwner().GameReplicationInfo).TimeToNextWave % 60; + TimeLeftMin = KFGRI.TimeToNextWave / 60; + TimeLeftSec = KFGRI.TimeToNextWave % 60; if ( TimeLeftMin < 1 ) { TimeString = "00:"; @@ -121,6 +138,7 @@ function UpdateHeader() { TimeString = "0" $ TimeLeftMin $ ":"; } + if ( TimeLeftSec >= 10 ) { TimeString = TimeString $ TimeLeftSec; @@ -129,8 +147,9 @@ function UpdateHeader() { TimeString = TimeString $ "0" $ TimeLeftSec; } + TimeLeftLabel.Caption = TraderClose @ TimeString; - if ( KFGameReplicationInfo(PlayerOwner().GameReplicationInfo).TimeToNextWave < 10 ) + if ( KFGRI.TimeToNextWave < 10 ) { TimeLeftLabel.TextColor = RedColor; } @@ -138,26 +157,31 @@ function UpdateHeader() { TimeLeftLabel.TextColor = GreenGreyColor; } + // Wave Counter - WaveLabel.Caption = WaveString$":" @ (KFGameReplicationInfo(PlayerOwner().GameReplicationInfo).WaveNumber + 1)$"/"$KFGameReplicationInfo(PlayerOwner().GameReplicationInfo).FinalWave; + WaveLabel.Caption = WaveString $ ":" @ (KFGRI.WaveNumber + 1) $ "/" $ KFGRI.FinalWave; } + function KFBuyMenuClosed(optional bool bCanceled) { local rotator NewRot; + // Reset player NewRot = PlayerOwner().Rotation; NewRot.Pitch = SavedPitch; PlayerOwner().SetRotation(NewRot); - Super.OnClose(bCanceled); + super.OnClose(bCanceled); if ( KFPlayerController(PlayerOwner()) != none ) { KFPlayerController(PlayerOwner()).bShopping = false; } } + function CloseSale(bool savePurchases) { Controller.CloseMenu(!savePurchases); } + function bool ButtonClicked(GUIComponent Sender) { if ( Sender == PerkTabButton ) @@ -170,6 +194,7 @@ function bool ButtonClicked(GUIComponent Sender) } return true; } + defaultproperties { Begin Object Class=GUIImage Name=HBGLeft @@ -181,7 +206,7 @@ defaultproperties WinWidth=0.332300 WinHeight=0.100000 End Object - HeaderBG_Left=GUIImage'NicePack.NiceGUIBuyMenu.HBGLeft' + HeaderBG_Left=HBGLeft Begin Object Class=GUIImage Name=HBGCenter Image=Texture'KF_InterfaceArt_tex.Menu.Thin_border' @@ -192,7 +217,7 @@ defaultproperties WinWidth=0.331023 WinHeight=0.100000 End Object - HeaderBG_Center=GUIImage'NicePack.NiceGUIBuyMenu.HBGCenter' + HeaderBG_Center=HBGCenter Begin Object Class=GUIImage Name=HBGRight Image=Texture'KF_InterfaceArt_tex.Menu.Thin_border' @@ -203,7 +228,7 @@ defaultproperties WinWidth=0.332000 WinHeight=0.100000 End Object - HeaderBG_Right=GUIImage'NicePack.NiceGUIBuyMenu.HBGRight' + HeaderBG_Right=HBGRight Begin Object Class=GUILabel Name=Perk TextAlign=TXTA_Center @@ -213,7 +238,7 @@ defaultproperties WinWidth=0.329761 WinHeight=0.050000 End Object - CurrentPerkLabel=GUILabel'NicePack.NiceGUIBuyMenu.Perk' + CurrentPerkLabel=Perk Begin Object Class=GUILabel Name=Time Caption="Trader closes in 00:31" @@ -225,7 +250,7 @@ defaultproperties WinWidth=0.330000 WinHeight=0.035000 End Object - TimeLeftLabel=GUILabel'NicePack.NiceGUIBuyMenu.Time' + TimeLeftLabel=Time Begin Object Class=GUILabel Name=Wave Caption="Wave: 7/10" @@ -236,7 +261,7 @@ defaultproperties WinWidth=0.327071 WinHeight=0.035000 End Object - WaveLabel=GUILabel'NicePack.NiceGUIBuyMenu.Wave' + WaveLabel=Wave Begin Object Class=GUILabel Name=HBGLL Caption="Quick Perk Select" @@ -248,7 +273,7 @@ defaultproperties WinWidth=0.329761 WinHeight=0.019524 End Object - HeaderBG_Left_Label=GUILabel'NicePack.NiceGUIBuyMenu.HBGLL' + HeaderBG_Left_Label=HBGLL Begin Object Class=KFQuickPerkSelect Name=QS WinTop=0.011906 @@ -257,7 +282,7 @@ defaultproperties WinHeight=0.082460 OnDraw=QS.MyOnDraw End Object - QuickPerkSelect=KFQuickPerkSelect'NicePack.NiceGUIBuyMenu.QS' + QuickPerkSelect=QS Begin Object Class=KFBuyMenuFilter Name=filter WinTop=0.051000 @@ -266,7 +291,7 @@ defaultproperties WinHeight=0.082460 OnDraw=filter.MyOnDraw End Object - BuyMenuFilter=KFBuyMenuFilter'NicePack.NiceGUIBuyMenu.filter' + BuyMenuFilter=filter Begin Object Class=GUIButton Name=StoreTabB Caption="Store" @@ -278,7 +303,7 @@ defaultproperties OnClick=NiceGUIBuyMenu.ButtonClicked OnKeyEvent=StoreTabB.InternalOnKeyEvent End Object - StoreTabButton=GUIButton'NicePack.NiceGUIBuyMenu.StoreTabB' + StoreTabButton=StoreTabB Begin Object Class=GUIButton Name=PerkTabB Caption="Perk" @@ -290,7 +315,7 @@ defaultproperties OnClick=NiceGUIBuyMenu.ButtonClicked OnKeyEvent=PerkTabB.InternalOnKeyEvent End Object - PerkTabButton=GUIButton'NicePack.NiceGUIBuyMenu.PerkTabB' + PerkTabButton=PerkTabB Begin Object Class=GUIImage Name=Weight Image=Texture'KF_InterfaceArt_tex.Menu.Thin_border' @@ -300,7 +325,7 @@ defaultproperties WinWidth=0.663086 WinHeight=0.065828 End Object - WeightBG=GUIImage'NicePack.NiceGUIBuyMenu.Weight' + WeightBG=Weight Begin Object Class=GUIImage Name=WeightIco Image=Texture'KillingFloorHUD.HUD.Hud_Weight' @@ -311,7 +336,7 @@ defaultproperties WinHeight=0.048992 RenderWeight=0.460000 End Object - WeightIcon=GUIImage'NicePack.NiceGUIBuyMenu.WeightIco' + WeightIcon=WeightIco Begin Object Class=GUIImage Name=WeightIcoBG Image=Texture'KF_InterfaceArt_tex.Menu.Perk_box_unselected' @@ -322,7 +347,7 @@ defaultproperties WinHeight=0.054461 RenderWeight=0.450000 End Object - WeightIconBG=GUIImage'NicePack.NiceGUIBuyMenu.WeightIcoBG' + WeightIconBG=WeightIcoBG Begin Object Class=KFWeightBar Name=WeightB WinTop=0.945302 @@ -331,7 +356,7 @@ defaultproperties WinHeight=0.053896 OnDraw=WeightB.MyOnDraw End Object - WeightBar=KFWeightBar'NicePack.NiceGUIBuyMenu.WeightB' + WeightBar=WeightB RedColor=(R=255,A=255) GreenGreyColor=(B=158,G=176,R=175,A=255) @@ -340,6 +365,7 @@ defaultproperties TraderClose="Trader Closes in" WaveString="Wave" LvAbbrString="Lv" + Begin Object Class=GUITabControl Name=PageTabs bDockPanels=True TabHeight=0.025000 @@ -354,7 +380,7 @@ defaultproperties OnActivate=PageTabs.InternalOnActivate OnChange=NiceGUIBuyMenu.InternalOnChange End Object - c_Tabs=GUITabControl'NicePack.NiceGUIBuyMenu.PageTabs' + c_Tabs=PageTabs Begin Object Class=BackgroundImage Name=PageBackground Image=Texture'Engine.WhiteSquareTexture' @@ -362,7 +388,7 @@ defaultproperties ImageStyle=ISTY_Tiled RenderWeight=0.001000 End Object - i_Background=BackgroundImage'NicePack.NiceGUIBuyMenu.PageBackground' + i_Background=PageBackground PanelClass(0)="KFGUI.KFTab_BuyMenu" PanelClass(1)="KFGUI.KFTab_Perks" @@ -373,4 +399,4 @@ defaultproperties bAllowedAsLast=True OnClose=NiceGUIBuyMenu.KFBuyMenuClosed WhiteColor=(B=255,G=255,R=255) -} +} \ No newline at end of file diff --git a/sources/GUI/NiceGUICheckBoxButton.uc b/sources/GUI/NiceGUICheckBoxButton.uc new file mode 100644 index 0000000..98a7150 --- /dev/null +++ b/sources/GUI/NiceGUICheckBoxButton.uc @@ -0,0 +1,13 @@ +class NiceGUICheckBoxButton extends GUICheckBoxButton; + +defaultproperties +{ + CheckedOverlay(0)=Texture'KF_InterfaceArt_tex.Menu.Checkbox' // checked + CheckedOverlay(1)=Texture'KF_InterfaceArt_tex.Menu.checkbox_highlight' // checked, mouse over + CheckedOverlay(2)=Texture'KF_InterfaceArt_tex.Menu.checkbox_highlight' // checked, focused + CheckedOverlay(3)=Texture'KF_InterfaceArt_tex.Menu.checkbox_dark' // checked, clicked + CheckedOverlay(4)=Texture'KF_InterfaceArt_tex.Menu.checkbox_dark' // checked, disabled + ImageIndex=0 + bAllOverlay=False + StyleName="CheckBox" +} \ No newline at end of file diff --git a/sources/GUI/NiceGUISettings.uc b/sources/GUI/NiceGUISettings.uc index 87e7dc1..2ceaa06 100644 --- a/sources/GUI/NiceGUISettings.uc +++ b/sources/GUI/NiceGUISettings.uc @@ -1,273 +1,216 @@ -class NiceGUISettings extends Settings_Tabs; -//var automated GUIButton skillButtonA; -var array ForceProjItems; -var automated moCheckBox ch_WeapManagement; -var automated moCheckBox ch_AltSwitches; -var automated moCheckBox ch_DispCounters; -var automated moCheckBox ch_DisWeapProgress; -var automated moCheckBox ch_ShowHLMessages; -var automated moCheckBox ch_CancelFire; -var automated moCheckBox ch_CancelSwitching; -var automated moCheckBox ch_CancelNades; -var automated moCheckBox ch_CancelAiming; -var automated moCheckBox ch_ReloadWontWork; -var automated GUISectionBackground bg_WEAP; -var automated GUISectionBackground bg_RELOAD; -function InitComponent(GUIController MyController, GUIComponent MyOwner){ +class NiceGUISettings extends UT2K4TabPanel; + +// GENERAL WEAPON SETTINGS +var automated GUISectionBackground bg_WEAP; +var automated moCheckBox ch_WeapManagement; +var automated moCheckBox ch_AltSwitches; +var automated moCheckBox ch_DispCounters; +var automated moCheckBox ch_DisWeapProgress; +var automated moCheckBox ch_ShowHLMessages; + +// WEAPON RELOAD SETTINGS +var automated GUISectionBackground bg_RELOAD; +var automated moCheckBox ch_CancelFire; +var automated moCheckBox ch_CancelSwitching; +var automated moCheckBox ch_CancelNades; +var automated moCheckBox ch_CancelAiming; +var automated moCheckBox ch_ReloadWontWork; + +// RANDOM SETTINGS +var automated GUISectionBackground bg_RANDOM; +var automated MoComboBox mo_ZedHPBars; + +function InitComponent(GUIController MyController, GUIComponent MyOwner) +{ super.InitComponent(MyController, MyOwner); -} -function InternalOnLoadINI(GUIComponent sender, string s){ + + mo_ZedHPBars.AddItem("Big Zeds"); + mo_ZedHPBars.AddItem("All Zeds"); + mo_ZedHPBars.AddItem("Disable"); + + // GENERAL WEAPON SETTINGS + bg_WEAP.ManageComponent(ch_WeapManagement); + bg_WEAP.ManageComponent(ch_AltSwitches); + bg_WEAP.ManageComponent(ch_DispCounters); + bg_WEAP.ManageComponent(ch_DisWeapProgress); + bg_WEAP.ManageComponent(ch_ShowHLMessages); + + // WEAPON RELOAD SETTINGS + bg_RELOAD.ManageComponent(ch_CancelFire); + bg_RELOAD.ManageComponent(ch_CancelSwitching); + bg_RELOAD.ManageComponent(ch_CancelNades); + bg_RELOAD.ManageComponent(ch_CancelAiming); + bg_RELOAD.ManageComponent(ch_ReloadWontWork); + + // RANDOM SETTINGS + bg_RANDOM.ManageComponent(mo_ZedHPBars); +} + +function InternalOnLoadINI(GUIComponent sender, string s) +{ local NicePlayerController nicePlayer; + nicePlayer = NicePlayerController(PlayerOwner()); - if(nicePlayer == none) - return; - switch(sender){ - case ch_WeapManagement: - ch_WeapManagement.Checked(nicePlayer.bNiceWeaponManagement); - break; - case ch_AltSwitches: - ch_AltSwitches.Checked(nicePlayer.bFlagAltSwitchesModes); - break; - case ch_DispCounters: - ch_DispCounters.Checked(nicePlayer.bFlagDisplayCounters); - break; - case ch_DisWeapProgress: - ch_DisWeapProgress.Checked(nicePlayer.bFlagDisplayWeaponProgress); - break; - case ch_ShowHLMessages: - ch_ShowHLMessages.Checked(nicePlayer.bFlagShowHLMessages); - break; - case ch_CancelFire: - ch_CancelFire.Checked(nicePlayer.bRelCancelByFire); - break; - case ch_CancelSwitching: - ch_CancelSwitching.Checked(nicePlayer.bRelCancelBySwitching); - break; - case ch_CancelNades: - ch_CancelNades.Checked(nicePlayer.bRelCancelByNades); - break; - case ch_CancelAiming: - ch_CancelAiming.Checked(nicePlayer.bRelCancelByAiming); - break; - case ch_ReloadWontWork: - ch_ReloadWontWork.Checked(nicePlayer.bFlagUseServerReload); - break; + if (nicePlayer == none) + return; + + switch(sender) + { + case ch_WeapManagement: + ch_WeapManagement.Checked(nicePlayer.bNiceWeaponManagement); + break; + case ch_AltSwitches: + ch_AltSwitches.Checked(nicePlayer.bFlagAltSwitchesModes); + break; + case ch_DispCounters: + ch_DispCounters.Checked(nicePlayer.bFlagDisplayCounters); + break; + case ch_DisWeapProgress: + ch_DisWeapProgress.Checked(nicePlayer.bFlagDisplayWeaponProgress); + break; + case ch_ShowHLMessages: + ch_ShowHLMessages.Checked(nicePlayer.bFlagShowHLMessages); + break; + case ch_CancelFire: + ch_CancelFire.Checked(nicePlayer.bRelCancelByFire); + break; + case ch_CancelSwitching: + ch_CancelSwitching.Checked(nicePlayer.bRelCancelBySwitching); + break; + case ch_CancelNades: + ch_CancelNades.Checked(nicePlayer.bRelCancelByNades); + break; + case ch_CancelAiming: + ch_CancelAiming.Checked(nicePlayer.bRelCancelByAiming); + break; + case ch_ReloadWontWork: + ch_ReloadWontWork.Checked(nicePlayer.bFlagUseServerReload); + break; + case mo_ZedHPBars: + mo_ZedHPBars.SetIndex(nicePlayer.ZedHPBarStyle); + break; } } -function InternalOnChange(GUIComponent Sender){ + +function InternalOnChange(GUIComponent Sender) +{ local NicePlayerController nicePlayer; - super.InternalOnChange(Sender); + nicePlayer = NicePlayerController(PlayerOwner()); - if(nicePlayer == none) - return; - switch(sender){ - case ch_WeapManagement: - nicePlayer.bNiceWeaponManagement = ch_WeapManagement.IsChecked(); - break; - case ch_AltSwitches: - nicePlayer.ServerSetAltSwitchesModes(ch_AltSwitches.IsChecked()); - break; - case ch_DispCounters: - nicePlayer.ServerSetDisplayCounters(ch_DispCounters.IsChecked()); - break; - case ch_DisWeapProgress: - nicePlayer.ServerSetDisplayWeaponProgress(ch_DisWeapProgress.IsChecked()); - break; - case ch_ShowHLMessages: - nicePlayer.ServerSetHLMessages(ch_ShowHLMessages.IsChecked()); - break; - case ch_CancelFire: - nicePlayer.bRelCancelByFire = ch_CancelFire.IsChecked(); - break; - case ch_CancelSwitching: - nicePlayer.bRelCancelBySwitching = ch_CancelSwitching.IsChecked(); - break; - case ch_CancelNades: - nicePlayer.bRelCancelByNades = ch_CancelNades.IsChecked(); - break; - case ch_CancelAiming: - nicePlayer.bRelCancelByAiming = ch_CancelAiming.IsChecked(); - break; - case ch_ReloadWontWork: - nicePlayer.ServerSetUseServerReload(ch_ReloadWontWork.IsChecked()); - break; + if (nicePlayer == none) + return; + + switch(sender) + { + case ch_WeapManagement: + nicePlayer.bNiceWeaponManagement = ch_WeapManagement.IsChecked(); + break; + case ch_AltSwitches: + nicePlayer.ServerSetAltSwitchesModes(ch_AltSwitches.IsChecked()); + break; + case ch_DispCounters: + nicePlayer.ServerSetDisplayCounters(ch_DispCounters.IsChecked()); + break; + case ch_DisWeapProgress: + nicePlayer.ServerSetDisplayWeaponProgress(ch_DisWeapProgress.IsChecked()); + break; + case ch_ShowHLMessages: + nicePlayer.ServerSetHLMessages(ch_ShowHLMessages.IsChecked()); + break; + case ch_CancelFire: + nicePlayer.bRelCancelByFire = ch_CancelFire.IsChecked(); + break; + case ch_CancelSwitching: + nicePlayer.bRelCancelBySwitching = ch_CancelSwitching.IsChecked(); + break; + case ch_CancelNades: + nicePlayer.bRelCancelByNades = ch_CancelNades.IsChecked(); + break; + case ch_CancelAiming: + nicePlayer.bRelCancelByAiming = ch_CancelAiming.IsChecked(); + break; + case ch_ReloadWontWork: + nicePlayer.ServerSetUseServerReload(ch_ReloadWontWork.IsChecked()); + break; + case mo_ZedHPBars: + nicePlayer.ZedHPBarStyle = mo_ZedHPBars.GetIndex(); + break; } nicePlayer.ClientSaveConfig(); } + // size = (x=0.0125, y=0.0) ; (w=1.0, h=0.865) // tab order defaultproperties { - Begin Object Class=moCheckBox Name=WeaponManagement - CaptionWidth=0.955000 - Caption="Nice weapon management" - ComponentClassName="ScrnBalanceSrv.ScrnGUICheckBoxButton" - OnCreateComponent=WeaponManagement.InternalOnCreateComponent - IniOption="@Internal" - Hint="If checked, NicePack will use it's own system to manage weapon switching" - WinTop=0.050000 - WinLeft=0.012500 - WinWidth=0.278000 - TabOrder=4 - OnChange=NiceGUISettings.InternalOnChange - OnLoadINI=NiceGUISettings.InternalOnLoadINI - End Object - ch_WeapManagement=moCheckBox'NicePack.NiceGUISettings.WeaponManagement' - - Begin Object Class=moCheckBox Name=AltSwitches - CaptionWidth=0.955000 - Caption="Alt fire switches modes" - ComponentClassName="ScrnBalanceSrv.ScrnGUICheckBoxButton" - OnCreateComponent=AltSwitches.InternalOnCreateComponent - IniOption="@Internal" - Hint="Assault-rifle only; if enabled - alt fire button switches between fire modes, otherwise - acts as an alt fire" - WinTop=0.100000 - WinLeft=0.012500 - WinWidth=0.278000 - TabOrder=6 - OnChange=NiceGUISettings.InternalOnChange - OnLoadINI=NiceGUISettings.InternalOnLoadINI - End Object - ch_AltSwitches=moCheckBox'NicePack.NiceGUISettings.AltSwitches' - - Begin Object Class=moCheckBox Name=DispCounters - CaptionWidth=0.955000 - Caption="Display counters" - ComponentClassName="ScrnBalanceSrv.ScrnGUICheckBoxButton" - OnCreateComponent=DispCounters.InternalOnCreateComponent - IniOption="@Internal" - Hint="Toggles display of the various counters used by skills" - WinTop=0.150000 - WinLeft=0.012500 - WinWidth=0.278000 - TabOrder=7 - OnChange=NiceGUISettings.InternalOnChange - OnLoadINI=NiceGUISettings.InternalOnLoadINI - End Object - ch_DispCounters=moCheckBox'NicePack.NiceGUISettings.DispCounters' - - Begin Object Class=moCheckBox Name=DispWeapProgress - CaptionWidth=0.955000 - Caption="Display weapon progress" - ComponentClassName="ScrnBalanceSrv.ScrnGUICheckBoxButton" - OnCreateComponent=DispWeapProgress.InternalOnCreateComponent - IniOption="@Internal" - Hint="Displays weapon progress rate, however it's defined by a skill that's using this functionality" - WinTop=0.200000 - WinLeft=0.012500 - WinWidth=0.278000 - TabOrder=8 - OnChange=NiceGUISettings.InternalOnChange - OnLoadINI=NiceGUISettings.InternalOnLoadINI - End Object - ch_DisWeapProgress=moCheckBox'NicePack.NiceGUISettings.DispWeapProgress' - - Begin Object Class=moCheckBox Name=ShowHLMessages - CaptionWidth=0.955000 - Caption="Show Hardcore Level messages" - ComponentClassName="ScrnBalanceSrv.ScrnGUICheckBoxButton" - OnCreateComponent=ShowHLMessages.InternalOnCreateComponent - IniOption="@Internal" - Hint="Enable to be notified each time Hardcore Level is changed" - WinTop=0.300000 - WinLeft=0.012500 - WinWidth=0.278000 - TabOrder=9 - OnChange=NiceGUISettings.InternalOnChange - OnLoadINI=NiceGUISettings.InternalOnLoadINI - End Object - ch_ShowHLMessages=moCheckBox'NicePack.NiceGUISettings.ShowHLMessages' - - Begin Object Class=moCheckBox Name=CancelFire - CaptionWidth=0.955000 - Caption="Cancel reload by shooting" - ComponentClassName="ScrnBalanceSrv.ScrnGUICheckBoxButton" - OnCreateComponent=CancelFire.InternalOnCreateComponent - IniOption="@Internal" - Hint="If checked, you'll be able to cancel reload of converted weapons by shooting (when you have ammo)" - WinTop=0.050000 - WinLeft=0.517500 - WinWidth=0.287000 - TabOrder=11 - OnChange=NiceGUISettings.InternalOnChange - OnLoadINI=NiceGUISettings.InternalOnLoadINI - End Object - ch_CancelFire=moCheckBox'NicePack.NiceGUISettings.CancelFire' - - Begin Object Class=moCheckBox Name=CancelSwitching - CaptionWidth=0.955000 - Caption="Cancel reload by switching weapons" - ComponentClassName="ScrnBalanceSrv.ScrnGUICheckBoxButton" - OnCreateComponent=CancelSwitching.InternalOnCreateComponent - IniOption="@Internal" - Hint="If checked, you'll be able to cancel reload of converted weapons by switching to different weapon" - WinTop=0.100000 - WinLeft=0.517500 - WinWidth=0.287000 - TabOrder=12 - OnChange=NiceGUISettings.InternalOnChange - OnLoadINI=NiceGUISettings.InternalOnLoadINI - End Object - ch_CancelSwitching=moCheckBox'NicePack.NiceGUISettings.CancelSwitching' - - Begin Object Class=moCheckBox Name=CancelNades - CaptionWidth=0.955000 - Caption="Cancel reload by throwing grenades" - ComponentClassName="ScrnBalanceSrv.ScrnGUICheckBoxButton" - OnCreateComponent=CancelNades.InternalOnCreateComponent - IniOption="@Internal" - Hint="If checked, you'll be able to cancel reload of converted weapons by throwing a grenade" - WinTop=0.150000 - WinLeft=0.517500 - WinWidth=0.287000 - TabOrder=13 - OnChange=NiceGUISettings.InternalOnChange - OnLoadINI=NiceGUISettings.InternalOnLoadINI - End Object - ch_CancelNades=moCheckBox'NicePack.NiceGUISettings.CancelNades' - - Begin Object Class=moCheckBox Name=CancelAiming - CaptionWidth=0.955000 - Caption="Cancel reload by aiming" - ComponentClassName="ScrnBalanceSrv.ScrnGUICheckBoxButton" - OnCreateComponent=CancelAiming.InternalOnCreateComponent - IniOption="@Internal" - Hint="If checked, you'll be able to cancel reload of converted weapons by going into iron sights (when you have ammo)" - WinTop=0.200000 - WinLeft=0.517500 - WinWidth=0.287000 - TabOrder=14 - OnChange=NiceGUISettings.InternalOnChange - OnLoadINI=NiceGUISettings.InternalOnLoadINI - End Object - ch_CancelAiming=moCheckBox'NicePack.NiceGUISettings.CancelAiming' - - Begin Object Class=moCheckBox Name=ServerReload - CaptionWidth=0.955000 - Caption="My reload doesn't work" - ComponentClassName="ScrnBalanceSrv.ScrnGUICheckBoxButton" - OnCreateComponent=ServerReload.InternalOnCreateComponent - IniOption="@Internal" - Hint="Check this option ONLY in case converted weapons don't reload at all for you; this option should fix the problem, but then latency will affect both reload and active reload" - WinTop=0.250000 - WinLeft=0.517500 - WinWidth=0.287000 - TabOrder=15 - OnChange=NiceGUISettings.InternalOnChange - OnLoadINI=NiceGUISettings.InternalOnLoadINI - End Object - ch_ReloadWontWork=moCheckBox'NicePack.NiceGUISettings.ServerReload' - + // GENERAL WEAPON SETTINGS Begin Object Class=GUISectionBackground Name=WEAPBG Caption="General weapon settings" WinTop=0.012500 WinWidth=0.495000 WinHeight=0.287500 RenderWeight=0.100100 - OnPreDraw=WeaponsBG.InternalPreDraw + // OnPreDraw=WeaponsBG.InternalPreDraw + OnPreDraw=WEAPBG.InternalPreDraw End Object - bg_WEAP=GUISectionBackground'NicePack.NiceGUISettings.WEAPBG' + bg_WEAP=WEAPBG + Begin Object Class=moCheckBox Name=WeaponManagement + Caption="Nice weapon management" + ComponentClassName="NicePack.NiceGUICheckBoxButton" + OnCreateComponent=WeaponManagement.InternalOnCreateComponent + IniOption="@Internal" + Hint="If checked, NicePack will use it's own system to manage weapon switching" + OnChange=NiceGUISettings.InternalOnChange + OnLoadINI=NiceGUISettings.InternalOnLoadINI + End Object + ch_WeapManagement=WeaponManagement + + Begin Object Class=moCheckBox Name=AltSwitches + Caption="Alt fire switches modes" + ComponentClassName="NicePack.NiceGUICheckBoxButton" + OnCreateComponent=AltSwitches.InternalOnCreateComponent + IniOption="@Internal" + Hint="Assault-rifle only; if enabled - alt fire button switches between fire modes, otherwise - acts as an alt fire" + OnChange=NiceGUISettings.InternalOnChange + OnLoadINI=NiceGUISettings.InternalOnLoadINI + End Object + ch_AltSwitches=AltSwitches + + Begin Object Class=moCheckBox Name=DispCounters + Caption="Display counters" + ComponentClassName="NicePack.NiceGUICheckBoxButton" + OnCreateComponent=DispCounters.InternalOnCreateComponent + IniOption="@Internal" + Hint="Toggles display of the various counters used by skills" + OnChange=NiceGUISettings.InternalOnChange + OnLoadINI=NiceGUISettings.InternalOnLoadINI + End Object + ch_DispCounters=DispCounters + + Begin Object Class=moCheckBox Name=DispWeapProgress + Caption="Display weapon progress" + ComponentClassName="NicePack.NiceGUICheckBoxButton" + OnCreateComponent=DispWeapProgress.InternalOnCreateComponent + IniOption="@Internal" + Hint="Displays weapon progress rate, however it's defined by a skill that's using this functionality" + OnChange=NiceGUISettings.InternalOnChange + OnLoadINI=NiceGUISettings.InternalOnLoadINI + End Object + ch_DisWeapProgress=DispWeapProgress + + Begin Object Class=moCheckBox Name=ShowHLMessages + Caption="Show Hardcore Level messages" + ComponentClassName="NicePack.NiceGUICheckBoxButton" + OnCreateComponent=ShowHLMessages.InternalOnCreateComponent + IniOption="@Internal" + Hint="Enable to be notified each time Hardcore Level is changed" + OnChange=NiceGUISettings.InternalOnChange + OnLoadINI=NiceGUISettings.InternalOnLoadINI + End Object + ch_ShowHLMessages=ShowHLMessages + + // WEAPON RELOAD SETTINGS Begin Object Class=GUISectionBackground Name=RELOADBG Caption="Weapon reload settings" WinTop=0.012500 @@ -275,7 +218,87 @@ defaultproperties WinWidth=0.495000 WinHeight=0.287500 RenderWeight=0.100100 - OnPreDraw=WeaponsBG.InternalPreDraw + // OnPreDraw=WeaponsBG.InternalPreDraw + OnPreDraw=RELOADBG.InternalPreDraw End Object - bg_RELOAD=GUISectionBackground'NicePack.NiceGUISettings.RELOADBG' -} + bg_RELOAD=RELOADBG + + Begin Object Class=moCheckBox Name=CancelFire + Caption="Cancel reload by shooting" + ComponentClassName="NicePack.NiceGUICheckBoxButton" + OnCreateComponent=CancelFire.InternalOnCreateComponent + IniOption="@Internal" + Hint="If checked, you'll be able to cancel reload of converted weapons by shooting (when you have ammo)" + OnChange=NiceGUISettings.InternalOnChange + OnLoadINI=NiceGUISettings.InternalOnLoadINI + End Object + ch_CancelFire=CancelFire + + Begin Object Class=moCheckBox Name=CancelSwitching + Caption="Cancel reload by switching weapons" + ComponentClassName="NicePack.NiceGUICheckBoxButton" + OnCreateComponent=CancelSwitching.InternalOnCreateComponent + IniOption="@Internal" + Hint="If checked, you'll be able to cancel reload of converted weapons by switching to different weapon" + OnChange=NiceGUISettings.InternalOnChange + OnLoadINI=NiceGUISettings.InternalOnLoadINI + End Object + ch_CancelSwitching=CancelSwitching + + Begin Object Class=moCheckBox Name=CancelNades + Caption="Cancel reload by throwing grenades" + ComponentClassName="NicePack.NiceGUICheckBoxButton" + OnCreateComponent=CancelNades.InternalOnCreateComponent + IniOption="@Internal" + Hint="If checked, you'll be able to cancel reload of converted weapons by throwing a grenade" + OnChange=NiceGUISettings.InternalOnChange + OnLoadINI=NiceGUISettings.InternalOnLoadINI + End Object + ch_CancelNades=CancelNades + + Begin Object Class=moCheckBox Name=CancelAiming + Caption="Cancel reload by aiming" + ComponentClassName="NicePack.NiceGUICheckBoxButton" + OnCreateComponent=CancelAiming.InternalOnCreateComponent + IniOption="@Internal" + Hint="If checked, you'll be able to cancel reload of converted weapons by going into iron sights (when you have ammo)" + OnChange=NiceGUISettings.InternalOnChange + OnLoadINI=NiceGUISettings.InternalOnLoadINI + End Object + ch_CancelAiming=CancelAiming + + Begin Object Class=moCheckBox Name=ServerReload + Caption="My reload doesn't work" + ComponentClassName="NicePack.NiceGUICheckBoxButton" + OnCreateComponent=ServerReload.InternalOnCreateComponent + IniOption="@Internal" + Hint="Check this option ONLY in case converted weapons don't reload at all for you; this option should fix the problem, but then latency will affect both reload and active reload" + OnChange=NiceGUISettings.InternalOnChange + OnLoadINI=NiceGUISettings.InternalOnLoadINI + End Object + ch_ReloadWontWork=ServerReload + + // RANDOM SETTINGS + Begin Object Class=GUISectionBackground Name=randbg + Caption="Random settings" + WinTop=0.300000 + WinWidth=0.495000 + WinHeight=0.287500 + WinLeft=0.505000 + RenderWeight=0.100100 + // OnPreDraw=WeaponsBG.InternalPreDraw + OnPreDraw=randbg.InternalPreDraw + End Object + bg_RANDOM=randbg + + Begin Object class=moComboBox Name=zedhbarpmethod + bReadOnly=true + CaptionWidth=0.000000 + Caption="Zed health bars" + Hint="Choose what health bars you want to see" + OnCreateComponent=zedhbarpmethod.InternalOnCreateComponent + OnChange=NiceGUISettings.InternalOnChange + OnLoadINI=NiceGUISettings.InternalOnLoadINI + End Object + mo_ZedHPBars=zedhbarpmethod +} \ No newline at end of file diff --git a/sources/GUI/NiceInteraction.uc b/sources/GUI/NiceInteraction.uc index f6f7e11..93b4360 100644 --- a/sources/GUI/NiceInteraction.uc +++ b/sources/GUI/NiceInteraction.uc @@ -1,8 +1,10 @@ class NiceInteraction extends Interaction dependson(NicePack) dependson(NiceAbilityManager); + #exec OBJ LOAD FILE=KillingFloorHUD.utx #exec OBJ LOAD FILE=KillingFloor2HUD.utx + var NicePack NicePackMutator; var Material bleedIcon, poisonIcon; var Texture greenBar, redBar; @@ -12,141 +14,271 @@ var float size; var float InventoryBoxWidth; var float InventoryBoxHeight; var float BorderSize; -event NotifyLevelChange(){ - Master.RemoveInteraction(self); + +// weapons list for `MultiTasker` skill +struct WeaponProgressDisplay +{ + var class weapClass; + var float progress; + var bool bShowCounter; + var int counter; +}; +var array niceWeapProgressSet; + +event NotifyLevelChange() +{ + Master.RemoveInteraction(self); } -function RegisterMutator(NicePack activePack){ - NicePackMutator = activePack; + +function RegisterMutator(NicePack activePack) +{ + NicePackMutator = activePack; } -function bool isPoisoned(ScrnHumanPawn pwn){ + +final private function bool bIsPoisoned(NiceHumanPawn pwn) +{ + local Inventory I; + + if (pwn.Inventory != none) + { + for (I = pwn.Inventory; I != none; I = I.Inventory) + { + if (I.IsA('MeanPoisonInventory')) + return true; + } + } + return false; +} + +final private function bool bIsBleeding(NiceHumanPawn pwn) +{ + local Inventory I; + + if (pwn.Inventory != none) + { + for (I = pwn.Inventory; I != none; I = I.Inventory) + { + if (I.IsA('MeanBleedInventory')) + return true; + } + } + return false; +} + +final private function UpdateNiceWeapProgressSet(NiceHumanPawn pwn) +{ local Inventory I; - if(pwn.Inventory != none) - for(I = pwn.Inventory; I != none; I = I.Inventory) - if(I != none && MeanPoisonInventory(I) != none) - return true; - return false; + local NiceWeapon niceWeap; + local WeaponProgressDisplay newProgress; + + // clean this! + niceWeapProgressSet.Length = 0; + + if (pwn.Inventory != none) + { + for (I = pwn.Inventory; I != none; I = I.Inventory) + { + niceWeap = NiceWeapon(I); + if (niceWeap != none && niceWeap != pwn.weapon && !niceWeap.IsMagazineFull()) + { + newProgress.weapClass = niceWeap.class; + newProgress.progress = niceWeap.holsteredCompletition; + newProgress.bShowCounter = true; + newProgress.counter = niceWeap.GetMagazineAmmo(); + + niceWeapProgressSet[niceWeapProgressSet.Length] = newProgress; + } + } + } } -function PostRender(Canvas C){ + +function PostRender(Canvas C) +{ local int i; local NicePack niceMutator; local NiceHumanPawn nicePawn; local class niceVet; - local MeanReplicationInfo szRI; local NiceWeapon niceWeap; local NicePlayerController nicePlayer; local ScrnHUD scrnHUDInstance; + // TODO maybe use scrnhud? + // local HUDKillingFloor kfHud; local Texture barTexture; local int x, y, center, barWidth, offset; local int missesWidth, missesHeight, missesSpace; local int missesX, missesY; - if(C == none) return; - if(C.ViewPort == none) return; - if(C.ViewPort.Actor == none) return; - if(C.ViewPort.Actor.Pawn == none) return; + // local Vector CamPos, ViewDir; + // local Rotator CamRot; + // local float OffsetX, BarLength, BarHeight, XL, YL, posY; + + if (C == none || C.ViewPort == none || C.ViewPort.Actor == none || C.ViewPort.Actor.Pawn == none) + return; + nicePlayer = NicePlayerController(C.ViewPort.Actor.Pawn.Controller); niceWeap = NiceWeapon(C.ViewPort.Actor.Pawn.Weapon); - if(nicePlayer == none) + if (nicePlayer == none) return; - scrnHUDInstance = ScrnHUD(nicePlayer.myHUD); - //// Draw bleed and poison icons - szRI = class'MeanReplicationInfo'.static.findSZri(ViewportOwner.Actor.PlayerReplicationInfo); - offset = 4; - if(szRI != none){ - if(szRI.isBleeding){ - x = C.ClipX * 0.007; - y = C.ClipY * 0.93 - size * offset; - C.SetPos(x, y); - C.DrawTile(bleedIcon, size, size, 0, 0, bleedIcon.MaterialUSize(), bleedIcon.MaterialVSize()); - } - offset++; - if(isPoisoned(ScrnHumanPawn(C.ViewPort.Actor.Pawn))){ - x = C.ClipX * 0.007; - y = C.ClipY * 0.93 - size * offset; - C.SetPos(x, y); - C.DrawTile(poisonIcon, size, size, 0, 0, poisonIcon.MaterialUSize(), poisonIcon.MaterialVSize()); - } - } - if(niceWeap != none && niceWeap.bShowSecondaryCharge && scrnHUDInstance != none){ - C.ColorModulate.X = 1; - C.ColorModulate.Y = 1; - C.ColorModulate.Z = 1; - C.ColorModulate.W = scrnHUDInstance.HudOpacity / 255; - if(!scrnHUDInstance.bLightHud) - scrnHUDInstance.DrawSpriteWidget(C, scrnHUDInstance.SecondaryClipsBG); - scrnHUDInstance.DrawSpriteWidget(C, scrnHUDInstance.SecondaryClipsIcon); - scrnHUDInstance.SecondaryClipsDigits.value = niceWeap.secondaryCharge; - scrnHUDInstance.DrawNumericWidget(C, scrnHUDInstance.SecondaryClipsDigits, scrnHUDInstance.DigitsSmall); - } - niceMutator = class'NicePack'.static.Myself(C.ViewPort.Actor.Pawn.Level); - if(niceMutator == none) - return; - //// Draw counters - if(nicePlayer != none && nicePlayer.bFlagDisplayCounters){ - x = C.ClipX * 0.5 - (64 + 2) * niceMutator.GetVisibleCountersAmount(); - y = C.ClipY * 0.01; - for(i = 0;i < niceMutator.niceCounterSet.Length;i ++) - if(niceMutator.niceCounterSet[i].value != 0 || niceMutator.niceCounterSet[i].bShowZeroValue){ - DrawCounter(C, niceMutator.niceCounterSet[i], x, y, C.ViewPort.Actor.Pawn.PlayerReplicationInfo.Team); - x += 128 + 4; - } - } - //// Draw weapons progress bars - if(nicePlayer != none && nicePlayer.bFlagDisplayWeaponProgress){ - x = C.ClipX - InventoryBoxWidth * C.ClipX - 5; - y = C.ClipY * 0.5 - 0.5 * (InventoryBoxHeight * C.ClipX + 4) * niceMutator.niceWeapProgressSet.Length; - for(i = 0;i < niceMutator.niceWeapProgressSet.Length;i ++){ - DrawWeaponProgress(C, niceMutator.niceWeapProgressSet[i], x, y, - C.ViewPort.Actor.Pawn.PlayerReplicationInfo.Team); - y += (InventoryBoxHeight * C.ClipX + 4); - } - } - //// Draw invincibility bar + nicePawn = NiceHumanPawn(nicePlayer.pawn); - if(nicePawn != none && nicePawn.invincibilityTimer != 0.0){ - C.SetDrawColor(255, 255, 255); - if(nicePawn.invincibilityTimer > 0) - barTexture = greenBar; - else - barTexture = redBar; - center = C.ClipX * 0.5; - y = C.ClipY * 0.75; - barWidth = C.ClipX * 0.2; - niceVet = class'NiceVeterancyTypes'.static. - GetVeterancy(nicePawn.PlayerReplicationInfo); - if(niceVet != none){ - if(nicePawn.invincibilityTimer > 0){ - barWidth *= nicePawn.invincibilityTimer - / niceVet.static.GetInvincibilityDuration(nicePawn.KFPRI); - } - else{ - barWidth *= nicePawn.invincibilityTimer / - class'NiceSkillZerkGunzerker'.default.cooldown; - } - } - else - barWidth = 0; - x = center - (barWidth / 2); - C.SetPos(x, y); - C.DrawTile(barTexture, barWidth, 32, 0, 0, barTexture.MaterialUSize(), barTexture.MaterialVSize()); - if(nicePawn.safeMeleeMisses <= 0) - return; - missesSpace = 10;//64x64 => 16x16 - missesHeight = 16; - missesWidth = nicePawn.safeMeleeMisses * 16 - + (nicePawn.safeMeleeMisses - 1) * missesSpace; - missesX = center - (missesWidth / 2); - missesY = y + (32 - missesHeight) * 0.5; - for(i = 0;i < nicePawn.safeMeleeMisses;i ++){ - C.SetPos(missesX + i * (16 + missesSpace), missesY); - C.DrawTile(shield, 16, 16, 0, 0, shield.MaterialUSize(), shield.MaterialVSize()); - } + + //// Draw bleed and poison icons for OWNER + offset = 4; + // BLEED!!! + if (bIsBleeding(nicePawn)) + { + x = C.ClipX * 0.007; + y = C.ClipY * 0.93 - size * offset; + C.SetPos(x, y); + C.DrawTile(bleedIcon, size, size, 0, 0, bleedIcon.MaterialUSize(), bleedIcon.MaterialVSize()); } - // Draw cooldowns - if(nicePlayer.abilityManager == none) + offset++; + // POISON!!! + if (bIsPoisoned(nicePawn)) + { + x = C.ClipX * 0.007; + y = C.ClipY * 0.93 - size * offset; + C.SetPos(x, y); + C.DrawTile(poisonIcon, size, size, 0, 0, poisonIcon.MaterialUSize(), poisonIcon.MaterialVSize()); + } + + // TODO draw bleed and poison icons for TEAMMATES + // C.GetCAmeraLocation(CamPos, CamRot); + // ViewDir = vector(CamRot); + // kfHud = HUDKillingFloor(ViewportOwner.Actor.myHUD); + // OffsetX = (36.f * kfHud.default.VeterancyMatScaleFactor * 0.6) - (kfHud.default.HealthIconSize + 2.0); + // BarLength = FMin(kfHud.default.BarLength * (float(C.SizeX) / 1024.f), kfHud.default.BarLength); + // BarHeight = FMin(kfHud.default.BarHeight * (float(C.SizeX) / 1024.f), kfHud.default.BarHeight); + // for (i = 0; i < kfHUD.PlayerInfoPawns.Length; i++) + // { + // if (kfHUD.PlayerInfoPawns[i].Pawn != none && kfHUD.PlayerInfoPawns[i].Pawn.Health > 0 && + // (kfHUD.PlayerInfoPawns[i].Pawn.Location - kfHUD.PawnOwner.Location) dot ViewDir > 0.8 && + // kfHUD.PlayerInfoPawns[i].RendTime > ViewportOwner.Actor.Level.TimeSeconds) + // { + // C.StrLen(Left(kfHUD.PlayerInfoPawns[i].Pawn.PlayerReplicationInfo.PlayerName, 16), XL, YL); + // if (kfHUD.PlayerInfoPawns[i].Pawn.ShieldStrength <= 0) + // { + // posY = (kfHUD.PlayerInfoPawns[i].PlayerInfoScreenPosY - YL) - 2.75 * BarHeight - + // kfHUD.default.ArmorIconSize * 0.5; + // } + // else + // { + // posY = (kfHUD.PlayerInfoPawns[i].PlayerInfoScreenPosY - YL) - 3.8 * BarHeight - + // kfHUD.default.ArmorIconSize * 0.5; + // } + // offset = 0; + + // if (bIsBleeding(ScrnHumanPawn(kfHUD.PlayerInfoPawns[i].Pawn))) + // { + // C.SetPos(kfHUD.PlayerInfoPawns[i].PlayerInfoScreenPosX - OffsetX - 0.15 * BarLength - + // kfHUD.default.ArmorIconSize - 2.0, posY); + // C.DrawTileScaled(bleedIcon, 0.1875, 0.1875); + // } + // if (bIsPoisoned(ScrnHumanPawn(kfHUD.PlayerInfoPawns[i].Pawn))) + // { + // C.SetPos(kfHUD.PlayerInfoPawns[i].PlayerInfoScreenPosX - OffsetX + 0.15 * BarLength - + // kfHUD.default.ArmorIconSize - 2.0, posY); + // C.DrawTileScaled(poisonIcon, 0.1875, 0.1875); + // } + // } + // } + + //// Draw weapons progress bars + // at first update weapon info + UpdateNiceWeapProgressSet(nicePawn); + + if (nicePawn != none && class'NiceVeterancyTypes'.static.hasSkill(nicePlayer, class'NiceSkillEnforcerMultitasker') + && nicePlayer.bFlagDisplayWeaponProgress && niceWeapProgressSet.length > 0) + { + x = C.ClipX - InventoryBoxWidth * C.ClipX - 5; + y = C.ClipY * 0.5 - 0.5 * (InventoryBoxHeight * C.ClipX + 4) * niceWeapProgressSet.Length; + + for (i = 0; i < niceWeapProgressSet.Length; i++) + { + DrawWeaponProgress(C, niceWeapProgressSet[i], x, y, nicePawn.PlayerReplicationInfo.Team); + y += (InventoryBoxHeight * C.ClipX + 4); + } + } + + scrnHUDInstance = ScrnHUD(nicePlayer.myHUD); + + if (niceWeap != none && niceWeap.bShowSecondaryCharge && scrnHUDInstance != none) + { + C.ColorModulate.X = 1; + C.ColorModulate.Y = 1; + C.ColorModulate.Z = 1; + C.ColorModulate.W = scrnHUDInstance.HudOpacity / 255; + if (!scrnHUDInstance.bLightHud) + scrnHUDInstance.DrawSpriteWidget(C, scrnHUDInstance.SecondaryClipsBG); + scrnHUDInstance.DrawSpriteWidget(C, scrnHUDInstance.SecondaryClipsIcon); + scrnHUDInstance.SecondaryClipsDigits.value = niceWeap.secondaryCharge; + scrnHUDInstance.DrawNumericWidget(C, scrnHUDInstance.SecondaryClipsDigits, scrnHUDInstance.DigitsSmall); + } + + //// Draw invincibility bar + if (nicePawn != none && nicePawn.invincibilityTimer != 0.0) + { + C.SetDrawColor(255, 255, 255); + if (nicePawn.invincibilityTimer > 0) + barTexture = greenBar; + else + barTexture = redBar; + center = C.ClipX * 0.5; + y = C.ClipY * 0.75; + barWidth = C.ClipX * 0.2; + niceVet = class'NiceVeterancyTypes'.static. + GetVeterancy(nicePawn.PlayerReplicationInfo); + if (niceVet != none) + { + if (nicePawn.invincibilityTimer > 0) + barWidth *= nicePawn.invincibilityTimer / niceVet.static.GetInvincibilityDuration(nicePawn.KFPRI); + else + barWidth *= nicePawn.invincibilityTimer / class'NiceSkillZerkGunzerker'.default.cooldown; + } + else + barWidth = 0; + + x = center - (barWidth / 2); + C.SetPos(x, y); + C.DrawTile(barTexture, barWidth, 32, 0, 0, barTexture.MaterialUSize(), barTexture.MaterialVSize()); + if (nicePawn.safeMeleeMisses <= 0) + return; + missesSpace = 10; // 64x64 => 16x16 + missesHeight = 16; + missesWidth = nicePawn.safeMeleeMisses * 16 + (nicePawn.safeMeleeMisses - 1) * missesSpace; + missesX = center - (missesWidth / 2); + missesY = y + (32 - missesHeight) * 0.5; + + for (i = 0; i < nicePawn.safeMeleeMisses; i++) + { + C.SetPos(missesX + i * (16 + missesSpace), missesY); + C.DrawTile(shield, 16, 16, 0, 0, shield.MaterialUSize(), shield.MaterialVSize()); + } + } + + //// Draw cooldowns + if (nicePlayer.abilityManager == none) return; - for(i = 0;i < nicePlayer.abilityManager.currentAbilitiesAmount;i ++) + for (i = 0; i < nicePlayer.abilityManager.currentAbilitiesAmount; i++) DrawAbilityCooldown(C, i); + + //// Draw counters + niceMutator = class'NicePack'.static.Myself(nicePawn.Level); + + if (niceMutator != none && nicePlayer != none && nicePlayer.bFlagDisplayCounters) + { + x = C.ClipX * 0.5 - (64 + 2) * niceMutator.GetVisibleCountersAmount(); + y = C.ClipY * 0.01; + for (i = 0; i < niceMutator.niceCounterSet.Length; i++) + { + if (niceMutator.niceCounterSet[i].value != 0 || niceMutator.niceCounterSet[i].bShowZeroValue) + { + DrawCounter(C, niceMutator.niceCounterSet[i], x, y, C.ViewPort.Actor.Pawn.PlayerReplicationInfo.Team); + x += 128 + 4; + } + } + } } + function DrawCounter(Canvas C, NicePack.CounterDisplay counter, int x, int y, TeamInfo team){ local float borderSpace; local Texture textureToDraw; @@ -272,15 +404,18 @@ function DrawCalibrationStars(Canvas C){ x += 32 + 16; } } -function DrawWeaponProgress(Canvas C, NicePack.WeaponProgressDisplay weapProgress, int x, int y, TeamInfo team){ - local float textWidth, textHeight; + +function DrawWeaponProgress(Canvas C, WeaponProgressDisplay weapProgress, int x, int y, TeamInfo team) +{ + local float textWidth, textHeight; local string textToDraw; local float TempWidth, TempHeight, TempBorder; + TempWidth = InventoryBoxWidth * C.ClipX; TempHeight = InventoryBoxHeight * C.ClipX; TempBorder = BorderSize * C.ClipX; // Draw background bar - if(team.teamIndex == 0) + if (team.teamIndex == 0) C.SetDrawColor(255, 64, 64, 64); else C.SetDrawColor(team.teamColor.R, team.teamColor.G, team.teamColor.B, 64); @@ -304,7 +439,8 @@ function DrawWeaponProgress(Canvas C, NicePack.WeaponProgressDisplay weapProgres C.SetDrawColor(255, 64, 64); else C.SetDrawColor(team.teamColor.R, team.teamColor.G, team.teamColor.B); - if(weapProgress.bShowCounter){ + if(weapProgress.bShowCounter) + { textToDraw = string(weapProgress.counter); C.Font = class'ROHUD'.Static.LoadSmallFontStatic(5); C.TextSize(textToDraw, textWidth, textHeight); @@ -312,51 +448,61 @@ function DrawWeaponProgress(Canvas C, NicePack.WeaponProgressDisplay weapProgres C.DrawText(textToDraw); } } -function bool KeyEvent(EInputKey Key, EInputAction Action, float Delta){ + +function bool KeyEvent(EInputKey Key, EInputAction Action, float Delta) +{ local bool bNeedsReload; local string Alias, LeftPart, RigthPart; local NiceWeapon niceWeap; local NicePlayerController nicePlayer; + // Find controller and current weapon nicePlayer = NicePlayerController(ViewportOwner.Actor); - if(nicePlayer == none) + if (nicePlayer == none) return false; - if(nicePlayer.Pawn != none) + if (nicePlayer.Pawn != none) niceWeap = NiceWeapon(nicePlayer.Pawn.Weapon); // If this is a button press - detect alias - if(Action == IST_Press){ + if (Action == IST_Press) + { // Check for reload command Alias = nicePlayer.ConsoleCommand("KEYBINDING" @ nicePlayer.ConsoleCommand("KEYNAME" @ Key)); - if(nicePlayer.bAdvReloadCheck) + if (nicePlayer.bAdvReloadCheck) bNeedsReload = InStr(Caps(Alias), "RELOADMENOW") > -1 || InStr(Caps(Alias), "RELOADWEAPON") > -1; - if(Divide(Alias, " ", LeftPart, RigthPart)) + if (Divide(Alias, " ", LeftPart, RigthPart)) Alias = LeftPart; - if(Key == IK_MouseWheelUp || Key == IK_MouseWheelDown){ + if (Key == IK_MouseWheelUp || Key == IK_MouseWheelDown) + { nicePlayer.UpdateSelectors(); - if(nicePlayer.hasZeroSelector && nicePlayer.bUsesMouseWheel && nicePlayer.bNiceWeaponManagement){ + if (nicePlayer.hasZeroSelector && nicePlayer.bUsesMouseWheel && nicePlayer.bNiceWeaponManagement) + { nicePlayer.ScrollSelector(0, nicePlayer.bMouseWheelLoops, Key == IK_MouseWheelUp); return true; } } } - // Open trader on movement - if(Alias ~= "MoveForward" || Alias ~= "MoveBackward" || Alias ~= "TurnLeft" || Alias ~= "TurnRight" - || Alias ~= "StrafeLeft" || Alias ~= "StrafeRight" || Alias ~= "Axis"){ - // Open trader if it's a pre-game - if(NicePackMutator.bIsPreGame && NicePackMutator.bInitialTrader && (NicePackMutator.bStillDuringInitTrader || !nicePlayer.bOpenedInitTrader) && nicePlayer.Pawn != none){ - nicePlayer.ShowBuyMenu("Initial trader", KFHumanPawn(nicePlayer.Pawn).MaxCarryWeight); - nicePlayer.bOpenedInitTrader = true; - return true; - } - //nicePlayer.ClientOpenMenu("NicePack.NiceGUIBuyMenu",,"Test stuff",string(15)); + // Open trader on movement if it's a pre-game + if (NicePackMutator.bIsPreGame && NicePackMutator.bInitialTrader && (NicePackMutator.bStillDuringInitTrader || !nicePlayer.bOpenedInitTrader) && nicePlayer.Pawn != none) + { + if (Alias ~= "MoveForward" || Alias ~= "MoveBackward" || Alias ~= "TurnLeft" || Alias ~= "TurnRight" + || Alias ~= "StrafeLeft" || Alias ~= "StrafeRight" || Alias ~= "Axis") + { + // nicePlayer.ClientOpenMenu("NicePack.NiceGUIBuyMenu",,"Test stuff",string(15)); + nicePlayer.ShowBuyMenu("Initial trader", KFHumanPawn(nicePlayer.Pawn).MaxCarryWeight); + nicePlayer.bOpenedInitTrader = true; + return true; + } } + // Reload if we've detected a reload alias in this button's command - if(niceWeap != none && !nicePlayer.bUseServerReload && - (bNeedsReload || Alias ~= "ReloadMeNow" || Alias ~= "ReloadWeapon")) + if (niceWeap != none && !nicePlayer.bUseServerReload && + (bNeedsReload || Alias ~= "ReloadMeNow" || Alias ~= "ReloadWeapon")) niceWeap.ClientReloadMeNow(); + return false; } + defaultproperties { bleedIcon=Texture'NicePackT.MeanZeds.bleedIcon' @@ -369,4 +515,4 @@ defaultproperties InventoryBoxHeight=0.075000 BorderSize=0.005000 bVisible=True -} +} \ No newline at end of file diff --git a/sources/GUI/NiceInvasionLoginMenu.uc b/sources/GUI/NiceInvasionLoginMenu.uc index 0f39160..94e6868 100644 --- a/sources/GUI/NiceInvasionLoginMenu.uc +++ b/sources/GUI/NiceInvasionLoginMenu.uc @@ -8,16 +8,16 @@ function InitComponent(GUIController MyController, GUIComponent MyOwner){ local SRMenuAddition M; local int indexAfterScrn; // Setup panel classes. - Panels[0].ClassName = string(Class'ScrnBalanceSrv.ScrnTab_MidGamePerks'); - Panels[1].ClassName = string(Class'NicePack.NicePanelSkills'); - Panels[2].ClassName = string(Class'SRTab_MidGameVoiceChat'); - Panels[3].ClassName = string(Class'SRTab_MidGameStats'); - Panels[0].Caption = Class'KFInvasionLoginMenu'.Default.Panels[1].Caption; + Panels[0].ClassName = string(class'ScrnTab_MidGamePerks'); + Panels[1].ClassName = string(class'NicePanelSkills'); + Panels[2].ClassName = string(class'SRTab_MidGameVoiceChat'); + Panels[3].ClassName = string(class'SRTab_MidGameStats'); + Panels[0].Caption = class'KFInvasionLoginMenu'.Default.Panels[1].Caption; Panels[1].Caption = "Skills"; - Panels[2].Caption = Class'KFInvasionLoginMenu'.Default.Panels[2].Caption; - Panels[0].Hint = Class'KFInvasionLoginMenu'.Default.Panels[1].Hint; + Panels[2].Caption = class'KFInvasionLoginMenu'.Default.Panels[2].Caption; + Panels[0].Hint = class'KFInvasionLoginMenu'.Default.Panels[1].Hint; Panels[1].Hint = "Customize your perk"; - Panels[2].Hint = Class'KFInvasionLoginMenu'.Default.Panels[2].Hint; + Panels[2].Hint = class'KFInvasionLoginMenu'.Default.Panels[2].Hint; b_Spec.Caption=class'KFTab_MidGamePerks'.default.b_Spec.Caption; b_MatchSetup.Caption=class'KFTab_MidGamePerks'.default.b_MatchSetup.Caption; b_KickVote.Caption=class'KFTab_MidGamePerks'.default.b_KickVote.Caption; @@ -28,18 +28,19 @@ function InitComponent(GUIController MyController, GUIComponent MyOwner){ b_Settings.Caption=class'KFTab_MidGamePerks'.default.b_Settings.Caption; b_Browser.Caption=class'KFTab_MidGamePerks'.default.b_Browser.Caption; // Other panels - Panels[4].ClassName = "ScrnBalanceSrv.ScrnTab_Achievements"; + Panels[4].ClassName = string(class'ScrnTab_Achievements'); Panels[4].Caption = "Achievements"; Panels[4].Hint = "ScrN server-side achievements"; - if(default.bShowScrnMenu){ - Panels[5].ClassName = "ScrnBalanceSrv.ScrnTab_UserSettings"; + if (default.bShowScrnMenu) + { + Panels[5].ClassName = string(class'ScrnTab_UserSettings'); Panels[5].Caption = "ScrN Features"; Panels[5].Hint = "ScrN Balance features, settings and info"; indexAfterScrn = 6; } else - indexAfterScrn = 5; - Panels[indexAfterScrn].ClassName = "NicePack.NiceGUISettings"; + indexAfterScrn = 5; + Panels[indexAfterScrn].ClassName = string(class'NiceGUISettings'); Panels[indexAfterScrn].Caption = "Nice settings"; Panels[indexAfterScrn].Hint = "Settings specific to NicePack mutator"; Panels.Length = indexAfterScrn + 1; diff --git a/sources/GUI/NiceLobbyChat.uc b/sources/GUI/NiceLobbyChat.uc new file mode 100644 index 0000000..1819aec --- /dev/null +++ b/sources/GUI/NiceLobbyChat.uc @@ -0,0 +1,21 @@ +class NiceLobbyChat extends KFLobbyChat; + +function InitComponent(GUIController MyController, GUIComponent MyOwner) +{ + Super(PopupPageBase).InitComponent( MyController, MyOwner ); + + TextColor[0] = class'SayMessagePlus'.default.RedTeamColor; + TextColor[1] = class'SayMessagePlus'.default.BlueTeamColor; + TextColor[2] = class'SayMessagePlus'.default.DrawColor; + + eb_Send.MyEditBox.OnKeyEvent = InternalOnKeyEvent; + lb_Chat.MyScrollText.bNeverFocus=true; +} + +function bool NotifyLevelChange() // Don't keep this one around... +{ + bPersistent = false; + return true; +} + +defaultproperties{} \ No newline at end of file diff --git a/sources/GUI/NiceLobbyMenu.uc b/sources/GUI/NiceLobbyMenu.uc index dc17915..b89db7c 100644 --- a/sources/GUI/NiceLobbyMenu.uc +++ b/sources/GUI/NiceLobbyMenu.uc @@ -1,12 +1,884 @@ -class NiceLobbyMenu extends ScrnLobbyMenu; +// base class, not vanilla +class NiceLobbyMenu extends UT2k4MainPage; + + +// some constants +const MaxPlayersOnList=18; + +// RIGHT part lables +var private string str_Beginner, str_Normal, str_Hard, str_Sui, str_HOE; +var private string str_CurrentMap, str_Difficulty, str_ServerName; +var private string SelectPerkInformationString, PerksDisabledString; +// LEFT part labels +var private string str_LvlAbbr; +var private string WaitingForServerStatus, WaitingForOtherPlayers, AutoCommence; + +// player name-perk-ready boxes +struct FPlayerBoxEntry +{ + var moCheckBox ReadyBox; + var KFPlayerReadyBar PlayerBox; + var GUIImage PlayerPerk; + var GUILabel PlayerVetLabel; + var bool bIsEmpty; +}; +var array PlayerBoxes; + +var bool bShowProfilePage; + +// swapped class +var automated KFLobbyChat t_ChatBox; + +// diffculty / map name label +var automated AltSectionBackground GameInfoBG; +var automated GUILabel CurrentMapLabel; +var automated GUILabel DifficultyLabel; +var automated GUILabel ServerNameLabel; + +// circle and current wave label +var automated GUIImage WaveBG; +var automated GUILabel WaveLabel; + +var automated GUILabel label_TimeOutCounter; +var automated GUILabel PerkClickLabel; + +var bool bAllowClose; + +// Perks / Profile +var() string sChar, sCharD; +var() xUtil.PlayerRecord PlayerRec; + +var automated GUISectionBackground i_BGPerk; + +var automated GUISectionBackground i_BGPerkEffects; +var automated GUIScrollTextBox lb_PerkEffects; + +var automated GUIImage i_Portrait; +var automated GUISectionBackground PlayerPortraitBG; + +var float IconBorder; // Percent of Height to leave blank inside Icon Background +var float ItemBorder; // Percent of Height to leave blank inside Item Background +var float ItemSpacing; // Number of Pixels between Items +var float ProgressBarHeight; // Percent of Height to make Progress Bar's Height +var float TextTopOffset; // Percent of Height to off Progress String from top of Progress Bar(typically negative) +var float IconToInfoSpacing; // Percent of Width to offset Info from right side of Icon + +//var bool bAdminUse; // If you're not an admin, gtfo! + +var int ActivateTimeoutTime; // When was the lobby timeout turned on? +var bool bTimeoutTimeLogged; // Was it already logged once? +var bool bTimedOut; // Have we timed out out successfully? + +var bool bShouldUpdateVeterancy; +var class CurrentVeterancy; +var int CurrentVeterancyLevel; + + +function InitComponent(GUIController MyC, GUIComponent MyO) +{ + super(UT2k4MainPage).InitComponent(MyC, MyO); + + FixPortrait(); + t_ChatBox.FocusInstead = PerkClickLabel; +} + + +event ResolutionChanged(int ResX, int ResY) +{ + super.ResolutionChanged(ResX, ResY); + FixPortrait(); +} + + +// FUCKING TWI, YOUR FUCKING BUGS +final private function bool FixPortrait() +{ + i_Portrait.WinTop = PlayerPortraitBG.RelativeTop(i_Portrait.WinTop); // ActualTop() + 30; + i_Portrait.WinHeight = PlayerPortraitBG.RelativeHeight(i_Portrait.WinHeight); // ActualHeight() - 36; + // log(">>> HideLobbyMenu: FixPortrait() called!!!"); + + return false; +} + + +// Called when the Menu Owner is opened +event Opened(GUIComponent Sender) +{ + bShouldUpdateVeterancy = true; + + // disable some shit for story mode + if (PlayerOwner().GameReplicationInfo.IsA('KF_StoryGRI')) + { + // disable background + WaveBG.Image = none; + WaveBG.DisableMe(); + // disable waves text + WaveLabel.Caption = ""; + WaveLabel.Hide(); + } + + SetTimer(1, true); +} + + +// if we don't reset persistence, playerboxes will continue to pile +function bool NotifyLevelChange() +{ + bPersistent = false; + bAllowClose = true; + Controller.CloseMenu(true); + + return true; +} + + +function bool InternalOnKeyEvent(out byte Key, out byte State, float delta) +{ + local int i; + local bool bVoiceChatKey; + local array BindKeyNames, LocalizedBindKeyNames; + + Controller.GetAssignedKeys("VoiceTalk", BindKeyNames, LocalizedBindKeyNames); + + for (i = 0; i < BindKeyNames.Length; i++) + { + if (Mid(GetEnum(enum'EInputKey', Key), 3) ~= BindKeyNames[i]) + { + bVoiceChatKey = true; + break; + } + } + + if (bVoiceChatKey) + { + if (state == 1 || state == 2) + { + if (PlayerOwner() != none) + { + PlayerOwner().bVoiceTalk = 1; + } + } + else + { + if (PlayerOwner() != none) + { + PlayerOwner().bVoiceTalk = 0; + return false; + } + } + + return true; + } + + return false; +} + + +function TimedOut() +{ + bTimedOut = true; + PlayerOwner().ServerRestartPlayer(); + bAllowClose = true; +} + + +function bool InternalOnPreDraw(Canvas C) +{ + local int i, j; + local string StoryString; + local String SkillString; + local KFGameReplicationInfo KFGRI; + local PlayerController PC; + + PC = PlayerOwner(); + + if (PC == none || PC.Level == none) // Error? + return false; + + if ((PC.PlayerReplicationInfo != none && (!PC.PlayerReplicationInfo.bWaitingPlayer || PC.PlayerReplicationInfo.bOnlySpectator)) || PC.Outer.Name == 'Entry') + { + bAllowClose = true; + PC.ClientCloseMenu(true,false); + return false; + } + + t_Footer.InternalOnPreDraw(C); + KFGRI = KFGameReplicationInfo(PC.GameReplicationInfo); + + if (KFGRI != none) + { + WaveLabel.Caption = string(KFGRI.WaveNumber + 1) $ "/" $ string(KFGRI.FinalWave); + } + else + { + WaveLabel.Caption = "?/?"; + return false; + } + C.DrawColor.A = 255; + + // CHECK ME LATER + if (KFPlayerController(PC) != none && bShouldUpdateVeterancy) + { + if (KFPlayerController(PC).SelectedVeterancy == none) + { + bShowProfilePage = true; + + if (PC.SteamStatsAndAchievements == none) + { + if (PC.Level.NetMode != NM_Client) + { + PC.SteamStatsAndAchievements = PC.Spawn(PC.default.SteamStatsAndAchievementsClass, PC); + if (!PC.SteamStatsAndAchievements.Initialize(PC)) + { + Controller.OpenMenu(Controller.QuestionMenuClass); + GUIQuestionPage(Controller.TopPage()).SetupQuestion(class'KFMainMenu'.default.UnknownSteamErrorText, QBTN_Ok, QBTN_Ok); + PC.SteamStatsAndAchievements.Destroy(); + PC.SteamStatsAndAchievements = none; + } + else + { + PC.SteamStatsAndAchievements.OnDataInitialized = OnSteamStatsAndAchievementsReady; + } + } + + bShowProfilePage = false; + } + else if (!PC.SteamStatsAndAchievements.bInitialized) + { + PC.SteamStatsAndAchievements.OnDataInitialized = OnSteamStatsAndAchievementsReady; + PC.SteamStatsAndAchievements.GetStatsAndAchievements(); + bShowProfilePage = false; + } + + if (KFSteamStatsAndAchievements(PC.SteamStatsAndAchievements) != none) + { + for (i = 0; i < class'KFGameType'.default.LoadedSkills.Length; i++) + { + if (KFSteamStatsAndAchievements(PC.SteamStatsAndAchievements).GetPerkProgress(i) < 0.0) + { + PC.SteamStatsAndAchievements.OnDataInitialized = OnSteamStatsAndAchievementsReady; + PC.SteamStatsAndAchievements.GetStatsAndAchievements(); + bShowProfilePage = false; + } + } + } + + if (bShowProfilePage) + { + OnSteamStatsAndAchievementsReady(); + } + + bShouldUpdateVeterancy = false; + } + else if (PC.SteamStatsAndAchievements != none && PC.SteamStatsAndAchievements.bInitialized) + { + KFPlayerController(PC).SendSelectedVeterancyToServer(); + bShouldUpdateVeterancy = false; + } + } + + // First fill in non-ready players. + for (i = 0; i < KFGRI.PRIArray.Length; i++) + { + if (!bValidPRI(KFGRI.PRIArray[i]) || KFGRI.PRIArray[i].bReadyToPlay) + continue; + + // start from 0 + AddPlayer(KFPlayerReplicationInfo(KFGRI.PRIArray[i]), j, C); + if (++j >= MaxPlayersOnList) + GoTo'DoneIt'; + } + + // Then comes rest. + for (i = 0; i < KFGRI.PRIArray.Length; i++) + { + if (!bValidPRI(KFGRI.PRIArray[i]) || !KFGRI.PRIArray[i].bReadyToPlay) + continue; + + if (KFGRI.PRIArray[i].bReadyToPlay) + { + if (!bTimeoutTimeLogged) + { + ActivateTimeoutTime = PC.Level.TimeSeconds; + bTimeoutTimeLogged = true; + } + } + // continue from last idx + AddPlayer(KFPlayerReplicationInfo(KFGRI.PRIArray[i]), j, C); + if (++j >= MaxPlayersOnList) + GoTo'DoneIt'; + } + + if (j < MaxPlayersOnList) + EmptyPlayers(j); + +DoneIt: + StoryString = PC.Level.Description; + + if (KFGRI.BaseDifficulty <= 1) + SkillString = str_Beginner; + else if (KFGRI.BaseDifficulty <= 2) + SkillString = str_Normal; + else if (KFGRI.BaseDifficulty <= 4) + SkillString = str_Hard; + else if (KFGRI.BaseDifficulty <= 5) + SkillString = str_Sui; + else + SkillString = str_HOE; + + CurrentMapLabel.Caption = str_CurrentMap @ PC.Level.Title; + DifficultyLabel.Caption = str_Difficulty @ SkillString; + + // UT2K4PlayerLoginMenu copy-cat + if (PC.Level.NetMode == NM_StandAlone || PC.GameReplicationInfo == None || PC.GameReplicationInfo.ServerName == "") + ServerNameLabel.Caption = str_ServerName @ "SOLO MODE ACTIVE!"; + else + ServerNameLabel.Caption = str_ServerName @ PC.GameReplicationInfo.ServerName; + + return false; +} + + +// filter none, spectators, non-KFPRI ones +final private function bool bValidPRI(PlayerReplicationInfo PRI) +{ + if (PRI == none || PRI.bOnlySpectator || KFPlayerReplicationInfo(PRI) == none) + return false; + else + return true; +} + + +final private function AddPlayer(KFPlayerReplicationInfo PRI, int Index, Canvas C) +{ + local float Top; + local Material M; + local ScrnBalance Mut; + local String PlayerName; + + if (Index >= PlayerBoxes.Length) + { + Top = Index * 0.045; + PlayerBoxes.Length = Index + 1; + // create GUIComponents and set defaults + PlayerBoxes[Index].ReadyBox = new (none) Class'moCheckBox'; + PlayerBoxes[Index].ReadyBox.bValueReadOnly = true; + PlayerBoxes[Index].ReadyBox.ComponentJustification = TXTA_Left; + PlayerBoxes[Index].ReadyBox.CaptionWidth = 0.82; + PlayerBoxes[Index].ReadyBox.LabelColor.B = 0; + PlayerBoxes[Index].ReadyBox.WinTop = 0.0475+Top; + PlayerBoxes[Index].ReadyBox.WinLeft = 0.075; + PlayerBoxes[Index].ReadyBox.WinWidth = 0.4; + PlayerBoxes[Index].ReadyBox.WinHeight = 0.045; + PlayerBoxes[Index].ReadyBox.RenderWeight = 0.55; + PlayerBoxes[Index].ReadyBox.bAcceptsInput = false; + PlayerBoxes[Index].PlayerBox = new (none) Class'KFPlayerReadyBar'; + PlayerBoxes[Index].PlayerBox.WinTop = 0.04+Top; + PlayerBoxes[Index].PlayerBox.WinLeft = 0.04; + PlayerBoxes[Index].PlayerBox.WinWidth = 0.35; + PlayerBoxes[Index].PlayerBox.WinHeight = 0.045; + PlayerBoxes[Index].PlayerBox.RenderWeight = 0.35; + PlayerBoxes[Index].PlayerPerk = new (none) Class'GUIImage'; + PlayerBoxes[Index].PlayerPerk.ImageStyle = ISTY_Justified; + PlayerBoxes[Index].PlayerPerk.WinTop = 0.043+Top; + PlayerBoxes[Index].PlayerPerk.WinLeft = 0.0418; + PlayerBoxes[Index].PlayerPerk.WinWidth = 0.039; + PlayerBoxes[Index].PlayerPerk.WinHeight = 0.039; + PlayerBoxes[Index].PlayerPerk.RenderWeight = 0.56; + PlayerBoxes[Index].PlayerVetLabel = new (none) Class'GUILabel'; + PlayerBoxes[Index].PlayerVetLabel.TextAlign = TXTA_Right; + PlayerBoxes[Index].PlayerVetLabel.TextColor = Class'Canvas'.Static.MakeColor(19,19,19); + PlayerBoxes[Index].PlayerVetLabel.TextFont = "UT2SmallFont"; + PlayerBoxes[Index].PlayerVetLabel.WinTop = 0.04+Top; + PlayerBoxes[Index].PlayerVetLabel.WinLeft = 0.22907; + PlayerBoxes[Index].PlayerVetLabel.WinWidth = 0.151172; + PlayerBoxes[Index].PlayerVetLabel.WinHeight = 0.045; + PlayerBoxes[Index].PlayerVetLabel.RenderWeight = 0.5; + + // finally add the GUIComponents + AppendComponent(PlayerBoxes[Index].ReadyBox, true); + AppendComponent(PlayerBoxes[Index].PlayerBox, true); + AppendComponent(PlayerBoxes[Index].PlayerPerk, true); + AppendComponent(PlayerBoxes[Index].PlayerVetLabel, true); + + Top = (PlayerBoxes[Index].PlayerBox.WinTop + PlayerBoxes[Index].PlayerBox.WinHeight); + } + PlayerBoxes[Index].ReadyBox.Checked(PRI.bReadyToPlay); + Mut = class'ScrnBalance'.default.Mut; + if ( Mut != none ) + PlayerName = Mut.LeftCol(Mut.ColoredPlayerName(PRI), 20); + else + PlayerName = Left(PRI.PlayerName, 20); + + PlayerBoxes[Index].ReadyBox.SetCaption(" "$PlayerName); + + if (PRI.ClientVeteranSkill != none) + { + PlayerBoxes[Index].PlayerVetLabel.Caption = str_LvlAbbr @ PRI.ClientVeteranSkillLevel @ PRI.ClientVeteranSkill.default.VeterancyName; + if (Class(PRI.ClientVeteranSkill) != None) + { + Class(PRI.ClientVeteranSkill).Static.PreDrawPerk(C,PRI.ClientVeteranSkillLevel,PlayerBoxes[Index].PlayerPerk.Image,M); + PlayerBoxes[Index].PlayerPerk.ImageColor = C.DrawColor; + } + else + { + PlayerBoxes[Index].PlayerPerk.Image = PRI.ClientVeteranSkill.default.OnHUDIcon; + PlayerBoxes[Index].PlayerPerk.ImageColor = Class'Canvas'.Static.MakeColor(255,255,255); + } + } + else + { + PlayerBoxes[Index].PlayerPerk.Image = None; + PlayerBoxes[Index].PlayerVetLabel.Caption = ""; + } + PlayerBoxes[Index].bIsEmpty = false; +} + + +final private function EmptyPlayers(int Index) +{ + local int i; + + while (Index < PlayerBoxes.Length && !PlayerBoxes[Index].bIsEmpty) + { + PlayerBoxes[Index].ReadyBox.Checked(false); + PlayerBoxes[Index].PlayerPerk.Image = none; + PlayerBoxes[Index].PlayerVetLabel.Caption = ""; + PlayerBoxes[Index].ReadyBox.SetCaption(""); + PlayerBoxes[Index].bIsEmpty = true; + ++Index; + } + + for (i = 0; i < PlayerBoxes.Length; i++) + { + if (PlayerBoxes[i].bIsEmpty) + { + // remove GUIComponents + RemoveComponent(PlayerBoxes[i].ReadyBox, false); + RemoveComponent(PlayerBoxes[i].PlayerBox, false); + RemoveComponent(PlayerBoxes[i].PlayerPerk, false); + RemoveComponent(PlayerBoxes[i].PlayerVetLabel, false); + // remove refs + PlayerBoxes[i].ReadyBox = none; + PlayerBoxes[i].PlayerBox = none; + PlayerBoxes[i].PlayerPerk = none; + PlayerBoxes[i].PlayerVetLabel = none; + // remove from array + PlayerBoxes.remove(i, 1); + // everything works fine this way, do not log + // log(">>> NiceLobbyMenu: EmptyPlayers executed."); + } + } +} + + +function bool StopClose(optional bool bCancelled) +{ + // clean chat box + t_ChatBox.lb_Chat.SetContent(""); + + // this is for the OnCanClose delegate + // can't close now unless done by call to CloseAll, + // or the bool has been set to true by LobbyFooter + return false; +} + + +function InternalOnClosed(bool bCancelled) +{ + if (PlayerOwner() != none) + { + PlayerOwner().Advertising_ExitZone(); + } +} + + +event Timer() +{ + local KFGameReplicationInfo KF; + + if (PlayerOwner().PlayerReplicationInfo == none) + return; + + if (PlayerOwner().PlayerReplicationInfo.bOnlySpectator) + { + label_TimeOutCounter.caption = "You are a spectator."; + return; + } + + KF = KFGameReplicationInfo(PlayerOwner().GameReplicationInfo); + + if (KF == none) + { + label_TimeOutCounter.caption = WaitingForServerStatus; + } + else if (KF.LobbyTimeout <= 0) + { + label_TimeOutCounter.caption = WaitingForOtherPlayers; + } + else + { + label_TimeOutCounter.caption = AutoCommence $ KF.LobbyTimeout; + } +} + + +final private function DrawPerk(Canvas Canvas) +{ + local float X, Y, Width, Height; + local int LevelIndex; + local float TempX, TempY; + local float TempWidth, TempHeight; + local float IconSize, ProgressBarWidth; + local string PerkName, PerkLevelString; + local KFPlayerReplicationInfo KFPRI; + local Material M, SM; + + DrawPortrait(); + + KFPRI = KFPlayerReplicationInfo(PlayerOwner().PlayerReplicationInfo); + + if (KFPRI == none || KFPRI.ClientVeteranSkill == None) + { + if (CurrentVeterancyLevel != 255) + { + CurrentVeterancyLevel = 255; + lb_PerkEffects.SetContent("None perk active"); + } + return; + } + + LevelIndex = KFPRI.ClientVeteranSkillLevel; + PerkName = KFPRI.ClientVeteranSkill.default.VeterancyName; + PerkLevelString = str_LvlAbbr @ LevelIndex; + + //Get the position size etc in pixels + X = (i_BGPerk.WinLeft + 0.003) * Canvas.ClipX; + Y = (i_BGPerk.WinTop + 0.040) * Canvas.ClipY; + + Width = (i_BGPerk.WinWidth - 0.006) * Canvas.ClipX; + Height = (i_BGPerk.WinHeight - 0.043) * Canvas.ClipY; + + // Offset for the Background + TempX = X; + TempY = Y; + + // Initialize the Canvas + Canvas.Style = 1; + Canvas.Font = class'ROHUD'.Static.GetSmallMenuFont(Canvas); + Canvas.SetDrawColor(255, 255, 255, 255); + + // Draw Item Background + Canvas.SetPos(TempX, TempY); + + // Offset and Calculate Icon's Size + TempX += ItemBorder * Height; + TempY += ItemBorder * Height; + IconSize = Height - (ItemBorder * 2.0 * Height); + + // Draw Icon + Canvas.SetPos(TempX, TempY); + if( Class(KFPRI.ClientVeteranSkill)!=None ) + Class(KFPRI.ClientVeteranSkill).Static.PreDrawPerk(Canvas,KFPRI.ClientVeteranSkillLevel,M,SM); + else M = KFPRI.ClientVeteranSkill.default.OnHUDIcon; + Canvas.DrawTile(M, IconSize, IconSize, 0, 0, M.MaterialUSize(), M.MaterialVSize()); + + TempX += IconSize + (IconToInfoSpacing * Width); + TempY += TextTopOffset * Height; + + ProgressBarWidth = Width - (TempX - X) - (IconToInfoSpacing * Width); + + // Select Text Color + Canvas.SetDrawColor(255, 255, 255, 255); + + // Draw the Perk's Level name + Canvas.StrLen(PerkName, TempWidth, TempHeight); + Canvas.SetPos(TempX, TempY); + Canvas.DrawText(PerkName); + + // Draw the Perk's Level + if (PerkLevelString != "") + { + Canvas.StrLen(PerkLevelString, TempWidth, TempHeight); + Canvas.SetPos(TempX + ProgressBarWidth - TempWidth, TempY); + Canvas.DrawText(PerkLevelString); + } + + TempY += TempHeight + (0.01 * Height); + + if (CurrentVeterancy != KFPRI.ClientVeteranSkill || CurrentVeterancyLevel != LevelIndex) + { + CurrentVeterancy = KFPRI.ClientVeteranSkill; + CurrentVeterancyLevel = LevelIndex; + lb_PerkEffects.SetContent(Class(KFPRI.ClientVeteranSkill).Static.GetVetInfoText(LevelIndex,1)); + } +} + + +final private function DrawPortrait() +{ + if (PlayerOwner().PlayerReplicationInfo != none) + sChar = PlayerOwner().PlayerReplicationInfo.CharacterName; + else + sChar = PlayerOwner().GetUrlOption("Character"); + + if (sCharD != sChar) + { + sCharD = sChar; + SetPlayerRec(); + } +} + + +final private function SetPlayerRec() +{ + PlayerRec = Class'xUtil'.Static.FindPlayerRecord(sChar); + i_Portrait.Image = PlayerRec.Portrait; +} + + +final private function bool ShowPerkMenu(GUIComponent Sender) +{ + if (PlayerOwner() != none) + { + if (ScrnPlayerController(PlayerOwner()) != none ) + PlayerOwner().ClientOpenMenu(ScrnPlayerController(PlayerOwner()).ProfilePageClassString, false); + else + PlayerOwner().ClientOpenMenu(string(class'ScrnProfilePage'), false); + } + + return true; +} + + +final private function OnSteamStatsAndAchievementsReady() +{ + Controller.OpenMenu("KFGUI.KFProfilePage"); + + Controller.OpenMenu(Controller.QuestionMenuClass); + GUIQuestionPage(Controller.TopPage()).SetupQuestion(SelectPerkInformationString, QBTN_Ok, QBTN_Ok); +} + + +//============================================================================= +// DEFAULTPROPERTIES +//============================================================================= defaultproperties { - Begin Object Class=NiceLobbyFooter Name=BuyFooter - RenderWeight=0.300000 - TabOrder=8 - bBoundToParent=False - bScaleToParent=False - OnPreDraw=BuyFooter.InternalOnPreDraw - End Object - t_Footer=NiceLobbyFooter'NicePack.NiceLobbyMenu.BuyFooter' -} + str_Beginner="Beginner" + str_Normal="Normal" + str_Hard="Hard" + str_Sui="Suicidal" + str_HOE="Hell on Earth" + + str_LvlAbbr="Lv" + str_CurrentMap="Current Map:" + str_Difficulty="Difficulty:" + str_ServerName="Server Name:" + + SelectPerkInformationString="Perks enhance certain abilities of your character.|There are 6 Perks to choose from in the center of the screen.|Each has different Effects shown in the upper right.|Perks improve as you complete the Level Requirements shown on the right." + PerksDisabledString="Perk Progress has been disabled because the Game Length is set to Custom, Sandbox Mode is on, or you have previously used Cheats." + + WaitingForServerStatus="Awaiting server status..." + WaitingForOtherPlayers="Waiting for players to be ready..." + AutoCommence="Game will auto-commence in: " + + // replace LobbyChat + Begin Object Class=NiceLobbyChat Name=ChatBox + OnCreateComponent=ChatBox.InternalOnCreateComponent + TabOrder=1 + RenderWeight=0.01 + OnHover=ChatBox.FloatingHover + WinTop=0.80760 + WinLeft=0.016090 + WinWidth=0.971410 + WinHeight=0.100000 + ToolTip=none + End Object + t_ChatBox=ChatBox + + // replace LobbyFooter + Begin Object Class=NiceLobbyFooter Name=BuyFooter + RenderWeight=0.300000 + TabOrder=8 + bBoundToParent=false + bScaleToParent=false + OnPreDraw=BuyFooter.InternalOnPreDraw + End Object + t_Footer=BuyFooter + + // RIGHT part, server name - map name - difficulty - waves + Begin Object Class=AltSectionBackground Name=GameInfoB + WinTop=0.037851 + WinLeft=0.489062 + WinWidth=0.487374 + WinHeight=0.100000 + OnPreDraw=GameInfoB.InternalPreDraw + End Object + GameInfoBG=GameInfoB + + Begin Object Class=GUILabel Name=ServerNameL + Caption="tmp name" + TextColor=(B=158,G=176,R=175) + WinTop=0.042179 + WinLeft=0.496524 + WinWidth=0.360000 + WinHeight=0.035714 + RenderWeight=0.900000 + End Object + ServerNameLabel=ServerNameL + + Begin Object Class=GUILabel Name=CurrentMapL + Caption="tmp Map" + TextColor=(B=158,G=176,R=175) + WinTop=0.072381 + WinLeft=0.496524 + WinWidth=0.360000 + WinHeight=0.035714 + RenderWeight=0.900000 + End Object + CurrentMapLabel=CurrentMapL + + Begin Object Class=GUILabel Name=DifficultyL + Caption="tmp diff" + TextColor=(B=158,G=176,R=175) + WinTop=0.102583 + WinLeft=0.496524 + WinWidth=0.360000 + WinHeight=0.035714 + RenderWeight=0.900000 + End Object + DifficultyLabel=DifficultyL + + Begin Object Class=GUIImage Name=WaveB + Image=Texture'KillingFloorHUD.HUD.Hud_Bio_Circle' + ImageStyle=ISTY_Justified + ImageRenderStyle=MSTY_Normal + WinTop=0.043810 + WinLeft=0.923238 + WinWidth=0.051642 + WinHeight=0.061783 + RenderWeight=0.800000 + End Object + WaveBG=WaveB + + Begin Object Class=GUILabel Name=WaveL + Caption="1/4" + TextAlign=TXTA_Center + TextColor=(B=158,G=176,R=175) + VertAlign=TXTA_Center + FontScale=FNS_Small + WinTop=0.043810 + WinLeft=0.923238 + WinWidth=0.051642 + WinHeight=0.061783 + RenderWeight=0.900000 + End Object + WaveLabel=WaveL + + // LEFT part + Begin Object Class=GUILabel Name=TimeOutCounter + Caption="Game will auto-commence in: " + TextAlign=TXTA_Center + TextColor=(B=158,G=176,R=175) + WinTop=0.000010 + WinLeft=0.059552 + WinWidth=0.346719 + WinHeight=0.045704 + TabOrder=6 + End Object + label_TimeOutCounter=TimeOutCounter + + Begin Object Class=GUILabel Name=PerkClickArea + WinTop=0.432395 + WinLeft=0.488851 + WinWidth=0.444405 + WinHeight=0.437312 + bAcceptsInput=true + OnClickSound=CS_Click + OnClick=NiceLobbyMenu.ShowPerkMenu + End Object + PerkClickLabel=PerkClickArea + + Begin Object Class=GUISectionBackground Name=BGPerk + bFillClient=true + Caption="Current Perk" + WinTop=0.432291 + WinLeft=0.650976 + WinWidth=0.325157 + WinHeight=0.138086 + OnPreDraw=BGPerk.InternalPreDraw + End Object + i_BGPerk=BGPerk + + Begin Object Class=GUISectionBackground Name=BGPerkEffects + bFillClient=true + Caption="Perk Effects" + WinTop=0.568448 + WinLeft=0.650976 + WinWidth=0.325157 + WinHeight=0.307442 + OnPreDraw=BGPerkEffects.InternalPreDraw + End Object + i_BGPerkEffects=BGPerkEffects + + Begin Object Class=GUIScrollTextBox Name=PerkEffectsScroll + CharDelay=0.002500 + EOLDelay=0.100000 + OnCreateComponent=PerkEffectsScroll.InternalOnCreateComponent + WinTop=0.626094 + WinLeft=0.659687 + WinWidth=0.309454 + WinHeight=0.244961 + TabOrder=9 + ToolTip=none + End Object + lb_PerkEffects=PerkEffectsScroll + + Begin Object Class=GUIImage Name=PlayerPortrait + Image=Texture'InterfaceArt_tex.Menu.changeme_texture' + ImageStyle=ISTY_Scaled + ImageRenderStyle=MSTY_Normal + IniOption="@Internal" + WinTop=0.472396 + WinLeft=0.492522 + WinWidth=0.156368 + WinHeight=0.397022 + RenderWeight=0.300000 + End Object + i_Portrait=PlayerPortrait + + Begin Object Class=GUISectionBackground Name=PlayerPortraitB + WinTop=0.432291 + WinLeft=0.489062 + WinWidth=0.163305 + WinHeight=0.443451 + OnPreDraw=PlayerPortraitB.InternalPreDraw + End Object + PlayerPortraitBG=PlayerPortraitB + + IconBorder=0.050000 + ItemBorder=0.110000 + ProgressBarHeight=0.300000 + TextTopOffset=0.050000 + IconToInfoSpacing=0.050000 + + c_Tabs=GUITabControl'KFGui.GUILibraryMenu.PageTabs' + + Begin Object Class=GUIHeader Name=ServerBrowserHeader + bVisible=false + End Object + t_Header=ServerBrowserHeader + + i_Background=none + i_bkChar=none + + bRenderWorld=true + bAllowedAsLast=true + OnClose=NiceLobbyMenu.InternalOnClosed + OnCanClose=NiceLobbyMenu.StopClose + WinHeight=0.500000 + OnPreDraw=NiceLobbyMenu.InternalOnPreDraw + OnRendered=NiceLobbyMenu.DrawPerk + OnKeyEvent=NiceLobbyMenu.InternalOnKeyEvent +} \ No newline at end of file diff --git a/sources/GUI/NicePanelSkills.uc b/sources/GUI/NicePanelSkills.uc index db8a65e..e7302da 100644 --- a/sources/GUI/NicePanelSkills.uc +++ b/sources/GUI/NicePanelSkills.uc @@ -1,99 +1,157 @@ -class NicePanelSkills extends Settings_Tabs; -var automated NiceGUIPerkButton skillButtonA[5], skillButtonB[5]; -function ShowPanel(bool bShow){ +class NicePanelSkills extends UT2K4TabPanel; + +var automated NiceGUIPerkButton skillButtonA[5], skillButtonB[5]; +var automated GUISectionBackground sb_big_left, sb_big_right; + +function ShowPanel(bool bShow) +{ local int i; local class niceVet; local NicePlayerController nicePlayer; - Super.ShowPanel(bShow); + + super.ShowPanel(bShow); + + // loops are for puss + sb_big_left.ManageComponent(skillButtonA[0]); + sb_big_left.ManageComponent(skillButtonA[1]); + sb_big_left.ManageComponent(skillButtonA[2]); + sb_big_left.ManageComponent(skillButtonA[3]); + sb_big_left.ManageComponent(skillButtonA[4]); + + sb_big_right.ManageComponent(skillButtonB[0]); + sb_big_right.ManageComponent(skillButtonB[1]); + sb_big_right.ManageComponent(skillButtonB[2]); + sb_big_right.ManageComponent(skillButtonB[3]); + sb_big_right.ManageComponent(skillButtonB[4]); + nicePlayer = NicePlayerController(PlayerOwner()); - if(nicePlayer != none) + if (nicePlayer != none) niceVet = class'NiceVeterancyTypes'.static.GetVeterancy(nicePlayer.PlayerReplicationInfo); - if(niceVet != none){ - for(i = 0;i < 5;i ++){ - skillButtonA[i].skillIndex = i; - skillButtonB[i].skillIndex = i; - skillButtonA[i].skillPerkIndex = niceVet.default.PerkIndex; - skillButtonB[i].skillPerkIndex = niceVet.default.PerkIndex; - skillButtonA[i].isAltSkill = false; - skillButtonB[i].isAltSkill = true; - skillButtonA[i].associatedSkill = niceVet.default.SkillGroupA[i]; - skillButtonB[i].associatedSkill = niceVet.default.SkillGroupB[i]; - } + if (niceVet != none) + { + for (i = 0;i < 5;i ++) + { + skillButtonA[i].skillIndex = i; + skillButtonB[i].skillIndex = i; + skillButtonA[i].skillPerkIndex = niceVet.default.PerkIndex; + skillButtonB[i].skillPerkIndex = niceVet.default.PerkIndex; + skillButtonA[i].isAltSkill = false; + skillButtonB[i].isAltSkill = true; + skillButtonA[i].associatedSkill = niceVet.default.SkillGroupA[i]; + skillButtonB[i].associatedSkill = niceVet.default.SkillGroupB[i]; + } } } + // size = (x=0.0125, y=0.0) ; (w=1.0, h=0.865) // setup caption defaultproperties { + // BACKGROUNDS + Begin Object Class=AltSectionBackground Name=skillbckgrndl + Caption="LEFT SKILLS" + // bNoCaption=true + LeftPadding=0.000000 + RightPadding=0.030000 + TopPadding=0.000000 + BottomPadding=0.000000 + WinTop=0.000000 + WinLeft=0.000000 + WinWidth=0.500000 + WinHeight=0.87 + bBoundToParent=True + bScaleToParent=True + OnPreDraw=skillbckgrndl.InternalPreDraw + End Object + sb_big_left=skillbckgrndl + + Begin Object Class=AltSectionBackground Name=skillbckgrndr + Caption="OBVIOUSLY RIGHT SKILLS" + // bNoCaption=true + LeftPadding=0.000000 + RightPadding=0.030000 + TopPadding=0.000000 + BottomPadding=0.000000 + WinTop=0.000000 + WinLeft=0.500000 + WinWidth=0.500000 + WinHeight=0.87 + bBoundToParent=True + bScaleToParent=True + OnPreDraw=skillbckgrndr.InternalPreDraw + End Object + sb_big_right=skillbckgrndr + + // buttons Begin Object Class=NiceGUIPerkButton Name=btn1A - WinTop=0.012500 + // WinTop=0.012500 WinWidth=0.495000 WinHeight=0.160000 - RenderWeight=2.000000 - TabOrder=1 + // RenderWeight=2.000000 + // TabOrder=1 bBoundToParent=True bScaleToParent=True bMouseOverSound=False OnClickSound=CS_None OnKeyEvent=btn1A.InternalOnKeyEvent End Object - skillButtonA(0)=NiceGUIPerkButton'NicePack.NicePanelSkills.btn1A' + skillButtonA(0)=btn1A Begin Object Class=NiceGUIPerkButton Name=btn2A - WinTop=0.188500 + // WinTop=0.188500 WinWidth=0.495000 WinHeight=0.160000 - RenderWeight=2.000000 - TabOrder=3 + // RenderWeight=2.000000 + // TabOrder=3 bBoundToParent=True bScaleToParent=True bMouseOverSound=False OnClickSound=CS_None OnKeyEvent=btn2A.InternalOnKeyEvent End Object - skillButtonA(1)=NiceGUIPerkButton'NicePack.NicePanelSkills.btn2A' + skillButtonA(1)=btn2A Begin Object Class=NiceGUIPerkButton Name=btn3A - WinTop=0.364500 + // WinTop=0.364500 WinWidth=0.495000 WinHeight=0.160000 - RenderWeight=2.000000 - TabOrder=5 + // RenderWeight=2.000000 + // TabOrder=5 bBoundToParent=True bScaleToParent=True bMouseOverSound=False OnClickSound=CS_None OnKeyEvent=btn3A.InternalOnKeyEvent End Object - skillButtonA(2)=NiceGUIPerkButton'NicePack.NicePanelSkills.btn3A' + skillButtonA(2)=btn3A Begin Object Class=NiceGUIPerkButton Name=btn4A - WinTop=0.540500 + // WinTop=0.540500 WinWidth=0.495000 WinHeight=0.160000 - RenderWeight=2.000000 - TabOrder=7 + // RenderWeight=2.000000 + // TabOrder=7 bBoundToParent=True bScaleToParent=True bMouseOverSound=False OnClickSound=CS_None OnKeyEvent=btn4A.InternalOnKeyEvent End Object - skillButtonA(3)=NiceGUIPerkButton'NicePack.NicePanelSkills.btn4A' + skillButtonA(3)=btn4A Begin Object Class=NiceGUIPerkButton Name=btn5A - WinTop=0.716500 + // WinTop=0.716500 WinWidth=0.495000 WinHeight=0.160000 - RenderWeight=2.000000 - TabOrder=9 + // RenderWeight=2.000000 + // TabOrder=9 bBoundToParent=True bScaleToParent=True bMouseOverSound=False OnClickSound=CS_None OnKeyEvent=btn5A.InternalOnKeyEvent End Object - skillButtonA(4)=NiceGUIPerkButton'NicePack.NicePanelSkills.btn5A' + skillButtonA(4)=btn5A Begin Object Class=NiceGUIPerkButton Name=btn1B WinTop=0.012500 @@ -108,7 +166,7 @@ defaultproperties OnClickSound=CS_None OnKeyEvent=btn1B.InternalOnKeyEvent End Object - skillButtonB(0)=NiceGUIPerkButton'NicePack.NicePanelSkills.btn1B' + skillButtonB(0)=btn1B Begin Object Class=NiceGUIPerkButton Name=btn2B WinTop=0.188500 @@ -123,7 +181,7 @@ defaultproperties OnClickSound=CS_None OnKeyEvent=btn2B.InternalOnKeyEvent End Object - skillButtonB(1)=NiceGUIPerkButton'NicePack.NicePanelSkills.btn2B' + skillButtonB(1)=btn2B Begin Object Class=NiceGUIPerkButton Name=btn3B WinTop=0.364500 @@ -138,7 +196,7 @@ defaultproperties OnClickSound=CS_None OnKeyEvent=btn3B.InternalOnKeyEvent End Object - skillButtonB(2)=NiceGUIPerkButton'NicePack.NicePanelSkills.btn3B' + skillButtonB(2)=btn3B Begin Object Class=NiceGUIPerkButton Name=btn4B WinTop=0.540500 @@ -153,7 +211,7 @@ defaultproperties OnClickSound=CS_None OnKeyEvent=btn4B.InternalOnKeyEvent End Object - skillButtonB(3)=NiceGUIPerkButton'NicePack.NicePanelSkills.btn4B' + skillButtonB(3)=btn4B Begin Object Class=NiceGUIPerkButton Name=btn5B WinTop=0.716500 @@ -168,5 +226,5 @@ defaultproperties OnClickSound=CS_None OnKeyEvent=btn5B.InternalOnKeyEvent End Object - skillButtonB(4)=NiceGUIPerkButton'NicePack.NicePanelSkills.btn5B' + skillButtonB(4)=btn5B } diff --git a/sources/NiceGameType.uc b/sources/NiceGameType.uc index fb28e76..ca0aaa7 100644 --- a/sources/NiceGameType.uc +++ b/sources/NiceGameType.uc @@ -1,8 +1,10 @@ // made to fix KFStoryGameInfo loading for KFO maps class NiceGameType extends ScrnGameType; + var NicePack NicePackMutator; var bool lessDramatic; var float LesserZedTimeSlomoScale; + function RegisterMutator(NicePack activePack){ NicePackMutator = activePack; } @@ -77,7 +79,7 @@ function ScoreKill(Controller Killer, Controller Other) local Controller C; OtherPRI = Other.PlayerReplicationInfo; - if ( OtherPRI != None ) + if ( OtherPRI != none ) { OtherPRI.NumLives++; OtherPRI.Score -= (OtherPRI.Score * (GameDifficulty * 0.05)); // you Lose 35% of your current cash on Hell on Earth, 15% on normal. @@ -90,23 +92,23 @@ function ScoreKill(Controller Killer, Controller Other) OtherPRI.Team.NetUpdateTime = Level.TimeSeconds - 1; OtherPRI.bOutOfLives = true; - if( Killer!=None && Killer.PlayerReplicationInfo!=None && Killer.bIsPlayer ) + if( Killer!=none && Killer.PlayerReplicationInfo!=none && Killer.bIsPlayer ) BroadcastLocalizedMessage(class'KFInvasionMessage',1,OtherPRI,Killer.PlayerReplicationInfo); - else if( Killer==None || Monster(Killer.Pawn)==None ) + else if( Killer==none || Monster(Killer.Pawn)==none ) BroadcastLocalizedMessage(class'KFInvasionMessage',1,OtherPRI); else BroadcastLocalizedMessage(class'KFInvasionMessage',1,OtherPRI,,Killer.Pawn.Class); - CheckScore(None); + CheckScore(none); } - if ( GameRulesModifiers != None ) + if ( GameRulesModifiers != none ) GameRulesModifiers.ScoreKill(Killer, Other); - if ( MonsterController(Killer) != None ) + if ( MonsterController(Killer) != none ) return; - if( (killer == Other) || (killer == None) ) + if( (killer == Other) || (killer == none) ) { - if ( Other.PlayerReplicationInfo != None ) + if ( Other.PlayerReplicationInfo != none ) { Other.PlayerReplicationInfo.Score -= 1; Other.PlayerReplicationInfo.NetUpdateTime = Level.TimeSeconds - 1; @@ -114,7 +116,7 @@ function ScoreKill(Controller Killer, Controller Other) } } - if ( Killer==None || !Killer.bIsPlayer || (Killer==Other) ) + if ( Killer==none || !Killer.bIsPlayer || (Killer==Other) ) return; if ( Other.bIsPlayer ) @@ -126,7 +128,7 @@ function ScoreKill(Controller Killer, Controller Other) ScoreEvent(Killer.PlayerReplicationInfo, -5, "team_frag"); return; } - if ( LastKilledMonsterClass == None ) + if ( LastKilledMonsterClass == none ) KillScore = 1; else if(Killer.PlayerReplicationInfo !=none) { @@ -179,9 +181,9 @@ function ScoreKill(Controller Killer, Controller Other) if( Class'HUDKillingFloor'.Default.MessageHealthLimit<=Other.Pawn.Default.Health || Class'HUDKillingFloor'.Default.MessageMassLimit<=Other.Pawn.Default.Mass ) { - for( C=Level.ControllerList; C!=None; C=C.nextController ) + for( C=Level.ControllerList; C!=none; C=C.nextController ) { - if( C.bIsPlayer && xPlayer(C)!=None ) + if( C.bIsPlayer && xPlayer(C)!=none ) { xPlayer(C).ReceiveLocalizedMessage(Class'KillsMessage',1,Killer.PlayerReplicationInfo,,Other.Pawn.Class); } @@ -189,7 +191,7 @@ function ScoreKill(Controller Killer, Controller Other) } else { - if( xPlayer(Killer)!=None ) + if( xPlayer(Killer)!=none ) { xPlayer(Killer).ReceiveLocalizedMessage(Class'KillsMessage',,,,Other.Pawn.Class); } @@ -261,8 +263,8 @@ function Killed(Controller Killer, Controller Killed, Pawn KilledPawn, class GetAllLoadHints(optional bool bThisClassOnly) +{ + return class'Utility'.static.GetNiceHintArray(); +} + defaultproperties { GameName="Nice Floor" Description="Nice Edition of ScrN Killing Floor game mode (ScrnGameType)." + // custom player controller + PlayerControllerClass=class'NicePlayerController' + PlayerControllerClassName="NicePack.NicePlayerController" + // skills menu + LoginMenuClass="NicePack.NiceInvasionLoginMenu" ZedTimeSlomoScale=0.4 LesserZedTimeSlomoScale=0.6 -} +} \ No newline at end of file diff --git a/sources/NiceHumanPawn.uc b/sources/NiceHumanPawn.uc index 0aa30fd..d3a2098 100644 --- a/sources/NiceHumanPawn.uc +++ b/sources/NiceHumanPawn.uc @@ -63,14 +63,17 @@ simulated function bool IsZedExtentionsRecorded(NiceMonster niceZed){ return true; return false; } -function ReplaceRequiredEquipment(){ - Super.ReplaceRequiredEquipment(); - RequiredEquipment[0] = String(class'NicePack.NiceMachete'); - RequiredEquipment[1] = String(class'NicePack.Nice9mmPlus'); - RequiredEquipment[2] = String(class'ScrnBalanceSrv.ScrnFrag'); - RequiredEquipment[3] = String(class'ScrnBalanceSrv.ScrnSyringe'); - RequiredEquipment[4] = String(class'KFMod.Welder'); + +// TODO remove this Scrn func +function ReplaceRequiredEquipment() +{ + RequiredEquipment[0] = string(class'NiceMachete'); + RequiredEquipment[1] = string(class'Nice9mmPlus'); + RequiredEquipment[2] = string(class'ScrnFrag'); + RequiredEquipment[3] = string(class'ScrnSyringe'); + RequiredEquipment[4] = string(class'KFMod.Welder'); } + simulated function int CalculateCalibrationScore(){ local float accuracy; accuracy = (float(calibrationHits)) / (float(calibrationTotalShots)); @@ -218,16 +221,20 @@ function ServerCooldownAbility(string abilityID){ if(index >= 0) nicePlayer.abilityManager.SetAbilityState(index, ASTATE_COOLDOWN); } -simulated function Tick(float deltaTime){ + +simulated function Tick(float deltaTime) +{ local int index; local Inventory Item; local NiceWeapon niceWeap; local WeaponTimePair newPair; local array newWTPList; - local NicePack niceMutator; local NicePlayerController nicePlayer; + nicePlayer = NicePlayerController(Controller); - if(Role == Role_AUTHORITY){ + + if (Role == Role_AUTHORITY) + { // Brutal carnage if (brutalCranageTimer > 0) { @@ -326,33 +333,10 @@ simulated function Tick(float deltaTime){ forcedZedTimeCountDown -= deltaTime; else forcedZedTimeCountDown = 0.0; - niceMutator = class'NicePack'.static.Myself(Level); - if(niceMutator != none) - niceMutator.ClearWeapProgress(); + if(!class'NiceVeterancyTypes'.static.hasSkill(NicePlayerController(Controller), class'NiceSkillEnforcerMultitasker')) return; - if ( Role < ROLE_Authority && nicePlayer != none - && nicePlayer.bFlagDisplayWeaponProgress) - { - // Update weapon progress for this skill - if(niceMutator == none) { - Log("Failed to update holstered progress, because no mut! :("); - return; - } - for(Item = Inventory; Item != none; Item = Item.Inventory){ - niceWeap = NiceWeapon(Item); - if(niceWeap != none && niceWeap != weapon && !niceWeap.IsMagazineFull()){ - niceMutator.AddWeapProgress(niceWeap.class, niceWeap.holsteredCompletition, - true, niceWeap.GetMagazineAmmo()); - } - } - return; - } - else if (Role < ROLE_Authority) - { - Log( "Failed to update holstered progress, checked variables:" - @ nicePlayer @ nicePlayer.bFlagDisplayWeaponProgress); - } + // Auto-reload holstered weapons holsteredReloadCountDown -= deltaTime; if(holsteredReloadCountDown <= 0.0){ @@ -487,19 +471,21 @@ simulated function ClientChangeWeapon(NiceWeapon newWeap){ } // Validate that client is not hacking. -function bool CanBuyNow(){ - local NicePlayerController niceController; - niceController = NicePlayerController(Controller); - if(niceController == none) +function bool CanBuyNow() +{ + local NiceGameType NiceGT; + + NiceGT = NiceGameType(Level.Game); + if (NicePlayerController(Controller) == none) return false; - if(NiceGameType(Level.Game) != none && NiceGameType(Level.Game).NicePackMutator != none - && NiceGameType(Level.Game).NicePackMutator.bIsPreGame) + if (NiceGT != none && NiceGT.NicePackMutator != none + && NiceGT.NicePackMutator.bIsPreGame) return true; - if(NiceTSCGame(Level.Game) != none && NiceTSCGame(Level.Game).NicePackMutator != none - && NiceTSCGame(Level.Game).NicePackMutator.bIsPreGame) - return true; - return Super.CanBuyNow(); + + // skip Scrn code! + return super(KFPawn).CanBuyNow(); } + // Overridden to not modify dual pistols' weapon group function bool AddInventory(inventory NewItem){ local KFWeapon weap; @@ -510,7 +496,7 @@ function bool AddInventory(inventory NewItem){ if((DualDeagle(weap) != none || Dual44Magnum(weap) != none || DualMK23Pistol(weap) != none) && weap.InventoryGroup != 4 ) { if(KFPRI != none && - ClassIsChildOf(KFPRI.ClientVeteranSkill, class'ScrnBalanceSrv.ScrnVetGunslinger')) + ClassIsChildOf(KFPRI.ClientVeteranSkill, class'ScrnVetGunslinger')) weap.InventoryGroup = 3; else weap.InventoryGroup = 2; @@ -555,16 +541,21 @@ simulated function CookGrenade(){ niceWeap.ClientGrenadeState = GN_TempDown; niceWeap.PutDown(); } -simulated function ThrowGrenade(){ +simulated function ThrowGrenade() +{ local NiceWeapon niceWeap; niceWeap = NiceWeapon(Weapon); if(niceWeap != none) niceWeap.ClientForceInterruptReload(CANCEL_NADE); if(bThrowingNade || SecondaryItem != none) return; - if( niceWeap == none - || (niceWeap.bIsReloading && !niceWeap.InterruptReload())) - return; + + if(niceWeap == none || (niceWeap.bIsReloading && !niceWeap.InterruptReload())) + { + super.ThrowGrenade(); + return; + } + if(playerGrenade == none) playerGrenade = FindPlayerGrenade(); if(playerGrenade != none && playerGrenade.HasAmmo()){ @@ -863,6 +854,40 @@ simulated function AltFire(optional float F){ super.AltFire(F); } +// added copy-cated function to disable some log +simulated function Setup(xUtil.PlayerRecord rec, optional bool bLoadNow) +{ + local ScrnPlayerController PC; + local string CN; + + PC = ScrnPlayerController(Controller); + if ( PC != none && IsLocallyControlled() ) + { + // check this only on player side, because it stores + // RedCharacter & BlueCharacter in the config + CN = rec.DefaultName; + if ( !PC.ValidateCharacter(CN) ) { + // character invalid, change it valid one, which was set up in ValidateCharacter() + rec = class'xUtil'.static.FindPlayerRecord(CN); + PC.ChangeCharacter(CN); + } + } + + super(KFPawn).Setup(rec, bLoadNow); + + if( class(Species) != none ) + { + BreathingSound = class'KFDARSoundGroup'.default.BreathingSound; + } + else if( class(Species) != none ) + { + BreathingSound = class'KFFemaleSoundGroup'.default.BreathingSound; + } + // disable the log!!! + // log(BreathingSound); +} + + defaultproperties { defaultInvincibilityDuration=2.000000 diff --git a/sources/NicePack.uc b/sources/NicePack.uc index c7cd09b..d85154b 100644 --- a/sources/NicePack.uc +++ b/sources/NicePack.uc @@ -35,11 +35,10 @@ var config bool bNoLateFFIncrease; // Disables FF increase through // Configuration variables that store whether or not to replace the specimen with it's mean counterpart var config bool bReplaceCrawler, bReplaceStalker, bReplaceClot, bReplaceGorefast, bReplaceBloat, bReplaceSiren, bReplaceHusk, bReplaceScrake, bReplaceFleshpound; var config int bigZedMinHealth; // If zed's base Health >= this value, zed counts as Big -var config int mediumZedMinHealth; +var config int mediumZedMinHealth; var int maxPlayersInGame; - -var bool bSpawnRateEnforced; // Set to true after spawn rate was altered + // 'Adrenaline junkie' zed-time extensions var int junkieDoneGoals; // How many times we collected enough head-shots to trigger zed-time extension var int junkieNextGoal; // How many head-shots we need for next zed-time extension @@ -54,11 +53,9 @@ var int deadBodyCounter; var ScrnBalance ScrnMut; var ScrnGameType ScrnGT; var NiceGameType NiceGT; -var NiceTSCGame NiceTSC; var NicePack Mut; var NiceRules GameRules; var NiceStorageServer serverStorage; -var bool bClientLinkEstablished; var bool interactionAdded; var bool bIsPreGame; var bool bIsTraderTime; @@ -98,15 +95,7 @@ struct CounterDisplay{ var class ownerSkill; }; var array niceCounterSet; -struct WeaponProgressDisplay{ - var class weapClass; - var float progress; - var bool bShowCounter; - var int counter; -}; -var array niceWeapProgressSet; -// Map Description array -var const array NiceUniversalDescriptions[4]; + // Replication of config between player and server var int SrvFlags; var array playersList; @@ -136,7 +125,7 @@ static final function NicePack Myself(LevelInfo Level){ local Mutator M; local NicePack NicePackMutator; if(default.Mut != none) - return default.Mut; + return default.Mut; // server-side if(Level != none && Level.Game != none){ for(M = Level.Game.BaseMutator;M != none;M = M.NextMutator){ @@ -165,189 +154,76 @@ function PreBeginPlay() AddToPackageMap("NicePackSnd.uax"); AddToPackageMap("NicePackT.utx"); } -simulated function PostBeginPlay(){ - local int i; - local ZedRecord record; + +simulated function PostBeginPlay() +{ local ScrnVotingHandlerMut VH; local MeanVoting VO; local NiceFFVoting FFVO; + super.PostBeginPlay(); + class'ScrnLightVestPickup'.default.cost = 50; class'ScrnHorzineVestPickup'.default.weight = 2; class'ScrnHorzineVestPickup'.default.cost = 750; class'NicePack'.default.Mut = self; - // Gun skins - class'NicePack.NiceMaulerPickup'.default.VariantClasses[class'NicePack.NiceMaulerPickup'.default.VariantClasses.length] = class'ScrnBalanceSrv.ScrnSPSniperPickup'; - class'NicePack.NiceDeaglePickup'.default.VariantClasses[class'NicePack.NiceDeaglePickup'.default.VariantClasses.length] = class'NicePack.SkinExecutionerPickup'; - class'NicePack.NiceDualDeaglePickup'.default.VariantClasses[class'NicePack.NiceDualDeaglePickup'.default.VariantClasses.length] = class'NicePack.SkinDualExecutionerPickup'; - class'NicePack.NiceMagnumPickup'.default.VariantClasses[class'NicePack.NiceMagnumPickup'.default.VariantClasses.length] = class'NicePack.SkinCowboyMagnumPickup'; - class'NicePack.NiceDualMagnumPickup'.default.VariantClasses[class'NicePack.NiceDualMagnumPickup'.default.VariantClasses.length] = class'NicePack.SkinDualCowboyMagnumPickup'; - class'NicePack.NiceWinchesterPickup'.default.VariantClasses[class'NicePack.NiceWinchesterPickup'.default.VariantClasses.length] = class'NicePack.SkinRetroLARPickup'; - class'NicePack.NiceM14EBRPickup'.default.VariantClasses[class'NicePack.NiceM14EBRPickup'.default.VariantClasses.length] = class'NicePack.SkinM14EBR2ProPickup'; - class'ScrnBalanceSrv.ScrnKrissMPickup'.default.VariantClasses[class'ScrnBalanceSrv.ScrnKrissMPickup'.default.VariantClasses.length] = class'NicePack.SkinGoldenKrissPickup'; - class'NicePack.NiceSCARMK17Pickup'.default.VariantClasses[class'NicePack.NiceSCARMK17Pickup'.default.VariantClasses.length] = class'NicePack.SkinCamoSCARMK17Pickup'; + // Abilities class'NiceAbilityManager'.default.events.static.AddAdapter(class'NiceSharpshooterAbilitiesAdapter', level); class'NiceAbilityManager'.default.events.static.AddAdapter(class'NiceEnforcerAbilitiesAdapter', level); + SetTimer(0.25, true); - if(Role < ROLE_Authority) + if (Role < ROLE_Authority) return; // Create sync node - serverStorage = new class'NicePack.NiceStorageServer'; + serverStorage = new class'NiceStorageServer'; default.serverStorage = serverStorage; serverStorage.events.static.AddAdapter(class'NiceRemoteDataAdapter', Level); // Find game type and ScrN mutator - ScrnGT = ScrnGameType(Level.Game); + ScrnGT = ScrnGameType(Level.Game); NiceGT = NiceGameType(Level.Game); - NiceTSC = NiceTSCGame(Level.Game); - if(ScrnGT == none){ - Log("ERROR: Wrong GameType (requires at least ScrnGameType)", Class.Outer.Name); + if (NiceGT == none) + { + Log("ERROR: Wrong GameType (requires NiceGameType)", class.Outer.Name); Destroy(); return; } - // Skills menu - ScrnGT.LoginMenuClass = string(Class'NicePack.NiceInvasionLoginMenu'); - if(NiceGT != none) - NiceGT.RegisterMutator(Self); - if(NiceTSC != none) - NiceTSC.RegisterMutator(Self); - ScrnMut = ScrnGT.ScrnBalanceMut; + // FIXME poosh forces this variable in his mutator... + NiceGT.LoginMenuClass = string(class'NiceInvasionLoginMenu'); + NiceGT.RegisterMutator(self); + ScrnMut = NiceGT.ScrnBalanceMut; if(bReplacePickups) ScrnMut.bReplacePickups = false; // Replication of some variables SetReplicationData(); - // New player controller class - if(!ClassIsChildOf(ScrnGT.PlayerControllerClass, class'NicePack.NicePlayerController')){ - ScrnGT.PlayerControllerClass = class'NicePack.NicePlayerController'; - ScrnGT.PlayerControllerClassName = string(Class'NicePack.NicePlayerController'); - } // Game rules - GameRules = Spawn(Class'NicePack.NiceRules', self); + GameRules = Spawn(class'NiceRules', self); // -- Lower starting HL ScrnMut.GameRules.HardcoreLevel -= 7; ScrnMut.GameRules.HardcoreLevelFloat -= 7; + // -- Fill-in zed info - i = 0; // - Clot - record.ZedName = "Clot"; - record.ZedType = class'NicePack.NiceZombieClot'; - record.MeanZedType = class'NicePack.MeanZombieClot'; - record.HL = 0.0; - record.MeanHLBonus = 0.5; - record.bNeedsReplacement = bReplaceClot; - ZedDatabase[i++] = record; + ZedDatabase[0].bNeedsReplacement = bReplaceClot; // - Crawler - record.ZedName = "Crawler"; - record.ZedType = class'NicePack.NiceZombieCrawler'; - record.MeanZedType = class'NicePack.MeanZombieCrawler'; - record.HL = 0.5; - record.MeanHLBonus = 1.5; - record.bNeedsReplacement = bReplaceCrawler; - ZedDatabase[i++] = record; + ZedDatabase[1].bNeedsReplacement = bReplaceCrawler; // - Stalker - record.ZedName = "Stalker"; - record.ZedType = class'NicePack.NiceZombieStalker'; - record.MeanZedType = class'NicePack.MeanZombieStalker'; - record.HL = 0.5; - record.MeanHLBonus = 0.5; - record.bNeedsReplacement = bReplaceStalker; - ZedDatabase[i++] = record; + ZedDatabase[2].bNeedsReplacement = bReplaceStalker; // - Gorefast - record.ZedName = "Gorefast"; - record.ZedType = class'NicePack.NiceZombieGorefast'; - record.MeanZedType = class'NicePack.MeanZombieGorefast'; - record.HL = 0.0; - record.MeanHLBonus = 0.5; - record.bNeedsReplacement = bReplaceGorefast; - ZedDatabase[i++] = record; + ZedDatabase[3].bNeedsReplacement = bReplaceGorefast; // - Bloat - record.ZedName = "Bloat"; - record.ZedType = class'NicePack.NiceZombieBloat'; - record.MeanZedType = class'NicePack.MeanZombieBloat'; - record.HL = 0.0; - record.MeanHLBonus = 0.5; - record.bNeedsReplacement = bReplaceBloat; - ZedDatabase[i++] = record; + ZedDatabase[4].bNeedsReplacement = bReplaceBloat; // - Siren - record.ZedName = "Siren"; - record.ZedType = class'NicePack.NiceZombieSiren'; - record.MeanZedType = class'NicePack.MeanZombieSiren'; - record.HL = 1.0; - record.MeanHLBonus = 1.0; - record.bNeedsReplacement = bReplaceSiren; - ZedDatabase[i++] = record; + ZedDatabase[5].bNeedsReplacement = bReplaceSiren; // - Husk - record.ZedName = "Husk"; - record.ZedType = class'NicePack.NiceZombieHusk'; - record.MeanZedType = class'NicePack.MeanZombieHusk'; - record.HL = 1.0; - record.MeanHLBonus = 1.5; - record.bNeedsReplacement = bReplaceHusk; - ZedDatabase[i++] = record; + ZedDatabase[6].bNeedsReplacement = bReplaceHusk; // - Scrake - record.ZedName = "Scrake"; - record.ZedType = class'NicePack.NiceZombieScrake'; - record.MeanZedType = class'NicePack.MeanZombieScrake'; - record.HL = 1.5; - record.MeanHLBonus = 1.5; - record.bNeedsReplacement = bReplaceScrake; - ZedDatabase[i++] = record; + ZedDatabase[7].bNeedsReplacement = bReplaceScrake; // - Fleshpound - lastStandardZed = i; - record.ZedName = "Fleshpound"; - record.ZedType = class'NicePack.NiceZombieFleshPound'; - record.MeanZedType = class'NicePack.MeanZombieFleshPound'; - record.HL = 2.5; - record.MeanHLBonus = 1.5; - record.bNeedsReplacement = bReplaceFleshpound; - ZedDatabase[i++] = record; - // - Shiver - record.ZedName = "Shiver"; - record.ZedType = class'NicePack.NiceZombieShiver'; - record.MeanZedType = none; - record.HL = 1; - record.bNeedsReplacement = false; - ZedDatabase[i++] = record; - // - Jason - record.ZedName = "Jason"; - record.ZedType = class'NicePack.NiceZombieJason'; - record.MeanZedType = none; - record.HL = 1.5; - record.bNeedsReplacement = false; - ZedDatabase[i++] = record; - // - Tesla Husk - record.ZedName = "Tesla husk"; - record.ZedType = class'NicePack.NiceZombieTeslaHusk'; - record.MeanZedType = none; - record.HL = 1.5; - record.bNeedsReplacement = false; - ZedDatabase[i++] = record; - // - Brute - record.ZedName = "Brute"; - record.ZedType = class'NicePack.NiceZombieBrute'; - record.MeanZedType = none; - record.HL = 2; - record.bNeedsReplacement = false; - ZedDatabase[i++] = record; - // - Ghost - record.ZedName = "Ghost"; - record.ZedType = class'NicePack.NiceZombieGhost'; - record.MeanZedType = none; - record.HL = 0.5; - record.bNeedsReplacement = false; - ZedDatabase[i++] = record; - // - Sick - record.ZedName = "Sick"; - record.ZedType = class'NicePack.NiceZombieSick'; - record.MeanZedType = none; - record.HL = 1.0; - record.bNeedsReplacement = false; - ZedDatabase[i++] = record; - // Nothing has yet spawned - for(i = 0;i < ZedDatabase.length;i ++){ - ZedDatabase[i].bAlreadySpawned = false; - ZedDatabase[i].bMeanAlreadySpawned = false; - } + ZedDatabase[8].bNeedsReplacement = bReplaceFleshpound; + // FIXME!!! + lastStandardZed = 8; + // Add voting for mean zeds VH = class'ScrnVotingHandlerMut'.static.GetVotingHandler(Level.Game); if(VH == none){ @@ -362,28 +238,33 @@ simulated function PostBeginPlay(){ if(FFVO != none) FFVO.Mut = self; } - else + else log("Unable to spawn voting handler mutator", class.outer.name); } + simulated function PostNetBeginPlay() { super.PostNetBeginPlay(); - if(Role < ROLE_Authority) + + if (Role < ROLE_Authority) LoadReplicationData(); } -function SetReplicationData(){ - SrvFlags = 0; - if(bInitialTrader) - SrvFlags = SrvFlags | 0x00000001; - if(bStillDuringInitTrader) - SrvFlags = SrvFlags | 0x00000002; -} -simulated function LoadReplicationData(){ - if(Role == ROLE_Authority) - return; + +simulated function LoadReplicationData() +{ bInitialTrader = (SrvFlags & 0x00000001) > 0; bStillDuringInitTrader = (SrvFlags & 0x00000002) > 0; } + +function SetReplicationData() +{ + SrvFlags = 0; + if (bInitialTrader) + SrvFlags = SrvFlags | 0x00000001; + if (bStillDuringInitTrader) + SrvFlags = SrvFlags | 0x00000002; +} + simulated function Timer(){ local KFHumanPawn nextPawn; local int currentPlayersMax; @@ -413,56 +294,90 @@ simulated function Timer(){ } maxPlayersInGame = Max(maxPlayersInGame, currentPlayersMax); } -simulated function Tick(float Delta){ - local int i; - local NiceInteraction niceInt; - local NicePlayerController localPlayer; - super.Tick(Delta); - if(ScrnGT != none && ScrnGT.WaveCountDown <= 5) - bIsPreGame = false; - if(ScrnMut != none && !bSpawnRateEnforced && ScrnMut.bTickExecuted){ - bSpawnRateEnforced = true; - ScrnMut.OriginalWaveSpawnPeriod = FMax(minSpawnRate, FMin(maxSpawnRate, ScrnMut.OriginalWaveSpawnPeriod)); + +// initial tick, does some job and shuts down +auto state loadInteractionnSpawnRate +{ + // state tick, overrides global + simulated function Tick(float Delta) + { + local NiceInteraction niceInt; + local NicePlayerController localPlayer; + + if (level.netMode == NM_DedicatedServer) + { + // set spawn rate! + if (ScrnMut != none) + ScrnMut.OriginalWaveSpawnPeriod = FMax(minSpawnRate, FMin(maxSpawnRate, ScrnMut.OriginalWaveSpawnPeriod)); + // do not execute below code on dedicated servers! + GoToState(''); + DisableServerGlobalTick(); + return; + } + + localPlayer = NicePlayerController(Level.GetLocalPlayerController()); + if (localPlayer == none) + return; + + // spawn some magic + if (localPlayer.storageClient != none && localPlayer.remoteRI != none) + { + localPlayer.storageClient.remoteRI = localPlayer.remoteRI; + localPlayer.storageClient.events.static.CallLinkEstablished(); + } + + // Actually add the interaction + niceInt = NiceInteraction(localPlayer.Player.InteractionMaster.AddInteraction(string(class'NiceInteraction'), localPlayer.Player)); + niceInt.RegisterMutator(Self); + + // break this state and go to global + GoToState(''); } +} + +// disable tick for servers! +final private function DisableServerGlobalTick() +{ + Disable('Tick'); +} + +// global tick +simulated function Tick(float Delta) +{ + local int i; + local NicePlayerController localPlayer; + localPlayer = NicePlayerController(Level.GetLocalPlayerController()); // Check if the local PlayerController is available yet - if(localPlayer == none) + if (localPlayer == none) return; - if( Role < Role_AUTHORITY && !bClientLinkEstablished - && localPlayer.storageClient != none && localPlayer.remoteRI != none){ - bClientLinkEstablished = true; - localPlayer.storageClient.remoteRI = localPlayer.remoteRI; - localPlayer.storageClient.events.static.CallLinkEstablished(); - } - if(localPlayer.bFlagDisplayCounters){ - for(i = 0;i < niceCounterSet.Length;i ++){ - if(niceCounterSet[i].ownerSkill == none) - niceCounterSet[i].value = UpdateCounterValue(niceCounterSet[i].cName); - else if(class'NiceVeterancyTypes'.static.hasSkill(localPlayer, niceCounterSet[i].ownerSkill)) - niceCounterSet[i].value = niceCounterSet[i].ownerSkill.static. + + if (localPlayer.bFlagDisplayCounters) + { + for (i = 0; i < niceCounterSet.Length; i++) + { + if (niceCounterSet[i].ownerSkill == none) + niceCounterSet[i].value = UpdateCounterValue(niceCounterSet[i].cName); + else if(class'NiceVeterancyTypes'.static.hasSkill(localPlayer, niceCounterSet[i].ownerSkill)) + niceCounterSet[i].value = niceCounterSet[i].ownerSkill.static. UpdateCounterValue(niceCounterSet[i].cName, localPlayer); - else - niceCounterSet[i].value = 0; - } + else + niceCounterSet[i].value = 0; + } } // Reset tick counter for traces localPlayer.tracesThisTick = 0; // Manage resetting of effects' limits - if(Level.TimeSeconds >= localPlayer.nextEffectsResetTime){ - localPlayer.nextEffectsResetTime = Level.TimeSeconds + 0.1; - localPlayer.currentEffectTimeWindow ++; - if(localPlayer.currentEffectTimeWindow >= 10) - localPlayer.currentEffectTimeWindow = 0; - localPlayer.effectsSpawned[localPlayer.currentEffectTimeWindow] = 0; + if (Level.TimeSeconds >= localPlayer.nextEffectsResetTime) + { + localPlayer.nextEffectsResetTime = Level.TimeSeconds + 0.1; + localPlayer.currentEffectTimeWindow ++; + if (localPlayer.currentEffectTimeWindow >= 10) + localPlayer.currentEffectTimeWindow = 0; + localPlayer.effectsSpawned[localPlayer.currentEffectTimeWindow] = 0; } - // Add interaction - if(interactionAdded) - return; - // Actually add the interaction - niceInt = NiceInteraction(localPlayer.Player.InteractionMaster.AddInteraction("NicePack.NiceInteraction", localPlayer.Player)); - niceInt.RegisterMutator(Self); - interactionAdded = true; } + simulated function bool CheckReplacement(Actor Other, out byte bSuperRelevant){ local int i; local NiceMonster niceMonster; @@ -472,15 +387,14 @@ simulated function bool CheckReplacement(Actor Other, out byte bSuperRelevant){ local NicePlayerController playerContr; local NiceRepInfoRemoteData remoteRI; local NiceReplicationInfo niceRI; - local MeanReplicationInfo meanRI; local PlayerReplicationInfo pri; // Replace loot on levels - if(Other.class == class'KFRandomItemSpawn' || Other.class == class'ScrnBalanceSrv.ScrnRandomItemSpawn'){ - ReplaceWith(Other, "NicePack.NiceRandomItemSpawn"); + if(Other.class == class'KFRandomItemSpawn' || Other.class == class'ScrnRandomItemSpawn'){ + ReplaceWith(Other, string(class'NiceRandomItemSpawn')); return false; } - else if(Other.class == class'KFAmmoPickup' || Other.class == class'ScrnBalanceSrv.ScrnAmmoPickup') { - ReplaceWith(Other, "NicePack.NiceAmmoPickup"); + else if(Other.class == class'KFAmmoPickup' || Other.class == class'ScrnAmmoPickup') { + ReplaceWith(Other, string(class'NiceAmmoPickup')); return false; } else if(bReplacePickups && Pickup(Other) != none){ @@ -497,8 +411,6 @@ simulated function bool CheckReplacement(Actor Other, out byte bSuperRelevant){ niceRI = spawn(class'NiceReplicationInfo', pri.Owner); niceRI.Mut = self; remoteRI = spawn(class'NiceRepInfoRemoteData', pri.Owner); - meanRI = spawn(class'MeanReplicationInfo', pri.Owner); - meanRI.ownerPRI = pri; playerContr = NicePlayerController(PlayerReplicationInfo(Other).Owner); playerContr.niceRI = niceRI; playerContr.remoteRI = remoteRI; @@ -520,7 +432,7 @@ simulated function bool CheckReplacement(Actor Other, out byte bSuperRelevant){ currNumPlayers++; if(boss == none) { niceMonster.Health *= hpScale(niceMonster.PlayerCountHealthScale) / niceMonster.NumPlayersHealthModifer(); - niceMonster.HealthMax = niceMonster.Health; + niceMonster.HealthMax = niceMonster.Health; niceMonster.HeadHealth *= hpScale(niceMonster.PlayerNumHeadHealthScale) / niceMonster.NumPlayersHeadHealthModifer(); niceMonster.HeadHealthMax = niceMonster.HeadHealth; if(Level.Game.NumPlayers == 1){ @@ -538,7 +450,7 @@ function int FindPickupReplacementIndex(Pickup item) { local int i; for(i=0; i < pickupReplaceArray.length;i ++){ - if(pickupReplaceArray[i].vanillaClass == item.class || pickupReplaceArray[i].scrnClass == item.class) + if(pickupReplaceArray[i].vanillaClass == item.class || pickupReplaceArray[i].scrnClass == item.class) return i; } return -1; @@ -584,18 +496,7 @@ simulated function int GetVisibleCountersAmount(){ simulated function int UpdateCounterValue(string cName){ return 0; } -simulated function AddWeapProgress(class weapClass, float progress, - optional bool bShowCounter, optional int counter){ - local WeaponProgressDisplay newProgress; - newProgress.weapClass = weapClass; - newProgress.progress = progress; - newProgress.bShowCounter = bShowCounter; - newProgress.counter = counter; - niceWeapProgressSet[niceWeapProgressSet.Length] = newProgress; -} -simulated function ClearWeapProgress(){ - niceWeapProgressSet.Length = 0; -} + // Returns cash per wave based on current difficulty // Returns cash per wave based on current difficulty function int GetWaveCash(int lastCashWave, int nextWave){ @@ -626,7 +527,9 @@ function GiveProgressiveDosh(NicePlayerController nicePlayer){ record.lastCashWave = nextWave; UpdatePlayerRecord(record); } -simulated function Mutate(string MutateString, PlayerController kfPlayer){ + +simulated function Mutate(string MutateString, PlayerController kfPlayer) +{ local int i, readLenght; local NicePlayerController nicePlayer; local NiceServerData remoteData; @@ -640,10 +543,13 @@ simulated function Mutate(string MutateString, PlayerController kfPlayer){ // Always contains at least 10 elements, that may be empty strings if there wasn't enough modifiers. // Done for safe access without the need to check for bounds. local array modArray; + + super.Mutate(MutateString, kfPlayer); + // Helpful sequence white = chr(27)$chr(200)$chr(200)$chr(200); // Transform our command into array for convenience - wordsArray = SplitString(MutateString, " "); + Split(MutateString, " ", wordsArray); // Exit if command is empty if(wordsArray.Length == 0) return; @@ -738,7 +644,6 @@ simulated function Mutate(string MutateString, PlayerController kfPlayer){ nicePlayer.ClientMessage("Compressed lenght:" @ string(inputStream.GetSizeInBytes()) ); nicePlayer.ClientMessage("Output:"@outputStream.ReadClassName(readLenght)); } - Super.Mutate(MutateString, kfPlayer); } /* Good test for writer else if(command ~= "TEST"){ @@ -926,48 +831,7 @@ function BroadcastSkills(){ } } } -// Function for string splitting, because why would we have it as a standard function? It would be silly, right? -function array SplitString(string inputString, string div){ - local array parts; - local bool bEOL; - local string tempChar; - local int preCount, curCount, partCount, strLength; - strLength = Len(inputString); - if(strLength == 0) - return parts; - bEOL = false; - preCount = 0; - curCount = 0; - partCount = 0; - while(!bEOL) - { - tempChar = Mid(inputString, curCount, 1); - if(tempChar != div) - curCount ++; - else - { - if(curCount == preCount) - { - curCount ++; - preCount ++; - } - else - { - parts[partCount] = Mid(inputString, preCount, curCount - preCount); - partCount ++; - preCount = curCount + 1; - curCount = preCount; - } - } - if(curCount == strLength) - { - if(preCount != strLength) - parts[partCount] = Mid(inputString, preCount, curCount); - bEOL = true; - } - } - return parts; -} + // Function for broadcasting messages to players function BroadcastToAll(string message){ local Controller P; @@ -1037,8 +901,34 @@ static function string GetDescriptionText(string SettingName){ } return Super.GetDescriptionText(SettingName); } + defaultproperties { + GroupName="KFNicePack" + FriendlyName="Package for nice/mean servers" + Description="Does stuff." + bAlwaysRelevant=True + RemoteRole=ROLE_SimulatedProxy + bAddToServerPackages=True + + // used in scrn voting and HL calculation + // TODO remove HL! + ZedDatabase(00)=(ZedName="Clot",ZedType=class'NiceZombieClot',MeanZedType=class'MeanZombieClot',HL=0.0,MeanHLBonus=0.5) + ZedDatabase(01)=(ZedName="Crawler",ZedType=class'NiceZombieCrawler',MeanZedType=class'MeanZombieCrawler',HL=0.5,MeanHLBonus=1.5) + ZedDatabase(02)=(ZedName="Stalker",ZedType=class'NiceZombieStalker',MeanZedType=class'MeanZombieStalker',HL=0.5,MeanHLBonus=0.5) + ZedDatabase(03)=(ZedName="Gorefast",ZedType=class'NiceZombieGorefast',MeanZedType=class'MeanZombieGorefast',HL=0.0,MeanHLBonus=0.5) + ZedDatabase(04)=(ZedName="Bloat",ZedType=class'NiceZombieBloat',MeanZedType=class'MeanZombieBloat',HL=0.0,MeanHLBonus=0.5) + ZedDatabase(05)=(ZedName="Siren",ZedType=class'NiceZombieSiren',MeanZedType=class'MeanZombieSiren',HL=1.0,MeanHLBonus=1.0) + ZedDatabase(06)=(ZedName="Husk",ZedType=class'NiceZombieHusk',MeanZedType=class'MeanZombieHusk',HL=1.0,MeanHLBonus=1.5) + ZedDatabase(07)=(ZedName="Scrake",ZedType=class'NiceZombieScrake',MeanZedType=class'MeanZombieScrake',HL=1.5,MeanHLBonus=1.5) + ZedDatabase(08)=(ZedName="Fleshpound",ZedType=class'NiceZombieFleshPound',MeanZedType=class'MeanZombieFleshPound',HL=2.5,MeanHLBonus=1.5) + ZedDatabase(09)=(ZedName="Shiver",ZedType=class'NiceZombieShiver',HL=1.0) + ZedDatabase(10)=(ZedName="Jason",ZedType=class'NiceZombieJason',HL=1.5) + ZedDatabase(11)=(ZedName="Tesla Husk",ZedType=class'NiceZombieTeslaHusk',HL=1.5) + ZedDatabase(12)=(ZedName="Brute",ZedType=class'NiceZombieBrute',HL=2.0) + ZedDatabase(13)=(ZedName="Ghost",ZedType=class'NiceZombieGhost',HL=0.5) + ZedDatabase(14)=(ZedName="Sick",ZedType=class'NiceZombieSick',HL=1.0) + bScaleZedHealth=True bReplacePickups=True bInitialTrader=True @@ -1071,26 +961,19 @@ defaultproperties bNoLateFFIncrease=True junkieNextGoal=1 bIsPreGame=True - pickupReplaceArray(0)=(vanillaClass=Class'KFMod.MAC10Pickup',scrnClass=Class'ScrnBalanceSrv.ScrnMAC10Pickup',NewClass=Class'NicePack.NiceMAC10Pickup') - pickupReplaceArray(1)=(vanillaClass=Class'KFMod.WinchesterPickup',scrnClass=Class'ScrnBalanceSrv.ScrnWinchesterPickup',NewClass=Class'NicePack.NiceWinchesterPickup') - pickupReplaceArray(2)=(vanillaClass=Class'KFMod.CrossbowPickup',scrnClass=Class'ScrnBalanceSrv.ScrnCrossbowPickup',NewClass=Class'NicePack.NiceCrossbowPickup') - pickupReplaceArray(3)=(vanillaClass=Class'KFMod.SPSniperPickup',scrnClass=Class'ScrnBalanceSrv.ScrnSPSniperPickup',NewClass=Class'NicePack.NiceMaulerPickup') - pickupReplaceArray(4)=(vanillaClass=Class'KFMod.M14EBRPickup',scrnClass=Class'ScrnBalanceSrv.ScrnM14EBRPickup',NewClass=Class'NicePack.NiceM14EBRPickup') - pickupReplaceArray(5)=(vanillaClass=Class'KFMod.M99Pickup',scrnClass=Class'ScrnBalanceSrv.ScrnM99Pickup',NewClass=Class'NicePack.NiceM99Pickup') - pickupReplaceArray(6)=(vanillaClass=Class'KFMod.ShotgunPickup',scrnClass=Class'ScrnBalanceSrv.ScrnShotgunPickup',NewClass=Class'NicePack.NiceShotgunPickup') - pickupReplaceArray(7)=(vanillaClass=Class'KFMod.BoomStickPickup',scrnClass=Class'ScrnBalanceSrv.ScrnBoomStickPickup',NewClass=Class'NicePack.NiceBoomStickPickup') - pickupReplaceArray(8)=(vanillaClass=Class'KFMod.NailGunPickup',scrnClass=Class'ScrnBalanceSrv.ScrnNailGunPickup',NewClass=Class'NicePack.NiceNailGunPickup') - pickupReplaceArray(9)=(vanillaClass=Class'KFMod.KSGPickup',scrnClass=Class'ScrnBalanceSrv.ScrnKSGPickup',NewClass=Class'NicePack.NiceKSGPickup') - pickupReplaceArray(10)=(vanillaClass=Class'KFMod.BenelliPickup',scrnClass=Class'ScrnBalanceSrv.ScrnBenelliPickup',NewClass=Class'NicePack.NiceBenelliPickup') - pickupReplaceArray(11)=(vanillaClass=Class'KFMod.AA12Pickup',scrnClass=Class'ScrnBalanceSrv.ScrnAA12Pickup',NewClass=Class'NicePack.NiceAA12Pickup') - NiceUniversalDescriptions(0)="Survive on %m in ScrN Balance mode" - NiceUniversalDescriptions(1)="Survive on %m in ScrN Balance mode with Hardcore Level 5+" - NiceUniversalDescriptions(2)="Survive on %m in ScrN Balance mode with Hardcore Level 10+" - NiceUniversalDescriptions(3)="Survive on %m in ScrN Balance mode with Hardcore Level 15+" - bAddToServerPackages=True - GroupName="KFNicePack" - FriendlyName="Package for nice/mean servers" - Description="Does stuff." - bAlwaysRelevant=True - RemoteRole=ROLE_SimulatedProxy -} + + // replace pickups that map spawn's itself + pickupReplaceArray(00)=(vanillaClass=Class'KFMod.MAC10Pickup',scrnClass=Class'ScrnMAC10Pickup',NewClass=class'NiceMAC10Pickup') + pickupReplaceArray(01)=(vanillaClass=Class'KFMod.WinchesterPickup',scrnClass=Class'ScrnWinchesterPickup',NewClass=class'NiceWinchesterPickup') + pickupReplaceArray(02)=(vanillaClass=Class'KFMod.CrossbowPickup',scrnClass=Class'ScrnCrossbowPickup',NewClass=class'NiceCrossbowPickup') + pickupReplaceArray(03)=(vanillaClass=Class'KFMod.SPSniperPickup',scrnClass=Class'ScrnSPSniperPickup',NewClass=class'NiceMaulerPickup') + pickupReplaceArray(04)=(vanillaClass=Class'KFMod.M14EBRPickup',scrnClass=Class'ScrnM14EBRPickup',NewClass=class'NiceM14EBRPickup') + pickupReplaceArray(05)=(vanillaClass=Class'KFMod.M99Pickup',scrnClass=Class'ScrnM99Pickup',NewClass=class'NiceM99Pickup') + pickupReplaceArray(06)=(vanillaClass=Class'KFMod.ShotgunPickup',scrnClass=Class'ScrnShotgunPickup',NewClass=class'NiceShotgunPickup') + pickupReplaceArray(07)=(vanillaClass=Class'KFMod.BoomStickPickup',scrnClass=Class'ScrnBoomStickPickup',NewClass=class'NiceBoomStickPickup') + pickupReplaceArray(08)=(vanillaClass=Class'KFMod.NailGunPickup',scrnClass=Class'ScrnNailGunPickup',NewClass=class'NiceNailGunPickup') + pickupReplaceArray(09)=(vanillaClass=Class'KFMod.KSGPickup',scrnClass=Class'ScrnKSGPickup',NewClass=class'NiceKSGPickup') + pickupReplaceArray(10)=(vanillaClass=Class'KFMod.BenelliPickup',scrnClass=Class'ScrnBenelliPickup',NewClass=class'NiceBenelliPickup') + pickupReplaceArray(11)=(vanillaClass=Class'KFMod.AA12Pickup',scrnClass=Class'ScrnAA12Pickup',NewClass=class'NiceAA12Pickup') + pickupReplaceArray(12)=(vanillaClass=Class'KFMod.MachetePickup',scrnClass=Class'ScrnMachetePickup',NewClass=class'NiceMachetePickup') +} \ No newline at end of file diff --git a/sources/NicePlayerController.uc b/sources/NicePlayerController.uc index 7519a9a..8909aec 100644 --- a/sources/NicePlayerController.uc +++ b/sources/NicePlayerController.uc @@ -2,6 +2,8 @@ class NicePlayerController extends ScrnPlayerController config(NiceUser) dependson(NicePack) dependson(NiceFire); + +var globalconfig int ZedHPBarStyle; // 0 - big zeds, 1 - all, 2 - disabled var globalconfig int nicePlayerInfoVersionNumber; // These are values stored in a settings file var globalconfig bool bDebug; @@ -134,16 +136,17 @@ replication{ ServerSetHLMessages, ServerMarkSettingsLoaded, ServerStartleZeds, ServerSetDisplayCounters, ServerSetDisplayWeaponProgress, ActivateAbility; } + // Called on server only! -function PostLogin(){ +function PostLogin() +{ local NicePack.PlayerRecord record; local NiceGameType NiceGT; - local NiceTSCGame TSCGT; local ScrnCustomPRI ScrnPRI; + Super.PostLogin(); // Restore data NiceGT = NiceGameType(Level.Game); - TSCGT = NiceTSCGame(Level.Game); ScrnPRI = class'ScrnCustomPRI'.static.FindMe(PlayerReplicationInfo); if(ScrnPRI != none) SteamID64 = ScrnPRI.GetSteamID64(); @@ -167,6 +170,7 @@ function PostLogin(){ // Spawn ability manager abilityManager = Spawn(class'NiceAbilityManager', self); } + simulated function ClientPostLogin(){ local int i, j, k; local bool bEntryExists; @@ -198,7 +202,7 @@ simulated function ClientPostLogin(){ playedWithDatabase = newPlayedWithData; UpdateDefaultWeaponSettings(); // Create sync node - storageClient = new class'NicePack.NiceStorageClient'; + storageClient = new class'NiceStorageClient'; storageClient.events.static.AddAdapter(class'NiceRemoteDataAdapter', level); // Init collisions if(Role < ROLE_Authority) @@ -401,12 +405,12 @@ simulated event Destroyed(){ // Screw that simulated function ClientWeaponDestroyed(class WClass){} // This event is generated when new pawn spawns -function PawnSpawned(){ +function PawnSpawned() +{ local bool bFoundExp; local float convertedExp; local ClientPerkRepLink R; local SRCustomProgress exp; - local MeanReplicationInfo meanRI; local NicePack.PlayerRecord record; //local NiceHumanPawn nicePawn; // Make sure our health is at it's top @@ -494,10 +498,6 @@ function PawnSpawned(){ exp.IncrementProgress(convertedExp); } } - // Stop after-death bleeding - meanRI = class'MeanReplicationInfo'.static.findSZri(PlayerReplicationInfo); - if(meanRI != none) - meanRI.stopBleeding(); // Give necessary dosh to the player if(NicePackMutator != none) NicePackMutator.GiveProgressiveDosh(self); @@ -601,23 +601,32 @@ simulated function ClientLog(String logStr){ if(bFlagDebug) Log("NiceDebug:"$logStr); } -function ServerUse(){ + +function ServerUse() +{ local NiceHumanPawn myPawn; + myPawn = NiceHumanPawn(Pawn); - if(myPawn == none){ + if (myPawn == none) + { super.ServerUse(); return; } + // Handle initial shop / medic drugs - if(NicePackMutator != none && NicePackMutator.bIsPreGame && NicePackMutator.bInitialTrader){ - if(VSize(Pawn.Velocity) <= 0.0){ + if (NicePackMutator != none && NicePackMutator.bIsPreGame && NicePackMutator.bInitialTrader) + { + if (VSize(Pawn.Velocity) <= 0.0) + { ShowBuyMenu("Initial trader", myPawn.MaxCarryWeight); bOpenedInitTrader = true; } } - else - super.ServerUse(); + + // call this anyways, so we can use doors! + super.ServerUse(); } + simulated function ClientUpdatePawnMaxHealth(NiceHumanPawn updatePawn, int newHealthMax){ updatePawn.HealthMax = newHealthMax; } @@ -1264,7 +1273,7 @@ state Spectating{ A = Trace(HitLocation, HitNormal, TraceEnd, TraceStart, true); if(Pawn(A) != none) ServerSetViewTarget(A); - } + } } simulated function ClientSpawnGhostProjectile(Vector Start, int pitch, int yaw, int roll, NiceFire.ShotType shotParams, NiceFire.FireModeContext fireContext, bool bForceComplexTraj){ local Rotator projectileDir; @@ -1440,8 +1449,104 @@ exec simulated function Siren(float value) sirenScreamMod = value; } + +// copy-cat to fix MyTrader accessed none log spam +function ClientLocationalVoiceMessage(PlayerReplicationInfo Sender, + PlayerReplicationInfo Recipient, + name MessageType, byte MessageID, + optional Pawn SenderPawn, optional vector SenderLocation) +{ + local VoicePack Voice; + local ShopVolume Shop; + + if (Sender == none || Sender.VoiceType == none || Player.Console == none || Level.NetMode == NM_DedicatedServer) + { + return; + } + + Voice = Spawn(Sender.VoiceType, self); + if (KFVoicePack(Voice) != none) + { + if (MessageType == 'TRADER') + { + if (Pawn != none && MessageID >= 4) + { + foreach Pawn.TouchingActors(class'ShopVolume', Shop) + { + // fix this + if (Shop.MyTrader != none) + SenderLocation = Shop.MyTrader.Location; + else + SenderLocation = Shop.Location; + + // Only play the 30 Seconds remaining messages come across as Locational Speech if we're in the Shop + if (MessageID == 4) + { + return; + } + else if (MessageID == 5) + { + MessageID = 999; + } + + break; + } + } + + // Only play the 10 Seconds remaining message if we are in the Shop + // and only play the 30 seconds remaning message if we haven't been to the Shop + if (MessageID == 5 || (MessageID == 4 && bHasHeardTraderWelcomeMessage)) + { + return; + } + else if (MessageID == 999) + { + MessageID = 5; + } + + // Store the fact that we've heard the Trader's Welcome message on the client + if (MessageID == 7) + { + bHasHeardTraderWelcomeMessage = true; + } + // If we're hearing the Shop's Closed Message, reset the Trader's Welcome message flag + else if (MessageID == 6) + { + bHasHeardTraderWelcomeMessage = false; + } + + KFVoicePack(Voice).ClientInitializeLocational(Sender, Recipient, MessageType, MessageID, SenderPawn, SenderLocation); + + if (MessageID > 6 /*&& bBuyMenuIsOpen*/) + { + // TODO: Show KFVoicePack(Voice).GetClientParsedMessage() in the Buy Menu + } + else if (KFVoicePack(Voice).GetClientParsedMessage() != "") + { + // Radio commands print to Text + TeamMessage(Sender, KFVoicePack(Voice).GetClientParsedMessage(), 'Trader'); + } + } + else + { + KFVoicePack(Voice).ClientInitializeLocational(Sender, Recipient, MessageType, MessageID, SenderPawn, SenderLocation); + + if (KFVoicePack(Voice).GetClientParsedMessage() != "") + { + TeamMessage(Sender, KFVoicePack(Voice).GetClientParsedMessage(), 'Voice'); + } + } + } + else if (Voice != none) + { + Voice.ClientInitialize(Sender, Recipient, MessageType, MessageID); + } +} + + defaultproperties { + MidGameMenuClass="NicePack.NiceInvasionLoginMenu" nicePlayerInfoVersionNumber=1 bAltSwitchesModes=True bAdvReloadCheck=True @@ -1465,7 +1570,6 @@ defaultproperties effectsLimitSoft=100 effectsLimitHard=200 sirenScreamMod=1.000000 - TSCLobbyMenuClassString="NicePack.NiceTSCLobbyMenu" LobbyMenuClassString="NicePack.NiceLobbyMenu" - PawnClass=Class'NicePack.NiceHumanPawn' + PawnClass=class'NiceHumanPawn' } diff --git a/sources/NiceRandomItemSpawn.uc b/sources/NiceRandomItemSpawn.uc index b6396ca..17e8bce 100644 --- a/sources/NiceRandomItemSpawn.uc +++ b/sources/NiceRandomItemSpawn.uc @@ -1,11 +1,15 @@ class NiceRandomItemSpawn extends ScrnRandomItemSpawn; + defaultproperties { - PickupClasses(0)=Class'NicePack.NiceWinchesterPickup' - PickupClasses(1)=Class'NicePack.NiceShotgunPickup' - PickupClasses(2)=Class'NicePack.NiceBullpupPickup' - PickupClasses(3)=Class'NicePack.NiceMagnumPickup' - PickupClasses(4)=Class'NicePack.NiceWinchesterPickup' - PickupClasses(5)=Class'NicePack.NiceM79Pickup' - PickupClasses(8)=Class'NicePack.NiceMAC10Pickup' -} + PickupClasses(0)=Class'NiceWinchesterPickup' + PickupClasses(1)=Class'NiceShotgunPickup' + PickupClasses(2)=Class'NiceBullpupPickup' + PickupClasses(3)=Class'NiceMagnumPickup' + PickupClasses(4)=Class'NiceWinchesterPickup' + PickupClasses(5)=Class'NiceM79Pickup' + PickupClasses(6)=Class'NiceAxePickup' + // mut's checkreplcmt will change this to proper class! + PickupClasses(7)=Class'KFMod.Vest' + PickupClasses(8)=class'NiceMAC10Pickup' +} \ No newline at end of file diff --git a/sources/NiceReplicationInfo.uc b/sources/NiceReplicationInfo.uc index 8843064..a685f4e 100644 --- a/sources/NiceReplicationInfo.uc +++ b/sources/NiceReplicationInfo.uc @@ -185,25 +185,19 @@ simulated function HandleNiceHealingMechanicsAndSkills simulated function RemovePoisonAndBleed(NiceHumanPawn healed) { - local Inventory I; - local MeanReplicationInfo MRI; + local Inventory I; // log spam fix if (healed == none) return; - // No bleeding - MRI = class'MeanReplicationInfo'.static. - findSZri(healed.PlayerReplicationInfo); - if (MRI != none) - MRI.stopBleeding(); - // No poison + // No poison and bleed if (healed.inventory == none) return; for (I = healed.inventory; I != none; I = I.inventory) { - if (MeanPoisonInventory(I) != none) + if (MeanPoisonInventory(I) != none || MeanBleedInventory(I) != none) I.Destroy(); } } diff --git a/sources/Perks/Abilities/NiceAbilityManager.uc b/sources/Perks/Abilities/NiceAbilityManager.uc index f307ff4..96058e2 100644 --- a/sources/Perks/Abilities/NiceAbilityManager.uc +++ b/sources/Perks/Abilities/NiceAbilityManager.uc @@ -164,6 +164,6 @@ function Tick(float deltaTime){ defaultproperties { maxAbilitiesAmount=5 - Events=Class'NicePack.NiceAbilitiesEvents' + Events=class'NiceAbilitiesEvents' DrawType=DT_None } diff --git a/sources/Perks/Berserker/NiceVetBerserker.uc b/sources/Perks/Berserker/NiceVetBerserker.uc index 70d37bb..7038297 100644 --- a/sources/Perks/Berserker/NiceVetBerserker.uc +++ b/sources/Perks/Berserker/NiceVetBerserker.uc @@ -98,16 +98,16 @@ static function string GetCustomLevelInfo(byte Level){ defaultproperties { bNewTypePerk=True - SkillGroupA(0)=Class'NicePack.NiceSkillZerkWindCutter' - SkillGroupA(1)=Class'NicePack.NiceSkillZerkWhirlwind' - SkillGroupA(2)=Class'NicePack.NiceSkillZerkColossus' - SkillGroupA(3)=Class'NicePack.NiceSkillZerkUndead' - SkillGroupA(4)=Class'NicePack.NiceSkillZerkZEDAccelerate' - SkillGroupB(0)=Class'NicePack.NiceSkillZerkCleave' - SkillGroupB(1)=Class'NicePack.NiceSkillZerkFury' - SkillGroupB(2)=Class'NicePack.NiceSkillZerkGunzerker' - SkillGroupB(3)=Class'NicePack.NiceSkillZerkVorpalBlade' - SkillGroupB(4)=Class'NicePack.NiceSkillZerkZEDUnbreakable' + SkillGroupA(0)=class'NiceSkillZerkWindCutter' + SkillGroupA(1)=class'NiceSkillZerkWhirlwind' + SkillGroupA(2)=class'NiceSkillZerkColossus' + SkillGroupA(3)=class'NiceSkillZerkUndead' + SkillGroupA(4)=class'NiceSkillZerkZEDAccelerate' + SkillGroupB(0)=class'NiceSkillZerkCleave' + SkillGroupB(1)=class'NiceSkillZerkFury' + SkillGroupB(2)=class'NiceSkillZerkGunzerker' + SkillGroupB(3)=class'NiceSkillZerkVorpalBlade' + SkillGroupB(4)=class'NiceSkillZerkZEDUnbreakable' progressArray0(0)=100 progressArray0(1)=1000 progressArray0(2)=3000 @@ -115,7 +115,7 @@ defaultproperties progressArray0(4)=30000 progressArray0(5)=100000 progressArray0(6)=200000 - DefaultDamageType=Class'NicePack.NiceDamageTypeVetBerserker' + DefaultDamageType=class'NiceDamageTypeVetBerserker' OnHUDIcons(0)=(PerkIcon=Texture'KillingFloorHUD.Perks.Perk_Berserker',StarIcon=Texture'KillingFloorHUD.HUD.Hud_Perk_Star',DrawColor=(B=255,G=255,R=255,A=255)) OnHUDIcons(1)=(PerkIcon=Texture'KillingFloor2HUD.Perk_Icons.Perk_Berserker_Gold',StarIcon=Texture'KillingFloor2HUD.Perk_Icons.Hud_Perk_Star_Gold',DrawColor=(B=255,G=255,R=255,A=255)) OnHUDIcons(2)=(PerkIcon=Texture'ScrnTex.Perks.Perk_Berserker_Green',StarIcon=Texture'ScrnTex.Perks.Hud_Perk_Star_Green',DrawColor=(B=255,G=255,R=255,A=255)) diff --git a/sources/Perks/Commando/NiceVetCommando.uc b/sources/Perks/Commando/NiceVetCommando.uc index 43e9c11..db16fbc 100644 --- a/sources/Perks/Commando/NiceVetCommando.uc +++ b/sources/Perks/Commando/NiceVetCommando.uc @@ -11,9 +11,9 @@ static function array GetProgressArray(byte ReqNum, optional out int Double } static function class GetNadeType(KFPlayerReplicationInfo KFPRI){ /*if(KFPRI != none && class'NiceVetFieldMedic'.static.hasSkill(NicePlayerController(KFPRI.Owner), class'NiceSkillMedicArmament')) - return class'NicePack.NiceMedicNade';*/ + return class'NiceMedicNade';*/ //return class'NiceMedicNadePoison'; - return class'NicePack.NiceNade'; + return class'NiceNade'; } static function float GetHealthBarsDistanceMulti(KFPlayerReplicationInfo KFPRI){ /*if(KFPRI != none && SomeoneHasSkill(NicePlayerController(KFPRI.Owner), class'NiceSkillCommandoStrategist')) @@ -26,7 +26,7 @@ static function float GetStalkerViewDistanceMulti(KFPlayerReplicationInfo KFPRI) return 1.0; } static function bool CanCookNade(KFPlayerReplicationInfo KFPRI, Weapon Weap){ - return GetNadeType(KFPRI) != class'NicePack.NiceMedicNadePoison'; + return GetNadeType(KFPRI) != class'NiceMedicNadePoison'; } static function float GetMagCapacityMod(KFPlayerReplicationInfo KFPRI, KFWeapon Other){ local class pickupClass; @@ -78,16 +78,16 @@ static function string GetCustomLevelInfo(byte Level){ defaultproperties { bNewTypePerk=True - SkillGroupA(0)=Class'NicePack.NiceSkillCommandoExplosivePower' - SkillGroupA(1)=Class'NicePack.NiceSkillCommandoLargerMags' - SkillGroupA(2)=Class'NicePack.NiceSkillCommandoPerfectExecution' - //SkillGroupA(3)=Class'NicePack.' - SkillGroupA(4)=Class'NicePack.NiceSkillCommandoZEDProfessional' - SkillGroupB(0)=Class'NicePack.NiceSkillCommandoRegeneration' - SkillGroupB(1)=Class'NicePack.NiceSkillCommandoQuickermags' - SkillGroupB(2)=Class'NicePack.NiceSkillCommandoOverclocking' - //SkillGroupB(3)=Class'NicePack.' - SkillGroupB(4)=Class'NicePack.NiceSkillCommandoZEDHeavenCanceller' + SkillGroupA(0)=class'NiceSkillCommandoExplosivePower' + SkillGroupA(1)=class'NiceSkillCommandoLargerMags' + SkillGroupA(2)=class'NiceSkillCommandoPerfectExecution' + //SkillGroupA(3)=class'' + SkillGroupA(4)=class'NiceSkillCommandoZEDProfessional' + SkillGroupB(0)=class'NiceSkillCommandoRegeneration' + SkillGroupB(1)=class'NiceSkillCommandoQuickermags' + SkillGroupB(2)=class'NiceSkillCommandoOverclocking' + //SkillGroupB(3)=class'' + SkillGroupB(4)=class'NiceSkillCommandoZEDHeavenCanceller' progressArray0(0)=100 progressArray0(1)=1000 progressArray0(2)=3000 @@ -95,7 +95,7 @@ defaultproperties progressArray0(4)=30000 progressArray0(5)=100000 progressArray0(6)=200000 - DefaultDamageType=Class'NicePack.NiceDamageTypeVetCommando' + DefaultDamageType=class'NiceDamageTypeVetCommando' OnHUDIcons(0)=(PerkIcon=Texture'KillingFloorHUD.Perks.Perk_Commando',StarIcon=Texture'KillingFloorHUD.HUD.Hud_Perk_Star',DrawColor=(B=255,G=255,R=255,A=255)) OnHUDIcons(1)=(PerkIcon=Texture'KillingFloor2HUD.Perk_Icons.Perk_Commando_Gold',StarIcon=Texture'KillingFloor2HUD.Perk_Icons.Hud_Perk_Star_Gold',DrawColor=(B=255,G=255,R=255,A=255)) OnHUDIcons(2)=(PerkIcon=Texture'ScrnTex.Perks.Perk_Commando_Green',StarIcon=Texture'ScrnTex.Perks.Hud_Perk_Star_Green',DrawColor=(B=255,G=255,R=255,A=255)) diff --git a/sources/Perks/Demolitions/NiceVetDemolitions.uc b/sources/Perks/Demolitions/NiceVetDemolitions.uc index 697085e..a0c1006 100644 --- a/sources/Perks/Demolitions/NiceVetDemolitions.uc +++ b/sources/Perks/Demolitions/NiceVetDemolitions.uc @@ -37,7 +37,7 @@ static function int AddDamage(KFPlayerReplicationInfo KFPRI, KFMonster Injured, local class pickupClass; pickupClass = GetPickupFromDamageType(DmgType); perkDamage = float(InDamage); - if(DmgType == class'NicePack.NiceDamTypeDemoExplosion') + if(DmgType == class'NiceDamTypeDemoExplosion') return 1.6 * perkDamage; if(IsPerkedPickup(pickupClass)) perkDamage *= 1.25; @@ -81,16 +81,16 @@ static function string GetCustomLevelInfo(byte Level){ defaultproperties { bNewTypePerk=True - SkillGroupA(0)=Class'NicePack.NiceSkillDemoConcussion' - SkillGroupA(1)=Class'NicePack.NiceSkillDemoOnperk' - SkillGroupA(2)=Class'NicePack.NiceSkillDemoDirectApproach' - SkillGroupA(3)=Class'NicePack.NiceSkillDemoReactiveArmor' - SkillGroupA(4)=Class'NicePack.NiceSkillDemoZEDDuckAndCover' - SkillGroupB(0)=Class'NicePack.NiceSkillDemoOffperk' - SkillGroupB(1)=Class'NicePack.NiceSkillDemoManiac' - SkillGroupB(2)=Class'NicePack.NiceSkillDemoAPShot' - SkillGroupB(3)=Class'NicePack.NiceSkillDemoVolatile' - SkillGroupB(4)=Class'NicePack.NiceSkillDemoZEDFullBlast' + SkillGroupA(0)=class'NiceSkillDemoConcussion' + SkillGroupA(1)=class'NiceSkillDemoOnperk' + SkillGroupA(2)=class'NiceSkillDemoDirectApproach' + SkillGroupA(3)=class'NiceSkillDemoReactiveArmor' + SkillGroupA(4)=class'NiceSkillDemoZEDDuckAndCover' + SkillGroupB(0)=class'NiceSkillDemoOffperk' + SkillGroupB(1)=class'NiceSkillDemoManiac' + SkillGroupB(2)=class'NiceSkillDemoAPShot' + SkillGroupB(3)=class'NiceSkillDemoVolatile' + SkillGroupB(4)=class'NiceSkillDemoZEDFullBlast' progressArray0(0)=100 progressArray0(1)=1000 progressArray0(2)=3000 @@ -98,7 +98,7 @@ defaultproperties progressArray0(4)=30000 progressArray0(5)=100000 progressArray0(6)=200000 - DefaultDamageType=Class'NicePack.NiceDamageTypeVetDemolitions' + DefaultDamageType=class'NiceDamageTypeVetDemolitions' OnHUDIcons(0)=(PerkIcon=Texture'KillingFloor2HUD.Perk_Icons.Perk_Demolition',StarIcon=Texture'KillingFloorHUD.HUD.Hud_Perk_Star',DrawColor=(B=255,G=255,R=255,A=255)) OnHUDIcons(1)=(PerkIcon=Texture'KillingFloor2HUD.Perk_Icons.Perk_Demolition_Gold',StarIcon=Texture'KillingFloor2HUD.Perk_Icons.Hud_Perk_Star_Gold',DrawColor=(B=255,G=255,R=255,A=255)) OnHUDIcons(2)=(PerkIcon=Texture'ScrnTex.Perks.Perk_Demolition_Green',StarIcon=Texture'ScrnTex.Perks.Hud_Perk_Star_Green',DrawColor=(B=255,G=255,R=255,A=255)) diff --git a/sources/Perks/Enforcer/NiceEnforcerAbilitiesAdapter.uc b/sources/Perks/Enforcer/NiceEnforcerAbilitiesAdapter.uc index 1d1214d..4072823 100644 --- a/sources/Perks/Enforcer/NiceEnforcerAbilitiesAdapter.uc +++ b/sources/Perks/Enforcer/NiceEnforcerAbilitiesAdapter.uc @@ -27,10 +27,10 @@ static function AbilityActivated( string abilityID, } if(abilityID == class'NiceSkillEnforcerStuporA'.default.abilityID){ relatedPlayer.abilityManager.SetAbilityState(1, ASTATE_COOLDOWN); - foreach relatedPlayer.CollidingActors(class'NiceMonster', victim, class'NicePack.NiceSkillEnforcerStuporA'.default.radius, relatedPlayer.pawn.location) + foreach relatedPlayer.CollidingActors(class'NiceMonster', victim, class'NiceSkillEnforcerStuporA'.default.radius, relatedPlayer.pawn.location) { if (victim == none) continue; - victim.DoRightPainReaction(class'NicePack.NiceSkillEnforcerStuporA'.default.painScore, + victim.DoRightPainReaction(class'NiceSkillEnforcerStuporA'.default.painScore, relatedPlayer.pawn, victim.location, Vect(0,0,0), none, 0.0, KFPlayerReplicationInfo(relatedPlayer.PlayerReplicationInfo)); } diff --git a/sources/Perks/Enforcer/NiceVetEnforcer.uc b/sources/Perks/Enforcer/NiceVetEnforcer.uc index 298e08f..588719c 100644 --- a/sources/Perks/Enforcer/NiceVetEnforcer.uc +++ b/sources/Perks/Enforcer/NiceVetEnforcer.uc @@ -37,9 +37,9 @@ static function int AddStunScore(KFPlayerReplicationInfo KFPRI, KFMonster Injure static function class GetNadeType(KFPlayerReplicationInfo KFPRI){ /*if(HasSkill(NicePlayerController(KFPRI.Owner), class'NiceSkillSupportCautious')) - return class'NicePack.NiceDelayedNade'; - return class'NicePack.NiceNailNade';*/ - return class'NicePack.NiceCryoNade'; + return class'NiceDelayedNade'; + return class'NiceNailNade';*/ + return class'NiceCryoNade'; } static function float AddExtraAmmoFor(KFPlayerReplicationInfo KFPRI, Class AmmoType){ @@ -97,7 +97,7 @@ static function float ModifyRecoilSpread(KFPlayerReplicationInfo KFPRI, WeaponFi niceWeap = class(other); if(niceWeap != none && niceWeap.default.reloadType == RTYPE_MAG) return 1.5; - if(other == class'NicePack.NiceM41AAssaultRifle' || other == class'NicePack.NiceChainGun' || other == class'NicePack.NiceStinger' ) + if(other == class'NiceM41AAssaultRifle' || other == class'NiceChainGun' || other == class'NiceStinger' ) return 1.5; return 1.0; }*/ @@ -140,16 +140,16 @@ static function SetupAbilities(KFPlayerReplicationInfo KFPRI){ defaultproperties { bNewTypePerk=True - SkillGroupA(0)=Class'NicePack.NiceSkillEnforcerUnstoppable' - SkillGroupA(1)=Class'NicePack.NiceSkillEnforcerBombard' - SkillGroupA(2)=Class'NicePack.NiceSkillEnforcerCoating' - SkillGroupA(3)=Class'NicePack.NiceSkillEnforcerStuporA' - SkillGroupA(4)=Class'NicePack.NiceSkillEnforcerZEDBarrage' - SkillGroupB(0)=Class'NicePack.NiceSkillEnforcerUnshakable' - SkillGroupB(1)=Class'NicePack.NiceSkillEnforcerMultitasker' - SkillGroupB(2)=Class'NicePack.NiceSkillEnforcerDetermination' - SkillGroupB(3)=Class'NicePack.NiceSkillEnforcerBrutalCarnageA' - SkillGroupB(4)=Class'NicePack.NiceSkillEnforcerZEDJuggernaut' + SkillGroupA(0)=class'NiceSkillEnforcerUnstoppable' + SkillGroupA(1)=class'NiceSkillEnforcerBombard' + SkillGroupA(2)=class'NiceSkillEnforcerCoating' + SkillGroupA(3)=class'NiceSkillEnforcerStuporA' + SkillGroupA(4)=class'NiceSkillEnforcerZEDBarrage' + SkillGroupB(0)=class'NiceSkillEnforcerUnshakable' + SkillGroupB(1)=class'NiceSkillEnforcerMultitasker' + SkillGroupB(2)=class'NiceSkillEnforcerDetermination' + SkillGroupB(3)=class'NiceSkillEnforcerBrutalCarnageA' + SkillGroupB(4)=class'NiceSkillEnforcerZEDJuggernaut' progressArray0(0)=100 progressArray0(1)=1000 progressArray0(2)=3000 @@ -157,7 +157,7 @@ defaultproperties progressArray0(4)=30000 progressArray0(5)=100000 progressArray0(6)=200000 - DefaultDamageType=Class'NicePack.NiceDamageTypeVetEnforcer' + DefaultDamageType=class'NiceDamageTypeVetEnforcer' OnHUDIcons(0)=(PerkIcon=Texture'KillingFloorHUD.Perks.Perk_Support',StarIcon=Texture'KillingFloorHUD.HUD.Hud_Perk_Star',DrawColor=(B=255,G=255,R=255,A=255)) OnHUDIcons(1)=(PerkIcon=Texture'KillingFloor2HUD.Perk_Icons.Perk_Support_Gold',StarIcon=Texture'KillingFloor2HUD.Perk_Icons.Hud_Perk_Star_Gold',DrawColor=(B=255,G=255,R=255,A=255)) OnHUDIcons(2)=(PerkIcon=Texture'ScrnTex.Perks.Perk_Support_Green',StarIcon=Texture'ScrnTex.Perks.Hud_Perk_Star_Green',DrawColor=(B=255,G=255,R=255,A=255)) diff --git a/sources/Perks/FieldMedic/NiceVetFieldMedic.uc b/sources/Perks/FieldMedic/NiceVetFieldMedic.uc index 5e75f67..9a486a3 100644 --- a/sources/Perks/FieldMedic/NiceVetFieldMedic.uc +++ b/sources/Perks/FieldMedic/NiceVetFieldMedic.uc @@ -18,7 +18,7 @@ static function float GetHeadshotCheckMultiplier(KFPlayerReplicationInfo KFPRI, // Give Medic normal hand nades again - he should buy medic nade lauchers for healing nades static function class GetNadeType(KFPlayerReplicationInfo KFPRI){ if(KFPRI != none && class'NiceVetFieldMedic'.static.hasSkill(NicePlayerController(KFPRI.Owner), class'NiceSkillMedicArmament')) - return class'NicePack.NiceMedicNade'; + return class'NiceMedicNade'; return class'NiceMedicNadePoison'; } static function float GetAmmoPickupMod(KFPlayerReplicationInfo KFPRI, KFAmmunition Other){ @@ -29,7 +29,7 @@ static function float GetAmmoPickupMod(KFPlayerReplicationInfo KFPRI, KFAmmuniti } //can't cook medic nades static function bool CanCookNade(KFPlayerReplicationInfo KFPRI, Weapon Weap){ - return GetNadeType(KFPRI) != class'NicePack.NiceMedicNade'; + return GetNadeType(KFPRI) != class'NiceMedicNade'; } static function float GetSyringeChargeRate(KFPlayerReplicationInfo KFPRI){ return 3.0; @@ -63,16 +63,16 @@ static function string GetCustomLevelInfo(byte Level){ } defaultproperties { - SkillGroupA(0)=Class'NicePack.NiceSkillMedicSymbioticHealth' - SkillGroupA(1)=Class'NicePack.NiceSkillMedicArmament' - SkillGroupA(2)=Class'NicePack.NiceSkillMedicAdrenalineShot' - SkillGroupA(3)=Class'NicePack.NiceSkillMedicInjection' - SkillGroupA(4)=Class'NicePack.NiceSkillMedicZEDHeavenCanceller' - SkillGroupB(0)=Class'NicePack.NiceSkillMedicAimAssistance' - SkillGroupB(1)=Class'NicePack.NiceSkillMedicPesticide' - SkillGroupB(2)=Class'NicePack.NiceSkillMedicRegeneration' - SkillGroupB(3)=Class'NicePack.NiceSkillMedicTranquilizer' - SkillGroupB(4)=Class'NicePack.NiceSkillMedicZEDFrenzy' + SkillGroupA(0)=class'NiceSkillMedicSymbioticHealth' + SkillGroupA(1)=class'NiceSkillMedicArmament' + SkillGroupA(2)=class'NiceSkillMedicAdrenalineShot' + SkillGroupA(3)=class'NiceSkillMedicInjection' + SkillGroupA(4)=class'NiceSkillMedicZEDHeavenCanceller' + SkillGroupB(0)=class'NiceSkillMedicAimAssistance' + SkillGroupB(1)=class'NiceSkillMedicPesticide' + SkillGroupB(2)=class'NiceSkillMedicRegeneration' + SkillGroupB(3)=class'NiceSkillMedicTranquilizer' + SkillGroupB(4)=class'NiceSkillMedicZEDFrenzy' progressArray0(0)=100 progressArray0(1)=1000 progressArray0(2)=3000 diff --git a/sources/Perks/Firebug/NiceVetFirebug.uc b/sources/Perks/Firebug/NiceVetFirebug.uc index febe414..00e87f0 100644 --- a/sources/Perks/Firebug/NiceVetFirebug.uc +++ b/sources/Perks/Firebug/NiceVetFirebug.uc @@ -89,14 +89,14 @@ static function int ReduceDamage(KFPlayerReplicationInfo KFPRI, KFPawn Injured, static function class GetNadeType(KFPlayerReplicationInfo KFPRI) { if ( GetClientVeteranSkillLevel(KFPRI) >= 3 ) { - return class'NicePack.NiceFlameNade'; + return class'NiceFlameNade'; } return super.GetNadeType(KFPRI); } //can't cook fire nades static function bool CanCookNade(KFPlayerReplicationInfo KFPRI, Weapon Weap) { - return GetNadeType(KFPRI) != class'ScrnBalanceSrv.ScrnFlameNade'; + return GetNadeType(KFPRI) != class'ScrnFlameNade'; } //v2.60: +60% faster charge with Husk Gun static function float GetReloadSpeedModifierStatic(KFPlayerReplicationInfo KFPRI, class Other) @@ -160,7 +160,7 @@ static function string GetCustomLevelInfo( byte Level ) } defaultproperties { - DefaultDamageType=Class'NicePack.NiceDamTypeFire' + DefaultDamageType=class'NiceDamTypeFire' DefaultDamageTypeNoBonus=Class'KFMod.DamTypeMAC10MPInc' OnHUDIcons(0)=(PerkIcon=Texture'KillingFloorHUD.Perks.Perk_Firebug',StarIcon=Texture'KillingFloorHUD.HUD.Hud_Perk_Star',DrawColor=(B=255,G=255,R=255,A=255)) OnHUDIcons(1)=(PerkIcon=Texture'KillingFloor2HUD.Perk_Icons.Perk_Firebug_Gold',StarIcon=Texture'KillingFloor2HUD.Perk_Icons.Hud_Perk_Star_Gold',DrawColor=(B=255,G=255,R=255,A=255)) diff --git a/sources/Perks/NiceVeterancyTypes.uc b/sources/Perks/NiceVeterancyTypes.uc index 2282d0f..24560b4 100644 --- a/sources/Perks/NiceVeterancyTypes.uc +++ b/sources/Perks/NiceVeterancyTypes.uc @@ -285,20 +285,39 @@ static function int GetInvincibilityDuration(KFPlayerReplicationInfo KFPRI){ static function int GetInvincibilitySafeMisses(KFPlayerReplicationInfo KFPRI){ return 0; } -static function SpecialHUDInfo(KFPlayerReplicationInfo KFPRI, Canvas C){ + +static function SpecialHUDInfo(KFPlayerReplicationInfo KFPRI, Canvas C) +{ local KFMonster KFEnemy; local HUDKillingFloor HKF; + local int i, hp; local float MaxDistanceSquared; + MaxDistanceSquared = 640000; MaxDistanceSquared *= GetHealthBarsDistanceMulti(KFPRI)**2; HKF = HUDKillingFloor(C.ViewPort.Actor.myHUD); - if(HKF == none || C.ViewPort.Actor.Pawn == none || MaxDistanceSquared <= 0) + if (HKF == none || C.ViewPort.Actor.Pawn == none || MaxDistanceSquared <= 0) return; - foreach C.ViewPort.Actor.DynamicActors(class'KFMonster', KFEnemy){ - if(KFEnemy.Health > 0 && (!KFEnemy.Cloaked() || KFEnemy.bZapped || KFEnemy.bSpotted) && VSizeSquared(KFEnemy.Location - C.ViewPort.Actor.Pawn.Location) < MaxDistanceSquared) + + // read and use player settings + // 0 - big zeds, 1 - all, 2 - disabled + i = NicePlayerController(C.ViewPort.actor).ZedHPBarStyle; + + if (i == 2) + return; + else if (i == 1) + hp = 0; + else + hp = 1000; + + foreach C.ViewPort.Actor.DynamicActors(class'KFMonster', KFEnemy) + { + // check with stopwatch + if (KFEnemy.Health > hp && (!KFEnemy.Cloaked() || KFEnemy.bZapped || KFEnemy.bSpotted) && VSizeSquared(KFEnemy.Location - C.ViewPort.Actor.Pawn.Location) < MaxDistanceSquared) HKF.DrawHealthBar(C, KFEnemy, KFEnemy.Health, KFEnemy.HealthMax , 50.0); } } + // Is player standing still? static function bool IsStandingStill(KFPlayerReplicationInfo KFPRI){ if(KFPRI != none && PlayerController(KFPRI.Owner) != none && PlayerController(KFPRI.Owner).Pawn != none && VSize(PlayerController(KFPRI.Owner).Pawn.Velocity) > 0.0) @@ -321,19 +340,19 @@ static function string GetVetInfoText(byte Level, byte Type, optional byte Requi return Super.GetVetInfoText(Level, Type, RequirementNum); } static function class GetNadeType(KFPlayerReplicationInfo KFPRI){ - return class'NicePack.NiceNade'; + return class'NiceNade'; } static function SetupAbilities(KFPlayerReplicationInfo KFPRI){} defaultproperties { - SkillGroupA(0)=Class'NicePack.NiceSkill' - SkillGroupA(1)=Class'NicePack.NiceSkill' - SkillGroupA(2)=Class'NicePack.NiceSkill' - SkillGroupA(3)=Class'NicePack.NiceSkill' - SkillGroupA(4)=Class'NicePack.NiceSkill' - SkillGroupB(0)=Class'NicePack.NiceSkill' - SkillGroupB(1)=Class'NicePack.NiceSkill' - SkillGroupB(2)=Class'NicePack.NiceSkill' - SkillGroupB(3)=Class'NicePack.NiceSkill' - SkillGroupB(4)=Class'NicePack.NiceSkill' + SkillGroupA(0)=class'NiceSkill' + SkillGroupA(1)=class'NiceSkill' + SkillGroupA(2)=class'NiceSkill' + SkillGroupA(3)=class'NiceSkill' + SkillGroupA(4)=class'NiceSkill' + SkillGroupB(0)=class'NiceSkill' + SkillGroupB(1)=class'NiceSkill' + SkillGroupB(2)=class'NiceSkill' + SkillGroupB(3)=class'NiceSkill' + SkillGroupB(4)=class'NiceSkill' } diff --git a/sources/Perks/Sharpshooter/NiceVetSharpshooter.uc b/sources/Perks/Sharpshooter/NiceVetSharpshooter.uc index d2295c8..9e1d147 100644 --- a/sources/Perks/Sharpshooter/NiceVetSharpshooter.uc +++ b/sources/Perks/Sharpshooter/NiceVetSharpshooter.uc @@ -141,16 +141,16 @@ static function SetupAbilities(KFPlayerReplicationInfo KFPRI){ defaultproperties { bNewTypePerk=True - SkillGroupA(0)=Class'NicePack.NiceSkillSharpshooterKillConfirmed' - SkillGroupA(1)=Class'NicePack.NiceSkillSharpshooterDamage' - SkillGroupA(2)=Class'NicePack.NiceSkillSharpshooterDieAlready' - SkillGroupA(3)=Class'NicePack.NiceSkillSharpshooterReaperA' - SkillGroupA(4)=Class'NicePack.NiceSkillSharpshooterZEDAdrenaline' - SkillGroupB(0)=Class'NicePack.NiceSkillSharpshooterSurgical' - SkillGroupB(1)=Class'NicePack.NiceSkillSharpshooterControl' - SkillGroupB(2)=Class'NicePack.NiceSkillSharpshooterArdour' - SkillGroupB(3)=Class'NicePack.NiceSkillSharpshooterGunslingerA' - SkillGroupB(4)=Class'NicePack.NiceSkillSharpshooterZEDHundredGauntlets' + SkillGroupA(0)=class'NiceSkillSharpshooterKillConfirmed' + SkillGroupA(1)=class'NiceSkillSharpshooterDamage' + SkillGroupA(2)=class'NiceSkillSharpshooterDieAlready' + SkillGroupA(3)=class'NiceSkillSharpshooterReaperA' + SkillGroupA(4)=class'NiceSkillSharpshooterZEDAdrenaline' + SkillGroupB(0)=class'NiceSkillSharpshooterSurgical' + SkillGroupB(1)=class'NiceSkillSharpshooterControl' + SkillGroupB(2)=class'NiceSkillSharpshooterArdour' + SkillGroupB(3)=class'NiceSkillSharpshooterGunslingerA' + SkillGroupB(4)=class'NiceSkillSharpshooterZEDHundredGauntlets' progressArray0(0)=100 progressArray0(1)=1000 progressArray0(2)=3000 @@ -158,7 +158,7 @@ defaultproperties progressArray0(4)=30000 progressArray0(5)=100000 progressArray0(6)=200000 - DefaultDamageType=Class'NicePack.NiceDamageTypeVetSharpshooter' + DefaultDamageType=class'NiceDamageTypeVetSharpshooter' OnHUDIcons(0)=(PerkIcon=Texture'KillingFloorHUD.Perks.Perk_SharpShooter',StarIcon=Texture'KillingFloorHUD.HUD.Hud_Perk_Star',DrawColor=(B=255,G=255,R=255,A=255)) OnHUDIcons(1)=(PerkIcon=Texture'KillingFloor2HUD.Perk_Icons.Perk_SharpShooter_Gold',StarIcon=Texture'KillingFloor2HUD.Perk_Icons.Hud_Perk_Star_Gold',DrawColor=(B=255,G=255,R=255,A=255)) OnHUDIcons(2)=(PerkIcon=Texture'ScrnTex.Perks.Perk_SharpShooter_Green',StarIcon=Texture'ScrnTex.Perks.Hud_Perk_Star_Green',DrawColor=(B=255,G=255,R=255,A=255)) diff --git a/sources/TSC/NiceTSCGame.uc b/sources/TSC/NiceTSCGame.uc deleted file mode 100644 index bf61e18..0000000 --- a/sources/TSC/NiceTSCGame.uc +++ /dev/null @@ -1,111 +0,0 @@ -class NiceTSCGame extends TSCGame; -// Copy-pasted from NiceGameType -var NicePack NicePackMutator; -function RegisterMutator(NicePack activePack){ - NicePackMutator = activePack; -} -function SetupWave(){ - Super.SetupWave(); - // Event call - NicePackMutator.WaveStart(); -} -function RestartPlayer(Controller aPlayer){ - Super.RestartPlayer(aPlayer); - if(aPlayer.Pawn != none && NicePlayerController(aPlayer) != none) - NicePlayerController(aPlayer).PawnSpawned(); -} -State MatchInProgress{ - function BeginState(){ - Super(Invasion).BeginState(); - - WaveNum = InitialWave; - InvasionGameReplicationInfo(GameReplicationInfo).WaveNumber = WaveNum; - - if(NicePackMutator.bInitialTrader) - WaveCountDown = NicePackMutator.initialTraderTime + 10; - else - WaveCountDown = 10; - - SetupPickups(); - // Event call - NicePackMutator.MatchBegan(); - } - function DoWaveEnd(){ - Super.DoWaveEnd(); - // Event call - NicePackMutator.TraderStart(); - } -} -function DramaticEvent(float BaseZedTimePossibility, optional float DesiredZedTimeDuration){ - local bool bWasZedTime; - bWasZedTime = bZEDTimeActive; - Super.DramaticEvent(BaseZedTimePossibility, DesiredZedTimeDuration); - // Call events - if(!bWasZedTime && bZEDTimeActive) - NicePackMutator.ZedTimeActivated(); -} -event Tick(float DeltaTime){ - local float TrueTimeFactor; - local Controller C; - if(bZEDTimeActive){ - TrueTimeFactor = 1.1 / Level.TimeDilation; - CurrentZEDTimeDuration -= DeltaTime * TrueTimeFactor; - if(CurrentZEDTimeDuration < (ZEDTimeDuration*0.166) && CurrentZEDTimeDuration > 0 ){ - if(!bSpeedingBackUp){ - bSpeedingBackUp = true; - - for(C = Level.ControllerList;C != none;C = C.NextController){ - if(KFPlayerController(C)!= none) - KFPlayerController(C).ClientExitZedTime(); - } - } - SetGameSpeed(Lerp( (CurrentZEDTimeDuration/(ZEDTimeDuration*0.166)), 1.0, 0.2 )); - } - if(CurrentZEDTimeDuration <= 0){ - if(bZEDTimeActive) - NicePackMutator.ZedTimeDeactivated(); - bZEDTimeActive = false; - bSpeedingBackUp = false; - SetGameSpeed(1.0); - ZedTimeExtensionsUsed = 0; - } - } -} -function Killed(Controller Killer, Controller Killed, Pawn KilledPawn, class dmgType){ - local KFSteamStatsAndAchievements StatsAndAchievements; - Super.Killed(Killer, Killed, KilledPawn, dmgType); - if(PlayerController(Killer) != none){ - if (NiceMonster(KilledPawn) != none && Killed != Killer){ - StatsAndAchievements = KFSteamStatsAndAchievements(PlayerController(Killer).SteamStatsAndAchievements); - if(StatsAndAchievements != none){ - if(KilledPawn.IsA('NiceZombieStalker') || KilledPawn.IsA('MeanZombieStalker')){ - if(class(dmgType) != none) - StatsAndAchievements.AddStalkerKillWithLAR(); - } - else if(KilledPawn.IsA('NiceZombieClot') || KilledPawn.IsA('MeanZombieClot')){ - if(class(dmgType) != none) - KFSteamStatsAndAchievements(PlayerController(Killer).SteamStatsAndAchievements).AddClotKillWithLAR(); - } - } - } - } -} -// Reloaded to award damage -function int ReduceDamage(int Damage, pawn injured, pawn instigatedBy, vector HitLocation, out vector Momentum, class DamageType){ - local NiceMonster niceZed; - local KFPlayerController PC; - niceZed = NiceMonster(Injured); - if(niceZed != none){ - if(instigatedBy != none){ - PC = KFPlayerController(instigatedBy.Controller); - if(class(damageType) != none && PC != none) - class(damageType).Static.AwardNiceDamage(KFSteamStatsAndAchievements(PC.SteamStatsAndAchievements), Clamp(Damage, 1, Injured.Health), niceZed.scrnRules.HardcoreLevel); - } - } - return Super.ReduceDamage(Damage, injured, InstigatedBy, HitLocation, Momentum, DamageType); -} -defaultproperties -{ - GameName="Nice Team Survival Competition" - Description="Nice Edition of Team Survival Competition (TSCGame)." -} diff --git a/sources/TSC/NiceTSCLobbyFooter.uc b/sources/TSC/NiceTSCLobbyFooter.uc deleted file mode 100644 index 6552664..0000000 --- a/sources/TSC/NiceTSCLobbyFooter.uc +++ /dev/null @@ -1,22 +0,0 @@ -class NiceTSCLobbyFooter extends NiceLobbyFooter; -defaultproperties -{ - Begin Object Class=GUIButton Name=ReadyButton - Caption="Ready" - MenuState=MSAT_Disabled - Hint="Click to indicate you are ready to play" - WinTop=0.966146 - WinLeft=0.280000 - WinWidth=0.120000 - WinHeight=0.033203 - RenderWeight=2.000000 - TabOrder=4 - bBoundToParent=True - bVisible=False - ToolTip=None - - OnClick=TSCLobbyFooter.OnFooterClick - OnKeyEvent=ReadyButton.InternalOnKeyEvent - End Object - b_Ready=GUIButton'NicePack.NiceTSCLobbyFooter.ReadyButton' -} diff --git a/sources/TSC/NiceTSCLobbyMenu.uc b/sources/TSC/NiceTSCLobbyMenu.uc deleted file mode 100644 index 8d1a0ed..0000000 --- a/sources/TSC/NiceTSCLobbyMenu.uc +++ /dev/null @@ -1,12 +0,0 @@ -class NiceTSCLobbyMenu extends TSCLobbyMenu; -defaultproperties -{ - Begin Object Class=NiceTSCLobbyFooter Name=BuyFooter - RenderWeight=0.300000 - TabOrder=8 - bBoundToParent=False - bScaleToParent=False - OnPreDraw=BuyFooter.InternalOnPreDraw - End Object - t_Footer=NiceTSCLobbyFooter'NicePack.NiceTSCLobbyMenu.BuyFooter' -} diff --git a/sources/Utility.uc b/sources/Utility.uc new file mode 100644 index 0000000..81620ad --- /dev/null +++ b/sources/Utility.uc @@ -0,0 +1,50 @@ +class Utility extends object + abstract; + +// custom, colored hints +var const array NiceHints; + +final static function string GetNiceHint() +{ + local string white, blue; + + white = chr(27) $ chr(200) $ chr(200) $ chr(200); + blue = chr(27) $ chr(1) $ chr(100) $ chr(200); + + return white $ "Nice Floor: " $ blue $ default.NiceHints[rand(default.NiceHints.Length)]; +} + +final static function array GetNiceHintArray() +{ + local int i; + local string white, blue; + local array Hints; + + white = chr(27) $ chr(200) $ chr(200) $ chr(200); + blue = chr(27) $ chr(1) $ chr(100) $ chr(200); + + for ( i = 0; i < default.NiceHints.Length; i++ ) + Hints[Hints.Length] = white $ "Nice Floor: " $ blue $ default.NiceHints[i]; + + return Hints; +} + +defaultproperties +{ + // 'funny', customized hints + NiceHints[00]="Most weapons are clientside, so aim for the heads!" + NiceHints[01]="If you feel this is hard, you are not alone." + NiceHints[02]="This mode will always be in alpha state. Kill your hope." + NiceHints[03]="Only KAIO is able to compile this." + NiceHints[04]="We really hate kiting, so we made camping much harder." + NiceHints[05]="We love camping, so we made kiting almost impossible." + NiceHints[06]="You can play this if you beat 5 faked / 6p HP zeds." + NiceHints[07]="Hold or Die!" + NiceHints[08]="The Wipe Train has no breaks." + NiceHints[09]="You're welcome with requests. Just remember we are super lazy." + NiceHints[10]="If nothing works - it's intended." + NiceHints[11]="If you find any bug, we can make it a feature." + NiceHints[12]="Play this only if you don't have real life." + NiceHints[13]="You suck and we hate you." + NiceHints[14]="GITGUD" +} \ No newline at end of file diff --git a/sources/Weapons/BaseWeaponClasses/AssaultrRifles/NiceAssaultRifle.uc b/sources/Weapons/BaseWeaponClasses/AssaultrRifles/NiceAssaultRifle.uc index 04c5a89..8298bcd 100644 --- a/sources/Weapons/BaseWeaponClasses/AssaultrRifles/NiceAssaultRifle.uc +++ b/sources/Weapons/BaseWeaponClasses/AssaultrRifles/NiceAssaultRifle.uc @@ -189,11 +189,11 @@ simulated function DoToggle(){ ServerApplyFireModes(); PlayOwnedSound(ToggleSound, SLOT_none, 2.0,,,, false); if(MainFire == ETYPE_AUTO) - player.ReceiveLocalizedMessage(class'NicePack.NiceAssaultRifleMessage', 1); + player.ReceiveLocalizedMessage(class'NiceAssaultRifleMessage', 1); else if(MainFire == ETYPE_SEMI) - player.ReceiveLocalizedMessage(class'NicePack.NiceAssaultRifleMessage', 0); + player.ReceiveLocalizedMessage(class'NiceAssaultRifleMessage', 0); else if(MainFire == ETYPE_BURST) - player.ReceiveLocalizedMessage(class'NicePack.NiceAssaultRifleMessage', 2); + player.ReceiveLocalizedMessage(class'NiceAssaultRifleMessage', 2); } } simulated function SecondDoToggle(){ @@ -226,9 +226,9 @@ simulated function SecondDoToggle(){ ServerApplyFireModes(); PlayOwnedSound(ToggleSound, SLOT_none, 2.0,,,, false); if(choosenType == ETYPE_SEMI) - nicePlayer.ReceiveLocalizedMessage(class'NicePack.NiceAssaultRifleMessage', 4); + nicePlayer.ReceiveLocalizedMessage(class'NiceAssaultRifleMessage', 4); else - nicePlayer.ReceiveLocalizedMessage(class'NicePack.NiceAssaultRifleMessage', 5); + nicePlayer.ReceiveLocalizedMessage(class'NiceAssaultRifleMessage', 5); } simulated function ClientNiceChangeFireMode(bool bNewWaitForRelease, bool bNewSemiMustBurst){ local NiceFire niceF; diff --git a/sources/Weapons/BaseWeaponClasses/Medic/NiceMedicDartFire.uc b/sources/Weapons/BaseWeaponClasses/Medic/NiceMedicDartFire.uc index 5869395..10e1d4e 100644 --- a/sources/Weapons/BaseWeaponClasses/Medic/NiceMedicDartFire.uc +++ b/sources/Weapons/BaseWeaponClasses/Medic/NiceMedicDartFire.uc @@ -34,7 +34,7 @@ simulated function ReduceAmmoClient(){ defaultproperties { ProjectileSpeed=12500.000000 - bulletClass=Class'NicePack.NiceMedicProjectile' + bulletClass=class'NiceMedicProjectile' FireAimedAnim="Fire_Iron" FireSoundRef="KF_MP7Snd.Medicgun_Fire" StereoFireSoundRef="KF_MP7Snd.Medicgun_FireST" diff --git a/sources/Weapons/BaseWeaponClasses/NiceDamTypeFire.uc b/sources/Weapons/BaseWeaponClasses/NiceDamTypeFire.uc index 05e3d1a..a1927b1 100644 --- a/sources/Weapons/BaseWeaponClasses/NiceDamTypeFire.uc +++ b/sources/Weapons/BaseWeaponClasses/NiceDamTypeFire.uc @@ -9,7 +9,7 @@ defaultproperties heatPart=1.000000 bDealBurningDamage=True bCheckForHeadShots=False - //WeaponClass=Class'NicePack.NiceFlame9mm' + //WeaponClass=class'NiceFlame9mm' DeathString="%k incinerated %o." FemaleSuicide="%o roasted herself alive." MaleSuicide="%o roasted himself alive." diff --git a/sources/Weapons/BaseWeaponClasses/Pistols/NiceDualies.uc b/sources/Weapons/BaseWeaponClasses/Pistols/NiceDualies.uc index 345282e..44c3b58 100644 --- a/sources/Weapons/BaseWeaponClasses/Pistols/NiceDualies.uc +++ b/sources/Weapons/BaseWeaponClasses/Pistols/NiceDualies.uc @@ -428,7 +428,7 @@ function GiveAmmo(int m, WeaponPickup WP, bool bJustSpawned){ defaultproperties { - SingleClass=Class'NicePack.NiceSingle' + SingleClass=class'NiceSingle' altFlashBoneName="Tip_Left" altTPAnim="DualiesAttackLeft" altWeaponAttach="Bone_weapon2" @@ -460,7 +460,7 @@ defaultproperties TraderInfoTexture=Texture'KillingFloorHUD.Trader_Weapon_Images.Trader_Dual_9mm' ZoomInRotation=(Pitch=0,Roll=0) ZoomedDisplayFOV=65.000000 - FireModeClass(0)=Class'NicePack.NiceDualiesFire' + FireModeClass(0)=class'NiceDualiesFire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" AIRating=0.440000 @@ -472,10 +472,10 @@ defaultproperties Priority=65 InventoryGroup=2 GroupOffset=2 - PickupClass=Class'NicePack.NiceDualiesPickup' + PickupClass=class'NiceDualiesPickup' PlayerViewOffset=(X=20.000000,Z=-7.000000) BobDamping=7.000000 - AttachmentClass=Class'NicePack.NiceDualiesAttachment' + AttachmentClass=class'NiceDualiesAttachment' IconCoords=(X1=229,Y1=258,X2=296,Y2=307) ItemName="!!!Dual something" DrawScale=0.900000 diff --git a/sources/Weapons/BaseWeaponClasses/Pistols/NiceDualiesAmmo.uc b/sources/Weapons/BaseWeaponClasses/Pistols/NiceDualiesAmmo.uc index 4478e81..1fc24b8 100644 --- a/sources/Weapons/BaseWeaponClasses/Pistols/NiceDualiesAmmo.uc +++ b/sources/Weapons/BaseWeaponClasses/Pistols/NiceDualiesAmmo.uc @@ -6,7 +6,7 @@ defaultproperties AmmoPickupAmount=30 MaxAmmo=480 InitialAmount=240 - PickupClass=Class'NicePack.NiceDualiesAmmoPickup' + PickupClass=class'NiceDualiesAmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=413,Y1=82,X2=457,Y2=125) ItemName="Dualies bullets" diff --git a/sources/Weapons/BaseWeaponClasses/Pistols/NiceDualiesAmmoPickup.uc b/sources/Weapons/BaseWeaponClasses/Pistols/NiceDualiesAmmoPickup.uc index ec23b97..589d2ac 100644 --- a/sources/Weapons/BaseWeaponClasses/Pistols/NiceDualiesAmmoPickup.uc +++ b/sources/Weapons/BaseWeaponClasses/Pistols/NiceDualiesAmmoPickup.uc @@ -3,7 +3,7 @@ class NiceDualiesAmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=30 - InventoryType=Class'NicePack.NiceDualiesAmmo' + InventoryType=class'NiceDualiesAmmo' PickupMessage="Rounds (9mm)" StaticMesh=StaticMesh'KillingFloorStatics.DualiesAmmo' } diff --git a/sources/Weapons/BaseWeaponClasses/Pistols/NiceDualiesFire.uc b/sources/Weapons/BaseWeaponClasses/Pistols/NiceDualiesFire.uc index 1dd4ac2..36a1e2d 100644 --- a/sources/Weapons/BaseWeaponClasses/Pistols/NiceDualiesFire.uc +++ b/sources/Weapons/BaseWeaponClasses/Pistols/NiceDualiesFire.uc @@ -234,7 +234,7 @@ defaultproperties TweenTime=0.025000 FireForce="AssaultRifleFire" FireRate=0.087500 - AmmoClass=Class'NicePack.NiceSingleAmmo' + AmmoClass=class'NiceSingleAmmo' ShakeRotMag=(X=75.000000,Y=75.000000,Z=250.000000) ShakeRotRate=(X=10000.000000,Y=10000.000000,Z=10000.000000) ShakeRotTime=3.000000 diff --git a/sources/Weapons/BaseWeaponClasses/Pistols/NiceDualiesPickup.uc b/sources/Weapons/BaseWeaponClasses/Pistols/NiceDualiesPickup.uc index 063ff15..c3b553a 100644 --- a/sources/Weapons/BaseWeaponClasses/Pistols/NiceDualiesPickup.uc +++ b/sources/Weapons/BaseWeaponClasses/Pistols/NiceDualiesPickup.uc @@ -30,7 +30,7 @@ defaultproperties AmmoMesh=StaticMesh'KillingFloorStatics.DualiesAmmo' CorrespondingPerkIndex=2 EquipmentCategoryID=1 - InventoryType=Class'NicePack.NiceDualies' + InventoryType=class'NiceDualies' PickupMessage="You found another 9mm handgun" PickupForce="AssaultRiflePickup" StaticMesh=StaticMesh'KF_pickups_Trip.pistol.double9mm_pickup' diff --git a/sources/Weapons/BaseWeaponClasses/Pistols/NiceSingle.uc b/sources/Weapons/BaseWeaponClasses/Pistols/NiceSingle.uc index b5a5a06..3167373 100644 --- a/sources/Weapons/BaseWeaponClasses/Pistols/NiceSingle.uc +++ b/sources/Weapons/BaseWeaponClasses/Pistols/NiceSingle.uc @@ -180,7 +180,7 @@ function GiveTo(Pawn other, optional Pickup Pickup){ defaultproperties { - DualClass=Class'NicePack.NiceDualies' + DualClass=class'NiceDualies' bHasChargePhase=False FirstPersonFlashlightOffset=(X=-20.000000,Y=-22.000000,Z=8.000000) MagCapacity=15 @@ -195,7 +195,7 @@ defaultproperties StandardDisplayFOV=70.000000 TraderInfoTexture=Texture'KillingFloorHUD.Trader_Weapon_Images.Trader_9mm' ZoomedDisplayFOV=65.000000 - FireModeClass(0)=Class'NicePack.NiceSingleFire' + FireModeClass(0)=class'NiceSingleFire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" AIRating=0.250000 @@ -206,10 +206,10 @@ defaultproperties Priority=60 InventoryGroup=2 GroupOffset=1 - PickupClass=Class'NicePack.NiceSinglePickup' + PickupClass=class'NiceSinglePickup' PlayerViewOffset=(X=20.000000,Y=25.000000,Z=-10.000000) BobDamping=6.000000 - AttachmentClass=Class'NicePack.NiceSingleAttachment' + AttachmentClass=class'NiceSingleAttachment' IconCoords=(X1=434,Y1=253,X2=506,Y2=292) ItemName="Just a single pistol" } diff --git a/sources/Weapons/BaseWeaponClasses/Pistols/NiceSingleAmmoPickup.uc b/sources/Weapons/BaseWeaponClasses/Pistols/NiceSingleAmmoPickup.uc index f191cd2..4d5d4e7 100644 --- a/sources/Weapons/BaseWeaponClasses/Pistols/NiceSingleAmmoPickup.uc +++ b/sources/Weapons/BaseWeaponClasses/Pistols/NiceSingleAmmoPickup.uc @@ -3,7 +3,7 @@ class NiceSingleAmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=20 - InventoryType=Class'NicePack.NiceSingleAmmo' + InventoryType=class'NiceSingleAmmo' RespawnTime=0.000000 PickupMessage="Rounds (9mm)" StaticMesh=StaticMesh'KillingFloorStatics.DualiesAmmo' diff --git a/sources/Weapons/BaseWeaponClasses/Pistols/NiceSingleFire.uc b/sources/Weapons/BaseWeaponClasses/Pistols/NiceSingleFire.uc index 0349cd7..1f2cf8e 100644 --- a/sources/Weapons/BaseWeaponClasses/Pistols/NiceSingleFire.uc +++ b/sources/Weapons/BaseWeaponClasses/Pistols/NiceSingleFire.uc @@ -33,7 +33,7 @@ defaultproperties TweenTime=0.025000 FireForce="AssaultRifleFire" FireRate=0.175000 - AmmoClass=Class'NicePack.NiceSingleAmmo' + AmmoClass=class'NiceSingleAmmo' ShakeRotMag=(X=75.000000,Y=75.000000,Z=250.000000) ShakeRotRate=(X=10000.000000,Y=10000.000000,Z=10000.000000) ShakeRotTime=3.000000 diff --git a/sources/Weapons/BaseWeaponClasses/Pistols/NiceSinglePickup.uc b/sources/Weapons/BaseWeaponClasses/Pistols/NiceSinglePickup.uc index bb1c4d1..4963834 100644 --- a/sources/Weapons/BaseWeaponClasses/Pistols/NiceSinglePickup.uc +++ b/sources/Weapons/BaseWeaponClasses/Pistols/NiceSinglePickup.uc @@ -74,7 +74,7 @@ defaultproperties AmmoMesh=StaticMesh'KillingFloorStatics.DualiesAmmo' CorrespondingPerkIndex=2 EquipmentCategoryID=1 - InventoryType=Class'NicePack.NiceSingle' + InventoryType=class'NiceSingle' PickupMessage="You got the 9mm handgun" PickupSound=Sound'KF_9MMSnd.9mm_Pickup' PickupForce="AssaultRiflePickup" diff --git a/sources/Weapons/Grenades/NiceNailNade.uc b/sources/Weapons/Grenades/NiceNailNade.uc index d51e403..f6302a0 100644 --- a/sources/Weapons/Grenades/NiceNailNade.uc +++ b/sources/Weapons/Grenades/NiceNailNade.uc @@ -12,8 +12,8 @@ simulated function ReleaseNails(optional bool bServerOnly){ shotParams.damage = 52; shotParams.projSpeed = 3500.0; shotParams.momentum = 50000; - shotParams.shotDamageType = class'NicePack.NiceDamTypeNailGun'; - shotParams.bulletClass = class'NicePack.NiceNail'; + shotParams.shotDamageType = class'NiceDamTypeNailGun'; + shotParams.bulletClass = class'NiceNail'; shotParams.bCausePain = true; if(fireContext.instigator != none) niceMut = class'NicePack'.static.Myself(fireContext.Instigator.Level); diff --git a/sources/Weapons/NiceFire.uc b/sources/Weapons/NiceFire.uc index 88528ac..19d96ae 100644 --- a/sources/Weapons/NiceFire.uc +++ b/sources/Weapons/NiceFire.uc @@ -450,70 +450,83 @@ function PlayFiring(){ if(!currentContext.bIsBursting) FireCount ++; } -// Handle setting new recoil -simulated function HandleRecoil(float Rec){ - local int stationarySeconds; - local rotator NewRecoilRotation; - local NicePlayerController nicePlayer; - local NiceHumanPawn nicePawn; - local vector AdjustedVelocity; - local float AdjustedSpeed; - local KFWeapon kfWeap; - if(Instigator != none){ - nicePlayer = NicePlayerController(Instigator.Controller); - nicePawn = NiceHumanPawn(Instigator); - } - if(nicePlayer == none || nicePawn == none) - return; - if(bResetRecoil || nicePlayer.IsZedTimeActive() && class'NiceVeterancyTypes'.static.hasSkill(nicePlayer, class'NiceSkillEnforcerZEDBarrage')){ - Rec = 0.0; - bResetRecoil = false; - } - kfWeap= KFWeapon(Weapon); - if (kfWeap.bAimingRifle) { - Rec *= 0.5; - } - if(nicePawn.stationaryTime > 0.0 && class'NiceVeterancyTypes'.static.hasSkill(nicePlayer, class'NiceSkillHeavyStablePosition')){ - stationarySeconds = Ceil(2 * nicePawn.stationaryTime) - 1; - Rec *= FMax(0.0, 1.0 - (stationarySeconds * class'NiceSkillHeavyStablePosition'.default.recoilDampeningBonus)); - } - if(!nicePlayer.bFreeCamera){ - if(Weapon.GetFireMode(ThisModeNum).bIsFiring || currentContext.bIsBursting){ - NewRecoilRotation.Pitch = RandRange(maxVerticalRecoilAngle * 0.5, maxVerticalRecoilAngle); - NewRecoilRotation.Yaw = RandRange(maxHorizontalRecoilAngle * 0.5, maxHorizontalRecoilAngle); - if(!bRecoilRightOnly && Rand(2) == 1) +// Handle setting new recoil +simulated function HandleRecoil(float Rec) +{ + local int stationarySeconds; + local rotator NewRecoilRotation; + local NicePlayerController nicePlayer; + local NiceHumanPawn nicePawn; + local vector AdjustedVelocity; + local float AdjustedSpeed; + local KFWeapon KFW; + + if(Instigator != none) + { + nicePlayer = NicePlayerController(Instigator.Controller); + nicePawn = NiceHumanPawn(Instigator); + } + if(nicePlayer == none || nicePawn == none) + return; + if(bResetRecoil || nicePlayer.IsZedTimeActive() && class'NiceVeterancyTypes'.static.hasSkill(nicePlayer, class'NiceSkillEnforcerZEDBarrage')) + { + Rec = 0.0; + bResetRecoil = false; + } + KFW= KFWeapon(Weapon); + if (KFW.bAimingRifle) + { + Rec *= 0.5; + } + if (nicePawn.stationaryTime > 0.0 && class'NiceVeterancyTypes'.static.hasSkill(nicePlayer, class'NiceSkillHeavyStablePosition')) + { + stationarySeconds = Ceil(2 * nicePawn.stationaryTime) - 1; + Rec *= FMax(0.0, 1.0 - (stationarySeconds * class'NiceSkillHeavyStablePosition'.default.recoilDampeningBonus)); + } + if (!nicePlayer.bFreeCamera) + { + if (Weapon.GetFireMode(ThisModeNum).bIsFiring || currentContext.bIsBursting) + { + NewRecoilRotation.Pitch = RandRange(maxVerticalRecoilAngle * 0.5, maxVerticalRecoilAngle); + NewRecoilRotation.Yaw = RandRange(maxHorizontalRecoilAngle * 0.5, maxHorizontalRecoilAngle); + + if (!bRecoilRightOnly && Rand(2) == 1) NewRecoilRotation.Yaw *= -1; - if(RecoilVelocityScale > 0){ - if(Weapon.Owner != none && Weapon.Owner.Physics == PHYS_Falling && - Weapon.Owner.PhysicsVolume.Gravity.Z > class'PhysicsVolume'.default.Gravity.Z){ - AdjustedVelocity = Weapon.Owner.Velocity; - // Ignore Z velocity in low grav so we don't get massive recoil - AdjustedVelocity.Z = 0; - AdjustedSpeed = VSize(AdjustedVelocity); + if (RecoilVelocityScale > 0) + { + if (Weapon.Owner != none && Weapon.Owner.Physics == PHYS_Falling && + Weapon.Owner.PhysicsVolume.Gravity.Z > class'PhysicsVolume'.default.Gravity.Z) + { + AdjustedVelocity = Weapon.Owner.Velocity; + // Ignore Z velocity in low grav so we don't get massive recoil + AdjustedVelocity.Z = 0; + AdjustedSpeed = VSize(AdjustedVelocity); - // Reduce the falling recoil in low grav - NewRecoilRotation.Pitch += (AdjustedSpeed * RecoilVelocityScale * 0.5); - NewRecoilRotation.Yaw += (AdjustedSpeed * RecoilVelocityScale * 0.5); - } - else{ - NewRecoilRotation.Pitch += (VSize(Weapon.Owner.Velocity) * RecoilVelocityScale); - NewRecoilRotation.Yaw += (VSize(Weapon.Owner.Velocity) * RecoilVelocityScale); - } - } + // Reduce the falling recoil in low grav + NewRecoilRotation.Pitch += (AdjustedSpeed * RecoilVelocityScale * 0.5); + NewRecoilRotation.Yaw += (AdjustedSpeed * RecoilVelocityScale * 0.5); + } + else + { + NewRecoilRotation.Pitch += (VSize(Weapon.Owner.Velocity) * RecoilVelocityScale); + NewRecoilRotation.Yaw += (VSize(Weapon.Owner.Velocity) * RecoilVelocityScale); + } + } - NewRecoilRotation.Pitch += (Instigator.HealthMax / Instigator.Health * 5); - NewRecoilRotation.Yaw += (Instigator.HealthMax / Instigator.Health * 5); - NewRecoilRotation *= Rec; + NewRecoilRotation.Pitch += (Instigator.HealthMax / Instigator.Health * 5); + NewRecoilRotation.Yaw += (Instigator.HealthMax / Instigator.Health * 5); + NewRecoilRotation *= Rec; - if(default.FireRate <= 0) - nicePlayer.SetRecoil(NewRecoilRotation, RecoilRate); - else - nicePlayer.SetRecoil(NewRecoilRotation, RecoilRate * (FireRate / default.FireRate)); - } - } + if (default.FireRate <= 0) + nicePlayer.SetRecoil(NewRecoilRotation, RecoilRate); + else + nicePlayer.SetRecoil(NewRecoilRotation, RecoilRate * (FireRate / default.FireRate)); + } + } } + function DoFireEffect(){ local bool bIsShotgunBullet, bForceComplexTraj; local bool bPinpoint; @@ -541,7 +554,7 @@ function DoFireEffect(){ activeSpread *= class'NiceSkillEnforcerBombard'.default.spreadMult; } bIsShotgunBullet = ClassIsChildOf(fireShots[currentShot].bulletClass, class'NiceShotgunPellet'); - if( bIsShotgunBullet && weapon.class != class'NicePack.NiceSpas' && weapon.class != class'NiceNailGun' + if( bIsShotgunBullet && weapon.class != class'NiceSpas' && weapon.class != class'NiceNailGun' && class'NiceVeterancyTypes'.static.hasSkill(nicePlayer, class'NiceSkillSupportSlugs') ) activeSpread = 0.0; if(bIsShotgunBullet && activeSpread <= 0.0 && !bPinpoint) @@ -696,7 +709,7 @@ defaultproperties ProjPerFire=1 ProjectileSpeed=1524.000000 MaxBurstLength=3 - bulletClass=Class'NicePack.NiceBullet' + bulletClass=class'NiceBullet' contBonus=1.200000 contBonusReset=True maxBonusContLenght=1 diff --git a/sources/Weapons/NiceWeapon.uc b/sources/Weapons/NiceWeapon.uc index 609c211..efc2a0a 100644 --- a/sources/Weapons/NiceWeapon.uc +++ b/sources/Weapons/NiceWeapon.uc @@ -1331,55 +1331,75 @@ function SetNiceData(NicePlainData.Data transferData, optional NiceHumanPawn new secondaryCharge = class'NicePlainData'.static.GetInt(transferData, "ChargeAmount", 1); ClientSetSndCharge(secondaryCharge); } -simulated function ApplyLaserState(){ + +simulated function ApplyLaserState() +{ bLaserActive = LaserType > 0; - if(Role < ROLE_Authority) - ServerSetLaserType(LaserType); - if(NiceAttachment(ThirdPersonActor) != none) - NiceAttachment(ThirdPersonActor).SetLaserType(LaserType); + if (Role < ROLE_Authority) + ServerSetLaserType(LaserType); + if (NiceAttachment(ThirdPersonActor) != none) + NiceAttachment(ThirdPersonActor).SetLaserType(LaserType); + + // Instigator accessed none fix + if (Instigator == none || !Instigator.IsLocallyControlled()) + return; - if(!Instigator.IsLocallyControlled()) - return; - - if(bLaserActive){ - if(LaserDot == none) - LaserDot = Spawn(LaserDotClass, self); - LaserDot.SetLaserType(LaserType); - if(altLaserAttachmentBone != ''){ - if(altLaserDot == none) - altLaserDot = Spawn(LaserDotClass, self); - altLaserDot.SetLaserType(LaserType); - } - //spawn 1-st person laser attachment for weapon owner - if(LaserAttachment == none){ - SetBoneRotation(LaserAttachmentBone, LaserAttachmentRotation); - LaserAttachment = Spawn(LaserAttachmentClass,,,,); - AttachToBone(LaserAttachment, LaserAttachmentBone); - if(LaserAttachment != none) - LaserAttachment.SetRelativeLocation(LaserAttachmentOffset); - } - if(altLaserAttachment == none && altLaserAttachmentBone != ''){ - SetBoneRotation(altLaserAttachmentBone, altLaserAttachmentRotation); - altLaserAttachment = Spawn(LaserAttachmentClass,,,,); - AttachToBone(altLaserAttachment, altLaserAttachmentBone); - if(altLaserAttachment != none) - altLaserAttachment.SetRelativeLocation(altLaserAttachmentOffset); - } - ConstantColor'ScrnTex.Laser.LaserColor'.Color = LaserDot.GetLaserColor(); - LaserAttachment.bHidden = false; - altLaserAttachment.bHidden = false; + if (bLaserActive) + { + if (LaserDot == none) + LaserDot = Spawn(LaserDotClass, self); + LaserDot.SetLaserType(LaserType); + if (altLaserAttachmentBone != '') + { + if (altLaserDot == none) + altLaserDot = Spawn(LaserDotClass, self); + altLaserDot.SetLaserType(LaserType); + } + // spawn 1-st person laser attachment for weapon owner + if (LaserAttachment == none) + { + SetBoneRotation(LaserAttachmentBone, LaserAttachmentRotation); + LaserAttachment = Spawn(LaserAttachmentClass,,,,); + if (LaserAttachment != none) + { + AttachToBone(LaserAttachment, LaserAttachmentBone); + LaserAttachment.SetRelativeLocation(LaserAttachmentOffset); + } + } + else + LaserAttachment.bHidden = false; + + if (altLaserAttachment == none) + { + if (altLaserAttachmentBone != '') + { + SetBoneRotation(altLaserAttachmentBone, altLaserAttachmentRotation); + altLaserAttachment = Spawn(LaserAttachmentClass,,,,); + if (altLaserAttachment != none) + { + AttachToBone(altLaserAttachment, altLaserAttachmentBone); + altLaserAttachment.SetRelativeLocation(altLaserAttachmentOffset); + } + } + } + else + altLaserAttachment.bHidden = false; + + ConstantColor'ScrnTex.Laser.LaserColor'.Color = LaserDot.GetLaserColor(); } - else{ - if(LaserAttachment != none) - LaserAttachment.bHidden = true; - if(altLaserAttachment != none) - altLaserAttachment.bHidden = true; - if(LaserDot != none) - LaserDot.Destroy(); - if(altLaserDot != none) - altLaserDot.Destroy(); + else + { + if (LaserAttachment != none) + LaserAttachment.bHidden = true; + if (altLaserAttachment != none) + altLaserAttachment.bHidden = true; + if (LaserDot != none) + LaserDot.Destroy(); + if (altLaserDot != none) + altLaserDot.Destroy(); } } + simulated function ToggleLaser(){ if(!Instigator.IsLocallyControlled()) return; @@ -1578,12 +1598,36 @@ simulated function Destroyed(){ super(KFWeapon).Destroyed(); } + +simulated function float GetAmmoMulti() +{ + if (NextAmmoCheckTime > Level.TimeSeconds) + { + return LastAmmoResult; + } + + NextAmmoCheckTime = Level.TimeSeconds + 1; + + // Instigator accessed none fix + if (FireMode[0] != none && FireMode[0].AmmoClass != none && Instigator != none && KFPlayerReplicationInfo(Instigator.PlayerReplicationInfo) != none && + KFPlayerReplicationInfo(Instigator.PlayerReplicationInfo).ClientVeteranSkill != none ) + { + LastAmmoResult = KFPlayerReplicationInfo(Instigator.PlayerReplicationInfo).ClientVeteranSkill.static.AddExtraAmmoFor(KFPlayerReplicationInfo(Instigator.PlayerReplicationInfo), FireMode[0].AmmoClass); + } + else + { + LastAmmoResult = 1; + } + + return LastAmmoResult; +} + defaultproperties { recordedZoomTime=-1.000000 SecondaryCharge=1 - LaserAttachmentClass=Class'ScrnBalanceSrv.ScrnLaserAttachmentFirstPerson' - LaserDotClass=Class'ScrnBalanceSrv.ScrnLocalLaserDot' + LaserAttachmentClass=Class'ScrnLaserAttachmentFirstPerson' + LaserDotClass=Class'ScrnLocalLaserDot' LaserAttachmentBone="LightBone" MagazineBone="Magazine" bHasChargePhase=True diff --git a/sources/Weapons/Playable/AssaultRifles/AK12/NiceAK12Ammo.uc b/sources/Weapons/Playable/AssaultRifles/AK12/NiceAK12Ammo.uc index 02a8ec9..071183b 100644 --- a/sources/Weapons/Playable/AssaultRifles/AK12/NiceAK12Ammo.uc +++ b/sources/Weapons/Playable/AssaultRifles/AK12/NiceAK12Ammo.uc @@ -2,11 +2,11 @@ class NiceAK12Ammo extends NiceAmmo; #EXEC OBJ LOAD FILE=KillingFloorHUD.utx defaultproperties { - WeaponPickupClass=Class'NicePack.NiceAK12Pickup' + WeaponPickupClass=class'NiceAK12Pickup' AmmoPickupAmount=30 MaxAmmo=270 InitialAmount=60 - PickupClass=Class'NicePack.NiceAK12AmmoPickup' + PickupClass=class'NiceAK12AmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=336,Y1=82,X2=382,Y2=125) ItemName="5.45x39mm" diff --git a/sources/Weapons/Playable/AssaultRifles/AK12/NiceAK12AmmoPickup.uc b/sources/Weapons/Playable/AssaultRifles/AK12/NiceAK12AmmoPickup.uc index 92221e6..abd7b2c 100644 --- a/sources/Weapons/Playable/AssaultRifles/AK12/NiceAK12AmmoPickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/AK12/NiceAK12AmmoPickup.uc @@ -2,7 +2,7 @@ class NiceAK12AmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=30 - InventoryType=Class'NicePack.NiceAK12Ammo' + InventoryType=class'NiceAK12Ammo' PickupMessage="Rounds 5.45x39mm" StaticMesh=StaticMesh'KillingFloorStatics.L85Ammo' } diff --git a/sources/Weapons/Playable/AssaultRifles/AK12/NiceAK12AssaultRifle.uc b/sources/Weapons/Playable/AssaultRifles/AK12/NiceAK12AssaultRifle.uc index 8a4de63..9a3b3b5 100644 --- a/sources/Weapons/Playable/AssaultRifles/AK12/NiceAK12AssaultRifle.uc +++ b/sources/Weapons/Playable/AssaultRifles/AK12/NiceAK12AssaultRifle.uc @@ -36,7 +36,7 @@ defaultproperties SelectedHudImageRef="ScrnWeaponPack_T.AK12.AK12_select" PlayerIronSightFOV=65.000000 ZoomedDisplayFOV=20.000000 - FireModeClass(0)=Class'NicePack.NiceAK12Fire' + FireModeClass(0)=class'NiceAK12Fire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectAnimRate=1.300000 @@ -52,10 +52,10 @@ defaultproperties CustomCrossHairTextureName="Crosshairs.HUD.Crosshair_Cross5" InventoryGroup=4 GroupOffset=7 - PickupClass=Class'NicePack.NiceAK12Pickup' + PickupClass=class'NiceAK12Pickup' PlayerViewOffset=(X=-0.500000,Y=20.000000,Z=-3.000000) BobDamping=6.000000 - AttachmentClass=Class'NicePack.NiceAK12Attachment' + AttachmentClass=class'NiceAK12Attachment' IconCoords=(X1=245,Y1=39,X2=329,Y2=79) ItemName="AK12" TransientSoundVolume=1.250000 diff --git a/sources/Weapons/Playable/AssaultRifles/AK12/NiceAK12Fire.uc b/sources/Weapons/Playable/AssaultRifles/AK12/NiceAK12Fire.uc index 6665ef3..3ee7657 100644 --- a/sources/Weapons/Playable/AssaultRifles/AK12/NiceAK12Fire.uc +++ b/sources/Weapons/Playable/AssaultRifles/AK12/NiceAK12Fire.uc @@ -15,7 +15,7 @@ defaultproperties FireSoundRef="ScrnWeaponPack_SND.AK12.AK12_shot" StereoFireSoundRef="ScrnWeaponPack_SND.AK12.AK12_shot" NoAmmoSoundRef="ScrnWeaponPack_SND.AK12.AK12_empty" - DamageType=Class'NicePack.NiceDamTypeAK12AssaultRifle' + DamageType=class'NiceDamTypeAK12AssaultRifle' DamageMax=68 Momentum=18500.000000 bPawnRapidFireAnim=True @@ -24,7 +24,7 @@ defaultproperties TweenTime=0.025000 FireForce="AssaultRifleFire" FireRate=0.095000 - AmmoClass=Class'NicePack.NiceAK12Ammo' + AmmoClass=class'NiceAK12Ammo' ShakeRotMag=(X=50.000000,Y=50.000000,Z=350.000000) ShakeRotRate=(X=5000.000000,Y=5000.000000,Z=5000.000000) ShakeRotTime=0.750000 diff --git a/sources/Weapons/Playable/AssaultRifles/AK12/NiceAK12Pickup.uc b/sources/Weapons/Playable/AssaultRifles/AK12/NiceAK12Pickup.uc index ca1fd4b..a9379e2 100644 --- a/sources/Weapons/Playable/AssaultRifles/AK12/NiceAK12Pickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/AK12/NiceAK12Pickup.uc @@ -15,7 +15,7 @@ defaultproperties AmmoMesh=StaticMesh'KillingFloorStatics.L85Ammo' CorrespondingPerkIndex=3 EquipmentCategoryID=2 - InventoryType=Class'NicePack.NiceAK12AssaultRifle' + InventoryType=class'NiceAK12AssaultRifle' PickupMessage="You got the AK-12" PickupSound=Sound'ScrnWeaponPack_SND.AK12.AK12_select' PickupForce="AssaultRiflePickup" diff --git a/sources/Weapons/Playable/AssaultRifles/AK12/NiceDamTypeAK12AssaultRifle.uc b/sources/Weapons/Playable/AssaultRifles/AK12/NiceDamTypeAK12AssaultRifle.uc index e164cdd..31974de 100644 --- a/sources/Weapons/Playable/AssaultRifles/AK12/NiceDamTypeAK12AssaultRifle.uc +++ b/sources/Weapons/Playable/AssaultRifles/AK12/NiceDamTypeAK12AssaultRifle.uc @@ -5,7 +5,7 @@ defaultproperties bPenetrationHSOnly=True MaxPenetrations=3 HeadShotDamageMult=1.300000 - WeaponClass=Class'NicePack.NiceAK12AssaultRifle' + WeaponClass=class'NiceAK12AssaultRifle' DeathString="%k killed %o (AK12)." FemaleSuicide="%o shot herself in the foot." MaleSuicide="%o shot himself in the foot." diff --git a/sources/Weapons/Playable/AssaultRifles/AK47/NiceAK47Ammo.uc b/sources/Weapons/Playable/AssaultRifles/AK47/NiceAK47Ammo.uc index 935b8a2..72b22c6 100644 --- a/sources/Weapons/Playable/AssaultRifles/AK47/NiceAK47Ammo.uc +++ b/sources/Weapons/Playable/AssaultRifles/AK47/NiceAK47Ammo.uc @@ -2,11 +2,11 @@ class NiceAK47Ammo extends NiceAmmo; #EXEC OBJ LOAD FILE=KillingFloorHUD.utx defaultproperties { - WeaponPickupClass=Class'NicePack.NiceAK47Pickup' + WeaponPickupClass=class'NiceAK47Pickup' AmmoPickupAmount=30 MaxAmmo=240 InitialAmount=90 - PickupClass=Class'NicePack.NiceAK47AmmoPickup' + PickupClass=class'NiceAK47AmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=336,Y1=82,X2=382,Y2=125) ItemName="AK47 bullets" diff --git a/sources/Weapons/Playable/AssaultRifles/AK47/NiceAK47AmmoPickup.uc b/sources/Weapons/Playable/AssaultRifles/AK47/NiceAK47AmmoPickup.uc index ed06706..4a0f538 100644 --- a/sources/Weapons/Playable/AssaultRifles/AK47/NiceAK47AmmoPickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/AK47/NiceAK47AmmoPickup.uc @@ -2,7 +2,7 @@ class NiceAK47AmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=30 - InventoryType=Class'NicePack.NiceAK47Ammo' + InventoryType=class'NiceAK47Ammo' PickupMessage="Rounds 7.62mm" StaticMesh=StaticMesh'KillingFloorStatics.L85Ammo' } diff --git a/sources/Weapons/Playable/AssaultRifles/AK47/NiceAK47AssaultRifle.uc b/sources/Weapons/Playable/AssaultRifles/AK47/NiceAK47AssaultRifle.uc index 846f3c0..b6c1eee 100644 --- a/sources/Weapons/Playable/AssaultRifles/AK47/NiceAK47AssaultRifle.uc +++ b/sources/Weapons/Playable/AssaultRifles/AK47/NiceAK47AssaultRifle.uc @@ -30,7 +30,7 @@ defaultproperties SelectedHudImageRef="KillingFloor2HUD.WeaponSelect.Ak_47" PlayerIronSightFOV=65.000000 ZoomedDisplayFOV=32.000000 - FireModeClass(0)=Class'NicePack.NiceAK47Fire' + FireModeClass(0)=class'NiceAK47Fire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectForce="SwitchToAssaultRifle" @@ -45,10 +45,10 @@ defaultproperties CustomCrossHairTextureName="Crosshairs.HUD.Crosshair_Cross5" InventoryGroup=3 GroupOffset=7 - PickupClass=Class'NicePack.NiceAK47Pickup' + PickupClass=class'NiceAK47Pickup' PlayerViewOffset=(X=18.000000,Y=22.000000,Z=-6.000000) BobDamping=6.000000 - AttachmentClass=Class'NicePack.NiceAK47Attachment' + AttachmentClass=class'NiceAK47Attachment' IconCoords=(X1=245,Y1=39,X2=329,Y2=79) ItemName="AK47" TransientSoundVolume=1.250000 diff --git a/sources/Weapons/Playable/AssaultRifles/AK47/NiceAK47Fire.uc b/sources/Weapons/Playable/AssaultRifles/AK47/NiceAK47Fire.uc index 095e85c..7678f6c 100644 --- a/sources/Weapons/Playable/AssaultRifles/AK47/NiceAK47Fire.uc +++ b/sources/Weapons/Playable/AssaultRifles/AK47/NiceAK47Fire.uc @@ -14,7 +14,7 @@ defaultproperties FireSoundRef="KF_AK47Snd.AK47_Fire" StereoFireSoundRef="KF_AK47Snd.AK47_FireST" NoAmmoSoundRef="KF_AK47Snd.AK47_DryFire" - DamageType=Class'NicePack.NiceDamTypeAK47AssaultRifle' + DamageType=class'NiceDamTypeAK47AssaultRifle' DamageMin=60 DamageMax=60 Momentum=8500.000000 @@ -24,7 +24,7 @@ defaultproperties TweenTime=0.025000 FireForce="AssaultRifleFire" FireRate=0.109000 - AmmoClass=Class'NicePack.NiceAK47Ammo' + AmmoClass=class'NiceAK47Ammo' ShakeRotMag=(X=50.000000,Y=50.000000,Z=350.000000) ShakeRotRate=(X=5000.000000,Y=5000.000000,Z=5000.000000) ShakeRotTime=0.750000 diff --git a/sources/Weapons/Playable/AssaultRifles/AK47/NiceAK47Pickup.uc b/sources/Weapons/Playable/AssaultRifles/AK47/NiceAK47Pickup.uc index 3b678d3..db19d61 100644 --- a/sources/Weapons/Playable/AssaultRifles/AK47/NiceAK47Pickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/AK47/NiceAK47Pickup.uc @@ -17,7 +17,7 @@ defaultproperties EquipmentCategoryID=2 VariantClasses(0)=Class'KFMod.GoldenAK47pickup' VariantClasses(1)=Class'KFMod.NeonAK47Pickup' - InventoryType=Class'NicePack.NiceAK47AssaultRifle' + InventoryType=class'NiceAK47AssaultRifle' PickupMessage="You got the AK47" PickupSound=Sound'KF_AK47Snd.AK47_Pickup' PickupForce="AssaultRiflePickup" diff --git a/sources/Weapons/Playable/AssaultRifles/AK47/NiceDamTypeAK47AssaultRifle.uc b/sources/Weapons/Playable/AssaultRifles/AK47/NiceDamTypeAK47AssaultRifle.uc index 39592b9..36c7a78 100644 --- a/sources/Weapons/Playable/AssaultRifles/AK47/NiceDamTypeAK47AssaultRifle.uc +++ b/sources/Weapons/Playable/AssaultRifles/AK47/NiceDamTypeAK47AssaultRifle.uc @@ -4,7 +4,7 @@ defaultproperties { MaxPenetrations=1 HeadShotDamageMult=2.000000 - WeaponClass=Class'NicePack.NiceAK47AssaultRifle' + WeaponClass=class'NiceAK47AssaultRifle' DeathString="%k killed %o (AK47)." FemaleSuicide="%o shot herself in the foot." MaleSuicide="%o shot himself in the foot." diff --git a/sources/Weapons/Playable/AssaultRifles/ASVAL/NiceDamTypeVALDT.uc b/sources/Weapons/Playable/AssaultRifles/ASVAL/NiceDamTypeVALDT.uc index 4633f19..fb4edfc 100644 --- a/sources/Weapons/Playable/AssaultRifles/ASVAL/NiceDamTypeVALDT.uc +++ b/sources/Weapons/Playable/AssaultRifles/ASVAL/NiceDamTypeVALDT.uc @@ -3,7 +3,7 @@ class NiceDamTypeVALDT extends NiceDamageTypeVetCommando defaultproperties { HeadShotDamageMult=1.500000 - WeaponClass=Class'NicePack.NiceVALDTAssaultRifle' + WeaponClass=class'NiceVALDTAssaultRifle' DeathString="%k killed %o (AS 'VAL')." FemaleSuicide="%o shot herself in the foot." MaleSuicide="%o shot himself in the foot." diff --git a/sources/Weapons/Playable/AssaultRifles/ASVAL/NiceVALDTAmmo.uc b/sources/Weapons/Playable/AssaultRifles/ASVAL/NiceVALDTAmmo.uc index 0586c64..7d5f179 100644 --- a/sources/Weapons/Playable/AssaultRifles/ASVAL/NiceVALDTAmmo.uc +++ b/sources/Weapons/Playable/AssaultRifles/ASVAL/NiceVALDTAmmo.uc @@ -2,11 +2,11 @@ class NiceVALDTAmmo extends NiceAmmo; #EXEC OBJ LOAD FILE=KillingFloorHUD.utx defaultproperties { - WeaponPickupClass=Class'NicePack.NiceVALDTPickup' + WeaponPickupClass=class'NiceVALDTPickup' AmmoPickupAmount=20 MaxAmmo=300 InitialAmount=75 - PickupClass=Class'NicePack.NiceVALDTAmmoPickup' + PickupClass=class'NiceVALDTAmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=336,Y1=82,X2=382,Y2=125) ItemName="9x39mm" diff --git a/sources/Weapons/Playable/AssaultRifles/ASVAL/NiceVALDTAmmoPickup.uc b/sources/Weapons/Playable/AssaultRifles/ASVAL/NiceVALDTAmmoPickup.uc index 9a0a061..9c1ffa9 100644 --- a/sources/Weapons/Playable/AssaultRifles/ASVAL/NiceVALDTAmmoPickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/ASVAL/NiceVALDTAmmoPickup.uc @@ -2,7 +2,7 @@ class NiceVALDTAmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=20 - InventoryType=Class'NicePack.NiceVALDTAmmo' + InventoryType=class'NiceVALDTAmmo' PickupMessage="9x39mm" StaticMesh=StaticMesh'KillingFloorStatics.L85Ammo' } diff --git a/sources/Weapons/Playable/AssaultRifles/ASVAL/NiceVALDTAssaultRifle.uc b/sources/Weapons/Playable/AssaultRifles/ASVAL/NiceVALDTAssaultRifle.uc index 0c8a13d..ba12e4f 100644 --- a/sources/Weapons/Playable/AssaultRifles/ASVAL/NiceVALDTAssaultRifle.uc +++ b/sources/Weapons/Playable/AssaultRifles/ASVAL/NiceVALDTAssaultRifle.uc @@ -29,8 +29,8 @@ defaultproperties SelectedHudImageRef="ScrnWeaponPack_T.VAL.ValDT_selected" PlayerIronSightFOV=65.000000 ZoomedDisplayFOV=32.000000 - FireModeClass(0)=Class'NicePack.NiceVALDTFire' - FireModeClass(1)=Class'NicePack.NiceVALDTFire' + FireModeClass(0)=class'NiceVALDTFire' + FireModeClass(1)=class'NiceVALDTFire' PutDownAnim="PutDown" SelectForce="SwitchToAssaultRifle" AIRating=0.550000 @@ -44,7 +44,7 @@ defaultproperties CustomCrossHairTextureName="Crosshairs.HUD.Crosshair_Cross5" InventoryGroup=3 GroupOffset=7 - PickupClass=Class'NicePack.NiceVALDTPickup' + PickupClass=class'NiceVALDTPickup' PlayerViewOffset=(X=10.000000,Y=10.000000,Z=-5.000000) BobDamping=5.000000 AttachmentClass=Class'ScrnWeaponPack.VALDTAttachment' diff --git a/sources/Weapons/Playable/AssaultRifles/ASVAL/NiceVALDTFire.uc b/sources/Weapons/Playable/AssaultRifles/ASVAL/NiceVALDTFire.uc index 4196714..730c0d6 100644 --- a/sources/Weapons/Playable/AssaultRifles/ASVAL/NiceVALDTFire.uc +++ b/sources/Weapons/Playable/AssaultRifles/ASVAL/NiceVALDTFire.uc @@ -12,7 +12,7 @@ defaultproperties FireSoundRef="ScrnWeaponPack_SND.VSS.VSS_Fire" StereoFireSoundRef="ScrnWeaponPack_SND.VSS.VSS_Fire" NoAmmoSoundRef="KF_AK47Snd.AK47_DryFire" - DamageType=Class'NicePack.NiceDamTypeVALDT' + DamageType=class'NiceDamTypeVALDT' DamageMin=40 DamageMax=40 Momentum=18500.000000 @@ -22,7 +22,7 @@ defaultproperties TweenTime=0.025000 FireForce="AssaultRifleFire" FireRate=0.089000 - AmmoClass=Class'NicePack.NiceVALDTAmmo' + AmmoClass=class'NiceVALDTAmmo' ShakeRotMag=(X=50.000000,Y=50.000000,Z=350.000000) ShakeRotRate=(X=5000.000000,Y=5000.000000,Z=5000.000000) ShakeRotTime=0.750000 diff --git a/sources/Weapons/Playable/AssaultRifles/ASVAL/NiceVALDTPickup.uc b/sources/Weapons/Playable/AssaultRifles/ASVAL/NiceVALDTPickup.uc index 0d02d36..a9c713c 100644 --- a/sources/Weapons/Playable/AssaultRifles/ASVAL/NiceVALDTPickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/ASVAL/NiceVALDTPickup.uc @@ -14,7 +14,7 @@ defaultproperties AmmoMesh=StaticMesh'KillingFloorStatics.L85Ammo' CorrespondingPerkIndex=3 EquipmentCategoryID=2 - InventoryType=Class'NicePack.NiceVALDTAssaultRifle' + InventoryType=class'NiceVALDTAssaultRifle' PickupMessage="You've got a AS 'VAL'" PickupSound=Sound'KF_AK47Snd.AK47_Pickup' PickupForce="AssaultRiflePickup" diff --git a/sources/Weapons/Playable/AssaultRifles/Bullpup/NiceBullpup.uc b/sources/Weapons/Playable/AssaultRifles/Bullpup/NiceBullpup.uc index 9437de9..a176acb 100644 --- a/sources/Weapons/Playable/AssaultRifles/Bullpup/NiceBullpup.uc +++ b/sources/Weapons/Playable/AssaultRifles/Bullpup/NiceBullpup.uc @@ -28,7 +28,7 @@ defaultproperties SelectedHudImageRef="KillingFloorHUD.WeaponSelect.Bullpup" PlayerIronSightFOV=65.000000 ZoomedDisplayFOV=40.000000 - FireModeClass(0)=Class'NicePack.NiceBullpupFire' + FireModeClass(0)=class'NiceBullpupFire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectForce="SwitchToAssaultRifle" @@ -43,10 +43,10 @@ defaultproperties CustomCrossHairTextureName="Crosshairs.HUD.Crosshair_Cross5" InventoryGroup=3 GroupOffset=1 - PickupClass=Class'NicePack.NiceBullpupPickup' + PickupClass=class'NiceBullpupPickup' PlayerViewOffset=(X=20.000000,Y=21.500000,Z=-9.000000) BobDamping=6.000000 - AttachmentClass=Class'NicePack.NiceBullpupAttachment' + AttachmentClass=class'NiceBullpupAttachment' IconCoords=(X1=245,Y1=39,X2=329,Y2=79) ItemName="Bullpup" TransientSoundVolume=1.250000 diff --git a/sources/Weapons/Playable/AssaultRifles/Bullpup/NiceBullpupAmmo.uc b/sources/Weapons/Playable/AssaultRifles/Bullpup/NiceBullpupAmmo.uc index c4da55e..7a129bb 100644 --- a/sources/Weapons/Playable/AssaultRifles/Bullpup/NiceBullpupAmmo.uc +++ b/sources/Weapons/Playable/AssaultRifles/Bullpup/NiceBullpupAmmo.uc @@ -2,11 +2,11 @@ class NiceBullpupAmmo extends NiceAmmo; #EXEC OBJ LOAD FILE=KillingFloorHUD.utx defaultproperties { - WeaponPickupClass=Class'NicePack.NiceBullpupPickup' + WeaponPickupClass=class'NiceBullpupPickup' AmmoPickupAmount=30 MaxAmmo=240 InitialAmount=45 - PickupClass=Class'NicePack.NiceBullpupAmmoPickup' + PickupClass=class'NiceBullpupAmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=336,Y1=82,X2=382,Y2=125) ItemName="Bullpup bullets" diff --git a/sources/Weapons/Playable/AssaultRifles/Bullpup/NiceBullpupAmmoPickup.uc b/sources/Weapons/Playable/AssaultRifles/Bullpup/NiceBullpupAmmoPickup.uc index 2994711..0e4ac74 100644 --- a/sources/Weapons/Playable/AssaultRifles/Bullpup/NiceBullpupAmmoPickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/Bullpup/NiceBullpupAmmoPickup.uc @@ -2,7 +2,7 @@ class NiceBullpupAmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=30 - InventoryType=Class'NicePack.NiceBullpupAmmo' + InventoryType=class'NiceBullpupAmmo' PickupMessage="Rounds (5.56 NATO)" StaticMesh=StaticMesh'KillingFloorStatics.L85Ammo' } diff --git a/sources/Weapons/Playable/AssaultRifles/Bullpup/NiceBullpupFire.uc b/sources/Weapons/Playable/AssaultRifles/Bullpup/NiceBullpupFire.uc index c1beee3..c2ade40 100644 --- a/sources/Weapons/Playable/AssaultRifles/Bullpup/NiceBullpupFire.uc +++ b/sources/Weapons/Playable/AssaultRifles/Bullpup/NiceBullpupFire.uc @@ -13,7 +13,7 @@ defaultproperties FireSoundRef="KF_BullpupSnd.Bullpup_Fire" StereoFireSoundRef="KF_BullpupSnd.Bullpup_FireST" NoAmmoSoundRef="KF_9MMSnd.9mm_DryFire" - DamageType=Class'NicePack.NiceDamTypeBullpup' + DamageType=class'NiceDamTypeBullpup' DamageMin=48 DamageMax=48 Momentum=8500.000000 @@ -23,7 +23,7 @@ defaultproperties TweenTime=0.025000 FireForce="AssaultRifleFire" FireRate=0.100000 - AmmoClass=Class'NicePack.NiceBullpupAmmo' + AmmoClass=class'NiceBullpupAmmo' ShakeRotMag=(X=75.000000,Y=75.000000,Z=250.000000) ShakeRotRate=(X=10000.000000,Y=10000.000000,Z=10000.000000) ShakeRotTime=0.500000 diff --git a/sources/Weapons/Playable/AssaultRifles/Bullpup/NiceBullpupPickup.uc b/sources/Weapons/Playable/AssaultRifles/Bullpup/NiceBullpupPickup.uc index f42a0ed..9cbce54 100644 --- a/sources/Weapons/Playable/AssaultRifles/Bullpup/NiceBullpupPickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/Bullpup/NiceBullpupPickup.uc @@ -16,7 +16,7 @@ defaultproperties AmmoMesh=StaticMesh'KillingFloorStatics.L85Ammo' CorrespondingPerkIndex=3 EquipmentCategoryID=2 - InventoryType=Class'NicePack.NiceBullpup' + InventoryType=class'NiceBullpup' PickupMessage="You got the Bullpup" PickupForce="AssaultRiflePickup" StaticMesh=StaticMesh'KF_pickups_Trip.Rifle.Bullpup_Pickup' diff --git a/sources/Weapons/Playable/AssaultRifles/Bullpup/NiceDamTypeBullpup.uc b/sources/Weapons/Playable/AssaultRifles/Bullpup/NiceDamTypeBullpup.uc index 1cd2bd9..73cd574 100644 --- a/sources/Weapons/Playable/AssaultRifles/Bullpup/NiceDamTypeBullpup.uc +++ b/sources/Weapons/Playable/AssaultRifles/Bullpup/NiceDamTypeBullpup.uc @@ -3,7 +3,7 @@ class NiceDamTypeBullpup extends NiceDamageTypeVetCommando defaultproperties { HeadShotDamageMult=1.500000 - WeaponClass=Class'NicePack.NiceBullpup' + WeaponClass=class'NiceBullpup' DeathString="%k killed %o (Bullpup)." FemaleSuicide="%o shot herself in the foot." MaleSuicide="%o shot himself in the foot." diff --git a/sources/Weapons/Playable/AssaultRifles/CZ805/NiceCZ805M.uc b/sources/Weapons/Playable/AssaultRifles/CZ805/NiceCZ805M.uc index 686a2a8..4eb941d 100644 --- a/sources/Weapons/Playable/AssaultRifles/CZ805/NiceCZ805M.uc +++ b/sources/Weapons/Playable/AssaultRifles/CZ805/NiceCZ805M.uc @@ -1,8 +1,8 @@ class NiceCZ805M extends CZ805M; defaultproperties { - FireModeClass(0)=Class'NicePack.NiceCZ805MFire' - FireModeClass(1)=Class'NicePack.NiceCZ805MAltFire' - PickupClass=Class'NicePack.NiceCZ805MPickup' + FireModeClass(0)=class'NiceCZ805MFire' + FireModeClass(1)=class'NiceCZ805MAltFire' + PickupClass=class'NiceCZ805MPickup' ItemName="CZ-805M Medic/Assault Rifle NW" } diff --git a/sources/Weapons/Playable/AssaultRifles/CZ805/NiceCZ805MAltFire.uc b/sources/Weapons/Playable/AssaultRifles/CZ805/NiceCZ805MAltFire.uc index 218ebc2..953d38b 100644 --- a/sources/Weapons/Playable/AssaultRifles/CZ805/NiceCZ805MAltFire.uc +++ b/sources/Weapons/Playable/AssaultRifles/CZ805/NiceCZ805MAltFire.uc @@ -1,5 +1,5 @@ class NiceCZ805MAltFire extends CZ805MAltFire; defaultproperties { - ProjectileClass=Class'NicePack.NiceCZ805MHealingProjectile' + ProjectileClass=class'NiceCZ805MHealingProjectile' } diff --git a/sources/Weapons/Playable/AssaultRifles/CZ805/NiceCZ805MAmmo.uc b/sources/Weapons/Playable/AssaultRifles/CZ805/NiceCZ805MAmmo.uc index b9a82db..bcce93b 100644 --- a/sources/Weapons/Playable/AssaultRifles/CZ805/NiceCZ805MAmmo.uc +++ b/sources/Weapons/Playable/AssaultRifles/CZ805/NiceCZ805MAmmo.uc @@ -3,5 +3,5 @@ defaultproperties { MaxAmmo=300 InitialAmount=150 - PickupClass=Class'NicePack.NiceCZ805MAmmoPickup' + PickupClass=class'NiceCZ805MAmmoPickup' } diff --git a/sources/Weapons/Playable/AssaultRifles/CZ805/NiceCZ805MAmmoPickup.uc b/sources/Weapons/Playable/AssaultRifles/CZ805/NiceCZ805MAmmoPickup.uc index fe84428..93673c0 100644 --- a/sources/Weapons/Playable/AssaultRifles/CZ805/NiceCZ805MAmmoPickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/CZ805/NiceCZ805MAmmoPickup.uc @@ -1,5 +1,5 @@ class NiceCZ805MAmmoPickup extends CZ805MAmmoPickup; defaultproperties { - InventoryType=Class'NicePack.NiceCZ805MAmmo' + InventoryType=class'NiceCZ805MAmmo' } diff --git a/sources/Weapons/Playable/AssaultRifles/CZ805/NiceCZ805MFire.uc b/sources/Weapons/Playable/AssaultRifles/CZ805/NiceCZ805MFire.uc index 78fd4c0..3d22732 100644 --- a/sources/Weapons/Playable/AssaultRifles/CZ805/NiceCZ805MFire.uc +++ b/sources/Weapons/Playable/AssaultRifles/CZ805/NiceCZ805MFire.uc @@ -3,7 +3,7 @@ defaultproperties { maxVerticalRecoilAngle=270 maxHorizontalRecoilAngle=135 - DamageType=Class'NicePack.NiceDamTypeCZ805M' + DamageType=class'NiceDamTypeCZ805M' DamageMax=40 - AmmoClass=Class'NicePack.NiceCZ805MAmmo' + AmmoClass=class'NiceCZ805MAmmo' } diff --git a/sources/Weapons/Playable/AssaultRifles/CZ805/NiceCZ805MPickup.uc b/sources/Weapons/Playable/AssaultRifles/CZ805/NiceCZ805MPickup.uc index 96b5d75..3616aba 100644 --- a/sources/Weapons/Playable/AssaultRifles/CZ805/NiceCZ805MPickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/CZ805/NiceCZ805MPickup.uc @@ -6,6 +6,6 @@ defaultproperties Description="Horzine's modification of CZ-805 BREN rifle with attached healing dart launcher. Useful for both Medic and Commando perks." ItemName="CZ-805M NW" ItemShortName="CZ-805M NW" - InventoryType=Class'NicePack.NiceCZ805M' + InventoryType=class'NiceCZ805M' PickupMessage="You got the CZ-805M NW" } diff --git a/sources/Weapons/Playable/AssaultRifles/CZ805/NiceDamTypeCZ805M.uc b/sources/Weapons/Playable/AssaultRifles/CZ805/NiceDamTypeCZ805M.uc index 064e5e4..acb9693 100644 --- a/sources/Weapons/Playable/AssaultRifles/CZ805/NiceDamTypeCZ805M.uc +++ b/sources/Weapons/Playable/AssaultRifles/CZ805/NiceDamTypeCZ805M.uc @@ -3,7 +3,7 @@ class NiceDamTypeCZ805M extends NiceDamageTypeVetCommando defaultproperties { HeadShotDamageMult=1.500000 - WeaponClass=Class'NicePack.NiceCZ805M' + WeaponClass=class'NiceCZ805M' DeathString="%k killed %o (CZ 805)." FemaleSuicide="%o shot herself in the foot." MaleSuicide="%o shot himself in the foot." diff --git a/sources/Weapons/Playable/AssaultRifles/FNFAL/NiceDamTypeFNFALAssaultRifle.uc b/sources/Weapons/Playable/AssaultRifles/FNFAL/NiceDamTypeFNFALAssaultRifle.uc index 0821c8f..1044702 100644 --- a/sources/Weapons/Playable/AssaultRifles/FNFAL/NiceDamTypeFNFALAssaultRifle.uc +++ b/sources/Weapons/Playable/AssaultRifles/FNFAL/NiceDamTypeFNFALAssaultRifle.uc @@ -5,7 +5,7 @@ defaultproperties MaxPenetrations=3 flinchMultiplier=0.800000 HeadShotDamageMult=2.250000 - WeaponClass=Class'NicePack.NiceFNFAL_ACOG_AssaultRifle' + WeaponClass=class'NiceFNFAL_ACOG_AssaultRifle' DeathString="%k killed %o (FNFAL ACOG)." FemaleSuicide="%o shot herself in the foot." MaleSuicide="%o shot himself in the foot." diff --git a/sources/Weapons/Playable/AssaultRifles/FNFAL/NiceFNFALAmmo.uc b/sources/Weapons/Playable/AssaultRifles/FNFAL/NiceFNFALAmmo.uc index 302b658..d31ff84 100644 --- a/sources/Weapons/Playable/AssaultRifles/FNFAL/NiceFNFALAmmo.uc +++ b/sources/Weapons/Playable/AssaultRifles/FNFAL/NiceFNFALAmmo.uc @@ -2,11 +2,11 @@ class NiceFNFALAmmo extends NiceAmmo; #EXEC OBJ LOAD FILE=KillingFloorHUD.utx defaultproperties { - WeaponPickupClass=Class'NicePack.NiceFNFAL_ACOG_Pickup' + WeaponPickupClass=class'NiceFNFAL_ACOG_Pickup' AmmoPickupAmount=20 MaxAmmo=180 InitialAmount=45 - PickupClass=Class'NicePack.NiceFNFALAmmoPickup' + PickupClass=class'NiceFNFALAmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=336,Y1=82,X2=382,Y2=125) ItemName="FNFAL bullets" diff --git a/sources/Weapons/Playable/AssaultRifles/FNFAL/NiceFNFALAmmoPickup.uc b/sources/Weapons/Playable/AssaultRifles/FNFAL/NiceFNFALAmmoPickup.uc index 1b57f67..3d74c1c 100644 --- a/sources/Weapons/Playable/AssaultRifles/FNFAL/NiceFNFALAmmoPickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/FNFAL/NiceFNFALAmmoPickup.uc @@ -2,7 +2,7 @@ class NiceFNFALAmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=20 - InventoryType=Class'NicePack.NiceFNFALAmmo' + InventoryType=class'NiceFNFALAmmo' PickupMessage="Rounds 7.62x51mm" StaticMesh=StaticMesh'KillingFloorStatics.L85Ammo' } diff --git a/sources/Weapons/Playable/AssaultRifles/FNFAL/NiceFNFALFire.uc b/sources/Weapons/Playable/AssaultRifles/FNFAL/NiceFNFALFire.uc index 26be3c0..839d94f 100644 --- a/sources/Weapons/Playable/AssaultRifles/FNFAL/NiceFNFALFire.uc +++ b/sources/Weapons/Playable/AssaultRifles/FNFAL/NiceFNFALFire.uc @@ -16,7 +16,7 @@ defaultproperties FireSoundRef="KF_FNFALSnd.FNFAL_Fire_Single_M" StereoFireSoundRef="KF_FNFALSnd.FNFAL_Fire_Single_S" NoAmmoSoundRef="KF_SCARSnd.SCAR_DryFire" - DamageType=Class'NicePack.NiceDamTypeFNFALAssaultRifle' + DamageType=class'NiceDamTypeFNFALAssaultRifle' DamageMin=66 DamageMax=66 Momentum=8500.000000 @@ -27,7 +27,7 @@ defaultproperties TweenTime=0.025000 FireForce="AssaultRifleFire" FireRate=0.100000 - AmmoClass=Class'NicePack.NiceFNFALAmmo' + AmmoClass=class'NiceFNFALAmmo' ShakeRotMag=(X=80.000000,Y=80.000000,Z=450.000000) ShakeRotRate=(X=7500.000000,Y=7500.000000,Z=7500.000000) ShakeRotTime=0.650000 diff --git a/sources/Weapons/Playable/AssaultRifles/FNFAL/NiceFNFAL_ACOG_AssaultRifle.uc b/sources/Weapons/Playable/AssaultRifles/FNFAL/NiceFNFAL_ACOG_AssaultRifle.uc index a4c2356..250ef5c 100644 --- a/sources/Weapons/Playable/AssaultRifles/FNFAL/NiceFNFAL_ACOG_AssaultRifle.uc +++ b/sources/Weapons/Playable/AssaultRifles/FNFAL/NiceFNFAL_ACOG_AssaultRifle.uc @@ -26,7 +26,7 @@ defaultproperties SelectedHudImageRef="KillingFloor2HUD.WeaponSelect.FNFAL" PlayerIronSightFOV=55.000000 ZoomedDisplayFOV=15.000000 - FireModeClass(0)=Class'NicePack.NiceFNFALFire' + FireModeClass(0)=class'NiceFNFALFire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectForce="SwitchToAssaultRifle" @@ -41,10 +41,10 @@ defaultproperties CustomCrossHairTextureName="Crosshairs.HUD.Crosshair_Cross5" InventoryGroup=4 GroupOffset=12 - PickupClass=Class'NicePack.NiceFNFAL_ACOG_Pickup' + PickupClass=class'NiceFNFAL_ACOG_Pickup' PlayerViewOffset=(X=3.000000,Y=15.000000,Z=-6.000000) BobDamping=6.000000 - AttachmentClass=Class'NicePack.NiceFNFAL_ACOG_Attachment' + AttachmentClass=class'NiceFNFAL_ACOG_Attachment' IconCoords=(X1=245,Y1=39,X2=329,Y2=79) ItemName="FNFAL" TransientSoundVolume=1.250000 diff --git a/sources/Weapons/Playable/AssaultRifles/FNFAL/NiceFNFAL_ACOG_Pickup.uc b/sources/Weapons/Playable/AssaultRifles/FNFAL/NiceFNFAL_ACOG_Pickup.uc index 38638d4..be09ac4 100644 --- a/sources/Weapons/Playable/AssaultRifles/FNFAL/NiceFNFAL_ACOG_Pickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/FNFAL/NiceFNFAL_ACOG_Pickup.uc @@ -15,7 +15,7 @@ defaultproperties AmmoMesh=StaticMesh'KillingFloorStatics.L85Ammo' CorrespondingPerkIndex=3 EquipmentCategoryID=3 - InventoryType=Class'NicePack.NiceFNFAL_ACOG_AssaultRifle' + InventoryType=class'NiceFNFAL_ACOG_AssaultRifle' PickupMessage="You got the FN FAL with ACOG Sight" PickupSound=Sound'KF_FNFALSnd.FNFAL_Pickup' PickupForce="AssaultRiflePickup" diff --git a/sources/Weapons/Playable/AssaultRifles/HK417/NiceDamTypeHK417AR.uc b/sources/Weapons/Playable/AssaultRifles/HK417/NiceDamTypeHK417AR.uc index fa6ad1f..c725d93 100644 --- a/sources/Weapons/Playable/AssaultRifles/HK417/NiceDamTypeHK417AR.uc +++ b/sources/Weapons/Playable/AssaultRifles/HK417/NiceDamTypeHK417AR.uc @@ -3,7 +3,7 @@ defaultproperties { MaxPenetrations=2 HeadShotDamageMult=2.000000 - WeaponClass=Class'NicePack.NiceHK417AR' + WeaponClass=class'NiceHK417AR' DeathString="%k killed %o (HK-417)." FemaleSuicide="%o shot herself in the foot." MaleSuicide="%o shot himself in the foot." diff --git a/sources/Weapons/Playable/AssaultRifles/HK417/NiceHK417AR.uc b/sources/Weapons/Playable/AssaultRifles/HK417/NiceHK417AR.uc index 9ebf13b..6bd282e 100644 --- a/sources/Weapons/Playable/AssaultRifles/HK417/NiceHK417AR.uc +++ b/sources/Weapons/Playable/AssaultRifles/HK417/NiceHK417AR.uc @@ -41,7 +41,7 @@ defaultproperties SelectedHudImageRef="ScrnWeaponPack_T.HK417AR.HK417_selected" PlayerIronSightFOV=32.000000 ZoomedDisplayFOV=60.000000 - FireModeClass(0)=Class'NicePack.NiceHK417Fire' + FireModeClass(0)=class'NiceHK417Fire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectAnimRate=2.000000 @@ -56,10 +56,10 @@ defaultproperties CustomCrossHairTextureName="Crosshairs.HUD.Crosshair_Cross5" InventoryGroup=4 GroupOffset=3 - PickupClass=Class'NicePack.NiceHK417Pickup' + PickupClass=class'NiceHK417Pickup' PlayerViewOffset=(X=14.000000,Y=7.000000,Z=-4.000000) BobDamping=6.000000 - AttachmentClass=Class'NicePack.NiceHK417Attachment' + AttachmentClass=class'NiceHK417Attachment' IconCoords=(X1=253,Y1=146,X2=333,Y2=181) ItemName="HK-417" } diff --git a/sources/Weapons/Playable/AssaultRifles/HK417/NiceHK417Ammo.uc b/sources/Weapons/Playable/AssaultRifles/HK417/NiceHK417Ammo.uc index c11c35e..5c4067b 100644 --- a/sources/Weapons/Playable/AssaultRifles/HK417/NiceHK417Ammo.uc +++ b/sources/Weapons/Playable/AssaultRifles/HK417/NiceHK417Ammo.uc @@ -2,7 +2,7 @@ class NiceHK417Ammo extends NiceAmmo; #EXEC OBJ LOAD FILE=InterfaceContent.utx defaultproperties { - WeaponPickupClass=Class'NicePack.NiceHK417Pickup' + WeaponPickupClass=class'NiceHK417Pickup' AmmoPickupAmount=20 MaxAmmo=180 InitialAmount=45 diff --git a/sources/Weapons/Playable/AssaultRifles/HK417/NiceHK417AmmoPickup.uc b/sources/Weapons/Playable/AssaultRifles/HK417/NiceHK417AmmoPickup.uc index 4328b03..551fd44 100644 --- a/sources/Weapons/Playable/AssaultRifles/HK417/NiceHK417AmmoPickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/HK417/NiceHK417AmmoPickup.uc @@ -2,6 +2,6 @@ class NiceHK417AmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=20 - InventoryType=Class'NicePack.NiceHK417Ammo' + InventoryType=class'NiceHK417Ammo' PickupMessage="7.62x51mm NATO" } diff --git a/sources/Weapons/Playable/AssaultRifles/HK417/NiceHK417Fire.uc b/sources/Weapons/Playable/AssaultRifles/HK417/NiceHK417Fire.uc index 5cd1e8b..f417b87 100644 --- a/sources/Weapons/Playable/AssaultRifles/HK417/NiceHK417Fire.uc +++ b/sources/Weapons/Playable/AssaultRifles/HK417/NiceHK417Fire.uc @@ -11,7 +11,7 @@ defaultproperties FireSoundRef="ScrnWeaponPack_SND.HK417AR.HK417_shot" StereoFireSoundRef="ScrnWeaponPack_SND.HK417AR.HK417_shot" NoAmmoSoundRef="ScrnWeaponPack_SND.HK417AR.HK417_empty" - DamageType=Class'NicePack.NiceDamTypeHK417AR' + DamageType=class'NiceDamTypeHK417AR' DamageMin=75 DamageMax=75 Momentum=20000.000000 @@ -22,7 +22,7 @@ defaultproperties TweenTime=0.025000 FireForce="AssaultRifleFire" FireRate=0.230000 - AmmoClass=Class'NicePack.NiceHK417Ammo' + AmmoClass=class'NiceHK417Ammo' ShakeRotMag=(X=50.000000,Y=50.000000,Z=300.000000) ShakeRotRate=(X=9500.000000,Y=9500.000000,Z=9500.000000) ShakeRotTime=0.650000 diff --git a/sources/Weapons/Playable/AssaultRifles/HK417/NiceHK417Pickup.uc b/sources/Weapons/Playable/AssaultRifles/HK417/NiceHK417Pickup.uc index d2a612f..c65691e 100644 --- a/sources/Weapons/Playable/AssaultRifles/HK417/NiceHK417Pickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/HK417/NiceHK417Pickup.uc @@ -13,7 +13,7 @@ defaultproperties AmmoItemName="7.62x51mm NATO" CorrespondingPerkIndex=3 EquipmentCategoryID=2 - InventoryType=Class'NicePack.NiceHK417AR' + InventoryType=class'NiceHK417AR' PickupMessage="You've got a HK-417" PickupSound=Sound'ScrnWeaponPack_SND.HK417AR.HK417_pickup' PickupForce="AssaultRiflePickup" diff --git a/sources/Weapons/Playable/AssaultRifles/L85A2/NiceDamTypeL85A2Z.uc b/sources/Weapons/Playable/AssaultRifles/L85A2/NiceDamTypeL85A2Z.uc index 4b46cff..3898107 100644 --- a/sources/Weapons/Playable/AssaultRifles/L85A2/NiceDamTypeL85A2Z.uc +++ b/sources/Weapons/Playable/AssaultRifles/L85A2/NiceDamTypeL85A2Z.uc @@ -5,7 +5,7 @@ defaultproperties badDecapMod=0.8000 HeadShotDamageMult=1.400000 bSniperWeapon=True - WeaponClass=Class'NicePack.NiceL85A2Z' + WeaponClass=class'NiceL85A2Z' DeathString="%k killed %o." FemaleSuicide="%o shot herself in the foot." MaleSuicide="%o shot himself in the foot." diff --git a/sources/Weapons/Playable/AssaultRifles/L85A2/NiceL85A2Ammo.uc b/sources/Weapons/Playable/AssaultRifles/L85A2/NiceL85A2Ammo.uc index 9c64342..998134a 100644 --- a/sources/Weapons/Playable/AssaultRifles/L85A2/NiceL85A2Ammo.uc +++ b/sources/Weapons/Playable/AssaultRifles/L85A2/NiceL85A2Ammo.uc @@ -2,11 +2,11 @@ class NiceL85A2Ammo extends NiceAmmo; #EXEC OBJ LOAD FILE=InterfaceContent.utx defaultproperties { - WeaponPickupClass=Class'NicePack.NiceL85A2Pickup' + WeaponPickupClass=class'NiceL85A2Pickup' AmmoPickupAmount=30 MaxAmmo=210 InitialAmount=45 - PickupClass=Class'NicePack.NiceL85A2AmmoPickup' + PickupClass=class'NiceL85A2AmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=413,Y1=82,X2=457,Y2=125) ItemName="Stanag Magazines" diff --git a/sources/Weapons/Playable/AssaultRifles/L85A2/NiceL85A2AmmoPickup.uc b/sources/Weapons/Playable/AssaultRifles/L85A2/NiceL85A2AmmoPickup.uc index 53dcfb2..121df07 100644 --- a/sources/Weapons/Playable/AssaultRifles/L85A2/NiceL85A2AmmoPickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/L85A2/NiceL85A2AmmoPickup.uc @@ -2,7 +2,7 @@ class NiceL85A2AmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=30 - InventoryType=Class'NicePack.NiceL85A2Ammo' + InventoryType=class'NiceL85A2Ammo' RespawnTime=0.000000 PickupMessage="Mag (5.56mm)" StaticMesh=StaticMesh'KillingFloorStatics.DualiesAmmo' diff --git a/sources/Weapons/Playable/AssaultRifles/L85A2/NiceL85A2Fire.uc b/sources/Weapons/Playable/AssaultRifles/L85A2/NiceL85A2Fire.uc index 001be69..35df420 100644 --- a/sources/Weapons/Playable/AssaultRifles/L85A2/NiceL85A2Fire.uc +++ b/sources/Weapons/Playable/AssaultRifles/L85A2/NiceL85A2Fire.uc @@ -14,7 +14,7 @@ defaultproperties FireSoundRef="KF_M4RifleSnd.M4Rifle_Fire_Single_M" StereoFireSoundRef="KF_M4RifleSnd.M4Rifle_Fire_Single_S" NoAmmoSoundRef="KF_AK47Snd.AK47_DryFire" - DamageType=Class'NicePack.NiceDamTypeL85A2Z' + DamageType=class'NiceDamTypeL85A2Z' DamageMin=81 DamageMax=81 Momentum=10000.000000 @@ -25,7 +25,7 @@ defaultproperties TweenTime=0.025000 FireForce="AssaultRifleFire" FireRate=0.250000 - AmmoClass=Class'NicePack.NiceL85A2Ammo' + AmmoClass=class'NiceL85A2Ammo' ShakeRotMag=(X=75.000000,Y=75.000000,Z=250.000000) ShakeRotRate=(X=10000.000000,Y=10000.000000,Z=10000.000000) ShakeRotTime=3.000000 diff --git a/sources/Weapons/Playable/AssaultRifles/L85A2/NiceL85A2Pickup.uc b/sources/Weapons/Playable/AssaultRifles/L85A2/NiceL85A2Pickup.uc index 8f838d8..9cfd28f 100644 --- a/sources/Weapons/Playable/AssaultRifles/L85A2/NiceL85A2Pickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/L85A2/NiceL85A2Pickup.uc @@ -15,7 +15,7 @@ defaultproperties AmmoMesh=StaticMesh'KillingFloorStatics.L85Ammo' CorrespondingPerkIndex=3 EquipmentCategoryID=3 - InventoryType=Class'NicePack.NiceL85A2Z' + InventoryType=class'NiceL85A2Z' PickupMessage="You got the L85A2" PickupSound=Sound'KF_FNFALSnd.FNFAL_Pickup' PickupForce="AssaultRiflePickup" diff --git a/sources/Weapons/Playable/AssaultRifles/L85A2/NiceL85A2Z.uc b/sources/Weapons/Playable/AssaultRifles/L85A2/NiceL85A2Z.uc index d7979a6..c79a047 100644 --- a/sources/Weapons/Playable/AssaultRifles/L85A2/NiceL85A2Z.uc +++ b/sources/Weapons/Playable/AssaultRifles/L85A2/NiceL85A2Z.uc @@ -37,7 +37,7 @@ defaultproperties SelectedHudImageRef="NicePackT.L85A2.L85A2_Selected" PlayerIronSightFOV=40.000000 ZoomedDisplayFOV=65.000000 - FireModeClass(0)=Class'NicePack.NiceL85A2Fire' + FireModeClass(0)=class'NiceL85A2Fire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectAnimRate=1.500000 @@ -53,10 +53,10 @@ defaultproperties CustomCrossHairTextureName="Crosshairs.HUD.Crosshair_Cross5" InventoryGroup=3 GroupOffset=1 - PickupClass=Class'NicePack.NiceL85A2Pickup' + PickupClass=class'NiceL85A2Pickup' PlayerViewOffset=(X=20.000000,Y=25.000000,Z=-10.000000) BobDamping=6.000000 - AttachmentClass=Class'NicePack.NiceL85A2Attachment' + AttachmentClass=class'NiceL85A2Attachment' IconCoords=(X1=434,Y1=253,X2=506,Y2=292) ItemName="L85A2" } diff --git a/sources/Weapons/Playable/AssaultRifles/M4/NiceDamTypeM4AssaultRifle.uc b/sources/Weapons/Playable/AssaultRifles/M4/NiceDamTypeM4AssaultRifle.uc index 1c0ab25..21a9168 100644 --- a/sources/Weapons/Playable/AssaultRifles/M4/NiceDamTypeM4AssaultRifle.uc +++ b/sources/Weapons/Playable/AssaultRifles/M4/NiceDamTypeM4AssaultRifle.uc @@ -3,7 +3,7 @@ class NiceDamTypeM4AssaultRifle extends NiceDamageTypeVetCommando defaultproperties { HeadShotDamageMult=1.500000 - WeaponClass=Class'NicePack.NiceM4AssaultRifle' + WeaponClass=class'NiceM4AssaultRifle' DeathString="%k killed %o (M4)." FemaleSuicide="%o shot herself in the foot." MaleSuicide="%o shot himself in the foot." diff --git a/sources/Weapons/Playable/AssaultRifles/M4/NiceM4Ammo.uc b/sources/Weapons/Playable/AssaultRifles/M4/NiceM4Ammo.uc index dc52734..fe2d589 100644 --- a/sources/Weapons/Playable/AssaultRifles/M4/NiceM4Ammo.uc +++ b/sources/Weapons/Playable/AssaultRifles/M4/NiceM4Ammo.uc @@ -2,11 +2,11 @@ class NiceM4Ammo extends NiceAmmo; #EXEC OBJ LOAD FILE=KillingFloorHUD.utx defaultproperties { - WeaponPickupClass=Class'NicePack.NiceM4Pickup' + WeaponPickupClass=class'NiceM4Pickup' AmmoPickupAmount=30 MaxAmmo=240 InitialAmount=60 - PickupClass=Class'NicePack.NiceM4AmmoPickup' + PickupClass=class'NiceM4AmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=336,Y1=82,X2=382,Y2=125) ItemName="M4 bullets" diff --git a/sources/Weapons/Playable/AssaultRifles/M4/NiceM4AmmoPickup.uc b/sources/Weapons/Playable/AssaultRifles/M4/NiceM4AmmoPickup.uc index c0b6cd6..a8a4062 100644 --- a/sources/Weapons/Playable/AssaultRifles/M4/NiceM4AmmoPickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/M4/NiceM4AmmoPickup.uc @@ -2,7 +2,7 @@ class NiceM4AmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=30 - InventoryType=Class'NicePack.NiceM4Ammo' + InventoryType=class'NiceM4Ammo' PickupMessage="Rounds 5.56mm" StaticMesh=StaticMesh'KillingFloorStatics.L85Ammo' } diff --git a/sources/Weapons/Playable/AssaultRifles/M4/NiceM4AssaultRifle.uc b/sources/Weapons/Playable/AssaultRifles/M4/NiceM4AssaultRifle.uc index bc28f8f..a84e8ea 100644 --- a/sources/Weapons/Playable/AssaultRifles/M4/NiceM4AssaultRifle.uc +++ b/sources/Weapons/Playable/AssaultRifles/M4/NiceM4AssaultRifle.uc @@ -29,7 +29,7 @@ defaultproperties SelectedHudImageRef="KillingFloor2HUD.WeaponSelect.M4" PlayerIronSightFOV=65.000000 ZoomedDisplayFOV=45.000000 - FireModeClass(0)=Class'NicePack.NiceM4Fire' + FireModeClass(0)=class'NiceM4Fire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectForce="SwitchToAssaultRifle" @@ -44,10 +44,10 @@ defaultproperties CustomCrossHairTextureName="Crosshairs.HUD.Crosshair_Cross5" InventoryGroup=3 GroupOffset=10 - PickupClass=Class'NicePack.NiceM4Pickup' + PickupClass=class'NiceM4Pickup' PlayerViewOffset=(X=25.000000,Y=18.000000,Z=-6.000000) BobDamping=6.000000 - AttachmentClass=Class'NicePack.NiceM4Attachment' + AttachmentClass=class'NiceM4Attachment' IconCoords=(X1=245,Y1=39,X2=329,Y2=79) ItemName="M4" TransientSoundVolume=1.250000 diff --git a/sources/Weapons/Playable/AssaultRifles/M4/NiceM4Fire.uc b/sources/Weapons/Playable/AssaultRifles/M4/NiceM4Fire.uc index 0e721e7..bab49e2 100644 --- a/sources/Weapons/Playable/AssaultRifles/M4/NiceM4Fire.uc +++ b/sources/Weapons/Playable/AssaultRifles/M4/NiceM4Fire.uc @@ -14,12 +14,12 @@ defaultproperties FireSoundRef="KF_M4RifleSnd.M4Rifle_Fire_Single_M" StereoFireSoundRef="KF_M4RifleSnd.M4Rifle_Fire_Single_S" NoAmmoSoundRef="KF_AK47Snd.AK47_DryFire" - DamageType=Class'NicePack.NiceDamTypeM4AssaultRifle' + DamageType=class'NiceDamTypeM4AssaultRifle' DamageMin=69 DamageMax=69 Momentum=8500.000000 FireRate=0.075000 - AmmoClass=Class'NicePack.NiceM4Ammo' + AmmoClass=class'NiceM4Ammo' ShakeRotMag=(X=50.000000,Y=50.000000,Z=350.000000) ShakeRotRate=(X=5000.000000,Y=5000.000000,Z=5000.000000) ShakeRotTime=0.750000 diff --git a/sources/Weapons/Playable/AssaultRifles/M4/NiceM4Pickup.uc b/sources/Weapons/Playable/AssaultRifles/M4/NiceM4Pickup.uc index 43b66dc..29a6a08 100644 --- a/sources/Weapons/Playable/AssaultRifles/M4/NiceM4Pickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/M4/NiceM4Pickup.uc @@ -16,7 +16,7 @@ defaultproperties CorrespondingPerkIndex=3 EquipmentCategoryID=2 VariantClasses(0)=Class'KFMod.CamoM4Pickup' - InventoryType=Class'NicePack.NiceM4AssaultRifle' + InventoryType=class'NiceM4AssaultRifle' PickupMessage="You got the M4" PickupSound=Sound'KF_M4RifleSnd.foley.WEP_M4_Foley_Pickup' PickupForce="AssaultRiflePickup" diff --git a/sources/Weapons/Playable/AssaultRifles/M4M203/NiceDamTypeM4M203AssaultRifle.uc b/sources/Weapons/Playable/AssaultRifles/M4M203/NiceDamTypeM4M203AssaultRifle.uc index db5fa94..9cb167c 100644 --- a/sources/Weapons/Playable/AssaultRifles/M4M203/NiceDamTypeM4M203AssaultRifle.uc +++ b/sources/Weapons/Playable/AssaultRifles/M4M203/NiceDamTypeM4M203AssaultRifle.uc @@ -3,7 +3,7 @@ class NiceDamTypeM4M203AssaultRifle extends NiceDamageTypeVetCommando defaultproperties { HeadShotDamageMult=1.500000 - WeaponClass=Class'NicePack.NiceM4M203AssaultRifle' + WeaponClass=class'NiceM4M203AssaultRifle' DeathString="%k killed %o (M4 M203)." FemaleSuicide="%o shot herself in the foot." MaleSuicide="%o shot himself in the foot." diff --git a/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4203Pickup.uc b/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4203Pickup.uc index 4f613f5..6447140 100644 --- a/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4203Pickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4203Pickup.uc @@ -3,6 +3,6 @@ defaultproperties { ItemName="M4 203 NW" ItemShortName="M4 203 N W" - PrimaryWeaponPickup=Class'NicePack.NiceM4Pickup' - InventoryType=Class'NicePack.NiceM4203AssaultRifle' + PrimaryWeaponPickup=class'NiceM4Pickup' + InventoryType=class'NiceM4203AssaultRifle' } diff --git a/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203Ammo.uc b/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203Ammo.uc index 20e9c36..0edfe43 100644 --- a/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203Ammo.uc +++ b/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203Ammo.uc @@ -2,11 +2,11 @@ class NiceM4M203Ammo extends NiceAmmo; #EXEC OBJ LOAD FILE=KillingFloorHUD.utx defaultproperties { - WeaponPickupClass=Class'NicePack.NiceM4Pickup' + WeaponPickupClass=class'NiceM4Pickup' AmmoPickupAmount=30 MaxAmmo=180 InitialAmount=60 - PickupClass=Class'NicePack.NiceM4M203AmmoPickup' + PickupClass=class'NiceM4M203AmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=336,Y1=82,X2=382,Y2=125) ItemName="M4 bullets" diff --git a/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203AmmoPickup.uc b/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203AmmoPickup.uc index f19bd09..6900b11 100644 --- a/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203AmmoPickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203AmmoPickup.uc @@ -2,7 +2,7 @@ class NiceM4M203AmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=30 - InventoryType=Class'NicePack.NiceM4M203Ammo' + InventoryType=class'NiceM4M203Ammo' PickupMessage="Rounds 5.56mm" StaticMesh=StaticMesh'KillingFloorStatics.L85Ammo' } diff --git a/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203AssaultRifle.uc b/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203AssaultRifle.uc index 0b95e15..47e0e1c 100644 --- a/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203AssaultRifle.uc +++ b/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203AssaultRifle.uc @@ -46,8 +46,8 @@ defaultproperties SelectedHudImageRef="KillingFloor2HUD.WeaponSelect.M4_203" PlayerIronSightFOV=65.000000 ZoomedDisplayFOV=45.000000 - FireModeClass(0)=Class'NicePack.NiceM4M203Fire' - FireModeClass(1)=Class'NicePack.NiceM4M203NadeFire' + FireModeClass(0)=class'NiceM4M203Fire' + FireModeClass(1)=class'NiceM4M203NadeFire' PutDownAnim="PutDown" SelectForce="SwitchToAssaultRifle" AIRating=0.550000 @@ -61,10 +61,10 @@ defaultproperties CustomCrossHairTextureName="Crosshairs.HUD.Crosshair_Cross5" InventoryGroup=3 GroupOffset=8 - PickupClass=Class'NicePack.NiceM4M203Pickup' + PickupClass=class'NiceM4M203Pickup' PlayerViewOffset=(X=25.000000,Y=18.000000,Z=-6.000000) BobDamping=6.000000 - AttachmentClass=Class'NicePack.NiceM4M203Attachment' + AttachmentClass=class'NiceM4M203Attachment' IconCoords=(X1=245,Y1=39,X2=329,Y2=79) ItemName="M4 203" TransientSoundVolume=1.250000 diff --git a/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203Fire.uc b/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203Fire.uc index 91789ea..aad7e7b 100644 --- a/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203Fire.uc +++ b/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203Fire.uc @@ -13,12 +13,12 @@ defaultproperties FireSoundRef="KF_M4RifleSnd.M4Rifle_Fire_Single_M" StereoFireSoundRef="KF_M4RifleSnd.M4Rifle_Fire_Single_S" NoAmmoSoundRef="KF_AK47Snd.AK47_DryFire" - DamageType=Class'NicePack.NiceDamTypeM4AssaultRifle' + DamageType=class'NiceDamTypeM4AssaultRifle' DamageMin=69 DamageMax=69 Momentum=8500.000000 FireRate=0.075000 - AmmoClass=Class'NicePack.NiceM4M203Ammo' + AmmoClass=class'NiceM4M203Ammo' ShakeRotMag=(X=50.000000,Y=50.000000,Z=350.000000) ShakeRotRate=(X=5000.000000,Y=5000.000000,Z=5000.000000) ShakeRotTime=0.750000 diff --git a/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203NadeAmmo.uc b/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203NadeAmmo.uc index 3759037..bd24e42 100644 --- a/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203NadeAmmo.uc +++ b/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203NadeAmmo.uc @@ -1,11 +1,11 @@ class NiceM4M203NadeAmmo extends NiceAmmo; defaultproperties { - WeaponPickupClass=Class'NicePack.NiceM4M203Pickup' + WeaponPickupClass=class'NiceM4M203Pickup' AmmoPickupAmount=1 MaxAmmo=8 InitialAmount=2 - PickupClass=Class'NicePack.NiceM4M203AmmoPickup' + PickupClass=class'NiceM4M203AmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=4,Y1=350,X2=110,Y2=395) ItemName="M203 Grenades" diff --git a/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203NadeAmmoPickup.uc b/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203NadeAmmoPickup.uc index 0b4587d..265890c 100644 --- a/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203NadeAmmoPickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203NadeAmmoPickup.uc @@ -2,6 +2,6 @@ class NiceM4M203NadeAmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=1 - InventoryType=Class'NicePack.NiceM4M203NadeAmmo' + InventoryType=class'NiceM4M203NadeAmmo' PickupMessage="M203 Grenades" } diff --git a/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203NadeFire.uc b/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203NadeFire.uc index 384d766..40d84dc 100644 --- a/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203NadeFire.uc +++ b/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203NadeFire.uc @@ -4,8 +4,8 @@ defaultproperties ProjSpawnOffset=(X=5.000000) EffectiveRange=2500.000000 ProjectileSpeed=3800.000000 - bulletClass=Class'NicePack.NiceBallisticNade' - ExplosionDamageType=Class'NicePack.NiceDamTypeM79Explosion' + bulletClass=class'NiceBallisticNade' + ExplosionDamageType=class'NiceDamTypeM79Explosion' ExplosionDamage=320 ExplosionRadius=400.000000 explosionExponent=1.000000 @@ -20,14 +20,14 @@ defaultproperties FireSoundRef="KF_M79Snd.M79_Fire" StereoFireSoundRef="KF_M79Snd.M79_FireST" NoAmmoSoundRef="KF_M79Snd.M79_DryFire" - DamageType=Class'NicePack.NiceDamTypeM79Blunt' + DamageType=class'NiceDamTypeM79Blunt' DamageMax=200 bWaitForRelease=True TransientSoundVolume=1.800000 FireAnim="Fire_Secondary" FireForce="AssaultRifleFire" FireRate=0.000000 - AmmoClass=Class'NicePack.NiceM4M203NadeAmmo' + AmmoClass=class'NiceM4M203NadeAmmo' ShakeRotMag=(X=3.000000,Y=4.000000,Z=2.000000) ShakeRotRate=(X=10000.000000,Y=10000.000000,Z=10000.000000) ShakeOffsetMag=(X=3.000000,Y=3.000000,Z=3.000000) diff --git a/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203Pickup.uc b/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203Pickup.uc index 5484082..53b04fd 100644 --- a/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203Pickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/M4M203/NiceM4M203Pickup.uc @@ -15,10 +15,10 @@ defaultproperties AmmoItemName="5.56mm Ammo" AmmoMesh=StaticMesh'KillingFloorStatics.L85Ammo' SecondaryAmmoShortName="M4 203 Grenades" - PrimaryWeaponPickup=Class'NicePack.NiceM4Pickup' + PrimaryWeaponPickup=class'NiceM4Pickup' CorrespondingPerkIndex=6 EquipmentCategoryID=2 - InventoryType=Class'NicePack.NiceM4M203AssaultRifle' + InventoryType=class'NiceM4M203AssaultRifle' PickupMessage="You got the M4 203" PickupSound=Sound'KF_M4RifleSnd.foley.WEP_M4_Foley_Pickup' PickupForce="AssaultRiflePickup" diff --git a/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM203Fire.uc b/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM203Fire.uc index 6c5a22c..753f9d0 100644 --- a/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM203Fire.uc +++ b/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM203Fire.uc @@ -1,5 +1,5 @@ class NiceM203Fire extends ScrnM203Fire; defaultproperties { - ProjectileClass=Class'NicePack.NiceM203GrenadeProjectile' + ProjectileClass=class'NiceM203GrenadeProjectile' } diff --git a/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM203MAmmo.uc b/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM203MAmmo.uc index 714cecf..4d3e999 100644 --- a/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM203MAmmo.uc +++ b/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM203MAmmo.uc @@ -1,5 +1,5 @@ class NiceM203MAmmo extends ScrnM203MAmmo; defaultproperties { - PickupClass=Class'NicePack.NiceM203MAmmoPickup' + PickupClass=class'NiceM203MAmmoPickup' } diff --git a/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM203MAmmoPickup.uc b/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM203MAmmoPickup.uc index 7bb8f27..c4250bc 100644 --- a/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM203MAmmoPickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM203MAmmoPickup.uc @@ -1,5 +1,5 @@ class NiceM203MAmmoPickup extends ScrnM203MAmmoPickup; defaultproperties { - InventoryType=Class'NicePack.NiceM203MAmmo' + InventoryType=class'NiceM203MAmmo' } diff --git a/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM203MFire.uc b/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM203MFire.uc index ecb7e3d..5fe341b 100644 --- a/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM203MFire.uc +++ b/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM203MFire.uc @@ -1,6 +1,6 @@ class NiceM203MFire extends NiceM203Fire; defaultproperties { - AmmoClass=Class'NicePack.NiceM203MAmmo' - ProjectileClass=Class'NicePack.NiceM203MGrenadeProjectile' + AmmoClass=class'NiceM203MAmmo' + ProjectileClass=class'NiceM203MGrenadeProjectile' } diff --git a/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM4203AssaultRifle.uc b/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM4203AssaultRifle.uc index 477991f..565ce21 100644 --- a/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM4203AssaultRifle.uc +++ b/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM4203AssaultRifle.uc @@ -2,8 +2,8 @@ class NiceM4203AssaultRifle extends ScrnM4203AssaultRifle config(user); defaultproperties { - FireModeClass(0)=Class'NicePack.NiceM4203BulletFire' - FireModeClass(1)=Class'NicePack.NiceM203Fire' - PickupClass=Class'NicePack.NiceM4203Pickup' + FireModeClass(0)=class'NiceM4203BulletFire' + FireModeClass(1)=class'NiceM203Fire' + PickupClass=class'NiceM4203Pickup' ItemName="M4 203 NW" } diff --git a/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM4203BulletFire.uc b/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM4203BulletFire.uc index 2541f42..9e567f7 100644 --- a/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM4203BulletFire.uc +++ b/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM4203BulletFire.uc @@ -3,7 +3,7 @@ defaultproperties { maxVerticalRecoilAngle=170 maxHorizontalRecoilAngle=85 - DamageType=Class'NicePack.NiceDamTypeM4AssaultRifle' + DamageType=class'NiceDamTypeM4AssaultRifle' DamageMin=46 DamageMax=46 FireRate=0.075000 diff --git a/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM4203MMedicGun.uc b/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM4203MMedicGun.uc index d41f3ee..aa0dc4b 100644 --- a/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM4203MMedicGun.uc +++ b/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM4203MMedicGun.uc @@ -46,11 +46,11 @@ defaultproperties SuccessfulHealMessage="You healed %c player(-s) with %ahp" bIsTier2Weapon=False SkinRefs(0)="ScrnTex.Weapons.M4203M" - FireModeClass(0)=Class'NicePack.NiceM4203MBulletFire' - FireModeClass(1)=Class'NicePack.NiceM203MFire' + FireModeClass(0)=class'NiceM4203MBulletFire' + FireModeClass(1)=class'NiceM203MFire' Description="An assault rifle with an attached healing grenade launcher. Shoots in 3-bullet fixed-burst mode." Priority=70 InventoryGroup=4 - PickupClass=Class'NicePack.NiceM4203MPickup' + PickupClass=class'NiceM4203MPickup' ItemName="M4-203M Medic Rifle NW" } diff --git a/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM4203MPickup.uc b/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM4203MPickup.uc index f1f35de..fe316e4 100644 --- a/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM4203MPickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/M4M203M/NiceM4203MPickup.uc @@ -8,6 +8,6 @@ defaultproperties ItemName="M4-203M Medic Rifle NW" ItemShortName="M4-203M NW" CorrespondingPerkIndex=0 - InventoryType=Class'NicePack.NiceM4203MMedicGun' + InventoryType=class'NiceM4203MMedicGun' PickupMessage="You got the M4-203M Medic Rifle NW" } diff --git a/sources/Weapons/Playable/AssaultRifles/MKb42/NiceDamTypeMKb42AssaultRifle.uc b/sources/Weapons/Playable/AssaultRifles/MKb42/NiceDamTypeMKb42AssaultRifle.uc index 57b6e2c..fdede41 100644 --- a/sources/Weapons/Playable/AssaultRifles/MKb42/NiceDamTypeMKb42AssaultRifle.uc +++ b/sources/Weapons/Playable/AssaultRifles/MKb42/NiceDamTypeMKb42AssaultRifle.uc @@ -5,7 +5,7 @@ defaultproperties bPenetrationHSOnly=True MaxPenetrations=0 HeadShotDamageMult=1.500000 - WeaponClass=Class'NicePack.NiceMKb42AssaultRifle' + WeaponClass=class'NiceMKb42AssaultRifle' DeathString="%k killed %o (MKb42)." FemaleSuicide="%o shot herself in the foot." MaleSuicide="%o shot himself in the foot." diff --git a/sources/Weapons/Playable/AssaultRifles/MKb42/NiceMKb42Ammo.uc b/sources/Weapons/Playable/AssaultRifles/MKb42/NiceMKb42Ammo.uc index 8c1bab7..ea802b6 100644 --- a/sources/Weapons/Playable/AssaultRifles/MKb42/NiceMKb42Ammo.uc +++ b/sources/Weapons/Playable/AssaultRifles/MKb42/NiceMKb42Ammo.uc @@ -2,11 +2,11 @@ class NiceMKb42Ammo extends NiceAmmo; #EXEC OBJ LOAD FILE=KillingFloorHUD.utx defaultproperties { - WeaponPickupClass=Class'NicePack.NiceMKb42Pickup' + WeaponPickupClass=class'NiceMKb42Pickup' AmmoPickupAmount=30 MaxAmmo=270 InitialAmount=60 - PickupClass=Class'NicePack.NiceMKb42AmmoPickup' + PickupClass=class'NiceMKb42AmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=336,Y1=82,X2=382,Y2=125) ItemName="MKb42 bullets" diff --git a/sources/Weapons/Playable/AssaultRifles/MKb42/NiceMKb42AmmoPickup.uc b/sources/Weapons/Playable/AssaultRifles/MKb42/NiceMKb42AmmoPickup.uc index c4bfa6d..a3ffb81 100644 --- a/sources/Weapons/Playable/AssaultRifles/MKb42/NiceMKb42AmmoPickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/MKb42/NiceMKb42AmmoPickup.uc @@ -2,7 +2,7 @@ class NiceMKb42AmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=30 - InventoryType=Class'NicePack.NiceMKb42Ammo' + InventoryType=class'NiceMKb42Ammo' PickupMessage="Rounds 7.92mm Kurz" StaticMesh=StaticMesh'KillingFloorStatics.L85Ammo' } diff --git a/sources/Weapons/Playable/AssaultRifles/MKb42/NiceMKb42AssaultRifle.uc b/sources/Weapons/Playable/AssaultRifles/MKb42/NiceMKb42AssaultRifle.uc index ac2b1fd..743cc34 100644 --- a/sources/Weapons/Playable/AssaultRifles/MKb42/NiceMKb42AssaultRifle.uc +++ b/sources/Weapons/Playable/AssaultRifles/MKb42/NiceMKb42AssaultRifle.uc @@ -26,7 +26,7 @@ defaultproperties SelectedHudImageRef="KillingFloor2HUD.WeaponSelect.MKB42" PlayerIronSightFOV=65.000000 ZoomedDisplayFOV=35.000000 - FireModeClass(0)=Class'NicePack.NiceMKb42Fire' + FireModeClass(0)=class'NiceMKb42Fire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectForce="SwitchToAssaultRifle" @@ -41,10 +41,10 @@ defaultproperties CustomCrossHairTextureName="Crosshairs.HUD.Crosshair_Cross5" InventoryGroup=3 GroupOffset=13 - PickupClass=Class'NicePack.NiceMKb42Pickup' + PickupClass=class'NiceMKb42Pickup' PlayerViewOffset=(X=20.000000,Y=18.000000,Z=-6.000000) BobDamping=6.000000 - AttachmentClass=Class'NicePack.NiceMKb42Attachment' + AttachmentClass=class'NiceMKb42Attachment' IconCoords=(X1=245,Y1=39,X2=329,Y2=79) ItemName="MKb42" TransientSoundVolume=1.250000 diff --git a/sources/Weapons/Playable/AssaultRifles/MKb42/NiceMKb42Fire.uc b/sources/Weapons/Playable/AssaultRifles/MKb42/NiceMKb42Fire.uc index 74b40ed..fb143e5 100644 --- a/sources/Weapons/Playable/AssaultRifles/MKb42/NiceMKb42Fire.uc +++ b/sources/Weapons/Playable/AssaultRifles/MKb42/NiceMKb42Fire.uc @@ -13,7 +13,7 @@ defaultproperties FireSoundRef="KF_mkb42Snd.mkb42_Fire_Single_M" StereoFireSoundRef="KF_mkb42Snd.mkb42_Fire_Single_S" NoAmmoSoundRef="KF_AK47Snd.AK47_DryFire" - DamageType=Class'NicePack.NiceDamTypeMKb42AssaultRifle' + DamageType=class'NiceDamTypeMKb42AssaultRifle' DamageMin=99 DamageMax=99 Momentum=8500.000000 @@ -24,7 +24,7 @@ defaultproperties TweenTime=0.025000 FireForce="AssaultRifleFire" FireRate=0.140000 - AmmoClass=Class'NicePack.NiceMKb42Ammo' + AmmoClass=class'NiceMKb42Ammo' ShakeRotMag=(X=50.000000,Y=50.000000,Z=350.000000) ShakeRotRate=(X=5000.000000,Y=5000.000000,Z=5000.000000) ShakeRotTime=0.750000 diff --git a/sources/Weapons/Playable/AssaultRifles/MKb42/NiceMKb42Pickup.uc b/sources/Weapons/Playable/AssaultRifles/MKb42/NiceMKb42Pickup.uc index 2427986..c97c589 100644 --- a/sources/Weapons/Playable/AssaultRifles/MKb42/NiceMKb42Pickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/MKb42/NiceMKb42Pickup.uc @@ -15,7 +15,7 @@ defaultproperties AmmoMesh=StaticMesh'KillingFloorStatics.L85Ammo' CorrespondingPerkIndex=3 EquipmentCategoryID=2 - InventoryType=Class'NicePack.NiceMKb42AssaultRifle' + InventoryType=class'NiceMKb42AssaultRifle' PickupMessage="You got the MKb42" PickupSound=Sound'KF_mkb42Snd.Handling.mkb42_Handling_Bolt_Back' PickupForce="AssaultRiflePickup" diff --git a/sources/Weapons/Playable/AssaultRifles/SCAR/NiceDamTypeSCARMK17AssaultRifle.uc b/sources/Weapons/Playable/AssaultRifles/SCAR/NiceDamTypeSCARMK17AssaultRifle.uc index afd692b..2707138 100644 --- a/sources/Weapons/Playable/AssaultRifles/SCAR/NiceDamTypeSCARMK17AssaultRifle.uc +++ b/sources/Weapons/Playable/AssaultRifles/SCAR/NiceDamTypeSCARMK17AssaultRifle.uc @@ -6,7 +6,7 @@ defaultproperties MaxPenetrations=1 flinchMultiplier=0.800000 HeadShotDamageMult=2.000000 - WeaponClass=Class'NicePack.NiceSCARMK17AssaultRifle' + WeaponClass=class'NiceSCARMK17AssaultRifle' DeathString="%k killed %o (SCAR MK17)." FemaleSuicide="%o shot herself in the foot." MaleSuicide="%o shot himself in the foot." diff --git a/sources/Weapons/Playable/AssaultRifles/SCAR/NiceSCARMK17Ammo.uc b/sources/Weapons/Playable/AssaultRifles/SCAR/NiceSCARMK17Ammo.uc index a4e7863..5356e7f 100644 --- a/sources/Weapons/Playable/AssaultRifles/SCAR/NiceSCARMK17Ammo.uc +++ b/sources/Weapons/Playable/AssaultRifles/SCAR/NiceSCARMK17Ammo.uc @@ -2,11 +2,11 @@ class NiceSCARMK17Ammo extends NiceAmmo; #EXEC OBJ LOAD FILE=KillingFloorHUD.utx defaultproperties { - WeaponPickupClass=Class'NicePack.NiceSCARMK17Pickup' + WeaponPickupClass=class'NiceSCARMK17Pickup' AmmoPickupAmount=20 MaxAmmo=180 InitialAmount=45 - PickupClass=Class'NicePack.NiceSCARMK17AmmoPickup' + PickupClass=class'NiceSCARMK17AmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=336,Y1=82,X2=382,Y2=125) ItemName="SCARMK17 bullets" diff --git a/sources/Weapons/Playable/AssaultRifles/SCAR/NiceSCARMK17AmmoPickup.uc b/sources/Weapons/Playable/AssaultRifles/SCAR/NiceSCARMK17AmmoPickup.uc index a71bd9a..ad5891f 100644 --- a/sources/Weapons/Playable/AssaultRifles/SCAR/NiceSCARMK17AmmoPickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/SCAR/NiceSCARMK17AmmoPickup.uc @@ -2,7 +2,7 @@ class NiceSCARMK17AmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=20 - InventoryType=Class'NicePack.NiceSCARMK17Ammo' + InventoryType=class'NiceSCARMK17Ammo' PickupMessage="Rounds 7.62x51mm" StaticMesh=StaticMesh'KillingFloorStatics.L85Ammo' } diff --git a/sources/Weapons/Playable/AssaultRifles/SCAR/NiceSCARMK17AssaultRifle.uc b/sources/Weapons/Playable/AssaultRifles/SCAR/NiceSCARMK17AssaultRifle.uc index 995af49..423f579 100644 --- a/sources/Weapons/Playable/AssaultRifles/SCAR/NiceSCARMK17AssaultRifle.uc +++ b/sources/Weapons/Playable/AssaultRifles/SCAR/NiceSCARMK17AssaultRifle.uc @@ -24,14 +24,14 @@ defaultproperties HudImageRef="KillingFloor2HUD.WeaponSelect.Scar_unselected" SelectedHudImageRef="KillingFloor2HUD.WeaponSelect.Scar" ZoomedDisplayFOV=20.000000 - FireModeClass(0)=Class'NicePack.NiceSCARMK17Fire' + FireModeClass(0)=class'NiceSCARMK17Fire' Description="An advanced tactical assault rifle. Equipped with an aimpoint sight. Fires in semi or full auto with great power and accuracy." DisplayFOV=55.000000 Priority=175 InventoryGroup=4 GroupOffset=4 - PickupClass=Class'NicePack.NiceSCARMK17Pickup' + PickupClass=class'NiceSCARMK17Pickup' PlayerViewOffset=(X=25.000000,Y=20.000000) - AttachmentClass=Class'NicePack.NiceSCARMK17Attachment' + AttachmentClass=class'NiceSCARMK17Attachment' ItemName="SCAR MK17" } diff --git a/sources/Weapons/Playable/AssaultRifles/SCAR/NiceSCARMK17Fire.uc b/sources/Weapons/Playable/AssaultRifles/SCAR/NiceSCARMK17Fire.uc index 3b7216d..a5712d7 100644 --- a/sources/Weapons/Playable/AssaultRifles/SCAR/NiceSCARMK17Fire.uc +++ b/sources/Weapons/Playable/AssaultRifles/SCAR/NiceSCARMK17Fire.uc @@ -13,7 +13,7 @@ defaultproperties FireSoundRef="KF_SCARSnd.SCAR_Fire" StereoFireSoundRef="KF_SCARSnd.SCAR_FireST" NoAmmoSoundRef="KF_SCARSnd.SCAR_DryFire" - DamageType=Class'NicePack.NiceDamTypeSCARMK17AssaultRifle' + DamageType=class'NiceDamTypeSCARMK17AssaultRifle' DamageMin=74 DamageMax=74 Momentum=8500.000000 @@ -23,7 +23,7 @@ defaultproperties TweenTime=0.025000 FireForce="AssaultRifleFire" FireRate=0.096000 - AmmoClass=Class'NicePack.NiceSCARMK17Ammo' + AmmoClass=class'NiceSCARMK17Ammo' ShakeRotMag=(X=50.000000,Y=50.000000,Z=300.000000) ShakeRotRate=(X=7500.000000,Y=7500.000000,Z=7500.000000) ShakeRotTime=0.650000 diff --git a/sources/Weapons/Playable/AssaultRifles/SCAR/NiceSCARMK17Pickup.uc b/sources/Weapons/Playable/AssaultRifles/SCAR/NiceSCARMK17Pickup.uc index 2d90a6d..6052a53 100644 --- a/sources/Weapons/Playable/AssaultRifles/SCAR/NiceSCARMK17Pickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/SCAR/NiceSCARMK17Pickup.uc @@ -1,6 +1,9 @@ class NiceSCARMK17Pickup extends NiceWeaponPickup; + defaultproperties { + VariantClasses(0)=class'KFMod.NeonSCARMK17Pickup' + VariantClasses(1)=class'SkinCamoSCARMK17Pickup' Weight=8.000000 cost=1250 AmmoCost=28 @@ -15,12 +18,11 @@ defaultproperties AmmoMesh=StaticMesh'KillingFloorStatics.L85Ammo' CorrespondingPerkIndex=3 EquipmentCategoryID=3 - VariantClasses(0)=Class'KFMod.NeonSCARMK17Pickup' - InventoryType=Class'NicePack.NiceSCARMK17AssaultRifle' + InventoryType=class'NiceSCARMK17AssaultRifle' PickupMessage="You got the SCARMK17" PickupSound=Sound'KF_SCARSnd.SCAR_Pickup' PickupForce="AssaultRiflePickup" StaticMesh=StaticMesh'KF_pickups2_Trip.Rifles.SCAR_Pickup' CollisionRadius=25.000000 CollisionHeight=5.000000 -} +} \ No newline at end of file diff --git a/sources/Weapons/Playable/AssaultRifles/TacticalThompson/NiceDamTypeThom.uc b/sources/Weapons/Playable/AssaultRifles/TacticalThompson/NiceDamTypeThom.uc index 298bc7c..cab53c1 100644 --- a/sources/Weapons/Playable/AssaultRifles/TacticalThompson/NiceDamTypeThom.uc +++ b/sources/Weapons/Playable/AssaultRifles/TacticalThompson/NiceDamTypeThom.uc @@ -3,7 +3,7 @@ class NiceDamTypeThom extends NiceDamageTypeVetCommando defaultproperties { HeadShotDamageMult=1.500000 - WeaponClass=Class'NicePack.NiceTactThom' + WeaponClass=class'NiceTactThom' DeathString="%k killed %o (Tactical-Thompson)." FemaleSuicide="%o shot herself in the foot." MaleSuicide="%o shot himself in the foot." diff --git a/sources/Weapons/Playable/AssaultRifles/TacticalThompson/NiceTactThom.uc b/sources/Weapons/Playable/AssaultRifles/TacticalThompson/NiceTactThom.uc index 6d58896..7fff665 100644 --- a/sources/Weapons/Playable/AssaultRifles/TacticalThompson/NiceTactThom.uc +++ b/sources/Weapons/Playable/AssaultRifles/TacticalThompson/NiceTactThom.uc @@ -44,7 +44,7 @@ defaultproperties HudImageRef="NicePackT.TactThompson.tact_unsel" PlayerIronSightFOV=65.000000 ZoomedDisplayFOV=40.000000 - FireModeClass(0)=Class'NicePack.NiceTactThomFire' + FireModeClass(0)=class'NiceTactThomFire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectForce="SwitchToAssaultRifle" @@ -59,10 +59,10 @@ defaultproperties CustomCrossHairTextureName="Crosshairs.HUD.Crosshair_Cross5" InventoryGroup=3 GroupOffset=1 - PickupClass=Class'NicePack.NiceTactThomPickup' + PickupClass=class'NiceTactThomPickup' PlayerViewOffset=(X=20.000000,Y=21.500000,Z=-9.000000) BobDamping=6.000000 - AttachmentClass=Class'NicePack.NiceTactThomAttachment' + AttachmentClass=class'NiceTactThomAttachment' IconCoords=(X1=245,Y1=39,X2=329,Y2=79) ItemName="Tactical Thompson" TransientSoundVolume=1.250000 diff --git a/sources/Weapons/Playable/AssaultRifles/TacticalThompson/NiceTactThomAmmo.uc b/sources/Weapons/Playable/AssaultRifles/TacticalThompson/NiceTactThomAmmo.uc index 66de445..f536623 100644 --- a/sources/Weapons/Playable/AssaultRifles/TacticalThompson/NiceTactThomAmmo.uc +++ b/sources/Weapons/Playable/AssaultRifles/TacticalThompson/NiceTactThomAmmo.uc @@ -2,10 +2,10 @@ class NiceTactThomAmmo extends NiceAmmo; #EXEC OBJ LOAD FILE=KillingFloorHUD.utx defaultproperties { - WeaponPickupClass=Class'NicePack.NiceTactThomPickup' + WeaponPickupClass=class'NiceTactThomPickup' MaxAmmo=270 InitialAmount=60 - PickupClass=Class'NicePack.NiceTactThomAmmoPickup' + PickupClass=class'NiceTactThomAmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=336,Y1=82,X2=382,Y2=125) ItemName="Tact-Thom bullets" diff --git a/sources/Weapons/Playable/AssaultRifles/TacticalThompson/NiceTactThomAmmoPickup.uc b/sources/Weapons/Playable/AssaultRifles/TacticalThompson/NiceTactThomAmmoPickup.uc index b4eec41..4d28c39 100644 --- a/sources/Weapons/Playable/AssaultRifles/TacticalThompson/NiceTactThomAmmoPickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/TacticalThompson/NiceTactThomAmmoPickup.uc @@ -2,7 +2,7 @@ class NiceTactThomAmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=30 - InventoryType=Class'NicePack.NiceTactThomAmmo' + InventoryType=class'NiceTactThomAmmo' PickupMessage="Rounds (Tact-Thom)" StaticMesh=StaticMesh'KillingFloorStatics.L85Ammo' } diff --git a/sources/Weapons/Playable/AssaultRifles/TacticalThompson/NiceTactThomFire.uc b/sources/Weapons/Playable/AssaultRifles/TacticalThompson/NiceTactThomFire.uc index 9f1c8ae..f0faa64 100644 --- a/sources/Weapons/Playable/AssaultRifles/TacticalThompson/NiceTactThomFire.uc +++ b/sources/Weapons/Playable/AssaultRifles/TacticalThompson/NiceTactThomFire.uc @@ -12,7 +12,7 @@ defaultproperties FireSoundRef="NicePackSnd.TactThompson.tact_fire_m" StereoFireSoundRef="NicePackSnd.TactThompson.tacT_fire_s" NoAmmoSoundRef="KF_9MMSnd.9mm_DryFire" - DamageType=Class'NicePack.NiceDamTypeThom' + DamageType=class'NiceDamTypeThom' DamageMin=20 DamageMax=20 Momentum=8500.000000 @@ -22,7 +22,7 @@ defaultproperties TweenTime=0.025000 FireForce="AssaultRifleFire" FireRate=0.080000 - AmmoClass=Class'NicePack.NiceTactThomAmmo' + AmmoClass=class'NiceTactThomAmmo' ShakeRotMag=(X=75.000000,Y=75.000000,Z=250.000000) ShakeRotRate=(X=10000.000000,Y=10000.000000,Z=10000.000000) ShakeRotTime=0.500000 diff --git a/sources/Weapons/Playable/AssaultRifles/TacticalThompson/NiceTactThomPickup.uc b/sources/Weapons/Playable/AssaultRifles/TacticalThompson/NiceTactThomPickup.uc index e4f8e30..376b983 100644 --- a/sources/Weapons/Playable/AssaultRifles/TacticalThompson/NiceTactThomPickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/TacticalThompson/NiceTactThomPickup.uc @@ -14,7 +14,7 @@ defaultproperties AmmoMesh=StaticMesh'KillingFloorStatics.L85Ammo' CorrespondingPerkIndex=3 EquipmentCategoryID=2 - InventoryType=Class'NicePack.NiceTactThom' + InventoryType=class'NiceTactThom' PickupMessage="You got the Tactical-Thompson." PickupSound=Sound'NicePackSnd.TactThompson.bolt_pull' PickupForce="AssaultRiflePickup" diff --git a/sources/Weapons/Playable/AssaultRifles/Tommygun/NiceDamTypeThompsonDrum.uc b/sources/Weapons/Playable/AssaultRifles/Tommygun/NiceDamTypeThompsonDrum.uc index ef0227e..f575d9d 100644 --- a/sources/Weapons/Playable/AssaultRifles/Tommygun/NiceDamTypeThompsonDrum.uc +++ b/sources/Weapons/Playable/AssaultRifles/Tommygun/NiceDamTypeThompsonDrum.uc @@ -3,7 +3,7 @@ class NiceDamTypeThompsonDrum extends NiceDamageTypeVetCommando defaultproperties { HeadShotDamageMult=1.500000 - WeaponClass=Class'NicePack.NiceThompsonDrumSMG' + WeaponClass=class'NiceThompsonDrumSMG' DeathString="%k killed %o (Rising Storm Tommy Gun)." FemaleSuicide="%o shot herself in the foot." MaleSuicide="%o shot himself in the foot." diff --git a/sources/Weapons/Playable/AssaultRifles/Tommygun/NiceThompsonDrumAmmo.uc b/sources/Weapons/Playable/AssaultRifles/Tommygun/NiceThompsonDrumAmmo.uc index 5ec0a2b..211942b 100644 --- a/sources/Weapons/Playable/AssaultRifles/Tommygun/NiceThompsonDrumAmmo.uc +++ b/sources/Weapons/Playable/AssaultRifles/Tommygun/NiceThompsonDrumAmmo.uc @@ -2,7 +2,7 @@ class NiceThompsonDrumAmmo extends NiceAmmo; #EXEC OBJ LOAD FILE=KillingFloorHUD.utx defaultproperties { - WeaponPickupClass=Class'NicePack.NiceThompsonDrumPickup' + WeaponPickupClass=class'NiceThompsonDrumPickup' MaxAmmo=360 InitialAmount=90 PickupClass=Class'KFMod.ThompsonDrumAmmoPickup' diff --git a/sources/Weapons/Playable/AssaultRifles/Tommygun/NiceThompsonDrumAmmoPickup.uc b/sources/Weapons/Playable/AssaultRifles/Tommygun/NiceThompsonDrumAmmoPickup.uc index 3f3d891..bd81ac6 100644 --- a/sources/Weapons/Playable/AssaultRifles/Tommygun/NiceThompsonDrumAmmoPickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/Tommygun/NiceThompsonDrumAmmoPickup.uc @@ -2,7 +2,7 @@ class NiceThompsonDrumAmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=40 - InventoryType=Class'NicePack.NiceThompsonDrumAmmo' + InventoryType=class'NiceThompsonDrumAmmo' PickupMessage="Rounds 45. ACP" StaticMesh=StaticMesh'KillingFloorStatics.L85Ammo' } diff --git a/sources/Weapons/Playable/AssaultRifles/Tommygun/NiceThompsonDrumFire.uc b/sources/Weapons/Playable/AssaultRifles/Tommygun/NiceThompsonDrumFire.uc index 152d5cb..9e78a61 100644 --- a/sources/Weapons/Playable/AssaultRifles/Tommygun/NiceThompsonDrumFire.uc +++ b/sources/Weapons/Playable/AssaultRifles/Tommygun/NiceThompsonDrumFire.uc @@ -14,12 +14,12 @@ defaultproperties FireSoundRef="KF_IJC_HalloweenSnd.Thompson_Fire_Single_M" StereoFireSoundRef="KF_IJC_HalloweenSnd.Thompson_Fire_Single_S" NoAmmoSoundRef="KF_AK47Snd.AK47_DryFire" - DamageType=Class'NicePack.NiceDamTypeThompsonDrum' + DamageType=class'NiceDamTypeThompsonDrum' DamageMin=20 DamageMax=20 Momentum=12500.000000 FireRate=0.085700 - AmmoClass=Class'NicePack.NiceThompsonDrumAmmo' + AmmoClass=class'NiceThompsonDrumAmmo' ShakeRotMag=(X=50.000000,Y=50.000000,Z=350.000000) ShakeRotRate=(X=5000.000000,Y=5000.000000,Z=5000.000000) ShakeRotTime=0.750000 diff --git a/sources/Weapons/Playable/AssaultRifles/Tommygun/NiceThompsonDrumPickup.uc b/sources/Weapons/Playable/AssaultRifles/Tommygun/NiceThompsonDrumPickup.uc index 7e0cc53..571202b 100644 --- a/sources/Weapons/Playable/AssaultRifles/Tommygun/NiceThompsonDrumPickup.uc +++ b/sources/Weapons/Playable/AssaultRifles/Tommygun/NiceThompsonDrumPickup.uc @@ -15,7 +15,7 @@ defaultproperties AmmoMesh=StaticMesh'KillingFloorStatics.L85Ammo' CorrespondingPerkIndex=3 EquipmentCategoryID=3 - InventoryType=Class'NicePack.NiceThompsonDrumSMG' + InventoryType=class'NiceThompsonDrumSMG' PickupMessage="You got the Rising Storm Thompson with Drum Mag" PickupSound=Sound'KF_IJC_HalloweenSnd.Handling.Thompson_Handling_Bolt_Back' PickupForce="AssaultRiflePickup" diff --git a/sources/Weapons/Playable/AssaultRifles/Tommygun/NiceThompsonDrumSMG.uc b/sources/Weapons/Playable/AssaultRifles/Tommygun/NiceThompsonDrumSMG.uc index 5decf8e..ff93594 100644 --- a/sources/Weapons/Playable/AssaultRifles/Tommygun/NiceThompsonDrumSMG.uc +++ b/sources/Weapons/Playable/AssaultRifles/Tommygun/NiceThompsonDrumSMG.uc @@ -27,7 +27,7 @@ defaultproperties SelectedHudImageRef="KF_IJC_HUD.WeaponSelect.Thompson_Drum" PlayerIronSightFOV=65.000000 ZoomedDisplayFOV=40.000000 - FireModeClass(0)=Class'NicePack.NiceThompsonDrumFire' + FireModeClass(0)=class'NiceThompsonDrumFire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectForce="SwitchToAssaultRifle" @@ -40,10 +40,10 @@ defaultproperties Priority=124 InventoryGroup=3 GroupOffset=20 - PickupClass=Class'NicePack.NiceThompsonDrumPickup' + PickupClass=class'NiceThompsonDrumPickup' PlayerViewOffset=(X=10.000000,Y=16.000000,Z=-7.000000) BobDamping=4.000000 - AttachmentClass=Class'NicePack.NiceThompsonDrumAttachment' + AttachmentClass=class'NiceThompsonDrumAttachment' IconCoords=(X1=245,Y1=39,X2=329,Y2=79) ItemName="Rising Storm Tommy Gun" TransientSoundVolume=1.250000 diff --git a/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceCLGL.uc b/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceCLGL.uc index 68c2d8f..b38e51c 100644 --- a/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceCLGL.uc +++ b/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceCLGL.uc @@ -43,7 +43,7 @@ defaultproperties SelectedHudImageRef="NicePackT.CLGL.CLGL_HUD_Selected" PlayerIronSightFOV=70.000000 ZoomedDisplayFOV=40.000000 - FireModeClass(0)=Class'NicePack.NiceCLGLFire' + FireModeClass(0)=class'NiceCLGLFire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectForce="SwitchToAssaultRifle" @@ -54,10 +54,10 @@ defaultproperties Priority=210 InventoryGroup=4 GroupOffset=6 - PickupClass=Class'NicePack.NiceCLGLPickup' + PickupClass=class'NiceCLGLPickup' PlayerViewOffset=(X=25.000000,Y=20.000000,Z=-6.000000) BobDamping=6.000000 - AttachmentClass=Class'NicePack.NiceCLGLAttachment' + AttachmentClass=class'NiceCLGLAttachment' IconCoords=(X1=253,Y1=146,X2=333,Y2=181) ItemName="China Lake Grenade Launcher" LightType=LT_None diff --git a/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceCLGLAmmo.uc b/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceCLGLAmmo.uc index 3f5ad36..4edeb16 100644 --- a/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceCLGLAmmo.uc +++ b/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceCLGLAmmo.uc @@ -4,7 +4,7 @@ defaultproperties AmmoPickupAmount=2 MaxAmmo=20 InitialAmount=5 - PickupClass=Class'NicePack.NiceCLGLAmmoPickup' + PickupClass=class'NiceCLGLAmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=4,Y1=350,X2=110,Y2=395) ItemName="CLGL Grenades" diff --git a/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceCLGLAmmoPickup.uc b/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceCLGLAmmoPickup.uc index beff8d7..6708a13 100644 --- a/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceCLGLAmmoPickup.uc +++ b/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceCLGLAmmoPickup.uc @@ -2,7 +2,7 @@ class NiceCLGLAmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=2 - InventoryType=Class'NicePack.NiceCLGLAmmo' + InventoryType=class'NiceCLGLAmmo' PickupMessage="CLGL Grenades" StaticMesh=StaticMesh'KillingFloorStatics.FragPickup' CollisionRadius=25.000000 diff --git a/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceCLGLFire.uc b/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceCLGLFire.uc index bdcf0bd..d52dcd4 100644 --- a/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceCLGLFire.uc +++ b/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceCLGLFire.uc @@ -4,8 +4,8 @@ defaultproperties ProjSpawnOffset=(X=5.000000) EffectiveRange=2500.000000 ProjectileSpeed=3800.000000 - bulletClass=Class'NicePack.NiceBallisticNade' - ExplosionDamageType=Class'NicePack.NiceDamTypeCLGLExplosion' + bulletClass=class'NiceBallisticNade' + ExplosionDamageType=class'NiceDamTypeCLGLExplosion' ExplosionDamage=360 ExplosionRadius=400.000000 explosionExponent=1.000000 @@ -19,13 +19,13 @@ defaultproperties FireSoundRef="KF_M32Snd.M32_Fire" StereoFireSoundRef="KF_M32Snd.M32_FireST" NoAmmoSoundRef="KF_M79Snd.M79_DryFire" - DamageType=Class'NicePack.NiceDamTypeCLGLBlunt' + DamageType=class'NiceDamTypeCLGLBlunt' DamageMax=175 bWaitForRelease=True TransientSoundVolume=1.800000 FireForce="AssaultRifleFire" FireRate=1.100000 - AmmoClass=Class'NicePack.NiceCLGLAmmo' + AmmoClass=class'NiceCLGLAmmo' ShakeRotMag=(X=3.000000,Y=4.000000,Z=2.000000) ShakeRotRate=(X=10000.000000,Y=10000.000000,Z=10000.000000) ShakeOffsetMag=(X=3.000000,Y=3.000000,Z=3.000000) diff --git a/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceCLGLPickup.uc b/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceCLGLPickup.uc index c61cc72..dcd572b 100644 --- a/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceCLGLPickup.uc +++ b/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceCLGLPickup.uc @@ -16,7 +16,7 @@ defaultproperties CorrespondingPerkIndex=6 EquipmentCategoryID=2 MaxDesireability=0.790000 - InventoryType=Class'NicePack.NiceCLGL' + InventoryType=class'NiceCLGL' PickupMessage="You got the China Lake Grenade Launcher." PickupSound=Sound'NicePackSnd.CLGL.CLGLPickup' PickupForce="AssaultRiflePickup" diff --git a/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceDamTypeCLGLBlunt.uc b/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceDamTypeCLGLBlunt.uc index 6179aae..1a32c9a 100644 --- a/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceDamTypeCLGLBlunt.uc +++ b/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceDamTypeCLGLBlunt.uc @@ -1,5 +1,5 @@ class NiceDamTypeCLGLBlunt extends NiceDamTypeDemoBlunt; defaultproperties { - WeaponClass=Class'NicePack.NiceCLGL' + WeaponClass=class'NiceCLGL' } diff --git a/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceDamTypeCLGLExplosion.uc b/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceDamTypeCLGLExplosion.uc index 0da9bd1..8b820de 100644 --- a/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceDamTypeCLGLExplosion.uc +++ b/sources/Weapons/Playable/Explosives/ChinaLakeGrenadeLauncher/NiceDamTypeCLGLExplosion.uc @@ -1,5 +1,5 @@ class NiceDamTypeCLGLExplosion extends NiceDamTypeDemoExplosion; defaultproperties { - WeaponClass=Class'NicePack.NiceCLGL' + WeaponClass=class'NiceCLGL' } diff --git a/sources/Weapons/Playable/Explosives/HRL/NiceHRL.uc b/sources/Weapons/Playable/Explosives/HRL/NiceHRL.uc index e04c49f..29ca35e 100644 --- a/sources/Weapons/Playable/Explosives/HRL/NiceHRL.uc +++ b/sources/Weapons/Playable/Explosives/HRL/NiceHRL.uc @@ -1,7 +1,7 @@ class NiceHRL extends HRL; defaultproperties { - FireModeClass(0)=Class'NicePack.NiceHRLFire' - PickupClass=Class'NicePack.NiceHRLPickup' + FireModeClass(0)=class'NiceHRLFire' + PickupClass=class'NiceHRLPickup' ItemName="HRL-1 Rocket Launcher NW" } diff --git a/sources/Weapons/Playable/Explosives/HRL/NiceHRLFire.uc b/sources/Weapons/Playable/Explosives/HRL/NiceHRLFire.uc index 58dd9b8..4fd0c52 100644 --- a/sources/Weapons/Playable/Explosives/HRL/NiceHRLFire.uc +++ b/sources/Weapons/Playable/Explosives/HRL/NiceHRLFire.uc @@ -1,5 +1,5 @@ class NiceHRLFire extends HRLFire; defaultproperties { - ProjectileClass=Class'NicePack.NiceHRLProj' + ProjectileClass=class'NiceHRLProj' } diff --git a/sources/Weapons/Playable/Explosives/HRL/NiceHRLPickup.uc b/sources/Weapons/Playable/Explosives/HRL/NiceHRLPickup.uc index ec7c08c..350fe34 100644 --- a/sources/Weapons/Playable/Explosives/HRL/NiceHRLPickup.uc +++ b/sources/Weapons/Playable/Explosives/HRL/NiceHRLPickup.uc @@ -3,6 +3,6 @@ defaultproperties { ItemName="HRL-1 Rocket Launcher NW" ItemShortName="HRL-1 NW" - InventoryType=Class'NicePack.NiceHRL' + InventoryType=class'NiceHRL' PickupMessage="You got the HRL-1 Rocket Launcher NW" } diff --git a/sources/Weapons/Playable/Explosives/HopMineLauncher/NiceHopMineAmmo.uc b/sources/Weapons/Playable/Explosives/HopMineLauncher/NiceHopMineAmmo.uc index 76bfdba..4378085 100644 --- a/sources/Weapons/Playable/Explosives/HopMineLauncher/NiceHopMineAmmo.uc +++ b/sources/Weapons/Playable/Explosives/HopMineLauncher/NiceHopMineAmmo.uc @@ -1,5 +1,5 @@ class NiceHopMineAmmo extends HopMineAmmo; defaultproperties { - PickupClass=Class'NicePack.NiceHopMineAmmoPickup' + PickupClass=class'NiceHopMineAmmoPickup' } diff --git a/sources/Weapons/Playable/Explosives/HopMineLauncher/NiceHopMineAmmoPickup.uc b/sources/Weapons/Playable/Explosives/HopMineLauncher/NiceHopMineAmmoPickup.uc index eef639c..ab0a2a7 100644 --- a/sources/Weapons/Playable/Explosives/HopMineLauncher/NiceHopMineAmmoPickup.uc +++ b/sources/Weapons/Playable/Explosives/HopMineLauncher/NiceHopMineAmmoPickup.uc @@ -1,5 +1,5 @@ class NiceHopMineAmmoPickup extends HopMineAmmoPickup; defaultproperties { - InventoryType=Class'NicePack.NiceHopMineAmmo' + InventoryType=class'NiceHopMineAmmo' } diff --git a/sources/Weapons/Playable/Explosives/HopMineLauncher/NiceHopMineFire.uc b/sources/Weapons/Playable/Explosives/HopMineLauncher/NiceHopMineFire.uc index ac5916d..5a28772 100644 --- a/sources/Weapons/Playable/Explosives/HopMineLauncher/NiceHopMineFire.uc +++ b/sources/Weapons/Playable/Explosives/HopMineLauncher/NiceHopMineFire.uc @@ -1,6 +1,6 @@ class NiceHopMineFire extends HopMineFire; defaultproperties { - AmmoClass=Class'NicePack.NiceHopMineAmmo' - ProjectileClass=Class'NicePack.NiceHopMineProj' + AmmoClass=class'NiceHopMineAmmo' + ProjectileClass=class'NiceHopMineProj' } diff --git a/sources/Weapons/Playable/Explosives/HopMineLauncher/NiceHopMineLPickup.uc b/sources/Weapons/Playable/Explosives/HopMineLauncher/NiceHopMineLPickup.uc index a636183..1ef807c 100644 --- a/sources/Weapons/Playable/Explosives/HopMineLauncher/NiceHopMineLPickup.uc +++ b/sources/Weapons/Playable/Explosives/HopMineLauncher/NiceHopMineLPickup.uc @@ -5,6 +5,6 @@ defaultproperties Description="The prototype of Hopmine launcher. But still can be very useful." ItemName="HopMine Launcher NW" ItemShortName="HopMine NW" - InventoryType=Class'NicePack.NiceHopMineLchr' + InventoryType=class'NiceHopMineLchr' PickupMessage="You got the HopMine Launcher NW." } diff --git a/sources/Weapons/Playable/Explosives/HopMineLauncher/NiceHopMineLchr.uc b/sources/Weapons/Playable/Explosives/HopMineLauncher/NiceHopMineLchr.uc index 8dbd240..0e84ef4 100644 --- a/sources/Weapons/Playable/Explosives/HopMineLauncher/NiceHopMineLchr.uc +++ b/sources/Weapons/Playable/Explosives/HopMineLauncher/NiceHopMineLchr.uc @@ -5,8 +5,8 @@ class NiceHopMineLchr extends HopMineLchr; defaultproperties { Weight=5.000000 - FireModeClass(0)=Class'NicePack.NiceHopMineFire' + FireModeClass(0)=class'NiceHopMineFire' Description="The prototype of Hopmine launcher." - PickupClass=Class'NicePack.NiceHopMineLPickup' + PickupClass=class'NiceHopMineLPickup' ItemName="HopMine Launcher NW" } diff --git a/sources/Weapons/Playable/Explosives/LAW/NiceDamTypeLAWBlunt.uc b/sources/Weapons/Playable/Explosives/LAW/NiceDamTypeLAWBlunt.uc index 163d0ef..b24408e 100644 --- a/sources/Weapons/Playable/Explosives/LAW/NiceDamTypeLAWBlunt.uc +++ b/sources/Weapons/Playable/Explosives/LAW/NiceDamTypeLAWBlunt.uc @@ -1,5 +1,5 @@ class NiceDamTypeLAWBlunt extends NiceDamTypeDemoBlunt; defaultproperties { - WeaponClass=Class'NicePack.NiceLAW' + WeaponClass=class'NiceLAW' } diff --git a/sources/Weapons/Playable/Explosives/LAW/NiceDamTypeLAWExplosion.uc b/sources/Weapons/Playable/Explosives/LAW/NiceDamTypeLAWExplosion.uc index da45e46..bf6f035 100644 --- a/sources/Weapons/Playable/Explosives/LAW/NiceDamTypeLAWExplosion.uc +++ b/sources/Weapons/Playable/Explosives/LAW/NiceDamTypeLAWExplosion.uc @@ -1,5 +1,5 @@ class NiceDamTypeLAWExplosion extends NiceDamTypeDemoExplosion; defaultproperties { - WeaponClass=Class'NicePack.NiceLAW' + WeaponClass=class'NiceLAW' } diff --git a/sources/Weapons/Playable/Explosives/LAW/NiceLAW.uc b/sources/Weapons/Playable/Explosives/LAW/NiceLAW.uc index 05e0806..3f48209 100644 --- a/sources/Weapons/Playable/Explosives/LAW/NiceLAW.uc +++ b/sources/Weapons/Playable/Explosives/LAW/NiceLAW.uc @@ -56,7 +56,7 @@ defaultproperties PlayerIronSightFOV=90.000000 ZoomTime=0.260000 ZoomedDisplayFOV=65.000000 - FireModeClass(0)=Class'NicePack.NiceLAWFire' + FireModeClass(0)=class'NiceLAWFire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectForce="SwitchToRocketLauncher" @@ -68,10 +68,10 @@ defaultproperties HudColor=(G=0) InventoryGroup=4 GroupOffset=9 - PickupClass=Class'NicePack.NiceLAWPickup' + PickupClass=class'NiceLAWPickup' PlayerViewOffset=(X=30.000000,Y=30.000000) BobDamping=7.000000 - AttachmentClass=Class'NicePack.NiceLAWAttachment' + AttachmentClass=class'NiceLAWAttachment' IconCoords=(X1=429,Y1=212,X2=508,Y2=251) ItemName="L.A.W" AmbientGlow=2 diff --git a/sources/Weapons/Playable/Explosives/LAW/NiceLAWAmmoPickup.uc b/sources/Weapons/Playable/Explosives/LAW/NiceLAWAmmoPickup.uc index 8f4e2bf..a5edefb 100644 --- a/sources/Weapons/Playable/Explosives/LAW/NiceLAWAmmoPickup.uc +++ b/sources/Weapons/Playable/Explosives/LAW/NiceLAWAmmoPickup.uc @@ -2,7 +2,7 @@ class NiceLAWAmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=1 - InventoryType=Class'NicePack.NiceLAWAmmo' + InventoryType=class'NiceLAWAmmo' PickupMessage="HEAT Rockets" StaticMesh=StaticMesh'KillingFloorStatics.LAWAmmo' DrawScale=0.500000 diff --git a/sources/Weapons/Playable/Explosives/LAW/NiceLAWFire.uc b/sources/Weapons/Playable/Explosives/LAW/NiceLAWFire.uc index 066da71..096355b 100644 --- a/sources/Weapons/Playable/Explosives/LAW/NiceLAWFire.uc +++ b/sources/Weapons/Playable/Explosives/LAW/NiceLAWFire.uc @@ -4,8 +4,8 @@ defaultproperties ProjSpawnOffset=(X=5.000000) KickMomentum=(X=-45.000000,Z=25.000000) ProjectileSpeed=7250.000000 - bulletClass=Class'NicePack.NiceRocket' - ExplosionDamageType=Class'NicePack.NiceDamTypeLAWExplosion' + bulletClass=class'NiceRocket' + ExplosionDamageType=class'NiceDamTypeLAWExplosion' ExplosionDamage=1200 ExplosionRadius=400.000000 explosionExponent=1.000000 @@ -18,7 +18,7 @@ defaultproperties FireSoundRef="KF_LAWSnd.LAW_Fire" StereoFireSoundRef="KF_LAWSnd.LAW_FireST" NoAmmoSoundRef="KF_LAWSnd.LAW_DryFire" - DamageType=Class'NicePack.NiceDamTypeLAWBlunt' + DamageType=class'NiceDamTypeLAWBlunt' DamageMax=750 bSplashDamage=True bRecommendSplashDamage=True @@ -27,7 +27,7 @@ defaultproperties FireAnim="AimFire" FireForce="redeemer_shoot" FireRate=0.000000 - AmmoClass=Class'NicePack.NiceLAWAmmo' + AmmoClass=class'NiceLAWAmmo' ShakeRotMag=(X=50.000000,Y=50.000000,Z=400.000000) ShakeRotRate=(X=12500.000000,Y=12500.000000,Z=12500.000000) ShakeRotTime=5.000000 diff --git a/sources/Weapons/Playable/Explosives/LAW/NiceLAWPickup.uc b/sources/Weapons/Playable/Explosives/LAW/NiceLAWPickup.uc index 349a5bb..da6cb77 100644 --- a/sources/Weapons/Playable/Explosives/LAW/NiceLAWPickup.uc +++ b/sources/Weapons/Playable/Explosives/LAW/NiceLAWPickup.uc @@ -17,7 +17,7 @@ defaultproperties CorrespondingPerkIndex=6 EquipmentCategoryID=3 MaxDesireability=0.790000 - InventoryType=Class'NicePack.NiceLAW' + InventoryType=class'NiceLAW' RespawnTime=60.000000 PickupMessage="You got the L.A.W." PickupSound=Sound'KF_LAWSnd.LAW_Pickup' diff --git a/sources/Weapons/Playable/Explosives/M32/NiceDamTypeM32Blunt.uc b/sources/Weapons/Playable/Explosives/M32/NiceDamTypeM32Blunt.uc index d1a8a72..a4be421 100644 --- a/sources/Weapons/Playable/Explosives/M32/NiceDamTypeM32Blunt.uc +++ b/sources/Weapons/Playable/Explosives/M32/NiceDamTypeM32Blunt.uc @@ -1,5 +1,5 @@ class NiceDamTypeM32Blunt extends NiceDamTypeDemoBlunt; defaultproperties { - WeaponClass=Class'NicePack.NiceM32GrenadeLauncher' + WeaponClass=class'NiceM32GrenadeLauncher' } diff --git a/sources/Weapons/Playable/Explosives/M32/NiceDamTypeM32Explosion.uc b/sources/Weapons/Playable/Explosives/M32/NiceDamTypeM32Explosion.uc index 1c1a849..8efa401 100644 --- a/sources/Weapons/Playable/Explosives/M32/NiceDamTypeM32Explosion.uc +++ b/sources/Weapons/Playable/Explosives/M32/NiceDamTypeM32Explosion.uc @@ -1,5 +1,5 @@ class NiceDamTypeM32Explosion extends NiceDamTypeDemoExplosion; defaultproperties { - WeaponClass=Class'NicePack.NiceM32GrenadeLauncher' + WeaponClass=class'NiceM32GrenadeLauncher' } diff --git a/sources/Weapons/Playable/Explosives/M32/NiceM32Ammo.uc b/sources/Weapons/Playable/Explosives/M32/NiceM32Ammo.uc index 83f4c41..9be9357 100644 --- a/sources/Weapons/Playable/Explosives/M32/NiceM32Ammo.uc +++ b/sources/Weapons/Playable/Explosives/M32/NiceM32Ammo.uc @@ -1,11 +1,11 @@ class NiceM32Ammo extends NiceAmmo; defaultproperties { - WeaponPickupClass=Class'NicePack.NiceM32Pickup' + WeaponPickupClass=class'NiceM32Pickup' AmmoPickupAmount=6 MaxAmmo=32 InitialAmount=6 - PickupClass=Class'NicePack.NiceM32AmmoPickup' + PickupClass=class'NiceM32AmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=4,Y1=350,X2=110,Y2=395) ItemName="M32 Grenades" diff --git a/sources/Weapons/Playable/Explosives/M32/NiceM32AmmoPickup.uc b/sources/Weapons/Playable/Explosives/M32/NiceM32AmmoPickup.uc index bff8c00..aff6b3e 100644 --- a/sources/Weapons/Playable/Explosives/M32/NiceM32AmmoPickup.uc +++ b/sources/Weapons/Playable/Explosives/M32/NiceM32AmmoPickup.uc @@ -2,7 +2,7 @@ class NiceM32AmmoPickup extends KFAmmoPickup; defaultproperties { AmmoAmount=6 - InventoryType=Class'NicePack.NiceM32Ammo' + InventoryType=class'NiceM32Ammo' PickupMessage="M32 Grenades" StaticMesh=StaticMesh'KillingFloorStatics.FragPickup' CollisionRadius=25.000000 diff --git a/sources/Weapons/Playable/Explosives/M32/NiceM32Fire.uc b/sources/Weapons/Playable/Explosives/M32/NiceM32Fire.uc index 82f16c4..c9f1a28 100644 --- a/sources/Weapons/Playable/Explosives/M32/NiceM32Fire.uc +++ b/sources/Weapons/Playable/Explosives/M32/NiceM32Fire.uc @@ -4,8 +4,8 @@ defaultproperties ProjSpawnOffset=(X=5.000000) EffectiveRange=2500.000000 ProjectileSpeed=3800.000000 - bulletClass=Class'NicePack.NiceBallisticNade' - ExplosionDamageType=Class'NicePack.NiceDamTypeM32Explosion' + bulletClass=class'NiceBallisticNade' + ExplosionDamageType=class'NiceDamTypeM32Explosion' ExplosionDamage=360 ExplosionRadius=400.000000 explosionExponent=1.000000 @@ -19,13 +19,13 @@ defaultproperties FireSoundRef="KF_M32Snd.M32_Fire" StereoFireSoundRef="KF_M32Snd.M32_FireST" NoAmmoSoundRef="KF_M79Snd.M79_DryFire" - DamageType=Class'NicePack.NiceDamTypeM32Blunt' + DamageType=class'NiceDamTypeM32Blunt' DamageMax=175 bWaitForRelease=True TransientSoundVolume=1.800000 FireForce="AssaultRifleFire" FireRate=0.330000 - AmmoClass=Class'NicePack.NiceM32Ammo' + AmmoClass=class'NiceM32Ammo' ShakeRotMag=(X=3.000000,Y=4.000000,Z=2.000000) ShakeRotRate=(X=10000.000000,Y=10000.000000,Z=10000.000000) ShakeOffsetMag=(X=3.000000,Y=3.000000,Z=3.000000) diff --git a/sources/Weapons/Playable/Explosives/M32/NiceM32GrenadeLauncher.uc b/sources/Weapons/Playable/Explosives/M32/NiceM32GrenadeLauncher.uc index 7810844..bea06bb 100644 --- a/sources/Weapons/Playable/Explosives/M32/NiceM32GrenadeLauncher.uc +++ b/sources/Weapons/Playable/Explosives/M32/NiceM32GrenadeLauncher.uc @@ -31,7 +31,7 @@ defaultproperties SelectedHudImageRef="KillingFloor2HUD.WeaponSelect.M32" PlayerIronSightFOV=70.000000 ZoomedDisplayFOV=40.000000 - FireModeClass(0)=Class'NicePack.NiceM32Fire' + FireModeClass(0)=class'NiceM32Fire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectForce="SwitchToAssaultRifle" @@ -42,10 +42,10 @@ defaultproperties Priority=210 InventoryGroup=4 GroupOffset=6 - PickupClass=Class'NicePack.NiceM32Pickup' + PickupClass=class'NiceM32Pickup' PlayerViewOffset=(X=18.000000,Y=20.000000,Z=-6.000000) BobDamping=6.000000 - AttachmentClass=Class'NicePack.NiceM32Attachment' + AttachmentClass=class'NiceM32Attachment' IconCoords=(X1=253,Y1=146,X2=333,Y2=181) ItemName="M32 Grenade Launcher" LightType=LT_None diff --git a/sources/Weapons/Playable/Explosives/M32/NiceM32Pickup.uc b/sources/Weapons/Playable/Explosives/M32/NiceM32Pickup.uc index aba529d..25e322f 100644 --- a/sources/Weapons/Playable/Explosives/M32/NiceM32Pickup.uc +++ b/sources/Weapons/Playable/Explosives/M32/NiceM32Pickup.uc @@ -17,7 +17,7 @@ defaultproperties EquipmentCategoryID=2 VariantClasses(0)=Class'KFMod.CamoM32Pickup' MaxDesireability=0.790000 - InventoryType=Class'NicePack.NiceM32GrenadeLauncher' + InventoryType=class'NiceM32GrenadeLauncher' PickupMessage="You got the M32 Multiple Grenade Launcher." PickupSound=Sound'KF_M79Snd.M79_Pickup' PickupForce="AssaultRiflePickup" diff --git a/sources/Weapons/Playable/Explosives/M79/NiceDamTypeM79Blunt.uc b/sources/Weapons/Playable/Explosives/M79/NiceDamTypeM79Blunt.uc index 3e6f537..5076ada 100644 --- a/sources/Weapons/Playable/Explosives/M79/NiceDamTypeM79Blunt.uc +++ b/sources/Weapons/Playable/Explosives/M79/NiceDamTypeM79Blunt.uc @@ -1,5 +1,5 @@ class NiceDamTypeM79Blunt extends NiceDamTypeDemoBlunt; defaultproperties { - WeaponClass=Class'NicePack.NiceM79GrenadeLauncher' + WeaponClass=class'NiceM79GrenadeLauncher' } diff --git a/sources/Weapons/Playable/Explosives/M79/NiceDamTypeM79Explosion.uc b/sources/Weapons/Playable/Explosives/M79/NiceDamTypeM79Explosion.uc index f050449..dae9bae 100644 --- a/sources/Weapons/Playable/Explosives/M79/NiceDamTypeM79Explosion.uc +++ b/sources/Weapons/Playable/Explosives/M79/NiceDamTypeM79Explosion.uc @@ -1,5 +1,5 @@ class NiceDamTypeM79Explosion extends NiceDamTypeDemoExplosion; defaultproperties { - WeaponClass=Class'NicePack.NiceM79GrenadeLauncher' + WeaponClass=class'NiceM79GrenadeLauncher' } diff --git a/sources/Weapons/Playable/Explosives/M79/NiceM79Ammo.uc b/sources/Weapons/Playable/Explosives/M79/NiceM79Ammo.uc index 2612a43..8548b46 100644 --- a/sources/Weapons/Playable/Explosives/M79/NiceM79Ammo.uc +++ b/sources/Weapons/Playable/Explosives/M79/NiceM79Ammo.uc @@ -1,11 +1,11 @@ class NiceM79Ammo extends NiceAmmo; defaultproperties { - WeaponPickupClass=Class'NicePack.NiceM79Pickup' + WeaponPickupClass=class'NiceM79Pickup' AmmoPickupAmount=2 MaxAmmo=16 InitialAmount=4 - PickupClass=Class'NicePack.NiceM79AmmoPickup' + PickupClass=class'NiceM79AmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=4,Y1=350,X2=110,Y2=395) ItemName="M79 Incendiary Grenades" diff --git a/sources/Weapons/Playable/Explosives/M79/NiceM79AmmoPickup.uc b/sources/Weapons/Playable/Explosives/M79/NiceM79AmmoPickup.uc index 92dd082..8628091 100644 --- a/sources/Weapons/Playable/Explosives/M79/NiceM79AmmoPickup.uc +++ b/sources/Weapons/Playable/Explosives/M79/NiceM79AmmoPickup.uc @@ -2,7 +2,7 @@ class NiceM79AmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=2 - InventoryType=Class'NicePack.NiceM79Ammo' + InventoryType=class'NiceM79Ammo' PickupMessage="M79 Incendiary Grenades" StaticMesh=StaticMesh'KillingFloorStatics.FragPickup' CollisionRadius=25.000000 diff --git a/sources/Weapons/Playable/Explosives/M79/NiceM79Fire.uc b/sources/Weapons/Playable/Explosives/M79/NiceM79Fire.uc index f2403cf..371eb29 100644 --- a/sources/Weapons/Playable/Explosives/M79/NiceM79Fire.uc +++ b/sources/Weapons/Playable/Explosives/M79/NiceM79Fire.uc @@ -4,8 +4,8 @@ defaultproperties ProjSpawnOffset=(X=5.000000) EffectiveRange=2500.000000 ProjectileSpeed=3800.000000 - bulletClass=Class'NicePack.NiceBallisticNade' - ExplosionDamageType=Class'NicePack.NiceDamTypeM79Explosion' + bulletClass=class'NiceBallisticNade' + ExplosionDamageType=class'NiceDamTypeM79Explosion' ExplosionDamage=360 ExplosionRadius=400.000000 explosionExponent=1.000000 @@ -20,13 +20,13 @@ defaultproperties FireSoundRef="KF_M79Snd.M79_Fire" StereoFireSoundRef="KF_M79Snd.M79_FireST" NoAmmoSoundRef="KF_M79Snd.M79_DryFire" - DamageType=Class'NicePack.NiceDamTypeM79Blunt' + DamageType=class'NiceDamTypeM79Blunt' DamageMax=175 bWaitForRelease=True TransientSoundVolume=1.800000 FireForce="AssaultRifleFire" FireRate=0.000000 - AmmoClass=Class'NicePack.NiceM79Ammo' + AmmoClass=class'NiceM79Ammo' ShakeRotMag=(X=3.000000,Y=4.000000,Z=2.000000) ShakeRotRate=(X=10000.000000,Y=10000.000000,Z=10000.000000) ShakeOffsetMag=(X=3.000000,Y=3.000000,Z=3.000000) diff --git a/sources/Weapons/Playable/Explosives/M79/NiceM79GrenadeLauncher.uc b/sources/Weapons/Playable/Explosives/M79/NiceM79GrenadeLauncher.uc index 707a825..922c21f 100644 --- a/sources/Weapons/Playable/Explosives/M79/NiceM79GrenadeLauncher.uc +++ b/sources/Weapons/Playable/Explosives/M79/NiceM79GrenadeLauncher.uc @@ -37,7 +37,7 @@ defaultproperties SelectedHudImageRef="KillingFloor2HUD.WeaponSelect.M79" PlayerIronSightFOV=70.000000 ZoomedDisplayFOV=45.000000 - FireModeClass(0)=Class'NicePack.NiceM79Fire' + FireModeClass(0)=class'NiceM79Fire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectForce="SwitchToAssaultRifle" @@ -48,10 +48,10 @@ defaultproperties Priority=162 InventoryGroup=3 GroupOffset=11 - PickupClass=Class'NicePack.NiceM79Pickup' + PickupClass=class'NiceM79Pickup' PlayerViewOffset=(X=18.000000,Y=20.000000,Z=-6.000000) BobDamping=6.000000 - AttachmentClass=Class'NicePack.NiceM79Attachment' + AttachmentClass=class'NiceM79Attachment' IconCoords=(X1=253,Y1=146,X2=333,Y2=181) ItemName="M79 Grenade Launcher" LightType=LT_None diff --git a/sources/Weapons/Playable/Explosives/M79/NiceM79Pickup.uc b/sources/Weapons/Playable/Explosives/M79/NiceM79Pickup.uc index 85633cf..d93f0a5 100644 --- a/sources/Weapons/Playable/Explosives/M79/NiceM79Pickup.uc +++ b/sources/Weapons/Playable/Explosives/M79/NiceM79Pickup.uc @@ -18,7 +18,7 @@ defaultproperties EquipmentCategoryID=2 VariantClasses(0)=Class'KFMod.GoldenM79Pickup' MaxDesireability=0.790000 - InventoryType=Class'NicePack.NiceM79GrenadeLauncher' + InventoryType=class'NiceM79GrenadeLauncher' PickupMessage="You got the M79 Grenade Launcher." PickupSound=Sound'KF_M79Snd.M79_Pickup' PickupForce="AssaultRiflePickup" diff --git a/sources/Weapons/Playable/Explosives/PipeBombs/NiceDamTypePipeBomb.uc b/sources/Weapons/Playable/Explosives/PipeBombs/NiceDamTypePipeBomb.uc index 3224477..db3a90a 100644 --- a/sources/Weapons/Playable/Explosives/PipeBombs/NiceDamTypePipeBomb.uc +++ b/sources/Weapons/Playable/Explosives/PipeBombs/NiceDamTypePipeBomb.uc @@ -11,7 +11,7 @@ defaultproperties { bIsExplosive=True bCheckForHeadShots=False - WeaponClass=Class'NicePack.NicePipeBombExplosive' + WeaponClass=class'NicePipeBombExplosive' DeathString="%o filled %k's body with shrapnel." FemaleSuicide="%o blew up." MaleSuicide="%o blew up." diff --git a/sources/Weapons/Playable/Explosives/PipeBombs/NicePipeBombExplosive.uc b/sources/Weapons/Playable/Explosives/PipeBombs/NicePipeBombExplosive.uc index 975be2b..c68f113 100644 --- a/sources/Weapons/Playable/Explosives/PipeBombs/NicePipeBombExplosive.uc +++ b/sources/Weapons/Playable/Explosives/PipeBombs/NicePipeBombExplosive.uc @@ -1,7 +1,7 @@ class NicePipeBombExplosive extends ScrnPipeBombExplosive; defaultproperties { - FireModeClass(0)=Class'NicePack.NicePipeBombFire' - PickupClass=Class'NicePack.NicePipeBombPickup' + FireModeClass(0)=class'NicePipeBombFire' + PickupClass=class'NicePipeBombPickup' ItemName="PipeBomb NW" } diff --git a/sources/Weapons/Playable/Explosives/PipeBombs/NicePipeBombFire.uc b/sources/Weapons/Playable/Explosives/PipeBombs/NicePipeBombFire.uc index 6ce57bf..d0b2209 100644 --- a/sources/Weapons/Playable/Explosives/PipeBombs/NicePipeBombFire.uc +++ b/sources/Weapons/Playable/Explosives/PipeBombs/NicePipeBombFire.uc @@ -1,5 +1,5 @@ class NicePipeBombFire extends ScrnPipeBombFire; defaultproperties { - ProjectileClass=Class'NicePack.NicePipeBombProjectile' + ProjectileClass=class'NicePipeBombProjectile' } diff --git a/sources/Weapons/Playable/Explosives/PipeBombs/NicePipeBombPickup.uc b/sources/Weapons/Playable/Explosives/PipeBombs/NicePipeBombPickup.uc index 3e0252f..ed5309d 100644 --- a/sources/Weapons/Playable/Explosives/PipeBombs/NicePipeBombPickup.uc +++ b/sources/Weapons/Playable/Explosives/PipeBombs/NicePipeBombPickup.uc @@ -6,5 +6,5 @@ defaultproperties ItemName="Pipe Bomb NW" ItemShortName="Pipe Bomb NW" AmmoItemName="Pipe Bomb NW" - InventoryType=Class'NicePack.NicePipeBombExplosive' + InventoryType=class'NicePipeBombExplosive' } diff --git a/sources/Weapons/Playable/Explosives/PipeBombs/NicePipeBombProjectile.uc b/sources/Weapons/Playable/Explosives/PipeBombs/NicePipeBombProjectile.uc index cdc9639..9e4792f 100644 --- a/sources/Weapons/Playable/Explosives/PipeBombs/NicePipeBombProjectile.uc +++ b/sources/Weapons/Playable/Explosives/PipeBombs/NicePipeBombProjectile.uc @@ -18,5 +18,5 @@ function TakeDamage(int Damage, Pawn instigatedBy, Vector Hitlocation, Vector Mo defaultproperties { Damage=2000.000000 - MyDamageType=Class'NicePack.NiceDamTypePipeBomb' + MyDamageType=class'NiceDamTypePipeBomb' } diff --git a/sources/Weapons/Playable/Explosives/SealSqueal/NiceDamTypeSealSquealBlunt.uc b/sources/Weapons/Playable/Explosives/SealSqueal/NiceDamTypeSealSquealBlunt.uc index d1c5c21..c8ec4d9 100644 --- a/sources/Weapons/Playable/Explosives/SealSqueal/NiceDamTypeSealSquealBlunt.uc +++ b/sources/Weapons/Playable/Explosives/SealSqueal/NiceDamTypeSealSquealBlunt.uc @@ -2,5 +2,5 @@ class NiceDamTypeSealSquealBlunt extends NiceDamTypeDemoBlunt abstract; defaultproperties { - WeaponClass=Class'NicePack.NiceSealSquealHarpoonBomber' + WeaponClass=class'NiceSealSquealHarpoonBomber' } diff --git a/sources/Weapons/Playable/Explosives/SealSqueal/NiceDamTypeSealSquealExplosion.uc b/sources/Weapons/Playable/Explosives/SealSqueal/NiceDamTypeSealSquealExplosion.uc index 2a1ce9a..9e46d2c 100644 --- a/sources/Weapons/Playable/Explosives/SealSqueal/NiceDamTypeSealSquealExplosion.uc +++ b/sources/Weapons/Playable/Explosives/SealSqueal/NiceDamTypeSealSquealExplosion.uc @@ -2,5 +2,5 @@ class NiceDamTypeSealSquealExplosion extends NiceDamTypeDemoExplosion; defaultproperties { HeadShotDamageMult=1.500000 - WeaponClass=Class'NicePack.NiceSealSquealHarpoonBomber' + WeaponClass=class'NiceSealSquealHarpoonBomber' } diff --git a/sources/Weapons/Playable/Explosives/SealSqueal/NiceSealSquealAmmo.uc b/sources/Weapons/Playable/Explosives/SealSqueal/NiceSealSquealAmmo.uc index a8e2065..a784092 100644 --- a/sources/Weapons/Playable/Explosives/SealSqueal/NiceSealSquealAmmo.uc +++ b/sources/Weapons/Playable/Explosives/SealSqueal/NiceSealSquealAmmo.uc @@ -4,7 +4,7 @@ defaultproperties AmmoPickupAmount=3 MaxAmmo=24 InitialAmount=6 - PickupClass=Class'NicePack.NiceSealSquealAmmoPickup' + PickupClass=class'NiceSealSquealAmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=4,Y1=350,X2=110,Y2=395) ItemName="SealSqueal Harpoon Bombs" diff --git a/sources/Weapons/Playable/Explosives/SealSqueal/NiceSealSquealAmmoPickup.uc b/sources/Weapons/Playable/Explosives/SealSqueal/NiceSealSquealAmmoPickup.uc index dd5ddfe..9ff1fea 100644 --- a/sources/Weapons/Playable/Explosives/SealSqueal/NiceSealSquealAmmoPickup.uc +++ b/sources/Weapons/Playable/Explosives/SealSqueal/NiceSealSquealAmmoPickup.uc @@ -2,7 +2,7 @@ class NiceSealSquealAmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=3 - InventoryType=Class'NicePack.NiceSealSquealAmmo' + InventoryType=class'NiceSealSquealAmmo' PickupMessage="SealSqueal Harpoon Bombs" StaticMesh=StaticMesh'KillingFloorStatics.FragPickup' CollisionRadius=25.000000 diff --git a/sources/Weapons/Playable/Explosives/SealSqueal/NiceSealSquealFire.uc b/sources/Weapons/Playable/Explosives/SealSqueal/NiceSealSquealFire.uc index bf0f7a3..5419f2b 100644 --- a/sources/Weapons/Playable/Explosives/SealSqueal/NiceSealSquealFire.uc +++ b/sources/Weapons/Playable/Explosives/SealSqueal/NiceSealSquealFire.uc @@ -4,8 +4,8 @@ defaultproperties ProjSpawnOffset=(X=5.000000) EffectiveRange=2500.000000 ProjectileSpeed=3000.000000 - bulletClass=Class'NicePack.NiceBallisticHarpoon' - ExplosionDamageType=Class'NicePack.NiceDamTypeSealSquealExplosion' + bulletClass=class'NiceBallisticHarpoon' + ExplosionDamageType=class'NiceDamTypeSealSquealExplosion' ExplosionDamage=480 ExplosionRadius=200.000000 explosionExponent=1.000000 @@ -19,13 +19,13 @@ defaultproperties FireSoundRef="KF_FY_SealSquealSND.WEP_Harpoon_Fire_M" StereoFireSoundRef="KF_FY_SealSquealSND.WEP_Harpoon_Fire" NoAmmoSoundRef="KF_M79Snd.M79_DryFire" - DamageType=Class'NicePack.NiceDamTypeSealSquealBlunt' + DamageType=class'NiceDamTypeSealSquealBlunt' DamageMax=150 bWaitForRelease=True TransientSoundVolume=1.800000 FireForce="AssaultRifleFire" FireRate=0.750000 - AmmoClass=Class'NicePack.NiceSealSquealAmmo' + AmmoClass=class'NiceSealSquealAmmo' ShakeRotMag=(X=75.000000,Y=75.000000,Z=400.000000) ShakeRotRate=(X=12500.000000,Y=12500.000000,Z=10000.000000) ShakeRotTime=3.500000 diff --git a/sources/Weapons/Playable/Explosives/SealSqueal/NiceSealSquealHarpoonBomber.uc b/sources/Weapons/Playable/Explosives/SealSqueal/NiceSealSquealHarpoonBomber.uc index d37ee78..ecf0a08 100644 --- a/sources/Weapons/Playable/Explosives/SealSqueal/NiceSealSquealHarpoonBomber.uc +++ b/sources/Weapons/Playable/Explosives/SealSqueal/NiceSealSquealHarpoonBomber.uc @@ -48,7 +48,7 @@ defaultproperties SelectedHudImageRef="KF_IJC_HUD.WeaponSelect.SealSqueal" PlayerIronSightFOV=70.000000 ZoomedDisplayFOV=60.000000 - FireModeClass(0)=Class'NicePack.NiceSealSquealFire' + FireModeClass(0)=class'NiceSealSquealFire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectForce="SwitchToAssaultRifle" @@ -59,10 +59,10 @@ defaultproperties Priority=171 InventoryGroup=4 GroupOffset=22 - PickupClass=Class'NicePack.NiceSealSquealPickup' + PickupClass=class'NiceSealSquealPickup' PlayerViewOffset=(X=15.000000,Y=20.000000,Z=-8.000000) BobDamping=6.000000 - AttachmentClass=Class'NicePack.NiceSealSquealAttachment' + AttachmentClass=class'NiceSealSquealAttachment' IconCoords=(X1=253,Y1=146,X2=333,Y2=181) ItemName="SealSqueal Harpoon Bomber" LightType=LT_None diff --git a/sources/Weapons/Playable/Explosives/SealSqueal/NiceSealSquealPickup.uc b/sources/Weapons/Playable/Explosives/SealSqueal/NiceSealSquealPickup.uc index 14acbbb..5d2e0dc 100644 --- a/sources/Weapons/Playable/Explosives/SealSqueal/NiceSealSquealPickup.uc +++ b/sources/Weapons/Playable/Explosives/SealSqueal/NiceSealSquealPickup.uc @@ -15,7 +15,7 @@ defaultproperties CorrespondingPerkIndex=6 EquipmentCategoryID=2 MaxDesireability=0.790000 - InventoryType=Class'NicePack.NiceSealSquealHarpoonBomber' + InventoryType=class'NiceSealSquealHarpoonBomber' PickupMessage="You got the SealSqueal Harpoon Bomb Launcher." PickupSound=Sound'KF_FY_SealSquealSND.foley.WEP_Harpoon_Foley_Pickup' PickupForce="AssaultRiflePickup" diff --git a/sources/Weapons/Playable/Explosives/SeekerSix/NiceSeekerSixAmmo.uc b/sources/Weapons/Playable/Explosives/SeekerSix/NiceSeekerSixAmmo.uc index 6a3c106..ae26c69 100644 --- a/sources/Weapons/Playable/Explosives/SeekerSix/NiceSeekerSixAmmo.uc +++ b/sources/Weapons/Playable/Explosives/SeekerSix/NiceSeekerSixAmmo.uc @@ -12,5 +12,5 @@ defaultproperties { MaxAmmo=66 InitialAmount=30 - PickupClass=Class'NicePack.NiceSeekerSixAmmoPickup' + PickupClass=class'NiceSeekerSixAmmoPickup' } diff --git a/sources/Weapons/Playable/Explosives/SeekerSix/NiceSeekerSixAmmoPickup.uc b/sources/Weapons/Playable/Explosives/SeekerSix/NiceSeekerSixAmmoPickup.uc index 8eebfdd..ea467f9 100644 --- a/sources/Weapons/Playable/Explosives/SeekerSix/NiceSeekerSixAmmoPickup.uc +++ b/sources/Weapons/Playable/Explosives/SeekerSix/NiceSeekerSixAmmoPickup.uc @@ -1,5 +1,5 @@ class NiceSeekerSixAmmoPickup extends SeekerSixAmmoPickup; defaultproperties { - InventoryType=Class'NicePack.NiceSeekerSixAmmo' + InventoryType=class'NiceSeekerSixAmmo' } diff --git a/sources/Weapons/Playable/Explosives/SeekerSix/NiceSeekerSixFire.uc b/sources/Weapons/Playable/Explosives/SeekerSix/NiceSeekerSixFire.uc index 3e22990..82a0f0b 100644 --- a/sources/Weapons/Playable/Explosives/SeekerSix/NiceSeekerSixFire.uc +++ b/sources/Weapons/Playable/Explosives/SeekerSix/NiceSeekerSixFire.uc @@ -10,6 +10,6 @@ class NiceSeekerSixFire extends SeekerSixFire; defaultproperties { - AmmoClass=Class'NicePack.NiceSeekerSixAmmo' - ProjectileClass=Class'NicePack.NiceSeekerSixRocketProjectile' + AmmoClass=class'NiceSeekerSixAmmo' + ProjectileClass=class'NiceSeekerSixRocketProjectile' } diff --git a/sources/Weapons/Playable/Explosives/SeekerSix/NiceSeekerSixMultiFire.uc b/sources/Weapons/Playable/Explosives/SeekerSix/NiceSeekerSixMultiFire.uc index 6b79819..589b808 100644 --- a/sources/Weapons/Playable/Explosives/SeekerSix/NiceSeekerSixMultiFire.uc +++ b/sources/Weapons/Playable/Explosives/SeekerSix/NiceSeekerSixMultiFire.uc @@ -1,6 +1,6 @@ class NiceSeekerSixMultiFire extends SeekerSixMultiFire; defaultproperties { - AmmoClass=Class'NicePack.NiceSeekerSixAmmo' - ProjectileClass=Class'NicePack.NiceSeekerSixRocketProjectile' + AmmoClass=class'NiceSeekerSixAmmo' + ProjectileClass=class'NiceSeekerSixRocketProjectile' } diff --git a/sources/Weapons/Playable/Explosives/SeekerSix/NiceSeekerSixPickup.uc b/sources/Weapons/Playable/Explosives/SeekerSix/NiceSeekerSixPickup.uc index 647ba81..658fd00 100644 --- a/sources/Weapons/Playable/Explosives/SeekerSix/NiceSeekerSixPickup.uc +++ b/sources/Weapons/Playable/Explosives/SeekerSix/NiceSeekerSixPickup.uc @@ -4,6 +4,6 @@ defaultproperties AmmoCost=20 ItemName="SeekerSix Rocket Launcher NW" ItemShortName="SeekerSix NW" - InventoryType=Class'NicePack.NiceSeekerSixRocketLauncher' + InventoryType=class'NiceSeekerSixRocketLauncher' PickupMessage="You got the SeekerSix Mini Rocket Launcher NW." } diff --git a/sources/Weapons/Playable/Explosives/SeekerSix/NiceSeekerSixRocketLauncher.uc b/sources/Weapons/Playable/Explosives/SeekerSix/NiceSeekerSixRocketLauncher.uc index 759bc71..ed905dc 100644 --- a/sources/Weapons/Playable/Explosives/SeekerSix/NiceSeekerSixRocketLauncher.uc +++ b/sources/Weapons/Playable/Explosives/SeekerSix/NiceSeekerSixRocketLauncher.uc @@ -22,8 +22,8 @@ function Projectile SpawnProjectile(Vector Start, Rotator Dir) defaultproperties { AppID=0 - FireModeClass(0)=Class'NicePack.NiceSeekerSixFire' - FireModeClass(1)=Class'NicePack.NiceSeekerSixMultiFire' - PickupClass=Class'NicePack.NiceSeekerSixPickup' + FireModeClass(0)=class'NiceSeekerSixFire' + FireModeClass(1)=class'NiceSeekerSixMultiFire' + PickupClass=class'NiceSeekerSixPickup' ItemName="SeekerSix Rocket Launcher NW" } diff --git a/sources/Weapons/Playable/Grenades/NiceCryoNade.uc b/sources/Weapons/Playable/Grenades/NiceCryoNade.uc index bcfe3ee..6829013 100644 --- a/sources/Weapons/Playable/Grenades/NiceCryoNade.uc +++ b/sources/Weapons/Playable/Grenades/NiceCryoNade.uc @@ -150,8 +150,8 @@ defaultproperties ExplosionSound=SoundGroup'KF_GrenadeSnd.NadeBase.MedicNade_Explode' Damage=0.000000 DamageRadius=175.000000 - MyDamageType=Class'NicePack.NiceDamTypeCryoNade' - ExplosionDecal=Class'NicePack.NiceNitroDecal' + MyDamageType=class'NiceDamTypeCryoNade' + ExplosionDecal=class'NiceNitroDecal' StaticMesh=StaticMesh'KF_pickups5_Trip.nades.MedicNade_Pickup' LifeSpan=8.000000 DrawScale=1.000000 diff --git a/sources/Weapons/Playable/Grenades/NiceCryoNadeCloud.uc b/sources/Weapons/Playable/Grenades/NiceCryoNadeCloud.uc index f9be3cf..5b63d12 100644 --- a/sources/Weapons/Playable/Grenades/NiceCryoNadeCloud.uc +++ b/sources/Weapons/Playable/Grenades/NiceCryoNadeCloud.uc @@ -48,7 +48,7 @@ defaultproperties StartVelocityRange=(X=(Min=-750.000000,Max=750.000000),Y=(Min=-750.000000,Max=750.000000)) VelocityLossRange=(X=(Min=10.000000,Max=10.000000),Y=(Min=10.000000,Max=10.000000),Z=(Min=10.000000,Max=10.000000)) End Object - Emitters(0)=SpriteEmitter'NicePack.NiceCryoNadeCloud.SpriteEmitter0' + Emitters(0)=SpriteEmitter0 AutoDestroy=True bNoDelete=False diff --git a/sources/Weapons/Playable/Grenades/NiceDamTypeEnforcerNade.uc b/sources/Weapons/Playable/Grenades/NiceDamTypeEnforcerNade.uc index f108fa3..a2179b7 100644 --- a/sources/Weapons/Playable/Grenades/NiceDamTypeEnforcerNade.uc +++ b/sources/Weapons/Playable/Grenades/NiceDamTypeEnforcerNade.uc @@ -11,7 +11,7 @@ defaultproperties { bIsExplosive=True bCheckForHeadShots=False - //WeaponClass=Class'NicePack.NiceShotgun'//meantodo + //WeaponClass=class'NiceShotgun'//meantodo DeathString="%o filled %k's body with shrapnel." FemaleSuicide="%o blew up." MaleSuicide="%o blew up." diff --git a/sources/Weapons/Playable/Grenades/NiceMedicNade.uc b/sources/Weapons/Playable/Grenades/NiceMedicNade.uc index a101378..5a777e7 100644 --- a/sources/Weapons/Playable/Grenades/NiceMedicNade.uc +++ b/sources/Weapons/Playable/Grenades/NiceMedicNade.uc @@ -46,7 +46,7 @@ simulated function Explode(vector HitLocation, vector HitNormal) } if ( EffectIsRelevant(Location,false) ) { - Spawn(Class'NicePack.NiceNadeHealing',,, HitLocation, rotator(vect(0,0,1))); + Spawn(class'NiceNadeHealing',,, HitLocation, rotator(vect(0,0,1))); } } function Timer() diff --git a/sources/Weapons/Playable/Grenades/NiceMedicNadePoison.uc b/sources/Weapons/Playable/Grenades/NiceMedicNadePoison.uc index a5c2e64..899c6ee 100644 --- a/sources/Weapons/Playable/Grenades/NiceMedicNadePoison.uc +++ b/sources/Weapons/Playable/Grenades/NiceMedicNadePoison.uc @@ -37,7 +37,7 @@ simulated function Explode(vector HitLocation, vector HitNormal) } if ( EffectIsRelevant(Location,false) ) { - Spawn(Class'NicePack.NiceNadeHealingFast',,, HitLocation, rotator(vect(0,0,1))); + Spawn(class'NiceNadeHealingFast',,, HitLocation, rotator(vect(0,0,1))); } } function Timer() diff --git a/sources/Weapons/Playable/Grenades/NiceNade.uc b/sources/Weapons/Playable/Grenades/NiceNade.uc index 05884b3..48b778b 100644 --- a/sources/Weapons/Playable/Grenades/NiceNade.uc +++ b/sources/Weapons/Playable/Grenades/NiceNade.uc @@ -135,7 +135,7 @@ simulated function HurtRadius( float DamageAmount, float DamageRadius, class= 5 && Stats != none ) - class'ScrnBalanceSrv.ScrnAchievements'.static.ProgressAchievementByID(Stats.Rep, 'SuicideBomber', 1); + class'ScrnAchievements'.static.ProgressAchievementByID(Stats.Rep, 'SuicideBomber', 1); if ( NumKilled >= 4 ) { @@ -204,6 +204,6 @@ simulated function HitWall( vector HitNormal, actor Wall ){ } defaultproperties { - AvoidMarkerClass=Class'NicePack.NiceAvoidMarkerExplosive' - niceExplosiveDamage=Class'NicePack.NiceDamTypeDemoExplosion' + AvoidMarkerClass=class'NiceAvoidMarkerExplosive' + niceExplosiveDamage=class'NiceDamTypeDemoExplosion' } diff --git a/sources/Weapons/Playable/Grenades/NiceNadeHealing.uc b/sources/Weapons/Playable/Grenades/NiceNadeHealing.uc index 7133292..045b8ec 100644 --- a/sources/Weapons/Playable/Grenades/NiceNadeHealing.uc +++ b/sources/Weapons/Playable/Grenades/NiceNadeHealing.uc @@ -48,7 +48,7 @@ defaultproperties StartVelocityRange=(X=(Min=-750.000000,Max=750.000000),Y=(Min=-750.000000,Max=750.000000)) VelocityLossRange=(X=(Min=10.000000,Max=10.000000),Y=(Min=10.000000,Max=10.000000),Z=(Min=10.000000,Max=10.000000)) End Object - Emitters(0)=SpriteEmitter'NicePack.NiceNadeHealing.SpriteEmitter0' + Emitters(0)=SpriteEmitter0 AutoDestroy=True bNoDelete=False diff --git a/sources/Weapons/Playable/Grenades/NiceNadeHealingFast.uc b/sources/Weapons/Playable/Grenades/NiceNadeHealingFast.uc index eb8c513..00c63b7 100644 --- a/sources/Weapons/Playable/Grenades/NiceNadeHealingFast.uc +++ b/sources/Weapons/Playable/Grenades/NiceNadeHealingFast.uc @@ -48,7 +48,7 @@ defaultproperties StartVelocityRange=(X=(Min=-750.000000,Max=750.000000),Y=(Min=-750.000000,Max=750.000000)) VelocityLossRange=(X=(Min=10.000000,Max=10.000000),Y=(Min=10.000000,Max=10.000000),Z=(Min=10.000000,Max=10.000000)) End Object - Emitters(0)=SpriteEmitter'NicePack.NiceNadeHealingFast.SpriteEmitter0' + Emitters(0)=SpriteEmitter0 AutoDestroy=True bNoDelete=False diff --git a/sources/Weapons/Playable/Heavy/AUG/NiceAUG_A1AR.uc b/sources/Weapons/Playable/Heavy/AUG/NiceAUG_A1AR.uc index 83694de..69ef44c 100644 --- a/sources/Weapons/Playable/Heavy/AUG/NiceAUG_A1AR.uc +++ b/sources/Weapons/Playable/Heavy/AUG/NiceAUG_A1AR.uc @@ -48,7 +48,7 @@ defaultproperties SelectedHudImageRef="HMG_T.AUG.AUG_A1_Selected" PlayerIronSightFOV=32.000000 ZoomedDisplayFOV=70.000000 - FireModeClass(0)=Class'NicePack.NiceAUG_A1ARFire' + FireModeClass(0)=class'NiceAUG_A1ARFire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectForce="SwitchToAssaultRifle" @@ -61,10 +61,10 @@ defaultproperties CustomCrossHairTextureName="Crosshairs.HUD.Crosshair_Cross5" InventoryGroup=4 GroupOffset=3 - PickupClass=Class'NicePack.NiceAUG_A1ARPickup' + PickupClass=class'NiceAUG_A1ARPickup' PlayerViewOffset=(X=15.000000,Y=12.000000,Z=-2.000000) BobDamping=5.000000 - AttachmentClass=Class'NicePack.NiceAUG_A1ARAttachment' + AttachmentClass=class'NiceAUG_A1ARAttachment' IconCoords=(X1=253,Y1=146,X2=333,Y2=181) ItemName="Steyr AUG A1" } diff --git a/sources/Weapons/Playable/Heavy/AUG/NiceAUG_A1ARAmmo.uc b/sources/Weapons/Playable/Heavy/AUG/NiceAUG_A1ARAmmo.uc index 4a9618c..8209eac 100644 --- a/sources/Weapons/Playable/Heavy/AUG/NiceAUG_A1ARAmmo.uc +++ b/sources/Weapons/Playable/Heavy/AUG/NiceAUG_A1ARAmmo.uc @@ -1,11 +1,11 @@ class NiceAUG_A1ARAmmo extends NiceAmmo; defaultproperties { - WeaponPickupClass=Class'NicePack.NiceAUG_A1ARPickup' + WeaponPickupClass=class'NiceAUG_A1ARPickup' AmmoPickupAmount=30 MaxAmmo=240 InitialAmount=60 - PickupClass=Class'NicePack.NiceAUG_A1ARAmmoPickup' + PickupClass=class'NiceAUG_A1ARAmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=336,Y1=82,X2=382,Y2=125) ItemName="5.56mm NATO" diff --git a/sources/Weapons/Playable/Heavy/AUG/NiceAUG_A1ARAmmoPickup.uc b/sources/Weapons/Playable/Heavy/AUG/NiceAUG_A1ARAmmoPickup.uc index 99fa1bf..e19bdeb 100644 --- a/sources/Weapons/Playable/Heavy/AUG/NiceAUG_A1ARAmmoPickup.uc +++ b/sources/Weapons/Playable/Heavy/AUG/NiceAUG_A1ARAmmoPickup.uc @@ -2,7 +2,7 @@ class NiceAUG_A1ARAmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=30 - InventoryType=Class'NicePack.NiceAUG_A1ARAmmo' + InventoryType=class'NiceAUG_A1ARAmmo' PickupMessage="5.56mm NATO" StaticMesh=StaticMesh'KillingFloorStatics.L85Ammo' } diff --git a/sources/Weapons/Playable/Heavy/AUG/NiceAUG_A1ARFire.uc b/sources/Weapons/Playable/Heavy/AUG/NiceAUG_A1ARFire.uc index 94a0f86..5c8a81f 100644 --- a/sources/Weapons/Playable/Heavy/AUG/NiceAUG_A1ARFire.uc +++ b/sources/Weapons/Playable/Heavy/AUG/NiceAUG_A1ARFire.uc @@ -12,7 +12,7 @@ defaultproperties FireSoundRef="HMG_S.AUGND.aug_fire" StereoFireSoundRef="HMG_S.AUGND.aug_fire" NoAmmoSoundRef="HMG_S.AUGND.aug_empty" - DamageType=Class'NicePack.NiceDamTypeAUG_A1AR' + DamageType=class'NiceDamTypeAUG_A1AR' DamageMin=105 DamageMax=105 Momentum=12000.000000 @@ -22,7 +22,7 @@ defaultproperties TweenTime=0.025000 FireForce="AssaultRifleFire" FireRate=0.200000 - AmmoClass=Class'NicePack.NiceAUG_A1ARAmmo' + AmmoClass=class'NiceAUG_A1ARAmmo' ShakeRotMag=(X=75.000000,Y=75.000000,Z=250.000000) ShakeRotRate=(X=10000.000000,Y=10000.000000,Z=10000.000000) ShakeRotTime=0.500000 diff --git a/sources/Weapons/Playable/Heavy/AUG/NiceAUG_A1ARPickup.uc b/sources/Weapons/Playable/Heavy/AUG/NiceAUG_A1ARPickup.uc index 4d7b1a7..0a3b03d 100644 --- a/sources/Weapons/Playable/Heavy/AUG/NiceAUG_A1ARPickup.uc +++ b/sources/Weapons/Playable/Heavy/AUG/NiceAUG_A1ARPickup.uc @@ -14,7 +14,7 @@ defaultproperties AmmoItemName="Rounds 5.56mm NATO" CorrespondingPerkIndex=1 EquipmentCategoryID=2 - InventoryType=Class'NicePack.NiceAUG_A1AR' + InventoryType=class'NiceAUG_A1AR' PickupMessage="You picked up the Steyr AUG A1" PickupSound=Sound'HMG_S.AUG.aug_pickup' PickupForce="AssaultRiflePickup" diff --git a/sources/Weapons/Playable/Heavy/AUG/NiceDamTypeAUG_A1AR.uc b/sources/Weapons/Playable/Heavy/AUG/NiceDamTypeAUG_A1AR.uc index ba0ef29..9fc7a94 100644 --- a/sources/Weapons/Playable/Heavy/AUG/NiceDamTypeAUG_A1AR.uc +++ b/sources/Weapons/Playable/Heavy/AUG/NiceDamTypeAUG_A1AR.uc @@ -4,7 +4,7 @@ defaultproperties { bodyDestructionMult=1.000000 HeadShotDamageMult=2.000000 - WeaponClass=Class'NicePack.NiceAUG_A1AR' + WeaponClass=class'NiceAUG_A1AR' DeathString="%k killed %o (Steyr AUG A1)." bRagdollBullet=True DamageThreshold=1 diff --git a/sources/Weapons/Playable/Heavy/Chaingun/NiceChainGun.uc b/sources/Weapons/Playable/Heavy/Chaingun/NiceChainGun.uc index d45618d..7fbcc76 100644 --- a/sources/Weapons/Playable/Heavy/Chaingun/NiceChainGun.uc +++ b/sources/Weapons/Playable/Heavy/Chaingun/NiceChainGun.uc @@ -7,8 +7,8 @@ defaultproperties { MagCapacity=160 Weight=12.000000 - FireModeClass(0)=Class'NicePack.NiceChainGunFire' - FireModeClass(1)=Class'NicePack.NiceChainGunAltFire' - PickupClass=Class'NicePack.NiceChainGunPickup' + FireModeClass(0)=class'NiceChainGunFire' + FireModeClass(1)=class'NiceChainGunAltFire' + PickupClass=class'NiceChainGunPickup' ItemName="Patriarch's Chaingun" } diff --git a/sources/Weapons/Playable/Heavy/Chaingun/NiceChainGunAltFire.uc b/sources/Weapons/Playable/Heavy/Chaingun/NiceChainGunAltFire.uc index 7ff5bb7..7eb9cd4 100644 --- a/sources/Weapons/Playable/Heavy/Chaingun/NiceChainGunAltFire.uc +++ b/sources/Weapons/Playable/Heavy/Chaingun/NiceChainGunAltFire.uc @@ -2,6 +2,6 @@ class NiceChainGunAltFire extends ChainGunAltFire; defaultproperties { FireRate=1.500000 - AmmoClass=Class'NicePack.NiceRocketAmmo' - ProjectileClass=Class'NicePack.NiceRocketProj' + AmmoClass=class'NiceRocketAmmo' + ProjectileClass=class'NiceRocketProj' } diff --git a/sources/Weapons/Playable/Heavy/Chaingun/NiceChainGunAmmo.uc b/sources/Weapons/Playable/Heavy/Chaingun/NiceChainGunAmmo.uc index 549e55d..5200a89 100644 --- a/sources/Weapons/Playable/Heavy/Chaingun/NiceChainGunAmmo.uc +++ b/sources/Weapons/Playable/Heavy/Chaingun/NiceChainGunAmmo.uc @@ -3,5 +3,5 @@ defaultproperties { MaxAmmo=480 InitialAmount=120 - PickupClass=Class'NicePack.NiceChainGunAmmoPickup' + PickupClass=class'NiceChainGunAmmoPickup' } diff --git a/sources/Weapons/Playable/Heavy/Chaingun/NiceChainGunAmmoPickup.uc b/sources/Weapons/Playable/Heavy/Chaingun/NiceChainGunAmmoPickup.uc index a04c8f6..ecd0901 100644 --- a/sources/Weapons/Playable/Heavy/Chaingun/NiceChainGunAmmoPickup.uc +++ b/sources/Weapons/Playable/Heavy/Chaingun/NiceChainGunAmmoPickup.uc @@ -2,5 +2,5 @@ class NiceChainGunAmmoPickup extends ChainGunAmmoPickup; defaultproperties { AmmoAmount=120 - InventoryType=Class'NicePack.NiceChainGunAmmo' + InventoryType=class'NiceChainGunAmmo' } diff --git a/sources/Weapons/Playable/Heavy/Chaingun/NiceChainGunFire.uc b/sources/Weapons/Playable/Heavy/Chaingun/NiceChainGunFire.uc index dbf78fb..498be56 100644 --- a/sources/Weapons/Playable/Heavy/Chaingun/NiceChainGunFire.uc +++ b/sources/Weapons/Playable/Heavy/Chaingun/NiceChainGunFire.uc @@ -3,6 +3,6 @@ defaultproperties { maxVerticalRecoilAngle=68 maxHorizontalRecoilAngle=34 - DamageType=Class'NicePack.NiceDamTypeCG' - AmmoClass=Class'NicePack.NiceChainGunAmmo' + DamageType=class'NiceDamTypeCG' + AmmoClass=class'NiceChainGunAmmo' } diff --git a/sources/Weapons/Playable/Heavy/Chaingun/NiceChainGunPickup.uc b/sources/Weapons/Playable/Heavy/Chaingun/NiceChainGunPickup.uc index 53c07e2..5b553af 100644 --- a/sources/Weapons/Playable/Heavy/Chaingun/NiceChainGunPickup.uc +++ b/sources/Weapons/Playable/Heavy/Chaingun/NiceChainGunPickup.uc @@ -7,6 +7,6 @@ defaultproperties BuyClipSize=75 ItemName="Pat's Chaingun" ItemShortName="Chaingun" - InventoryType=Class'NicePack.NiceChainGun' + InventoryType=class'NiceChainGun' PickupMessage="You got the Patriarch's Chain Gun NW." } diff --git a/sources/Weapons/Playable/Heavy/Chaingun/NiceDamTypeCG.uc b/sources/Weapons/Playable/Heavy/Chaingun/NiceDamTypeCG.uc index 979641a..e6ff8d3 100644 --- a/sources/Weapons/Playable/Heavy/Chaingun/NiceDamTypeCG.uc +++ b/sources/Weapons/Playable/Heavy/Chaingun/NiceDamTypeCG.uc @@ -2,7 +2,7 @@ class NiceDamTypeCG extends NiceDamTypeSPAM abstract; defaultproperties { - WeaponClass=Class'NicePack.NiceChainGun' + WeaponClass=class'NiceChainGun' DeathString="%k killed %o (Pat's Chain Gun)." DeathOverlayMaterial=Combiner'Effects_Tex.GoreDecals.PlayerDeathOverlay' DeathOverlayTime=999.000000 diff --git a/sources/Weapons/Playable/Heavy/Chaingun/NiceDamTypeRocket.uc b/sources/Weapons/Playable/Heavy/Chaingun/NiceDamTypeRocket.uc index f2adaee..72e2ef9 100644 --- a/sources/Weapons/Playable/Heavy/Chaingun/NiceDamTypeRocket.uc +++ b/sources/Weapons/Playable/Heavy/Chaingun/NiceDamTypeRocket.uc @@ -1,5 +1,5 @@ class NiceDamTypeRocket extends DamTypeLAW; defaultproperties { - WeaponClass=Class'NicePack.NiceChainGun' + WeaponClass=class'NiceChainGun' } diff --git a/sources/Weapons/Playable/Heavy/Chaingun/NiceRocketAmmo.uc b/sources/Weapons/Playable/Heavy/Chaingun/NiceRocketAmmo.uc index 39e440d..6fae4a3 100644 --- a/sources/Weapons/Playable/Heavy/Chaingun/NiceRocketAmmo.uc +++ b/sources/Weapons/Playable/Heavy/Chaingun/NiceRocketAmmo.uc @@ -6,5 +6,5 @@ class NiceRocketammo extends Rocketammo; defaultproperties { MaxAmmo=16 - PickupClass=Class'NicePack.NiceRocketAmmoPickup' + PickupClass=class'NiceRocketAmmoPickup' } diff --git a/sources/Weapons/Playable/Heavy/Chaingun/NiceRocketAmmoPickup.uc b/sources/Weapons/Playable/Heavy/Chaingun/NiceRocketAmmoPickup.uc index 836041c..1cda56f 100644 --- a/sources/Weapons/Playable/Heavy/Chaingun/NiceRocketAmmoPickup.uc +++ b/sources/Weapons/Playable/Heavy/Chaingun/NiceRocketAmmoPickup.uc @@ -1,5 +1,5 @@ class NiceRocketAmmoPickup extends RocketAmmoPickup; defaultproperties { - InventoryType=Class'NicePack.NiceRocketAmmo' + InventoryType=class'NiceRocketAmmo' } diff --git a/sources/Weapons/Playable/Heavy/Chaingun/NiceRocketProj.uc b/sources/Weapons/Playable/Heavy/Chaingun/NiceRocketProj.uc index 8b27363..5691cf9 100644 --- a/sources/Weapons/Playable/Heavy/Chaingun/NiceRocketProj.uc +++ b/sources/Weapons/Playable/Heavy/Chaingun/NiceRocketProj.uc @@ -2,5 +2,5 @@ class NiceRocketProj extends NiceHRLProj; defaultproperties { Damage=750.000000 - MyDamageType=Class'NicePack.NiceDamTypeRocket' + MyDamageType=class'NiceDamTypeRocket' } diff --git a/sources/Weapons/Playable/Heavy/HeavyTommygun/NiceDamTypeThompsonH.uc b/sources/Weapons/Playable/Heavy/HeavyTommygun/NiceDamTypeThompsonH.uc index 542c7f7..aa5e294 100644 --- a/sources/Weapons/Playable/Heavy/HeavyTommygun/NiceDamTypeThompsonH.uc +++ b/sources/Weapons/Playable/Heavy/HeavyTommygun/NiceDamTypeThompsonH.uc @@ -3,7 +3,7 @@ class NiceDamTypeThompsonH extends NiceDamageTypeVetEnforcerBullets defaultproperties { HeadShotDamageMult=1.100000 - WeaponClass=Class'NicePack.NiceThompsonH' + WeaponClass=class'NiceThompsonH' DeathString="%k killed %o (Heavy Tommy Gun)." FemaleSuicide="%o shot herself in the foot." MaleSuicide="%o shot himself in the foot." diff --git a/sources/Weapons/Playable/Heavy/HeavyTommygun/NiceThompsonH.uc b/sources/Weapons/Playable/Heavy/HeavyTommygun/NiceThompsonH.uc index 6ec3f02..6495150 100644 --- a/sources/Weapons/Playable/Heavy/HeavyTommygun/NiceThompsonH.uc +++ b/sources/Weapons/Playable/Heavy/HeavyTommygun/NiceThompsonH.uc @@ -28,7 +28,7 @@ defaultproperties SelectedHudImageRef="HMG_T.Thompson.Thompson_selected" PlayerIronSightFOV=65.000000 ZoomedDisplayFOV=32.000000 - FireModeClass(0)=Class'NicePack.NiceThompsonHFire' + FireModeClass(0)=class'NiceThompsonHFire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectForce="SwitchToAssaultRifle" @@ -42,10 +42,10 @@ defaultproperties CustomCrossHairTextureName="Crosshairs.HUD.Crosshair_Cross5" InventoryGroup=3 GroupOffset=7 - PickupClass=Class'NicePack.NiceThompsonHPickup' + PickupClass=class'NiceThompsonHPickup' PlayerViewOffset=(X=4.000000,Y=5.000000,Z=-3.000000) BobDamping=4.000000 - AttachmentClass=Class'NicePack.NiceThompsonHAttachment' + AttachmentClass=class'NiceThompsonHAttachment' IconCoords=(X1=245,Y1=39,X2=329,Y2=79) ItemName="Heavy Tommy Gun" TransientSoundVolume=1.250000 diff --git a/sources/Weapons/Playable/Heavy/HeavyTommygun/NiceThompsonHAmmo.uc b/sources/Weapons/Playable/Heavy/HeavyTommygun/NiceThompsonHAmmo.uc index 96e5742..d88d06b 100644 --- a/sources/Weapons/Playable/Heavy/HeavyTommygun/NiceThompsonHAmmo.uc +++ b/sources/Weapons/Playable/Heavy/HeavyTommygun/NiceThompsonHAmmo.uc @@ -2,11 +2,11 @@ class NiceThompsonHAmmo extends NiceAmmo; #EXEC OBJ LOAD FILE=KillingFloorHUD.utx defaultproperties { - WeaponPickupClass=Class'NicePack.NiceThompsonHPickup' + WeaponPickupClass=class'NiceThompsonHPickup' AmmoPickupAmount=60 MaxAmmo=360 InitialAmount=90 - PickupClass=Class'NicePack.NiceThompsonHAmmoPickup' + PickupClass=class'NiceThompsonHAmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=336,Y1=82,X2=382,Y2=125) ItemName="45. ACP bullets" diff --git a/sources/Weapons/Playable/Heavy/HeavyTommygun/NiceThompsonHAmmoPickup.uc b/sources/Weapons/Playable/Heavy/HeavyTommygun/NiceThompsonHAmmoPickup.uc index dae6a86..0a19d63 100644 --- a/sources/Weapons/Playable/Heavy/HeavyTommygun/NiceThompsonHAmmoPickup.uc +++ b/sources/Weapons/Playable/Heavy/HeavyTommygun/NiceThompsonHAmmoPickup.uc @@ -2,7 +2,7 @@ class NiceThompsonHAmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=60 - InventoryType=Class'NicePack.NiceThompsonHAmmo' + InventoryType=class'NiceThompsonHAmmo' PickupMessage="Rounds 45. ACP" StaticMesh=StaticMesh'KillingFloorStatics.L85Ammo' } diff --git a/sources/Weapons/Playable/Heavy/HeavyTommygun/NiceThompsonHFire.uc b/sources/Weapons/Playable/Heavy/HeavyTommygun/NiceThompsonHFire.uc index d2b6489..8fd00ca 100644 --- a/sources/Weapons/Playable/Heavy/HeavyTommygun/NiceThompsonHFire.uc +++ b/sources/Weapons/Playable/Heavy/HeavyTommygun/NiceThompsonHFire.uc @@ -13,7 +13,7 @@ defaultproperties FireSoundRef="KF_IJC_HalloweenSnd.Thompson_Fire_Single_M" StereoFireSoundRef="KF_IJC_HalloweenSnd.Thompson_Fire_Single_S" NoAmmoSoundRef="KF_AK47Snd.AK47_DryFire" - DamageType=Class'NicePack.NiceDamTypeThompsonH' + DamageType=class'NiceDamTypeThompsonH' DamageMin=90 DamageMax=90 Momentum=7500.000000 @@ -23,7 +23,7 @@ defaultproperties TweenTime=0.025000 FireForce="AssaultRifleFire" FireRate=0.079000 - AmmoClass=Class'NicePack.NiceThompsonHAmmo' + AmmoClass=class'NiceThompsonHAmmo' ShakeRotMag=(X=50.000000,Y=50.000000,Z=350.000000) ShakeRotRate=(X=5000.000000,Y=5000.000000,Z=5000.000000) ShakeRotTime=0.750000 diff --git a/sources/Weapons/Playable/Heavy/HeavyTommygun/NiceThompsonHPickup.uc b/sources/Weapons/Playable/Heavy/HeavyTommygun/NiceThompsonHPickup.uc index a555059..be55fd8 100644 --- a/sources/Weapons/Playable/Heavy/HeavyTommygun/NiceThompsonHPickup.uc +++ b/sources/Weapons/Playable/Heavy/HeavyTommygun/NiceThompsonHPickup.uc @@ -15,7 +15,7 @@ defaultproperties AmmoMesh=StaticMesh'KillingFloorStatics.L85Ammo' CorrespondingPerkIndex=1 EquipmentCategoryID=2 - InventoryType=Class'NicePack.NiceThompsonH' + InventoryType=class'NiceThompsonH' PickupMessage="You've got the Thompson Submachine Gun" PickupSound=Sound'KF_IJC_HalloweenSnd.Handling.Thompson_Handling_Bolt_Back' PickupForce="AssaultRiflePickup" diff --git a/sources/Weapons/Playable/Heavy/M249/NiceDamTypeM249SAW.uc b/sources/Weapons/Playable/Heavy/M249/NiceDamTypeM249SAW.uc index c18bda5..8d8e1d7 100644 --- a/sources/Weapons/Playable/Heavy/M249/NiceDamTypeM249SAW.uc +++ b/sources/Weapons/Playable/Heavy/M249/NiceDamTypeM249SAW.uc @@ -3,7 +3,7 @@ class NiceDamTypeM249SAW extends NiceDamageTypeVetEnforcerBullets defaultproperties { bodyDestructionMult=1.000000 - WeaponClass=Class'NicePack.NiceM249SAW' + WeaponClass=class'NiceM249SAW' DeathString="%k killed %o (M249 SAW)." FemaleSuicide="%o shot herself in the foot." MaleSuicide="%o shot himself in the foot." diff --git a/sources/Weapons/Playable/Heavy/M249/NiceM249Ammo.uc b/sources/Weapons/Playable/Heavy/M249/NiceM249Ammo.uc index d935299..1feeef0 100644 --- a/sources/Weapons/Playable/Heavy/M249/NiceM249Ammo.uc +++ b/sources/Weapons/Playable/Heavy/M249/NiceM249Ammo.uc @@ -2,11 +2,11 @@ class NiceM249Ammo extends NiceAmmo; #EXEC OBJ LOAD FILE=KillingFloorHUD.utx defaultproperties { - WeaponPickupClass=Class'NicePack.NiceM249Pickup' + WeaponPickupClass=class'NiceM249Pickup' AmmoPickupAmount=80 MaxAmmo=160 InitialAmount=80 - PickupClass=Class'NicePack.NiceM249AmmoPickup' + PickupClass=class'NiceM249AmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=336,Y1=82,X2=382,Y2=125) ItemName="Rounds 5.56x45mm NATO" diff --git a/sources/Weapons/Playable/Heavy/M249/NiceM249AmmoPickup.uc b/sources/Weapons/Playable/Heavy/M249/NiceM249AmmoPickup.uc index 450e4e5..8962ee4 100644 --- a/sources/Weapons/Playable/Heavy/M249/NiceM249AmmoPickup.uc +++ b/sources/Weapons/Playable/Heavy/M249/NiceM249AmmoPickup.uc @@ -2,7 +2,7 @@ class NiceM249AmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=80 - InventoryType=Class'NicePack.NiceM249Ammo' + InventoryType=class'NiceM249Ammo' PickupMessage="Rounds 5.56x45mm NATO" StaticMesh=StaticMesh'KillingFloorStatics.L85Ammo' } diff --git a/sources/Weapons/Playable/Heavy/M249/NiceM249Fire.uc b/sources/Weapons/Playable/Heavy/M249/NiceM249Fire.uc index efe300e..f531707 100644 --- a/sources/Weapons/Playable/Heavy/M249/NiceM249Fire.uc +++ b/sources/Weapons/Playable/Heavy/M249/NiceM249Fire.uc @@ -13,7 +13,7 @@ defaultproperties FireSoundRef="HMG_S.M249.m249_shoot_mono" StereoFireSoundRef="HMG_S.M249.m249_shoot_stereo" NoAmmoSoundRef="HMG_S.M249.m249_empty" - DamageType=Class'NicePack.NiceDamTypeM249SAW' + DamageType=class'NiceDamTypeM249SAW' DamageMin=125 DamageMax=125 Momentum=12500.000000 @@ -23,7 +23,7 @@ defaultproperties TweenTime=0.025000 FireForce="AssaultRifleFire" FireRate=0.084 - AmmoClass=Class'NicePack.NiceM249Ammo' + AmmoClass=class'NiceM249Ammo' ShakeRotMag=(X=50.000000,Y=50.000000,Z=350.000000) ShakeRotRate=(X=5000.000000,Y=5000.000000,Z=5000.000000) ShakeRotTime=0.750000 diff --git a/sources/Weapons/Playable/Heavy/M249/NiceM249Pickup.uc b/sources/Weapons/Playable/Heavy/M249/NiceM249Pickup.uc index 38bc833..9944f04 100644 --- a/sources/Weapons/Playable/Heavy/M249/NiceM249Pickup.uc +++ b/sources/Weapons/Playable/Heavy/M249/NiceM249Pickup.uc @@ -15,7 +15,7 @@ defaultproperties AmmoMesh=StaticMesh'KillingFloorStatics.L85Ammo' CorrespondingPerkIndex=1 EquipmentCategoryID=2 - InventoryType=Class'NicePack.NiceM249SAW' + InventoryType=class'NiceM249SAW' PickupMessage="You picked up the M249 SAW SE" PickupSound=Sound'HMG_S.M249.m249_pickup' PickupForce="AssaultRiflePickup" diff --git a/sources/Weapons/Playable/Heavy/M249/NiceM249SAW.uc b/sources/Weapons/Playable/Heavy/M249/NiceM249SAW.uc index 323361e..f1b7b3b 100644 --- a/sources/Weapons/Playable/Heavy/M249/NiceM249SAW.uc +++ b/sources/Weapons/Playable/Heavy/M249/NiceM249SAW.uc @@ -182,7 +182,7 @@ defaultproperties SelectedHudImageRef="HMG_T.M249.m249_selected" PlayerIronSightFOV=65.000000 ZoomedDisplayFOV=32.000000 - FireModeClass(0)=Class'NicePack.NiceM249Fire' + FireModeClass(0)=class'NiceM249Fire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectAnimRate=1.000000 @@ -198,10 +198,10 @@ defaultproperties CustomCrossHairTextureName="Crosshairs.HUD.Crosshair_Cross5" InventoryGroup=4 GroupOffset=7 - PickupClass=Class'NicePack.NiceM249Pickup' + PickupClass=class'NiceM249Pickup' PlayerViewOffset=(X=5.000000,Y=5.500000,Z=-3.000000) BobDamping=4.000000 - AttachmentClass=Class'NicePack.NiceM249Attachment' + AttachmentClass=class'NiceM249Attachment' IconCoords=(X1=245,Y1=39,X2=329,Y2=79) ItemName="M249 SAW" DrawScale=0.600000 diff --git a/sources/Weapons/Playable/Heavy/M41A/NiceDamTypeM41AAssaultRifle.uc b/sources/Weapons/Playable/Heavy/M41A/NiceDamTypeM41AAssaultRifle.uc index 1c7a6d3..d7f796b 100644 --- a/sources/Weapons/Playable/Heavy/M41A/NiceDamTypeM41AAssaultRifle.uc +++ b/sources/Weapons/Playable/Heavy/M41A/NiceDamTypeM41AAssaultRifle.uc @@ -2,7 +2,7 @@ class NiceDamTypeM41AAssaultRifle extends NiceDamTypeSPAM abstract; defaultproperties { - WeaponClass=Class'NicePack.NiceM41AAssaultRifle' + WeaponClass=class'NiceM41AAssaultRifle' DeathString="%k killed %o (Pulse Rifle)." DeathOverlayMaterial=Combiner'Effects_Tex.GoreDecals.PlayerDeathOverlay' DeathOverlayTime=999.000000 diff --git a/sources/Weapons/Playable/Heavy/M41A/NiceDamTypeM41ABlunt.uc b/sources/Weapons/Playable/Heavy/M41A/NiceDamTypeM41ABlunt.uc index 2fab55a..b5a64b2 100644 --- a/sources/Weapons/Playable/Heavy/M41A/NiceDamTypeM41ABlunt.uc +++ b/sources/Weapons/Playable/Heavy/M41A/NiceDamTypeM41ABlunt.uc @@ -1,5 +1,5 @@ class NiceDamTypeM41ABlunt extends NiceDamageTypeVetEnforcerBullets; defaultproperties { - WeaponClass=Class'NicePack.NiceM41AAssaultRifle' + WeaponClass=class'NiceM41AAssaultRifle' } diff --git a/sources/Weapons/Playable/Heavy/M41A/NiceDamTypeM41AExplosion.uc b/sources/Weapons/Playable/Heavy/M41A/NiceDamTypeM41AExplosion.uc index 6a00892..22fda98 100644 --- a/sources/Weapons/Playable/Heavy/M41A/NiceDamTypeM41AExplosion.uc +++ b/sources/Weapons/Playable/Heavy/M41A/NiceDamTypeM41AExplosion.uc @@ -2,5 +2,5 @@ class NiceDamTypeM41AExplosion extends NiceDamageTypeVetEnforcerBullets; defaultproperties { bIsExplosive=True - WeaponClass=Class'NicePack.NiceM41AAssaultRifle' + WeaponClass=class'NiceM41AAssaultRifle' } diff --git a/sources/Weapons/Playable/Heavy/M41A/NiceDamTypeM41AGrenade.uc b/sources/Weapons/Playable/Heavy/M41A/NiceDamTypeM41AGrenade.uc index 5628d55..d53aea5 100644 --- a/sources/Weapons/Playable/Heavy/M41A/NiceDamTypeM41AGrenade.uc +++ b/sources/Weapons/Playable/Heavy/M41A/NiceDamTypeM41AGrenade.uc @@ -1,5 +1,5 @@ class NiceDamTypeM41AGrenade extends DamTypeM203Grenade; defaultproperties { - WeaponClass=Class'NicePack.NiceM41AAssaultRifle' + WeaponClass=class'NiceM41AAssaultRifle' } diff --git a/sources/Weapons/Playable/Heavy/M41A/NiceM41AALTFire.uc b/sources/Weapons/Playable/Heavy/M41A/NiceM41AALTFire.uc index 5ef6242..8fac127 100644 --- a/sources/Weapons/Playable/Heavy/M41A/NiceM41AALTFire.uc +++ b/sources/Weapons/Playable/Heavy/M41A/NiceM41AALTFire.uc @@ -4,8 +4,8 @@ defaultproperties ProjSpawnOffset=(X=5.000000) EffectiveRange=2500.000000 ProjectileSpeed=3800.000000 - bulletClass=Class'NicePack.NiceBallisticNade' - ExplosionDamageType=Class'NicePack.NiceDamTypeM41AExplosion' + bulletClass=class'NiceBallisticNade' + ExplosionDamageType=class'NiceDamTypeM41AExplosion' ExplosionDamage=350 ExplosionRadius=400.000000 explosionExponent=1.000000 @@ -20,14 +20,14 @@ defaultproperties FireSoundRef="KF_M79Snd.M79_Fire" StereoFireSoundRef="KF_M79Snd.M79_FireST" NoAmmoSoundRef="KF_M79Snd.M79_DryFire" - DamageType=Class'NicePack.NiceDamTypeM41ABlunt' + DamageType=class'NiceDamTypeM41ABlunt' DamageMax=200 bWaitForRelease=True TransientSoundVolume=1.800000 FireAnim="AltFire" FireForce="AssaultRifleFire" FireRate=0.000000 - AmmoClass=Class'NicePack.NiceM41AProjectileAmmo' + AmmoClass=class'NiceM41AProjectileAmmo' ShakeRotMag=(X=3.000000,Y=4.000000,Z=2.000000) ShakeRotRate=(X=10000.000000,Y=10000.000000,Z=10000.000000) ShakeOffsetMag=(X=3.000000,Y=3.000000,Z=3.000000) diff --git a/sources/Weapons/Playable/Heavy/M41A/NiceM41AAmmo.uc b/sources/Weapons/Playable/Heavy/M41A/NiceM41AAmmo.uc index 1cbd1ac..6f7b45b 100644 --- a/sources/Weapons/Playable/Heavy/M41A/NiceM41AAmmo.uc +++ b/sources/Weapons/Playable/Heavy/M41A/NiceM41AAmmo.uc @@ -2,11 +2,11 @@ class NiceM41AAmmo extends NiceAmmo; #EXEC OBJ LOAD FILE=KillingFloorHUD.utx defaultproperties { - WeaponPickupClass=Class'NicePack.NiceM41APickup' + WeaponPickupClass=class'NiceM41APickup' AmmoPickupAmount=66 MaxAmmo=300 InitialAmount=75 - PickupClass=Class'NicePack.NiceM41AAmmoPickup' + PickupClass=class'NiceM41AAmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=336,Y1=82,X2=382,Y2=125) ItemName="M41A 10 mm caseless ammunition" diff --git a/sources/Weapons/Playable/Heavy/M41A/NiceM41AAmmoPickup.uc b/sources/Weapons/Playable/Heavy/M41A/NiceM41AAmmoPickup.uc index fab5526..185a08f 100644 --- a/sources/Weapons/Playable/Heavy/M41A/NiceM41AAmmoPickup.uc +++ b/sources/Weapons/Playable/Heavy/M41A/NiceM41AAmmoPickup.uc @@ -2,7 +2,7 @@ class NiceM41AAmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=66 - InventoryType=Class'NicePack.NiceM41AAmmo' + InventoryType=class'NiceM41AAmmo' PickupMessage="M41A 10 mm caseless ammunition" StaticMesh=StaticMesh'KillingFloorStatics.L85Ammo' } diff --git a/sources/Weapons/Playable/Heavy/M41A/NiceM41AAssaultRifle.uc b/sources/Weapons/Playable/Heavy/M41A/NiceM41AAssaultRifle.uc index 950e6c0..e9f8438 100644 --- a/sources/Weapons/Playable/Heavy/M41A/NiceM41AAssaultRifle.uc +++ b/sources/Weapons/Playable/Heavy/M41A/NiceM41AAssaultRifle.uc @@ -105,8 +105,8 @@ defaultproperties SelectedHudImageRef="HMG_T.M41A.HUD.M41A_selected" PlayerIronSightFOV=70.000000 ZoomedDisplayFOV=45.000000 - FireModeClass(0)=Class'NicePack.NiceM41AFire' - FireModeClass(1)=Class'NicePack.NiceM41AALTFire' + FireModeClass(0)=class'NiceM41AFire' + FireModeClass(1)=class'NiceM41AALTFire' PutDownAnim="PutDown" SelectForce="SwitchToAssaultRifle" AIRating=0.550000 @@ -119,7 +119,7 @@ defaultproperties CustomCrossHairTextureName="Crosshairs.HUD.Crosshair_Cross5" InventoryGroup=4 GroupOffset=7 - PickupClass=Class'NicePack.NiceM41APickup' + PickupClass=class'NiceM41APickup' PlayerViewOffset=(X=25.000000,Y=24.000000,Z=8.000000) PlayerViewPivot=(Yaw=-648) BobDamping=6.000000 diff --git a/sources/Weapons/Playable/Heavy/M41A/NiceM41AFire.uc b/sources/Weapons/Playable/Heavy/M41A/NiceM41AFire.uc index d5ab101..d4cd35a 100644 --- a/sources/Weapons/Playable/Heavy/M41A/NiceM41AFire.uc +++ b/sources/Weapons/Playable/Heavy/M41A/NiceM41AFire.uc @@ -11,7 +11,7 @@ defaultproperties FireSoundRef="HMG_S.M41A.M41AFireMono" StereoFireSoundRef="HMG_S.M41A.M41AFire" NoAmmoSoundRef="HMG_S.M41A.DryFire" - DamageType=Class'NicePack.NiceDamTypeM41AAssaultRifle' + DamageType=class'NiceDamTypeM41AAssaultRifle' DamageMin=75 DamageMax=75 Momentum=13500.000000 @@ -21,7 +21,7 @@ defaultproperties TweenTime=0.025000 FireForce="AssaultRifleFire" FireRate=0.070000 - AmmoClass=Class'NicePack.NiceM41AAmmo' + AmmoClass=class'NiceM41AAmmo' ShakeRotMag=(X=50.000000,Y=50.000000,Z=300.000000) ShakeRotRate=(X=7500.000000,Y=7500.000000,Z=7500.000000) ShakeRotTime=0.650000 diff --git a/sources/Weapons/Playable/Heavy/M41A/NiceM41APickup.uc b/sources/Weapons/Playable/Heavy/M41A/NiceM41APickup.uc index db381c5..610f503 100644 --- a/sources/Weapons/Playable/Heavy/M41A/NiceM41APickup.uc +++ b/sources/Weapons/Playable/Heavy/M41A/NiceM41APickup.uc @@ -6,5 +6,5 @@ defaultproperties AmmoCost=60 BuyClipSize=1 SecondaryAmmoShortName="M41A Frag Grenades" - PrimaryWeaponPickup=Class'NicePack.NiceM41APrimaryPickup' + PrimaryWeaponPickup=class'NiceM41APrimaryPickup' } diff --git a/sources/Weapons/Playable/Heavy/M41A/NiceM41APrimaryPickup.uc b/sources/Weapons/Playable/Heavy/M41A/NiceM41APrimaryPickup.uc index 14172a7..0f05cc6 100644 --- a/sources/Weapons/Playable/Heavy/M41A/NiceM41APrimaryPickup.uc +++ b/sources/Weapons/Playable/Heavy/M41A/NiceM41APrimaryPickup.uc @@ -15,7 +15,7 @@ defaultproperties AmmoMesh=StaticMesh'KillingFloorStatics.L85Ammo' CorrespondingPerkIndex=1 EquipmentCategoryID=3 - InventoryType=Class'NicePack.NiceM41AAssaultRifle' + InventoryType=class'NiceM41AAssaultRifle' PickupMessage="You got the M41A" PickupSound=Sound'HMG_S.M41A.Pickup' PickupForce="AssaultRiflePickup" diff --git a/sources/Weapons/Playable/Heavy/M41A/NiceM41AProjectileAmmo.uc b/sources/Weapons/Playable/Heavy/M41A/NiceM41AProjectileAmmo.uc index b8dfd4b..a778ca5 100644 --- a/sources/Weapons/Playable/Heavy/M41A/NiceM41AProjectileAmmo.uc +++ b/sources/Weapons/Playable/Heavy/M41A/NiceM41AProjectileAmmo.uc @@ -1,7 +1,7 @@ class NiceM41AProjectileAmmo extends NiceAmmo; defaultproperties { - WeaponPickupClass=Class'NicePack.NiceM41APickup' + WeaponPickupClass=class'NiceM41APickup' AmmoPickupAmount=1 MaxAmmo=8 InitialAmount=2 diff --git a/sources/Weapons/Playable/Heavy/M41A/NiceM41AProjectileAmmoPickup.uc b/sources/Weapons/Playable/Heavy/M41A/NiceM41AProjectileAmmoPickup.uc index af7582d..e3b589d 100644 --- a/sources/Weapons/Playable/Heavy/M41A/NiceM41AProjectileAmmoPickup.uc +++ b/sources/Weapons/Playable/Heavy/M41A/NiceM41AProjectileAmmoPickup.uc @@ -2,7 +2,7 @@ class NiceM41AProjectileAmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=2 - InventoryType=Class'NicePack.NiceM41AProjectileAmmo' + InventoryType=class'NiceM41AProjectileAmmo' PickupMessage="M41A Grenades" StaticMesh=StaticMesh'KillingFloorStatics.FragPickup' CollisionRadius=25.000000 diff --git a/sources/Weapons/Playable/Heavy/RPK47/NiceDamTypeRPK47MG.uc b/sources/Weapons/Playable/Heavy/RPK47/NiceDamTypeRPK47MG.uc index 55f1c92..2638a11 100644 --- a/sources/Weapons/Playable/Heavy/RPK47/NiceDamTypeRPK47MG.uc +++ b/sources/Weapons/Playable/Heavy/RPK47/NiceDamTypeRPK47MG.uc @@ -2,7 +2,7 @@ class NiceDamTypeRPK47MG extends NiceDamageTypeVetEnforcerBullets abstract; defaultproperties { - WeaponClass=Class'NicePack.NiceRPK47MachineGun' + WeaponClass=class'NiceRPK47MachineGun' DeathString="%k killed %o (RPK47)." FemaleSuicide="%o shot herself in the foot." MaleSuicide="%o shot himself in the foot." diff --git a/sources/Weapons/Playable/Heavy/RPK47/NiceRPK47Ammo.uc b/sources/Weapons/Playable/Heavy/RPK47/NiceRPK47Ammo.uc index 68c980c..7970e11 100644 --- a/sources/Weapons/Playable/Heavy/RPK47/NiceRPK47Ammo.uc +++ b/sources/Weapons/Playable/Heavy/RPK47/NiceRPK47Ammo.uc @@ -1,11 +1,11 @@ class NiceRPK47Ammo extends NiceAmmo; defaultproperties { - WeaponPickupClass=Class'NicePack.NiceRPK47Pickup' + WeaponPickupClass=class'NiceRPK47Pickup' AmmoPickupAmount=50 MaxAmmo=250 InitialAmount=50 - PickupClass=Class'NicePack.NiceRPK47AmmoPickup' + PickupClass=class'NiceRPK47AmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=336,Y1=82,X2=382,Y2=125) ItemName="Rounds 7.62mm" diff --git a/sources/Weapons/Playable/Heavy/RPK47/NiceRPK47AmmoPickup.uc b/sources/Weapons/Playable/Heavy/RPK47/NiceRPK47AmmoPickup.uc index c6e2a4a..d8cfadc 100644 --- a/sources/Weapons/Playable/Heavy/RPK47/NiceRPK47AmmoPickup.uc +++ b/sources/Weapons/Playable/Heavy/RPK47/NiceRPK47AmmoPickup.uc @@ -2,7 +2,7 @@ class NiceRPK47AmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=50 - InventoryType=Class'NicePack.NiceRPK47Ammo' + InventoryType=class'NiceRPK47Ammo' PickupMessage="7.62mm" StaticMesh=StaticMesh'KillingFloorStatics.L85Ammo' } diff --git a/sources/Weapons/Playable/Heavy/RPK47/NiceRPK47Fire.uc b/sources/Weapons/Playable/Heavy/RPK47/NiceRPK47Fire.uc index a3692d9..79b5528 100644 --- a/sources/Weapons/Playable/Heavy/RPK47/NiceRPK47Fire.uc +++ b/sources/Weapons/Playable/Heavy/RPK47/NiceRPK47Fire.uc @@ -14,7 +14,7 @@ defaultproperties FireSoundRef="HMG_S.RPK.rpk47_shoot" StereoFireSoundRef="HMG_S.RPK.rpk47_shoot" NoAmmoSoundRef="HMG_S.RPK.rpk47_empty" - DamageType=Class'NicePack.NiceDamTypeRPK47MG' + DamageType=class'NiceDamTypeRPK47MG' DamageMin=100 DamageMax=100 Momentum=10500.000000 @@ -24,7 +24,7 @@ defaultproperties TweenTime=0.025000 FireForce="AssaultRifleFire" FireRate=0.109000 - AmmoClass=Class'NicePack.NiceRPK47Ammo' + AmmoClass=class'NiceRPK47Ammo' ShakeRotMag=(X=50.000000,Y=50.000000,Z=350.000000) ShakeRotRate=(X=5000.000000,Y=5000.000000,Z=5000.000000) ShakeRotTime=0.750000 diff --git a/sources/Weapons/Playable/Heavy/RPK47/NiceRPK47MachineGun.uc b/sources/Weapons/Playable/Heavy/RPK47/NiceRPK47MachineGun.uc index 29260fd..0d53ce8 100644 --- a/sources/Weapons/Playable/Heavy/RPK47/NiceRPK47MachineGun.uc +++ b/sources/Weapons/Playable/Heavy/RPK47/NiceRPK47MachineGun.uc @@ -35,7 +35,7 @@ defaultproperties SelectedHudImageRef="HMG_T.RPK.RPK47_selected" PlayerIronSightFOV=65.000000 ZoomedDisplayFOV=32.000000 - FireModeClass(0)=Class'NicePack.NiceRPK47Fire' + FireModeClass(0)=class'NiceRPK47Fire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectForce="SwitchToAssaultRifle" @@ -50,10 +50,10 @@ defaultproperties CustomCrossHairTextureName="Crosshairs.HUD.Crosshair_Cross5" InventoryGroup=3 GroupOffset=7 - PickupClass=Class'NicePack.NiceRPK47Pickup' + PickupClass=class'NiceRPK47Pickup' PlayerViewOffset=(X=8.000000,Y=8.000000,Z=-3.000000) BobDamping=4.000000 - AttachmentClass=Class'NicePack.NiceRPK47Attachment' + AttachmentClass=class'NiceRPK47Attachment' IconCoords=(X1=245,Y1=39,X2=329,Y2=79) ItemName="RPK-47" TransientSoundVolume=1.250000 diff --git a/sources/Weapons/Playable/Heavy/RPK47/NiceRPK47Pickup.uc b/sources/Weapons/Playable/Heavy/RPK47/NiceRPK47Pickup.uc index 16b0b00..37e1c5c 100644 --- a/sources/Weapons/Playable/Heavy/RPK47/NiceRPK47Pickup.uc +++ b/sources/Weapons/Playable/Heavy/RPK47/NiceRPK47Pickup.uc @@ -16,7 +16,7 @@ defaultproperties AmmoMesh=StaticMesh'KillingFloorStatics.L85Ammo' CorrespondingPerkIndex=1 EquipmentCategoryID=2 - InventoryType=Class'NicePack.NiceRPK47MachineGun' + InventoryType=class'NiceRPK47MachineGun' PickupMessage="You picked up the RPK-47" PickupSound=Sound'HMG_S.RPK.rpk47_pickup' PickupForce="AssaultRiflePickup" diff --git a/sources/Weapons/Playable/Heavy/SA80LSW/NiceDamTypeSA80LSW.uc b/sources/Weapons/Playable/Heavy/SA80LSW/NiceDamTypeSA80LSW.uc index 5208729..aaa9dbb 100644 --- a/sources/Weapons/Playable/Heavy/SA80LSW/NiceDamTypeSA80LSW.uc +++ b/sources/Weapons/Playable/Heavy/SA80LSW/NiceDamTypeSA80LSW.uc @@ -5,7 +5,7 @@ defaultproperties goodDecapMod=0.750000 stunMultiplier=1.400000 HeadShotDamageMult=1.000000 - WeaponClass=Class'NicePack.NiceSA80LSW' + WeaponClass=class'NiceSA80LSW' DeathString="%k killed %o (SA80 LSW)." bRagdollBullet=True DamageThreshold=1 diff --git a/sources/Weapons/Playable/Heavy/SA80LSW/NiceSA80LSW.uc b/sources/Weapons/Playable/Heavy/SA80LSW/NiceSA80LSW.uc index 3e16e72..a74b185 100644 --- a/sources/Weapons/Playable/Heavy/SA80LSW/NiceSA80LSW.uc +++ b/sources/Weapons/Playable/Heavy/SA80LSW/NiceSA80LSW.uc @@ -42,7 +42,7 @@ defaultproperties SelectedHudImageRef="HMG_T.SA80.SA80LSW_selected" PlayerIronSightFOV=32.000000 ZoomedDisplayFOV=50.000000 - FireModeClass(0)=Class'NicePack.NiceSA80LSWFire' + FireModeClass(0)=class'NiceSA80LSWFire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="PutDown" SelectForce="SwitchToAssaultRifle" @@ -55,10 +55,10 @@ defaultproperties CustomCrossHairTextureName="Crosshairs.HUD.Crosshair_Cross5" InventoryGroup=3 GroupOffset=3 - PickupClass=Class'NicePack.NiceSA80LSWPickup' + PickupClass=class'NiceSA80LSWPickup' PlayerViewOffset=(X=20.000000,Y=10.000000,Z=-2.000000) BobDamping=5.000000 - AttachmentClass=Class'NicePack.NiceSA80LSWAttachment' + AttachmentClass=class'NiceSA80LSWAttachment' IconCoords=(X1=253,Y1=146,X2=333,Y2=181) ItemName="SA80 LSW" } diff --git a/sources/Weapons/Playable/Heavy/SA80LSW/NiceSA80LSWAmmo.uc b/sources/Weapons/Playable/Heavy/SA80LSW/NiceSA80LSWAmmo.uc index 44683b9..f6abd5d 100644 --- a/sources/Weapons/Playable/Heavy/SA80LSW/NiceSA80LSWAmmo.uc +++ b/sources/Weapons/Playable/Heavy/SA80LSW/NiceSA80LSWAmmo.uc @@ -1,11 +1,11 @@ class NiceSA80LSWAmmo extends NiceAmmo; defaultproperties { - WeaponPickupClass=Class'NicePack.NiceSA80LSWPickup' + WeaponPickupClass=class'NiceSA80LSWPickup' AmmoPickupAmount=30 MaxAmmo=360 InitialAmount=90 - PickupClass=Class'NicePack.NiceSA80LSWAmmoPickup' + PickupClass=class'NiceSA80LSWAmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=336,Y1=82,X2=382,Y2=125) ItemName="5.56x45" diff --git a/sources/Weapons/Playable/Heavy/SA80LSW/NiceSA80LSWAmmoPickup.uc b/sources/Weapons/Playable/Heavy/SA80LSW/NiceSA80LSWAmmoPickup.uc index bc9c752..6c6ea5b 100644 --- a/sources/Weapons/Playable/Heavy/SA80LSW/NiceSA80LSWAmmoPickup.uc +++ b/sources/Weapons/Playable/Heavy/SA80LSW/NiceSA80LSWAmmoPickup.uc @@ -2,7 +2,7 @@ class NiceSA80LSWAmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=30 - InventoryType=Class'NicePack.NiceSA80LSWAmmo' + InventoryType=class'NiceSA80LSWAmmo' PickupMessage="5.56x45" StaticMesh=StaticMesh'KillingFloorStatics.L85Ammo' } diff --git a/sources/Weapons/Playable/Heavy/SA80LSW/NiceSA80LSWFire.uc b/sources/Weapons/Playable/Heavy/SA80LSW/NiceSA80LSWFire.uc index 29ef1e5..5108bae 100644 --- a/sources/Weapons/Playable/Heavy/SA80LSW/NiceSA80LSWFire.uc +++ b/sources/Weapons/Playable/Heavy/SA80LSW/NiceSA80LSWFire.uc @@ -12,7 +12,7 @@ defaultproperties FireSoundRef="HMG_S.SA80.SA80LSW_shot" StereoFireSoundRef="HMG_S.SA80.SA80LSW_shot" NoAmmoSoundRef="HMG_S.SA80.SA80LSW_empty" - DamageType=Class'NicePack.NiceDamTypeSA80LSW' + DamageType=class'NiceDamTypeSA80LSW' DamageMin=70 DamageMax=70 Momentum=12500.000000 @@ -22,7 +22,7 @@ defaultproperties TweenTime=0.025000 FireForce="AssaultRifleFire" FireRate=0.15 - AmmoClass=Class'NicePack.NiceSA80LSWAmmo' + AmmoClass=class'NiceSA80LSWAmmo' ShakeRotMag=(X=75.000000,Y=75.000000,Z=250.000000) ShakeRotRate=(X=10000.000000,Y=10000.000000,Z=10000.000000) ShakeRotTime=0.500000 diff --git a/sources/Weapons/Playable/Heavy/SA80LSW/NiceSA80LSWPickup.uc b/sources/Weapons/Playable/Heavy/SA80LSW/NiceSA80LSWPickup.uc index 1f2cbe0..f57be35 100644 --- a/sources/Weapons/Playable/Heavy/SA80LSW/NiceSA80LSWPickup.uc +++ b/sources/Weapons/Playable/Heavy/SA80LSW/NiceSA80LSWPickup.uc @@ -14,7 +14,7 @@ defaultproperties AmmoItemName="Rounds 5.56x45" CorrespondingPerkIndex=1 EquipmentCategoryID=2 - InventoryType=Class'NicePack.NiceSA80LSW' + InventoryType=class'NiceSA80LSW' PickupMessage="You picked up the SA80 LSW" PickupSound=Sound'HMG_S.SA80.SA80LSW_pickup' PickupForce="AssaultRiflePickup" diff --git a/sources/Weapons/Playable/Heavy/Stinger/NiceDamTypeStinger.uc b/sources/Weapons/Playable/Heavy/Stinger/NiceDamTypeStinger.uc index 23af6a0..518bed5 100644 --- a/sources/Weapons/Playable/Heavy/Stinger/NiceDamTypeStinger.uc +++ b/sources/Weapons/Playable/Heavy/Stinger/NiceDamTypeStinger.uc @@ -2,6 +2,6 @@ class NiceDamTypeStinger extends NiceDamTypeSPAM abstract; defaultproperties { - WeaponClass=Class'NicePack.NiceStinger' + WeaponClass=class'NiceStinger' DeathString="%k killed %o (Stinger)." } diff --git a/sources/Weapons/Playable/Heavy/Stinger/NiceStinger.uc b/sources/Weapons/Playable/Heavy/Stinger/NiceStinger.uc index 3f9b414..26a8522 100644 --- a/sources/Weapons/Playable/Heavy/Stinger/NiceStinger.uc +++ b/sources/Weapons/Playable/Heavy/Stinger/NiceStinger.uc @@ -3,8 +3,8 @@ defaultproperties { MagCapacity=160 Weight=8.000000 - FireModeClass(0)=Class'NicePack.NiceStingerFire' - FireModeClass(1)=Class'NicePack.NiceStingerAltFire' - PickupClass=Class'NicePack.NiceStingerPickup' + FireModeClass(0)=class'NiceStingerFire' + FireModeClass(1)=class'NiceStingerAltFire' + PickupClass=class'NiceStingerPickup' ItemName="Stinger Minigun" } diff --git a/sources/Weapons/Playable/Heavy/Stinger/NiceStingerAltFire.uc b/sources/Weapons/Playable/Heavy/Stinger/NiceStingerAltFire.uc index 9b41c29..617fd57 100644 --- a/sources/Weapons/Playable/Heavy/Stinger/NiceStingerAltFire.uc +++ b/sources/Weapons/Playable/Heavy/Stinger/NiceStingerAltFire.uc @@ -3,6 +3,6 @@ defaultproperties { DamageMin=120 DamageMax=120 - AmmoClass=Class'NicePack.NiceStingerAmmo' + AmmoClass=class'NiceStingerAmmo' AmmoPerFire=6 } diff --git a/sources/Weapons/Playable/Heavy/Stinger/NiceStingerAmmo.uc b/sources/Weapons/Playable/Heavy/Stinger/NiceStingerAmmo.uc index 91f8ad0..bff0acd 100644 --- a/sources/Weapons/Playable/Heavy/Stinger/NiceStingerAmmo.uc +++ b/sources/Weapons/Playable/Heavy/Stinger/NiceStingerAmmo.uc @@ -5,5 +5,5 @@ defaultproperties AmmoPickupAmount=80 MaxAmmo=640 InitialAmount=160 - PickupClass=Class'NicePack.NiceStingerAmmoPickup' + PickupClass=class'NiceStingerAmmoPickup' } diff --git a/sources/Weapons/Playable/Heavy/Stinger/NiceStingerAmmoPickup.uc b/sources/Weapons/Playable/Heavy/Stinger/NiceStingerAmmoPickup.uc index ceb8537..034b174 100644 --- a/sources/Weapons/Playable/Heavy/Stinger/NiceStingerAmmoPickup.uc +++ b/sources/Weapons/Playable/Heavy/Stinger/NiceStingerAmmoPickup.uc @@ -2,5 +2,5 @@ class NiceStingerAmmoPickup extends StingerAmmoPickup; defaultproperties { AmmoAmount=80 - InventoryType=Class'NicePack.NiceStingerAmmo' + InventoryType=class'NiceStingerAmmo' } diff --git a/sources/Weapons/Playable/Heavy/Stinger/NiceStingerFire.uc b/sources/Weapons/Playable/Heavy/Stinger/NiceStingerFire.uc index a6b0c31..6b7acac 100644 --- a/sources/Weapons/Playable/Heavy/Stinger/NiceStingerFire.uc +++ b/sources/Weapons/Playable/Heavy/Stinger/NiceStingerFire.uc @@ -3,8 +3,8 @@ defaultproperties { maxVerticalRecoilAngle=112 maxHorizontalRecoilAngle=56 - DamageType=Class'NicePack.NiceDamTypeStinger' + DamageType=class'NiceDamTypeStinger' DamageMin=45 DamageMax=45 - AmmoClass=Class'NicePack.NiceStingerAmmo' + AmmoClass=class'NiceStingerAmmo' } diff --git a/sources/Weapons/Playable/Heavy/Stinger/NiceStingerPickup.uc b/sources/Weapons/Playable/Heavy/Stinger/NiceStingerPickup.uc index 4bc9a12..893e057 100644 --- a/sources/Weapons/Playable/Heavy/Stinger/NiceStingerPickup.uc +++ b/sources/Weapons/Playable/Heavy/Stinger/NiceStingerPickup.uc @@ -7,5 +7,5 @@ defaultproperties BuyClipSize=80 ItemName="Stinger Minigun" ItemShortName="Stinger" - InventoryType=Class'NicePack.NiceStinger' + InventoryType=class'NiceStinger' } diff --git a/sources/Weapons/Playable/Heavy/XMV/NiceDamTypeXMV850M.uc b/sources/Weapons/Playable/Heavy/XMV/NiceDamTypeXMV850M.uc index f850b82..6676188 100644 --- a/sources/Weapons/Playable/Heavy/XMV/NiceDamTypeXMV850M.uc +++ b/sources/Weapons/Playable/Heavy/XMV/NiceDamTypeXMV850M.uc @@ -2,7 +2,7 @@ class NiceDamTypeXMV850M extends NiceDamageTypeVetEnforcerBullets abstract; defaultproperties { - WeaponClass=Class'NicePack.NiceXMV850M' + WeaponClass=class'NiceXMV850M' DeathString="%k killed %o (XMV850 Minigun)." //stunMultiplier=0.5 bRagdollBullet=True diff --git a/sources/Weapons/Playable/Heavy/XMV/NiceXMV850Ammo.uc b/sources/Weapons/Playable/Heavy/XMV/NiceXMV850Ammo.uc index 81bf93a..0495cd3 100644 --- a/sources/Weapons/Playable/Heavy/XMV/NiceXMV850Ammo.uc +++ b/sources/Weapons/Playable/Heavy/XMV/NiceXMV850Ammo.uc @@ -2,11 +2,11 @@ class NiceXMV850Ammo extends NiceAmmo; #EXEC OBJ LOAD FILE=KillingFloorHUD.utx defaultproperties { - WeaponPickupClass=Class'NicePack.NiceXMV850Pickup' + WeaponPickupClass=class'NiceXMV850Pickup' AmmoPickupAmount=80 MaxAmmo=480 InitialAmount=120 - PickupClass=Class'NicePack.NiceXMV850AmmoPickup' + PickupClass=class'NiceXMV850AmmoPickup' IconMaterial=Texture'KillingFloorHUD.Generic.HUD' IconCoords=(X1=336,Y1=82,X2=382,Y2=125) ItemName="XMV850 bullets" diff --git a/sources/Weapons/Playable/Heavy/XMV/NiceXMV850AmmoPickup.uc b/sources/Weapons/Playable/Heavy/XMV/NiceXMV850AmmoPickup.uc index fa099f7..1b9f556 100644 --- a/sources/Weapons/Playable/Heavy/XMV/NiceXMV850AmmoPickup.uc +++ b/sources/Weapons/Playable/Heavy/XMV/NiceXMV850AmmoPickup.uc @@ -2,7 +2,7 @@ class NiceXMV850AmmoPickup extends NiceAmmoPickup; defaultproperties { AmmoAmount=80 - InventoryType=Class'NicePack.NiceXMV850Ammo' + InventoryType=class'NiceXMV850Ammo' PickupMessage="Rounds 7.62x51mm" StaticMesh=StaticMesh'KillingFloorStatics.L85Ammo' } diff --git a/sources/Weapons/Playable/Heavy/XMV/NiceXMV850Fire.uc b/sources/Weapons/Playable/Heavy/XMV/NiceXMV850Fire.uc index 6f91173..d266c98 100644 --- a/sources/Weapons/Playable/Heavy/XMV/NiceXMV850Fire.uc +++ b/sources/Weapons/Playable/Heavy/XMV/NiceXMV850Fire.uc @@ -23,7 +23,7 @@ defaultproperties FireSoundRef="HMG_S.XMV.XMV-Fire-1" StereoFireSoundRef="HMG_S.XMV.XMV-Fire-1" NoAmmoSoundRef="HMG_S.M41A.DryFire" - DamageType=Class'NicePack.NiceDamTypeXMV850M' + DamageType=class'NiceDamTypeXMV850M' DamageMin=30 DamageMax=30 Momentum=8500.000000 @@ -33,7 +33,7 @@ defaultproperties TweenTime=0.025000 FireForce="AssaultRifleFire" FireRate=0.065000 - AmmoClass=Class'NicePack.NiceXMV850Ammo' + AmmoClass=class'NiceXMV850Ammo' ShakeRotMag=(X=50.000000,Y=50.000000,Z=300.000000) ShakeRotRate=(X=7500.000000,Y=7500.000000,Z=7500.000000) ShakeRotTime=0.650000 diff --git a/sources/Weapons/Playable/Heavy/XMV/NiceXMV850M.uc b/sources/Weapons/Playable/Heavy/XMV/NiceXMV850M.uc index 2fb970e..539ba59 100644 --- a/sources/Weapons/Playable/Heavy/XMV/NiceXMV850M.uc +++ b/sources/Weapons/Playable/Heavy/XMV/NiceXMV850M.uc @@ -108,7 +108,7 @@ defaultproperties SelectedHudImageRef="HMG_T.XMV.XMV850_Selected" PlayerIronSightFOV=65.000000 ZoomedDisplayFOV=20.000000 - FireModeClass(0)=Class'NicePack.NiceXMV850Fire' + FireModeClass(0)=class'NiceXMV850Fire' FireModeClass(1)=Class'KFMod.NoFire' PutDownAnim="Putaway" SelectForce="SwitchToAssaultRifle" @@ -123,10 +123,10 @@ defaultproperties CustomCrossHairTextureName="Crosshairs.HUD.Crosshair_Cross5" InventoryGroup=3 GroupOffset=7 - PickupClass=Class'NicePack.NiceXMV850Pickup' + PickupClass=class'NiceXMV850Pickup' PlayerViewOffset=(X=30.000000,Y=20.000000,Z=-10.000000) BobDamping=6.000000 - AttachmentClass=Class'NicePack.NiceXMV850Attachment' + AttachmentClass=class'NiceXMV850Attachment' IconCoords=(X1=245,Y1=39,X2=329,Y2=79) ItemName="XMV850 Minigun" TransientSoundVolume=0.625000 diff --git a/sources/Weapons/Playable/Heavy/XMV/NiceXMV850Pickup.uc b/sources/Weapons/Playable/Heavy/XMV/NiceXMV850Pickup.uc index cac0c80..40add36 100644 --- a/sources/Weapons/Playable/Heavy/XMV/NiceXMV850Pickup.uc +++ b/sources/Weapons/Playable/Heavy/XMV/NiceXMV850Pickup.uc @@ -20,7 +20,7 @@ defaultproperties AmmoMesh=StaticMesh'KillingFloorStatics.L85Ammo' CorrespondingPerkIndex=1 EquipmentCategoryID=3 - InventoryType=Class'NicePack.NiceXMV850M' + InventoryType=class'NiceXMV850M' PickupMessage="You got the XMV850 Minigun." PickupSound=Sound'HMG_S.XMV.XMV-Pullout' PickupForce="AssaultRiflePickup" diff --git a/sources/Weapons/Playable/Incendiary/Flamethrower/NiceDamTypeFT.uc b/sources/Weapons/Playable/Incendiary/Flamethrower/NiceDamTypeFT.uc index 8380434..488ee21 100644 --- a/sources/Weapons/Playable/Incendiary/Flamethrower/NiceDamTypeFT.uc +++ b/sources/Weapons/Playable/Incendiary/Flamethrower/NiceDamTypeFT.uc @@ -2,6 +2,6 @@ class NiceDamTypeFT extends NiceDamTypeFire abstract; defaultproperties { - WeaponClass=Class'NicePack.NiceFlameThrower' + WeaponClass=class'NiceFlameThrower' DeathString="%k incinerated %o (Flamethrower)." } diff --git a/sources/Weapons/Playable/Incendiary/Flamethrower/NiceFlameBurstFire.uc b/sources/Weapons/Playable/Incendiary/Flamethrower/NiceFlameBurstFire.uc index 98a1bc3..2638951 100644 --- a/sources/Weapons/Playable/Incendiary/Flamethrower/NiceFlameBurstFire.uc +++ b/sources/Weapons/Playable/Incendiary/Flamethrower/NiceFlameBurstFire.uc @@ -3,6 +3,6 @@ class NiceFlameBurstFire extends ScrnFlameBurstFire ; defaultproperties { - AmmoClass=Class'NicePack.NiceFlameAmmo' - ProjectileClass=Class'NicePack.NiceFlameTendril' + AmmoClass=class'NiceFlameAmmo' + ProjectileClass=class'NiceFlameTendril' } diff --git a/sources/Weapons/Playable/Incendiary/Flamethrower/NiceFlameNade.uc b/sources/Weapons/Playable/Incendiary/Flamethrower/NiceFlameNade.uc index 0dd6ea2..5fe0f45 100644 --- a/sources/Weapons/Playable/Incendiary/Flamethrower/NiceFlameNade.uc +++ b/sources/Weapons/Playable/Incendiary/Flamethrower/NiceFlameNade.uc @@ -109,6 +109,6 @@ simulated function Explode(vector HitLocation, vector HitNormal){ } defaultproperties { - AvoidMarkerClass=Class'NicePack.NiceAvoidMarkerFlame' - MyDamageType=Class'NicePack.NiceDamTypeFlameNade' + AvoidMarkerClass=class'NiceAvoidMarkerFlame' + MyDamageType=class'NiceDamTypeFlameNade' } diff --git a/sources/Weapons/Playable/Incendiary/Flamethrower/NiceFlameTendril.uc b/sources/Weapons/Playable/Incendiary/Flamethrower/NiceFlameTendril.uc index 3fbefec..732747f 100644 --- a/sources/Weapons/Playable/Incendiary/Flamethrower/NiceFlameTendril.uc +++ b/sources/Weapons/Playable/Incendiary/Flamethrower/NiceFlameTendril.uc @@ -72,5 +72,5 @@ simulated function HurtRadius( float DamageAmount, float DamageRadius, class 0) Vehicle(Victims).DriverRadiusDamage(DamageAmount, DamageRadius, InstigatorController, - DamageType,//Class'NicePack.NiceDamTypeFlareProjectileFire', + DamageType,//class'NiceDamTypeFlareProjectileFire', Momentum, HitLocation); if( Role == ROLE_Authority && KFMonsterVictim != none && KFMonsterVictim.Health <= 0 ) @@ -146,6 +146,6 @@ simulated function HurtRadius( float DamageAmount, float DamageRadius, class 0; + + bleedDamage = bleedLevel * 7; + // if pawn owner is dead or bleed count is done - destroy + if (!amAlive || maxBleedCount < 0 || bleedDamage < 1.0) + { + Destroy(); + return; + } + + maxBleedCount--; + + if (stalker != none) + locpawn.TakeDamage(bleedDamage, stalker, locpawn.Location, + vect(0, 0, 0), dmtype_bleed); + else + locpawn.TakeDamage(bleedDamage, locpawn, locpawn.Location, + vect(0, 0, 0), dmtype_bleed); + + if (locpawn.isA('KFPawn')) + { + KFPawn(locpawn).HealthToGive -= 2 * bleedLevel; + } +} + + +// cleanup +function Destroyed() +{ + if (stalker != none) + stalker = none; + + super.Destroyed(); +} + + +defaultproperties +{ + maxBleedCount=7 + fBleedPeriod=1.500000 +} \ No newline at end of file diff --git a/sources/Zeds/Mean/MeanZombieCrawler.uc b/sources/Zeds/Mean/MeanZombieCrawler.uc index 0505ca6..41288e6 100644 --- a/sources/Zeds/Mean/MeanZombieCrawler.uc +++ b/sources/Zeds/Mean/MeanZombieCrawler.uc @@ -21,22 +21,31 @@ function bool MeleeDamageTarget(int hitdamage, vector pushdir) { Poison(KFHumanPawn(Controller.Target)); return result; } -function Poison(KFHumanPawn poisonedPawn){ + +function Poison(KFHumanPawn poisonedPawn) +{ local Inventory I; local bool bFoundPoison; - if(poisonedPawn.Inventory != none){ - for(I = poisonedPawn.Inventory; I != none; I = I.Inventory) - if(I != none && MeanPoisonInventory(I) != none){ + + if (poisonedPawn.Inventory != none) + { + for (I = poisonedPawn.Inventory; I != none; I = I.Inventory) + { + if (MeanPoisonInventory(I) != none) + { bFoundPoison = true; MeanPoisonInventory(I).poisonStartTime = Level.TimeSeconds; - } + } + } } - if(!bFoundPoison){ - I = Controller.Spawn(class(DynamicLoadObject("NicePack.MeanPoisonInventory", Class'Class'))); + if (!bFoundPoison) + { + I = Controller.Spawn(class(DynamicLoadObject(string(class'MeanPoisonInventory'), class'Class'))); MeanPoisonInventory(I).poisonStartTime = Level.TimeSeconds; I.GiveTo(poisonedPawn); } } + defaultproperties { GroundSpeed=190.000000 diff --git a/sources/Zeds/Mean/MeanZombieHusk.uc b/sources/Zeds/Mean/MeanZombieHusk.uc index 35a44ab..b0ada50 100644 --- a/sources/Zeds/Mean/MeanZombieHusk.uc +++ b/sources/Zeds/Mean/MeanZombieHusk.uc @@ -48,10 +48,10 @@ function RangedAttack(Actor A) { defaultproperties { maxNormalShots=3 - HuskFireProjClass=Class'NicePack.MeanHuskFireProjectile' + AmmunitionClass=class'MeanZombieHuskAmmo' remainingStuns=1 MenuName="Mean Husk" - ControllerClass=Class'NicePack.MeanZombieHuskController' + ControllerClass=class'MeanZombieHuskController' Skins(0)=Texture'NicePackT.MonsterMeanHusk.burns_tatters' Skins(1)=Shader'NicePackT.MonsterMeanHusk.burns_shdr' } diff --git a/sources/Zeds/Mean/MeanZombieHuskAmmo.uc b/sources/Zeds/Mean/MeanZombieHuskAmmo.uc new file mode 100644 index 0000000..9264e0f --- /dev/null +++ b/sources/Zeds/Mean/MeanZombieHuskAmmo.uc @@ -0,0 +1,7 @@ +class MeanZombieHuskAmmo extends NiceZombieHuskAmmo; + + +defaultproperties +{ + ProjectileClass=class'MeanHuskFireProjectile' +} \ No newline at end of file diff --git a/sources/Zeds/Mean/MeanZombieStalker.uc b/sources/Zeds/Mean/MeanZombieStalker.uc index 53111d2..b68ed69 100644 --- a/sources/Zeds/Mean/MeanZombieStalker.uc +++ b/sources/Zeds/Mean/MeanZombieStalker.uc @@ -190,20 +190,49 @@ function bool MeleeDamageTarget(int hitdamage, vector pushdir) if (result && targetPawn != none) { - if (targetPawn.ShieldStrength > 100) - return result; - else if (targetPawn.ShieldStrength < 0) - effectStrenght = 1.0; - else - effectStrenght = (100 - targetPawn.ShieldStrength) * 0.01; + if (targetPawn.ShieldStrength > 100) + return result; + else if (targetPawn.ShieldStrength <= 0) + effectStrenght = 1.0; + else + effectStrenght = (100 - targetPawn.ShieldStrength) * 0.01; - class'MeanReplicationInfo'.static - .findSZri(targetPawn.PlayerReplicationInfo) - .setBleeding(Self, effectStrenght); + MakeBleed(targetPawn, effectStrenght); } return result; } +final private function MakeBleed(NiceHumanPawn poorpawn, coerce int effectStrenght) +{ + local Inventory I; + local MeanBleedInventory bleedinv; + local bool bFoundPoison; + + if (poorpawn.Inventory != none) + { + for (I = poorpawn.Inventory; I != none; I = I.Inventory) + { + if (MeanBleedInventory(I) != none) + { + bleedinv = MeanBleedInventory(I); + bFoundPoison = true; + bleedinv.stalker = self; + bleedinv.bleedLevel = effectStrenght; + // reset bleed count + bleedinv.maxBleedCount = bleedinv.default.maxBleedCount; + } + } + } + if (!bFoundPoison) + { + I = Controller.Spawn(class(DynamicLoadObject(string(class'MeanBleedInventory'), class'Class'))); + bleedinv = MeanBleedInventory(I); + bleedinv.stalker = self; + bleedinv.bleedLevel = effectStrenght; + bleedinv.GiveTo(poorpawn); + } +} + function RemoveHead() { Super(NiceMonster).RemoveHead(); diff --git a/sources/Zeds/MeanReplicationInfo.uc b/sources/Zeds/MeanReplicationInfo.uc index a6684a5..d25c2c7 100644 --- a/sources/Zeds/MeanReplicationInfo.uc +++ b/sources/Zeds/MeanReplicationInfo.uc @@ -1,82 +1,4 @@ -// Copy pasted from super zombies mutator with small alterations +// no use atm class MeanReplicationInfo extends ReplicationInfo; -struct BleedingState { - var float nextBleedTime; - var Pawn instigator; - var int count; -}; -var PlayerReplicationInfo ownerPRI; -var bool isBleeding; -var int maxBleedCount; -var BleedingState bleedState; -var float bleedPeriod; -var float bleedLevel; -replication { - reliable if (bNetDirty && Role == ROLE_Authority) - isBleeding, ownerPRI; -} -// Returns bleed damage, corresponding to given bleed level and damage scale. -// Rand(7) should be used as a scale. -// Separate function created to allow for lowest/highest damage value computing. -function int calcBleedDamage(float level, int scale){ - return level * (3 + scale); -} -function Tick(float DeltaTime) { - local PlayerController ownerCtrllr; - local bool amAlive; - local float bleedDamage; - ownerCtrllr = PlayerController(Owner); - amAlive = ownerCtrllr != none && ownerCtrllr.Pawn != none && ownerCtrllr.Pawn.Health > 0; - if(amAlive && bleedState.count > 0) { - if(bleedState.nextBleedTime < Level.TimeSeconds) { - bleedState.count--; - bleedState.nextBleedTime+= bleedPeriod; - // Fix bleeding when stalker dies - bleedDamage = calcBleedDamage(bleedLevel, rand(7)); - if(bleedDamage < 1.0) - stopBleeding(); - if(bleedState.instigator != none) - ownerCtrllr.Pawn.TakeDamage(bleedDamage, bleedState.instigator, ownerCtrllr.Pawn.Location, - vect(0, 0, 0), class'NiceDamTypeStalkerBleed'); - else - ownerCtrllr.Pawn.TakeDamage(bleedDamage, ownerCtrllr.Pawn, ownerCtrllr.Pawn.Location, - vect(0, 0, 0), class'NiceDamTypeStalkerBleed'); - if (ownerCtrllr.Pawn.isA('KFPawn')) { - KFPawn(ownerCtrllr.Pawn).HealthToGive -= 2 * bleedLevel; - } - } - } else { - isBleeding= false; - } -} -function stopBleeding(){ - isBleeding = false; - bleedState.count = 0; -} -function setBleeding(Pawn instigator, float effectStrenght) { - // Can max possible damage do anything? If no, then don't even bother. - if(calcBleedDamage(effectStrenght, 7) < 1.0) - return; - bleedState.instigator = instigator; - bleedState.count = maxBleedCount; - bleedLevel = effectStrenght; - if(!isBleeding){ - bleedState.nextBleedTime = Level.TimeSeconds; - isBleeding = true; - } -} -static function MeanReplicationInfo findSZri(PlayerReplicationInfo pri) { - local MeanReplicationInfo repInfo; - if(pri == none) - return none; - foreach pri.DynamicActors(Class'MeanReplicationInfo', repInfo) - if(repInfo.ownerPRI == pri) - return repInfo; - - return none; -} -defaultproperties -{ - maxBleedCount=7 - bleedPeriod=1.500000 -} + +defaultproperties{} \ No newline at end of file diff --git a/sources/Zeds/Nice/NiceHuskFireProjectile.uc b/sources/Zeds/Nice/NiceHuskFireProjectile.uc index 1de5787..1fac2c4 100644 --- a/sources/Zeds/Nice/NiceHuskFireProjectile.uc +++ b/sources/Zeds/Nice/NiceHuskFireProjectile.uc @@ -32,12 +32,18 @@ simulated function PostBeginPlay() } super(ROBallisticProjectile).PostBeginPlay(); } + simulated function Explode(vector HitLocation, vector HitNormal) { local Controller C; local PlayerController LocalPlayer; local float ShakeScale; - bHasExploded = True; + + // fix for multiple explosions during slomo + if (bHasExploded) + return; + bHasExploded = true; + // Don't explode if this is a dud if( bDud ) { @@ -75,6 +81,7 @@ simulated function Explode(vector HitLocation, vector HitNormal) } } } + // Get the shake amount for when this projectile explodes simulated function float GetShakeScale(vector ViewLocation, vector EventLocation) { @@ -274,7 +281,7 @@ defaultproperties MaxSpeed=2200.000000 Damage=25.000000 DamageRadius=150.000000 - MyDamageType=Class'NicePack.NiceDamTypeFire' + MyDamageType=class'NiceDamTypeFire' ExplosionDecal=Class'KFMod.FlameThrowerBurnMark' LightType=LT_Steady LightHue=45 diff --git a/sources/Zeds/Nice/NiceZombieBloat.uc b/sources/Zeds/Nice/NiceZombieBloat.uc index 2e2a315..c3ab99b 100644 --- a/sources/Zeds/Nice/NiceZombieBloat.uc +++ b/sources/Zeds/Nice/NiceZombieBloat.uc @@ -158,7 +158,12 @@ function SpawnTwoShots() { local vector X,Y,Z, FireStart; local rotator FireRotation; - if( Controller!=none && KFDoorMover(Controller.Target)!=none ) + + // check this from the very start to prevent any log spam + if (Controller == none || IsInState('ZombieDying')) + return; + + if (KFDoorMover(Controller.Target)!=none ) { Controller.Target.TakeDamage(22,Self,Location,vect(0,0,0),Class'DamTypeVomit'); return; @@ -195,7 +200,10 @@ simulated function Tick(float deltatime) { local vector BileExplosionLoc; local FleshHitEmitter GibBileExplosion; + Super.tick(deltatime); + + if( Role == ROLE_Authority && bMovingPukeAttack ) { // Keep moving toward the target until the timer runs out (anim finishes) @@ -238,7 +246,8 @@ simulated function Tick(float deltatime) { if ( !class'GameInfo'.static.UseLowGore() ) { - BileExplosionLoc = self.Location; + // remove self. + BileExplosionLoc = Location; BileExplosionLoc.z += (CollisionHeight - (CollisionHeight * 0.5)); if (bDecapitated) @@ -253,10 +262,10 @@ simulated function Tick(float deltatime) } else { - BileExplosionLoc = self.Location; + BileExplosionLoc = Location; BileExplosionLoc.z += (CollisionHeight - (CollisionHeight * 0.5)); - GibBileExplosion = Spawn(class 'LowGoreBileExplosion',self,, BileExplosionLoc ); + GibBileExplosion = Spawn(class'LowGoreBileExplosion',self,, BileExplosionLoc ); bPlayBileSplash = true; } } diff --git a/sources/Zeds/Nice/NiceZombieBoss.uc b/sources/Zeds/Nice/NiceZombieBoss.uc index f57f390..8384766 100644 --- a/sources/Zeds/Nice/NiceZombieBoss.uc +++ b/sources/Zeds/Nice/NiceZombieBoss.uc @@ -1809,7 +1809,7 @@ defaultproperties DetachedSpecialArmClass=Class'KFChar.SeveredRocketArmPatriarch' HitSound(0)=SoundGroup'KF_EnemiesFinalSnd.Patriarch.Kev_Pain' DeathSound(0)=SoundGroup'KF_EnemiesFinalSnd.Patriarch.Kev_Death' - ControllerClass=Class'NicePack.NiceZombieBossController' + ControllerClass=class'NiceZombieBossController' AmbientSound=Sound'KF_BasePatriarch.Idle.Kev_IdleLoop' Mesh=SkeletalMesh'KF_Freaks_Trip.Patriarch_Freak' Skins(0)=Combiner'KF_Specimens_Trip_T.gatling_cmb' diff --git a/sources/Zeds/Nice/NiceZombieBrute.uc b/sources/Zeds/Nice/NiceZombieBrute.uc index 6d5984b..8e6c7f1 100644 --- a/sources/Zeds/Nice/NiceZombieBrute.uc +++ b/sources/Zeds/Nice/NiceZombieBrute.uc @@ -512,5 +512,5 @@ defaultproperties DetachedArmClass=Class'ScrnZedPack.SeveredArmBrute' DetachedLegClass=Class'ScrnZedPack.SeveredLegBrute' DetachedHeadClass=Class'ScrnZedPack.SeveredHeadBrute' - ControllerClass=Class'NicePack.NiceZombieBruteController' + ControllerClass=class'NiceZombieBruteController' } diff --git a/sources/Zeds/Nice/NiceZombieClot.uc b/sources/Zeds/Nice/NiceZombieClot.uc index 0e73657..57875e8 100644 --- a/sources/Zeds/Nice/NiceZombieClot.uc +++ b/sources/Zeds/Nice/NiceZombieClot.uc @@ -1,14 +1,17 @@ // Zombie Monster for KF Invasion gametype class NiceZombieClot extends NiceZombieClotBase; + #exec OBJ LOAD FILE=KF_Freaks_Trip.ukx #exec OBJ LOAD FILE=KF_Specimens_Trip_T.utx #exec OBJ LOAD FILE=MeanZedSkins.utx + function ClawDamageTarget() { local vector PushDir; local KFPawn KFP; local float UsedMeleeDamage; + // TODO Controller fix if( MeleeDamage > 1 ) { UsedMeleeDamage = (MeleeDamage - (MeleeDamage * 0.05)) + (MeleeDamage * (FRand() * 0.1)); @@ -40,6 +43,7 @@ function ClawDamageTarget() } } } + function RangedAttack(Actor A) { if ( bShotAnim || Physics == PHYS_Swimming) diff --git a/sources/Zeds/Nice/NiceZombieCrawler.uc b/sources/Zeds/Nice/NiceZombieCrawler.uc index 027529c..a4ce6cf 100644 --- a/sources/Zeds/Nice/NiceZombieCrawler.uc +++ b/sources/Zeds/Nice/NiceZombieCrawler.uc @@ -37,7 +37,7 @@ event Bump(actor Other) // TODO: is there a better way if(bPouncing && KFHumanPawn(Other)!=none ) { - KFHumanPawn(Other).TakeDamage(((MeleeDamage - (MeleeDamage * 0.05)) + (MeleeDamage * (FRand() * 0.1))), self ,self.Location,self.velocity, class 'NicePack.NiceZedMeleeDamageType'); + KFHumanPawn(Other).TakeDamage(((MeleeDamage - (MeleeDamage * 0.05)) + (MeleeDamage * (FRand() * 0.1))), self ,self.Location,self.velocity, class'NiceZedMeleeDamageType'); if (KFHumanPawn(Other).Health <=0) { //TODO - move this to humanpawn.takedamage? Also see KFMonster.MeleeDamageTarget @@ -69,6 +69,7 @@ simulated function int DoAnimAction( name AnimName ) } return Super.DoAnimAction(AnimName); } + simulated event SetAnimAction(name NewAction) { local int meleeAnimIndex; @@ -136,7 +137,7 @@ defaultproperties ChallengeSound(1)=SoundGroup'KF_EnemiesFinalSnd.Crawler.Crawler_Acquire' ChallengeSound(2)=SoundGroup'KF_EnemiesFinalSnd.Crawler.Crawler_Acquire' ChallengeSound(3)=SoundGroup'KF_EnemiesFinalSnd.Crawler.Crawler_Acquire' - ControllerClass=Class'NicePack.NiceZombieCrawlerController' + ControllerClass=class'NiceZombieCrawlerController' AmbientSound=Sound'KF_BaseCrawler.Crawler_Idle' Mesh=SkeletalMesh'KF_Freaks_Trip.Crawler_Freak' Skins(0)=Combiner'KF_Specimens_Trip_T.crawler_cmb' diff --git a/sources/Zeds/Nice/NiceZombieCrawlerBase.uc b/sources/Zeds/Nice/NiceZombieCrawlerBase.uc index a56ead9..87eb48b 100644 --- a/sources/Zeds/Nice/NiceZombieCrawlerBase.uc +++ b/sources/Zeds/Nice/NiceZombieCrawlerBase.uc @@ -1,7 +1,7 @@ // Zombie Monster for KF Invasion gametype class NiceZombieCrawlerBase extends NiceMonster abstract; -#exec OBJ LOAD FILE= +// #exec OBJ LOAD FILE= var() float PounceSpeed; var bool bPouncing; var(Anims) name MeleeAirAnims[3]; // Attack anims for when flying through the air @@ -9,101 +9,7 @@ var(Anims) name MeleeAirAnims[3]; // Attack anims for when flying through th // NOTE: All Code resides in the child class(this class was only created to // eliminate hitching caused by loading default properties during play) //------------------------------------------------------------------------------- -function bool DoPounce() -{ - if ( bZapped || bIsCrouched || bWantsToCrouch || (Physics != PHYS_Walking) || VSize(Location - Controller.Target.Location) > (MeleeRange * 5) ) - return false; - Velocity = Normal(Controller.Target.Location-Location)*PounceSpeed; - Velocity.Z = JumpZ; - SetPhysics(PHYS_Falling); - ZombieSpringAnim(); - bPouncing=true; - return true; -} -simulated function ZombieSpringAnim() -{ - SetAnimAction('ZombieSpring'); -} -event Landed(vector HitNormal) -{ - bPouncing=false; - super.Landed(HitNormal); -} -event Bump(actor Other) -{ - // TODO: is there a better way - if(bPouncing && KFHumanPawn(Other)!=none ) - { - KFHumanPawn(Other).TakeDamage(((MeleeDamage - (MeleeDamage * 0.05)) + (MeleeDamage * (FRand() * 0.1))), self ,self.Location,self.velocity, class 'NicePack.NiceZedMeleeDamageType'); - if (KFHumanPawn(Other).Health <=0) - { - //TODO - move this to humanpawn.takedamage? Also see KFMonster.MeleeDamageTarget - KFHumanPawn(Other).SpawnGibs(self.rotation, 1); - } - //After impact, there'll be no momentum for further bumps - bPouncing=false; - } -} -// Blend his attacks so he can hit you in mid air. -simulated function int DoAnimAction( name AnimName ) -{ - if( AnimName=='InAir_Attack1' || AnimName=='InAir_Attack2' ) - { - AnimBlendParams(1, 1.0, 0.0,, FireRootBone); - PlayAnim(AnimName,, 0.0, 1); - return 1; - } - if( AnimName=='HitF' ) - { - AnimBlendParams(1, 1.0, 0.0,, NeckBone); - PlayAnim(AnimName,, 0.0, 1); - return 1; - } - if( AnimName=='ZombieSpring' ) - { - PlayAnim(AnimName,,0.02); - return 0; - } - return Super.DoAnimAction(AnimName); -} -simulated event SetAnimAction(name NewAction) -{ - local int meleeAnimIndex; - if( NewAction=='' ) - Return; - if(NewAction == 'Claw') - { - meleeAnimIndex = Rand(2); - if( Physics == PHYS_Falling ) - { - NewAction = MeleeAirAnims[meleeAnimIndex]; - } - else - { - NewAction = meleeAnims[meleeAnimIndex]; - } - } - ExpectingChannel = DoAnimAction(NewAction); - if( AnimNeedsWait(NewAction) ) - { - bWaitForAnim = true; - } - if( Level.NetMode!=NM_Client ) - { - AnimAction = NewAction; - bResetAnimAct = True; - ResetAnimActTime = Level.TimeSeconds+0.3; - } -} -// The animation is full body and should set the bWaitForAnim flag -simulated function bool AnimNeedsWait(name TestAnim) -{ - if( TestAnim == 'ZombieSpring' || TestAnim == 'DoorBash' ) - { - return true; - } - return false; -} + defaultproperties { PounceSpeed=330.000000 diff --git a/sources/Zeds/Nice/NiceZombieFleshPound.uc b/sources/Zeds/Nice/NiceZombieFleshPound.uc index f5127ca..539ce75 100644 --- a/sources/Zeds/Nice/NiceZombieFleshPound.uc +++ b/sources/Zeds/Nice/NiceZombieFleshPound.uc @@ -132,7 +132,8 @@ function TakeDamageClient(int Damage, Pawn InstigatedBy, Vector Hitlocation, Vec PostNetReceive(); Super.TakeDamageClient(Damage, instigatedBy, hitLocation, momentum, damageType, headshotLevel, lockonTime); TwoSecondDamageTotal += OldHealth - Health; - if( !bDecapitated && TwoSecondDamageTotal > RageDamageThreshold && !bChargingPlayer && + // fixed their one hit kill ability when you spam attack during hit animation + if( !bDecapitated && TwoSecondDamageTotal > RageDamageThreshold && !bChargingPlayer && !bShotAnim && (!(bWasBurning && bCrispified) || bFrustrated) ) StartChargingFP(InstigatedBy); } @@ -452,7 +453,7 @@ function SpinDamage(actor Target) } if (Target !=none && Target.IsA('KFDoorMover')) { - Target.TakeDamage(DamageAmount , self ,HitLocation,pushdir, class 'NicePack.NiceZedMeleeDamageType'); + Target.TakeDamage(DamageAmount , self ,HitLocation,pushdir, class'NiceZedMeleeDamageType'); PlaySound(MeleeAttackHitSound, SLOT_Interact, 1.25); } if (KFHumanPawn(Target)!=none) @@ -462,7 +463,7 @@ function SpinDamage(actor Target) HumanTarget.Controller.ShakeView(RotMag, RotRate, RotTime, OffsetMag, OffsetRate, OffsetTime); //TODO - line below was KFPawn. Does this whole block need to be KFPawn, or is it OK as KFHumanPawn? - KFHumanPawn(Target).TakeDamage(DamageAmount, self ,HitLocation,pushdir, class 'NicePack.NiceZedMeleeDamageType'); + KFHumanPawn(Target).TakeDamage(DamageAmount, self ,HitLocation,pushdir, class'NiceZedMeleeDamageType'); if (KFHumanPawn(Target).Health <=0) { @@ -574,7 +575,7 @@ defaultproperties ChallengeSound(1)=SoundGroup'KF_EnemiesFinalSnd.Fleshpound.FP_Challenge' ChallengeSound(2)=SoundGroup'KF_EnemiesFinalSnd.Fleshpound.FP_Challenge' ChallengeSound(3)=SoundGroup'KF_EnemiesFinalSnd.Fleshpound.FP_Challenge' - ControllerClass=Class'NicePack.NiceZombieFleshpoundController' + ControllerClass=class'NiceZombieFleshpoundController' AmbientSound=Sound'KF_BaseFleshpound.FP_IdleLoop' Mesh=SkeletalMesh'KF_Freaks_Trip.FleshPound_Freak' Skins(0)=Combiner'KF_Specimens_Trip_T.fleshpound_cmb' diff --git a/sources/Zeds/Nice/NiceZombieGorefast.uc b/sources/Zeds/Nice/NiceZombieGorefast.uc index e889db8..6b75e97 100644 --- a/sources/Zeds/Nice/NiceZombieGorefast.uc +++ b/sources/Zeds/Nice/NiceZombieGorefast.uc @@ -300,7 +300,7 @@ defaultproperties ChallengeSound(1)=SoundGroup'KF_EnemiesFinalSnd.GoreFast.Gorefast_Challenge' ChallengeSound(2)=SoundGroup'KF_EnemiesFinalSnd.GoreFast.Gorefast_Challenge' ChallengeSound(3)=SoundGroup'KF_EnemiesFinalSnd.GoreFast.Gorefast_Challenge' - ControllerClass=Class'NicePack.NiceZombieGorefastController' + ControllerClass=class'NiceZombieGorefastController' AmbientSound=Sound'KF_BaseGorefast.Gorefast_Idle' Mesh=SkeletalMesh'KF_Freaks_Trip.GoreFast_Freak' Skins(0)=Combiner'KF_Specimens_Trip_T.gorefast_cmb' diff --git a/sources/Zeds/Nice/NiceZombieHusk.uc b/sources/Zeds/Nice/NiceZombieHusk.uc index aa95471..c1a981a 100644 --- a/sources/Zeds/Nice/NiceZombieHusk.uc +++ b/sources/Zeds/Nice/NiceZombieHusk.uc @@ -21,14 +21,20 @@ simulated function HeatTick(){ } super.HeatTick(); } + simulated function PostBeginPlay() { // Difficulty Scaling - if (Level.Game != none && !bDiffAdjusted){ + if (Level.Game != none && !bDiffAdjusted) + { ProjectileFireInterval = default.ProjectileFireInterval * 0.6; } + // and why TWI removed this feature... + MyAmmo = spawn(AmmunitionClass); + super.PostBeginPlay(); } + // don't interrupt the bloat while he is puking simulated function bool HitCanInterruptAction() { @@ -146,14 +152,14 @@ function SpawnTwoShots() if (!SavedFireProperties.bInitialized) { - SavedFireProperties.AmmoClass = class'SkaarjAmmo'; - SavedFireProperties.ProjectileClass = HuskFireProjClass; - SavedFireProperties.WarnTargetPct = 1; - SavedFireProperties.MaxRange = 65535; - SavedFireProperties.bTossed = false; - SavedFireProperties.bTrySplash = true; - SavedFireProperties.bLeadTarget = true; - SavedFireProperties.bInstantHit = false; + SavedFireProperties.AmmoClass = MyAmmo.Class; + SavedFireProperties.ProjectileClass = MyAmmo.ProjectileClass; + SavedFireProperties.WarnTargetPct = MyAmmo.WarnTargetPct; + SavedFireProperties.MaxRange = MyAmmo.MaxRange; + SavedFireProperties.bTossed = MyAmmo.bTossed; + SavedFireProperties.bTrySplash = MyAmmo.bTrySplash; + SavedFireProperties.bLeadTarget = MyAmmo.bLeadTarget; + SavedFireProperties.bInstantHit = MyAmmo.bInstantHit; SavedFireProperties.bInitialized = true; } @@ -173,7 +179,7 @@ function SpawnTwoShots() } // added projectile owner... - Spawn(HuskFireProjClass, self, , FireStart, FireRotation); + Spawn(SavedFireProperties.ProjectileClass, self, , FireStart, FireRotation); // Turn extra collision back on ToggleAuxCollision(true); @@ -379,7 +385,7 @@ static simulated function PreCacheMaterials(LevelInfo myLevel) } defaultproperties { - HuskFireProjClass=Class'NicePack.NiceHuskFireProjectile' + AmmunitionClass=class'NiceZombieHuskAmmo' stunLoopStart=0.080000 stunLoopEnd=0.900000 idleInsertFrame=0.930000 @@ -398,7 +404,7 @@ defaultproperties ChallengeSound(1)=SoundGroup'KF_EnemiesFinalSnd.Husk.Husk_Challenge' ChallengeSound(2)=SoundGroup'KF_EnemiesFinalSnd.Husk.Husk_Challenge' ChallengeSound(3)=SoundGroup'KF_EnemiesFinalSnd.Husk.Husk_Challenge' - ControllerClass=Class'NicePack.NiceZombieHuskController' + ControllerClass=class'NiceZombieHuskController' AmbientSound=Sound'KF_BaseHusk.Husk_IdleLoop' Mesh=SkeletalMesh'KF_Freaks2_Trip.Burns_Freak' Skins(0)=Texture'KF_Specimens_Trip_T_Two.burns.burns_tatters' diff --git a/sources/Zeds/Nice/NiceZombieHuskAmmo.uc b/sources/Zeds/Nice/NiceZombieHuskAmmo.uc new file mode 100644 index 0000000..47f21ba --- /dev/null +++ b/sources/Zeds/Nice/NiceZombieHuskAmmo.uc @@ -0,0 +1,13 @@ +class NiceZombieHuskAmmo extends Ammunition; + + +defaultproperties +{ + ProjectileClass=class'NiceHuskFireProjectile' + WarnTargetPct=1 + MaxRange=65535 + bTossed=False + bTrySplash=True + bLeadTarget=True + bInstantHit=False +} \ No newline at end of file diff --git a/sources/Zeds/Nice/NiceZombieScrake.uc b/sources/Zeds/Nice/NiceZombieScrake.uc index f489658..190e4fb 100644 --- a/sources/Zeds/Nice/NiceZombieScrake.uc +++ b/sources/Zeds/Nice/NiceZombieScrake.uc @@ -651,7 +651,7 @@ defaultproperties ChallengeSound(1)=SoundGroup'KF_EnemiesFinalSnd.Scrake.Scrake_Challenge' ChallengeSound(2)=SoundGroup'KF_EnemiesFinalSnd.Scrake.Scrake_Challenge' ChallengeSound(3)=SoundGroup'KF_EnemiesFinalSnd.Scrake.Scrake_Challenge' - ControllerClass=Class'NicePack.NiceZombieScrakeController' + ControllerClass=class'NiceZombieScrakeController' AmbientSound=Sound'KF_BaseScrake.Chainsaw.Scrake_Chainsaw_Idle' Mesh=SkeletalMesh'KF_Freaks_Trip.Scrake_Freak' Skins(0)=Shader'KF_Specimens_Trip_T.scrake_FB' diff --git a/sources/Zeds/Nice/NiceZombieScrakeBase.uc b/sources/Zeds/Nice/NiceZombieScrakeBase.uc index 75ec86a..6ccd9f6 100644 --- a/sources/Zeds/Nice/NiceZombieScrakeBase.uc +++ b/sources/Zeds/Nice/NiceZombieScrakeBase.uc @@ -2,7 +2,7 @@ // He's not quite as speedy as the other Zombies, But his attacks are TRULY damaging. class NiceZombieScrakeBase extends NiceMonster abstract; -#exec OBJ LOAD FILE= +// #exec OBJ LOAD FILE= var(Sounds) sound SawAttackLoopSound; // THe sound for the saw revved up, looping var(Sounds) sound ChainSawOffSound; //The sound of this zombie dieing without a head var bool bCharging; // Scrake charges when his health gets low diff --git a/sources/Zeds/Nice/NiceZombieSick.uc b/sources/Zeds/Nice/NiceZombieSick.uc index 0d41bf5..fa91b1b 100644 --- a/sources/Zeds/Nice/NiceZombieSick.uc +++ b/sources/Zeds/Nice/NiceZombieSick.uc @@ -237,8 +237,8 @@ static simulated function PreCacheMaterials(LevelInfo myLevel) } defaultproperties { - DetachedArmClass=Class'NicePack.NiceSeveredArmSick' - DetachedLegClass=Class'NicePack.NiceSeveredLegSick' - DetachedHeadClass=Class'NicePack.NiceSeveredHeadSick' - ControllerClass=Class'NicePack.NiceSickZombieController' + DetachedArmClass=class'NiceSeveredArmSick' + DetachedLegClass=class'NiceSeveredLegSick' + DetachedHeadClass=class'NiceSeveredHeadSick' + ControllerClass=class'NiceSickZombieController' } diff --git a/sources/Zeds/Nice/NiceZombieSiren.uc b/sources/Zeds/Nice/NiceZombieSiren.uc index 8d5f6ae..ad5b69b 100644 --- a/sources/Zeds/Nice/NiceZombieSiren.uc +++ b/sources/Zeds/Nice/NiceZombieSiren.uc @@ -77,48 +77,62 @@ function DiscardCurrentScreamBall(){ currScreamTiming = -1; } } + function RangedAttack(Actor A) { local int LastFireTime; local float Dist; - if ( bShotAnim ) - return; + + if (bShotAnim) + return; Dist = VSize(A.Location - Location); - if ( Physics == PHYS_Swimming ) + + if (Physics == PHYS_Swimming) { - SetAnimAction('Claw'); - bShotAnim = true; - LastFireTime = Level.TimeSeconds; + SetAnimAction('Claw'); + bShotAnim = true; + LastFireTime = Level.TimeSeconds; } - else if(Dist < MeleeRange + CollisionRadius + A.CollisionRadius && A != Self) + else if (Dist < MeleeRange + CollisionRadius + A.CollisionRadius && A != Self) { - bShotAnim = true; - LastFireTime = Level.TimeSeconds; - SetAnimAction('Claw'); - Controller.bPreparingMove = true; - Acceleration = vect(0,0,0); + bShotAnim = true; + LastFireTime = Level.TimeSeconds; + SetAnimAction('Claw'); + Controller.bPreparingMove = true; + Acceleration = vect(0,0,0); } - else if( Dist <= ScreamRadius && !bDecapitated && !bZapped ) + // ok se we DO NOT want to scream at other nice zeds + else if (!bNotAHuman() && Dist <= ScreamRadius && !bDecapitated && !bZapped) { - bShotAnim=true; - SetAnimAction('Siren_Scream'); - if(screamStartTime > 0) + bShotAnim = true; + SetAnimAction('Siren_Scream'); + if (screamStartTime > 0) DiscardCurrentScreamBall(); - currScreamTiming = 0; - screamStartTime = Level.TimeSeconds; - // Only stop moving if we are close - if( Dist < ScreamRadius * 0.25 ) - { - Controller.bPreparingMove = true; - Acceleration = vect(0,0,0); - } - else - { - Acceleration = AccelRate * Normal(A.Location - Location); - } - Acceleration.Z = FMin(Acceleration.Z, 0.0f); + currScreamTiming = 0; + screamStartTime = Level.TimeSeconds; + // Only stop moving if we are close + if (Dist < ScreamRadius * 0.25) + { + Controller.bPreparingMove = true; + Acceleration = vect(0,0,0); + } + else + { + Acceleration = AccelRate * Normal(A.Location - Location); + } + Acceleration.Z = FMin(Acceleration.Z, 0.0f); } } + +final private function bool bNotAHuman() +{ + if (Controller == none || Controller.Enemy == none) + return false; + + // log("Zed enemy classname was " $ Controller.Enemy.class); + return ClassIsChildOf(Controller.Enemy.class, class'NiceMonster'); +} + simulated function int DoAnimAction( name AnimName ) { if( AnimName=='Siren_Scream' || AnimName=='Siren_Bite' || AnimName=='Siren_Bite2' ) @@ -489,7 +503,7 @@ defaultproperties DetachedHeadClass=Class'KFChar.SeveredHeadSiren' HitSound(0)=SoundGroup'KF_EnemiesFinalSnd.siren.Siren_Pain' DeathSound(0)=SoundGroup'KF_EnemiesFinalSnd.siren.Siren_Death' - ControllerClass=Class'NicePack.NiceZombieSirenController' + ControllerClass=class'NiceZombieSirenController' AmbientSound=Sound'KF_BaseSiren.Siren_IdleLoop' Mesh=SkeletalMesh'KF_Freaks_Trip.Siren_Freak' Skins(0)=FinalBlend'KF_Specimens_Trip_T.siren_hair_fb' diff --git a/sources/Zeds/Nice/NiceZombieSirenBase.uc b/sources/Zeds/Nice/NiceZombieSirenBase.uc index c5bcc1b..8ff9688 100644 --- a/sources/Zeds/Nice/NiceZombieSirenBase.uc +++ b/sources/Zeds/Nice/NiceZombieSirenBase.uc @@ -36,7 +36,7 @@ defaultproperties StunThreshold=3.000000 fuelRatio=0.650000 clientHeadshotScale=1.200000 - niceZombieDamType=Class'NicePack.NiceZedSlashingDamageType' + niceZombieDamType=class'NiceZedSlashingDamageType' MeleeAnims(0)="Siren_Bite" MeleeAnims(1)="Siren_Bite2" MeleeAnims(2)="Siren_Bite" diff --git a/sources/Zeds/Nice/NiceZombieStalkerBase.uc b/sources/Zeds/Nice/NiceZombieStalkerBase.uc index 473d954..edc85c2 100644 --- a/sources/Zeds/Nice/NiceZombieStalkerBase.uc +++ b/sources/Zeds/Nice/NiceZombieStalkerBase.uc @@ -1,7 +1,7 @@ // Zombie Monster for KF Invasion gametype class NiceZombieStalkerBase extends NiceMonster abstract; -#exec OBJ LOAD FILE= +// #exec OBJ LOAD FILE= #exec OBJ LOAD FILE=KFX.utx #exec OBJ LOAD FILE=KF_BaseStalker.uax var float NextCheckTime; @@ -15,7 +15,7 @@ defaultproperties { fuelRatio=0.850000 clientHeadshotScale=1.200000 - niceZombieDamType=Class'NicePack.NiceZedSlashingDamageType' + niceZombieDamType=class'NiceZedSlashingDamageType' MeleeAnims(0)="StalkerSpinAttack" MeleeAnims(1)="StalkerAttack1" MeleeAnims(2)="JumpAttack" diff --git a/sources/Zeds/NiceMonster.uc b/sources/Zeds/NiceMonster.uc index 8047bc8..59c9b46 100644 --- a/sources/Zeds/NiceMonster.uc +++ b/sources/Zeds/NiceMonster.uc @@ -750,6 +750,7 @@ function ModFireDamage( out int damage, if(bFireImmune) damage /= 10; } + function ModHeadDamage( out int damage, Pawn instigatedBy, Vector hitLocation, @@ -757,22 +758,30 @@ function ModHeadDamage( out int damage, class dmgType, float headshotLevel, KFPlayerReplicationInfo KFPRI, - optional float lockonTime){ - local bool shouldCountHS; - local NicePlayerController nicePlayer; - local class niceVet; - if(instigatedBy != none) - nicePlayer = NicePlayerController(instigatedBy.Controller); - shouldCountHS = (lockonTime >= dmgType.default.lockonTime) + optional float lockonTime) +{ + local bool shouldCountHS; + local NicePlayerController nicePlayer; + local class niceVet; + + if (instigatedBy != none) + nicePlayer = NicePlayerController(instigatedBy.Controller); + shouldCountHS = (lockonTime >= dmgType.default.lockonTime) && (headshotLevel > dmgType.default.prReqMultiplier); - // Weapon damage bonus - if(dmgType != none && shouldCountHS) - damage *= dmgType.default.HeadShotDamageMult; - // Perk damage bonus - niceVet = class(KFPRI.ClientVeteranSkill); - if(KFPRI != none && niceVet != none) - damage *= niceVet.static.GetNiceHeadShotDamMulti(KFPRI, self, dmgType); + + // Weapon damage bonus + if (dmgType != none && shouldCountHS) + damage *= dmgType.default.HeadShotDamageMult; + + // Perk damage bonus + if (KFPRI != none) + { + niceVet = class(KFPRI.ClientVeteranSkill); + if (niceVet != none) + damage *= niceVet.static.GetNiceHeadShotDamMulti(KFPRI, self, dmgType); + } } + // This function must record damage actual value in 'damage' variable and // return value that will decide stun/flinch function int ModBodyDamage( out int damage, @@ -890,42 +899,46 @@ function BileDamageEffect( int damage, NextBileTime = Level.TimeSeconds + BileFrequency; } } + function float GetDecapDamageModifier( class damageType, NicePlayerController nicePlayer, - KFPlayerReplicationInfo KFPRI){ - local float damageMod; - local bool shouldDoGoodDecap; - local bool hasTrashCleaner; - local bool isPerkedPickup; - local class pickupClass; - local class niceVet; - niceVet = class(KFPRI.ClientVeteranSkill); - isPerkedPickup = false; - if(niceVet != none){ - pickupClass = niceVet.static.GetPickupFromDamageType(damageType); - if(pickupClass != none) - isPerkedPickup = niceVet.static.IsPerkedPickup(pickupClass); - } - shouldDoGoodDecap = false; - shouldDoGoodDecap = (damageType.default.decapType == DB_DROP); - shouldDoGoodDecap = shouldDoGoodDecap || + KFPlayerReplicationInfo KFPRI) +{ + local float damageMod; + local bool shouldDoGoodDecap; + local bool hasTrashCleaner; + local bool isPerkedPickup; + local class pickupClass; + local class niceVet; + + // KFPRI accessed none fix + if (KFPRI != none) + niceVet = class(KFPRI.ClientVeteranSkill); + isPerkedPickup = false; + if (niceVet != none) + { + pickupClass = niceVet.static.GetPickupFromDamageType(damageType); + if (pickupClass != none) + isPerkedPickup = niceVet.static.IsPerkedPickup(pickupClass); + } + shouldDoGoodDecap = false; + shouldDoGoodDecap = (damageType.default.decapType == DB_DROP); + shouldDoGoodDecap = shouldDoGoodDecap || (damageType.default.decapType == DB_PERKED && isPerkedPickup); - if(shouldDoGoodDecap) - damageMod = damageType.default.goodDecapMod; - else - damageMod = damageType.default.badDecapMod; - if(nicePlayer != none) - hasTrashCleaner = class'NiceVeterancyTypes'.static. + if (shouldDoGoodDecap) + damageMod = damageType.default.goodDecapMod; + else + damageMod = damageType.default.badDecapMod; + if (nicePlayer != none) + hasTrashCleaner = class'NiceVeterancyTypes'.static. hasSkill(nicePlayer, class'NiceSkillCommandoTrashCleaner'); - if(hasTrashCleaner){ - damageMod = FMin( - damageMod, - class'NiceSkillCommandoTrashCleaner'.default. - decapitationMultiLimit - ); - } - return damageMod; + if (hasTrashCleaner) + { + damageMod = FMin(damageMod, class'NiceSkillCommandoTrashCleaner'.default.decapitationMultiLimit); + } + return damageMod; } + function DealDecapDamage( int damage, Pawn instigatedBy, Vector hitLocation, @@ -2183,12 +2196,13 @@ defaultproperties bFrugalFuelUsage=True clientHeadshotScale=1.000000 FrozenMaterial=Texture'HTec_A.Overlay.IceOverlay' - ShatteredIce=Class'NicePack.NiceIceChunkEmitter' - niceZombieDamType=Class'NicePack.NiceZedMeleeDamageType' + ShatteredIce=class'NiceIceChunkEmitter' + niceZombieDamType=class'NiceZedMeleeDamageType' ZappedSpeedMod=0.300000 DamageToMonsterScale=5.000000 RagdollLifeSpan=120.000000 - ControllerClass=Class'NicePack.NiceMonsterController' + ControllerClass=class'NiceMonsterController' + Begin Object Class=KarmaParamsSkel Name=KarmaParamsSkelN KConvulseSpacing=(Max=2.200000) KLinearDamping=0.150000 @@ -2201,5 +2215,5 @@ defaultproperties KRestitution=0.200000 KImpactThreshold=85.000000 End Object - KParams=KarmaParamsSkel'NicePack.NiceMonster.KarmaParamsSkelN' + KParams=KarmaParamsSkelN } diff --git a/sources/Zeds/NiceMonsterController.uc b/sources/Zeds/NiceMonsterController.uc index f0165d7..60b680c 100644 --- a/sources/Zeds/NiceMonsterController.uc +++ b/sources/Zeds/NiceMonsterController.uc @@ -414,36 +414,47 @@ Begin: } WhatToDoNext(99); } + function bool SetEnemy( pawn newEnemy, optional bool bHateMonster, - optional float MonsterHateChanceOverride){ + optional float MonsterHateChanceOverride) +{ local NiceMonster niceZed; local NiceZombieFleshpound niceFP; local bool bCanForceFight; + // Can we fight anything? niceZed = NiceMonster(pawn); niceFP = NiceZombieFleshpound(niceZed); - if(niceZed != none) - bCanForceFight = + + if (niceZed != none) + { + bCanForceFight = KFMonster(pawn).HeadHealth <= 0 || KFMonster(pawn).bDecapitated - || newEnemy.Health <= 15; + || (newEnemy != none && newEnemy.Health <= 15); + } + if (niceFP != none && niceFP.IsInState('RageCharging')) bCanForceFight = false; - if(newEnemy != none) - bCanForceFight = bCanForceFight - && newEnemy.Health > 0 && newEnemy != enemy; + + if (newEnemy != none) + bCanForceFight = bCanForceFight && newEnemy.Health > 0 && newEnemy != enemy; else bCanForceFight = false; + // Do fight if we can - if(bCanForceFight){ + if(bCanForceFight) + { ChangeEnemy(newEnemy, true); FightEnemy(false); return true; } + // Otherwise - do the usual stupid stuff return super.SetEnemy(newEnemy, bHateMonster, monsterHateChanceOverride); } + simulated function AddKillAssistant(Controller PC, float damage){ local bool bIsalreadyAssistant; local int i;