MCPcopy Create free account
hub / github.com/TheForceEngine/TheForceEngine / obj_createPickup

Function obj_createPickup

TheForceEngine/TFE_DarkForces/pickup.cpp:455–475  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

453 }
454
455 Logic* obj_createPickup(SecObject* obj, ItemId id)
456 {
457 Pickup* pickup = (Pickup*)level_alloc(sizeof(Pickup));
458 obj_addLogic(obj, (Logic*)pickup, LOGIC_PICKUP, s_pickupTask, pickup_cleanupFunc);
459
460 obj->entityFlags |= ETFLAG_PICKUP;
461 obj->worldHeight = 16384; // 0.25
462
463 // Setup the pickup based on the ItemId.
464 pickup->id = id;
465 pickup->weaponIndex = -1;
466 pickup->playerItem = nullptr;
467 pickup->playerAmmo = nullptr;
468 pickup->amount = 0;
469 pickup->msgId[0] = -1;
470 pickup->msgId[1] = -1;
471 pickup->maxAmount = 999;
472
473 setPickup(pickup, obj, id, TFE_ExternalData::getExternalPickups());
474 return (Logic*)pickup;
475 }
476
477 s32 pickup_addToValue(s32 curValue, s32 amountToAdd, s32 maxAmount)
478 {

Callers 3

item_createFunction · 0.85
object_parseSeqFunction · 0.85
addLogicToObjectFunction · 0.85

Calls 3

obj_addLogicFunction · 0.85
setPickupFunction · 0.85
getExternalPickupsFunction · 0.85

Tested by

no test coverage detected