Step D. - create new entity (LOCAL) with specified type.
@NOTE: if (!m_NewLocation || m_NewItemType.Empty) ==> this function does not create a new entity
См. определение в файле ReplaceItemWithNewLambdaBase.c строка 123
124 {
126 {
129
131 {
136 if (keep_rotation)
137 {
138 new_item.SetOrientation(
m_OldItem.GetOrientation());
139 }
140 break;
142
145 break;
146 default:
148 break;
149 }
150
151 if (LogManager.IsInventoryHFSMLogEnable())
hndDebugPrint(
"[inv] ReplaceItemWithNewLambdaBase Step D) Created new new_item=" + new_item);
152 if (new_item)
153 {
154 return new_item;
155 }
156 else
157 {
158 return null;
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173 }
174 }
175
176
177 return null;
178 }
const int ECE_OBJECT_SWAP
const int ECE_PLACE_ON_SURFACE
void hndDebugPrint(string s)
InventoryLocationType
types of Inventory Location
proto native bool ConfigIsExisting(string path)
proto native int ConfigGetInt(string path)
Get int value from config on path.
bool WantCreateNewEntity()
ref InventoryLocation m_NewLocation
void VerifyItemTypeBySlotType()
proto native CGame GetGame()
Перекрестные ссылки CFG_VEHICLESPATH, CGame::ConfigGetInt(), CGame::ConfigIsExisting(), ECE_LOCAL, ECE_OBJECT_SWAP, ECE_PLACE_ON_SURFACE, GetGame(), hndDebugPrint(), LogManager::IsInventoryHFSMLogEnable(), GameInventory::LocationCreateEntity(), GameInventory::LocationCreateLocalEntity(), m_NewItemType, m_NewLocation, m_OldItem, path, RF_NONE, VerifyItemTypeBySlotType() и WantCreateNewEntity().
Используется в Execute().