Dayz Explorer 1.28.160049
Loading...
Searching...
No Matches
ReplaceItemWithNewLambdaBase Class Reference

base class for transformation operations (creating one item from another) More...

Inheritance diagram for ReplaceItemWithNewLambdaBase:
BreakLongWoodenStick DropEquipAndDestroyRootLambda MoveEquipToExistingItemAndDestroyOldRootLambda ReplaceDetonatorItemLambda ReplaceItemWithNewLambda TorchLambda UnboxLambda UnrestrainSelfPlayer

Protected Member Functions

bool WantCreateNewEntity ()
 
bool CanExecuteLambda ()
 
bool PrepareLocations ()
 Step A. - prepare inventory locations.
 
void RemoveOldItemFromLocation ()
 Step B. - free location for new item @NOTE this operation does not delete the object, only removes it from inventory location.
 
void UndoRemoveOldItemFromLocation ()
 
void RemoveNetworkObjectInfo ()
 Step C. - remove network part of the object @NOTE this operation does not delete the object, only removes its network part (and deletes it on client)
 
void UndoRemoveNetworkObjectInfo ()
 
EntityAI CreateNewEntity ()
 Step D. - create new entity (LOCAL) with specified type.
 
void CopyOldPropertiesToNew (notnull EntityAI old_item, EntityAI new_item)
 Step E. copy properties from old object to the created one.
 
void DeleteOldEntity ()
 Step F. - deletes physically old item.
 
void CreateNetworkObjectInfo (EntityAI new_item)
 Step G. - create NetworkObjectInfo for new item.
 
void OnSuccess (EntityAI new_item)
 Step H. - notification on finish.
 
void OnAbort ()
 Step Out - notification on abort.
 
void Execute (HumanInventoryWithFSM fsm_to_notify=null)
 
string DumpToString ()
 

Protected Attributes

ref InventoryLocation m_OldLocation
 
ref InventoryLocation m_NewLocation
 
bool m_RemoveFromLocationPassed = false
 

Detailed Description

base class for transformation operations (creating one item from another)

Definition at line 4 of file replaceitemwithnewlambdabase.c.

Member Function Documentation

◆ CanExecuteLambda()

bool ReplaceItemWithNewLambdaBase::CanExecuteLambda ( )
protected

Definition at line 31 of file replaceitemwithnewlambdabase.c.

◆ CopyOldPropertiesToNew()

void ReplaceItemWithNewLambdaBase::CopyOldPropertiesToNew ( notnull EntityAI old_item,
EntityAI new_item )
protected

Step E. copy properties from old object to the created one.

@NOTE: This is supposed to be overriden in derived classes

Definition at line 185 of file replaceitemwithnewlambdabase.c.

◆ CreateNetworkObjectInfo()

void ReplaceItemWithNewLambdaBase::CreateNetworkObjectInfo ( EntityAI new_item)
protected

Step G. - create NetworkObjectInfo for new item.

@NOTE: new_item can be null if the lambda did not create any item (intentionaly)

Definition at line 204 of file replaceitemwithnewlambdabase.c.

◆ CreateNewEntity()

EntityAI ReplaceItemWithNewLambdaBase::CreateNewEntity ( )
protected

Step D. - create new entity (LOCAL) with specified type.

@NOTE: if (!m_NewLocation || m_NewItemType.Empty) ==> this function does not create a new entity

Definition at line 123 of file replaceitemwithnewlambdabase.c.

◆ DeleteOldEntity()

void ReplaceItemWithNewLambdaBase::DeleteOldEntity ( )
protected

Step F. - deletes physically old item.

Definition at line 193 of file replaceitemwithnewlambdabase.c.

◆ DumpToString()

string ReplaceItemWithNewLambdaBase::DumpToString ( )
protected

Definition at line 298 of file replaceitemwithnewlambdabase.c.

◆ Execute()

void ReplaceItemWithNewLambdaBase::Execute ( HumanInventoryWithFSM fsm_to_notify = null)
protected

Definition at line 231 of file replaceitemwithnewlambdabase.c.

◆ OnAbort()

void ReplaceItemWithNewLambdaBase::OnAbort ( )
protected

Step Out - notification on abort.

@NOTE: new_item can be null if the lambda did not create any item (intentionaly)

Definition at line 226 of file replaceitemwithnewlambdabase.c.

◆ OnSuccess()

void ReplaceItemWithNewLambdaBase::OnSuccess ( EntityAI new_item)
protected

Step H. - notification on finish.

@NOTE: new_item can be null if the lambda did not create any item (intentionaly)

Definition at line 216 of file replaceitemwithnewlambdabase.c.

◆ PrepareLocations()

bool ReplaceItemWithNewLambdaBase::PrepareLocations ( )
protected

Step A. - prepare inventory locations.

Definition at line 43 of file replaceitemwithnewlambdabase.c.

◆ RemoveNetworkObjectInfo()

void ReplaceItemWithNewLambdaBase::RemoveNetworkObjectInfo ( )
protected

Step C. - remove network part of the object @NOTE this operation does not delete the object, only removes its network part (and deletes it on client)

Definition at line 107 of file replaceitemwithnewlambdabase.c.

◆ RemoveOldItemFromLocation()

void ReplaceItemWithNewLambdaBase::RemoveOldItemFromLocation ( )
protected

Step B. - free location for new item @NOTE this operation does not delete the object, only removes it from inventory location.

Definition at line 86 of file replaceitemwithnewlambdabase.c.

◆ UndoRemoveNetworkObjectInfo()

void ReplaceItemWithNewLambdaBase::UndoRemoveNetworkObjectInfo ( )
protected

Definition at line 113 of file replaceitemwithnewlambdabase.c.

◆ UndoRemoveOldItemFromLocation()

void ReplaceItemWithNewLambdaBase::UndoRemoveOldItemFromLocation ( )
protected

Definition at line 96 of file replaceitemwithnewlambdabase.c.

◆ WantCreateNewEntity()

bool ReplaceItemWithNewLambdaBase::WantCreateNewEntity ( )
protected

Definition at line 26 of file replaceitemwithnewlambdabase.c.

Member Data Documentation

◆ m_NewLocation

ref InventoryLocation ReplaceItemWithNewLambdaBase::m_NewLocation
protected

Definition at line 9 of file replaceitemwithnewlambdabase.c.

◆ m_OldLocation

ref InventoryLocation ReplaceItemWithNewLambdaBase::m_OldLocation
protected

Definition at line 8 of file replaceitemwithnewlambdabase.c.

◆ m_RemoveFromLocationPassed

bool ReplaceItemWithNewLambdaBase::m_RemoveFromLocationPassed = false
protected

Definition at line 10 of file replaceitemwithnewlambdabase.c.


The documentation for this class was generated from the following file: