Try moving the Widget declaring and instantiation to a lower scope; within the actual conditional sleep .
Also; please conform to the Java naming conventions
new ConditionalSleep(15000, 600) {
@Override
public boolean condition() {
final RS2Widget displayDisc = getWidgets().getWidgetContainingText(162, "What name would you like to check");
return displayDisc != null && displayDisc.isVisible();
}
}.sleep();