From b5886bcf2a79ad14e586d69ee9fd01f87bac9c95 Mon Sep 17 00:00:00 2001 From: hgn Date: Wed, 29 Dec 2021 16:29:48 +0000 Subject: [PATCH] r1 --- fishladder.c | 30 +++++++++---------- fishladder_resources.h | 66 +++++++++++++++--------------------------- 2 files changed, 39 insertions(+), 57 deletions(-) diff --git a/fishladder.c b/fishladder.c index 9d53dc8..c9f2eb6 100644 --- a/fishladder.c +++ b/fishladder.c @@ -903,9 +903,9 @@ static int map_load( const char *str, const char *name ) // Level selection area - for( int i = 0; i < vg_list_size( button_grids ); i ++ ) + for( int i = 0; i < vg_list_size( career_packs ); i ++ ) { - struct button_grid *grid = &button_grids[ i ]; + struct career_level_pack *grid = &career_packs[ i ]; for( int y = 0; y < grid->dims[1]; y ++ ) { @@ -1127,9 +1127,9 @@ static void career_serialize(void) memset( encoded.reserved, 0, sizeof( encoded.reserved ) ); - for( int i = 0; i < vg_list_size( career_serializable ); i ++ ) + for( int i = 0; i < vg_list_size( career_packs ); i ++ ) { - struct serializable_set *set = &career_serializable[i]; + struct career_level_pack *set = &career_packs[i]; for( int j = 0; j < set->count; j ++ ) { @@ -1178,9 +1178,9 @@ static void career_pass_level( struct cmp_level *lvl, int score, int upload ) } // Check ALL maps to trigger master engineer - for( int i = 0; i < vg_list_size( career_serializable ); i ++ ) + for( int i = 0; i < vg_list_size( career_packs ); i ++ ) { - struct serializable_set *set = &career_serializable[i]; + struct career_level_pack *set = &career_packs[i]; for( int j = 0; j < set->count; j ++ ) { @@ -1231,9 +1231,9 @@ static void career_load(void) vg_info( "No save file... Using blank one\n" ); // Reset memory - for( int i = 0; i < vg_list_size( career_serializable ); i ++ ) + for( int i = 0; i < vg_list_size( career_packs ); i ++ ) { - struct serializable_set *set = &career_serializable[i]; + struct career_level_pack *set = &career_packs[i]; for( int j = 0; j < set->count; j ++ ) career_reset_level( &set->pack[j] ); @@ -1243,9 +1243,9 @@ static void career_load(void) // ================================= // Decode everything from dstate - for( int i = 0; i < vg_list_size( career_serializable ); i ++ ) + for( int i = 0; i < vg_list_size( career_packs ); i ++ ) { - struct serializable_set *set = &career_serializable[i]; + struct career_level_pack *set = &career_packs[i]; for( int j = 0; j < set->count; j ++ ) { @@ -2310,9 +2310,9 @@ static void level_selection_buttons(void) if( vg_get_button_down( "primary" ) ) select_from = NULL; - for( int i = 0; i < vg_list_size( button_grids ); i ++ ) + for( int i = 0; i < vg_list_size( career_packs ); i ++ ) { - struct button_grid *grid = &button_grids[i]; + struct career_level_pack *grid = &career_packs[i]; int j = 0; @@ -2322,7 +2322,7 @@ static void level_selection_buttons(void) { if( j < grid->count ) { - struct cmp_level *lvl = &grid->levels[ j ]; + struct cmp_level *lvl = &grid->pack[ j ]; // Determine colour if( lvl->unlocked ) @@ -3251,9 +3251,9 @@ void vg_start(void) size_level_texts = 6*9*7 ; - for( int i = 0; i < vg_list_size( career_serializable ); i ++ ) + for( int i = 0; i < vg_list_size( career_packs ); i ++ ) { - struct serializable_set *set = &career_serializable[i]; + struct career_level_pack *set = &career_packs[i]; for( int j = 0; j < set->count; j ++ ) { struct cmp_level *lvl = &set->pack[j]; diff --git a/fishladder_resources.h b/fishladder_resources.h index ef9dcd1..d5a9a6e 100644 --- a/fishladder_resources.h +++ b/fishladder_resources.h @@ -656,6 +656,8 @@ struct cmp_level int serial_id; int is_tutorial; + v2i world_pos; + #ifdef VG_STEAM SteamLeaderboard_t steam_leaderboard; #endif @@ -909,24 +911,37 @@ static struct cmp_level cmp_levels_grad[] = #define NUM_CAMPAIGN_LEVELS (vg_list_size( cmp_levels_tutorials ) + vg_list_size( cmp_levels_basic ) + vg_list_size( cmp_levels_grad )) -static struct serializable_set +static struct career_level_pack { struct cmp_level *pack; int count; + + v3f primary_colour; + v2i origin; + v2i dims; } -career_serializable[] = +career_packs[] = { { .pack = cmp_levels_tutorials, - .count = vg_list_size( cmp_levels_tutorials ) + .count = vg_list_size( cmp_levels_tutorials ), + .primary_colour = { 0.204f, 0.345f, 0.553f }, + .origin = { -5, 0 }, + .dims = { 1, 4 } }, { .pack = cmp_levels_basic, - .count = vg_list_size( cmp_levels_basic ) + .count = vg_list_size( cmp_levels_basic ), + .primary_colour = { 0.304f, 0.245f, 0.553f }, + .origin = { -3, 0 }, + .dims = { 3, 6 } }, { .pack = cmp_levels_grad, - .count = vg_list_size( cmp_levels_grad ) + .count = vg_list_size( cmp_levels_grad ), + .primary_colour = { 0.553f, 0.345f, 0.204f }, + .origin = { -5, 7 }, + .dims = { 4, 1 } } }; @@ -936,18 +951,18 @@ static void career_local_data_init(void) struct cmp_level *level_ptrs[ NUM_CAMPAIGN_LEVELS ]; // COllect pointers - for( int i = 0; i < vg_list_size( career_serializable ); i ++ ) + for( int i = 0; i < vg_list_size( career_packs ); i ++ ) { - struct serializable_set *set = &career_serializable[i]; + struct career_level_pack *set = &career_packs[i]; for( int j = 0; j < set->count; j ++ ) level_ptrs[ set->pack[j].serial_id ] = &set->pack[j]; } // Apply - for( int i = 0; i < vg_list_size( career_serializable ); i ++ ) + for( int i = 0; i < vg_list_size( career_packs ); i ++ ) { - struct serializable_set *set = &career_serializable[i]; + struct career_level_pack *set = &career_packs[i]; for( int j = 0; j < set->count; j ++ ) { @@ -957,36 +972,3 @@ static void career_local_data_init(void) } } } - -static struct button_grid -{ - v3f primary_colour; - v2i origin; - v2i dims; - struct cmp_level *levels; - int count; -} -button_grids[] = -{ - { - .primary_colour = { 0.204f, 0.345f, 0.553f }, - .origin = { -5, 0 }, - .dims = { 1, 4 }, - .levels = cmp_levels_tutorials, - .count = vg_list_size( cmp_levels_tutorials ) - }, - { - .primary_colour = { 0.304f, 0.245f, 0.553f }, - .origin = { -3, 0 }, - .dims = { 3, 6 }, - .levels = cmp_levels_basic, - .count = vg_list_size( cmp_levels_basic ) - }, - { - .primary_colour = { 0.553f, 0.345f, 0.204f }, - .origin = { -5, 7 }, - .dims = { 4, 1 }, - .levels = cmp_levels_grad, - .count = vg_list_size( cmp_levels_grad ) - } -}; -- 2.25.1