MCPcopy Create free account
hub / github.com/NetHack/NetHack / selectRole

Method selectRole

outdated/win/Qt3/qt3_win.cpp:1195–1229  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1193}
1194
1195void NetHackQtPlayerSelector::selectRole()
1196{
1197 int ra = race->selectedItemNumber();
1198 int ro = role->selectedItemNumber();
1199 if (ra == -1 || ro == -1) return;
1200
1201#ifdef QT_CHOOSE_RACE_FIRST
1202 selectRace();
1203#else
1204 QListViewItem* i=role->currentItem();
1205 QListViewItem* valid=0;
1206 int j;
1207 NhPSListViewItem* item;
1208 item = (NhPSListViewItem*)role->firstChild();
1209 for (j=0; roles[j].name.m; j++) {
1210 bool v = validrace(j,ra);
1211 item->setSelectable(TRUE);
1212 if ( !valid && v ) valid = item;
1213 item=(NhPSListViewItem*)item->nextSibling();
1214 }
1215 if ( !validrace(role->selectedItemNumber(),ra) )
1216 i = valid;
1217 role->setSelected(i,TRUE);
1218 item = (NhPSListViewItem*)role->firstChild();
1219 for (j=0; roles[j].name.m; j++) {
1220 bool v = validrace(j,ra);
1221 item->setSelectable(v);
1222 item->repaint();
1223 item=(NhPSListViewItem*)item->nextSibling();
1224 }
1225#endif
1226
1227 flags.initrole = role->selectedItemNumber();
1228 setupOthers();
1229}
1230
1231void NetHackQtPlayerSelector::selectRace()
1232{

Callers

nothing calls this directly

Calls 3

validraceFunction · 0.85
selectedItemNumberMethod · 0.80
repaintMethod · 0.60

Tested by

no test coverage detected