From e39e549cd0bdc96ae4785abffb092cc7a7d4349b Mon Sep 17 00:00:00 2001 From: En Yi Date: Mon, 6 Nov 2023 20:49:30 +0800 Subject: [PATCH] Add sound in asset info --- scene_test.c | 6 ------ scenes/assets_loader.c | 17 ++++++++++++++++- 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/scene_test.c b/scene_test.c index e377199..d2d4835 100644 --- a/scene_test.c +++ b/scene_test.c @@ -44,18 +44,12 @@ int main(void) #endif init_item_creation(&engine.assets); - add_sound(&engine.assets, "snd_jump", "res/jump.ogg"); - add_sound(&engine.assets, "snd_land", "res/land.ogg"); - add_sound(&engine.assets, "snd_wdrop", "res/water_land.ogg"); - add_sound(&engine.assets, "snd_bland", "res/boulder_move.ogg"); - add_sound(&engine.assets, "snd_bubble", "res/bubble.ogg"); load_sfx(&engine, "snd_jump", PLAYER_JMP_SFX); load_sfx(&engine, "snd_land", PLAYER_LAND_SFX); load_sfx(&engine, "snd_wdrop", WATER_IN_SFX); load_sfx(&engine, "snd_bland", BOULDER_LAND_SFX); load_sfx(&engine, "snd_bubble", BUBBLE_SFX); - LevelScene_t scene; scene.scene.engine = &engine; init_sandbox_scene(&scene); diff --git a/scenes/assets_loader.c b/scenes/assets_loader.c index 173105d..106ce84 100644 --- a/scenes/assets_loader.c +++ b/scenes/assets_loader.c @@ -6,6 +6,8 @@ typedef enum AssetInfoType { TEXTURE_INFO, SPRITE_INFO, + SOUND_INFO, + EMITTER_INFO, LEVELPACK_INFO, INVALID_INFO }AssetInfoType_t; @@ -186,6 +188,10 @@ bool load_from_infofile(const char* file, Assets_t* assets) { info_type = SPRITE_INFO; } + else if (strcmp(tmp, "Sound") == 0) + { + info_type = SOUND_INFO; + } else if (strcmp(tmp, "LevelPack") == 0) { info_type = LEVELPACK_INFO; @@ -213,7 +219,16 @@ bool load_from_infofile(const char* file, Assets_t* assets) break; } printf("Added texture %s as %s\n", info_str, name); - //strcpy(tmp2, name); + } + break; + case SOUND_INFO: + { + if (add_sound(assets, name, info_str) == NULL) + { + printf("Unable to add texture at line %lu\n", line_num); + break; + } + printf("Added sound %s as %s\n", info_str, name); } break; case LEVELPACK_INFO: