bool CArboretumGate::TurnOn(CTurnOn *msg) { if (_v3) { CArboretumGateMsg gateMsg(0); gateMsg.execute("Arboretum"); setVisible(true); switch (_seasonNum) { case SPRING: playMovie(_springOnStartFrame, _springOnEndFrame, MOVIE_GAMESTATE || MOVIE_NOTIFY_OBJECT); break; case SUMMER: if (_v1) { playMovie(_summerOnStartFrame2, _summerOnEndFrame2, MOVIE_GAMESTATE || MOVIE_NOTIFY_OBJECT); } else { playMovie(_summerOnStartFrame1, _summerOnEndFrame1, MOVIE_GAMESTATE || MOVIE_NOTIFY_OBJECT); } break; case AUTUMN: if (_v1) { playMovie(_autumnOnStartFrame2, _autumnOnEndFrame2, MOVIE_GAMESTATE || MOVIE_NOTIFY_OBJECT); } else { playMovie(_autumnOnStartFrame1, _autumnOnEndFrame1, MOVIE_GAMESTATE || MOVIE_NOTIFY_OBJECT); } break; case WINTER: playMovie(_winterOnStartFrame, _winterOnEndFrame, MOVIE_GAMESTATE || MOVIE_NOTIFY_OBJECT); break; default: break; } _v3 = 0; } return true; }
bool CArboretumGate::TurnOn(CTurnOn *msg) { if (_disabled) { CArboretumGateMsg gateMsg(0); gateMsg.execute("Arboretum"); setVisible(true); switch (_seasonNum) { case SEASON_SUMMER: playMovie(_startFrameSummerOn, _endFrameSummerOn, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT); break; case SEASON_AUTUMN: if (_gotSpeechCentre) { playMovie(_startFrameAutumnOn2, _endFrameAutumnOn2, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT); } else { playMovie(_startFrameAutumnOn1, _endFrameAutumnOn1, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT); } break; case SEASON_WINTER: if (_gotSpeechCentre) { playMovie(_startFrameWinterOn2, _endFrameWinterOn2, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT); } else { playMovie(_startFrameWinterOn1, _endFrameWinterOn1, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT); } break; case SEASON_SPRING: playMovie(_startFrameSpringOn, _endFrameSpringOn, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT); break; default: break; } _disabled = false; } return true; }
bool CArboretumGate::TurnOn(CTurnOn *msg) { if (_v3) { CArboretumGateMsg gateMsg(0); gateMsg.execute("Arboretum"); setVisible(true); switch (_seasonNum) { case SEASON_SUMMER: playMovie(_startFrameSummerOn, _endFrameSummerOn, MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT); break; case SEASON_AUTUMN: if (_v1) { playMovie(_startFrameAutumnOn2, _endFrameAutumnOn2, MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT); } else { playMovie(_startFrameAutumnOn1, _endFrameAutumnOn1, MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT); } break; case SEASON_WINTER: if (_v1) { playMovie(_startFrameWinterOn2, _endFrameWinterOn2, MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT); } else { playMovie(_startFrameWinterOn1, _endFrameWinterOn1, MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT); } break; case SEASON_SPRING: playMovie(_startFrameSpringOn, _endFrameSpringOn, MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT); break; default: break; } _v3 = 0; } return true; }
bool CArboretumGate::TurnOff(CTurnOff *msg) { if (!_disabled) { switch (_seasonNum) { case SEASON_SUMMER: playMovie(_startFrameSummerOff, _endFrameSummerOff, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT); break; case SEASON_AUTUMN: if (_gotSpeechCentre) { playMovie(_startFrameAutumnOff2, _endFrameAutumnOff2, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT); } else { playMovie(_startFrameAutumnOff1, _endFrameAutumnOff1, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT); } break; case SEASON_WINTER: if (_gotSpeechCentre) { playMovie(_startFrameWinterOff2, _endFrameWinterOff2, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT); } else { playMovie(_startFrameWinterOff1, _endFrameWinterOff1, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT); } break; case SEASON_SPRING: playMovie(_startFrameSpringOff, _endFrameSpringOff, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT); break; default: break; } _disabled = true; CArboretumGateMsg gateMsg(1); gateMsg.execute("Arboretum", nullptr, MSGFLAG_SCAN); } return true; }