projects
/
carveJwlIkooP6JGAAIwe30JlM.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
TODO about preupdate call style
[carveJwlIkooP6JGAAIwe30JlM.git]
/
world.h
diff --git
a/world.h
b/world.h
index 6ff3afbc00f295d7a459eec32d0eff75bcc7e719..49d1aaea690849f6fb32bfb3e645901940d9d33d 100644
(file)
--- a/
world.h
+++ b/
world.h
@@
-1,12
+1,12
@@
/*
/*
- * Copyright (C) 2021-202
3
Mt.ZERO Software, Harry Godden - All Rights Reserved
+ * Copyright (C) 2021-202
4
Mt.ZERO Software, Harry Godden - All Rights Reserved
*/
*/
-#ifndef WORLD_H
-#define WORLD_H
-
+#pragma once
#include "render.h"
#include "network_msg.h"
#include "render.h"
#include "network_msg.h"
+#include "addon.h"
+#include "scene.h"
/* types
*/
/* types
*/
@@
-33,15
+33,13
@@
struct leaderboard_cache {
typedef struct world_instance world_instance;
typedef struct world_instance world_instance;
-static void skaterift_world_get_save_path( enum world_purpose which,
- char buf[128] );
+void skaterift_world_get_save_path( enum world_purpose which, char buf[128] );
/* submodule headers */
#include "world_entity.h"
#include "world_gate.h"
#include "world_gen.h"
#include "world_info.h"
/* submodule headers */
#include "world_entity.h"
#include "world_gate.h"
#include "world_gen.h"
#include "world_info.h"
-#include "world_load.h"
#include "world_physics.h"
#include "world_render.h"
#include "world_sfd.h"
#include "world_physics.h"
#include "world_render.h"
#include "world_sfd.h"
@@
-189,7
+187,8
@@
struct world_instance {
ent_miniworld,
ent_prop,
ent_region,
ent_miniworld,
ent_prop,
ent_region,
- ent_glider;
+ ent_glider,
+ ent_npc;
enum skybox {
k_skybox_default,
enum skybox {
k_skybox_default,
@@
-245,7
+244,7
@@
struct world_static {
enum world_purpose active_instance;
u32 focused_entity; /* like skateshop, challenge.. */
f32 focus_strength;
enum world_purpose active_instance;
u32 focused_entity; /* like skateshop, challenge.. */
f32 focus_strength;
-
camera
focus_cam;
+
vg_camera
focus_cam;
/* challenges */
ent_objective *challenge_target;
/* challenges */
ent_objective *challenge_target;
@@
-257,11
+256,19
@@
struct world_static {
k_world_loader_load
}
load_state;
k_world_loader_load
}
load_state;
+
+ bool clear_async_op_when_done;
}
}
-
static
world_static;
+
extern
world_static;
-static void world_init(void);
-static world_instance *world_current_instance(void);
-static void world_switch_instance( u32 index );
+struct world_load_args
+{
+ enum world_purpose purpose;
+ addon_reg *reg;
+};
-#endif /* WORLD_H */
+void world_init(void);
+world_instance *world_current_instance(void);
+void world_switch_instance( u32 index );
+void skaterift_world_load_thread( void *_args );
+void world_update( world_instance *world, v3f pos );