added documentation

This commit is contained in:
Magnus Auvinen 2008-08-05 21:37:33 +00:00
parent 61bfe2d70c
commit 0fceb1cf1a
99 changed files with 5005 additions and 214 deletions

Binary file not shown.

Binary file not shown.

View file

@ -1,51 +1,120 @@
1.35
1.4
C/C++
/home/kma/code/teewars/trunk/src/engine/e_memheap.h 1197706562 0 /home/kma/code/teewars/trunk/src/engine/e_memheap.h
/home/kma/code/teewars/trunk/src/engine/client/ec_font.h 1200146774 0 /home/kma/code/teewars/trunk/src/engine/client/ec_font.h
/home/kma/code/teewars/trunk/src/engine/e_console.c 1200611479 0 /home/kma/code/teewars/trunk/src/engine/e_console.c
/home/kma/code/teewars/trunk/src/engine/e_if_modc.h 1200740313 1 Client Hooks
/home/kma/code/teewars/trunk/src/engine/e_protocol.h 1197711693 0 /home/kma/code/teewars/trunk/src/engine/e_protocol.h
/home/kma/code/teewars/trunk/src/engine/client/ec_inp.c 1200740188 0 /home/kma/code/teewars/trunk/src/engine/client/ec_inp.c
/home/kma/code/teewars/trunk/src/engine/e_memheap.c 1197707815 0 /home/kma/code/teewars/trunk/src/engine/e_memheap.c
/home/kma/code/teewars/trunk/src/engine/e_if_snd.h 1200736177 1 Sound
/home/kma/code/teewars/trunk/src/engine/e_keynames.c 1197706547 0 /home/kma/code/teewars/trunk/src/engine/e_keynames.c
/home/kma/code/teewars/trunk/src/engine/e_system.h 1197707754 1 /home/kma/code/teewars/trunk/src/engine/e_system.h
/home/kma/code/teewars/trunk/src/engine/e_if_client.h 1200739934 1 Constants
/home/kma/code/teewars/trunk/src/engine/e_if_gfx.h 1200736418 1 Structures
/home/kma/code/teewars/trunk/src/engine/e_server_interface.h 1200739892 0 /home/kma/code/teewars/trunk/src/engine/e_server_interface.h
/home/kma/code/teewars/trunk/src/engine/e_if_msg.h 1200736131 1 Messaging
/home/kma/code/teewars/trunk/src/engine/e_msg.c 1200708999 0 /home/kma/code/teewars/trunk/src/engine/e_msg.c
/home/kma/code/teewars/trunk/src/engine/server/es_server.c 1200709433 0 /home/kma/code/teewars/trunk/src/engine/server/es_server.c
/home/kma/code/teewars/trunk/src/engine/client/ec_font.c 1200146774 0 /home/kma/code/teewars/trunk/src/engine/client/ec_font.c
/home/kma/code/teewars/trunk/src/engine/docs/client_time.txt 1200739319 1 Time on the client
/home/kma/code/teewars/trunk/src/engine/e_engine.c 1200708926 0 /home/kma/code/teewars/trunk/src/engine/e_engine.c
/home/kma/code/teewars/trunk/src/engine/e_system.c 1200521738 0 /home/kma/code/teewars/trunk/src/engine/e_system.c
/home/kma/code/teewars/trunk/src/engine/e_snapshot.h 1197707840 0 /home/kma/code/teewars/trunk/src/engine/e_snapshot.h
/home/kma/code/teewars/trunk/src/engine/e_client_interface.h 1200739926 0 /home/kma/code/teewars/trunk/src/engine/e_client_interface.h
/home/kma/code/teewars/trunk/src/engine/e_if_mods.h 1200736122 1 Server Hooks
/home/kma/code/teewars/trunk/src/engine/client/ec_client.c 1200740188 0 /home/kma/code/teewars/trunk/src/engine/client/ec_client.c
/home/kma/code/teewars/trunk/src/engine/client/ec_srvbrowse.c 1200709484 0 /home/kma/code/teewars/trunk/src/engine/client/ec_srvbrowse.c
/home/kma/code/teewars/trunk/src/engine/e_detect.h 1197706565 0 /home/kma/code/teewars/trunk/src/engine/e_detect.h
/home/kma/code/teewars/trunk/src/engine/e_compression.c 1197707819 0 /home/kma/code/teewars/trunk/src/engine/e_compression.c
/home/kma/code/teewars/trunk/src/engine/e_config.c 1200521738 0 /home/kma/code/teewars/trunk/src/engine/e_config.c
/home/kma/code/teewars/trunk/src/engine/e_packer.h 1197706544 0 /home/kma/code/teewars/trunk/src/engine/e_packer.h
/home/kma/code/teewars/trunk/src/engine/e_config_variables.h 1200222141 0 /home/kma/code/teewars/trunk/src/engine/e_config_variables.h
/home/kma/code/teewars/trunk/src/engine/e_map.c 1200169662 0 /home/kma/code/teewars/trunk/src/engine/e_map.c
/home/kma/code/teewars/trunk/src/engine/e_if_server.h 1200736134 1 Server Hooks
/home/kma/code/teewars/trunk/src/engine/e_network.h 1198020654 0 /home/kma/code/teewars/trunk/src/engine/e_network.h
/home/kma/code/teewars/trunk/src/engine/e_packer.c 1197707860 0 /home/kma/code/teewars/trunk/src/engine/e_packer.c
/home/kma/code/teewars/trunk/src/engine/e_config.h 1200521738 0 /home/kma/code/teewars/trunk/src/engine/e_config.h
/home/kma/code/teewars/trunk/src/engine/e_keys.h 1197706560 0 /home/kma/code/teewars/trunk/src/engine/e_keys.h
/home/kma/code/teewars/trunk/src/engine/docs/prediction.txt 1200739838 1 Prediction
/home/kma/code/teewars/trunk/src/engine/e_datafile.h 1200146774 0 /home/kma/code/teewars/trunk/src/engine/e_datafile.h
/home/kma/code/teewars/trunk/src/engine/e_engine.h 1197706566 0 /home/kma/code/teewars/trunk/src/engine/e_engine.h
/home/kma/code/teewars/trunk/src/engine/e_snapshot.c 1200708962 0 /home/kma/code/teewars/trunk/src/engine/e_snapshot.c
/home/kma/code/teewars/trunk/src/engine/e_compression.h 1197706556 0 /home/kma/code/teewars/trunk/src/engine/e_compression.h
/home/kma/code/teewars/trunk/src/engine/e_console.h 1200611479 0 /home/kma/code/teewars/trunk/src/engine/e_console.h
/home/kma/code/teewars/trunk/src/engine/client/ec_snd.c 1200709488 0 /home/kma/code/teewars/trunk/src/engine/client/ec_snd.c
/home/kma/code/teewars/trunk/src/engine/e_common_interface.h 1200739880 0 /home/kma/code/teewars/trunk/src/engine/e_common_interface.h
/home/kma/code/teewars/trunk/src/engine/e_network.c 1198110343 0 /home/kma/code/teewars/trunk/src/engine/e_network.c
/home/kma/code/teewars/trunk/src/engine/e_if_inp.h 1200740278 1 Input
/home/kma/code/teewars/trunk/src/engine/e_if_other.h 1200739887 1 Engine Interface
/home/kma/code/teewars/trunk/src/engine/e_datafile.c 1200747775 0 /home/kma/code/teewars/trunk/src/engine/e_datafile.c
/home/kma/code/teewars/trunk/src/engine/client/ec_gfx.c 1200709490 0 /home/kma/code/teewars/trunk/src/engine/client/ec_gfx.c
/home/kma/code/teeworlds/trunk/src/engine/e_if_client.h 1217537461 1 Client Interface
/home/kma/code/teeworlds/trunk/src/engine/e_keys.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_keys.h
/home/kma/code/teeworlds/trunk/src/game/g_collision.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/g_collision.cpp
/home/kma/code/teeworlds/trunk/src/game/g_version.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/g_version.hpp
/home/kma/code/teeworlds/trunk/src/engine/e_engine.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_engine.c
/home/kma/code/teeworlds/trunk/src/engine/e_huffman.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_huffman.h
/home/kma/code/teeworlds/trunk/src/game/generated/gs_data.hpp 1217543202 0 /home/kma/code/teeworlds/trunk/src/game/generated/gs_data.hpp
/home/kma/code/teeworlds/trunk/src/engine/e_if_modc.h 1217537461 1 Client Hooks
/home/kma/code/teeworlds/trunk/src/game/g_collision.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/g_collision.hpp
/home/kma/code/teeworlds/trunk/src/engine/client/ec_srvbrowse.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/client/ec_srvbrowse.c
/home/kma/code/teeworlds/trunk/src/engine/e_ringbuffer.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_ringbuffer.c
/home/kma/code/teeworlds/trunk/src/game/client/gc_map_image.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_map_image.hpp
/home/kma/code/teeworlds/trunk/src/game/editor/ed_editor.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/editor/ed_editor.hpp
/home/kma/code/teeworlds/trunk/src/engine/e_server_interface.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_server_interface.h
/home/kma/code/teeworlds/trunk/src/game/client/gc_ui.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_ui.cpp
/home/kma/code/teeworlds/trunk/src/engine/e_compression.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_compression.c
/home/kma/code/teeworlds/trunk/src/game/g_math.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/g_math.hpp
/home/kma/code/teeworlds/trunk/src/game/editor/array.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/editor/array.hpp
/home/kma/code/teeworlds/trunk/src/engine/e_if_msg.h 1217537461 1 Messaging
/home/kma/code/teeworlds/trunk/src/engine/e_packer.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_packer.c
/home/kma/code/teeworlds/trunk/src/engine/e_packer.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_packer.h
/home/kma/code/teeworlds/trunk/src/game/g_mapitems.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/g_mapitems.hpp
/home/kma/code/teeworlds/trunk/src/engine/e_config.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_config.h
/home/kma/code/teeworlds/trunk/src/game/editor/ed_io.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/editor/ed_io.cpp
/home/kma/code/teeworlds/trunk/src/game/client/gc_particles.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_particles.cpp
/home/kma/code/teeworlds/trunk/src/engine/client/ec_font.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/client/ec_font.h
/home/kma/code/teeworlds/trunk/src/engine/e_msg.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_msg.c
/home/kma/code/teeworlds/trunk/src/engine/e_memheap.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_memheap.c
/home/kma/code/teeworlds/trunk/src/engine/e_compression.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_compression.h
/home/kma/code/teeworlds/trunk/src/game/generated/createdir.txt 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/generated/createdir.txt
/home/kma/code/teeworlds/trunk/src/game/server/gs_ent_pickup.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/server/gs_ent_pickup.cpp
/home/kma/code/teeworlds/trunk/src/engine/e_engine.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_engine.h
/home/kma/code/teeworlds/trunk/src/game/server/gs_game_tdm.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/server/gs_game_tdm.cpp
/home/kma/code/teeworlds/trunk/src/game/generated/gc_data.cpp 1217543361 0 /home/kma/code/teeworlds/trunk/src/game/generated/gc_data.cpp
/home/kma/code/teeworlds/trunk/src/game/client/gc_client.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_client.hpp
/home/kma/code/teeworlds/trunk/src/engine/docs/client_time.txt 1217537458 1 Time on the client
/home/kma/code/teeworlds/trunk/src/engine/e_detect.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_detect.h
/home/kma/code/teeworlds/trunk/src/game/client/gc_client.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_client.cpp
/home/kma/code/teeworlds/trunk/src/game/generated/g_protocol.cpp 1217543206 0 /home/kma/code/teeworlds/trunk/src/game/generated/g_protocol.cpp
/home/kma/code/teeworlds/trunk/src/engine/client/ec_client.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/client/ec_client.c
/home/kma/code/teeworlds/trunk/src/engine/e_datafile.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_datafile.h
/home/kma/code/teeworlds/trunk/src/game/g_game.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/g_game.cpp
/home/kma/code/teeworlds/trunk/src/engine/e_linereader.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_linereader.h
/home/kma/code/teeworlds/trunk/src/game/g_layers.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/g_layers.hpp
/home/kma/code/teeworlds/trunk/src/engine/e_if_snd.h 1217537461 1 Sound
/home/kma/code/teeworlds/trunk/src/game/client/gc_anim.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_anim.hpp
/home/kma/code/teeworlds/trunk/src/game/generated/gs_data.cpp 1217543202 0 /home/kma/code/teeworlds/trunk/src/game/generated/gs_data.cpp
/home/kma/code/teeworlds/trunk/src/game/server/gs_game.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/server/gs_game.cpp
/home/kma/code/teeworlds/trunk/src/engine/e_snapshot.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_snapshot.h
/home/kma/code/teeworlds/trunk/src/engine/e_client_interface.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_client_interface.h
/home/kma/code/teeworlds/trunk/src/game/editor/ed_layer_tiles.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/editor/ed_layer_tiles.cpp
/home/kma/code/teeworlds/trunk/src/engine/e_network.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_network.h
/home/kma/code/teeworlds/trunk/src/engine/e_if_other.h 1217765015 1 Engine Interface
/home/kma/code/teeworlds/trunk/src/engine/e_config.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_config.c
/home/kma/code/teeworlds/trunk/src/game/client/gc_console.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_console.hpp
/home/kma/code/teeworlds/trunk/src/game/server/gs_ent_player.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/server/gs_ent_player.cpp
/home/kma/code/teeworlds/trunk/src/game/g_variables.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/g_variables.hpp
/home/kma/code/teeworlds/trunk/src/engine/e_config_variables.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_config_variables.h
/home/kma/code/teeworlds/trunk/src/game/client/gc_flow.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_flow.cpp
/home/kma/code/teeworlds/trunk/src/game/editor/ed_layer_game.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/editor/ed_layer_game.cpp
/home/kma/code/teeworlds/trunk/src/engine/e_keynames.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_keynames.c
/home/kma/code/teeworlds/trunk/src/game/server/gs_game_ctf.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/server/gs_game_ctf.cpp
/home/kma/code/teeworlds/trunk/src/engine/docs/prediction.txt 1217537458 1 Prediction
/home/kma/code/teeworlds/trunk/src/game/editor/ed_popups.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/editor/ed_popups.cpp
/home/kma/code/teeworlds/trunk/src/engine/client/ec_font.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/client/ec_font.c
/home/kma/code/teeworlds/trunk/src/game/client/gc_menu.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_menu.cpp
/home/kma/code/teeworlds/trunk/src/engine/e_map.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_map.c
/home/kma/code/teeworlds/trunk/src/game/server/gs_common.hpp 1217671618 1 Entity
/home/kma/code/teeworlds/trunk/src/engine/e_common_interface.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_common_interface.h
/home/kma/code/teeworlds/trunk/src/game/client/gc_render_obj.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_render_obj.cpp
/home/kma/code/teeworlds/trunk/src/engine/e_if_mods.h 1217537461 1 Server Hooks
/home/kma/code/teeworlds/trunk/src/engine/e_console.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_console.c
/home/kma/code/teeworlds/trunk/src/game/client/gc_map_image.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_map_image.cpp
/home/kma/code/teeworlds/trunk/src/game/client/gc_render_map.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_render_map.cpp
/home/kma/code/teeworlds/trunk/src/game/server/gs_game_dm.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/server/gs_game_dm.hpp
/home/kma/code/teeworlds/trunk/src/game/server/gs_server.cpp 1217593600 0 /home/kma/code/teeworlds/trunk/src/game/server/gs_server.cpp
/home/kma/code/teeworlds/trunk/src/engine/client/ec_inp.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/client/ec_inp.c
/home/kma/code/teeworlds/trunk/src/game/server/gs_game_ctf.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/server/gs_game_ctf.hpp
/home/kma/code/teeworlds/trunk/src/engine/client/ec_snd.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/client/ec_snd.c
/home/kma/code/teeworlds/trunk/src/engine/e_if_inp.h 1217537461 1 Input
/home/kma/code/teeworlds/trunk/src/engine/e_system.c 1217588360 0 /home/kma/code/teeworlds/trunk/src/engine/e_system.c
/home/kma/code/teeworlds/trunk/src/engine/client/ec_gfx.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/client/ec_gfx.c
/home/kma/code/teeworlds/trunk/src/engine/server/es_server.c 1217537458 0 /home/kma/code/teeworlds/trunk/src/engine/server/es_server.c
/home/kma/code/teeworlds/trunk/src/game/g_vmath.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/g_vmath.hpp
/home/kma/code/teeworlds/trunk/src/game/g_game.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/g_game.hpp
/home/kma/code/teeworlds/trunk/src/game/g_layers.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/g_layers.cpp
/home/kma/code/teeworlds/trunk/src/engine/e_snapshot.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_snapshot.c
/home/kma/code/teeworlds/trunk/src/engine/e_system.h 1217671429 1 OS Abstraction
/home/kma/code/teeworlds/trunk/src/game/client/gc_skin.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_skin.cpp
/home/kma/code/teeworlds/trunk/src/engine/e_linereader.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_linereader.c
/home/kma/code/teeworlds/trunk/src/engine/docs/snapshots.txt 1217768350 1 Snapshots
/home/kma/code/teeworlds/trunk/src/game/generated/gc_data.hpp 1217543357 0 /home/kma/code/teeworlds/trunk/src/game/generated/gc_data.hpp
/home/kma/code/teeworlds/trunk/src/game/generated/nethash.c 1217543205 0 /home/kma/code/teeworlds/trunk/src/game/generated/nethash.c
/home/kma/code/teeworlds/trunk/src/engine/e_memheap.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_memheap.h
/home/kma/code/teeworlds/trunk/src/engine/e_console.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_console.h
/home/kma/code/teeworlds/trunk/src/engine/e_ringbuffer.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_ringbuffer.h
/home/kma/code/teeworlds/trunk/src/engine/e_network.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_network.c
/home/kma/code/teeworlds/trunk/src/game/g_tuning.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/g_tuning.hpp
/home/kma/code/teeworlds/trunk/src/engine/e_if_server.h 1217537461 1 Server Interface
/home/kma/code/teeworlds/trunk/src/game/client/gc_skin.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_skin.hpp
/home/kma/code/teeworlds/trunk/src/game/client/gc_ui.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_ui.hpp
/home/kma/code/teeworlds/trunk/src/engine/e_if_gfx.h 1217537461 1 Graphics
/home/kma/code/teeworlds/trunk/src/game/editor/ed_layer_quads.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/editor/ed_layer_quads.cpp
/home/kma/code/teeworlds/trunk/src/game/server/gs_game_dm.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/server/gs_game_dm.cpp
/home/kma/code/teeworlds/trunk/src/game/client/gc_effects.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_effects.cpp
/home/kma/code/teeworlds/trunk/src/game/generated/g_protocol.hpp 1217543202 0 /home/kma/code/teeworlds/trunk/src/game/generated/g_protocol.hpp
/home/kma/code/teeworlds/trunk/src/engine/e_protocol.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_protocol.h
/home/kma/code/teeworlds/trunk/src/game/client/gc_render.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_render.hpp
/home/kma/code/teeworlds/trunk/src/game/client/gc_console.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_console.cpp
/home/kma/code/teeworlds/trunk/src/engine/e_datafile.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_datafile.c
/home/kma/code/teeworlds/trunk/src/game/client/gc_menu.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_menu.hpp
/home/kma/code/teeworlds/trunk/src/engine/server/es_register.c 1217537458 0 /home/kma/code/teeworlds/trunk/src/engine/server/es_register.c
/home/kma/code/teeworlds/trunk/src/engine/e_huffman.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_huffman.c
/home/kma/code/teeworlds/trunk/src/engine/docs/server_op.txt 1217768956 1 Server Operation
/home/kma/code/teeworlds/trunk/src/game/client/gc_hooks.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_hooks.cpp
/home/kma/code/teeworlds/trunk/src/game/editor/ed_editor.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/editor/ed_editor.cpp
/home/kma/code/teeworlds/trunk/src/game/client/gc_render.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_render.cpp
/home/kma/code/teeworlds/trunk/src/game/server/gs_game_tdm.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/server/gs_game_tdm.hpp

Binary file not shown.

Binary file not shown.

BIN
docs/conf/Data/IndexInfo.nd Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -54,43 +54,46 @@ File: OS Abstraction (/home/kma/code/teeworlds/trunk/src/engine/e_system.h)
Group: Engine {
Group: Overview {
File: Messaging (/home/kma/code/teeworlds/trunk/src/engine/e_if_msg.h)
File: Time on the client (/home/kma/code/teeworlds/trunk/src/engine/docs/client_time.txt)
File: Prediction (/home/kma/code/teeworlds/trunk/src/engine/docs/prediction.txt)
} # Group: Overview
Group: Client {
Group: Reference {
Group: Overview {
Group: Common {
File: Time on the client (/home/kma/code/teeworlds/trunk/src/engine/docs/client_time.txt)
File: Prediction (/home/kma/code/teeworlds/trunk/src/engine/docs/prediction.txt)
File: Snapshots (/home/kma/code/teeworlds/trunk/src/engine/docs/snapshots.txt)
File: Server Operation (/home/kma/code/teeworlds/trunk/src/engine/docs/server_op.txt)
} # Group: Overview
File: Engine Interface (/home/kma/code/teeworlds/trunk/src/engine/e_if_other.h)
File: Messaging (/home/kma/code/teeworlds/trunk/src/engine/e_if_msg.h)
} # Group: Common
Group: Client {
Group: Reference {
File: Client Hooks (/home/kma/code/teeworlds/trunk/src/engine/e_if_modc.h)
File: Client Interface (/home/kma/code/teeworlds/trunk/src/engine/e_if_client.h)
File: Engine Interface (/home/kma/code/teeworlds/trunk/src/engine/e_if_other.h)
File: Graphics (/home/kma/code/teeworlds/trunk/src/engine/e_if_gfx.h)
File: Input (/home/kma/code/teeworlds/trunk/src/engine/e_if_inp.h)
File: Sound (/home/kma/code/teeworlds/trunk/src/engine/e_if_snd.h)
} # Group: Client
} # Group: Reference
Group: Server {
} # Group: Client
Group: Server {
Group: Reference {
File: Server Hooks (/home/kma/code/teeworlds/trunk/src/engine/e_if_mods.h)
File: Server Interface (/home/kma/code/teeworlds/trunk/src/engine/e_if_server.h)
} # Group: Server
} # Group: Reference
} # Group: Reference
} # Group: Server
} # Group: Engine
Group: Game Implementation {
Group: Game {
File: Entity (/home/kma/code/teeworlds/trunk/src/game/server/gs_common.hpp)
} # Group: Game Implementation
} # Group: Game
Group: Index {

View file

@ -1,66 +0,0 @@
Format: 1.35
# You can add a title and sub-title to your menu like this:
# Title: [project name]
# SubTitle: [subtitle]
# You can add a footer to your documentation like this:
# Footer: [text]
# If you want to add a copyright notice, this would be the place to do it.
# --------------------------------------------------------------------------
#
# Cut and paste the lines below to change the order in which your files
# appear on the menu. Don't worry about adding or removing files, Natural
# Docs will take care of that.
#
# You can further organize the menu by grouping the entries. Add a
# "Group: [name] {" line to start a group, and add a "}" to end it.
#
# You can add text and web links to the menu by adding "Text: [text]" and
# "Link: [name] ([URL])" lines, respectively.
#
# The formatting and comments are auto-generated, so don't worry about
# neatness when editing the file. Natural Docs will clean it up the next
# time it is run. When working with groups, just deal with the braces and
# forget about the indentation and comments.
#
# --------------------------------------------------------------------------
File: e_system.h (e_system.h)
File: Engine Interface (e_interface.h)
Group: External {
Group: Glfw {
File: Does this work? (external/glfw/lib/x11/x11_window.c)
File: glfw.h (external/glfw/include/GL/glfw.h)
File: lib/win32/win32_window.c (external/glfw/lib/win32/win32_window.c)
File: Only Linux joystick input is supported at the moment. Other (external/glfw/lib/x11/x11_joystick.c)
File: Some compilers complains about hinst and x never being used - (external/glfw/lib/win32/win32_dllmain.c)
} # Group: Glfw
File: pnglite/pnglite.h (external/pnglite/pnglite.h)
Group: Portaudio {
File: for the default AudioUnit, we could use the (external/portaudio/pa_mac_core.c)
File: make sure this validation list is kept syncronised with the one in (external/portaudio/pa_front.c)
File: this code depends on the sample format constants being in (external/portaudio/pa_converters.c)
} # Group: Portaudio
File: the deflate() code requires max_lazy >= MIN_MATCH and max_chain >= 4 (external/zlib/deflate.c)
} # Group: External
Group: Index {
Index: Everything
File Index: Files
Function Index: Functions
Variable Index: Variables
} # Group: Index

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,39 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><title>Time on the client</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Content><div class="CSection"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="Time_on_the_client"></a>Time on the client</h1><div class=CBody><p>tick, intratick predtick, predintratick</p></div></div></div>
</div><!--Content-->
<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
<div id=Menu><div class=MEntry><div class=MFile><a href="../e_system-h.html">OS Abstraction</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent6')">Engine</a><div class=MGroupContent id=MGroupContent6><div class=MEntry><div class=MFile><a href="../e_if_msg-h.html">Messaging</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Client</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Overview</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile id=MSelected>Time on the client</div></div><div class=MEntry><div class=MFile><a href="prediction-txt.html">Prediction</a></div></div><div class=MEntry><div class=MFile><a href="snapshots-txt.html">Snapshots</a></div></div><div class=MEntry><div class=MFile><a href="server_op-txt.html">Server Operation</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Reference</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../e_if_modc-h.html">Client Hooks</a></div></div><div class=MEntry><div class=MFile><a href="../e_if_client-h.html">Client Interface</a></div></div><div class=MEntry><div class=MFile><a href="../e_if_other-h.html">Engine Interface</a></div></div><div class=MEntry><div class=MFile><a href="../e_if_gfx-h.html">Graphics</a></div></div><div class=MEntry><div class=MFile><a href="../e_if_inp-h.html">Input</a></div></div><div class=MEntry><div class=MFile><a href="../e_if_snd-h.html">Sound</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Server</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">Reference</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../e_if_mods-h.html">Server Hooks</a></div></div><div class=MEntry><div class=MFile><a href="../e_if_server-h.html">Server Interface</a></div></div></div></div></div></div></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent7')">Game</a><div class=MGroupContent id=MGroupContent7><div class=MEntry><div class=MFile><a href="../../files/server/gs_common-hpp.html">Entity</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent8')">Index</a><div class=MGroupContent id=MGroupContent8><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Constants.html">Constants</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Variables.html">Variables</a></div></div></div></div></div><script type="text/javascript"><!--
var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Constants">Constants</option><option value="Functions">Functions</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
HideAllBut([1, 3, 6, 2], 9);// --></script></div><!--Menu-->
<!--START_ND_TOOLTIPS-->
<!--END_ND_TOOLTIPS-->
<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
<script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,51 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><title>Prediction</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Content><div class="CSection"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="Prediction"></a>Prediction</h1><div class=CBody><p>The engine calls <a href="../e_if_modc-h.html#modc_predict" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">modc_predict</a> when reprediction is required.&nbsp; This happens usally when new data has arrived from the server.&nbsp; <a href="../e_if_modc-h.html#modc_predict" class=LFunction id=link2 onMouseOver="ShowTip(event, 'tt1', 'link2')" onMouseOut="HideTip('tt1')">modc_predict</a> should to prediction from the current snapshot and current snapshot tick (<a href="../e_if_client-h.html#client_tick" class=LFunction id=link3 onMouseOver="ShowTip(event, 'tt2', 'link3')" onMouseOut="HideTip('tt2')">client_tick</a> + 1) upto and including the tick returned by <a href="../e_if_client-h.html#client_predtick" class=LFunction id=link4 onMouseOver="ShowTip(event, 'tt3', 'link4')" onMouseOut="HideTip('tt3')">client_predtick</a>.</p><p>Predicted input sent to the server can be retrived by calling <a href="../e_if_client-h.html#client_get_input" class=LFunction id=link5 onMouseOver="ShowTip(event, 'tt4', 'link5')" onMouseOut="HideTip('tt4')">client_get_input</a> with the corresponding tick that you want the input for.&nbsp; Here is a simple example of how it might look.</p><blockquote><pre>void modc_predict()
{
int tick;
prediction_reset();
for(tick = client_tick()+1; tick &lt;= client_predtick(); tick++)
{
MY_INPUT *input = (MY_INPUT *)client_get_input();
if(input)
prediction_apply_input(input);
prediction_tick();
}
}</pre></blockquote></div></div></div>
</div><!--Content-->
<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
<div id=Menu><div class=MEntry><div class=MFile><a href="../e_system-h.html">OS Abstraction</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent6')">Engine</a><div class=MGroupContent id=MGroupContent6><div class=MEntry><div class=MFile><a href="../e_if_msg-h.html">Messaging</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Client</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Overview</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="client_time-txt.html">Time on the client</a></div></div><div class=MEntry><div class=MFile id=MSelected>Prediction</div></div><div class=MEntry><div class=MFile><a href="snapshots-txt.html">Snapshots</a></div></div><div class=MEntry><div class=MFile><a href="server_op-txt.html">Server Operation</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Reference</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../e_if_modc-h.html">Client Hooks</a></div></div><div class=MEntry><div class=MFile><a href="../e_if_client-h.html">Client Interface</a></div></div><div class=MEntry><div class=MFile><a href="../e_if_other-h.html">Engine Interface</a></div></div><div class=MEntry><div class=MFile><a href="../e_if_gfx-h.html">Graphics</a></div></div><div class=MEntry><div class=MFile><a href="../e_if_inp-h.html">Input</a></div></div><div class=MEntry><div class=MFile><a href="../e_if_snd-h.html">Sound</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Server</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">Reference</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../e_if_mods-h.html">Server Hooks</a></div></div><div class=MEntry><div class=MFile><a href="../e_if_server-h.html">Server Interface</a></div></div></div></div></div></div></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent7')">Game</a><div class=MGroupContent id=MGroupContent7><div class=MEntry><div class=MFile><a href="../../files/server/gs_common-hpp.html">Entity</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent8')">Index</a><div class=MGroupContent id=MGroupContent8><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Constants.html">Constants</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Variables.html">Variables</a></div></div></div></div></div><script type="text/javascript"><!--
var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Constants">Constants</option><option value="Functions">Functions</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
HideAllBut([1, 3, 6, 2], 9);// --></script></div><!--Menu-->
<!--START_ND_TOOLTIPS-->
<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void modc_predict()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_tick()</td></tr></table></blockquote>Returns the tick of the current snapshot.</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_predtick()</td></tr></table></blockquote>Returns the current predicted tick.</div></div><div class=CToolTip id="tt4"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>int *client_get_input(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>tick</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><!--END_ND_TOOLTIPS-->
<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
<script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,69 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><title>Server Operation</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Content><div class="CSection"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="Server_Operation"></a>Server Operation</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#Server_Operation" >Server Operation</a></td><td class=SDescription></td></tr><tr class="SSection"><td class=SEntry><a href="#Init" >Init</a></td><td class=SDescription></td></tr><tr class="SSection"><td class=SEntry><a href="#Running" >Running</a></td><td class=SDescription>Here is an graph over how the server operates on each refresh.</td></tr><tr class="SSection"><td class=SEntry><a href="#Reinit" >Reinit</a></td><td class=SDescription></td></tr><tr class="SSection"><td class=SEntry><a href="#Shutdown" >Shutdown</a></td><td class=SDescription></td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
<div class="CSection"><div class=CTopic><h2 class=CTitle><a name="Init"></a>Init</h2><div class=CBody></div></div></div>
<div class="CSection"><div class=CTopic><h2 class=CTitle><a name="Running"></a>Running</h2><div class=CBody><p>Here is an graph over how the server operates on each refresh.</p><blockquote><pre>load map
init mod
while running
if map change then
load new map
shutdown mod &lt;mods_shutdown&gt;
reset clients to init state
init mod &lt;mods_init&gt;
end if
if new tick then
call &lt;mods_tick&gt;
for each client do
create snapshot &lt;mods_snap&gt;
send snapshot
end for
end
process new network messages
end while
unload map</pre></blockquote></div></div></div>
<div class="CSection"><div class=CTopic><h2 class=CTitle><a name="Reinit"></a>Reinit</h2><div class=CBody></div></div></div>
<div class="CSection"><div class=CTopic><h2 class=CTitle><a name="Shutdown"></a>Shutdown</h2><div class=CBody></div></div></div>
</div><!--Content-->
<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
<div id=Menu><div class=MEntry><div class=MFile><a href="../e_system-h.html">OS Abstraction</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent6')">Engine</a><div class=MGroupContent id=MGroupContent6><div class=MEntry><div class=MFile><a href="../e_if_msg-h.html">Messaging</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Client</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Overview</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="client_time-txt.html">Time on the client</a></div></div><div class=MEntry><div class=MFile><a href="prediction-txt.html">Prediction</a></div></div><div class=MEntry><div class=MFile><a href="snapshots-txt.html">Snapshots</a></div></div><div class=MEntry><div class=MFile id=MSelected>Server Operation</div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Reference</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../e_if_modc-h.html">Client Hooks</a></div></div><div class=MEntry><div class=MFile><a href="../e_if_client-h.html">Client Interface</a></div></div><div class=MEntry><div class=MFile><a href="../e_if_other-h.html">Engine Interface</a></div></div><div class=MEntry><div class=MFile><a href="../e_if_gfx-h.html">Graphics</a></div></div><div class=MEntry><div class=MFile><a href="../e_if_inp-h.html">Input</a></div></div><div class=MEntry><div class=MFile><a href="../e_if_snd-h.html">Sound</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Server</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">Reference</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../e_if_mods-h.html">Server Hooks</a></div></div><div class=MEntry><div class=MFile><a href="../e_if_server-h.html">Server Interface</a></div></div></div></div></div></div></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent7')">Game</a><div class=MGroupContent id=MGroupContent7><div class=MEntry><div class=MFile><a href="../../files/server/gs_common-hpp.html">Entity</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent8')">Index</a><div class=MGroupContent id=MGroupContent8><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Constants.html">Constants</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Variables.html">Variables</a></div></div></div></div></div><script type="text/javascript"><!--
var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Constants">Constants</option><option value="Functions">Functions</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
HideAllBut([1, 3, 6, 2], 9);// --></script></div><!--Menu-->
<!--START_ND_TOOLTIPS-->
<!--END_ND_TOOLTIPS-->
<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
<script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,63 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><title>Snapshots</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Content><div class="CSection"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="Snapshots"></a>Snapshots</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#Snapshots" >Snapshots</a></td><td class=SDescription></td></tr><tr class="SSection"><td class=SEntry><a href="#Overview" >Overview</a></td><td class=SDescription></td></tr><tr class="SGeneric SIndent1 SMarked"><td class=SEntry><a href="#Definitions" >Definitions</a></td><td class=SDescription></td></tr><tr class="SGeneric SIndent1"><td class=SEntry><a href="#Structure" >Structure</a></td><td class=SDescription>A snapshot contains a series of items. </td></tr><tr class="SSection"><td class=SEntry><a href="#Server_Side" >Server Side</a></td><td class=SDescription></td></tr><tr class="SGeneric SIndent1 SMarked"><td class=SEntry><a href="#Creating" >Creating</a></td><td class=SDescription>Items can be added when <a href="../e_if_mods-h.html#mods_snap" class=LFunction id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">mods_snap</a> is called using the <a href="../e_if_other-h.html#snap_new_item" class=LFunction id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">snap_new_item</a> function to insert an item to the snapshot. </td></tr><tr class="SSection"><td class=SEntry><a href="#Client_Side" >Client Side</a></td><td class=SDescription></td></tr><tr class="SGeneric SIndent1 SMarked"><td class=SEntry><a href="#Inspection" >Inspection</a></td><td class=SDescription><a href="../e_if_modc-h.html#modc_newsnapshot" class=LFunction id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">modc_newsnapshot</a> is called when a new snapshot has arrived for processing. </td></tr><tr class="SGeneric SIndent1"><td class=SEntry><a href="#Rendering" >Rendering</a></td><td class=SDescription>DOCTODO</td></tr><tr class="SSection"><td class=SEntry><a href="#In_depth" >In depth</a></td><td class=SDescription></td></tr><tr class="SGeneric SIndent1 SMarked"><td class=SEntry><a href="#Compression" >Compression</a></td><td class=SDescription>After a snapshot have been created, compression is applyed to reduce the bandwidth. </td></tr><tr class="SGeneric SIndent1"><td class=SEntry><a href="#Interval" >Interval</a></td><td class=SDescription>The interval for how often a client recives a snapshot changes during the course of the connection. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
<div class="CSection"><div class=CTopic><h2 class=CTitle><a name="Overview"></a>Overview</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGeneric"><td class=SEntry><a href="#Definitions" >Definitions</a></td><td class=SDescription></td></tr><tr class="SGeneric SMarked"><td class=SEntry><a href="#Structure" >Structure</a></td><td class=SDescription>A snapshot contains a series of items. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
<div class="CGeneric"><div class=CTopic><h3 class=CTitle><a name="Definitions"></a>Definitions</h3><div class=CBody><ul><li><b>Snapshot</b>.&nbsp; A is a serialized game state from which a client can render the game from.&nbsp; They are sent from the server at a regular interval and is created specificly for each client in order to reduce bandwidth.</li><li><b>Delta Snapshot</b>.&nbsp; A set of data that can be applied to a snapshot in order to create a new snapshot with the updated game state.</li></ul></div></div></div>
<div class="CGeneric"><div class=CTopic><h3 class=CTitle><a name="Structure"></a>Structure</h3><div class=CBody><p>A snapshot contains a series of items.&nbsp; Each item have a type, id and data.</p><ul><li><b>Type</b>.&nbsp; Type of item.&nbsp; Could be projectile or character for example.</li><li><b>Id</b>.&nbsp; A unique id so the client can identify the item between two snapshots.</li><li><b>Data</b>.&nbsp; A series of 32-bit integers that contains the per item type specific data.</li></ul></div></div></div>
<div class="CSection"><div class=CTopic><h2 class=CTitle><a name="Server_Side"></a>Server Side</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGeneric"><td class=SEntry><a href="#Creating" >Creating</a></td><td class=SDescription>Items can be added when <a href="../e_if_mods-h.html#mods_snap" class=LFunction id=link4 onMouseOver="ShowTip(event, 'tt1', 'link4')" onMouseOut="HideTip('tt1')">mods_snap</a> is called using the <a href="../e_if_other-h.html#snap_new_item" class=LFunction id=link5 onMouseOver="ShowTip(event, 'tt2', 'link5')" onMouseOut="HideTip('tt2')">snap_new_item</a> function to insert an item to the snapshot. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
<div class="CGeneric"><div class=CTopic><h3 class=CTitle><a name="Creating"></a>Creating</h3><div class=CBody><p>Items can be added when <a href="../e_if_mods-h.html#mods_snap" class=LFunction id=link6 onMouseOver="ShowTip(event, 'tt1', 'link6')" onMouseOut="HideTip('tt1')">mods_snap</a> is called using the <a href="../e_if_other-h.html#snap_new_item" class=LFunction id=link7 onMouseOver="ShowTip(event, 'tt2', 'link7')" onMouseOut="HideTip('tt2')">snap_new_item</a> function to insert an item to the snapshot.&nbsp; The server can not inspect the snapshot that is in progress of being created.</p></div></div></div>
<div class="CSection"><div class=CTopic><h2 class=CTitle><a name="Client_Side"></a>Client Side</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGeneric"><td class=SEntry><a href="#Inspection" >Inspection</a></td><td class=SDescription><a href="../e_if_modc-h.html#modc_newsnapshot" class=LFunction id=link8 onMouseOver="ShowTip(event, 'tt3', 'link8')" onMouseOut="HideTip('tt3')">modc_newsnapshot</a> is called when a new snapshot has arrived for processing. </td></tr><tr class="SGeneric SMarked"><td class=SEntry><a href="#Rendering" >Rendering</a></td><td class=SDescription>DOCTODO</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
<div class="CGeneric"><div class=CTopic><h3 class=CTitle><a name="Inspection"></a>Inspection</h3><div class=CBody><p><a href="../e_if_modc-h.html#modc_newsnapshot" class=LFunction id=link9 onMouseOver="ShowTip(event, 'tt3', 'link9')" onMouseOut="HideTip('tt3')">modc_newsnapshot</a> is called when a new snapshot has arrived for processing.&nbsp; <a href="../e_if_other-h.html#snap_num_items" class=LFunction id=link10 onMouseOver="ShowTip(event, 'tt4', 'link10')" onMouseOut="HideTip('tt4')">snap_num_items</a>, <a href="../e_if_other-h.html#snap_get_item" class=LFunction id=link11 onMouseOver="ShowTip(event, 'tt5', 'link11')" onMouseOut="HideTip('tt5')">snap_get_item</a> and <a href="../e_if_other-h.html#snap_find_item" class=LFunction id=link12 onMouseOver="ShowTip(event, 'tt6', 'link12')" onMouseOut="HideTip('tt6')">snap_find_item</a> can be used to inspect the current and previous snapshot.&nbsp; This can be done anywhere while the client is running and not just in the <a href="../e_if_modc-h.html#modc_newsnapshot" class=LFunction id=link13 onMouseOver="ShowTip(event, 'tt3', 'link13')" onMouseOut="HideTip('tt3')">modc_newsnapshot</a> function.&nbsp; The client can also call <a href="../e_if_other-h.html#snap_invalidate_item" class=LFunction id=link14 onMouseOver="ShowTip(event, 'tt7', 'link14')" onMouseOut="HideTip('tt7')">snap_invalidate_item</a> if an item contains improper information that could harm the operation of the client.&nbsp; This should however be done in <a href="../e_if_modc-h.html#modc_newsnapshot" class=LFunction id=link15 onMouseOver="ShowTip(event, 'tt3', 'link15')" onMouseOut="HideTip('tt3')">modc_newsnapshot</a> to assure that no bad data propagates into the rest of the client.</p></div></div></div>
<div class="CGeneric"><div class=CTopic><h3 class=CTitle><a name="Rendering"></a>Rendering</h3><div class=CBody><p>DOCTODO</p></div></div></div>
<div class="CSection"><div class=CTopic><h2 class=CTitle><a name="In_depth"></a>In depth</h2><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGeneric"><td class=SEntry><a href="#Compression" >Compression</a></td><td class=SDescription>After a snapshot have been created, compression is applyed to reduce the bandwidth. </td></tr><tr class="SGeneric SMarked"><td class=SEntry><a href="#Interval" >Interval</a></td><td class=SDescription>The interval for how often a client recives a snapshot changes during the course of the connection. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
<div class="CGeneric"><div class=CTopic><h3 class=CTitle><a name="Compression"></a>Compression</h3><div class=CBody><p>After a snapshot have been created, compression is applyed to reduce the bandwidth.&nbsp; There are several steps taken inorder to reduce the size of the size of the snapshot.</p><ul><li><b>Delta</b>.&nbsp; The server looks in a clients backlog of snapshots to find a previous acked snapshot.&nbsp; It then compares the two snapshots and creates a delta snapshot containing the changes from the previous acked snapshot to the new one.</li><li><b>Variable Integers</b>.&nbsp; The delta snapshot which is only consisting of 32-bit integers is then encoded into variable integers similar to UTF-8.&nbsp; Each byte has a bit that tells the decoder that it needs one more byte to decode the 32-bit integer.&nbsp; The first byte also contains a bit for telling the sign of the integer.</li></ul><blockquote><pre>ESDDDDDD EDDDDDDD EDDDDDDD EDDDDDDD</pre></blockquote><blockquote><pre>E = extend
S = sign
D = data bit</pre></blockquote><ul><li><b>Huffman</b>.&nbsp; The last step is to compress the buffer with a huffman encoder.&nbsp; It uses a static tree that is weighted towards 0 because it&rsquo;s where most of the data will be because of the delta compression.</li></ul></div></div></div>
<div class="CGeneric"><div class=CTopic><h3 class=CTitle><a name="Interval"></a>Interval</h3><div class=CBody><p>The interval for how often a client recives a snapshot changes during the course of the connection.&nbsp; There are three different snapshot rates.</p><ul><li><b>Init</b>.&nbsp; 5 snapshots per second.&nbsp; Used when a client is connecting and used until the client has acknowlaged a snapshot.&nbsp; This mechanism is used because the first snapshot because no delta compression can be done.</li><li><b>Full</b>.&nbsp; Snapshot for every tick or every even tick depending on server configuration.&nbsp; This is used during normal gameplay and everything is running smooth.</li><li><b>Recovery</b>.&nbsp; 1 snapshot each second.&nbsp; A client enters recovery rate when it havn&rsquo;t acknowlaged a snapshot over 1 second.&nbsp; This is to let the client to beable to recover if it has a slow connection.</li></ul></div></div></div>
</div><!--Content-->
<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
<div id=Menu><div class=MEntry><div class=MFile><a href="../e_system-h.html">OS Abstraction</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent6')">Engine</a><div class=MGroupContent id=MGroupContent6><div class=MEntry><div class=MFile><a href="../e_if_msg-h.html">Messaging</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Client</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Overview</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="client_time-txt.html">Time on the client</a></div></div><div class=MEntry><div class=MFile><a href="prediction-txt.html">Prediction</a></div></div><div class=MEntry><div class=MFile id=MSelected>Snapshots</div></div><div class=MEntry><div class=MFile><a href="server_op-txt.html">Server Operation</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Reference</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../e_if_modc-h.html">Client Hooks</a></div></div><div class=MEntry><div class=MFile><a href="../e_if_client-h.html">Client Interface</a></div></div><div class=MEntry><div class=MFile><a href="../e_if_other-h.html">Engine Interface</a></div></div><div class=MEntry><div class=MFile><a href="../e_if_gfx-h.html">Graphics</a></div></div><div class=MEntry><div class=MFile><a href="../e_if_inp-h.html">Input</a></div></div><div class=MEntry><div class=MFile><a href="../e_if_snd-h.html">Sound</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Server</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">Reference</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../e_if_mods-h.html">Server Hooks</a></div></div><div class=MEntry><div class=MFile><a href="../e_if_server-h.html">Server Interface</a></div></div></div></div></div></div></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent7')">Game</a><div class=MGroupContent id=MGroupContent7><div class=MEntry><div class=MFile><a href="../../files/server/gs_common-hpp.html">Entity</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent8')">Index</a><div class=MGroupContent id=MGroupContent8><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Constants.html">Constants</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Variables.html">Variables</a></div></div></div></div></div><script type="text/javascript"><!--
var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Constants">Constants</option><option value="Functions">Functions</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
HideAllBut([1, 3, 6, 2], 9);// --></script></div><!--Menu-->
<!--START_ND_TOOLTIPS-->
<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void mods_snap(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>cid</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Called to create the snapshot for a client.</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void *snap_new_item(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>type,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>id,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>size</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Creates a new item that should be sent.</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void modc_newsnapshot()</td></tr></table></blockquote>Called when the client progressed to a new snapshot.</div></div><div class=CToolTip id="tt4"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>int snap_num_items(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>snapid</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Check the number of items in a snapshot.</div></div><div class=CToolTip id="tt5"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void *snap_get_item(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>snapid,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>index,</td></tr><tr><td></td><td class=PType nowrap>SNAP_ITEM&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>item</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Gets an item from a snapshot.</div></div><div class=CToolTip id="tt6"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void *snap_find_item(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>snapid,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>type,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>id</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Searches a snapshot for an item.</div></div><div class=CToolTip id="tt7"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void snap_invalidate_item(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>snapid,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>index</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Marks an item as invalid byt setting type and id to 0xffffffff.</div></div><!--END_ND_TOOLTIPS-->
<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
<script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,69 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><title>Client Hooks</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Content><div class="CSection"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="Client_Hooks"></a>Client Hooks</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#Client_Hooks" >Client Hooks</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#modc_console_init" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">modc_console_init</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#modc_rcon_line" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">modc_rcon_line</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#modc_save_config" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">modc_save_config</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#modc_init" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">modc_init</a></td><td class=SDescription>Called when the client starts.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#modc_newsnapshot" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">modc_newsnapshot</a></td><td class=SDescription>Called when the client progressed to a new snapshot.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#modc_entergame" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">modc_entergame</a></td><td class=SDescription>Called when the client has successfully connect to a server and loaded a map.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#modc_shutdown" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">modc_shutdown</a></td><td class=SDescription>Called when the client closes down.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#modc_render" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">modc_render</a></td><td class=SDescription>Called every frame to let the game render it self.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#modc_statechange" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">modc_statechange</a></td><td class=SDescription>Called every time client changes state.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#modc_connected" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">modc_connected</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#modc_message" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">modc_message</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#modc_predict" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">modc_predict</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#modc_snap_input" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')">modc_snap_input</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#modc_net_version" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')">modc_net_version</a></td><td class=SDescription>TODO</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Functions"></a>Functions</h3></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="modc_console_init"></a>modc_console_init</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void modc_console_init()</td></tr></table></blockquote><p>TODO</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="modc_rcon_line"></a>modc_rcon_line</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void modc_rcon_line(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>line</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>TODO</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="modc_save_config"></a>modc_save_config</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void modc_save_config()</td></tr></table></blockquote><p>TODO</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="modc_init"></a>modc_init</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void modc_init()</td></tr></table></blockquote><p>Called when the client starts.</p><h4 class=CHeading>Remarks</h4><p>The game should load resources that are used during the entire time of the game.&nbsp; No map is loaded.</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="modc_newsnapshot"></a>modc_newsnapshot</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void modc_newsnapshot()</td></tr></table></blockquote><p>Called when the client progressed to a new snapshot.</p><h4 class=CHeading>Remarks</h4><p>The client can check for items in the snapshot and perform one time events like playing sounds, spawning client side effects etc.</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="modc_entergame"></a>modc_entergame</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void modc_entergame()</td></tr></table></blockquote><p>Called when the client has successfully connect to a server and loaded a map.</p><h4 class=CHeading>Remarks</h4><p>The client can check for items in the map and load them.</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="modc_shutdown"></a>modc_shutdown</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void modc_shutdown()</td></tr></table></blockquote><p>Called when the client closes down.</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="modc_render"></a>modc_render</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void modc_render()</td></tr></table></blockquote><p>Called every frame to let the game render it self.</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="modc_statechange"></a>modc_statechange</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void modc_statechange(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>new_state,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>old_state</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Called every time client changes state.</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="modc_connected"></a>modc_connected</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void modc_connected()</td></tr></table></blockquote><p>TODO</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>arg1</td><td class=CDLDescription>desc</td></tr></table><h4 class=CHeading>Returns</h4><h4 class=CHeading>See Also</h4><p>&lt;other_func&gt;</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="modc_message"></a>modc_message</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void modc_message(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>msg</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>TODO</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>arg1</td><td class=CDLDescription>desc</td></tr></table><h4 class=CHeading>Returns</h4><h4 class=CHeading>See Also</h4><p>&lt;other_func&gt;</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="modc_predict"></a>modc_predict</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void modc_predict()</td></tr></table></blockquote><p>TODO</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>arg1</td><td class=CDLDescription>desc</td></tr></table><h4 class=CHeading>Returns</h4><h4 class=CHeading>See Also</h4><p>&lt;other_func&gt;</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="modc_snap_input"></a>modc_snap_input</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>int modc_snap_input(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>data</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>TODO</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>arg1</td><td class=CDLDescription>desc</td></tr></table><h4 class=CHeading>Returns</h4><h4 class=CHeading>See Also</h4><p>&lt;other_func&gt;</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="modc_net_version"></a>modc_net_version</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>const char *modc_net_version()</td></tr></table></blockquote><p>TODO</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>arg1</td><td class=CDLDescription>desc</td></tr></table><h4 class=CHeading>Returns</h4><h4 class=CHeading>See Also</h4><p>&lt;other_func&gt;</p></div></div></div>
</div><!--Content-->
<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
<div id=Menu><div class=MEntry><div class=MFile><a href="e_system-h.html">OS Abstraction</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent6')">Engine</a><div class=MGroupContent id=MGroupContent6><div class=MEntry><div class=MFile><a href="e_if_msg-h.html">Messaging</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Client</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Overview</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="docs/client_time-txt.html">Time on the client</a></div></div><div class=MEntry><div class=MFile><a href="docs/prediction-txt.html">Prediction</a></div></div><div class=MEntry><div class=MFile><a href="docs/snapshots-txt.html">Snapshots</a></div></div><div class=MEntry><div class=MFile><a href="docs/server_op-txt.html">Server Operation</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Reference</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile id=MSelected>Client Hooks</div></div><div class=MEntry><div class=MFile><a href="e_if_client-h.html">Client Interface</a></div></div><div class=MEntry><div class=MFile><a href="e_if_other-h.html">Engine Interface</a></div></div><div class=MEntry><div class=MFile><a href="e_if_gfx-h.html">Graphics</a></div></div><div class=MEntry><div class=MFile><a href="e_if_inp-h.html">Input</a></div></div><div class=MEntry><div class=MFile><a href="e_if_snd-h.html">Sound</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Server</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">Reference</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="e_if_mods-h.html">Server Hooks</a></div></div><div class=MEntry><div class=MFile><a href="e_if_server-h.html">Server Interface</a></div></div></div></div></div></div></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent7')">Game</a><div class=MGroupContent id=MGroupContent7><div class=MEntry><div class=MFile><a href="../files/server/gs_common-hpp.html">Entity</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent8')">Index</a><div class=MGroupContent id=MGroupContent8><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Constants.html">Constants</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Variables.html">Variables</a></div></div></div></div></div><script type="text/javascript"><!--
var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Constants">Constants</option><option value="Functions">Functions</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
HideAllBut([2, 3, 6, 1], 9);// --></script></div><!--Menu-->
<!--START_ND_TOOLTIPS-->
<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void modc_console_init()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void modc_rcon_line(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>line</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void modc_save_config()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt4"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void modc_init()</td></tr></table></blockquote>Called when the client starts.</div></div><div class=CToolTip id="tt5"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void modc_newsnapshot()</td></tr></table></blockquote>Called when the client progressed to a new snapshot.</div></div><div class=CToolTip id="tt6"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void modc_entergame()</td></tr></table></blockquote>Called when the client has successfully connect to a server and loaded a map.</div></div><div class=CToolTip id="tt7"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void modc_shutdown()</td></tr></table></blockquote>Called when the client closes down.</div></div><div class=CToolTip id="tt8"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void modc_render()</td></tr></table></blockquote>Called every frame to let the game render it self.</div></div><div class=CToolTip id="tt9"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void modc_statechange(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>new_state,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>old_state</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Called every time client changes state.</div></div><div class=CToolTip id="tt10"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void modc_connected()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt11"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void modc_message(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>msg</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt12"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void modc_predict()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt13"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>int modc_snap_input(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>data</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt14"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>const char *modc_net_version()</td></tr></table></blockquote>TODO</div></div><!--END_ND_TOOLTIPS-->
<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
<script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,59 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><title>Messaging</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Content><div class="CSection"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="Messaging"></a>Messaging</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#Messaging" >Messaging</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#msg_pack_start" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">msg_pack_start</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#msg_pack_int" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">msg_pack_int</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#msg_pack_string" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">msg_pack_string</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#msg_pack_raw" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">msg_pack_raw</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#msg_pack_end" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">msg_pack_end</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#msg_unpack_int" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">msg_unpack_int</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#msg_unpack_string" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">msg_unpack_string</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#msg_unpack_raw" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">msg_unpack_raw</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#msg_unpack_error" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">msg_unpack_error</a></td><td class=SDescription>TODO</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Functions"></a>Functions</h3></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="msg_pack_start"></a>msg_pack_start</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void msg_pack_start(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>msg,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>flags</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>TODO</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>arg1</td><td class=CDLDescription>desc</td></tr></table><h4 class=CHeading>Returns</h4><h4 class=CHeading>See Also</h4><p>&lt;other_func&gt;</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="msg_pack_int"></a>msg_pack_int</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void msg_pack_int(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>i</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>TODO</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>arg1</td><td class=CDLDescription>desc</td></tr></table><h4 class=CHeading>Returns</h4><h4 class=CHeading>See Also</h4><p>&lt;other_func&gt;</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="msg_pack_string"></a>msg_pack_string</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void msg_pack_string(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>p,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>limit</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>TODO</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>arg1</td><td class=CDLDescription>desc</td></tr></table><h4 class=CHeading>Returns</h4><h4 class=CHeading>See Also</h4><p>&lt;other_func&gt;</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="msg_pack_raw"></a>msg_pack_raw</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void msg_pack_raw(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>data,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>TODO</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>arg1</td><td class=CDLDescription>desc</td></tr></table><h4 class=CHeading>Returns</h4><h4 class=CHeading>See Also</h4><p>&lt;other_func&gt;</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="msg_pack_end"></a>msg_pack_end</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void msg_pack_end()</td></tr></table></blockquote><p>TODO</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>arg1</td><td class=CDLDescription>desc</td></tr></table><h4 class=CHeading>Returns</h4><h4 class=CHeading>See Also</h4><p>&lt;other_func&gt;</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="msg_unpack_int"></a>msg_unpack_int</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int msg_unpack_int()</td></tr></table></blockquote><p>TODO</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>arg1</td><td class=CDLDescription>desc</td></tr></table><h4 class=CHeading>Returns</h4><h4 class=CHeading>See Also</h4><p>&lt;other_func&gt;</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="msg_unpack_string"></a>msg_unpack_string</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>const char *msg_unpack_string()</td></tr></table></blockquote><p>TODO</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>arg1</td><td class=CDLDescription>desc</td></tr></table><h4 class=CHeading>Returns</h4><h4 class=CHeading>See Also</h4><p>&lt;other_func&gt;</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="msg_unpack_raw"></a>msg_unpack_raw</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>const unsigned char *msg_unpack_raw(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>size</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>TODO</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>arg1</td><td class=CDLDescription>desc</td></tr></table><h4 class=CHeading>Returns</h4><h4 class=CHeading>See Also</h4><p>&lt;other_func&gt;</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="msg_unpack_error"></a>msg_unpack_error</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int msg_unpack_error()</td></tr></table></blockquote><p>TODO</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>arg1</td><td class=CDLDescription>desc</td></tr></table><h4 class=CHeading>Returns</h4><h4 class=CHeading>See Also</h4><p>&lt;other_func&gt;</p></div></div></div>
</div><!--Content-->
<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
<div id=Menu><div class=MEntry><div class=MFile><a href="e_system-h.html">OS Abstraction</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent6')">Engine</a><div class=MGroupContent id=MGroupContent6><div class=MEntry><div class=MFile id=MSelected>Messaging</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Client</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Overview</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="docs/client_time-txt.html">Time on the client</a></div></div><div class=MEntry><div class=MFile><a href="docs/prediction-txt.html">Prediction</a></div></div><div class=MEntry><div class=MFile><a href="docs/snapshots-txt.html">Snapshots</a></div></div><div class=MEntry><div class=MFile><a href="docs/server_op-txt.html">Server Operation</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Reference</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="e_if_modc-h.html">Client Hooks</a></div></div><div class=MEntry><div class=MFile><a href="e_if_client-h.html">Client Interface</a></div></div><div class=MEntry><div class=MFile><a href="e_if_other-h.html">Engine Interface</a></div></div><div class=MEntry><div class=MFile><a href="e_if_gfx-h.html">Graphics</a></div></div><div class=MEntry><div class=MFile><a href="e_if_inp-h.html">Input</a></div></div><div class=MEntry><div class=MFile><a href="e_if_snd-h.html">Sound</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Server</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">Reference</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="e_if_mods-h.html">Server Hooks</a></div></div><div class=MEntry><div class=MFile><a href="e_if_server-h.html">Server Interface</a></div></div></div></div></div></div></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent7')">Game</a><div class=MGroupContent id=MGroupContent7><div class=MEntry><div class=MFile><a href="../files/server/gs_common-hpp.html">Entity</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent8')">Index</a><div class=MGroupContent id=MGroupContent8><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Constants.html">Constants</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Variables.html">Variables</a></div></div></div></div></div><script type="text/javascript"><!--
var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Constants">Constants</option><option value="Functions">Functions</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
HideAllBut([6, 3, 5], 9);// --></script></div><!--Menu-->
<!--START_ND_TOOLTIPS-->
<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void msg_pack_start(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>msg,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>flags</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void msg_pack_int(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>i</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void msg_pack_string(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>p,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>limit</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt4"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void msg_pack_raw(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>data,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt5"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void msg_pack_end()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt6"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int msg_unpack_int()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt7"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>const char *msg_unpack_string()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt8"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>const unsigned char *msg_unpack_raw(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>size</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt9"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int msg_unpack_error()</td></tr></table></blockquote>TODO</div></div><!--END_ND_TOOLTIPS-->
<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
<script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,59 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><title>Server Interface</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Content><div class="CSection"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="Server_Interface"></a>Server Interface</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#Server_Interface" >Server Interface</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#server_getclientinfo" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">server_getclientinfo</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#server_clientname" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">server_clientname</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#server_latestinput" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">server_latestinput</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#server_setclientname" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">server_setclientname</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#server_setclientscore" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">server_setclientscore</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#server_setbrowseinfo" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">server_setbrowseinfo</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#server_kick" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">server_kick</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#server_tick" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">server_tick</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#server_tickspeed" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">server_tickspeed</a></td><td class=SDescription>TODO</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Functions"></a>Functions</h3></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="server_getclientinfo"></a>server_getclientinfo</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>int server_getclientinfo(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>client_id,</td></tr><tr><td></td><td class=PType nowrap>CLIENT_INFO&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>info</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>TODO</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>arg1</td><td class=CDLDescription>desc</td></tr></table><h4 class=CHeading>Returns</h4><h4 class=CHeading>See Also</h4><p>&lt;other_func&gt;</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="server_clientname"></a>server_clientname</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>const char *server_clientname(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>client_id</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>TODO</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>arg1</td><td class=CDLDescription>desc</td></tr></table><h4 class=CHeading>Returns</h4><h4 class=CHeading>See Also</h4><p>&lt;other_func&gt;</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="server_latestinput"></a>server_latestinput</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>int *server_latestinput(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>client_id,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>size</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>TODO</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>arg1</td><td class=CDLDescription>desc</td></tr></table><h4 class=CHeading>Returns</h4><h4 class=CHeading>See Also</h4><p>&lt;other_func&gt;</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="server_setclientname"></a>server_setclientname</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void server_setclientname(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>client_id,</td></tr><tr><td></td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>name</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>TODO</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>arg1</td><td class=CDLDescription>desc</td></tr></table><h4 class=CHeading>Returns</h4><h4 class=CHeading>See Also</h4><p>&lt;other_func&gt;</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="server_setclientscore"></a>server_setclientscore</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void server_setclientscore(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>client_id,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>score</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>TODO</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>arg1</td><td class=CDLDescription>desc</td></tr></table><h4 class=CHeading>Returns</h4><h4 class=CHeading>See Also</h4><p>&lt;other_func&gt;</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="server_setbrowseinfo"></a>server_setbrowseinfo</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void server_setbrowseinfo(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>game_type,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>progression</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>TODO</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>arg1</td><td class=CDLDescription>desc</td></tr></table><h4 class=CHeading>Returns</h4><h4 class=CHeading>See Also</h4><p>&lt;other_func&gt;</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="server_kick"></a>server_kick</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void server_kick(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>client_id,</td></tr><tr><td></td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>reason</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>TODO</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>arg1</td><td class=CDLDescription>desc</td></tr></table><h4 class=CHeading>Returns</h4><h4 class=CHeading>See Also</h4><p>&lt;other_func&gt;</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="server_tick"></a>server_tick</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int server_tick()</td></tr></table></blockquote><p>TODO</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>arg1</td><td class=CDLDescription>desc</td></tr></table><h4 class=CHeading>Returns</h4><h4 class=CHeading>See Also</h4><p>&lt;other_func&gt;</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="server_tickspeed"></a>server_tickspeed</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int server_tickspeed()</td></tr></table></blockquote><p>TODO</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>arg1</td><td class=CDLDescription>desc</td></tr></table><h4 class=CHeading>Returns</h4><h4 class=CHeading>See Also</h4><p>&lt;other_func&gt;</p></div></div></div>
</div><!--Content-->
<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
<div id=Menu><div class=MEntry><div class=MFile><a href="e_system-h.html">OS Abstraction</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent6')">Engine</a><div class=MGroupContent id=MGroupContent6><div class=MEntry><div class=MFile><a href="e_if_msg-h.html">Messaging</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Client</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Overview</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="docs/client_time-txt.html">Time on the client</a></div></div><div class=MEntry><div class=MFile><a href="docs/prediction-txt.html">Prediction</a></div></div><div class=MEntry><div class=MFile><a href="docs/snapshots-txt.html">Snapshots</a></div></div><div class=MEntry><div class=MFile><a href="docs/server_op-txt.html">Server Operation</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Reference</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="e_if_modc-h.html">Client Hooks</a></div></div><div class=MEntry><div class=MFile><a href="e_if_client-h.html">Client Interface</a></div></div><div class=MEntry><div class=MFile><a href="e_if_other-h.html">Engine Interface</a></div></div><div class=MEntry><div class=MFile><a href="e_if_gfx-h.html">Graphics</a></div></div><div class=MEntry><div class=MFile><a href="e_if_inp-h.html">Input</a></div></div><div class=MEntry><div class=MFile><a href="e_if_snd-h.html">Sound</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Server</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">Reference</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="e_if_mods-h.html">Server Hooks</a></div></div><div class=MEntry><div class=MFile id=MSelected>Server Interface</div></div></div></div></div></div></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent7')">Game</a><div class=MGroupContent id=MGroupContent7><div class=MEntry><div class=MFile><a href="../files/server/gs_common-hpp.html">Entity</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent8')">Index</a><div class=MGroupContent id=MGroupContent8><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Constants.html">Constants</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Variables.html">Variables</a></div></div></div></div></div><script type="text/javascript"><!--
var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Constants">Constants</option><option value="Functions">Functions</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
HideAllBut([4, 5, 6], 9);// --></script></div><!--Menu-->
<!--START_ND_TOOLTIPS-->
<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>int server_getclientinfo(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>client_id,</td></tr><tr><td></td><td class=PType nowrap>CLIENT_INFO&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>info</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>const char *server_clientname(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>client_id</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>int *server_latestinput(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>client_id,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>size</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt4"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void server_setclientname(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>client_id,</td></tr><tr><td></td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>name</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt5"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void server_setclientscore(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>client_id,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>score</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt6"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void server_setbrowseinfo(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>game_type,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>progression</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt7"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void server_kick(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>client_id,</td></tr><tr><td></td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>reason</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt8"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int server_tick()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt9"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int server_tickspeed()</td></tr></table></blockquote>TODO</div></div><!--END_ND_TOOLTIPS-->
<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
<script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,53 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><title>Sound</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Content><div class="CSection"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="Sound"></a>Sound</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#Sound" >Sound</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#snd_set_channel" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">snd_set_channel</a></td><td class=SDescription>Sets the parameters for a sound channel.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#snd_load_wv" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">snd_load_wv</a></td><td class=SDescription>Loads a wavpack compressed sound.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#snd_play_at" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">snd_play_at</a></td><td class=SDescription>Plays a sound at a specified postition.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#snd_play" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">snd_play</a></td><td class=SDescription>Plays a sound.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#snd_stop" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">snd_stop</a></td><td class=SDescription>Stops a currenly playing sound.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#snd_set_listener_pos" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">snd_set_listener_pos</a></td><td class=SDescription>Sets the listener posititon.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Functions"></a>Functions</h3></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="snd_set_channel"></a>snd_set_channel</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void snd_set_channel(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>cid,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>vol,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>pan</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Sets the parameters for a sound channel.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>cid</td><td class=CDLDescription>Channel ID</td></tr><tr><td class=CDLEntry>vol</td><td class=CDLDescription>Volume for the channel.&nbsp; 0.0 to 1.0.</td></tr><tr><td class=CDLEntry>pan</td><td class=CDLDescription>Panning for the channel.&nbsp; -1.0 is all left.&nbsp; 0.0 is equal distribution.&nbsp; 1.0 is all right.</td></tr></table></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="snd_load_wv"></a>snd_load_wv</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>int snd_load_wv(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>filename</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Loads a wavpack compressed sound.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>filename</td><td class=CDLDescription>Filename of the file to load</td></tr></table><h4 class=CHeading>Returns</h4><p>The id of the loaded sound.&nbsp; -1 on failure.</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="snd_play_at"></a>snd_play_at</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>int snd_play_at(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>cid,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>sid,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>flags,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Plays a sound at a specified postition.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>cid</td><td class=CDLDescription>Channel id of the channel to use.</td></tr><tr><td class=CDLEntry>sid</td><td class=CDLDescription>Sound id of the sound to play.</td></tr><tr><td class=CDLEntry>flags</td><td class=CDLDescription>TODO</td></tr><tr><td class=CDLEntry>x</td><td class=CDLDescription>TODO</td></tr><tr><td class=CDLEntry>y</td><td class=CDLDescription>TODO</td></tr></table><h4 class=CHeading>Returns</h4><p>An id to the voice.&nbsp; -1 on failure.</p><h4 class=CHeading>See Also</h4><p>&lt;snd_play, snd_stop&gt;</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="snd_play"></a>snd_play</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>int snd_play(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>cid,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>sid,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>flags</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Plays a sound.</p><h4 class=CHeading>Arguments</h4><p>Arguments: cid - Channel id of the channel to use. sid - Sound id of the sound to play. flags - TODO</p><h4 class=CHeading>Returns</h4><p>An id to the voice.&nbsp; -1 on failure.</p><h4 class=CHeading>See Also</h4><p>&lt;snd_play_at, snd_stop&gt;</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="snd_stop"></a>snd_stop</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void snd_stop(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>id</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Stops a currenly playing sound.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>id</td><td class=CDLDescription>The ID of the voice to stop.</td></tr></table><h4 class=CHeading>See Also</h4><p>&lt;snd_play, snd_play_at&gt;</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="snd_set_listener_pos"></a>snd_set_listener_pos</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void snd_set_listener_pos(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Sets the listener posititon.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>x</td><td class=CDLDescription>TODO</td></tr><tr><td class=CDLEntry>y</td><td class=CDLDescription>TODO</td></tr></table></div></div></div>
</div><!--Content-->
<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
<div id=Menu><div class=MEntry><div class=MFile><a href="e_system-h.html">OS Abstraction</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent6')">Engine</a><div class=MGroupContent id=MGroupContent6><div class=MEntry><div class=MFile><a href="e_if_msg-h.html">Messaging</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Client</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Overview</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="docs/client_time-txt.html">Time on the client</a></div></div><div class=MEntry><div class=MFile><a href="docs/prediction-txt.html">Prediction</a></div></div><div class=MEntry><div class=MFile><a href="docs/snapshots-txt.html">Snapshots</a></div></div><div class=MEntry><div class=MFile><a href="docs/server_op-txt.html">Server Operation</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Reference</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="e_if_modc-h.html">Client Hooks</a></div></div><div class=MEntry><div class=MFile><a href="e_if_client-h.html">Client Interface</a></div></div><div class=MEntry><div class=MFile><a href="e_if_other-h.html">Engine Interface</a></div></div><div class=MEntry><div class=MFile><a href="e_if_gfx-h.html">Graphics</a></div></div><div class=MEntry><div class=MFile><a href="e_if_inp-h.html">Input</a></div></div><div class=MEntry><div class=MFile id=MSelected>Sound</div></div></div></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Server</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">Reference</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="e_if_mods-h.html">Server Hooks</a></div></div><div class=MEntry><div class=MFile><a href="e_if_server-h.html">Server Interface</a></div></div></div></div></div></div></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent7')">Game</a><div class=MGroupContent id=MGroupContent7><div class=MEntry><div class=MFile><a href="../files/server/gs_common-hpp.html">Entity</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent8')">Index</a><div class=MGroupContent id=MGroupContent8><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Constants.html">Constants</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Variables.html">Variables</a></div></div></div></div></div><script type="text/javascript"><!--
var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Constants">Constants</option><option value="Functions">Functions</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
HideAllBut([2, 3, 6, 1], 9);// --></script></div><!--Menu-->
<!--START_ND_TOOLTIPS-->
<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void snd_set_channel(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>cid,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>vol,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>pan</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the parameters for a sound channel.</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>int snd_load_wv(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>filename</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Loads a wavpack compressed sound.</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>int snd_play_at(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>cid,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>sid,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>flags,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Plays a sound at a specified postition.</div></div><div class=CToolTip id="tt4"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>int snd_play(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>cid,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>sid,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>flags</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Plays a sound.</div></div><div class=CToolTip id="tt5"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void snd_stop(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>id</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Stops a currenly playing sound.</div></div><div class=CToolTip id="tt6"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void snd_set_listener_pos(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the listener posititon.</div></div><!--END_ND_TOOLTIPS-->
<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
<script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

File diff suppressed because one or more lines are too long

1
docs/output/index.html Normal file
View file

@ -0,0 +1 @@
<html><head><meta http-equiv="Refresh" CONTENT="0; URL=files2/e_system-h.html"></head></html>

View file

@ -0,0 +1,54 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><title>Class Index</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=IPageTitle>Class Index</div><div class=INavigationBar>$#! &middot; 0-9 &middot; A &middot; B &middot; <a href="#C">C</a> &middot; D &middot; <a href="#E">E</a> &middot; F &middot; <a href="#G">G</a> &middot; H &middot; <a href="#I">I</a> &middot; J &middot; K &middot; L &middot; M &middot; N &middot; O &middot; P &middot; Q &middot; R &middot; <a href="#S">S</a> &middot; T &middot; U &middot; <a href="#V">V</a> &middot; W &middot; X &middot; Y &middot; Z</div><table border=0 cellspacing=0 cellpadding=0><tr><td class=IHeading id=IFirstHeading><a name="C"></a>C</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#CLIENT_INFO" class=ISymbol>CLIENT_INFO</a></td></tr><tr><td class=IHeading><a name="E"></a>E</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gs_common-hpp.html#Entity" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')" class=ISymbol>Entity</a></td></tr><tr><td class=IHeading><a name="G"></a>G</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gs_common-hpp.html#Game_Controller" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')" class=ISymbol>Game Controller</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gs_common-hpp.html#Game_World" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')" class=ISymbol>Game World</a></td></tr><tr><td class=IHeading><a name="I"></a>I</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#IMAGE_INFO" class=ISymbol>IMAGE_INFO</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT" class=ISymbol>INPUT_EVENT</a></td></tr><tr><td class=IHeading><a name="S"></a>S</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#SERVER_INFO" class=ISymbol>SERVER_INFO</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#SERVER_INFO_PLAYER" class=ISymbol>SERVER_INFO_PLAYER</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#SNAP_ITEM" class=ISymbol>SNAP_ITEM</a></td></tr><tr><td class=IHeading><a name="V"></a>V</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#VIDEO_MODE" class=ISymbol>VIDEO_MODE</a></td></tr></table>
<!--START_ND_TOOLTIPS-->
<!--END_ND_TOOLTIPS-->
<!--START_ND_TOOLTIPS-->
<div class=CToolTip id="tt1"><div class=CClass>Basic entity class.</div></div><!--END_ND_TOOLTIPS-->
<!--START_ND_TOOLTIPS-->
<div class=CToolTip id="tt2"><div class=CClass>Controls the main game logic. </div></div><div class=CToolTip id="tt3"><div class=CClass>Tracks all entities in the game. </div></div><!--END_ND_TOOLTIPS-->
<!--START_ND_TOOLTIPS-->
<!--END_ND_TOOLTIPS-->
<!--START_ND_TOOLTIPS-->
<!--END_ND_TOOLTIPS-->
<!--START_ND_TOOLTIPS-->
<!--END_ND_TOOLTIPS-->
</div><!--Index-->
<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
<div id=Menu><div class=MEntry><div class=MFile><a href="../files2/e_system-h.html">OS Abstraction</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent6')">Engine</a><div class=MGroupContent id=MGroupContent6><div class=MEntry><div class=MFile><a href="../files2/e_if_msg-h.html">Messaging</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Client</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Overview</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../files2/docs/client_time-txt.html">Time on the client</a></div></div><div class=MEntry><div class=MFile><a href="../files2/docs/prediction-txt.html">Prediction</a></div></div><div class=MEntry><div class=MFile><a href="../files2/docs/snapshots-txt.html">Snapshots</a></div></div><div class=MEntry><div class=MFile><a href="../files2/docs/server_op-txt.html">Server Operation</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Reference</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../files2/e_if_modc-h.html">Client Hooks</a></div></div><div class=MEntry><div class=MFile><a href="../files2/e_if_client-h.html">Client Interface</a></div></div><div class=MEntry><div class=MFile><a href="../files2/e_if_other-h.html">Engine Interface</a></div></div><div class=MEntry><div class=MFile><a href="../files2/e_if_gfx-h.html">Graphics</a></div></div><div class=MEntry><div class=MFile><a href="../files2/e_if_inp-h.html">Input</a></div></div><div class=MEntry><div class=MFile><a href="../files2/e_if_snd-h.html">Sound</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Server</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">Reference</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../files2/e_if_mods-h.html">Server Hooks</a></div></div><div class=MEntry><div class=MFile><a href="../files2/e_if_server-h.html">Server Interface</a></div></div></div></div></div></div></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent7')">Game</a><div class=MGroupContent id=MGroupContent7><div class=MEntry><div class=MFile><a href="../files/server/gs_common-hpp.html">Entity</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent8')">Index</a><div class=MGroupContent id=MGroupContent8><div class=MEntry><div class=MIndex><a href="General.html">Everything</a></div></div><div class=MEntry><div class=MIndex id=MSelected>Classes</div></div><div class=MEntry><div class=MIndex><a href="Constants.html">Constants</a></div></div><div class=MEntry><div class=MIndex><a href="Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="Variables.html">Variables</a></div></div></div></div></div><script type="text/javascript"><!--
var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Constants">Constants</option><option value="Functions">Functions</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
HideAllBut([8, 7, 6], 9);// --></script></div><!--Menu-->
<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
<script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,34 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><title>Function Index</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar>$#! &middot; 0-9 &middot; A &middot; B &middot; <a href="Functions.html#C">C</a> &middot; <a href="Functions.html#D">D</a> &middot; E &middot; <a href="Functions.html#F">F</a> &middot; <a href="Functions2.html#G">G</a> &middot; H &middot; <a href="Functions2.html#I">I</a> &middot; J &middot; K &middot; L &middot; <a href="Functions3.html#M">M</a> &middot; <a href="Functions4.html#N">N</a> &middot; <a href="Functions4.html#O">O</a> &middot; P &middot; Q &middot; <a href="Functions4.html#R">R</a> &middot; <a href="Functions4.html#S">S</a> &middot; <a href="#T">T</a> &middot; U &middot; V &middot; W &middot; X &middot; Y &middot; Z</div><table border=0 cellspacing=0 cellpadding=0><tr><td class=IHeading id=IFirstHeading><a name="T"></a>T</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#thread_create" id=link219 onMouseOver="ShowTip(event, 'tt219', 'link219')" onMouseOut="HideTip('tt219')" class=ISymbol>thread_create</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#thread_destoy" id=link220 onMouseOver="ShowTip(event, 'tt220', 'link220')" onMouseOut="HideTip('tt220')" class=ISymbol>thread_destoy</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#thread_sleep" id=link221 onMouseOver="ShowTip(event, 'tt221', 'link221')" onMouseOut="HideTip('tt221')" class=ISymbol>thread_sleep</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#thread_wait" id=link222 onMouseOver="ShowTip(event, 'tt222', 'link222')" onMouseOut="HideTip('tt222')" class=ISymbol>thread_wait</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#thread_yeild" id=link223 onMouseOver="ShowTip(event, 'tt223', 'link223')" onMouseOut="HideTip('tt223')" class=ISymbol>thread_yeild</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>tick</span><div class=ISubIndex><a href="../files/server/gs_common-hpp.html#Entity.tick" id=link224 onMouseOver="ShowTip(event, 'tt224', 'link224')" onMouseOut="HideTip('tt224')" class=IParent>Entity</a><a href="../files/server/gs_common-hpp.html#Game_World.tick" id=link225 onMouseOver="ShowTip(event, 'tt225', 'link225')" onMouseOut="HideTip('tt225')" class=IParent>Game World</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gs_common-hpp.html#Entity.tick_defered" id=link226 onMouseOver="ShowTip(event, 'tt226', 'link226')" onMouseOut="HideTip('tt226')" class=ISymbol>tick_defered</a>, <span class=IParent>Entity</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#time_freq" id=link227 onMouseOver="ShowTip(event, 'tt227', 'link227')" onMouseOut="HideTip('tt227')" class=ISymbol>time_freq</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#time_get" id=link228 onMouseOver="ShowTip(event, 'tt228', 'link228')" onMouseOut="HideTip('tt228')" class=ISymbol>time_get</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#time_timestamp" id=link229 onMouseOver="ShowTip(event, 'tt229', 'link229')" onMouseOut="HideTip('tt229')" class=ISymbol>time_timestamp</a></td></tr></table>
<!--START_ND_TOOLTIPS-->
<div class=CToolTip id="tt219"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void *thread_create(</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>(*threadfunc)(void *),</td></tr><tr><td></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>user</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Creates a new thread.</div></div><div class=CToolTip id="tt220"><div class=CFunction>Destroys a thread.</div></div><div class=CToolTip id="tt221"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void thread_sleep(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>milliseconds</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Suspends the current thread for a given period.</div></div><div class=CToolTip id="tt222"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>void thread_wait(</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>thread</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Waits for a thread to be done or destroyed.</div></div><div class=CToolTip id="tt223"><div class=CFunction>Yeild the current threads execution slice.</div></div><div class=CToolTip id="tt224"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>virtual void tick()</td></tr></table></blockquote>Called progress the entity to the next tick. </div></div><div class=CToolTip id="tt225"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void tick()</td></tr></table></blockquote>Calls tick on all the entities in the world to progress the world to the next tick.</div></div><div class=CToolTip id="tt226"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>virtual void tick_defered()</td></tr></table></blockquote>Called after all entities tick() function has been called.</div></div><div class=CToolTip id="tt227"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int64 time_freq()</td></tr></table></blockquote>Returns the frequency of the high resolution timer.</div></div><div class=CToolTip id="tt228"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int64 time_get()</td></tr></table></blockquote>Fetches a sample from a high resolution timer.</div></div><div class=CToolTip id="tt229"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>unsigned time_timestamp()</td></tr></table></blockquote>Retrives the current time as a UNIX timestamp</div></div><!--END_ND_TOOLTIPS-->
</div><!--Index-->
<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
<div id=Menu><div class=MEntry><div class=MFile><a href="../files2/e_system-h.html">OS Abstraction</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent6')">Engine</a><div class=MGroupContent id=MGroupContent6><div class=MEntry><div class=MFile><a href="../files2/e_if_msg-h.html">Messaging</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Client</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Overview</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../files2/docs/client_time-txt.html">Time on the client</a></div></div><div class=MEntry><div class=MFile><a href="../files2/docs/prediction-txt.html">Prediction</a></div></div><div class=MEntry><div class=MFile><a href="../files2/docs/snapshots-txt.html">Snapshots</a></div></div><div class=MEntry><div class=MFile><a href="../files2/docs/server_op-txt.html">Server Operation</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Reference</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../files2/e_if_modc-h.html">Client Hooks</a></div></div><div class=MEntry><div class=MFile><a href="../files2/e_if_client-h.html">Client Interface</a></div></div><div class=MEntry><div class=MFile><a href="../files2/e_if_other-h.html">Engine Interface</a></div></div><div class=MEntry><div class=MFile><a href="../files2/e_if_gfx-h.html">Graphics</a></div></div><div class=MEntry><div class=MFile><a href="../files2/e_if_inp-h.html">Input</a></div></div><div class=MEntry><div class=MFile><a href="../files2/e_if_snd-h.html">Sound</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Server</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">Reference</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../files2/e_if_mods-h.html">Server Hooks</a></div></div><div class=MEntry><div class=MFile><a href="../files2/e_if_server-h.html">Server Interface</a></div></div></div></div></div></div></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent7')">Game</a><div class=MGroupContent id=MGroupContent7><div class=MEntry><div class=MFile><a href="../files/server/gs_common-hpp.html">Entity</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent8')">Index</a><div class=MGroupContent id=MGroupContent8><div class=MEntry><div class=MIndex><a href="General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="Constants.html">Constants</a></div></div><div class=MEntry><div class=MIndex id=MSelected>Functions</div></div><div class=MEntry><div class=MIndex><a href="Variables.html">Variables</a></div></div></div></div></div><script type="text/javascript"><!--
var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Constants">Constants</option><option value="Functions">Functions</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
HideAllBut([8, 7, 6], 9);// --></script></div><!--Menu-->
<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
<script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,50 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><title>Variable Index</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=IPageTitle>Variable Index</div><div class=INavigationBar>$#! &middot; 0-9 &middot; A &middot; B &middot; C &middot; <a href="#D">D</a> &middot; E &middot; <a href="#F">F</a> &middot; G &middot; <a href="#H">H</a> &middot; I &middot; J &middot; K &middot; L &middot; M &middot; N &middot; O &middot; <a href="#P">P</a> &middot; Q &middot; R &middot; S &middot; T &middot; U &middot; V &middot; <a href="#W">W</a> &middot; X &middot; Y &middot; Z</div><table border=0 cellspacing=0 cellpadding=0><tr><td class=IHeading id=IFirstHeading><a name="D"></a>D</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#IMAGE_INFO.data" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')" class=ISymbol>data</a>, <span class=IParent>IMAGE_INFO</span></td></tr><tr><td class=IHeading><a name="F"></a>F</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#IMAGE_INFO.format" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')" class=ISymbol>format</a>, <span class=IParent>IMAGE_INFO</span></td></tr><tr><td class=IHeading><a name="H"></a>H</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#IMAGE_INFO.height" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')" class=ISymbol>height</a>, <span class=IParent>IMAGE_INFO</span></td></tr><tr><td class=IHeading><a name="P"></a>P</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gs_common-hpp.html#Entity.pos" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')" class=ISymbol>pos</a>, <span class=IParent>Entity</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gs_common-hpp.html#Entity.proximity_radius" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')" class=ISymbol>proximity_radius</a>, <span class=IParent>Entity</span></td></tr><tr><td class=IHeading><a name="W"></a>W</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#IMAGE_INFO.width" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')" class=ISymbol>width</a>, <span class=IParent>IMAGE_INFO</span></td></tr></table>
<!--START_ND_TOOLTIPS-->
<div class=CToolTip id="tt1"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void *data</td></tr></table></blockquote>Pointer to the image data.</div></div><!--END_ND_TOOLTIPS-->
<!--START_ND_TOOLTIPS-->
<div class=CToolTip id="tt2"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int format</td></tr></table></blockquote>Contains the format of the image. </div></div><!--END_ND_TOOLTIPS-->
<!--START_ND_TOOLTIPS-->
<div class=CToolTip id="tt3"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int height</td></tr></table></blockquote>Contains the height of the image</div></div><!--END_ND_TOOLTIPS-->
<!--START_ND_TOOLTIPS-->
<div class=CToolTip id="tt4"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>vec2 pos</td></tr></table></blockquote>Contains the current posititon of the entity.</div></div><div class=CToolTip id="tt5"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float proximity_radius</td></tr></table></blockquote>Contains the physical size of the entity.</div></div><!--END_ND_TOOLTIPS-->
<!--START_ND_TOOLTIPS-->
<div class=CToolTip id="tt6"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int width</td></tr></table></blockquote>Contains the width of the image</div></div><!--END_ND_TOOLTIPS-->
</div><!--Index-->
<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
<div id=Menu><div class=MEntry><div class=MFile><a href="../files2/e_system-h.html">OS Abstraction</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent6')">Engine</a><div class=MGroupContent id=MGroupContent6><div class=MEntry><div class=MFile><a href="../files2/e_if_msg-h.html">Messaging</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Client</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Overview</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../files2/docs/client_time-txt.html">Time on the client</a></div></div><div class=MEntry><div class=MFile><a href="../files2/docs/prediction-txt.html">Prediction</a></div></div><div class=MEntry><div class=MFile><a href="../files2/docs/snapshots-txt.html">Snapshots</a></div></div><div class=MEntry><div class=MFile><a href="../files2/docs/server_op-txt.html">Server Operation</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Reference</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../files2/e_if_modc-h.html">Client Hooks</a></div></div><div class=MEntry><div class=MFile><a href="../files2/e_if_client-h.html">Client Interface</a></div></div><div class=MEntry><div class=MFile><a href="../files2/e_if_other-h.html">Engine Interface</a></div></div><div class=MEntry><div class=MFile><a href="../files2/e_if_gfx-h.html">Graphics</a></div></div><div class=MEntry><div class=MFile><a href="../files2/e_if_inp-h.html">Input</a></div></div><div class=MEntry><div class=MFile><a href="../files2/e_if_snd-h.html">Sound</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Server</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">Reference</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../files2/e_if_mods-h.html">Server Hooks</a></div></div><div class=MEntry><div class=MFile><a href="../files2/e_if_server-h.html">Server Interface</a></div></div></div></div></div></div></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent7')">Game</a><div class=MGroupContent id=MGroupContent7><div class=MEntry><div class=MFile><a href="../files/server/gs_common-hpp.html">Entity</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent8')">Index</a><div class=MGroupContent id=MGroupContent8><div class=MEntry><div class=MIndex><a href="General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="Constants.html">Constants</a></div></div><div class=MEntry><div class=MIndex><a href="Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex id=MSelected>Variables</div></div></div></div></div><script type="text/javascript"><!--
var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Constants">Constants</option><option value="Functions">Functions</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
HideAllBut([8, 7, 6], 9);// --></script></div><!--Menu-->
<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
<script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,836 @@
// This file is part of Natural Docs, which is Copyright (C) 2003-2008 Greg Valure
// Natural Docs is licensed under the GPL
//
// Browser Styles
// ____________________________________________________________________________
var agt=navigator.userAgent.toLowerCase();
var browserType;
var browserVer;
if (agt.indexOf("opera") != -1)
{
browserType = "Opera";
if (agt.indexOf("opera 7") != -1 || agt.indexOf("opera/7") != -1)
{ browserVer = "Opera7"; }
else if (agt.indexOf("opera 8") != -1 || agt.indexOf("opera/8") != -1)
{ browserVer = "Opera8"; }
else if (agt.indexOf("opera 9") != -1 || agt.indexOf("opera/9") != -1)
{ browserVer = "Opera9"; }
}
else if (agt.indexOf("applewebkit") != -1)
{
browserType = "Safari";
if (agt.indexOf("version/3") != -1)
{ browserVer = "Safari3"; }
else if (agt.indexOf("safari/4") != -1)
{ browserVer = "Safari2"; }
}
else if (agt.indexOf("khtml") != -1)
{
browserType = "Konqueror";
}
else if (agt.indexOf("msie") != -1)
{
browserType = "IE";
if (agt.indexOf("msie 6") != -1)
{ browserVer = "IE6"; }
else if (agt.indexOf("msie 7") != -1)
{ browserVer = "IE7"; }
}
else if (agt.indexOf("gecko") != -1)
{
browserType = "Firefox";
if (agt.indexOf("rv:1.7") != -1)
{ browserVer = "Firefox1"; }
else if (agt.indexOf("rv:1.8)") != -1 || agt.indexOf("rv:1.8.0") != -1)
{ browserVer = "Firefox15"; }
else if (agt.indexOf("rv:1.8.1") != -1)
{ browserVer = "Firefox2"; }
}
//
// Support Functions
// ____________________________________________________________________________
function GetXPosition(item)
{
var position = 0;
if (item.offsetWidth != null)
{
while (item != document.body && item != null)
{
position += item.offsetLeft;
item = item.offsetParent;
};
};
return position;
};
function GetYPosition(item)
{
var position = 0;
if (item.offsetWidth != null)
{
while (item != document.body && item != null)
{
position += item.offsetTop;
item = item.offsetParent;
};
};
return position;
};
function MoveToPosition(item, x, y)
{
// Opera 5 chokes on the px extension, so it can use the Microsoft one instead.
if (item.style.left != null)
{
item.style.left = x + "px";
item.style.top = y + "px";
}
else if (item.style.pixelLeft != null)
{
item.style.pixelLeft = x;
item.style.pixelTop = y;
};
};
//
// Menu
// ____________________________________________________________________________
function ToggleMenu(id)
{
if (!window.document.getElementById)
{ return; };
var display = window.document.getElementById(id).style.display;
if (display == "none")
{ display = "block"; }
else
{ display = "none"; }
window.document.getElementById(id).style.display = display;
}
function HideAllBut(ids, max)
{
if (document.getElementById)
{
ids.sort( function(a,b) { return a - b; } );
var number = 1;
while (number < max)
{
if (ids.length > 0 && number == ids[0])
{ ids.shift(); }
else
{
document.getElementById("MGroupContent" + number).style.display = "none";
};
number++;
};
};
}
//
// Tooltips
// ____________________________________________________________________________
var tooltipTimer = 0;
function ShowTip(event, tooltipID, linkID)
{
if (tooltipTimer)
{ clearTimeout(tooltipTimer); };
var docX = event.clientX + window.pageXOffset;
var docY = event.clientY + window.pageYOffset;
var showCommand = "ReallyShowTip('" + tooltipID + "', '" + linkID + "', " + docX + ", " + docY + ")";
tooltipTimer = setTimeout(showCommand, 1000);
}
function ReallyShowTip(tooltipID, linkID, docX, docY)
{
tooltipTimer = 0;
var tooltip;
var link;
if (document.getElementById)
{
tooltip = document.getElementById(tooltipID);
link = document.getElementById(linkID);
}
/* else if (document.all)
{
tooltip = eval("document.all['" + tooltipID + "']");
link = eval("document.all['" + linkID + "']");
}
*/
if (tooltip)
{
var left = GetXPosition(link);
var top = GetYPosition(link);
top += link.offsetHeight;
// The fallback method is to use the mouse X and Y relative to the document. We use a separate if and test if its a number
// in case some browser snuck through the above if statement but didn't support everything.
if (!isFinite(top) || top == 0)
{
left = docX;
top = docY;
}
// Some spacing to get it out from under the cursor.
top += 10;
// Make sure the tooltip doesnt get smushed by being too close to the edge, or in some browsers, go off the edge of the
// page. We do it here because Konqueror does get offsetWidth right even if it doesnt get the positioning right.
if (tooltip.offsetWidth != null)
{
var width = tooltip.offsetWidth;
var docWidth = document.body.clientWidth;
if (left + width > docWidth)
{ left = docWidth - width - 1; }
// If there's a horizontal scroll bar we could go past zero because it's using the page width, not the window width.
if (left < 0)
{ left = 0; };
}
MoveToPosition(tooltip, left, top);
tooltip.style.visibility = "visible";
}
}
function HideTip(tooltipID)
{
if (tooltipTimer)
{
clearTimeout(tooltipTimer);
tooltipTimer = 0;
}
var tooltip;
if (document.getElementById)
{ tooltip = document.getElementById(tooltipID); }
else if (document.all)
{ tooltip = eval("document.all['" + tooltipID + "']"); }
if (tooltip)
{ tooltip.style.visibility = "hidden"; }
}
//
// Blockquote fix for IE
// ____________________________________________________________________________
function NDOnLoad()
{
if (browserVer == "IE6")
{
var scrollboxes = document.getElementsByTagName('blockquote');
if (scrollboxes.item(0))
{
NDDoResize();
window.onresize=NDOnResize;
};
};
};
var resizeTimer = 0;
function NDOnResize()
{
if (resizeTimer != 0)
{ clearTimeout(resizeTimer); };
resizeTimer = setTimeout(NDDoResize, 250);
};
function NDDoResize()
{
var scrollboxes = document.getElementsByTagName('blockquote');
var i;
var item;
i = 0;
while (item = scrollboxes.item(i))
{
item.style.width = 100;
i++;
};
i = 0;
while (item = scrollboxes.item(i))
{
item.style.width = item.parentNode.offsetWidth;
i++;
};
clearTimeout(resizeTimer);
resizeTimer = 0;
}
/* ________________________________________________________________________________________________________
Class: SearchPanel
________________________________________________________________________________________________________
A class handling everything associated with the search panel.
Parameters:
name - The name of the global variable that will be storing this instance. Is needed to be able to set timeouts.
mode - The mode the search is going to work in. Pass <NaturalDocs::Builder::Base->CommandLineOption()>, so the
value will be something like "HTML" or "FramedHTML".
________________________________________________________________________________________________________
*/
function SearchPanel(name, mode, resultsPath)
{
if (!name || !mode || !resultsPath)
{ alert("Incorrect parameters to SearchPanel."); };
// Group: Variables
// ________________________________________________________________________
/*
var: name
The name of the global variable that will be storing this instance of the class.
*/
this.name = name;
/*
var: mode
The mode the search is going to work in, such as "HTML" or "FramedHTML".
*/
this.mode = mode;
/*
var: resultsPath
The relative path from the current HTML page to the results page directory.
*/
this.resultsPath = resultsPath;
/*
var: keyTimeout
The timeout used between a keystroke and when a search is performed.
*/
this.keyTimeout = 0;
/*
var: keyTimeoutLength
The length of <keyTimeout> in thousandths of a second.
*/
this.keyTimeoutLength = 500;
/*
var: lastSearchValue
The last search string executed, or an empty string if none.
*/
this.lastSearchValue = "";
/*
var: lastResultsPage
The last results page. The value is only relevant if <lastSearchValue> is set.
*/
this.lastResultsPage = "";
/*
var: deactivateTimeout
The timeout used between when a control is deactivated and when the entire panel is deactivated. Is necessary
because a control may be deactivated in favor of another control in the same panel, in which case it should stay
active.
*/
this.deactivateTimout = 0;
/*
var: deactivateTimeoutLength
The length of <deactivateTimeout> in thousandths of a second.
*/
this.deactivateTimeoutLength = 200;
// Group: DOM Elements
// ________________________________________________________________________
// Function: DOMSearchField
this.DOMSearchField = function()
{ return document.getElementById("MSearchField"); };
// Function: DOMSearchType
this.DOMSearchType = function()
{ return document.getElementById("MSearchType"); };
// Function: DOMPopupSearchResults
this.DOMPopupSearchResults = function()
{ return document.getElementById("MSearchResults"); };
// Function: DOMPopupSearchResultsWindow
this.DOMPopupSearchResultsWindow = function()
{ return document.getElementById("MSearchResultsWindow"); };
// Function: DOMSearchPanel
this.DOMSearchPanel = function()
{ return document.getElementById("MSearchPanel"); };
// Group: Event Handlers
// ________________________________________________________________________
/*
Function: OnSearchFieldFocus
Called when focus is added or removed from the search field.
*/
this.OnSearchFieldFocus = function(isActive)
{
this.Activate(isActive);
};
/*
Function: OnSearchFieldChange
Called when the content of the search field is changed.
*/
this.OnSearchFieldChange = function()
{
if (this.keyTimeout)
{
clearTimeout(this.keyTimeout);
this.keyTimeout = 0;
};
var searchValue = this.DOMSearchField().value.replace(/ +/g, "");
if (searchValue != this.lastSearchValue)
{
if (searchValue != "")
{
this.keyTimeout = setTimeout(this.name + ".Search()", this.keyTimeoutLength);
}
else
{
if (this.mode == "HTML")
{ this.DOMPopupSearchResultsWindow().style.display = "none"; };
this.lastSearchValue = "";
};
};
};
/*
Function: OnSearchTypeFocus
Called when focus is added or removed from the search type.
*/
this.OnSearchTypeFocus = function(isActive)
{
this.Activate(isActive);
};
/*
Function: OnSearchTypeChange
Called when the search type is changed.
*/
this.OnSearchTypeChange = function()
{
var searchValue = this.DOMSearchField().value.replace(/ +/g, "");
if (searchValue != "")
{
this.Search();
};
};
// Group: Action Functions
// ________________________________________________________________________
/*
Function: CloseResultsWindow
Closes the results window.
*/
this.CloseResultsWindow = function()
{
this.DOMPopupSearchResultsWindow().style.display = "none";
this.Activate(false, true);
};
/*
Function: Search
Performs a search.
*/
this.Search = function()
{
this.keyTimeout = 0;
var searchValue = this.DOMSearchField().value.replace(/^ +/, "");
var searchTopic = this.DOMSearchType().value;
var pageExtension = searchValue.substr(0,1);
if (pageExtension.match(/^[a-z]/i))
{ pageExtension = pageExtension.toUpperCase(); }
else if (pageExtension.match(/^[0-9]/))
{ pageExtension = 'Numbers'; }
else
{ pageExtension = "Symbols"; };
var resultsPage;
var resultsPageWithSearch;
var hasResultsPage;
// indexSectionsWithContent is defined in searchdata.js
if (indexSectionsWithContent[searchTopic][pageExtension] == true)
{
resultsPage = this.resultsPath + '/' + searchTopic + pageExtension + '.html';
resultsPageWithSearch = resultsPage+'?'+escape(searchValue);
hasResultsPage = true;
}
else
{
resultsPage = this.resultsPath + '/NoResults.html';
resultsPageWithSearch = resultsPage;
hasResultsPage = false;
};
var resultsFrame;
if (this.mode == "HTML")
{ resultsFrame = window.frames.MSearchResults; }
else if (this.mode == "FramedHTML")
{ resultsFrame = window.top.frames['Content']; };
if (resultsPage != this.lastResultsPage ||
// Bug in IE. If everything becomes hidden in a run, none of them will be able to be reshown in the next for some
// reason. It counts the right number of results, and you can even read the display as "block" after setting it, but it
// just doesn't work in IE 6 or IE 7. So if we're on the right page but the previous search had no results, reload the
// page anyway to get around the bug.
(browserType == "IE" && hasResultsPage &&
(!resultsFrame.searchResults || resultsFrame.searchResults.lastMatchCount == 0)) )
{
resultsFrame.location.href = resultsPageWithSearch;
}
// So if the results page is right and there's no IE bug, reperform the search on the existing page. We have to check if there
// are results because NoResults.html doesn't have any JavaScript, and it would be useless to do anything on that page even
// if it did.
else if (hasResultsPage)
{
// We need to check if this exists in case the frame is present but didn't finish loading.
if (resultsFrame.searchResults)
{ resultsFrame.searchResults.Search(searchValue); }
// Otherwise just reload instead of waiting.
else
{ resultsFrame.location.href = resultsPageWithSearch; };
};
var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow();
if (this.mode == "HTML" && domPopupSearchResultsWindow.style.display != "block")
{
var domSearchType = this.DOMSearchType();
var left = GetXPosition(domSearchType);
var top = GetYPosition(domSearchType) + domSearchType.offsetHeight;
MoveToPosition(domPopupSearchResultsWindow, left, top);
domPopupSearchResultsWindow.style.display = 'block';
};
this.lastSearchValue = searchValue;
this.lastResultsPage = resultsPage;
};
// Group: Activation Functions
// Functions that handle whether the entire panel is active or not.
// ________________________________________________________________________
/*
Function: Activate
Activates or deactivates the search panel, resetting things to their default values if necessary. You can call this on every
control's OnBlur() and it will handle not deactivating the entire panel when focus is just switching between them transparently.
Parameters:
isActive - Whether you're activating or deactivating the panel.
ignoreDeactivateDelay - Set if you're positive the action will deactivate the panel and thus want to skip the delay.
*/
this.Activate = function(isActive, ignoreDeactivateDelay)
{
// We want to ignore isActive being false while the results window is open.
if (isActive || (this.mode == "HTML" && this.DOMPopupSearchResultsWindow().style.display == "block"))
{
if (this.inactivateTimeout)
{
clearTimeout(this.inactivateTimeout);
this.inactivateTimeout = 0;
};
this.DOMSearchPanel().className = 'MSearchPanelActive';
var searchField = this.DOMSearchField();
if (searchField.value == 'Search')
{ searchField.value = ""; }
}
else if (!ignoreDeactivateDelay)
{
this.inactivateTimeout = setTimeout(this.name + ".InactivateAfterTimeout()", this.inactivateTimeoutLength);
}
else
{
this.InactivateAfterTimeout();
};
};
/*
Function: InactivateAfterTimeout
Called by <inactivateTimeout>, which is set by <Activate()>. Inactivation occurs on a timeout because a control may
receive OnBlur() when focus is really transferring to another control in the search panel. In this case we don't want to
actually deactivate the panel because not only would that cause a visible flicker but it could also reset the search value.
So by doing it on a timeout instead, there's a short period where the second control's OnFocus() can cancel the deactivation.
*/
this.InactivateAfterTimeout = function()
{
this.inactivateTimeout = 0;
this.DOMSearchPanel().className = 'MSearchPanelInactive';
this.DOMSearchField().value = "Search";
this.lastSearchValue = "";
this.lastResultsPage = "";
};
};
/* ________________________________________________________________________________________________________
Class: SearchResults
_________________________________________________________________________________________________________
The class that handles everything on the search results page.
_________________________________________________________________________________________________________
*/
function SearchResults(name, mode)
{
/*
var: mode
The mode the search is going to work in, such as "HTML" or "FramedHTML".
*/
this.mode = mode;
/*
var: lastMatchCount
The number of matches from the last run of <Search()>.
*/
this.lastMatchCount = 0;
/*
Function: Toggle
Toggles the visibility of the passed element ID.
*/
this.Toggle = function(id)
{
if (this.mode == "FramedHTML")
{ return; };
var parentElement = document.getElementById(id);
var element = parentElement.firstChild;
while (element && element != parentElement)
{
if (element.nodeName == 'DIV' && element.className == 'ISubIndex')
{
if (element.style.display == 'block')
{ element.style.display = "none"; }
else
{ element.style.display = 'block'; }
};
if (element.nodeName == 'DIV' && element.hasChildNodes())
{ element = element.firstChild; }
else if (element.nextSibling)
{ element = element.nextSibling; }
else
{
do
{
element = element.parentNode;
}
while (element && element != parentElement && !element.nextSibling);
if (element && element != parentElement)
{ element = element.nextSibling; };
};
};
};
/*
Function: Search
Searches for the passed string. If there is no parameter, it takes it from the URL query.
Always returns true, since other documents may try to call it and that may or may not be possible.
*/
this.Search = function(search)
{
if (!search)
{
search = window.location.search;
search = search.substring(1); // Remove the leading ?
search = unescape(search);
};
search = search.replace(/^ +/, "");
search = search.replace(/ +$/, "");
search = search.toLowerCase();
if (search.match(/[^a-z0-9]/)) // Just a little speedup so it doesn't have to go through the below unnecessarily.
{
search = search.replace(/\_/g, "_und");
search = search.replace(/\ +/gi, "_spc");
search = search.replace(/\~/g, "_til");
search = search.replace(/\!/g, "_exc");
search = search.replace(/\@/g, "_att");
search = search.replace(/\#/g, "_num");
search = search.replace(/\$/g, "_dol");
search = search.replace(/\%/g, "_pct");
search = search.replace(/\^/g, "_car");
search = search.replace(/\&/g, "_amp");
search = search.replace(/\*/g, "_ast");
search = search.replace(/\(/g, "_lpa");
search = search.replace(/\)/g, "_rpa");
search = search.replace(/\-/g, "_min");
search = search.replace(/\+/g, "_plu");
search = search.replace(/\=/g, "_equ");
search = search.replace(/\{/g, "_lbc");
search = search.replace(/\}/g, "_rbc");
search = search.replace(/\[/g, "_lbk");
search = search.replace(/\]/g, "_rbk");
search = search.replace(/\:/g, "_col");
search = search.replace(/\;/g, "_sco");
search = search.replace(/\"/g, "_quo");
search = search.replace(/\'/g, "_apo");
search = search.replace(/\</g, "_lan");
search = search.replace(/\>/g, "_ran");
search = search.replace(/\,/g, "_com");
search = search.replace(/\./g, "_per");
search = search.replace(/\?/g, "_que");
search = search.replace(/\//g, "_sla");
search = search.replace(/[^a-z0-9\_]i/gi, "_zzz");
};
var resultRows = document.getElementsByTagName("div");
var matches = 0;
var i = 0;
while (i < resultRows.length)
{
var row = resultRows.item(i);
if (row.className == "SRResult")
{
var rowMatchName = row.id.toLowerCase();
rowMatchName = rowMatchName.replace(/^sr\d*_/, '');
if (search.length <= rowMatchName.length && rowMatchName.substr(0, search.length) == search)
{
row.style.display = "block";
matches++;
}
else
{ row.style.display = "none"; };
};
i++;
};
document.getElementById("Searching").style.display="none";
if (matches == 0)
{ document.getElementById("NoMatches").style.display="block"; }
else
{ document.getElementById("NoMatches").style.display="none"; }
this.lastMatchCount = matches;
return true;
};
};

View file

@ -0,0 +1,152 @@
var indexSectionsWithContent = {
"General": {
"Symbols": false,
"Numbers": false,
"A": true,
"B": true,
"C": true,
"D": true,
"E": true,
"F": true,
"G": true,
"H": true,
"I": true,
"J": false,
"K": false,
"L": true,
"M": true,
"N": true,
"O": true,
"P": true,
"Q": true,
"R": true,
"S": true,
"T": true,
"U": true,
"V": true,
"W": true,
"X": false,
"Y": false,
"Z": false
},
"Variables": {
"Symbols": false,
"Numbers": false,
"A": false,
"B": false,
"C": false,
"D": true,
"E": false,
"F": true,
"G": false,
"H": true,
"I": false,
"J": false,
"K": false,
"L": false,
"M": false,
"N": false,
"O": false,
"P": true,
"Q": false,
"R": false,
"S": false,
"T": false,
"U": false,
"V": false,
"W": true,
"X": false,
"Y": false,
"Z": false
},
"Functions": {
"Symbols": false,
"Numbers": false,
"A": false,
"B": false,
"C": true,
"D": true,
"E": false,
"F": true,
"G": true,
"H": false,
"I": true,
"J": false,
"K": false,
"L": false,
"M": true,
"N": true,
"O": true,
"P": false,
"Q": false,
"R": true,
"S": true,
"T": true,
"U": false,
"V": false,
"W": false,
"X": false,
"Y": false,
"Z": false
},
"Constants": {
"Symbols": false,
"Numbers": false,
"A": false,
"B": true,
"C": true,
"D": false,
"E": false,
"F": false,
"G": false,
"H": false,
"I": true,
"J": false,
"K": false,
"L": false,
"M": false,
"N": false,
"O": false,
"P": false,
"Q": false,
"R": false,
"S": true,
"T": true,
"U": false,
"V": false,
"W": false,
"X": false,
"Y": false,
"Z": false
},
"Classes": {
"Symbols": false,
"Numbers": false,
"A": false,
"B": false,
"C": true,
"D": false,
"E": true,
"F": false,
"G": true,
"H": false,
"I": true,
"J": false,
"K": false,
"L": false,
"M": false,
"N": false,
"O": false,
"P": false,
"Q": false,
"R": false,
"S": true,
"T": false,
"U": false,
"V": true,
"W": false,
"X": false,
"Y": false,
"Z": false
}
}

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_CLIENT_undINFO><div class=IEntry><a href="../files2/e_if_other-h.html#CLIENT_INFO" target=_parent class=ISymbol>CLIENT_INFO</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Entity><div class=IEntry><a href="../files/server/gs_common-hpp.html#Entity" target=_parent class=ISymbol>Entity</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Game_spcController><div class=IEntry><a href="../files/server/gs_common-hpp.html#Game_Controller" target=_parent class=ISymbol>Game Controller</a></div></div><div class=SRResult id=SR_Game_spcWorld><div class=IEntry><a href="../files/server/gs_common-hpp.html#Game_World" target=_parent class=ISymbol>Game World</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_IMAGE_undINFO><div class=IEntry><a href="../files2/e_if_gfx-h.html#IMAGE_INFO" target=_parent class=ISymbol>IMAGE_INFO</a></div></div><div class=SRResult id=SR_INPUT_undEVENT><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT" target=_parent class=ISymbol>INPUT_EVENT</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_SERVER_undINFO><div class=IEntry><a href="../files2/e_if_client-h.html#SERVER_INFO" target=_parent class=ISymbol>SERVER_INFO</a></div></div><div class=SRResult id=SR_SERVER_undINFO_undPLAYER><div class=IEntry><a href="../files2/e_if_client-h.html#SERVER_INFO_PLAYER" target=_parent class=ISymbol>SERVER_INFO_PLAYER</a></div></div><div class=SRResult id=SR_SNAP_undITEM><div class=IEntry><a href="../files2/e_if_other-h.html#SNAP_ITEM" target=_parent class=ISymbol>SNAP_ITEM</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_VIDEO_undMODE><div class=IEntry><a href="../files2/e_if_gfx-h.html#VIDEO_MODE" target=_parent class=ISymbol>VIDEO_MODE</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_BROWSESORT_undGAMETYPE><div class=IEntry><a href="../files2/e_if_client-h.html#BROWSESORT_GAMETYPE" target=_parent class=ISymbol>BROWSESORT_GAMETYPE</a></div></div><div class=SRResult id=SR_BROWSESORT_undMAP><div class=IEntry><a href="../files2/e_if_client-h.html#BROWSESORT_MAP" target=_parent class=ISymbol>BROWSESORT_MAP</a></div></div><div class=SRResult id=SR_BROWSESORT_undNAME><div class=IEntry><a href="../files2/e_if_client-h.html#BROWSESORT_NAME" target=_parent class=ISymbol>BROWSESORT_NAME</a></div></div><div class=SRResult id=SR_BROWSESORT_undNUMPLAYERS><div class=IEntry><a href="../files2/e_if_client-h.html#BROWSESORT_NUMPLAYERS" target=_parent class=ISymbol>BROWSESORT_NUMPLAYERS</a></div></div><div class=SRResult id=SR_BROWSESORT_undPING><div class=IEntry><a href="../files2/e_if_client-h.html#BROWSESORT_PING" target=_parent class=ISymbol>BROWSESORT_PING</a></div></div><div class=SRResult id=SR_BROWSESORT_undPROGRESSION><div class=IEntry><a href="../files2/e_if_client-h.html#BROWSESORT_PROGRESSION" target=_parent class=ISymbol>BROWSESORT_PROGRESSION</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Client_spcStates><div class=IEntry><a href="../files2/e_if_client-h.html#Client_States" target=_parent class=ISymbol>Client States</a></div></div><div class=SRResult id=SR_CLIENTSTATE_undCONNECTING><div class=IEntry><a href="../files2/e_if_client-h.html#CLIENTSTATE_CONNECTING" target=_parent class=ISymbol>CLIENTSTATE_CONNECTING</a></div></div><div class=SRResult id=SR_CLIENTSTATE_undLOADING><div class=IEntry><a href="../files2/e_if_client-h.html#CLIENTSTATE_LOADING" target=_parent class=ISymbol>CLIENTSTATE_LOADING</a></div></div><div class=SRResult id=SR_CLIENTSTATE_undOFFLINE><div class=IEntry><a href="../files2/e_if_client-h.html#CLIENTSTATE_OFFLINE" target=_parent class=ISymbol>CLIENTSTATE_OFFLINE</a></div></div><div class=SRResult id=SR_CLIENTSTATE_undONLINE><div class=IEntry><a href="../files2/e_if_client-h.html#CLIENTSTATE_ONLINE" target=_parent class=ISymbol>CLIENTSTATE_ONLINE</a></div></div><div class=SRResult id=SR_CLIENTSTATE_undQUITING><div class=IEntry><a href="../files2/e_if_client-h.html#CLIENTSTATE_QUITING" target=_parent class=ISymbol>CLIENTSTATE_QUITING</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Image_spcFormats><div class=IEntry><a href="../files2/e_if_client-h.html#Image_Formats" target=_parent class=ISymbol>Image Formats</a></div></div><div class=SRResult id=SR_IMG_undALPHA><div class=IEntry><a href="../files2/e_if_client-h.html#IMG_ALPHA" target=_parent class=ISymbol>IMG_ALPHA</a></div></div><div class=SRResult id=SR_IMG_undAUTO><div class=IEntry><a href="../files2/e_if_client-h.html#IMG_AUTO" target=_parent class=ISymbol>IMG_AUTO</a></div></div><div class=SRResult id=SR_IMG_undRGB><div class=IEntry><a href="../files2/e_if_client-h.html#IMG_RGB" target=_parent class=ISymbol>IMG_RGB</a></div></div><div class=SRResult id=SR_IMG_undRGBA><div class=IEntry><a href="../files2/e_if_client-h.html#IMG_RGBA" target=_parent class=ISymbol>IMG_RGBA</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Server_spcBrowser_spcSorting><div class=IEntry><a href="../files2/e_if_client-h.html#Server_Browser_Sorting" target=_parent class=ISymbol>Server Browser Sorting</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_TEXLOAD_undNORESAMPLE><div class=IEntry><a href="../files2/e_if_client-h.html#TEXLOAD_NORESAMPLE" target=_parent class=ISymbol>TEXLOAD_NORESAMPLE</a></div></div><div class=SRResult id=SR_Texture_spcLoading_spcFlags><div class=IEntry><a href="../files2/e_if_client-h.html#Texture_Loading_Flags" target=_parent class=ISymbol>Texture Loading Flags</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_dbg_undassert><div class=IEntry><a href="../files2/e_system-h.html#dbg_assert" target=_parent class=ISymbol>dbg_assert</a></div></div><div class=SRResult id=SR_dbg_undbreak><div class=IEntry><a href="../files2/e_system-h.html#dbg_break" target=_parent class=ISymbol>dbg_break</a></div></div><div class=SRResult id=SR_dbg_undmsg><div class=IEntry><a href="../files2/e_system-h.html#dbg_msg" target=_parent class=ISymbol>dbg_msg</a></div></div><div class=SRResult id=SR_destroy><div class=IEntry><a href="../files/server/gs_common-hpp.html#Entity.destroy" target=_parent class=ISymbol>destroy</a>, <span class=IParent>Entity</span></div></div><div class=SRResult id=SR_destroy_undentity><div class=IEntry><a href="../files/server/gs_common-hpp.html#Game_World.destroy_entity" target=_parent class=ISymbol>destroy_entity</a>, <span class=IParent>Game World</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_find_undentities><div class=IEntry><a href="../files/server/gs_common-hpp.html#Game_World.find_entities" target=_parent class=ISymbol>find_entities</a>, <span class=IParent>Game World</span></div></div><div class=SRResult id=SR_fs_undlistdir><div class=IEntry><a href="../files2/e_system-h.html#fs_listdir" target=_parent class=ISymbol>fs_listdir</a></div></div><div class=SRResult id=SR_fs_undmakedir><div class=IEntry><a href="../files2/e_system-h.html#fs_makedir" target=_parent class=ISymbol>fs_makedir</a></div></div><div class=SRResult id=SR_fs_undstorage_undpath><div class=IEntry><a href="../files2/e_system-h.html#fs_storage_path" target=_parent class=ISymbol>fs_storage_path</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_net_undaddr_undcomp><div class=IEntry><a href="../files2/e_system-h.html#net_addr_comp" target=_parent class=ISymbol>net_addr_comp</a></div></div><div class=SRResult id=SR_net_undaddr_undstr><div class=IEntry><a href="../files2/e_system-h.html#net_addr_str" target=_parent class=ISymbol>net_addr_str</a></div></div><div class=SRResult id=SR_net_underrno><div class=IEntry><a href="../files2/e_system-h.html#net_errno" target=_parent class=ISymbol>net_errno</a></div></div><div class=SRResult id=SR_net_undhost_undlookup><div class=IEntry><a href="../files2/e_system-h.html#net_host_lookup" target=_parent class=ISymbol>net_host_lookup</a></div></div><div class=SRResult id=SR_net_undinit><div class=IEntry><a href="../files2/e_system-h.html#net_init" target=_parent class=ISymbol>net_init</a></div></div><div class=SRResult id=SR_net_undtcp_undaccept><div class=IEntry><a href="../files2/e_system-h.html#net_tcp_accept" target=_parent class=ISymbol>net_tcp_accept</a></div></div><div class=SRResult id=SR_net_undtcp_undclose><div class=IEntry><a href="../files2/e_system-h.html#net_tcp_close" target=_parent class=ISymbol>net_tcp_close</a></div></div><div class=SRResult id=SR_net_undtcp_undconnect><div class=IEntry><a href="../files2/e_system-h.html#net_tcp_connect" target=_parent class=ISymbol>net_tcp_connect</a></div></div><div class=SRResult id=SR_net_undtcp_undconnect_undnon_undblocking><div class=IEntry><a href="../files2/e_system-h.html#net_tcp_connect_non_blocking" target=_parent class=ISymbol>net_tcp_connect_non_blocking</a></div></div><div class=SRResult id=SR_net_undtcp_undcreate><div class=IEntry><a href="../files2/e_system-h.html#net_tcp_create" target=_parent class=ISymbol>net_tcp_create</a></div></div><div class=SRResult id=SR_net_undtcp_undlisten><div class=IEntry><a href="../files2/e_system-h.html#net_tcp_listen" target=_parent class=ISymbol>net_tcp_listen</a></div></div><div class=SRResult id=SR_net_undtcp_undrecv><div class=IEntry><a href="../files2/e_system-h.html#net_tcp_recv" target=_parent class=ISymbol>net_tcp_recv</a></div></div><div class=SRResult id=SR_net_undtcp_undsend><div class=IEntry><a href="../files2/e_system-h.html#net_tcp_send" target=_parent class=ISymbol>net_tcp_send</a></div></div><div class=SRResult id=SR_net_undtcp_undset_undnon_undblocking><div class=IEntry><a href="../files2/e_system-h.html#net_tcp_set_non_blocking" target=_parent class=ISymbol>net_tcp_set_non_blocking</a></div></div><div class=SRResult id=SR_net_undudp_undclose><div class=IEntry><a href="../files2/e_system-h.html#net_udp_close" target=_parent class=ISymbol>net_udp_close</a></div></div><div class=SRResult id=SR_net_undudp_undcreate><div class=IEntry><a href="../files2/e_system-h.html#net_udp_create" target=_parent class=ISymbol>net_udp_create</a></div></div><div class=SRResult id=SR_net_undudp_undrecv><div class=IEntry><a href="../files2/e_system-h.html#net_udp_recv" target=_parent class=ISymbol>net_udp_recv</a></div></div><div class=SRResult id=SR_net_undudp_undsend><div class=IEntry><a href="../files2/e_system-h.html#net_udp_send" target=_parent class=ISymbol>net_udp_send</a></div></div><div class=SRResult id=SR_net_undwould_undblock><div class=IEntry><a href="../files2/e_system-h.html#net_would_block" target=_parent class=ISymbol>net_would_block</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_on_undcharacter_unddeath><div class=IEntry><a href="../files/server/gs_common-hpp.html#Game_Controller.on_character_death" target=_parent class=ISymbol>on_character_death</a>, <span class=IParent>Game Controller</span></div></div><div class=SRResult id=SR_on_undcharacter_undspawn><div class=IEntry><a href="../files/server/gs_common-hpp.html#Game_Controller.on_character_spawn" target=_parent class=ISymbol>on_character_spawn</a>, <span class=IParent>Game Controller</span></div></div><div class=SRResult id=SR_on_undentity><div class=IEntry><a href="../files/server/gs_common-hpp.html#Game_Controller.on_entity" target=_parent class=ISymbol>on_entity</a>, <span class=IParent>Game Controller</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_remove_undentity><div class=IEntry><a href="../files/server/gs_common-hpp.html#Game_World.remove_entity" target=_parent class=ISymbol>remove_entity</a>, <span class=IParent>Game World</span></div></div><div class=SRResult id=SR_reset><div class=IEntry><a href="../files/server/gs_common-hpp.html#Entity.reset" target=_parent class=ISymbol>reset</a>, <span class=IParent>Entity</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_thread_undcreate><div class=IEntry><a href="../files2/e_system-h.html#thread_create" target=_parent class=ISymbol>thread_create</a></div></div><div class=SRResult id=SR_thread_unddestoy><div class=IEntry><a href="../files2/e_system-h.html#thread_destoy" target=_parent class=ISymbol>thread_destoy</a></div></div><div class=SRResult id=SR_thread_undsleep><div class=IEntry><a href="../files2/e_system-h.html#thread_sleep" target=_parent class=ISymbol>thread_sleep</a></div></div><div class=SRResult id=SR_thread_undwait><div class=IEntry><a href="../files2/e_system-h.html#thread_wait" target=_parent class=ISymbol>thread_wait</a></div></div><div class=SRResult id=SR_thread_undyeild><div class=IEntry><a href="../files2/e_system-h.html#thread_yeild" target=_parent class=ISymbol>thread_yeild</a></div></div><div class=SRResult id=SR_tick><div class=IEntry><a href="javascript:searchResults.Toggle('SR_tick')" class=ISymbol>tick</a><div class=ISubIndex><a href="../files/server/gs_common-hpp.html#Entity.tick" target=_parent class=IParent>Entity</a><a href="../files/server/gs_common-hpp.html#Game_World.tick" target=_parent class=IParent>Game World</a></div></div></div><div class=SRResult id=SR_tick_unddefered><div class=IEntry><a href="../files/server/gs_common-hpp.html#Entity.tick_defered" target=_parent class=ISymbol>tick_defered</a>, <span class=IParent>Entity</span></div></div><div class=SRResult id=SR_time_undfreq><div class=IEntry><a href="../files2/e_system-h.html#time_freq" target=_parent class=ISymbol>time_freq</a></div></div><div class=SRResult id=SR_time_undget><div class=IEntry><a href="../files2/e_system-h.html#time_get" target=_parent class=ISymbol>time_get</a></div></div><div class=SRResult id=SR_time_undtimestamp><div class=IEntry><a href="../files2/e_system-h.html#time_timestamp" target=_parent class=ISymbol>time_timestamp</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Actions><div class=IEntry><a href="../files2/e_if_client-h.html#Actions" target=_parent class=ISymbol>Actions</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_BROWSESORT_undGAMETYPE><div class=IEntry><a href="../files2/e_if_client-h.html#BROWSESORT_GAMETYPE" target=_parent class=ISymbol>BROWSESORT_GAMETYPE</a></div></div><div class=SRResult id=SR_BROWSESORT_undMAP><div class=IEntry><a href="../files2/e_if_client-h.html#BROWSESORT_MAP" target=_parent class=ISymbol>BROWSESORT_MAP</a></div></div><div class=SRResult id=SR_BROWSESORT_undNAME><div class=IEntry><a href="../files2/e_if_client-h.html#BROWSESORT_NAME" target=_parent class=ISymbol>BROWSESORT_NAME</a></div></div><div class=SRResult id=SR_BROWSESORT_undNUMPLAYERS><div class=IEntry><a href="../files2/e_if_client-h.html#BROWSESORT_NUMPLAYERS" target=_parent class=ISymbol>BROWSESORT_NUMPLAYERS</a></div></div><div class=SRResult id=SR_BROWSESORT_undPING><div class=IEntry><a href="../files2/e_if_client-h.html#BROWSESORT_PING" target=_parent class=ISymbol>BROWSESORT_PING</a></div></div><div class=SRResult id=SR_BROWSESORT_undPROGRESSION><div class=IEntry><a href="../files2/e_if_client-h.html#BROWSESORT_PROGRESSION" target=_parent class=ISymbol>BROWSESORT_PROGRESSION</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_data><div class=IEntry><a href="../files2/e_if_gfx-h.html#IMAGE_INFO.data" target=_parent class=ISymbol>data</a>, <span class=IParent>IMAGE_INFO</span></div></div><div class=SRResult id=SR_dbg_undassert><div class=IEntry><a href="../files2/e_system-h.html#dbg_assert" target=_parent class=ISymbol>dbg_assert</a></div></div><div class=SRResult id=SR_dbg_undbreak><div class=IEntry><a href="../files2/e_system-h.html#dbg_break" target=_parent class=ISymbol>dbg_break</a></div></div><div class=SRResult id=SR_dbg_undmsg><div class=IEntry><a href="../files2/e_system-h.html#dbg_msg" target=_parent class=ISymbol>dbg_msg</a></div></div><div class=SRResult id=SR_Debug><div class=IEntry><a href="../files2/e_system-h.html#Debug" target=_parent class=ISymbol>Debug</a></div></div><div class=SRResult id=SR_Definitions><div class=IEntry><a href="../files2/docs/snapshots-txt.html#Definitions" target=_parent class=ISymbol>Definitions</a></div></div><div class=SRResult id=SR_destroy><div class=IEntry><a href="../files/server/gs_common-hpp.html#Entity.destroy" target=_parent class=ISymbol>destroy</a>, <span class=IParent>Entity</span></div></div><div class=SRResult id=SR_destroy_undentity><div class=IEntry><a href="../files/server/gs_common-hpp.html#Game_World.destroy_entity" target=_parent class=ISymbol>destroy_entity</a>, <span class=IParent>Game World</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Engine_spcInterface><div class=IEntry><a href="../files2/e_if_other-h.html#Engine_Interface" target=_parent class=ISymbol>Engine Interface</a></div></div><div class=SRResult id=SR_Entity><div class=IEntry><a href="../files/server/gs_common-hpp.html#Entity" target=_parent class=ISymbol>Entity</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_File_spcIO><div class=IEntry><a href="../files2/e_system-h.html#File_IO" target=_parent class=ISymbol>File IO</a></div></div><div class=SRResult id=SR_Filesystem><div class=IEntry><a href="../files2/e_system-h.html#Filesystem" target=_parent class=ISymbol>Filesystem</a></div></div><div class=SRResult id=SR_find_undentities><div class=IEntry><a href="../files/server/gs_common-hpp.html#Game_World.find_entities" target=_parent class=ISymbol>find_entities</a>, <span class=IParent>Game World</span></div></div><div class=SRResult id=SR_format><div class=IEntry><a href="../files2/e_if_gfx-h.html#IMAGE_INFO.format" target=_parent class=ISymbol>format</a>, <span class=IParent>IMAGE_INFO</span></div></div><div class=SRResult id=SR_fs_undlistdir><div class=IEntry><a href="../files2/e_system-h.html#fs_listdir" target=_parent class=ISymbol>fs_listdir</a></div></div><div class=SRResult id=SR_fs_undmakedir><div class=IEntry><a href="../files2/e_system-h.html#fs_makedir" target=_parent class=ISymbol>fs_makedir</a></div></div><div class=SRResult id=SR_fs_undstorage_undpath><div class=IEntry><a href="../files2/e_system-h.html#fs_storage_path" target=_parent class=ISymbol>fs_storage_path</a></div></div><div class=SRResult id=SR_Functions><div class=IEntry><a href="javascript:searchResults.Toggle('SR_Functions')" class=ISymbol>Functions</a><div class=ISubIndex><span class=IParent>Global</span><div class=ISubIndex><a href="../files2/e_if_client-h.html#Functions" target=_parent class=IFile>e_if_client.h</a><a href="../files2/e_if_gfx-h.html#Functions" target=_parent class=IFile>e_if_gfx.h</a><a href="../files2/e_if_modc-h.html#Functions" target=_parent class=IFile>e_if_modc.h</a><a href="../files2/e_if_mods-h.html#Functions" target=_parent class=IFile>e_if_mods.h</a><a href="../files2/e_if_msg-h.html#Functions" target=_parent class=IFile>e_if_msg.h</a><a href="../files2/e_if_other-h.html#Functions" target=_parent class=IFile>e_if_other.h</a><a href="../files2/e_if_server-h.html#Functions" target=_parent class=IFile>e_if_server.h</a><a href="../files2/e_if_snd-h.html#Functions" target=_parent class=IFile>e_if_snd.h</a></div><a href="../files/server/gs_common-hpp.html#Entity.Functions" target=_parent class=IParent>Entity</a><a href="../files/server/gs_common-hpp.html#Game_Controller.Functions" target=_parent class=IParent>Game Controller</a><a href="../files/server/gs_common-hpp.html#Game_World.Functions" target=_parent class=IParent>Game World</a><a href="../files2/e_if_inp-h.html#INPUT_EVENT.Functions" target=_parent class=IParent>INPUT_EVENT</a></div></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_height><div class=IEntry><a href="../files2/e_if_gfx-h.html#IMAGE_INFO.height" target=_parent class=ISymbol>height</a>, <span class=IParent>IMAGE_INFO</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Lines><div class=IEntry><a href="../files2/e_if_gfx-h.html#Lines" target=_parent class=ISymbol>Lines</a></div></div><div class=SRResult id=SR_Locks><div class=IEntry><a href="../files2/e_system-h.html#Locks" target=_parent class=ISymbol>Locks</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_net_undaddr_undcomp><div class=IEntry><a href="../files2/e_system-h.html#net_addr_comp" target=_parent class=ISymbol>net_addr_comp</a></div></div><div class=SRResult id=SR_net_undaddr_undstr><div class=IEntry><a href="../files2/e_system-h.html#net_addr_str" target=_parent class=ISymbol>net_addr_str</a></div></div><div class=SRResult id=SR_net_underrno><div class=IEntry><a href="../files2/e_system-h.html#net_errno" target=_parent class=ISymbol>net_errno</a></div></div><div class=SRResult id=SR_net_undhost_undlookup><div class=IEntry><a href="../files2/e_system-h.html#net_host_lookup" target=_parent class=ISymbol>net_host_lookup</a></div></div><div class=SRResult id=SR_net_undinit><div class=IEntry><a href="../files2/e_system-h.html#net_init" target=_parent class=ISymbol>net_init</a></div></div><div class=SRResult id=SR_net_undtcp_undaccept><div class=IEntry><a href="../files2/e_system-h.html#net_tcp_accept" target=_parent class=ISymbol>net_tcp_accept</a></div></div><div class=SRResult id=SR_net_undtcp_undclose><div class=IEntry><a href="../files2/e_system-h.html#net_tcp_close" target=_parent class=ISymbol>net_tcp_close</a></div></div><div class=SRResult id=SR_net_undtcp_undconnect><div class=IEntry><a href="../files2/e_system-h.html#net_tcp_connect" target=_parent class=ISymbol>net_tcp_connect</a></div></div><div class=SRResult id=SR_net_undtcp_undconnect_undnon_undblocking><div class=IEntry><a href="../files2/e_system-h.html#net_tcp_connect_non_blocking" target=_parent class=ISymbol>net_tcp_connect_non_blocking</a></div></div><div class=SRResult id=SR_net_undtcp_undcreate><div class=IEntry><a href="../files2/e_system-h.html#net_tcp_create" target=_parent class=ISymbol>net_tcp_create</a></div></div><div class=SRResult id=SR_net_undtcp_undlisten><div class=IEntry><a href="../files2/e_system-h.html#net_tcp_listen" target=_parent class=ISymbol>net_tcp_listen</a></div></div><div class=SRResult id=SR_net_undtcp_undrecv><div class=IEntry><a href="../files2/e_system-h.html#net_tcp_recv" target=_parent class=ISymbol>net_tcp_recv</a></div></div><div class=SRResult id=SR_net_undtcp_undsend><div class=IEntry><a href="../files2/e_system-h.html#net_tcp_send" target=_parent class=ISymbol>net_tcp_send</a></div></div><div class=SRResult id=SR_net_undtcp_undset_undnon_undblocking><div class=IEntry><a href="../files2/e_system-h.html#net_tcp_set_non_blocking" target=_parent class=ISymbol>net_tcp_set_non_blocking</a></div></div><div class=SRResult id=SR_net_undudp_undclose><div class=IEntry><a href="../files2/e_system-h.html#net_udp_close" target=_parent class=ISymbol>net_udp_close</a></div></div><div class=SRResult id=SR_net_undudp_undcreate><div class=IEntry><a href="../files2/e_system-h.html#net_udp_create" target=_parent class=ISymbol>net_udp_create</a></div></div><div class=SRResult id=SR_net_undudp_undrecv><div class=IEntry><a href="../files2/e_system-h.html#net_udp_recv" target=_parent class=ISymbol>net_udp_recv</a></div></div><div class=SRResult id=SR_net_undudp_undsend><div class=IEntry><a href="../files2/e_system-h.html#net_udp_send" target=_parent class=ISymbol>net_udp_send</a></div></div><div class=SRResult id=SR_net_undwould_undblock><div class=IEntry><a href="../files2/e_system-h.html#net_would_block" target=_parent class=ISymbol>net_would_block</a></div></div><div class=SRResult id=SR_Network_spcGeneral><div class=IEntry><a href="../files2/e_system-h.html#Network_General" target=_parent class=ISymbol>Network General</a></div></div><div class=SRResult id=SR_Network_spcTCP><div class=IEntry><a href="../files2/e_system-h.html#Network_TCP" target=_parent class=ISymbol>Network TCP</a></div></div><div class=SRResult id=SR_Network_spcUDP><div class=IEntry><a href="../files2/e_system-h.html#Network_UDP" target=_parent class=ISymbol>Network UDP</a></div></div><div class=SRResult id=SR_Network_lpaServer_rpa><div class=IEntry><a href="../files2/e_if_other-h.html#Network(Server)" target=_parent class=ISymbol>Network(Server)</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_on_undcharacter_unddeath><div class=IEntry><a href="../files/server/gs_common-hpp.html#Game_Controller.on_character_death" target=_parent class=ISymbol>on_character_death</a>, <span class=IParent>Game Controller</span></div></div><div class=SRResult id=SR_on_undcharacter_undspawn><div class=IEntry><a href="../files/server/gs_common-hpp.html#Game_Controller.on_character_spawn" target=_parent class=ISymbol>on_character_spawn</a>, <span class=IParent>Game Controller</span></div></div><div class=SRResult id=SR_on_undentity><div class=IEntry><a href="../files/server/gs_common-hpp.html#Game_Controller.on_entity" target=_parent class=ISymbol>on_entity</a>, <span class=IParent>Game Controller</span></div></div><div class=SRResult id=SR_OS_spcAbstraction><div class=IEntry><a href="../files2/e_system-h.html#OS_Abstraction" target=_parent class=ISymbol>OS Abstraction</a></div></div><div class=SRResult id=SR_Other><div class=IEntry><a href="javascript:searchResults.Toggle('SR_Other')" class=ISymbol>Other</a><div class=ISubIndex><a href="../files2/e_if_client-h.html#Other" target=_parent class=IFile>e_if_client.h</a><a href="../files2/e_if_gfx-h.html#Other" target=_parent class=IFile>e_if_gfx.h</a></div></div></div><div class=SRResult id=SR_Overview><div class=IEntry><a href="../files2/docs/snapshots-txt.html#Overview" target=_parent class=ISymbol>Overview</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_pos><div class=IEntry><a href="../files/server/gs_common-hpp.html#Entity.pos" target=_parent class=ISymbol>pos</a>, <span class=IParent>Entity</span></div></div><div class=SRResult id=SR_Prediction><div class=IEntry><a href="../files2/docs/prediction-txt.html#Prediction" target=_parent class=ISymbol>Prediction</a></div></div><div class=SRResult id=SR_proximity_undradius><div class=IEntry><a href="../files/server/gs_common-hpp.html#Entity.proximity_radius" target=_parent class=ISymbol>proximity_radius</a>, <span class=IParent>Entity</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Quads><div class=IEntry><a href="../files2/e_if_gfx-h.html#Quads" target=_parent class=ISymbol>Quads</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Reinit><div class=IEntry><a href="../files2/docs/server_op-txt.html#Reinit" target=_parent class=ISymbol>Reinit</a></div></div><div class=SRResult id=SR_remove_undentity><div class=IEntry><a href="../files/server/gs_common-hpp.html#Game_World.remove_entity" target=_parent class=ISymbol>remove_entity</a>, <span class=IParent>Game World</span></div></div><div class=SRResult id=SR_Rendering><div class=IEntry><a href="../files2/docs/snapshots-txt.html#Rendering" target=_parent class=ISymbol>Rendering</a></div></div><div class=SRResult id=SR_reset><div class=IEntry><a href="../files/server/gs_common-hpp.html#Entity.reset" target=_parent class=ISymbol>reset</a>, <span class=IParent>Entity</span></div></div><div class=SRResult id=SR_Running><div class=IEntry><a href="../files2/docs/server_op-txt.html#Running" target=_parent class=ISymbol>Running</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_TEXLOAD_undNORESAMPLE><div class=IEntry><a href="../files2/e_if_client-h.html#TEXLOAD_NORESAMPLE" target=_parent class=ISymbol>TEXLOAD_NORESAMPLE</a></div></div><div class=SRResult id=SR_Text><div class=IEntry><a href="../files2/e_if_gfx-h.html#Text" target=_parent class=ISymbol>Text</a></div></div><div class=SRResult id=SR_Texture_spcLoading_spcFlags><div class=IEntry><a href="../files2/e_if_client-h.html#Texture_Loading_Flags" target=_parent class=ISymbol>Texture Loading Flags</a></div></div><div class=SRResult id=SR_thread_undcreate><div class=IEntry><a href="../files2/e_system-h.html#thread_create" target=_parent class=ISymbol>thread_create</a></div></div><div class=SRResult id=SR_thread_unddestoy><div class=IEntry><a href="../files2/e_system-h.html#thread_destoy" target=_parent class=ISymbol>thread_destoy</a></div></div><div class=SRResult id=SR_thread_undsleep><div class=IEntry><a href="../files2/e_system-h.html#thread_sleep" target=_parent class=ISymbol>thread_sleep</a></div></div><div class=SRResult id=SR_thread_undwait><div class=IEntry><a href="../files2/e_system-h.html#thread_wait" target=_parent class=ISymbol>thread_wait</a></div></div><div class=SRResult id=SR_thread_undyeild><div class=IEntry><a href="../files2/e_system-h.html#thread_yeild" target=_parent class=ISymbol>thread_yeild</a></div></div><div class=SRResult id=SR_Threads><div class=IEntry><a href="../files2/e_system-h.html#Threads" target=_parent class=ISymbol>Threads</a></div></div><div class=SRResult id=SR_tick><div class=IEntry><a href="javascript:searchResults.Toggle('SR_tick')" class=ISymbol>tick</a><div class=ISubIndex><a href="../files/server/gs_common-hpp.html#Entity.tick" target=_parent class=IParent>Entity</a><a href="../files/server/gs_common-hpp.html#Game_World.tick" target=_parent class=IParent>Game World</a></div></div></div><div class=SRResult id=SR_tick_unddefered><div class=IEntry><a href="../files/server/gs_common-hpp.html#Entity.tick_defered" target=_parent class=ISymbol>tick_defered</a>, <span class=IParent>Entity</span></div></div><div class=SRResult id=SR_Time><div class=IEntry><a href="../files2/e_if_client-h.html#Time" target=_parent class=ISymbol>Time</a></div></div><div class=SRResult id=SR_Time_spcon_spcthe_spcclient><div class=IEntry><a href="../files2/docs/client_time-txt.html#Time_on_the_client" target=_parent class=ISymbol>Time on the client</a></div></div><div class=SRResult id=SR_time_undfreq><div class=IEntry><a href="../files2/e_system-h.html#time_freq" target=_parent class=ISymbol>time_freq</a></div></div><div class=SRResult id=SR_time_undget><div class=IEntry><a href="../files2/e_system-h.html#time_get" target=_parent class=ISymbol>time_get</a></div></div><div class=SRResult id=SR_time_undtimestamp><div class=IEntry><a href="../files2/e_system-h.html#time_timestamp" target=_parent class=ISymbol>time_timestamp</a></div></div><div class=SRResult id=SR_Timer><div class=IEntry><a href="../files2/e_system-h.html#Timer" target=_parent class=ISymbol>Timer</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Undocumented><div class=IEntry><a href="../files2/e_system-h.html#Undocumented" target=_parent class=ISymbol>Undocumented</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Variables><div class=IEntry><a href="javascript:searchResults.Toggle('SR_Variables')" class=ISymbol>Variables</a><div class=ISubIndex><a href="../files/server/gs_common-hpp.html#Entity.Variables" target=_parent class=IParent>Entity</a><a href="../files2/e_if_gfx-h.html#IMAGE_INFO.Variables" target=_parent class=IParent>IMAGE_INFO</a></div></div></div><div class=SRResult id=SR_VIDEO_undMODE><div class=IEntry><a href="../files2/e_if_gfx-h.html#VIDEO_MODE" target=_parent class=ISymbol>VIDEO_MODE</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_width><div class=IEntry><a href="../files2/e_if_gfx-h.html#IMAGE_INFO.width" target=_parent class=ISymbol>width</a>, <span class=IParent>IMAGE_INFO</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,15 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=NoMatches>No Matches</div></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_data><div class=IEntry><a href="../files2/e_if_gfx-h.html#IMAGE_INFO.data" target=_parent class=ISymbol>data</a>, <span class=IParent>IMAGE_INFO</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_format><div class=IEntry><a href="../files2/e_if_gfx-h.html#IMAGE_INFO.format" target=_parent class=ISymbol>format</a>, <span class=IParent>IMAGE_INFO</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_height><div class=IEntry><a href="../files2/e_if_gfx-h.html#IMAGE_INFO.height" target=_parent class=ISymbol>height</a>, <span class=IParent>IMAGE_INFO</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_pos><div class=IEntry><a href="../files/server/gs_common-hpp.html#Entity.pos" target=_parent class=ISymbol>pos</a>, <span class=IParent>Entity</span></div></div><div class=SRResult id=SR_proximity_undradius><div class=IEntry><a href="../files/server/gs_common-hpp.html#Entity.proximity_radius" target=_parent class=ISymbol>proximity_radius</a>, <span class=IParent>Entity</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.4 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_width><div class=IEntry><a href="../files2/e_if_gfx-h.html#IMAGE_INFO.width" target=_parent class=ISymbol>width</a>, <span class=IParent>IMAGE_INFO</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults", "HTML");
searchResults.Search();
--></script></div><script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>

767
docs/output/styles/main.css Normal file
View file

@ -0,0 +1,767 @@
/*
IMPORTANT: If you're editing this file in the output directory of one of
your projects, your changes will be overwritten the next time you run
Natural Docs. Instead, copy this file to your project directory, make your
changes, and you can use it with -s. Even better would be to make a CSS
file in your project directory with only your changes, which you can then
use with -s [original style] [your changes].
On the other hand, if you're editing this file in the Natural Docs styles
directory, the changes will automatically be applied to all your projects
that use this style the next time Natural Docs is run on them.
This file is part of Natural Docs, which is Copyright (C) 2003-2008 Greg Valure
Natural Docs is licensed under the GPL
*/
body {
font: 10pt Verdana, Arial, sans-serif;
color: #000000;
margin: 0; padding: 0;
}
.ContentPage,
.IndexPage,
.FramedMenuPage {
background-color: #E8E8E8;
}
.FramedContentPage,
.FramedIndexPage,
.FramedSearchResultsPage,
.PopupSearchResultsPage {
background-color: #FFFFFF;
}
a:link,
a:visited { color: #900000; text-decoration: none }
a:hover { color: #900000; text-decoration: underline }
a:active { color: #FF0000; text-decoration: underline }
td {
vertical-align: top }
img { border: 0; }
/*
Comment out this line to use web-style paragraphs (blank line between
paragraphs, no indent) instead of print-style paragraphs (no blank line,
indented.)
*/
p {
text-indent: 5ex; margin: 0 }
/* Opera doesn't break with just wbr, but will if you add this. */
.Opera wbr:after {
content: "\00200B";
}
/* Blockquotes are used as containers for things that may need to scroll. */
blockquote {
padding: 0;
margin: 0;
overflow: auto;
}
.Firefox1 blockquote {
padding-bottom: .5em;
}
/* Turn off scrolling when printing. */
@media print {
blockquote {
overflow: visible;
}
.IE blockquote {
width: auto;
}
}
#Menu {
font-size: 9pt;
padding: 10px 0 0 0;
}
.ContentPage #Menu,
.IndexPage #Menu {
position: absolute;
top: 0;
left: 0;
width: 31ex;
overflow: hidden;
}
.ContentPage .Firefox #Menu,
.IndexPage .Firefox #Menu {
width: 27ex;
}
.MTitle {
font-size: 16pt; font-weight: bold; font-variant: small-caps;
text-align: center;
padding: 5px 10px 15px 10px;
border-bottom: 1px dotted #000000;
margin-bottom: 15px }
.MSubTitle {
font-size: 9pt; font-weight: normal; font-variant: normal;
margin-top: 1ex; margin-bottom: 5px }
.MEntry a:link,
.MEntry a:hover,
.MEntry a:visited { color: #606060; margin-right: 0 }
.MEntry a:active { color: #A00000; margin-right: 0 }
.MGroup {
font-variant: small-caps; font-weight: bold;
margin: 1em 0 1em 10px;
}
.MGroupContent {
font-variant: normal; font-weight: normal }
.MGroup a:link,
.MGroup a:hover,
.MGroup a:visited { color: #545454; margin-right: 10px }
.MGroup a:active { color: #A00000; margin-right: 10px }
.MFile,
.MText,
.MLink,
.MIndex {
padding: 1px 17px 2px 10px;
margin: .25em 0 .25em 0;
}
.MText {
font-size: 8pt; font-style: italic }
.MLink {
font-style: italic }
#MSelected {
color: #000000; background-color: #FFFFFF;
/* Replace padding with border. */
padding: 0 10px 0 10px;
border-width: 1px 2px 2px 0; border-style: solid; border-color: #000000;
margin-right: 5px;
}
/* Close off the left side when its in a group. */
.MGroup #MSelected {
padding-left: 9px; border-left-width: 1px }
/* A treat for Mozilla users. Blatantly non-standard. Will be replaced with CSS 3 attributes when finalized/supported. */
.Firefox #MSelected {
-moz-border-radius-topright: 10px;
-moz-border-radius-bottomright: 10px }
.Firefox .MGroup #MSelected {
-moz-border-radius-topleft: 10px;
-moz-border-radius-bottomleft: 10px }
#MSearchPanel {
padding: 0px 6px;
margin: .25em 0;
}
#MSearchField {
font: italic 9pt Verdana, sans-serif;
color: #606060;
background-color: #E8E8E8;
border: none;
padding: 2px 4px;
width: 100%;
}
/* Only Opera gets it right. */
.Firefox #MSearchField,
.IE #MSearchField,
.Safari #MSearchField {
width: 94%;
}
.Opera9 #MSearchField,
.Konqueror #MSearchField {
width: 97%;
}
.FramedMenuPage .Firefox #MSearchField,
.FramedMenuPage .Safari #MSearchField,
.FramedMenuPage .Konqueror #MSearchField {
width: 98%;
}
/* Firefox doesn't do this right in frames without #MSearchPanel added on.
It's presence doesn't hurt anything other browsers. */
#MSearchPanel.MSearchPanelInactive:hover #MSearchField {
background-color: #FFFFFF;
border: 1px solid #C0C0C0;
padding: 1px 3px;
}
.MSearchPanelActive #MSearchField {
background-color: #FFFFFF;
border: 1px solid #C0C0C0;
font-style: normal;
padding: 1px 3px;
}
#MSearchType {
visibility: hidden;
font: 8pt Verdana, sans-serif;
width: 98%;
padding: 0;
border: 1px solid #C0C0C0;
}
.MSearchPanelActive #MSearchType,
/* As mentioned above, Firefox doesn't do this right in frames without #MSearchPanel added on. */
#MSearchPanel.MSearchPanelInactive:hover #MSearchType,
#MSearchType:focus {
visibility: visible;
color: #606060;
}
#MSearchType option#MSearchEverything {
font-weight: bold;
}
.Opera8 .MSearchPanelInactive:hover,
.Opera8 .MSearchPanelActive {
margin-left: -1px;
}
iframe#MSearchResults {
width: 60ex;
height: 15em;
}
#MSearchResultsWindow {
display: none;
position: absolute;
left: 0; top: 0;
border: 1px solid #000000;
background-color: #E8E8E8;
}
#MSearchResultsWindowClose {
font-weight: bold;
font-size: 8pt;
display: block;
padding: 2px 5px;
}
#MSearchResultsWindowClose:link,
#MSearchResultsWindowClose:visited {
color: #000000;
text-decoration: none;
}
#MSearchResultsWindowClose:active,
#MSearchResultsWindowClose:hover {
color: #800000;
text-decoration: none;
background-color: #F4F4F4;
}
#Content {
padding-bottom: 15px;
}
.ContentPage #Content {
border-width: 0 0 1px 1px;
border-style: solid;
border-color: #000000;
background-color: #FFFFFF;
font-size: 9pt; /* To make 31ex match the menu's 31ex. */
margin-left: 31ex;
}
.ContentPage .Firefox #Content {
margin-left: 27ex;
}
.CTopic {
font-size: 10pt;
margin-bottom: 3em;
}
.CTitle {
font-size: 12pt; font-weight: bold;
border-width: 0 0 1px 0; border-style: solid; border-color: #A0A0A0;
margin: 0 15px .5em 15px }
.CGroup .CTitle {
font-size: 16pt; font-variant: small-caps;
padding-left: 15px; padding-right: 15px;
border-width: 0 0 2px 0; border-color: #000000;
margin-left: 0; margin-right: 0 }
.CClass .CTitle,
.CInterface .CTitle,
.CDatabase .CTitle,
.CDatabaseTable .CTitle,
.CSection .CTitle {
font-size: 18pt;
color: #FFFFFF; background-color: #A0A0A0;
padding: 10px 15px 10px 15px;
border-width: 2px 0; border-color: #000000;
margin-left: 0; margin-right: 0 }
#MainTopic .CTitle {
font-size: 20pt;
color: #FFFFFF; background-color: #7070C0;
padding: 10px 15px 10px 15px;
border-width: 0 0 3px 0; border-color: #000000;
margin-left: 0; margin-right: 0 }
.CBody {
margin-left: 15px; margin-right: 15px }
.CToolTip {
position: absolute; visibility: hidden;
left: 0; top: 0;
background-color: #FFFFE0;
padding: 5px;
border-width: 1px 2px 2px 1px; border-style: solid; border-color: #000000;
font-size: 8pt;
}
.Opera .CToolTip {
max-width: 98%;
}
/* Scrollbars would be useless. */
.CToolTip blockquote {
overflow: hidden;
}
.IE6 .CToolTip blockquote {
overflow: visible;
}
.CHeading {
font-weight: bold; font-size: 10pt;
margin: 1.5em 0 .5em 0;
}
.CBody pre {
font: 10pt "Courier New", Courier, monospace;
margin: 1em 0;
}
.CBody ul {
/* I don't know why CBody's margin doesn't apply, but it's consistent across browsers so whatever.
Reapply it here as padding. */
padding-left: 15px; padding-right: 15px;
margin: .5em 5ex .5em 5ex;
}
.CDescriptionList {
margin: .5em 5ex 0 5ex }
.CDLEntry {
font: 10pt "Courier New", Courier, monospace; color: #808080;
padding-bottom: .25em;
white-space: nowrap }
.CDLDescription {
font-size: 10pt; /* For browsers that don't inherit correctly, like Opera 5. */
padding-bottom: .5em; padding-left: 5ex }
.CTopic img {
text-align: center;
display: block;
margin: 1em auto;
}
.CImageCaption {
font-variant: small-caps;
font-size: 8pt;
color: #808080;
text-align: center;
position: relative;
top: 1em;
}
.CImageLink {
color: #808080;
font-style: italic;
}
a.CImageLink:link,
a.CImageLink:visited,
a.CImageLink:hover { color: #808080 }
.Prototype {
font: 10pt "Courier New", Courier, monospace;
padding: 5px 3ex;
border-width: 1px; border-style: solid;
margin: 0 5ex 1.5em 5ex;
}
.Prototype td {
font-size: 10pt;
}
.PDefaultValue,
.PDefaultValuePrefix,
.PTypePrefix {
color: #8F8F8F;
}
.PTypePrefix {
text-align: right;
}
.PAfterParameters {
vertical-align: bottom;
}
.IE .Prototype table {
padding: 0;
}
.CFunction .Prototype {
background-color: #F4F4F4; border-color: #D0D0D0 }
.CProperty .Prototype {
background-color: #F4F4FF; border-color: #C0C0E8 }
.CVariable .Prototype {
background-color: #FFFFF0; border-color: #E0E0A0 }
.CClass .Prototype {
border-width: 1px 2px 2px 1px; border-style: solid; border-color: #A0A0A0;
background-color: #F4F4F4;
}
.CInterface .Prototype {
border-width: 1px 2px 2px 1px; border-style: solid; border-color: #A0A0D0;
background-color: #F4F4FF;
}
.CDatabaseIndex .Prototype,
.CConstant .Prototype {
background-color: #D0D0D0; border-color: #000000 }
.CType .Prototype,
.CEnumeration .Prototype {
background-color: #FAF0F0; border-color: #E0B0B0;
}
.CDatabaseTrigger .Prototype,
.CEvent .Prototype,
.CDelegate .Prototype {
background-color: #F0FCF0; border-color: #B8E4B8 }
.CToolTip .Prototype {
margin: 0 0 .5em 0;
white-space: nowrap;
}
.Summary {
margin: 1.5em 5ex 0 5ex }
.STitle {
font-size: 12pt; font-weight: bold;
margin-bottom: .5em }
.SBorder {
background-color: #FFFFF0;
padding: 15px;
border: 1px solid #C0C060 }
/* In a frame IE 6 will make them too long unless you set the width to 100%. Without frames it will be correct without a width
or slightly too long (but not enough to scroll) with a width. This arbitrary weirdness simply astounds me. IE 7 has the same
problem with frames, haven't tested it without. */
.FramedContentPage .IE .SBorder {
width: 100% }
/* A treat for Mozilla users. Blatantly non-standard. Will be replaced with CSS 3 attributes when finalized/supported. */
.Firefox .SBorder {
-moz-border-radius: 20px }
.STable {
font-size: 9pt; width: 100% }
.SEntry {
width: 30% }
.SDescription {
width: 70% }
.SMarked {
background-color: #F8F8D8 }
.SDescription { padding-left: 2ex }
.SIndent1 .SEntry { padding-left: 1.5ex } .SIndent1 .SDescription { padding-left: 3.5ex }
.SIndent2 .SEntry { padding-left: 3.0ex } .SIndent2 .SDescription { padding-left: 5.0ex }
.SIndent3 .SEntry { padding-left: 4.5ex } .SIndent3 .SDescription { padding-left: 6.5ex }
.SIndent4 .SEntry { padding-left: 6.0ex } .SIndent4 .SDescription { padding-left: 8.0ex }
.SIndent5 .SEntry { padding-left: 7.5ex } .SIndent5 .SDescription { padding-left: 9.5ex }
.SDescription a { color: #800000}
.SDescription a:active { color: #A00000 }
.SGroup td {
padding-top: .5em; padding-bottom: .25em }
.SGroup .SEntry {
font-weight: bold; font-variant: small-caps }
.SGroup .SEntry a { color: #800000 }
.SGroup .SEntry a:active { color: #F00000 }
.SMain td,
.SClass td,
.SDatabase td,
.SDatabaseTable td,
.SSection td {
font-size: 10pt;
padding-bottom: .25em }
.SClass td,
.SDatabase td,
.SDatabaseTable td,
.SSection td {
padding-top: 1em }
.SMain .SEntry,
.SClass .SEntry,
.SDatabase .SEntry,
.SDatabaseTable .SEntry,
.SSection .SEntry {
font-weight: bold;
}
.SMain .SEntry a,
.SClass .SEntry a,
.SDatabase .SEntry a,
.SDatabaseTable .SEntry a,
.SSection .SEntry a { color: #000000 }
.SMain .SEntry a:active,
.SClass .SEntry a:active,
.SDatabase .SEntry a:active,
.SDatabaseTable .SEntry a:active,
.SSection .SEntry a:active { color: #A00000 }
.ClassHierarchy {
margin: 0 15px 1em 15px }
.CHEntry {
border-width: 1px 2px 2px 1px; border-style: solid; border-color: #A0A0A0;
margin-bottom: 3px;
padding: 2px 2ex;
font-size: 10pt;
background-color: #F4F4F4; color: #606060;
}
.Firefox .CHEntry {
-moz-border-radius: 4px;
}
.CHCurrent .CHEntry {
font-weight: bold;
border-color: #000000;
color: #000000;
}
.CHChildNote .CHEntry {
font-style: italic;
font-size: 8pt;
}
.CHIndent {
margin-left: 3ex;
}
.CHEntry a:link,
.CHEntry a:visited,
.CHEntry a:hover {
color: #606060;
}
.CHEntry a:active {
color: #800000;
}
#Index {
background-color: #FFFFFF;
}
/* As opposed to .PopupSearchResultsPage #Index */
.IndexPage #Index,
.FramedIndexPage #Index,
.FramedSearchResultsPage #Index {
padding: 15px;
}
.IndexPage #Index {
border-width: 0 0 1px 1px;
border-style: solid;
border-color: #000000;
font-size: 9pt; /* To make 27ex match the menu's 27ex. */
margin-left: 27ex;
}
.IPageTitle {
font-size: 20pt; font-weight: bold;
color: #FFFFFF; background-color: #7070C0;
padding: 10px 15px 10px 15px;
border-width: 0 0 3px 0; border-color: #000000; border-style: solid;
margin: -15px -15px 0 -15px }
.FramedSearchResultsPage .IPageTitle {
margin-bottom: 15px;
}
.INavigationBar {
font-size: 10pt;
text-align: center;
background-color: #FFFFF0;
padding: 5px;
border-bottom: solid 1px black;
margin: 0 -15px 15px -15px;
}
.INavigationBar a {
font-weight: bold }
.IHeading {
font-size: 16pt; font-weight: bold;
padding: 2.5em 0 .5em 0;
text-align: center;
width: 3.5ex;
}
#IFirstHeading {
padding-top: 0;
}
.IEntry {
font-size: 10pt;
padding-left: 1ex;
}
.PopupSearchResultsPage .IEntry {
font-size: 8pt;
padding: 1px 5px;
}
.PopupSearchResultsPage .Opera9 .IEntry,
.FramedSearchResultsPage .Opera9 .IEntry {
text-align: left;
}
.FramedSearchResultsPage .IEntry {
padding: 0;
}
.ISubIndex {
padding-left: 3ex; padding-bottom: .5em }
.PopupSearchResultsPage .ISubIndex {
display: none;
}
/* While it may cause some entries to look like links when they aren't, I found it's much easier to read the
index if everything's the same color. */
.ISymbol {
font-weight: bold; color: #900000 }
.IndexPage .ISymbolPrefix,
.FramedIndexPage .ISymbolPrefix {
font-size: 10pt;
text-align: right;
color: #C47C7C;
background-color: #F8F8F8;
border-right: 3px solid #E0E0E0;
border-left: 1px solid #E0E0E0;
padding: 0 1px 0 2px;
}
.PopupSearchResultsPage .ISymbolPrefix,
.FramedSearchResultsPage .ISymbolPrefix {
color: #900000;
}
.PopupSearchResultsPage .ISymbolPrefix {
font-size: 8pt;
}
.IndexPage #IFirstSymbolPrefix,
.FramedIndexPage #IFirstSymbolPrefix {
border-top: 1px solid #E0E0E0;
}
.IndexPage #ILastSymbolPrefix,
.FramedIndexPage #ILastSymbolPrefix {
border-bottom: 1px solid #E0E0E0;
}
.IndexPage #IOnlySymbolPrefix,
.FramedIndexPage #IOnlySymbolPrefix {
border-top: 1px solid #E0E0E0;
border-bottom: 1px solid #E0E0E0;
}
a.IParent,
a.IFile {
display: block;
}
.PopupSearchResultsPage .SRStatus {
padding: 2px 5px;
font-size: 8pt;
font-style: italic;
}
.FramedSearchResultsPage .SRStatus {
font-size: 10pt;
font-style: italic;
}
.SRResult {
display: none;
}
#Footer {
font-size: 8pt;
color: #989898;
text-align: right;
}
#Footer p {
text-indent: 0;
margin-bottom: .5em;
}
.ContentPage #Footer,
.IndexPage #Footer {
text-align: right;
margin: 2px;
}
.FramedMenuPage #Footer {
text-align: center;
margin: 5em 10px 10px 10px;
padding-top: 1em;
border-top: 1px solid #C8C8C8;
}
#Footer a:link,
#Footer a:hover,
#Footer a:visited { color: #989898 }
#Footer a:active { color: #A00000 }

View file

@ -0,0 +1,39 @@
Title: Server Operation
Section: Init
Section: Running
Here is an graph over how the server operates on each refresh.
(start code)
load map
init mod
while running
if map change then
load new map
shutdown mod <mods_shutdown>
reset clients to init state
init mod <mods_init>
end if
if new tick then
call <mods_tick>
for each client do
create snapshot <mods_snap>
send snapshot
end for
end
process new network messages
end while
unload map
(end)
Section: Reinit
Section: Shutdown

View file

@ -0,0 +1,58 @@
Title: Snapshots
Section: Overview
Topic: Definitions
- *Snapshot*. A is a serialized game state from which a client can render the game from. They are sent from the server at a regular interval and is created specificly for each client in order to reduce bandwidth.
- *Delta Snapshot*. A set of data that can be applied to a snapshot in order to create a new snapshot with the updated game state.
Topic: Structure
A snapshot contains a series of items. Each item have a type, id and data.
- *Type*. Type of item. Could be projectile or character for example.
- *Id*. A unique id so the client can identify the item between two snapshots.
- *Data*. A series of 32-bit integers that contains the per item type specific data.
Section: Server Side
Topic: Creating
Items can be added when <mods_snap> is called using the <snap_new_item> function to insert an item to the snapshot. The server can not inspect the snapshot that is in progress of being created.
Section: Client Side
Topic: Inspection
<modc_newsnapshot> is called when a new snapshot has arrived for processing. <snap_num_items>, <snap_get_item> and <snap_find_item> can be used to inspect the current and previous snapshot. This can be done anywhere while the client is running and not just in the <modc_newsnapshot> function. The client can also call <snap_invalidate_item> if an item contains improper information that could harm the operation of the client. This should however be done in <modc_newsnapshot> to assure that no bad data propagates into the rest of the client.
Topic: Rendering
DOCTODO
Section: In depth
Topic: Compression
After a snapshot have been created, compression is applyed to reduce the bandwidth. There are several steps taken inorder to reduce the size of the size of the snapshot.
- *Delta*. The server looks in a clients backlog of snapshots to find a previous acked snapshot. It then compares the two snapshots and creates a delta snapshot containing the changes from the previous acked snapshot to the new one.
- *Variable Integers*. The delta snapshot which is only consisting of 32-bit integers is then encoded into variable integers similar to UTF-8. Each byte has a bit that tells the decoder that it needs one more byte to decode the 32-bit integer. The first byte also contains a bit for telling the sign of the integer.
> ESDDDDDD EDDDDDDD EDDDDDDD EDDDDDDD
> E = extend
> S = sign
> D = data bit
- *Huffman*. The last step is to compress the buffer with a huffman encoder. It uses a static tree that is weighted towards 0 because it's where most of the data will be because of the delta compression.
Topic: Interval
The interval for how often a client recives a snapshot changes during the course of the connection. There are three different snapshot rates.
- *Init*. 5 snapshots per second. Used when a client is connecting and used until the client has acknowlaged a snapshot. This mechanism is used because the first snapshot because no delta compression can be done.
- *Full*. Snapshot for every tick or every even tick depending on server configuration. This is used during normal gameplay and everything is running smooth.
- *Recovery*. 1 snapshot each second. A client enters recovery rate when it havn't acknowlaged a snapshot over 1 second. This is to let the client to beable to recover if it has a slow connection.

View file

@ -760,14 +760,14 @@ int fs_storage_path(const char *appname, char *path, int max)
HRESULT r;
char *home = getenv("APPDATA");
if(!home)
return 1;
return -1;
_snprintf(path, max, "%s/%s", home, appname);
return 0;
#else
char *home = getenv("HOME");
int i;
if(!home)
return 0;
return -1;
#if defined(CONF_PLATFORM_MACOSX)
snprintf(path, max, "%s/Library/Application Support/%s", home, appname);
@ -777,7 +777,7 @@ int fs_storage_path(const char *appname, char *path, int max)
path[i] = tolower(path[i]);
#endif
return 1;
return 0;
#endif
}
@ -788,13 +788,13 @@ int fs_makedir(const char *path)
return 0;
if(errno == EEXIST)
return 0;
return 1;
return -1;
#else
if(mkdir(path, 0755) == 0)
return 0;
if(errno == EEXIST)
return 0;
return 1;
return -1;
#endif
}

View file

@ -408,7 +408,7 @@ int64 time_freq();
*/
unsigned time_timestamp();
/* Group: Network General ipv4 */
/* Group: Network General */
typedef int NETSOCKET;
enum
{
@ -420,13 +420,6 @@ enum
NETTYPE_ALL = ~0
};
/*
typedef struct
{
unsigned char ip[4];
unsigned short port;
} NETADDR4;*/
typedef struct
{
unsigned int type;
@ -434,15 +427,59 @@ typedef struct
unsigned short port;
} NETADDR;
/*
Function: net_init
Initiates network functionallity.
Returns:
Returns 0 on success,
Remarks:
You must call this function before using any other network
functions.
*/
int net_init();
/*
Function: net_host_lookup
Does a hostname lookup by name and fills out the passed NETADDR struct with the recieved details.
Does a hostname lookup by name and fills out the passed
NETADDR struct with the recieved details.
Returns:
0 on success.
*/
int net_host_lookup(const char *hostname, NETADDR *addr, int types);
/*
Function: net_addr_comp
Compares two network addresses.
Parameters:
a - Address to compare
b - Address to compare to.
Returns:
<0 - Address a is lesser then address b
0 - Address a is equal to address b
>0 - Address a is greater then address b
*/
int net_addr_comp(const NETADDR *a, const NETADDR *b);
/*
Function: net_addr_str
Turns a network address into a representive string.
Parameters:
addr - Address to turn into a string.
string - Buffer to fill with the string.
max_length - Maximum size of the string.
Remarks:
- The string will always be zero terminated
*/
int net_addr_str(const NETADDR *addr, char *string, int max_length);
/* Group: Network UDP */
/*
@ -450,10 +487,11 @@ int net_host_lookup(const char *hostname, NETADDR *addr, int types);
Creates a UDP socket and binds it to a port.
Parameters:
port - Port to bind the socket to.
bindaddr - Address to bind the socket to.
Returns:
On success it returns an handle to the socket. On failure it returns NETSOCKET_INVALID.
On success it returns an handle to the socket. On failure it
returns NETSOCKET_INVALID.
*/
NETSOCKET net_udp_create(NETADDR bindaddr);
@ -468,7 +506,8 @@ NETSOCKET net_udp_create(NETADDR bindaddr);
size - Size of the packet.
Returns:
On success it returns the number of bytes sent. Returns -1 on error.
On success it returns the number of bytes sent. Returns -1
on error.
*/
int net_udp_send(NETSOCKET sock, const NETADDR *addr, const void *data, int size);
@ -483,7 +522,8 @@ int net_udp_send(NETSOCKET sock, const NETADDR *addr, const void *data, int size
maxsize - Maximum size to recive.
Returns:
On success it returns the number of bytes recived. Returns -1 on error.
On success it returns the number of bytes recived. Returns -1
on error.
*/
int net_udp_recv(NETSOCKET sock, NETADDR *addr, void *data, int maxsize);
@ -504,95 +544,97 @@ int net_udp_close(NETSOCKET sock);
/*
Function: net_tcp_create
Creates a TCP socket.
DOCTODO: serp
Parameters:
bindaddr - Address to bind the socket to.
Returns:
On success it returns an handle to the socket. On failure it returns NETSOCKET_INVALID.
*/
NETSOCKET net_tcp_create(const NETADDR *a);
/*
Function: net_tcp_set_non_blocking
DOCTODO: serp
*/
int net_tcp_set_non_blocking(NETSOCKET sock);
/*
Function: net_tcp_set_non_blocking
DOCTODO: serp
*/
int net_tcp_set_blocking(NETSOCKET sock);
/*
Function: net_tcp_listen
DOCTODO: serp
Makes the socket start listening for new connections.
Parameters:
sock - Socket to start listen to.
backlog - Size of the queue of incomming connections to keep.
Returns:
Returns 0 on success.
*/
int net_tcp_listen(NETSOCKET sock, int backlog);
/*
Function: net_tcp_accept
Polls a listning socket for a new connection.
Parameters:
sock - Listning socket to poll.
new_sock - Pointer to a socket to fill in with the new socket.
addr - Pointer to an address that will be filled in the remote address (optional, can be NULL).
DOCTODO: serp
Returns:
Returns a non-negative integer on success. Negative integer on failure.
*/
int net_tcp_accept(NETSOCKET sock, NETSOCKET *new_sock, NETADDR *a);
int net_tcp_accept(NETSOCKET sock, NETSOCKET *new_sock, NETADDR *addr);
/*
Function: net_tcp_connect
DOCTODO: serp
*/
int net_tcp_connect(NETSOCKET sock, const NETADDR *a);
Connects one socket to another.
Parameters:
sock - Socket to connect.
addr - Address to connect to.
/*
Function: net_tcp_connect_non_blocking
DOCTODO: serp
Returns:
Returns 0 on success.
*/
int net_tcp_connect_non_blocking(NETSOCKET sock, const NETADDR *a);
int net_tcp_connect(NETSOCKET sock, const NETADDR *addr);
/*
Function: net_tcp_send
Sends data to a TCP stream.
DOCTODO: serp
Parameters:
sock - Socket to send data to.
data - Pointer to the data to send.
size - Size of the data to send.
Returns:
Number of bytes sent. Negative value on failure.
*/
int net_tcp_send(NETSOCKET sock, const void *data, int size);
/*
Function: net_tcp_recv
DOCTODO: serp
Recvives data from a TCP stream.
Parameters:
sock - Socket to recvive data from.
data - Pointer to a buffer to write the data to
max_size - Maximum of data to write to the buffer.
Returns:
Number of bytes recvived. Negative value on failure.
*/
int net_tcp_recv(NETSOCKET sock, void *data, int maxsize);
/*
Function: net_tcp_close
Closes a TCP socket.
DOCTODO: serp
Parameters:
sock - Socket to close.
Returns:
Returns 0 on success. Negative value on failure.
*/
int net_tcp_close(NETSOCKET sock);
/*
Function: net_errno
DOCTODO: serp
*/
int net_errno();
/*
Function: net_would_block
DOCTODO: serp
*/
int net_would_block();
/*
Function: net_init
DOCTODO: serp
*/
int net_init();
/* Group: Strings */
/*
@ -676,7 +718,7 @@ void str_sanitize(char *str);
b - String to compare.
Returns:
<0 - String g a is lesser then string b
<0 - String a is lesser then string b
0 - String a is equal to string b
>0 - String a is greater then string b
@ -720,6 +762,7 @@ const char *str_find_nocase(const char *haystack, const char *needle);
*/
void str_hex(char *dst, int dst_size, const void *data, int data_size);
/* Group: Filesystem */
/*
Function: fs_listdir
@ -731,7 +774,7 @@ void str_hex(char *dst, int dst_size, const void *data, int data_size);
user - Pointer to give to the callback
Returns:
DOCTODO
Always returns 0.
*/
typedef void (*fs_listdir_callback)(const char *name, int is_dir, void *user);
int fs_listdir(const char *dir, fs_listdir_callback cb, void *user);
@ -744,7 +787,7 @@ int fs_listdir(const char *dir, fs_listdir_callback cb, void *user);
path - Directory to create
Returns:
DOCTODO
Returns 0 on success. Negative value on failure.
Remarks:
Does not create several directories if needed. "a/b/c" will result
@ -757,10 +800,11 @@ int fs_makedir(const char *path);
Fetches per user configuration directory.
Returns:
DOCTODO
Returns 0 on success. Negative value on failure.
Remarks:
- Returns ~/.appname on UNIX based systems
- Returns ~/Library/Applications Support/appname on Mac OS X
- Returns %APPDATA%/Appname on Windows based systems
*/
int fs_storage_path(const char *appname, char *path, int max);
@ -770,8 +814,42 @@ int fs_storage_path(const char *appname, char *path, int max);
Group: Undocumented
*/
int net_addr_comp(const NETADDR *a, const NETADDR *b);
int net_addr_str(const NETADDR *addr, char *string, int max_length);
/*
Function: net_tcp_connect_non_blocking
DOCTODO: serp
*/
int net_tcp_connect_non_blocking(NETSOCKET sock, const NETADDR *a);
/*
Function: net_tcp_set_non_blocking
DOCTODO: serp
*/
int net_tcp_set_non_blocking(NETSOCKET sock);
/*
Function: net_tcp_set_non_blocking
DOCTODO: serp
*/
int net_tcp_set_blocking(NETSOCKET sock);
/*
Function: net_errno
DOCTODO: serp
*/
int net_errno();
/*
Function: net_would_block
DOCTODO: serp
*/
int net_would_block();
int net_socket_read_wait(NETSOCKET sock, int time);
void mem_debug_dump();

View file

@ -9,6 +9,28 @@ inline int cmask_one(int cid) { return 1<<cid; }
inline int cmask_all_except_one(int cid) { return 0x7fffffff^cmask_one(cid); }
inline bool cmask_is_set(int mask, int cid) { return (mask&cmask_one(cid)) != 0; }
/*
Tick
Game Context (GAMECONTEXT::tick)
Game World (GAMEWORLD::tick)
Reset world if requested (GAMEWORLD::reset)
All entities in the world (ENTITY::tick)
All entities in the world (ENTITY::tick_defered)
Remove entities marked for deletion (GAMEWORLD::remove_entities)
Game Controller (GAMECONTROLLER::tick)
All players (PLAYER::tick)
Snap
Game Context (GAMECONTEXT::snap)
Game World (GAMEWORLD::snap)
All entities in the world (ENTITY::snap)
Game Controller (GAMECONTROLLER::snap)
Events handler (EVENT_HANDLER::snap)
All players (PLAYER::snap)
*/
//
@ -78,7 +100,7 @@ public:
virtual void tick() {}
/*
Function: tick
Function: tick_defered
Called after all entities tick() function has been called.
*/
virtual void tick_defered() {}
@ -143,6 +165,7 @@ public:
/*
Function: find_entities
Finds entities close to a position and returns them in a list.
Arguments:
pos - Position.
radius - How close the entities have to be.
@ -150,6 +173,7 @@ public:
to the entities.
max - Number of entities that fits into the ents array.
type - Type of the entities to find. -1 for all types.
Returns:
Number of entities found and added to the ents array.
*/
@ -158,12 +182,14 @@ public:
/*
Function: interserct_character
Finds the closest character that intersects the line.
Arguments:
pos0 - Start position
pos2 - End position
radius - How for from the line the character is allowed to be.
new_pos - Intersection position
notthis - Entity to ignore intersecting with
Returns:
Returns a pointer to the closest hit or NULL of there is no intersection.
*/
@ -172,10 +198,12 @@ public:
/*
Function: closest_character
Finds the closest character to a specific point.
Arguments:
pos - The center position.
radius - How far off the character is allowed to be
notthis - Entity to ignore
Returns:
Returns a pointer to the closest character or NULL if no character is close enough.
*/
@ -184,6 +212,7 @@ public:
/*
Function: insert_entity
Adds an entity to the world.
Arguments:
entity - Entity to add
*/
@ -192,6 +221,7 @@ public:
/*
Function: remove_entity
Removes an entity from the world.
Arguments:
entity - Entity to remove
*/
@ -200,6 +230,7 @@ public:
/*
Function: destroy_entity
Destroys an entity in the world.
Arguments:
entity - Entity to destroy
*/
@ -209,6 +240,7 @@ public:
Function: snap
Calls snap on all the entities in the world to create
the snapshot.
Arguments:
snapping_client - ID of the client which snapshot
is being created.
@ -271,9 +303,11 @@ public:
Function: on_entity
Called when the map is loaded to process an entity
in the map.
Arguments:
index - Entity index.
pos - Where the entity is located in the world.
Returns:
bool?
*/
@ -282,6 +316,7 @@ public:
/*
Function: on_character_spawn
Called when a character spawns into the game world.
Arguments:
chr - The character that was spawned.
*/
@ -290,6 +325,7 @@ public:
/*
Function: on_character_death
Called when a character in the world dies.
Arguments:
victim - The character that died.
killer - The player that killed it.

View file

@ -724,8 +724,8 @@ void GAMECONTEXT::tick()
world.core.tuning = tuning;
world.tick();
if(world.paused) // make sure that the game object always updates
controller->tick();
//if(world.paused) // make sure that the game object always updates
controller->tick();
for(int i = 0; i < MAX_CLIENTS; i++)
{
@ -737,8 +737,8 @@ void GAMECONTEXT::tick()
void GAMECONTEXT::snap(int client_id)
{
world.snap(client_id);
events.snap(client_id);
controller->snap(client_id);
events.snap(client_id);
for(int i = 0; i < MAX_CLIENTS; i++)
{