MCPcopy Create free account
hub / github.com/diasurgical/DevilutionX / GetDebugGridText

Function GetDebugGridText

Source/debug.cpp:1181–1266  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1179}
1180
1181bool GetDebugGridText(Point dungeonCoords, char *debugGridTextBuffer)
1182{
1183 int info = 0;
1184 int blankValue = 0;
1185 Point megaCoords = dungeonCoords.worldToMega();
1186 switch (SelectedDebugGridTextItem) {
1187 case DebugGridTextItem::coords:
1188 *BufCopy(debugGridTextBuffer, dungeonCoords.x, ":", dungeonCoords.y) = '\0';
1189 return true;
1190 case DebugGridTextItem::cursorcoords:
1191 if (dungeonCoords != cursPosition)
1192 return false;
1193 *BufCopy(debugGridTextBuffer, dungeonCoords.x, ":", dungeonCoords.y) = '\0';
1194 return true;
1195 case DebugGridTextItem::objectindex: {
1196 info = 0;
1197 Object *object = FindObjectAtPosition(dungeonCoords);
1198 if (object != nullptr) {
1199 info = static_cast<int>(object->_otype);
1200 }
1201 break;
1202 }
1203 case DebugGridTextItem::dPiece:
1204 info = dPiece[dungeonCoords.x][dungeonCoords.y];
1205 break;
1206 case DebugGridTextItem::dTransVal:
1207 info = dTransVal[dungeonCoords.x][dungeonCoords.y];
1208 break;
1209 case DebugGridTextItem::dLight:
1210 info = dLight[dungeonCoords.x][dungeonCoords.y];
1211 blankValue = LightsMax;
1212 break;
1213 case DebugGridTextItem::dPreLight:
1214 info = dPreLight[dungeonCoords.x][dungeonCoords.y];
1215 blankValue = LightsMax;
1216 break;
1217 case DebugGridTextItem::dFlags:
1218 info = static_cast<int>(dFlags[dungeonCoords.x][dungeonCoords.y]);
1219 break;
1220 case DebugGridTextItem::dPlayer:
1221 info = dPlayer[dungeonCoords.x][dungeonCoords.y];
1222 break;
1223 case DebugGridTextItem::dMonster:
1224 info = dMonster[dungeonCoords.x][dungeonCoords.y];
1225 break;
1226 case DebugGridTextItem::dCorpse:
1227 info = dCorpse[dungeonCoords.x][dungeonCoords.y];
1228 break;
1229 case DebugGridTextItem::dItem:
1230 info = dItem[dungeonCoords.x][dungeonCoords.y];
1231 break;
1232 case DebugGridTextItem::dSpecial:
1233 info = dSpecial[dungeonCoords.x][dungeonCoords.y];
1234 break;
1235 case DebugGridTextItem::dObject:
1236 info = dObject[dungeonCoords.x][dungeonCoords.y];
1237 break;
1238 case DebugGridTextItem::Solid:

Callers 1

DrawViewFunction · 0.85

Calls 5

FindObjectAtPositionFunction · 0.85
TileHasAnyFunction · 0.85
worldToMegaMethod · 0.80
testMethod · 0.80
BufCopyFunction · 0.50

Tested by

no test coverage detected