Dayz Explorer 1.29.162510
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 193 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 212 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 131 of file replaceitemwithnewlambdabase.c.

◆ DeleteOldEntity()

void ReplaceItemWithNewLambdaBase::DeleteOldEntity ( )
protected

Step F. - deletes physically old item.

Definition at line 201 of file replaceitemwithnewlambdabase.c.

◆ DumpToString()

string ReplaceItemWithNewLambdaBase::DumpToString ( )
protected

Definition at line 306 of file replaceitemwithnewlambdabase.c.

◆ Execute()

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

Definition at line 239 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 234 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 224 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 115 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 121 of file replaceitemwithnewlambdabase.c.

◆ UndoRemoveOldItemFromLocation()

void ReplaceItemWithNewLambdaBase::UndoRemoveOldItemFromLocation ( )
protected

Definition at line 99 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: