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

Function InitRndLocBigObj

Source/objects.cpp:170–196  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

168}
169
170void InitRndLocBigObj(int min, int max, int objtype)
171{
172 int i, xp, yp, numobjs;
173
174 numobjs = random_(140, max - min) + min;
175 for (i = 0; i < numobjs; i++) {
176 while (1) {
177 xp = random_(140, 80) + 16;
178 yp = random_(140, 80) + 16;
179 if (RndLocOk(xp - 1, yp - 2)
180 && RndLocOk(xp, yp - 2)
181 && RndLocOk(xp + 1, yp - 2)
182 && RndLocOk(xp - 1, yp - 1)
183 && RndLocOk(xp, yp - 1)
184 && RndLocOk(xp + 1, yp - 1)
185 && RndLocOk(xp - 1, yp)
186 && RndLocOk(xp, yp)
187 && RndLocOk(xp + 1, yp)
188 && RndLocOk(xp - 1, yp + 1)
189 && RndLocOk(xp, yp + 1)
190 && RndLocOk(xp + 1, yp + 1)) {
191 AddObject(objtype, xp, yp);
192 break;
193 }
194 }
195 }
196}
197
198void InitRndLocObj5x5(int min, int max, int objtype)
199{

Callers 1

InitObjectsFunction · 0.85

Calls 3

random_Function · 0.85
RndLocOkFunction · 0.85
AddObjectFunction · 0.85

Tested by

no test coverage detected