Files
Cesarus85--mjolnir-vr/source/effects/weather_particle_systems.c
T

155 lines
3.6 KiB
C

/*
WEATHER_PARTICLE_SYSTEMS.C
symbols in this file:
000924D0 0040:
_code_000924d0 (0000)
00092510 0050:
_code_00092510 (0000)
00092560 0030:
_weather_particle_systems_initialize (0000)
00092590 0070:
_weather_particle_systems_initialize_for_new_map (0000)
00092600 0020:
_weather_particle_systems_dispose_from_old_map (0000)
00092620 0020:
_weather_particle_systems_dispose (0000)
00092640 0030:
_code_00092640 (0000)
00092670 00a0:
_code_00092670 (0000)
00092710 0160:
_weather_particle_system_new (0000)
00092870 0110:
_weather_particle_system_delete (0000)
00092980 02c0:
_code_00092980 (0000)
00092C40 0040:
_code_00092c40 (0000)
00092C80 02b0:
_code_00092c80 (0000)
00092F30 0100:
_code_00092f30 (0000)
00093030 0040:
_code_00093030 (0000)
00093070 00b0:
_code_00093070 (0000)
00093120 0130:
_code_00093120 (0000)
00093250 0240:
_code_00093250 (0000)
00093490 0690:
_code_00093490 (0000)
00093B20 00e0:
_weather_particle_systems_render (0000)
0025AAFC 0004:
_one_over_char_max (0000)
0025AB00 0032:
??_C@_0DC@LLJNAPDG@c?3?2halo?2SOURCE?2effects?2weather_p@ (0000)
0025AB34 003d:
??_C@_0DN@CIHCKGAO@type_index?$DO?$DN0?5?$CG?$CG?5type_index?$DMdefi@ (0000)
0025AB74 0033:
??_C@_0DD@FLIDKJLH@couldn?8t?5allocate?5weather?5partic@ (0000)
0025ABA8 0012:
??_C@_0BC@EPMBJEML@weather?5particles?$AA@ (0000)
0025ABBC 001f:
??_C@_0BP@EMHAEIEA@system?9?$DOdefinition_index?$DN?$DNNONE?$AA@ (0000)
0025ABDC 0024:
??_C@_0CE@MLAKBDEP@too?5many?5weather?5polyhedra?5visib@ (0000)
0025AC00 003b:
??_C@_0DL@JLJDEDI@box_count?$DMMAXIMUM_NUMBER_OF_VISI@ (0000)
002DDDAE 0001:
_weather (0000)
0043D590 0274:
_bss_0043d590 (0000)
*/
/* ---------- headers */
#include "effects/weather_particle_systems.h"
#include "cseries/errors.h"
#include "networking/network_connection.h"
/* ---------- constants */
/* ---------- macros */
/* ---------- structures */
struct local_weather_particle_system_globals
{
long particle_system_index;
byte pad4[0x98];
};
struct weather_particle_system_globals
{
short active_system_count;
short pad2;
struct local_weather_particle_system_globals local_players[MAXIMUM_NUMBER_OF_LOCAL_PLAYERS];
};
typedef char local_weather_particle_system_globals_size_assert[
sizeof(struct local_weather_particle_system_globals) == 0x9C ? 1 : -1];
typedef char weather_particle_system_globals_size_assert[
sizeof(struct weather_particle_system_globals) == 0x274 ? 1 : -1];
/* ---------- prototypes */
/* ---------- globals */
static struct weather_particle_system_globals bss_0043d590;
/* ---------- public code */
void weather_particle_systems_initialize(
void)
{
weather_particle_data = data_new("weather particles", 512, 0x54);
if (!weather_particle_data)
error(_error_immediate, "couldn't allocate weather particle system globals.");
return;
}
void weather_particle_systems_initialize_for_new_map(
void)
{
short local_player_index;
for (local_player_index = 0; local_player_index < MAXIMUM_NUMBER_OF_LOCAL_PLAYERS; local_player_index++)
{
match_assert("c:\\halo\\SOURCE\\effects\\weather_particle_systems.c", 91, local_player_index>=0 && local_player_index<MAXIMUM_NUMBER_OF_LOCAL_PLAYERS);
bss_0043d590.local_players[local_player_index].particle_system_index = NONE;
}
bss_0043d590.active_system_count = 0;
data_make_valid(weather_particle_data);
return;
}
void weather_particle_systems_dispose_from_old_map(
void)
{
if (weather_particle_data->valid)
data_make_invalid(weather_particle_data);
return;
}
void weather_particle_systems_dispose(
void)
{
if (weather_particle_data)
{
data_dispose(weather_particle_data);
weather_particle_data = NULL;
}
return;
}
/* ---------- private code */