Sgame CreateGame(int id_map) { Sgame game; /* Creation du hero */ Shero Heros = CreateHero(POSITION_DEPART_HEROS_X, POSITION_DEPART_HEROS_Y,id_map,"sasha",PARQUET,DIRECTION_DEPART_HEROS); game.hero= Heros; /* Demarrage du son */ FMOD_SYSTEM *system; FMOD_SOUND *son; FMOD_System_Create(&system); FMOD_System_Init(system, 7, FMOD_INIT_NORMAL, NULL); FMOD_System_CreateSound(system, "data/music/Menutheme.mp3", FMOD_2D | FMOD_CREATESTREAM | FMOD_LOOP_NORMAL, 0, &son); FMOD_Sound_SetLoopCount(son, -1); FMOD_System_PlaySound(system, son, NULL, 0, NULL); game.pokedex[9]=game.hero.pokemon[0]; game.pokedex[9].vu=1; game.son = son; game.system = system; game.scenario=0; /* Ajout des personnages non jouables du jeu */ addNpc(&game); return game; }
void World::OnFreshStart() { currentLevelIdx = 0; CreateHero(); InitLevelObjects(); Logger::Log("World::OnFreshStart", LOW); }
void StartGame () { unitList = NULL; /* --- Create our hero's ship --- */ hero = CreateHero (); /* --- Generate the map --- */ GenerateTerrain (); /* --- Place the people --- */ PlacePeople (); /* --- Place aliens --- */ PlaceAliens (); }
VOID Init(HWND hWnd, WPARAM wParam, LPARAM lParam) { //加载背景位图 m_hBackgroundBmp = LoadBitmap(((LPCREATESTRUCT)lParam)->hInstance, MAKEINTRESOURCE(IDB_BACKGROUND)); //加载Building位图 m_hBuildingBmp = LoadBitmap(((LPCREATESTRUCT)lParam)->hInstance, MAKEINTRESOURCE(IDB_BUILDING)); //加载Building位图 m_hHeroBmp = LoadBitmap(((LPCREATESTRUCT)lParam)->hInstance, MAKEINTRESOURCE(IDB_HERO)); //加载游戏状态位图 m_hGameStatusBmp = LoadBitmap(((LPCREATESTRUCT)lParam)->hInstance, MAKEINTRESOURCE(IDB_GAME_STATUS)); //加载Block位图 int k; for (k = 0; k < BLOCK_COLOR_NUM; ++k) { m_hBlockBmp[k] = LoadBitmap(((LPCREATESTRUCT)lParam)->hInstance, MAKEINTRESOURCE(m_blockBmpNames[k])); } //加载屋顶位图 for (k = 0; k < ROOF_COLOR_NUM; ++k) { m_hRoofkBmp[k] = LoadBitmap(((LPCREATESTRUCT)lParam)->hInstance, MAKEINTRESOURCE(m_roofBmpNames[k])); } //创建英雄、建筑 m_hero = CreateHero(100, 100, 30, 50, m_hHeroBmp, 0, 3); m_building = CreateBuilding(0, 70, 500, 250, m_hBuildingBmp); //创建地形 for (k = 0; k < MAX_TERRIAN_NUM; ++k) { if (k % 4 == 0) { continue; } m_terrian[k] = CreateTerrian(k * 65, 100 + 50 * (k % 2), 65, 300, m_hBlockBmp[k % 4], m_hRoofkBmp[k % 2], 33, 65); } //创建游戏状态 m_gameStatus = CreateGameStatus(0, 0, 40, 30, m_hGameStatusBmp); //启动计时器 SetTimer(hWnd, TIMER, 30, NULL); }