-static void ent_miniworld_preupdate(void){
- if( world_static.active_instance == k_world_purpose_client ){
- if( button_down(k_srbind_mleft) ){
- global_miniworld.transition = -1;
- global_miniworld.t = 1.0f;
-
- global_miniworld.cam = skaterift.cam;
- m4x3_transform_camera( global_miniworld.mmdl, &global_miniworld.cam );
- world_switch_instance(0);
+ /* icons
+ * ---------------------*/
+ font3d_bind( &gui.font, k_font_shader_default, 0, NULL, cam );
+ mesh_bind( &gui.icons_mesh );
+
+ glActiveTexture( GL_TEXTURE0 );
+ glBindTexture( GL_TEXTURE_2D, gui.icons_texture );
+ shader_model_font_uTexMain( 0 );
+ shader_model_font_uColour( (v4f){1,1,1,1} );
+
+ for( u32 i=0; i<mdl_arrcount(&dest_world->ent_challenge); i++ ){
+ ent_challenge *challenge = mdl_arritm( &dest_world->ent_challenge, i );
+
+ enum gui_icon icon = k_gui_icon_exclaim;
+ if( challenge->status )
+ icon = k_gui_icon_tick;
+
+ miniworld_icon( cam, icon, challenge->transform.co );
+ }
+
+ for( u32 i=0; i<mdl_arrcount(&dest_world->ent_skateshop); i++ ){
+ ent_skateshop *shop = mdl_arritm( &dest_world->ent_skateshop, i );
+ if( shop->type == k_skateshop_type_boardshop ){
+ miniworld_icon( cam, k_gui_icon_board, shop->transform.co );