X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=skaterift.h;h=4ea1b888edacf43d1030594219f907cb07976bff;hb=refs%2Fheads%2Fmaster;hp=011985eff886a2552a991f629f411bfe73aff82d;hpb=cb1d2f9fbec8a274aaf7a80c5fb552b928148b1e;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/skaterift.h b/skaterift.h index 011985e..4ea1b88 100644 --- a/skaterift.h +++ b/skaterift.h @@ -1,89 +1,40 @@ -#ifndef SKATERIFT_H -#define SKATERIFT_H - +#pragma once #define SKATERIFT_APPID 2103940 +#include "vg/vg_engine.h" +#include "vg/vg_camera.h" -#define VG_TIMESTEP_FIXED (1.0/60.0) -#define VG_3D -#define VG_GAME -#define VG_MSG_V1_SUPPORT -#include "vg/vg.h" - -#include "common.h" -#include "world.h" -#include "addon.h" +enum skaterift_rt +{ + k_skaterift_rt_workshop_preview, + k_skaterift_rt_server_status, + k_skaterift_rt_max +}; -struct{ - enum async_operation{ +struct skaterift_globals +{ + enum async_operation + { k_async_op_none, k_async_op_clientloading, - k_async_op_world_preloading, - k_async_op_world_loading, - k_async_op_world_scan, - k_async_op_world_load_preview, - k_async_op_board_scan, - k_async_op_board_load, - k_workshop_form_op_loading_model, - k_workshop_form_op_downloading_submission, - k_workshop_form_op_publishing_update, - } - async_op; -} -static skaterift = { .async_op = k_async_op_clientloading }; - -/* Skaterift api */ -static void skaterift_change_world_start( void ); -static int skaterift_change_world_command( int argc, const char *argv[] ); - -/* - * Start a new operation or crash if we are already running one. you can avoid - * crashing the game by checking the async status yourself before calling. - */ -VG_STATIC void skaterift_begin_op( enum async_operation op ) -{ - if( vg_thread_purpose() == k_thread_purpose_loader ){ - vg_fatal_error( "Can't do that here\n" ); } + op; - if( skaterift.async_op != k_async_op_none ){ - vg_fatal_error( "Async executing op(%d), tried to start op(%d)\n", - skaterift.async_op, op ); - } + f32 time_rate; + vg_camera cam; - skaterift.async_op = op; - vg_info( "Starting op( %d )\n", op ); -} - -/* - * Switch operation for those who have multiple parts - */ -VG_STATIC void skaterift_shift_op( enum async_operation op ) -{ - if( skaterift.async_op == k_async_op_none ){ - vg_fatal_error( "No current op, cannot shift operation (%d)\n", op ); + enum skaterift_activity { + k_skaterift_default = 0x00, + k_skaterift_replay = 0x01, + k_skaterift_ent_focus = 0x02, + k_skaterift_menu = 0x04, + k_skaterift_world_map = 0x08, } - - skaterift.async_op = op; - vg_info( "Shifting to op( %d )\n", op ); -} + activity; + GLuint rt_textures[k_skaterift_rt_max]; -VG_STATIC void skaterift_end_op(void); -VG_STATIC void async_skaterift_end_op( void *data, u32 size ){ - skaterift_end_op(); -} + u32 achievements; + int demo_mode; -/* - * Finished operation, otheres can now run - */ -VG_STATIC void skaterift_end_op(void) -{ - if( vg_thread_purpose() == k_thread_purpose_loader ){ - vg_async_call( async_skaterift_end_op, NULL, 0 ); - } - else{ - vg_info( "Finishing op( %d )\n", skaterift.async_op ); - skaterift.async_op = k_async_op_none; - } + const char *hub_world; } - -#endif /* SKATERIFT_H */ +extern skaterift;