Untitled
unknown
plain_text
2 months ago
13 kB
5
Indexable
require( "ui.uieditor.widgets.HUD.T4AmmoWidget.T4AmmoEquipment" )
require( "ui.uieditor.widgets.HUD.T4AmmoWidget.T4AmmoInfo" )
require( "ui.uieditor.widgets.HUD.T4AmmoWidget.T4AmmoWarning" )
require( "ui.uieditor.widgets.HUD.ZM_AmmoWidget.ZmAmmo_BBGumMeterWidget" )
CoD.T4AmmoContainer = InheritFrom( LUI.UIElement )
CoD.T4AmmoContainer.new = function ( menu, controller )
local self = LUI.UIElement.new()
if PreLoadFunc then
PreLoadFunc( self, controller )
end
self:setUseStencil( false )
self:setClass( CoD.T4AmmoContainer )
self.id = "T4AmmoContainer"
self.soundSet = "default"
self:setLeftRight( true, false, 0, 1280 )
self:setTopBottom( true, false, 0, 720 )
self.anyChildUsesUpdateState = true
self.ZmAmmoBBGumMeterWidget = CoD.ZmAmmo_BBGumMeterWidget.new( menu, controller )
self.ZmAmmoBBGumMeterWidget:setLeftRight( true, true, 1214, 0 )
self.ZmAmmoBBGumMeterWidget:setTopBottom( true, true, 310, 0 )
self:addElement( self.ZmAmmoBBGumMeterWidget )
self.AmmoEquipment = CoD.T4AmmoEquipment.new( menu, controller )
self.AmmoEquipment:setLeftRight( true, true, 0, 0 )
self.AmmoEquipment:setTopBottom( true, true, 0, 0 )
self:addElement( self.AmmoEquipment )
self.AmmoInfo = CoD.T4AmmoInfo.new( menu, controller )
self.AmmoInfo:setLeftRight( true, true, 0, 0 )
self.AmmoInfo:setTopBottom( true, true, 0, 0 )
self:addElement( self.AmmoInfo )
self.AmmoWarning = CoD.T4AmmoWarning.new( menu, controller )
self.AmmoWarning:setLeftRight( true, true, 0, 0 )
self.AmmoWarning:setTopBottom( true, true, 0, 0 )
self:addElement( self.AmmoWarning )
self.clipsPerState = {
DefaultState = {
DefaultClip = function ()
self:setupElementClipCounter( 4 )
self.ZmAmmoBBGumMeterWidget:completeAnimation()
self.ZmAmmoBBGumMeterWidget:setAlpha( 0 )
self.clipFinished( self.ZmAmmoBBGumMeterWidget, {} )
self.AmmoEquipment:completeAnimation()
self.AmmoEquipment:setAlpha( 0 )
self.clipFinished( self.AmmoEquipment, {} )
self.AmmoInfo:completeAnimation()
self.AmmoInfo:setAlpha( 0 )
self.clipFinished( self.AmmoInfo, {} )
self.AmmoWarning:completeAnimation()
self.AmmoWarning:setAlpha( 0 )
self.clipFinished( self.AmmoWarning, {} )
end,
HudStart = function ()
self:setupElementClipCounter( 4 )
local HudStartTransition = function ( element, event )
if not event.interrupted then
element:beginAnimation( "keyframe", 300, false, false, CoD.TweenType.Linear )
end
element:setAlpha( 1 )
if event.interrupted then
self.clipFinished( element, event )
else
element:registerEventHandler( "transition_complete_keyframe", self.clipFinished )
end
end
self.ZmAmmoBBGumMeterWidget:completeAnimation()
self.ZmAmmoBBGumMeterWidget:setAlpha( 0 )
HudStartTransition( self.ZmAmmoBBGumMeterWidget, {} )
self.AmmoEquipment:completeAnimation()
self.AmmoEquipment:setAlpha( 0 )
HudStartTransition( self.AmmoEquipment, {} )
self.AmmoInfo:completeAnimation()
self.AmmoInfo:setAlpha( 0 )
HudStartTransition( self.AmmoInfo, {} )
self.AmmoWarning:completeAnimation()
self.AmmoWarning:setAlpha( 0 )
HudStartTransition( self.AmmoWarning, {} )
end
},
HudStart = {
DefaultClip = function ()
self:setupElementClipCounter( 4 )
self.ZmAmmoBBGumMeterWidget:completeAnimation()
self.ZmAmmoBBGumMeterWidget:setAlpha( 1 )
self.clipFinished( self.ZmAmmoBBGumMeterWidget, {} )
self.AmmoEquipment:completeAnimation()
self.AmmoEquipment:setAlpha( 1 )
self.clipFinished( self.AmmoEquipment, {} )
self.AmmoInfo:completeAnimation()
self.AmmoInfo:setAlpha( 1 )
self.clipFinished( self.AmmoInfo, {} )
self.AmmoWarning:completeAnimation()
self.AmmoWarning:setAlpha( 1 )
self.clipFinished( self.AmmoWarning, {} )
end,
DefaultState = function ()
self:setupElementClipCounter( 4 )
local DefaultStateTransition = function ( element, event )
if not event.interrupted then
element:beginAnimation( "keyframe", 300, false, false, CoD.TweenType.Linear )
end
element:setAlpha( 0 )
if event.interrupted then
self.clipFinished( element, event )
else
element:registerEventHandler( "transition_complete_keyframe", self.clipFinished )
end
end
self.ZmAmmoBBGumMeterWidget:completeAnimation()
self.ZmAmmoBBGumMeterWidget:setAlpha( 1 )
DefaultStateTransition( self.ZmAmmoBBGumMeterWidget, {} )
self.AmmoEquipment:completeAnimation()
self.AmmoEquipment:setAlpha( 1 )
DefaultStateTransition( self.AmmoEquipment, {} )
self.AmmoInfo:completeAnimation()
self.AmmoInfo:setAlpha( 1 )
DefaultStateTransition( self.AmmoInfo, {} )
self.AmmoWarning:completeAnimation()
self.AmmoWarning:setAlpha( 1 )
DefaultStateTransition( self.AmmoWarning, {} )
end
}
}
self:mergeStateConditions( {
{
stateName = "HudStart",
condition = function ( menu, element, event )
if IsModelValueTrue( controller, "hudItems.playerSpawned" ) then
if Engine.IsVisibilityBitSet( controller, Enum.UIVisibilityBit.BIT_HUD_VISIBLE )
and Engine.IsVisibilityBitSet( controller, Enum.UIVisibilityBit.BIT_WEAPON_HUD_VISIBLE )
and not Engine.IsVisibilityBitSet( controller, Enum.UIVisibilityBit.BIT_HUD_HARDCORE )
and not Engine.IsVisibilityBitSet( controller, Enum.UIVisibilityBit.BIT_GAME_ENDED )
and not Engine.IsVisibilityBitSet( controller, Enum.UIVisibilityBit.BIT_DEMO_CAMERA_MODE_MOVIECAM )
and not Engine.IsVisibilityBitSet( controller, Enum.UIVisibilityBit.BIT_DEMO_ALL_GAME_HUD_HIDDEN )
and not Engine.IsVisibilityBitSet( controller, Enum.UIVisibilityBit.BIT_IN_KILLCAM )
and not Engine.IsVisibilityBitSet( controller, Enum.UIVisibilityBit.BIT_IS_FLASH_BANGED )
and not Engine.IsVisibilityBitSet( controller, Enum.UIVisibilityBit.BIT_UI_ACTIVE )
and not Engine.IsVisibilityBitSet( controller, Enum.UIVisibilityBit.BIT_IS_SCOPED )
and not Engine.IsVisibilityBitSet( controller, Enum.UIVisibilityBit.BIT_IN_VEHICLE )
and not Engine.IsVisibilityBitSet( controller, Enum.UIVisibilityBit.BIT_IN_GUIDED_MISSILE )
and not Engine.IsVisibilityBitSet( controller, Enum.UIVisibilityBit.BIT_SCOREBOARD_OPEN )
and not Engine.IsVisibilityBitSet( controller, Enum.UIVisibilityBit.BIT_IN_REMOTE_KILLSTREAK_STATIC )
and not Engine.IsVisibilityBitSet( controller, Enum.UIVisibilityBit.BIT_EMP_ACTIVE ) then
return true
else
return false
end
end
end
}
} )
self:subscribeToModel( Engine.GetModel( Engine.GetModelForController( controller ), "hudItems.playerSpawned" ), function ( model )
menu:updateElementState( self, {
name = "model_validation",
menu = self,
modelValue = Engine.GetModelValue( model ),
modelName = "hudItems.playerSpawned"
} )
end )
self:subscribeToModel( Engine.GetModel( Engine.GetModelForController( controller ), "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_HUD_VISIBLE ), function ( model )
menu:updateElementState( self, {
name = "model_validation",
menu = self,
modelValue = Engine.GetModelValue( model ),
modelName = "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_HUD_VISIBLE
} )
end )
self:subscribeToModel( Engine.GetModel( Engine.GetModelForController( controller ), "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_WEAPON_HUD_VISIBLE ), function ( model )
menu:updateElementState( self, {
name = "model_validation",
menu = self,
modelValue = Engine.GetModelValue( model ),
modelName = "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_WEAPON_HUD_VISIBLE
} )
end )
self:subscribeToModel( Engine.GetModel( Engine.GetModelForController( controller ), "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_HUD_HARDCORE ), function ( model )
menu:updateElementState( self, {
name = "model_validation",
menu = self,
modelValue = Engine.GetModelValue( model ),
modelName = "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_HUD_HARDCORE
} )
end )
self:subscribeToModel( Engine.GetModel( Engine.GetModelForController( controller ), "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_GAME_ENDED ), function ( model )
menu:updateElementState( self, {
name = "model_validation",
menu = self,
modelValue = Engine.GetModelValue( model ),
modelName = "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_GAME_ENDED
} )
end )
self:subscribeToModel( Engine.GetModel( Engine.GetModelForController( controller ), "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_DEMO_CAMERA_MODE_MOVIECAM ), function ( model )
menu:updateElementState( self, {
name = "model_validation",
menu = self,
modelValue = Engine.GetModelValue( model ),
modelName = "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_DEMO_CAMERA_MODE_MOVIECAM
} )
end )
self:subscribeToModel( Engine.GetModel( Engine.GetModelForController( controller ), "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_DEMO_ALL_GAME_HUD_HIDDEN ), function ( model )
menu:updateElementState( self, {
name = "model_validation",
menu = self,
modelValue = Engine.GetModelValue( model ),
modelName = "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_DEMO_ALL_GAME_HUD_HIDDEN
} )
end )
self:subscribeToModel( Engine.GetModel( Engine.GetModelForController( controller ), "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_IN_KILLCAM ), function ( model )
menu:updateElementState( self, {
name = "model_validation",
menu = self,
modelValue = Engine.GetModelValue( model ),
modelName = "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_IN_KILLCAM
} )
end )
self:subscribeToModel( Engine.GetModel( Engine.GetModelForController( controller ), "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_IS_FLASH_BANGED ), function ( model )
menu:updateElementState( self, {
name = "model_validation",
menu = self,
modelValue = Engine.GetModelValue( model ),
modelName = "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_IS_FLASH_BANGED
} )
end )
self:subscribeToModel( Engine.GetModel( Engine.GetModelForController( controller ), "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_UI_ACTIVE ), function ( model )
menu:updateElementState( self, {
name = "model_validation",
menu = self,
modelValue = Engine.GetModelValue( model ),
modelName = "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_UI_ACTIVE
} )
end )
self:subscribeToModel( Engine.GetModel( Engine.GetModelForController( controller ), "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_IS_SCOPED ), function ( model )
menu:updateElementState( self, {
name = "model_validation",
menu = self,
modelValue = Engine.GetModelValue( model ),
modelName = "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_IS_SCOPED
} )
end )
self:subscribeToModel( Engine.GetModel( Engine.GetModelForController( controller ), "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_IN_VEHICLE ), function ( model )
menu:updateElementState( self, {
name = "model_validation",
menu = self,
modelValue = Engine.GetModelValue( model ),
modelName = "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_IN_VEHICLE
} )
end )
self:subscribeToModel( Engine.GetModel( Engine.GetModelForController( controller ), "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_IN_GUIDED_MISSILE ), function ( model )
menu:updateElementState( self, {
name = "model_validation",
menu = self,
modelValue = Engine.GetModelValue( model ),
modelName = "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_IN_GUIDED_MISSILE
} )
end )
self:subscribeToModel( Engine.GetModel( Engine.GetModelForController( controller ), "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_SCOREBOARD_OPEN ), function ( model )
menu:updateElementState( self, {
name = "model_validation",
menu = self,
modelValue = Engine.GetModelValue( model ),
modelName = "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_SCOREBOARD_OPEN
} )
end )
self:subscribeToModel( Engine.GetModel( Engine.GetModelForController( controller ), "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_IN_REMOTE_KILLSTREAK_STATIC ), function ( model )
menu:updateElementState( self, {
name = "model_validation",
menu = self,
modelValue = Engine.GetModelValue( model ),
modelName = "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_IN_REMOTE_KILLSTREAK_STATIC
} )
end )
self:subscribeToModel( Engine.GetModel( Engine.GetModelForController( controller ), "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_EMP_ACTIVE ), function ( model )
menu:updateElementState( self, {
name = "model_validation",
menu = self,
modelValue = Engine.GetModelValue( model ),
modelName = "UIVisibilityBit." .. Enum.UIVisibilityBit.BIT_EMP_ACTIVE
} )
end )
LUI.OverrideFunction_CallOriginalSecond( self, "close", function ( element )
element.ZmAmmoBBGumMeterWidget:close()
element.AmmoEquipment:close()
element.AmmoInfo:close()
element.AmmoWarning:close()
end )
if PostLoadFunc then
PostLoadFunc( self, controller, menu )
end
return self
end
Editor is loading...
Leave a Comment