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

Function AddStoryBooks

Source/objects.cpp:617–647  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

615}
616
617void AddStoryBooks()
618{
619 int xp, yp, xx, yy;
620 int cnt;
621 BOOL done;
622
623 cnt = 0;
624 while (TRUE) {
625 done = TRUE;
626 xp = random_(139, 80) + 16;
627 yp = random_(139, 80) + 16;
628 for (yy = -2; yy <= 2; yy++) {
629 for (xx = -3; xx <= 3; xx++) {
630 if (!RndLocOk(xx + xp, yy + yp))
631 done = FALSE;
632 }
633 }
634 if (done)
635 break;
636 cnt++;
637 if (cnt > 20000)
638 return;
639 }
640 AddObject(OBJ_STORYBOOK, xp, yp);
641 AddObject(OBJ_STORYCANDLE, xp - 2, yp + 1);
642 AddObject(OBJ_STORYCANDLE, xp - 2, yp);
643 AddObject(OBJ_STORYCANDLE, xp - 1, yp - 1);
644 AddObject(OBJ_STORYCANDLE, xp + 1, yp - 1);
645 AddObject(OBJ_STORYCANDLE, xp + 2, yp);
646 AddObject(OBJ_STORYCANDLE, xp + 2, yp + 1);
647}
648
649void AddHookedBodies(int freq)
650{

Callers 1

InitObjectsFunction · 0.85

Calls 3

random_Function · 0.85
RndLocOkFunction · 0.85
AddObjectFunction · 0.85

Tested by

no test coverage detected