void FullpipeEngine::initObjectStates() { setLevelStates(); setObjectState(sO_Dude, getObjectEnumState(sO_Dude, sO_NotCarryingEgg)); setObjectState(sO_EggCracker, getObjectEnumState(sO_EggCracker, sO_DidNotCrackEgg)); setObjectState(sO_GuvTheDrawer, getObjectEnumState(sO_GuvTheDrawer, sO_Awaken)); setObjectState(sO_EggGulper, getObjectEnumState(sO_EggGulper, sO_First)); setObjectState(sO_EggGulperGaveCoin, getObjectEnumState(sO_EggGulperGaveCoin, sO_No)); setObjectState(sO_Jar_4, getObjectEnumState(sO_Jar_4, sO_OnTheSpring)); setObjectState(sO_GulpedEggs, getObjectEnumState(sO_GulpedEgg, sO_NotPresent)); setSwallowedEggsState(); setObjectState(sO_WeirdWacko, getObjectEnumState(sO_WeirdWacko, sO_InGlasses)); setObjectState(sO_TumyTrampie, getObjectEnumState(sO_TumyTrampie, sO_Drinking)); setObjectState(sO_StairsUp_8, getObjectEnumState(sO_StairsUp_8, sO_NotBroken)); setObjectState(sO_HareTheNooksiter, getObjectEnumState(sO_HareTheNooksiter, sO_WithHandle)); setObjectState(sO_Elephantine, getObjectEnumState(sO_Elephantine, sO_WithBoot)); setObjectState(sO_Fly_12, 0); setObjectState(sO_ClockAxis, getObjectEnumState(sO_ClockAxis, sO_NotAvailable)); setObjectState(sO_ClockHandle, getObjectEnumState(sO_ClockHandle, sO_In_7)); setObjectState(sO_BigMumsy, getObjectEnumState(sO_BigMumsy, sO_Sleeping)); setObjectState(sO_CoinSlot_1, getObjectEnumState(sO_CoinSlot_1, sO_Empty)); setObjectState(sO_FriesPit, getObjectEnumState(sO_FriesPit, sO_WithApple)); setObjectState(sO_Jug, getObjectEnumState(sO_Jug, sO_Blocked)); setObjectState(sO_RightStairs_9, getObjectEnumState(sO_RightStairs_9, sO_ClosedShe)); setObjectState(sO_Pipe_9, getObjectEnumState(sO_Pipe_9, sO_WithJug)); setObjectState(sO_Inflater, getObjectEnumState(sO_Inflater, sO_WithGum)); setObjectState(sO_Swingie, getObjectEnumState(sO_Swingie, sO_Swinging)); setObjectState(sO_DudeJumped, getObjectEnumState(sO_DudeJumped, sO_No)); setObjectState(sO_Bridge, getObjectEnumState(sO_Bridge, sO_Convoluted)); setObjectState(sO_Guardian, getObjectEnumState(sO_Guardian, sO_OnRight)); setObjectState(sO_Grandma, getObjectEnumState(sO_Grandma, sO_In_14)); setObjectState(sO_Boot_15, getObjectEnumState(sO_Boot_15, sO_NotPresent)); setObjectState(sO_LeftPipe_15, getObjectEnumState(sO_LeftPipe_15, sO_OpenedShe)); setObjectState(sO_Pedestal_16, getObjectEnumState(sO_Pedestal_16, sO_IsFree)); setObjectState(sO_Cup, getObjectEnumState(sO_Cup, sO_InSmokeRoom)); setObjectState(sO_Pedestal_17, getObjectEnumState(sO_Pedestal_17, sO_IsFree)); setObjectState(sO_UsherHand, getObjectEnumState(sO_UsherHand, sO_WithoutCoin)); setObjectState(sO_RightPipe_17, getObjectEnumState(sO_RightPipe_17, sO_ClosedShe)); setObjectState(sO_Fly_17, 1); setObjectState(sO_DudeSwinged, 0); setObjectState(sO_Girl, getObjectEnumState(sO_Girl, sO_Swinging)); setObjectState(sO_Sugar, getObjectEnumState(sO_Sugar, sO_Present)); setObjectState(sO_Janitors, getObjectEnumState(sO_Janitors, sO_Together)); setObjectState(sO_Bag_22, getObjectEnumState(sO_Bag_22, sO_NotFallen)); setObjectState(sO_Grandpa, getObjectEnumState(sO_Grandpa, sO_InSock)); setObjectState(sO_CoinSlot_22, getObjectEnumState(sO_CoinSlot_22, sO_Empty)); setObjectState(sO_UpperHatch_23, getObjectEnumState(sO_UpperHatch_23, sO_Closed)); setObjectState(sO_LowerHatch_23, getObjectEnumState(sO_LowerHatch_23, sO_Closed)); setObjectState(sO_Lever_23, getObjectEnumState(sO_Lever_23, sO_NotTaken)); setObjectState(sO_LeverHandle_23, getObjectEnumState(sO_LeverHandle_23, sO_WithoutStool)); setObjectState(sO_LowerPipe_21, getObjectEnumState(sO_LowerPipe_21, sO_ClosedShe)); setObjectState(sO_StarsDown_24, getObjectEnumState(sO_StarsDown_24, sO_OpenedShe)); setObjectState(sO_Hatch_26, getObjectEnumState(sO_Hatch_26, sO_Closed)); setObjectState(sO_Sock_26, getObjectEnumState(sO_Sock_26, sO_NotHanging)); setObjectState(sO_LeftPipe_26, getObjectEnumState(sO_LeftPipe_26, sO_ClosedShe)); setObjectState(sO_Valve1_26, getObjectEnumState(sO_Valve1_26, sO_Opened)); setObjectState(sO_Valve2_26, getObjectEnumState(sO_Valve2_26, sO_Closed)); setObjectState(sO_Valve3_26, getObjectEnumState(sO_Valve3_26, sO_Closed)); setObjectState(sO_Valve4_26, getObjectEnumState(sO_Valve4_26, sO_Closed)); setObjectState(sO_Valve5_26, getObjectEnumState(sO_Valve5_26, sO_Opened)); setObjectState(sO_Pool, getObjectEnumState(sO_Pool, sO_Overfull)); setObjectState(sO_Plank_25, getObjectEnumState(sO_Plank_25, sO_NearDudesStairs)); setObjectState(sO_Driver, getObjectEnumState(sO_Driver, sO_WithSteering)); setObjectState(sO_Janitress, getObjectEnumState(sO_Janitress, sO_WithMop)); setObjectState(sO_LeftPipe_29, getObjectEnumState(sO_LeftPipe_29, sO_ClosedShe)); setObjectState(sO_LeftPipe_30, getObjectEnumState(sO_LeftPipe_30, sO_ClosedShe)); setObjectState(sO_Leg, getObjectEnumState(sO_Leg, sO_ShowingHeel)); setObjectState(sO_Tub, getObjectEnumState(sO_Tub, sO_EmptyShe)); setObjectState(sO_Cactus, getObjectEnumState(sO_Cactus, sO_NotGrown)); setObjectState(sO_Fireman, getObjectEnumState(sO_Fireman, sO_WithHose)); setObjectState(sO_Cube, getObjectEnumState(sO_Cube, sO_In_33)); setObjectState(sO_MommyOfHandle_32, getObjectEnumState(sO_MommyOfHandle_32, sO_WithoutHandle)); setObjectState(sO_Pedestal_33, getObjectEnumState(sO_Pedestal_33, sO_IsFree)); setObjectState(sO_Valve_34, getObjectEnumState(sO_Valve_34, sO_WithNothing)); setObjectState(sO_Stool_34, getObjectEnumState(sO_Stool_34, sO_WithoutDrawer)); setObjectState(sO_Plank_34, getObjectEnumState(sO_Plank_34, sO_Passive)); setObjectState(sO_Hatch_34, getObjectEnumState(sO_Hatch_34, sO_Closed)); setObjectState(sO_Valve_35, getObjectEnumState(sO_Valve_35, sO_TurnedOff)); setObjectState(sO_Carpet_35, getObjectEnumState(sO_Carpet_35, sO_CannotTake)); setObjectState(sO_CoinSlot_35, getObjectEnumState(sO_CoinSlot_35, sO_WithCoin)); setObjectState(sO_BellyInflater, getObjectEnumState(sO_BellyInflater, sO_WithCork)); setObjectState(sO_Jawcrucnher, getObjectEnumState(sO_Jawcrucnher, sO_WithoutCarpet)); setObjectState(sO_Guard_1, getObjectEnumState(sO_Guard_1, sO_On)); setObjectState(sO_Gurad_2, getObjectEnumState(sO_Gurad_2, sO_On)); setObjectState(sO_Guard_3, getObjectEnumState(sO_Guard_3, sO_On)); setObjectState(sO_Bottle_38, getObjectEnumState(sO_Bottle_38, sO_OnTheTable)); setObjectState(sO_Boss, getObjectEnumState(sO_Boss, sO_WithHammer)); }
void FullpipeEngine::updateMap(PreloadItem *pre) { switch (pre->sceneId) { case SC_1: updateMapPiece(PIC_MAP_S01, 1); if (pre->param == TrubaUp) updateMapPiece(PIC_MAP_P01, 1); if (pre->param == TrubaLeft) updateMapPiece(PIC_MAP_A13, 1); break; case SC_2: updateMapPiece(PIC_MAP_S02, 1); if (pre->param == TrubaLeft) updateMapPiece(PIC_MAP_P01, 1); break; case SC_3: updateMapPiece(PIC_MAP_S03, 1); break; case SC_4: updateMapPiece(PIC_MAP_S04, 1); if (pre->param == TrubaRight) updateMapPiece(PIC_MAP_P04, 1); break; case SC_5: updateMapPiece(PIC_MAP_S05, 1); if (pre->param == TrubaLeft) { updateMapPiece(PIC_MAP_P04, 1); } if (pre->param == TrubaUp) { updateMapPiece(PIC_MAP_P05, 1); updateMapPiece(PIC_MAP_A11, 1); } break; case SC_6: updateMapPiece(PIC_MAP_S06, 1); if (pre->param == TrubaUp) updateMapPiece(PIC_MAP_A12, 1); break; case SC_7: updateMapPiece(PIC_MAP_S07, 1); if (pre->param == TrubaLeft) updateMapPiece(PIC_MAP_P18, 1); break; case SC_8: updateMapPiece(PIC_MAP_S08, 1); if (pre->param == TrubaUp) updateMapPiece(PIC_MAP_P11, 1); if (pre->param == TrubaRight) updateMapPiece(PIC_MAP_P18, 1); return; case SC_9: updateMapPiece(PIC_MAP_S09, 1); if (pre->param == TrubaDown) updateMapPiece(PIC_MAP_P11, 1); return; case SC_10: updateMapPiece(PIC_MAP_S10, 1); if (pre->param == TrubaRight) updateMapPiece(PIC_MAP_P02, 1); break; case SC_11: updateMapPiece(PIC_MAP_S11, 1); if (pre->param == TrubaLeft) updateMapPiece(PIC_MAP_P02, 1); break; case SC_12: updateMapPiece(PIC_MAP_S12, 1); break; case SC_13: updateMapPiece(PIC_MAP_S13, 1); if (pre->param == TrubaUp) { updateMapPiece(PIC_MAP_P06, 1); updateMapPiece(PIC_MAP_A10, 1); } break; case SC_14: updateMapPiece(PIC_MAP_S14, 1); break; case SC_15: updateMapPiece(PIC_MAP_S15, 1); if (pre->param == TrubaUp) { updateMapPiece(PIC_MAP_P08, 1); updateMapPiece(PIC_MAP_A14, 1); } break; case SC_16: updateMapPiece(PIC_MAP_S16, 1); break; case SC_17: updateMapPiece(PIC_MAP_S17, 1); break; case SC_18: updateMapPiece(PIC_MAP_S1819, 1); if (pre->param == PIC_SC18_RTRUBA) updateMapPiece(PIC_MAP_P14, 1); break; case SC_19: updateMapPiece(PIC_MAP_S1819, 1); if (pre->param == PIC_SC19_RTRUBA3) { updateMapPiece(PIC_MAP_P15, 1); updateMapPiece(PIC_MAP_A09, 1); } break; case SC_20: updateMapPiece(PIC_MAP_S20, 1); break; case SC_21: updateMapPiece(PIC_MAP_S21, 1); if (pre->param == TrubaLeft) { updateMapPiece(PIC_MAP_P15, 1); updateMapPiece(PIC_MAP_A09, 1); } if (pre->param == TrubaDown) updateMapPiece(PIC_MAP_A08, 1); break; case SC_22: updateMapPiece(PIC_MAP_S22, 1); break; case SC_23: if (getObjectState(sO_UpperHatch_23) == getObjectEnumState(sO_UpperHatch_23, sO_Opened)) { updateMapPiece(PIC_MAP_S23_1, 0); updateMapPiece(PIC_MAP_S23_2, 1); updateMapPiece(PIC_MAP_P07, 1); } else { updateMapPiece(PIC_MAP_S23_1, 1); updateMapPiece(PIC_MAP_S23_2, 0); } break; case SC_24: updateMapPiece(PIC_MAP_S24, 1); if (pre->param == TrubaUp) updateMapPiece(PIC_MAP_A08, 1); if (pre->param == TrubaDown) { updateMapPiece(PIC_MAP_P13, 1); updateMapPiece(PIC_MAP_A07, 1); } break; case SC_25: updateMapPiece(PIC_MAP_S25, 1); break; case SC_26: updateMapPiece(PIC_MAP_S26, 1); if (pre->param == TrubaLeft) updateMapPiece(PIC_MAP_A06, 1); if (pre->param == TrubaUp) { updateMapPiece(PIC_MAP_P13, 1); updateMapPiece(PIC_MAP_A07, 1); } break; case SC_27: updateMapPiece(PIC_MAP_S27, 1); break; case SC_28: updateMapPiece(PIC_MAP_S28, 1); if (pre->param == TrubaRight) updateMapPiece(PIC_MAP_A06, 1); break; case SC_29: updateMapPiece(PIC_MAP_S29, 1); if (pre->param == TrubaUp) updateMapPiece(PIC_MAP_A05, 1); break; case SC_30: updateMapPiece(PIC_MAP_S30, 1); if (pre->param == TrubaLeft) updateMapPiece(PIC_MAP_P09, 1); if (pre->param == TrubaRight) updateMapPiece(PIC_MAP_A04, 1); break; case SC_31: updateMapPiece(PIC_MAP_S31_2, 1); if (getObjectState(sO_Cactus) == getObjectEnumState(sO_Cactus, sO_HasGrown)) updateMapPiece(PIC_MAP_S31_1, 1); if (pre->param == TrubaRight) updateMapPiece(PIC_MAP_P09, 1); break; case SC_32: updateMapPiece(PIC_MAP_S32_2, 1); if (getObjectState(sO_Cactus) == getObjectEnumState(sO_Cactus, sO_HasGrown)) updateMapPiece(PIC_MAP_S32_1, 1); break; case SC_33: updateMapPiece(PIC_MAP_S33, 1); break; case SC_34: updateMapPiece(PIC_MAP_S34, 1); if (pre->param == TrubaUp) updateMapPiece(PIC_MAP_A03, 1); break; case SC_35: updateMapPiece(PIC_MAP_S35, 1); if (pre->param == TrubaLeft) updateMapPiece(PIC_MAP_A02, 1); if (pre->param == TrubaDown) updateMapPiece(PIC_MAP_A03, 1); break; case SC_36: updateMapPiece(PIC_MAP_S36, 1); break; case SC_37: updateMapPiece(PIC_MAP_S37, 1); updateMapPiece(PIC_MAP_A01, 1); break; case SC_38: updateMapPiece(PIC_MAP_S38, 1); switch (pre->preloadId1) { case SC_15: updateMapPiece(PIC_MAP_P16, 1); break; case SC_1: updateMapPiece(PIC_MAP_P10, 1); break; case SC_10: updateMapPiece(PIC_MAP_P17, 1); break; case SC_19: updateMapPiece(PIC_MAP_P12, 1); break; } break; } }