grouped gameplay effect widgets and their handling More...
Private Member Functions | |
| void | GameplayEffectWidgets () |
| void | ~GameplayEffectWidgets () |
| protected void | Init () |
| protected void | PairIDToTypes () |
| Links types to unique handler types, if needed. Vanilla stuff was already handled in the generic update, left that as it was. (naming!) | |
| protected void | InitLayouts () |
| protected void | InitWidgetSets () |
| protected void | RegisterLayouts (string path, array< int > types) |
| Registers new layout and ties effect IDs to it. | |
| protected | TranslateIDToType (int typeID) |
| override void | RegisterGameplayEffectData (int id, Param p) |
| protected void | InitWidgetSet (int type, bool updating=false, int user_id_override=-1) |
| InitWidgetSet. | |
| bool | CreateHandledClass (typename handled_type, array< ref Widget > input, int type, int user_override) |
| array< int > | CompileEffectListing () |
| returns all vanilla effects, nested in a vanilla layout. If using different layouts for custom effects, please register and link separately | |
| protected void | UpdateVisibility () |
| override void | AddActiveEffects (array< int > effects) |
| override void | RemoveActiveEffects (array< int > effects) |
| override void | StopAllEffects () |
| override bool | IsAnyEffectRunning () |
| override void | AddSuspendRequest (int request_id) |
| override void | RemoveSuspendRequest (int request_id) |
| override void | ClearSuspendRequests () |
| override int | GetSuspendRequestCount () |
| override void | UpdateWidgets (int type=-1, float timeSlice=0, Param p=null, int handle=-1) |
| Usually called in course of an OnFrame update, can be manually called from elsewhere with parameters. | |
| protected void | CalculateValues (int type=-1, float timeSlice=0, Param p=null, int handle=-1) |
| Only one calculation per unique WidgetSet. | |
| protected void | ProcessWidgetUpdate (Widget w, int type, float timeSlice=0, Param p=null, int handle=-1) |
| protected void | CalculateBreathEffect (float timeSlice=0, int type=-1, Param p=null) |
| protected void | UpdateBreathEffect (ImageWidget w) |
| protected void | CalculateOccluderEffect (int type, float timeSlice, Param p, int handle) |
| protected void | UpdateOccluderEffect (ImageWidget w, int type, float timeSlice, Param p, int handle) |
| protected void | CalculateFlashbangEffect (int type, float timeSlice, Param p, int handle) |
| protected void | UpdateFlashbangEffect (ImageWidget w) |
| protected void | HandleWidgetRoot (float timeSlice=0, Param p=null, int handle=-1) |
| override void | Update (float timeSlice) |
| Generic update, called on frame from the player. | |
| override void | OnVoiceEvent (float breathing_resistance01) |
Private Attributes | |
| protected ref Widget | m_Root |
| protected ref map< int, ref Widget > | m_Layouts |
| protected ref set< ref Widget > | m_UniqueLayouts |
| protected ref GameplayEffectDataMap | m_WidgetDataMap |
| protected ref set< int > | m_RunningEffects |
| protected ref set< int > | m_RunningEffectsPrevious |
| protected ref array< int > | m_UpdatingEffects |
| protected ref array< ref Widget > | m_UpdatedWidgetsCheck |
| protected ref array< int > | m_UpdatedWidgetSetsCheck |
| protected ref set< int > | m_SuspendRequests |
| protected ref map< int, typename > | m_IDToTypeMap |
| protected float | m_TimeProgBreath |
| protected float | m_BreathMultStamina |
| protected float | m_BreathResidue |
| protected const int | WIDGETSET_BREATH = 100 |
| protected int | m_BreathColor |
| protected float | m_BreathAlphaVal |
| protected float | m_FlashbangCoverAlphaVal |
| const float | BREATH_HDR_MIN = 0.005 |
| const float | BREATH_HDR_MAX = 1.0 |
| const float | BREATH_COLOR_MULT_MIN = 0.5 |
| const float | BREATH_COLOR_MULT_MAX = 0.8 |
grouped gameplay effect widgets and their handling
|
inlineprivate |
References UpdateVisibility().
Referenced by ManBase::OnCommandHandlerTick(), PPERequester_GameplayBase::OnStart(), SetNVPostprocess(), and StartSourceBleedingIndication().
|
inlineprivate |
References UpdateVisibility().
Referenced by PPERequester_GameplayBase::OnStart(), and ManBase::OnUnconsciousStart().
|
inlineprivate |
References ARGBF(), Math::Clamp(), GetSceneHDRMul(), Math::InverseLerp(), and Math::Lerp().
Referenced by CalculateValues().
|
inlineprivate |
Referenced by CalculateValues().
|
inlineprivate |
Referenced by CalculateValues().
|
inlineprivate |
Only one calculation per unique WidgetSet.
References CalculateBreathEffect(), CalculateFlashbangEffect(), and CalculateOccluderEffect().
Referenced by UpdateWidgets().
|
inlineprivate |
References UpdateVisibility().
Referenced by ManBase::SimulateDeath().
returns all vanilla effects, nested in a vanilla layout. If using different layouts for custom effects, please register and link separately
Referenced by InitLayouts().
|
inlineprivate |
References GameplayEffectsData::Init().
Referenced by InitWidgetSet().
|
inlineprivate |
References WorkspaceWidget::CreateWidget(), GetGame(), CGame::GetWorkspace(), Init(), m_Root, and UpdateVisibility().
|
inlineprivate |
|
inlineprivate |
References Math::Clamp(), and m_Root.
Referenced by UpdateWidgets().
|
inlineprivate |
References InitLayouts(), InitWidgetSets(), and PairIDToTypes().
Referenced by GameplayEffectWidgets().
|
inlineprivate |
References CompileEffectListing(), and RegisterLayouts().
Referenced by Init().
|
inlineprivate |
InitWidgetSet.
| type | int ID of effect widget type |
| updating | bool Marks widgets for 'PlayerBase.EOnFrame' updating |
| user_id_override | int UserID of a widget to be used instead (allows multiple types to use single widget) InitWidgetSet(EffectWidgetsTypes.MASK_BREATH,true,BREATH);
protected void InitWidgetSet(int type, bool updating=false, int user_id_override=-1) InitWidgetSet. Definition GameplayEffectWidgets.c:144 |
References CreateHandledClass(), GameplayEffectsDataImage(), Print(), and TranslateIDToType().
Referenced by InitWidgetSets().
|
inlineprivate |
References InitWidgetSet().
Referenced by Init().
|
inlineprivate |
Referenced by ManBase::EOnFrame(), and StopAllEffects().
|
inlineprivate |
References Math::Clamp(), and Math::Lerp().
Referenced by ManBase::UpdateMaskBreathWidget().
|
inlineprivate |
Links types to unique handler types, if needed. Vanilla stuff was already handled in the generic update, left that as it was. (naming!)
Referenced by Init().
|
inlineprivate |
References UpdateBreathEffect(), UpdateFlashbangEffect(), and UpdateOccluderEffect().
Referenced by UpdateWidgets().
Registers new layout and ties effect IDs to it.
References WorkspaceWidget::CreateWidgets(), GetGame(), CGame::GetWorkspace(), m_Root, and path.
Referenced by InitLayouts().
References UpdateVisibility().
Referenced by ManBase::OnCommandHandlerTick(), PPERequester_GameplayBase::OnStop(), SetNVPostprocess(), and GameplayEffectsData::Update().
|
inlineprivate |
References UpdateVisibility().
Referenced by PPERequester_GameplayBase::OnStop(), and ManBase::OnUnconsciousStop().
|
inlineprivate |
References GameplayEffectsData::ForceStop(), IsAnyEffectRunning(), m_Root, and UpdateVisibility().
Referenced by ManBase::SimulateDeath().
|
inlineprivate |
Referenced by InitWidgetSet().
|
inlineprivate |
Generic update, called on frame from the player.
References UpdateWidgets().
Referenced by ManBase::EOnFrame().
|
inlineprivate |
Referenced by ProcessWidgetUpdate().
|
inlineprivate |
Referenced by ProcessWidgetUpdate().
|
inlineprivate |
Referenced by ProcessWidgetUpdate().
|
inlineprivate |
References Widget::Clear(), Count, GameplayEffectsData::HasDefinedHandle(), m_Root, and GameplayEffectsData::UpdateVisibility().
Referenced by AddActiveEffects(), AddSuspendRequest(), ClearSuspendRequests(), GameplayEffectWidgets(), RemoveActiveEffects(), RemoveSuspendRequest(), and StopAllEffects().
|
inlineprivate |
Usually called in course of an OnFrame update, can be manually called from elsewhere with parameters.
References CalculateValues(), GameplayEffectsData::DataInitialized(), HandleWidgetRoot(), GameplayEffectsData::HasDefinedHandle(), ProcessWidgetUpdate(), and GameplayEffectsData::Update().
Referenced by ScriptedWidgetEventHandler::OnBleedingIndicationChanged(), PPERequester_GameplayBase::OnUpdate(), StartSourceBleedingIndication(), StopSourceBleedingIndication(), and Update().
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |