void CAutoResearch::UpdateInterface() { Ui::CWindow* pw; if ( !m_object->GetSelect() ) return; CAuto::UpdateInterface(); pw = static_cast< Ui::CWindow* >(m_interface->SearchControl(EVENT_WINDOW0)); if ( pw == nullptr ) return; DeadInterface(pw, EVENT_OBJECT_RTANK, m_main->IsResearchEnabled(RESEARCH_TANK)); DeadInterface(pw, EVENT_OBJECT_RFLY, m_main->IsResearchEnabled(RESEARCH_FLY)); DeadInterface(pw, EVENT_OBJECT_RTHUMP, m_main->IsResearchEnabled(RESEARCH_THUMP)); DeadInterface(pw, EVENT_OBJECT_RCANON, m_main->IsResearchEnabled(RESEARCH_CANON)); DeadInterface(pw, EVENT_OBJECT_RTOWER, m_main->IsResearchEnabled(RESEARCH_TOWER)); DeadInterface(pw, EVENT_OBJECT_RPHAZER, m_main->IsResearchEnabled(RESEARCH_PHAZER)); DeadInterface(pw, EVENT_OBJECT_RSHIELD, m_main->IsResearchEnabled(RESEARCH_SHIELD)); DeadInterface(pw, EVENT_OBJECT_RATOMIC, m_main->IsResearchEnabled(RESEARCH_ATOMIC)); OkayButton(pw, EVENT_OBJECT_RTANK); OkayButton(pw, EVENT_OBJECT_RFLY); OkayButton(pw, EVENT_OBJECT_RTHUMP); OkayButton(pw, EVENT_OBJECT_RCANON); OkayButton(pw, EVENT_OBJECT_RTOWER); OkayButton(pw, EVENT_OBJECT_RPHAZER); OkayButton(pw, EVENT_OBJECT_RSHIELD); OkayButton(pw, EVENT_OBJECT_RATOMIC); VisibleInterface(pw, EVENT_OBJECT_RTANK, !m_bBusy); VisibleInterface(pw, EVENT_OBJECT_RFLY, !m_bBusy); VisibleInterface(pw, EVENT_OBJECT_RTHUMP, !m_bBusy); VisibleInterface(pw, EVENT_OBJECT_RCANON, !m_bBusy); VisibleInterface(pw, EVENT_OBJECT_RTOWER, !m_bBusy); VisibleInterface(pw, EVENT_OBJECT_RPHAZER, !m_bBusy); VisibleInterface(pw, EVENT_OBJECT_RSHIELD, !m_bBusy); VisibleInterface(pw, EVENT_OBJECT_RATOMIC, !m_bBusy); }
void CAutoFactory::UpdateButton(Ui::CWindow *pw, EventType event, bool bBusy) { bool bEnable = true; EnableInterface(pw, event, !bBusy); if ( event == EVENT_OBJECT_FACTORYta ) { bEnable = g_researchDone&RESEARCH_TANK; } if ( event == EVENT_OBJECT_FACTORYfa ) { bEnable = g_researchDone&RESEARCH_FLY; } if ( event == EVENT_OBJECT_FACTORYia ) { bEnable = g_researchDone&RESEARCH_iPAW; } if ( event == EVENT_OBJECT_FACTORYws ) { bEnable = g_researchDone&RESEARCH_SNIFFER; } if ( event == EVENT_OBJECT_FACTORYts ) { bEnable = ( (g_researchDone&RESEARCH_SNIFFER) && (g_researchDone&RESEARCH_TANK) ); } if ( event == EVENT_OBJECT_FACTORYfs ) { bEnable = ( (g_researchDone&RESEARCH_SNIFFER) && (g_researchDone&RESEARCH_FLY) ); } if ( event == EVENT_OBJECT_FACTORYis ) { bEnable = ( (g_researchDone&RESEARCH_SNIFFER) && (g_researchDone&RESEARCH_iPAW) ); } if ( event == EVENT_OBJECT_FACTORYwc ) { bEnable = g_researchDone&RESEARCH_CANON; } if ( event == EVENT_OBJECT_FACTORYtc ) { bEnable = ( (g_researchDone&RESEARCH_CANON) && (g_researchDone&RESEARCH_TANK) ); } if ( event == EVENT_OBJECT_FACTORYfc ) { bEnable = ( (g_researchDone&RESEARCH_CANON) && (g_researchDone&RESEARCH_FLY) ); } if ( event == EVENT_OBJECT_FACTORYic ) { bEnable = ( (g_researchDone&RESEARCH_CANON) && (g_researchDone&RESEARCH_iPAW) ); } if ( event == EVENT_OBJECT_FACTORYwi ) { bEnable = g_researchDone&RESEARCH_iGUN; } if ( event == EVENT_OBJECT_FACTORYti ) { bEnable = ( (g_researchDone&RESEARCH_iGUN) && (g_researchDone&RESEARCH_TANK) ); } if ( event == EVENT_OBJECT_FACTORYfi ) { bEnable = ( (g_researchDone&RESEARCH_iGUN) && (g_researchDone&RESEARCH_FLY) ); } if ( event == EVENT_OBJECT_FACTORYii ) { bEnable = ( (g_researchDone&RESEARCH_iGUN) && (g_researchDone&RESEARCH_iPAW) ); } if ( event == EVENT_OBJECT_FACTORYrt ) { bEnable = ( (g_researchDone&RESEARCH_THUMP) && (g_researchDone&RESEARCH_TANK) ); } if ( event == EVENT_OBJECT_FACTORYrc ) { bEnable = ( (g_researchDone&RESEARCH_PHAZER) && (g_researchDone&RESEARCH_TANK) ); } if ( event == EVENT_OBJECT_FACTORYrr ) { bEnable = ( (g_researchDone&RESEARCH_RECYCLER) && (g_researchDone&RESEARCH_TANK) ); } if ( event == EVENT_OBJECT_FACTORYrs ) { bEnable = ( (g_researchDone&RESEARCH_SHIELD) && (g_researchDone&RESEARCH_TANK) ); } if ( event == EVENT_OBJECT_FACTORYsa ) { bEnable = g_researchDone&RESEARCH_SUBM; } DeadInterface(pw, event, bEnable); }
void CAutoFactory::UpdateButton(Ui::CWindow *pw, EventType event, bool bBusy) { EnableInterface(pw, event, !bBusy); DeadInterface(pw, event, m_main->CanFactory(ObjectTypeFromFactoryButton(event), m_object->GetTeam())); }