MCPcopy Create free account
hub / github.com/diasurgical/devilution / AddObject

Function AddObject

Source/objects.cpp:1326–1465  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1324}
1325
1326void AddObject(int ot, int ox, int oy)
1327{
1328 int oi;
1329
1330 if (nobjects >= MAXOBJECTS)
1331 return;
1332
1333 oi = objectavail[0];
1334 objectavail[0] = objectavail[126 - nobjects];
1335 objectactive[nobjects] = oi;
1336 dObject[ox][oy] = oi + 1;
1337 SetupObject(oi, ox, oy, ot);
1338 switch (ot) {
1339 case OBJ_L1LIGHT:
1340 AddObjLight(oi, 5);
1341 break;
1342 case OBJ_SKFIRE:
1343 case OBJ_CANDLE1:
1344 case OBJ_CANDLE2:
1345 case OBJ_BOOKCANDLE:
1346 AddObjLight(oi, 5);
1347 break;
1348 case OBJ_STORYCANDLE:
1349 AddObjLight(oi, 3);
1350 break;
1351 case OBJ_TORCHL:
1352 case OBJ_TORCHR:
1353 case OBJ_TORCHL2:
1354 case OBJ_TORCHR2:
1355 AddObjLight(oi, 8);
1356 break;
1357 case OBJ_L1LDOOR:
1358 case OBJ_L1RDOOR:
1359 AddL1Door(oi, ox, oy, ot);
1360 break;
1361 case OBJ_L2LDOOR:
1362 case OBJ_L2RDOOR:
1363 AddL2Door(oi, ox, oy, ot);
1364 break;
1365 case OBJ_L3LDOOR:
1366 case OBJ_L3RDOOR:
1367 AddL3Door(oi, ox, oy, ot);
1368 break;
1369 case OBJ_BOOK2R:
1370 AddSCambBook(oi);
1371 break;
1372 case OBJ_CHEST1:
1373 case OBJ_CHEST2:
1374 case OBJ_CHEST3:
1375 case OBJ_TCHEST1:
1376 case OBJ_TCHEST2:
1377 case OBJ_TCHEST3:
1378 AddChest(oi, ot);
1379 break;
1380 case OBJ_SARC:
1381 AddSarc(oi);
1382 break;
1383 case OBJ_FLAMEHOLE:

Callers 15

InitRndLocObjFunction · 0.85
InitRndLocBigObjFunction · 0.85
InitRndLocObj5x5Function · 0.85
AddTorturesFunction · 0.85
AddCandlesFunction · 0.85
AddBookLeverFunction · 0.85
InitRndBarrelsFunction · 0.85
AddL1ObjsFunction · 0.85
AddL2ObjsFunction · 0.85
AddL3ObjsFunction · 0.85
AddL2TorchesFunction · 0.85
AddObjTrapsFunction · 0.85

Calls 15

SetupObjectFunction · 0.85
AddObjLightFunction · 0.85
AddL1DoorFunction · 0.85
AddL2DoorFunction · 0.85
AddL3DoorFunction · 0.85
AddSCambBookFunction · 0.85
AddChestFunction · 0.85
AddSarcFunction · 0.85
AddFlameTrapFunction · 0.85
AddFlameLvrFunction · 0.85
AddTrapFunction · 0.85
AddBarrelFunction · 0.85

Tested by

no test coverage detected