Ejemplo n.º 1
0
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);
}
Ejemplo n.º 2
0
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);
}
Ejemplo n.º 3
0
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()));
}