28#include "ResourceManager.h"
29#include "Pac-Man_Evolution.h"
32extern unsigned char pme_icon[];
33extern int pme_icon_size;
36ResourceManager* ResourceManager::mInstance =
nullptr;
39ResourceManager& ResourceManager::Instance()
41 if(!mInstance) mInstance =
new(std::nothrow) ResourceManager;
46void ResourceManager::Terminate()
48 if(mInstance)
delete mInstance;
52ResourceManager::ResourceManager()
55 guiMenu = guiGame = 0;
56 fntConsole = fntInfo = fntScore = 0;
57 musMenu[0] = musMenu[1] = musMenu[2] = 0;
58 musGame[0] = musGame[1] = musGame[2] = musGame[3] = 0;
59 sndThunder = sndClickOK = sndClickCancel = sndClickCancel2 = sndExit = 0;
60 sndGameAbort = sndGameOver = sndGameStarting = sndGamePlayerDeath = sndGameEatPellet = sndGameEatPelletPower = sndGameEatGhost = 0;
61 imgIcon = imgMenu = imgHallOfFame = 0;
63 sprPacman = sprGhostRed = sprGhostPink = sprGhostBlue = sprGhostOrange = sprTargets = 0;
64 sprPellet = sprPelletPower = 0;
67ResourceManager::~ResourceManager()
73Sint32 ResourceManager::load()
75 Sint32 bErrorFlag = 0;
76 Main& mC64 = Main::Instance();
77 ImageMgr& mImage = mC64.IImageMgr();
78 SpriteMgr& mSprite = mC64.ISpriteMgr();
79 FontMgr& mFont = Main::Instance().IFontMgr();
80 AudioTrackMgr& mAudio = Main::Instance().IAudioTrackMgr();
85 fntConsole = mFont.load(PME_RESOURCES,
"console");
88 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the console font.\n");
92 if(fntInfo <= 0 && bErrorFlag == 0)
94 fntInfo = mFont.load(PME_RESOURCES,
"info");
97 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the info font.\n");
101 if(fntScore <= 0 && bErrorFlag == 0)
103 fntScore = mFont.load(PME_RESOURCES,
"score");
106 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the score font.\n");
112 if(guiMenu <= 0 && bErrorFlag == 0)
114 guiMenu = mC64.IGUIMgr().create(
"menu");
117 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not create the menu panel.\n");
122 Panel* myPanel = mC64.IGUIMgr().getPanel(guiMenu);
123 myPanel->baseWidget().setSize(200, 250);
124 myPanel->baseWidget().setPosition(PH_CENTER, Position(PH_CENTER, -50.0f));
125 myPanel->baseWidget().setBorderWidth(0);
126 myPanel->baseWidget().features(WIDGET_FEATURE_BGDISABLE);
129 myPanel->createWidget(
"Exit", WT_BUTTON, ID_EXIT);
130 myPanel->getWidget(ID_EXIT)->setKey(SDLK_ESCAPE);
131 myPanel->getWidget(ID_EXIT)->setText(
"");
132 myPanel->getWidget(ID_EXIT)->setBgSprite(PME_RESOURCES,
"widget_exit");
133 myPanel->getWidget(ID_EXIT)->setPosition(PH_CENTER, PH_BOTTOM);
135 myPanel->createWidget(
"StandardGame", WT_BUTTON, ID_STANDARDGAME);
136 myPanel->getWidget(ID_STANDARDGAME)->setKey(SDLK_S);
137 myPanel->getWidget(ID_STANDARDGAME)->setText(
"");
138 myPanel->getWidget(ID_STANDARDGAME)->setBgSprite(PME_RESOURCES,
"widget_game_standard");
139 myPanel->getWidget(ID_STANDARDGAME)->setPosition(PH_CENTER, PH_TOP);
141 myPanel->createWidget(
"EvolutionGame", WT_BUTTON, ID_EVOLUTIONGAME);
142 myPanel->getWidget(ID_EVOLUTIONGAME)->setKey(SDLK_E);
143 myPanel->getWidget(ID_EVOLUTIONGAME)->setText(
"");
144 myPanel->getWidget(ID_EVOLUTIONGAME)->setBgSprite(PME_RESOURCES,
"widget_game_evolution");
145 myPanel->getWidget(ID_EVOLUTIONGAME)->setPosition(PH_CENTER, Position(PH_TOP, 50.0f));
147 #ifdef PME_WORKBENCH_ENABLED
148 myPanel->createWidget(
"Workbench", WT_BUTTON, ID_WORKBENCHGAME);
149 myPanel->getWidget(ID_WORKBENCHGAME)->setKey(SDLK_w);
150 myPanel->getWidget(ID_WORKBENCHGAME)->setText(
"");
151 myPanel->getWidget(ID_WORKBENCHGAME)->setBgSprite(PME_RESOURCES,
"widget_game_workbench");
152 myPanel->getWidget(ID_WORKBENCHGAME)->setPosition(PH_CENTER, Position(PH_TOP, 100.0f));
155 myPanel->createWidget(
"HoF", WT_BUTTON, ID_HALLOFFAME);
156 myPanel->getWidget(ID_HALLOFFAME)->setKey(SDLK_H);
157 myPanel->getWidget(ID_HALLOFFAME)->setText(
"");
158 myPanel->getWidget(ID_HALLOFFAME)->setBgSprite(PME_RESOURCES,
"widget_hof");
159 #ifdef PME_WORKBENCH_ENABLED
160 myPanel->getWidget(ID_HALLOFFAME)->setPosition(PH_CENTER, Position(PH_TOP, 150.0f));
162 myPanel->getWidget(ID_HALLOFFAME)->setPosition(PH_CENTER, Position(PH_TOP, 100.0f));
168 if(guiGame <= 0 && bErrorFlag == 0)
170 guiGame = mC64.IGUIMgr().create(
"game");
173 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not create the game panel.\n");
178 Panel* myPanel = mC64.IGUIMgr().getPanel(guiGame);
179 myPanel->baseWidget().setSize(300, 250);
180 myPanel->baseWidget().setPosition(PH_CENTER, PH_CENTER);
181 myPanel->baseWidget().setBorderWidth(0);
182 myPanel->baseWidget().features(WIDGET_FEATURE_BGFIT);
183 myPanel->baseWidget().setBgImage(PME_RESOURCES,
"messageEnd_bg");
186 myPanel->createWidget(
"GameLabel", WT_LABEL, ID_GAME_LABEL);
187 myPanel->getWidget(ID_GAME_LABEL)->setFont(get(RM_FONT_SCORE));
188 myPanel->getWidget(ID_GAME_LABEL)->setText(
"Game Aborted");
189 myPanel->getWidget(ID_GAME_LABEL)->setPosition(PH_CENTER, Position(PH_TOP, 20.0f));
190 myPanel->getWidget(ID_GAME_LABEL)->features(WIDGET_FEATURE_BGDISABLE);
192 myPanel->createWidget(
"GameEnterName", WT_TEXTBOX, ID_GAME_ENTERNAME);
193 myPanel->getWidget(ID_GAME_ENTERNAME)->setSize(200, 48);
194 myPanel->getWidget(ID_GAME_ENTERNAME)->setMargin(5, 20, 0, 20);
195 myPanel->getWidget(ID_GAME_ENTERNAME)->setPosition(PH_CENTER, PH_CENTER);
196 myPanel->getWidget(ID_GAME_ENTERNAME)->setFont(fntInfo);
197 myPanel->getWidget(ID_GAME_ENTERNAME)->setText(
"PacMan");
198 myPanel->getWidget(ID_GAME_ENTERNAME)->setBgSprite(PME_RESOURCES,
"widget_input");
200 myPanel->createWidget(
"GameClose", WT_BUTTON, ID_GAME_CLOSE);
201 myPanel->getWidget(ID_GAME_CLOSE)->setKey(SDLK_RETURN);
202 myPanel->getWidget(ID_GAME_CLOSE)->setText(
"");
203 myPanel->getWidget(ID_GAME_CLOSE)->setBgSprite(PME_RESOURCES,
"widget_close");
204 myPanel->getWidget(ID_GAME_CLOSE)->setPosition(PH_CENTER, Position(PH_BOTTOM, -25.0f));
209 if(musMenu[0] <= 0 && bErrorFlag == 0)
211 musMenu[0] = mAudio.load(PME_RESOURCES,
"menu_1", ATT_MUSIC);
214 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the menu_1 music.\n");
218 if(musMenu[1] <= 0 && bErrorFlag == 0)
220 musMenu[1] = mAudio.load(PME_RESOURCES,
"menu_2", ATT_MUSIC);
223 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the menu_2 music.\n");
227 if(musMenu[2] <= 0 && bErrorFlag == 0)
229 musMenu[2] = mAudio.load(PME_RESOURCES,
"menu_3", ATT_MUSIC);
232 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the menu_3 music.\n");
236 if(musGame[0] <= 0 && bErrorFlag == 0)
238 musGame[0] = mAudio.load(PME_RESOURCES,
"game_1", ATT_MUSIC);
241 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the game_1 music.\n");
245 if(musGame[1] <= 0 && bErrorFlag == 0)
247 musGame[1] = mAudio.load(PME_RESOURCES,
"game_2", ATT_MUSIC);
250 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the game_2 music.\n");
254 if(musGame[2] <= 0 && bErrorFlag == 0)
256 musGame[2] = mAudio.load(PME_RESOURCES,
"game_3", ATT_MUSIC);
259 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the game_3 music.\n");
263 if(musGame[3] <= 0 && bErrorFlag == 0)
265 musGame[3] = mAudio.load(PME_RESOURCES,
"game_4", ATT_MUSIC);
268 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the game_4 music.\n");
274 if(sndThunder <= 0 && bErrorFlag == 0)
276 sndThunder = mAudio.load(PME_RESOURCES,
"thunder", ATT_SFX);
279 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the thunder sound.\n");
283 if(sndClickOK <= 0 && bErrorFlag == 0)
285 sndClickOK = mAudio.load(PME_RESOURCES,
"click_ok", ATT_SFX);
288 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the click_ok sound.\n");
292 if(sndClickCancel <= 0 && bErrorFlag == 0)
294 sndClickCancel = mAudio.load(PME_RESOURCES,
"click_cancel", ATT_SFX);
295 if(sndClickCancel < 0)
297 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the click_cancel sound.\n");
301 if(sndClickCancel2 <= 0 && bErrorFlag == 0)
303 sndClickCancel2 = mAudio.load(PME_RESOURCES,
"click_cancel2", ATT_SFX);
304 if(sndClickCancel2 < 0)
306 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the click_cancel2 sound.\n");
310 if(sndExit <= 0 && bErrorFlag == 0)
312 sndExit = mAudio.load(PME_RESOURCES,
"exit", ATT_SFX);
315 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the exit sound.\n");
319 if(sndGameAbort <= 0 && bErrorFlag == 0)
321 sndGameAbort = mAudio.load(PME_RESOURCES,
"game_abort", ATT_SFX);
324 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the game_abort sound.\n");
328 if(sndGameOver <= 0 && bErrorFlag == 0)
330 sndGameOver = mAudio.load(PME_RESOURCES,
"game_over", ATT_SFX);
333 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the game_over sound.\n");
337 if(sndGameStarting <= 0 && bErrorFlag == 0)
339 sndGameStarting = mAudio.load(PME_RESOURCES,
"game_starting", ATT_SFX);
340 if(sndGameStarting < 0)
342 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the game_starting sound.\n");
346 if(sndGamePlayerDeath <= 0 && bErrorFlag == 0)
348 sndGamePlayerDeath = mAudio.load(PME_RESOURCES,
"game_player_death", ATT_SFX);
349 if(sndGamePlayerDeath < 0)
351 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the game_player_death sound.\n");
355 if(sndGameEatPellet <= 0 && bErrorFlag == 0)
357 sndGameEatPellet = mAudio.load(PME_RESOURCES,
"game_eat_pellet", ATT_SFX);
358 if(sndGameEatPellet < 0)
360 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the game_eat_pellet sound.\n");
364 if(sndGameEatPelletPower <= 0 && bErrorFlag == 0)
366 sndGameEatPelletPower = mAudio.load(PME_RESOURCES,
"game_eat_pellet_power", ATT_SFX);
367 if(sndGameEatPelletPower < 0)
369 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the game_eat_pellet_power sound.\n");
373 if(sndGameEatGhost <= 0 && bErrorFlag == 0)
375 sndGameEatGhost = mAudio.load(PME_RESOURCES,
"game_player_eat_ghost", ATT_SFX);
376 if(sndGameEatGhost < 0)
378 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the game_player_eat_ghost sound.\n");
384 if(imgIcon <= 0 && bErrorFlag == 0)
386 imgIcon = mImage.load(pme_icon, pme_icon_size,
"PME-icon");
389 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not create the PME Icon.\n");
393 if(imgMenu <= 0 && bErrorFlag == 0)
395 imgMenu = mImage.load(PME_RESOURCES,
"menu_bg");
398 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the Menu BG.\n");
402 if(imgHallOfFame <= 0 && bErrorFlag == 0)
404 imgHallOfFame = mImage.load(PME_RESOURCES,
"hof_bg");
405 if(imgHallOfFame < 0)
407 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the HallOfFame BG.\n");
413 if(curArrow <= 0 && bErrorFlag == 0)
415 curArrow = mC64.ICursorMgr().load(PME_RESOURCES,
"cursor");
418 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the cursor.\n");
423 mC64.ICursorMgr().select(curArrow);
424 mC64.ICursorMgr().hide();
429 if(sprPacman <= 0 && bErrorFlag == 0)
431 sprPacman = mSprite.load(PME_RESOURCES,
"pacman");
434 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the pacman sprite.\n");
438 if(sprGhostRed <= 0 && bErrorFlag == 0)
440 sprGhostRed = mSprite.load(PME_RESOURCES,
"ghost_red");
443 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the ghost_red sprite.\n");
447 if(sprGhostPink <= 0 && bErrorFlag == 0)
449 sprGhostPink = mSprite.load(PME_RESOURCES,
"ghost_pink");
452 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the ghost_pink sprite.\n");
456 if(sprGhostBlue <= 0 && bErrorFlag == 0)
458 sprGhostBlue = mSprite.load(PME_RESOURCES,
"ghost_blue");
461 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the ghost_blue sprite.\n");
465 if(sprGhostOrange <= 0 && bErrorFlag == 0)
467 sprGhostOrange = mSprite.load(PME_RESOURCES,
"ghost_orange");
468 if(sprGhostOrange < 0)
470 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the ghost_orange sprite.\n");
474 if(sprPellet <= 0 && bErrorFlag == 0)
476 sprPellet = mSprite.load(PME_RESOURCES,
"pellet");
479 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the pellet sprite.\n");
483 if(sprPelletPower <= 0 && bErrorFlag == 0)
485 sprPelletPower = mSprite.load(PME_RESOURCES,
"pellet_power");
486 if(sprPelletPower < 0)
488 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the pellet_power sprite.\n");
492 if(sprTargets <= 0 && bErrorFlag == 0)
494 sprTargets = mSprite.load(PME_RESOURCES,
"targets");
497 mC64.ILogMgr().get()->msg(LML_CRITICAL,
" [ResourceManager] Critical: could not load the targets sprite.\n");
503 auto hitime = std::chrono::high_resolution_clock::now().time_since_epoch().count();
504 Main::Instance().ITool().randSeedMWC((Sint32)hitime);
505 Main::Instance().ITool().randSeedWELL((Sint32)hitime);
518Sint32 ResourceManager::free()
520 Main& mC64 = Main::Instance();
522 if(sprPacman > 0) mC64.ISpriteMgr().close(sprPacman);
524 if(sprGhostRed > 0) mC64.ISpriteMgr().close(sprGhostRed);
526 if(sprGhostPink > 0) mC64.ISpriteMgr().close(sprGhostPink);
528 if(sprGhostBlue > 0) mC64.ISpriteMgr().close(sprGhostBlue);
530 if(sprGhostOrange > 0) mC64.ISpriteMgr().close(sprGhostOrange);
532 if(sprPellet > 0) mC64.ISpriteMgr().close(sprPellet);
534 if(sprPelletPower > 0) mC64.ISpriteMgr().close(sprPelletPower);
536 if(sprTargets > 0) mC64.ISpriteMgr().close(sprTargets);
539 if(curArrow > 0) mC64.ICursorMgr().close(curArrow);
542 if(imgIcon > 0) mC64.IImageMgr().close(imgIcon);
544 if(imgMenu > 0) mC64.IImageMgr().close(imgMenu);
546 if(imgHallOfFame > 0) mC64.IImageMgr().close(imgHallOfFame);
549 if(sndThunder > 0) mC64.IAudioTrackMgr().close(sndThunder);
551 if(sndClickOK > 0) mC64.IAudioTrackMgr().close(sndClickOK);
553 if(sndClickCancel2 > 0) mC64.IAudioTrackMgr().close(sndClickCancel2);
555 if(sndClickCancel > 0) mC64.IAudioTrackMgr().close(sndClickCancel);
557 if(sndExit > 0) mC64.IAudioTrackMgr().close(sndExit);
559 if(sndGameAbort > 0) mC64.IAudioTrackMgr().close(sndGameAbort);
561 if(sndGameOver > 0) mC64.IAudioTrackMgr().close(sndGameOver);
563 if(sndGameStarting > 0) mC64.IAudioTrackMgr().close(sndGameStarting);
565 if(sndGamePlayerDeath > 0) mC64.IAudioTrackMgr().close(sndGamePlayerDeath);
566 sndGamePlayerDeath = 0;
567 if(sndGameEatPellet > 0) mC64.IAudioTrackMgr().close(sndGameEatPellet);
568 sndGameEatPellet = 0;
569 if(sndGameEatPelletPower > 0) mC64.IAudioTrackMgr().close(sndGameEatPelletPower);
570 sndGameEatPelletPower = 0;
571 if(sndGameEatGhost > 0) mC64.IAudioTrackMgr().close(sndGameEatGhost);
574 if(musMenu[0] > 0) mC64.IAudioTrackMgr().close(musMenu[0]);
576 if(musMenu[1] > 0) mC64.IAudioTrackMgr().close(musMenu[1]);
578 if(musMenu[2] > 0) mC64.IAudioTrackMgr().close(musMenu[2]);
580 if(musGame[0] > 0) mC64.IAudioTrackMgr().close(musGame[0]);
582 if(musGame[1] > 0) mC64.IAudioTrackMgr().close(musGame[1]);
584 if(musGame[2] > 0) mC64.IAudioTrackMgr().close(musGame[2]);
586 if(musGame[3] > 0) mC64.IAudioTrackMgr().close(musGame[3]);
589 if(fntConsole > 0) mC64.IFontMgr().close(fntConsole);
591 if(fntInfo > 0) mC64.IFontMgr().close(fntInfo);
593 if(fntScore > 0) mC64.IFontMgr().close(fntScore);
596 if(guiMenu > 0) mC64.IGUIMgr().close(guiMenu);
599 if(guiGame > 0) mC64.IGUIMgr().close(guiGame);
605Sint32 ResourceManager::get(Sint32 iID)
const
607 SpriteMgr& mSprite = Main::Instance().ISpriteMgr();
612 case RM_PANEL_MENU:
return guiMenu;
613 case RM_PANEL_GAME:
return guiGame;
615 case RM_FONT_CONSOLE:
return fntConsole;
616 case RM_FONT_INFO:
return fntInfo;
617 case RM_FONT_SCORE:
return fntScore;
619 case RM_MUS_MENU:
return musMenu[Main::Instance().ITool().randMWC() % 3];
620 case RM_MUS_GAME:
return musGame[Main::Instance().ITool().randMWC() % 4];
622 case RM_SND_THUNDER:
return sndThunder;
623 case RM_SND_CLICKOK:
return sndClickOK;
624 case RM_SND_CLICKCANCEL:
return sndClickCancel;
625 case RM_SND_CLICKCANCEL2:
return sndClickCancel2;
626 case RM_SND_EXIT:
return sndExit;
627 case RM_SND_GAMEABORT:
return sndGameAbort;
628 case RM_SND_GAMEOVER:
return sndGameOver;
629 case RM_SND_GAMESTARTING:
return sndGameStarting;
630 case RM_SND_GAMEPLAYERDEATH:
return sndGamePlayerDeath;
631 case RM_SND_GAMEEATPELLET:
return sndGameEatPellet;
632 case RM_SND_GAMEEATPELLETPOWER:
return sndGameEatPelletPower;
633 case RM_SND_GAMEEATGHOST:
return sndGameEatGhost;
635 case RM_IMG_ICON:
return imgIcon;
636 case RM_IMG_MENU:
return imgMenu;
637 case RM_IMG_HOF:
return imgHallOfFame;
641 iTmp = mSprite.child(sprPacman);
642 Sprite* pSpr = mSprite.get(sprPacman);
643 if(bPacManDeathAnim == 0) pSpr->setAnimRange(SPR_STATE_NORMAL, 10, 12);
644 else pSpr->setAnimRange(SPR_STATE_NORMAL, 0, 12);
647 case RM_SPR_GHOSTRED:
return mSprite.child(sprGhostRed);
648 case RM_SPR_GHOSTPINK:
return mSprite.child(sprGhostPink);
649 case RM_SPR_GHOSTBLUE:
return mSprite.child(sprGhostBlue);
650 case RM_SPR_GHOSTORANGE:
return mSprite.child(sprGhostOrange);
651 case RM_SPR_PELLET:
return sprPellet;
652 case RM_SPR_PELLETPOWER:
return mSprite.child(sprPelletPower);
653 case RM_SPR_TARGETS:
return mSprite.child(sprTargets);
655 default:
return PME_BREAK;
659Sint32 ResourceManager::setPacManDeathAnim(Sint32 bFlag)
661 if(bFlag <= 0) bPacManDeathAnim = 0;
662 else bPacManDeathAnim = 1;