about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--docs/conf/Data/ClassHierarchy.ndbin772 -> 774 bytes
-rw-r--r--docs/conf/Data/ConfigFileInfo.ndbin26 -> 26 bytes
-rw-r--r--docs/conf/Data/FileInfo.nd296
-rw-r--r--docs/conf/Data/IndexInfo.ndbin192 -> 226 bytes
-rw-r--r--docs/conf/Data/PreviousMenuState.ndbin1291 -> 1462 bytes
-rw-r--r--docs/conf/Data/SymbolTable.ndbin51409 -> 41681 bytes
-rw-r--r--docs/conf/Menu.txt8
-rw-r--r--docs/output/files2/docs/client_time-txt.html4
-rw-r--r--docs/output/files2/docs/prediction-txt.html4
-rw-r--r--docs/output/files2/docs/server_op-txt.html4
-rw-r--r--docs/output/files2/docs/snapshots-txt.html4
-rw-r--r--docs/output/files2/e_if_client-h.html32
-rw-r--r--docs/output/files2/e_if_gfx-h.html54
-rw-r--r--docs/output/files2/e_if_inp-h.html4
-rw-r--r--docs/output/files2/e_if_modc-h.html4
-rw-r--r--docs/output/files2/e_if_mods-h.html4
-rw-r--r--docs/output/files2/e_if_msg-h.html4
-rw-r--r--docs/output/files2/e_if_other-h.html4
-rw-r--r--docs/output/files2/e_if_server-h.html8
-rw-r--r--docs/output/files2/e_if_snd-h.html4
-rw-r--r--docs/output/index.html2
-rw-r--r--docs/output/index/Classes.html6
-rw-r--r--docs/output/index/Constants.html4
-rw-r--r--docs/output/index/Functions.html12
-rw-r--r--docs/output/index/Functions2.html18
-rw-r--r--docs/output/index/Functions3.html20
-rw-r--r--docs/output/index/General.html14
-rw-r--r--docs/output/index/General2.html10
-rw-r--r--docs/output/index/General3.html28
-rw-r--r--docs/output/index/General4.html24
-rw-r--r--docs/output/index/Variables.html6
-rw-r--r--docs/output/javascript/searchdata.js34
-rw-r--r--docs/output/search/ClassesE.html2
-rw-r--r--docs/output/search/ClassesG.html2
-rw-r--r--docs/output/search/FunctionsC.html2
-rw-r--r--docs/output/search/FunctionsD.html2
-rw-r--r--docs/output/search/FunctionsF.html2
-rw-r--r--docs/output/search/FunctionsG.html2
-rw-r--r--docs/output/search/FunctionsI.html2
-rw-r--r--docs/output/search/FunctionsM.html2
-rw-r--r--docs/output/search/FunctionsO.html2
-rw-r--r--docs/output/search/FunctionsR.html2
-rw-r--r--docs/output/search/FunctionsS.html2
-rw-r--r--docs/output/search/FunctionsT.html2
-rw-r--r--docs/output/search/GeneralC.html2
-rw-r--r--docs/output/search/GeneralD.html2
-rw-r--r--docs/output/search/GeneralE.html2
-rw-r--r--docs/output/search/GeneralF.html2
-rw-r--r--docs/output/search/GeneralG.html2
-rw-r--r--docs/output/search/GeneralH.html2
-rw-r--r--docs/output/search/GeneralI.html2
-rw-r--r--docs/output/search/GeneralL.html2
-rw-r--r--docs/output/search/GeneralM.html2
-rw-r--r--docs/output/search/GeneralN.html2
-rw-r--r--docs/output/search/GeneralO.html2
-rw-r--r--docs/output/search/GeneralP.html2
-rw-r--r--docs/output/search/GeneralR.html2
-rw-r--r--docs/output/search/GeneralS.html2
-rw-r--r--docs/output/search/GeneralT.html2
-rw-r--r--docs/output/search/GeneralV.html2
-rw-r--r--docs/output/search/VariablesP.html2
-rw-r--r--src/engine/client/ec_client.c246
-rw-r--r--src/engine/e_demorec.c354
-rw-r--r--src/engine/e_demorec.h63
-rw-r--r--src/engine/e_engine.c3
-rw-r--r--src/engine/e_if_client.h21
-rw-r--r--src/engine/e_if_modc.h2
-rw-r--r--src/engine/e_if_other.h6
-rw-r--r--src/engine/e_if_server.h2
-rw-r--r--src/engine/server/es_server.c90
-rw-r--r--src/game/client/clienthooks.cpp1
-rw-r--r--src/game/client/component.hpp1
-rw-r--r--src/game/client/components/hud.cpp3
-rw-r--r--src/game/client/components/mapimages.cpp2
-rw-r--r--src/game/client/components/mapimages.hpp4
-rw-r--r--src/game/client/components/maplayers.cpp2
-rw-r--r--src/game/client/components/menus.cpp92
-rw-r--r--src/game/client/components/menus.hpp39
-rw-r--r--src/game/client/components/menus_browser.cpp4
-rw-r--r--src/game/client/components/menus_demo.cpp390
-rw-r--r--src/game/client/components/menus_ingame.cpp2
-rw-r--r--src/game/client/components/players.cpp4
-rw-r--r--src/game/client/gameclient.cpp90
-rw-r--r--src/game/client/gameclient.hpp5
-rw-r--r--src/game/server/entities/character.cpp2
-rw-r--r--src/game/server/entities/laser.cpp2
-rw-r--r--src/game/server/entities/projectile.cpp4
-rw-r--r--src/game/server/entity.cpp14
-rw-r--r--src/game/server/entity.hpp38
-rw-r--r--src/game/server/eventhandler.cpp4
-rw-r--r--src/game/server/gamecontext.cpp26
-rw-r--r--src/game/server/gamecontext.hpp2
-rw-r--r--src/game/server/gamecontroller.cpp15
93 files changed, 1824 insertions, 383 deletions
diff --git a/docs/conf/Data/ClassHierarchy.nd b/docs/conf/Data/ClassHierarchy.nd
index 94b7ace1..c1a71232 100644
--- a/docs/conf/Data/ClassHierarchy.nd
+++ b/docs/conf/Data/ClassHierarchy.nd
Binary files differdiff --git a/docs/conf/Data/ConfigFileInfo.nd b/docs/conf/Data/ConfigFileInfo.nd
index cdec66fb..c32f2955 100644
--- a/docs/conf/Data/ConfigFileInfo.nd
+++ b/docs/conf/Data/ConfigFileInfo.nd
Binary files differdiff --git a/docs/conf/Data/FileInfo.nd b/docs/conf/Data/FileInfo.nd
index 54b8834a..cc241e75 100644
--- a/docs/conf/Data/FileInfo.nd
+++ b/docs/conf/Data/FileInfo.nd
@@ -1,120 +1,180 @@
 1.4
 C/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
+/home/kma/code/teeworlds/trunk/src/engine/e_huffman.h	1222170110	1	/home/kma/code/teeworlds/trunk/src/engine/e_huffman.h
+/home/kma/code/teeworlds/trunk/src/game/generated/gs_data.hpp	1222683446	0	/home/kma/code/teeworlds/trunk/src/game/generated/gs_data.hpp
+/home/kma/code/teeworlds/trunk/src/game/client/ui.hpp	1220136086	0	/home/kma/code/teeworlds/trunk/src/game/client/ui.hpp
+/home/kma/code/teeworlds/trunk/src/engine/client/ec_srvbrowse.c	1222683496	0	/home/kma/code/teeworlds/trunk/src/engine/client/ec_srvbrowse.c
+/home/kma/code/teeworlds/trunk/src/game/editor/ed_editor.hpp	1220477125	0	/home/kma/code/teeworlds/trunk/src/game/editor/ed_editor.hpp
+/home/kma/code/teeworlds/trunk/src/engine/e_compression.c	1218717193	0	/home/kma/code/teeworlds/trunk/src/engine/e_compression.c
+/home/kma/code/teeworlds/trunk/src/game/client/components/effects.hpp	1219856603	0	/home/kma/code/teeworlds/trunk/src/game/client/components/effects.hpp
+/home/kma/code/teeworlds/trunk/src/game/editor/array.hpp	1213274598	0	/home/kma/code/teeworlds/trunk/src/game/editor/array.hpp
+/home/kma/code/teeworlds/trunk/src/engine/e_if_msg.h	1209633421	1	Messaging
+/home/kma/code/teeworlds/trunk/src/game/server/gamemodes/dm.cpp	1220222024	0	/home/kma/code/teeworlds/trunk/src/game/server/gamemodes/dm.cpp
+/home/kma/code/teeworlds/trunk/src/game/server/gamecontext.cpp	1222365211	0	/home/kma/code/teeworlds/trunk/src/game/server/gamecontext.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/hud.hpp	1222354048	0	/home/kma/code/teeworlds/trunk/src/game/client/components/hud.hpp
+/home/kma/code/teeworlds/trunk/src/engine/e_packer.h	1209633421	0	/home/kma/code/teeworlds/trunk/src/engine/e_packer.h
+/home/kma/code/teeworlds/trunk/src/game/client/components/items.cpp	1220136174	0	/home/kma/code/teeworlds/trunk/src/game/client/components/items.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/camera.hpp	1219845973	0	/home/kma/code/teeworlds/trunk/src/game/client/components/camera.hpp
+/home/kma/code/teeworlds/trunk/src/game/editor/ed_io.cpp	1212341007	0	/home/kma/code/teeworlds/trunk/src/game/editor/ed_io.cpp
+/home/kma/code/teeworlds/trunk/src/engine/client/ec_font.h	1209633421	0	/home/kma/code/teeworlds/trunk/src/engine/client/ec_font.h
+/home/kma/code/teeworlds/trunk/src/engine/e_msg.c	1212964729	0	/home/kma/code/teeworlds/trunk/src/engine/e_msg.c
+/home/kma/code/teeworlds/trunk/src/game/client/components/menus_ingame.cpp	1222692848	0	/home/kma/code/teeworlds/trunk/src/game/client/components/menus_ingame.cpp
+/home/kma/code/teeworlds/trunk/src/engine/e_compression.h	1209633421	0	/home/kma/code/teeworlds/trunk/src/engine/e_compression.h
+/home/kma/code/teeworlds/trunk/src/game/client/components/flow.cpp	1219782150	0	/home/kma/code/teeworlds/trunk/src/game/client/components/flow.cpp
+/home/kma/code/teeworlds/trunk/src/engine/e_engine.h	1220813504	0	/home/kma/code/teeworlds/trunk/src/engine/e_engine.h
+/home/kma/code/teeworlds/trunk/src/game/generated/gc_data.cpp	1222683449	0	/home/kma/code/teeworlds/trunk/src/game/generated/gc_data.cpp
+/home/kma/code/teeworlds/trunk/src/engine/docs/client_time.txt	1209633420	1	Time on the client
+/home/kma/code/teeworlds/trunk/src/game/client/animstate.cpp	1219785741	0	/home/kma/code/teeworlds/trunk/src/game/client/animstate.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/damageind.hpp	1219841173	0	/home/kma/code/teeworlds/trunk/src/game/client/components/damageind.hpp
+/home/kma/code/teeworlds/trunk/src/game/server/entities/laser.hpp	1218740976	0	/home/kma/code/teeworlds/trunk/src/game/server/entities/laser.hpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/nameplates.hpp	1220569205	0	/home/kma/code/teeworlds/trunk/src/game/client/components/nameplates.hpp
+/home/kma/code/teeworlds/trunk/src/game/server/gamemodes/tdm.cpp	1220222010	0	/home/kma/code/teeworlds/trunk/src/game/server/gamemodes/tdm.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/broadcast.hpp	1219841173	0	/home/kma/code/teeworlds/trunk/src/game/client/components/broadcast.hpp
+/home/kma/code/teeworlds/trunk/src/engine/e_if_snd.h	1221327616	1	Sound
+/home/kma/code/teeworlds/trunk/src/game/client/components/menus.cpp	1222640846	0	/home/kma/code/teeworlds/trunk/src/game/client/components/menus.cpp
+/home/kma/code/teeworlds/trunk/src/game/server/gamemodes/ctf.hpp	1219777811	0	/home/kma/code/teeworlds/trunk/src/game/server/gamemodes/ctf.hpp
+/home/kma/code/teeworlds/trunk/src/game/generated/gs_data.cpp	1222683446	0	/home/kma/code/teeworlds/trunk/src/game/generated/gs_data.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/motd.hpp	1220137292	0	/home/kma/code/teeworlds/trunk/src/game/client/components/motd.hpp
+/home/kma/code/teeworlds/trunk/src/engine/e_if_other.h	1222181143	1	Engine Interface
+/home/kma/code/teeworlds/trunk/src/game/editor/ed_layer_game.cpp	1209633421	0	/home/kma/code/teeworlds/trunk/src/game/editor/ed_layer_game.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/mapimages.cpp	1220253155	0	/home/kma/code/teeworlds/trunk/src/game/client/components/mapimages.cpp
+/home/kma/code/teeworlds/trunk/src/engine/e_keynames.c	1222353741	0	/home/kma/code/teeworlds/trunk/src/engine/e_keynames.c
+/home/kma/code/teeworlds/trunk/src/game/server/gamecontroller.cpp	1222194081	0	/home/kma/code/teeworlds/trunk/src/game/server/gamecontroller.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/ui.cpp	1220136096	0	/home/kma/code/teeworlds/trunk/src/game/client/ui.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/nameplates.cpp	1222164899	0	/home/kma/code/teeworlds/trunk/src/game/client/components/nameplates.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/broadcast.cpp	1220135264	0	/home/kma/code/teeworlds/trunk/src/game/client/components/broadcast.cpp
+/home/kma/code/teeworlds/trunk/src/engine/e_map.c	1218717325	0	/home/kma/code/teeworlds/trunk/src/engine/e_map.c
+/home/kma/code/teeworlds/trunk/src/game/mapitems.hpp	1222183329	0	/home/kma/code/teeworlds/trunk/src/game/mapitems.hpp
+/home/kma/code/teeworlds/trunk/src/game/gamecore.cpp	1222186019	0	/home/kma/code/teeworlds/trunk/src/game/gamecore.cpp
+/home/kma/code/teeworlds/trunk/src/game/server/hooks.cpp	1222682379	0	/home/kma/code/teeworlds/trunk/src/game/server/hooks.cpp
+/home/kma/code/teeworlds/trunk/src/game/layers.hpp	1218967138	0	/home/kma/code/teeworlds/trunk/src/game/layers.hpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/killmessages.hpp	1219841185	0	/home/kma/code/teeworlds/trunk/src/game/client/components/killmessages.hpp
+/home/kma/code/teeworlds/trunk/src/engine/e_console.c	1222181217	0	/home/kma/code/teeworlds/trunk/src/engine/e_console.c
+/home/kma/code/teeworlds/trunk/src/game/client/components/sounds.cpp	1222029308	0	/home/kma/code/teeworlds/trunk/src/game/client/components/sounds.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/emoticon.cpp	1220569076	0	/home/kma/code/teeworlds/trunk/src/game/client/components/emoticon.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/skins.cpp	1219618613	0	/home/kma/code/teeworlds/trunk/src/game/client/components/skins.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/effects.cpp	1220135224	0	/home/kma/code/teeworlds/trunk/src/game/client/components/effects.cpp
+/home/kma/code/teeworlds/trunk/src/game/server/player.hpp	1222356463	0	/home/kma/code/teeworlds/trunk/src/game/server/player.hpp
+/home/kma/code/teeworlds/trunk/src/game/client/lineinput.hpp	1220087940	0	/home/kma/code/teeworlds/trunk/src/game/client/lineinput.hpp
+/home/kma/code/teeworlds/trunk/src/engine/server/es_server.c	1222638818	0	/home/kma/code/teeworlds/trunk/src/engine/server/es_server.c
+/home/kma/code/teeworlds/trunk/src/game/server/entities/projectile.hpp	1218741010	0	/home/kma/code/teeworlds/trunk/src/game/server/entities/projectile.hpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/debughud.cpp	1220135200	0	/home/kma/code/teeworlds/trunk/src/game/client/components/debughud.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/items.hpp	1219841173	0	/home/kma/code/teeworlds/trunk/src/game/client/components/items.hpp
+/home/kma/code/teeworlds/trunk/src/game/server/player.cpp	1222273690	0	/home/kma/code/teeworlds/trunk/src/game/server/player.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/sounds.hpp	1221328048	0	/home/kma/code/teeworlds/trunk/src/game/client/components/sounds.hpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/maplist.hpp	1222691020	0	/home/kma/code/teeworlds/trunk/src/game/client/components/maplist.hpp
+/home/kma/code/teeworlds/trunk/src/engine/e_snapshot.c	1214463651	0	/home/kma/code/teeworlds/trunk/src/engine/e_snapshot.c
+/home/kma/code/teeworlds/trunk/src/game/client/components/binds.hpp	1222354232	0	/home/kma/code/teeworlds/trunk/src/game/client/components/binds.hpp
+/home/kma/code/teeworlds/trunk/src/game/server/entities/character.cpp	1222356921	0	/home/kma/code/teeworlds/trunk/src/game/server/entities/character.cpp
+/home/kma/code/teeworlds/trunk/src/game/server/entities/laser.cpp	1222190271	0	/home/kma/code/teeworlds/trunk/src/game/server/entities/laser.cpp
+/home/kma/code/teeworlds/trunk/src/engine/docs/snapshots.txt	1218450372	1	Snapshots
+/home/kma/code/teeworlds/trunk/src/game/generated/gc_data.hpp	1222683447	0	/home/kma/code/teeworlds/trunk/src/game/generated/gc_data.hpp
+/home/kma/code/teeworlds/trunk/src/game/generated/nethash.c	1222161195	0	/home/kma/code/teeworlds/trunk/src/game/generated/nethash.c
+/home/kma/code/teeworlds/trunk/src/engine/e_ringbuffer.h	1219871251	0	/home/kma/code/teeworlds/trunk/src/engine/e_ringbuffer.h
+/home/kma/code/teeworlds/trunk/src/game/client/gameclient.cpp	1222692136	0	/home/kma/code/teeworlds/trunk/src/game/client/gameclient.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/killmessages.cpp	1220198084	0	/home/kma/code/teeworlds/trunk/src/game/client/components/killmessages.cpp
+/home/kma/code/teeworlds/trunk/src/game/server/entity.cpp	1218743197	0	/home/kma/code/teeworlds/trunk/src/game/server/entity.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/controls.cpp	1221290669	0	/home/kma/code/teeworlds/trunk/src/game/client/components/controls.cpp
+/home/kma/code/teeworlds/trunk/src/engine/e_if_gfx.h	1220477125	1	Graphics
+/home/kma/code/teeworlds/trunk/src/game/client/components/motd.cpp	1220135205	0	/home/kma/code/teeworlds/trunk/src/game/client/components/motd.cpp
+/home/kma/code/teeworlds/trunk/src/engine/e_protocol.h	1220799767	0	/home/kma/code/teeworlds/trunk/src/engine/e_protocol.h
+/home/kma/code/teeworlds/trunk/src/game/client/gameclient.hpp	1222691935	0	/home/kma/code/teeworlds/trunk/src/game/client/gameclient.hpp
+/home/kma/code/teeworlds/trunk/src/engine/e_datafile.c	1218717112	0	/home/kma/code/teeworlds/trunk/src/engine/e_datafile.c
+/home/kma/code/teeworlds/trunk/src/engine/e_huffman.c	1222170780	0	/home/kma/code/teeworlds/trunk/src/engine/e_huffman.c
+/home/kma/code/teeworlds/trunk/src/engine/docs/server_op.txt	1218450372	1	Server Operation
+/home/kma/code/teeworlds/trunk/src/game/editor/ed_editor.cpp	1222182161	0	/home/kma/code/teeworlds/trunk/src/game/editor/ed_editor.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/gc_render.cpp	1220295093	0	/home/kma/code/teeworlds/trunk/src/game/client/gc_render.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/maplayers.hpp	1219841173	0	/home/kma/code/teeworlds/trunk/src/game/client/components/maplayers.hpp
+/home/kma/code/teeworlds/trunk/src/engine/e_if_client.h	1222031069	1	Client Interface
+/home/kma/code/teeworlds/trunk/src/engine/e_keys.h	1222353741	0	/home/kma/code/teeworlds/trunk/src/engine/e_keys.h
+/home/kma/code/teeworlds/trunk/src/game/client/components/console.hpp	1220569113	0	/home/kma/code/teeworlds/trunk/src/game/client/components/console.hpp
+/home/kma/code/teeworlds/trunk/src/engine/e_engine.c	1220822064	0	/home/kma/code/teeworlds/trunk/src/engine/e_engine.c
+/home/kma/code/teeworlds/trunk/src/engine/e_if_modc.h	1209633421	1	Client Hooks
+/home/kma/code/teeworlds/trunk/src/game/client/components/particles.cpp	1220138535	0	/home/kma/code/teeworlds/trunk/src/game/client/components/particles.cpp
+/home/kma/code/teeworlds/trunk/src/engine/e_ringbuffer.c	1218717337	0	/home/kma/code/teeworlds/trunk/src/engine/e_ringbuffer.c
+/home/kma/code/teeworlds/trunk/src/game/server/gamemodes/dm.hpp	1220222050	0	/home/kma/code/teeworlds/trunk/src/game/server/gamemodes/dm.hpp
+/home/kma/code/teeworlds/trunk/src/engine/e_server_interface.h	1209633421	0	/home/kma/code/teeworlds/trunk/src/engine/e_server_interface.h
+/home/kma/code/teeworlds/trunk/src/game/client/components/binds.cpp	1222354494	0	/home/kma/code/teeworlds/trunk/src/game/client/components/binds.cpp
+/home/kma/code/teeworlds/trunk/src/engine/e_packer.c	1218717159	0	/home/kma/code/teeworlds/trunk/src/engine/e_packer.c
+/home/kma/code/teeworlds/trunk/src/game/client/components/particles.hpp	1219845940	0	/home/kma/code/teeworlds/trunk/src/game/client/components/particles.hpp
+/home/kma/code/teeworlds/trunk/src/engine/e_config.h	1209633421	0	/home/kma/code/teeworlds/trunk/src/engine/e_config.h
+/home/kma/code/teeworlds/trunk/src/game/tuning.hpp	1218966967	0	/home/kma/code/teeworlds/trunk/src/game/tuning.hpp
+/home/kma/code/teeworlds/trunk/src/game/server/gamecontext.hpp	1222356971	0	/home/kma/code/teeworlds/trunk/src/game/server/gamecontext.hpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/players.cpp	1222347355	0	/home/kma/code/teeworlds/trunk/src/game/client/components/players.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/controls.hpp	1221290643	0	/home/kma/code/teeworlds/trunk/src/game/client/components/controls.hpp
+/home/kma/code/teeworlds/trunk/src/engine/e_jobs.h	1220813546	0	/home/kma/code/teeworlds/trunk/src/engine/e_jobs.h
+/home/kma/code/teeworlds/trunk/src/engine/e_memheap.c	1218717128	0	/home/kma/code/teeworlds/trunk/src/engine/e_memheap.c
+/home/kma/code/teeworlds/trunk/src/game/client/lineinput.cpp	1219040530	0	/home/kma/code/teeworlds/trunk/src/game/client/lineinput.cpp
+/home/kma/code/teeworlds/trunk/src/game/generated/createdir.txt	1209633421	0	/home/kma/code/teeworlds/trunk/src/game/generated/createdir.txt
+/home/kma/code/teeworlds/trunk/src/game/client/components/maplist.cpp	1222692119	0	/home/kma/code/teeworlds/trunk/src/game/client/components/maplist.cpp
+/home/kma/code/teeworlds/trunk/src/game/version.hpp	1218966879	0	/home/kma/code/teeworlds/trunk/src/game/version.hpp
+/home/kma/code/teeworlds/trunk/src/game/collision.hpp	1222185632	0	/home/kma/code/teeworlds/trunk/src/game/collision.hpp
+/home/kma/code/teeworlds/trunk/src/engine/client/ec_client.c	1222683366	0	/home/kma/code/teeworlds/trunk/src/engine/client/ec_client.c
+/home/kma/code/teeworlds/trunk/src/game/generated/g_protocol.cpp	1222683446	0	/home/kma/code/teeworlds/trunk/src/game/generated/g_protocol.cpp
+/home/kma/code/teeworlds/trunk/src/engine/e_datafile.h	1209633421	0	/home/kma/code/teeworlds/trunk/src/engine/e_datafile.h
+/home/kma/code/teeworlds/trunk/src/engine/e_linereader.h	1218717511	0	/home/kma/code/teeworlds/trunk/src/engine/e_linereader.h
+/home/kma/code/teeworlds/trunk/src/game/server/entities/pickup.cpp	1220570254	0	/home/kma/code/teeworlds/trunk/src/game/server/entities/pickup.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/maplayers.cpp	1220253273	0	/home/kma/code/teeworlds/trunk/src/game/client/components/maplayers.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/hud.cpp	1222355982	0	/home/kma/code/teeworlds/trunk/src/game/client/components/hud.cpp
+/home/kma/code/teeworlds/trunk/src/game/server/gamemodes/tdm.hpp	1218741462	0	/home/kma/code/teeworlds/trunk/src/game/server/gamemodes/tdm.hpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/menus_browser.cpp	1222640967	0	/home/kma/code/teeworlds/trunk/src/game/client/components/menus_browser.cpp
+/home/kma/code/teeworlds/trunk/src/game/collision.cpp	1222185936	0	/home/kma/code/teeworlds/trunk/src/game/collision.cpp
+/home/kma/code/teeworlds/trunk/src/engine/e_snapshot.h	1218717534	0	/home/kma/code/teeworlds/trunk/src/engine/e_snapshot.h
+/home/kma/code/teeworlds/trunk/src/engine/e_client_interface.h	1220135564	0	/home/kma/code/teeworlds/trunk/src/engine/e_client_interface.h
+/home/kma/code/teeworlds/trunk/src/game/editor/ed_layer_tiles.cpp	1220827108	0	/home/kma/code/teeworlds/trunk/src/game/editor/ed_layer_tiles.cpp
+/home/kma/code/teeworlds/trunk/src/engine/e_network.h	1220214060	0	/home/kma/code/teeworlds/trunk/src/engine/e_network.h
+/home/kma/code/teeworlds/trunk/src/game/client/components/emoticon.hpp	1220569077	0	/home/kma/code/teeworlds/trunk/src/game/client/components/emoticon.hpp
+/home/kma/code/teeworlds/trunk/src/engine/e_config.c	1222181231	0	/home/kma/code/teeworlds/trunk/src/engine/e_config.c
+/home/kma/code/teeworlds/trunk/src/game/client/components/menus.hpp	1222681494	0	/home/kma/code/teeworlds/trunk/src/game/client/components/menus.hpp
+/home/kma/code/teeworlds/trunk/src/game/server/gamemodes/ctf.cpp	1222190258	0	/home/kma/code/teeworlds/trunk/src/game/server/gamemodes/ctf.cpp
+/home/kma/code/teeworlds/trunk/src/engine/e_config_variables.h	1222181173	0	/home/kma/code/teeworlds/trunk/src/engine/e_config_variables.h
+/home/kma/code/teeworlds/trunk/src/engine/docs/prediction.txt	1209633420	1	Prediction
+/home/kma/code/teeworlds/trunk/src/game/client/components/voting.hpp	1222692628	0	/home/kma/code/teeworlds/trunk/src/game/client/components/voting.hpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/camera.cpp	1221209283	0	/home/kma/code/teeworlds/trunk/src/game/client/components/camera.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/damageind.cpp	1220136328	0	/home/kma/code/teeworlds/trunk/src/game/client/components/damageind.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/chat.hpp	1220569130	0	/home/kma/code/teeworlds/trunk/src/game/client/components/chat.hpp
+/home/kma/code/teeworlds/trunk/src/game/editor/ed_popups.cpp	1209633421	0	/home/kma/code/teeworlds/trunk/src/game/editor/ed_popups.cpp
+/home/kma/code/teeworlds/trunk/src/engine/client/ec_font.c	1218724640	0	/home/kma/code/teeworlds/trunk/src/engine/client/ec_font.c
+/home/kma/code/teeworlds/trunk/src/game/client/component.hpp	1220568968	0	/home/kma/code/teeworlds/trunk/src/game/client/component.hpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/voting.cpp	1222692648	0	/home/kma/code/teeworlds/trunk/src/game/client/components/voting.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/debughud.hpp	1219855509	0	/home/kma/code/teeworlds/trunk/src/game/client/components/debughud.hpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/skins.hpp	1219841173	0	/home/kma/code/teeworlds/trunk/src/game/client/components/skins.hpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/scoreboard.hpp	1220569089	0	/home/kma/code/teeworlds/trunk/src/game/client/components/scoreboard.hpp
+/home/kma/code/teeworlds/trunk/src/engine/e_common_interface.h	1209633421	0	/home/kma/code/teeworlds/trunk/src/engine/e_common_interface.h
+/home/kma/code/teeworlds/trunk/src/engine/e_if_mods.h	1209633421	1	Server Hooks
+/home/kma/code/teeworlds/trunk/src/game/client/components/scoreboard.cpp	1220827108	0	/home/kma/code/teeworlds/trunk/src/game/client/components/scoreboard.cpp
+/home/kma/code/teeworlds/trunk/src/game/server/gameworld.cpp	1220827108	0	/home/kma/code/teeworlds/trunk/src/game/server/gameworld.cpp
+/home/kma/code/teeworlds/trunk/src/game/server/eventhandler.cpp	1222190459	0	/home/kma/code/teeworlds/trunk/src/game/server/eventhandler.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/chat.cpp	1220827108	0	/home/kma/code/teeworlds/trunk/src/game/client/components/chat.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/gc_render_map.cpp	1220135308	0	/home/kma/code/teeworlds/trunk/src/game/client/gc_render_map.cpp
+/home/kma/code/teeworlds/trunk/src/game/server/gameworld.hpp	1218967107	1	Game World
+/home/kma/code/teeworlds/trunk/src/game/gamecore.hpp	1222185988	0	/home/kma/code/teeworlds/trunk/src/game/gamecore.hpp
+/home/kma/code/teeworlds/trunk/src/engine/client/ec_inp.c	1218724618	0	/home/kma/code/teeworlds/trunk/src/engine/client/ec_inp.c
+/home/kma/code/teeworlds/trunk/src/engine/client/ec_snd.c	1222029620	0	/home/kma/code/teeworlds/trunk/src/engine/client/ec_snd.c
+/home/kma/code/teeworlds/trunk/src/engine/e_if_inp.h	1209633421	1	Input
+/home/kma/code/teeworlds/trunk/src/engine/e_jobs.c	1220818102	0	/home/kma/code/teeworlds/trunk/src/engine/e_jobs.c
+/home/kma/code/teeworlds/trunk/src/game/client/components/menus_settings.cpp	1222353486	0	/home/kma/code/teeworlds/trunk/src/game/client/components/menus_settings.cpp
+/home/kma/code/teeworlds/trunk/src/engine/client/ec_gfx.c	1220477125	0	/home/kma/code/teeworlds/trunk/src/engine/client/ec_gfx.c
+/home/kma/code/teeworlds/trunk/src/game/server/entities/character.hpp	1222203546	0	/home/kma/code/teeworlds/trunk/src/game/server/entities/character.hpp
+/home/kma/code/teeworlds/trunk/src/game/server/eventhandler.hpp	1218742466	0	/home/kma/code/teeworlds/trunk/src/game/server/eventhandler.hpp
+/home/kma/code/teeworlds/trunk/src/game/client/clienthooks.cpp	1220568950	0	/home/kma/code/teeworlds/trunk/src/game/client/clienthooks.cpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/console.cpp	1220569111	0	/home/kma/code/teeworlds/trunk/src/game/client/components/console.cpp
+/home/kma/code/teeworlds/trunk/src/game/variables.hpp	1222682334	0	/home/kma/code/teeworlds/trunk/src/game/variables.hpp
+/home/kma/code/teeworlds/trunk/src/engine/e_linereader.c	1209633421	0	/home/kma/code/teeworlds/trunk/src/engine/e_linereader.c
+/home/kma/code/teeworlds/trunk/src/engine/e_memheap.h	1209633421	0	/home/kma/code/teeworlds/trunk/src/engine/e_memheap.h
+/home/kma/code/teeworlds/trunk/src/engine/e_console.h	1219858821	0	/home/kma/code/teeworlds/trunk/src/engine/e_console.h
+/home/kma/code/teeworlds/trunk/src/engine/e_network.c	1222251355	0	/home/kma/code/teeworlds/trunk/src/engine/e_network.c
+/home/kma/code/teeworlds/trunk/src/game/server/gamecontroller.hpp	1220827108	1	Game Controller
+/home/kma/code/teeworlds/trunk/src/game/layers.cpp	1218967120	0	/home/kma/code/teeworlds/trunk/src/game/layers.cpp
+/home/kma/code/teeworlds/trunk/src/engine/e_if_server.h	1220195032	1	Server Interface
+/home/kma/code/teeworlds/trunk/src/game/client/animstate.hpp	1219785206	0	/home/kma/code/teeworlds/trunk/src/game/client/animstate.hpp
+/home/kma/code/teeworlds/trunk/src/game/server/entities/projectile.cpp	1222190276	0	/home/kma/code/teeworlds/trunk/src/game/server/entities/projectile.cpp
+/home/kma/code/teeworlds/trunk/src/game/editor/ed_layer_quads.cpp	1218738227	0	/home/kma/code/teeworlds/trunk/src/game/editor/ed_layer_quads.cpp
+/home/kma/code/teeworlds/trunk/src/game/server/entities/pickup.hpp	1218740990	0	/home/kma/code/teeworlds/trunk/src/game/server/entities/pickup.hpp
+/home/kma/code/teeworlds/trunk/src/game/server/entity.hpp	1222252624	1	Entity
+/home/kma/code/teeworlds/trunk/src/game/generated/g_protocol.hpp	1222683446	0	/home/kma/code/teeworlds/trunk/src/game/generated/g_protocol.hpp
+/home/kma/code/teeworlds/trunk/src/game/client/gc_render.hpp	1222182049	0	/home/kma/code/teeworlds/trunk/src/game/client/gc_render.hpp
+/home/kma/code/teeworlds/trunk/src/engine/server/es_register.c	1218717909	0	/home/kma/code/teeworlds/trunk/src/engine/server/es_register.c
+/home/kma/code/teeworlds/trunk/src/game/client/components/flow.hpp	1219841173	0	/home/kma/code/teeworlds/trunk/src/game/client/components/flow.hpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/mapimages.hpp	1220253106	0	/home/kma/code/teeworlds/trunk/src/game/client/components/mapimages.hpp
+/home/kma/code/teeworlds/trunk/src/game/client/components/players.hpp	1219841173	0	/home/kma/code/teeworlds/trunk/src/game/client/components/players.hpp
diff --git a/docs/conf/Data/IndexInfo.nd b/docs/conf/Data/IndexInfo.nd
index e4459989..c175f4b5 100644
--- a/docs/conf/Data/IndexInfo.nd
+++ b/docs/conf/Data/IndexInfo.nd
Binary files differdiff --git a/docs/conf/Data/PreviousMenuState.nd b/docs/conf/Data/PreviousMenuState.nd
index 1fd599ce..4422ee5d 100644
--- a/docs/conf/Data/PreviousMenuState.nd
+++ b/docs/conf/Data/PreviousMenuState.nd
Binary files differdiff --git a/docs/conf/Data/SymbolTable.nd b/docs/conf/Data/SymbolTable.nd
index eb1b15ba..dbf8ec2e 100644
--- a/docs/conf/Data/SymbolTable.nd
+++ b/docs/conf/Data/SymbolTable.nd
Binary files differdiff --git a/docs/conf/Menu.txt b/docs/conf/Menu.txt
index b611b0d8..95aec568 100644
--- a/docs/conf/Menu.txt
+++ b/docs/conf/Menu.txt
@@ -50,8 +50,6 @@ Format: 1.4
 # --------------------------------------------------------------------------
 
 
-File: OS Abstraction  (/home/kma/code/teeworlds/trunk/src/engine/e_system.h)
-
 Group: Engine  {
 
    File: Messaging  (/home/kma/code/teeworlds/trunk/src/engine/e_if_msg.h)
@@ -70,6 +68,7 @@ Group: Engine  {
 
          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: e_huffman.h  (/home/kma/code/teeworlds/trunk/src/engine/e_huffman.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)
@@ -92,7 +91,9 @@ Group: Engine  {
 
 Group: Game  {
 
-   File: Entity  (/home/kma/code/teeworlds/trunk/src/game/server/gs_common.hpp)
+   File: Entity  (/home/kma/code/teeworlds/trunk/src/game/server/entity.hpp)
+   File: Game Controller  (/home/kma/code/teeworlds/trunk/src/game/server/gamecontroller.hpp)
+   File: Game World  (/home/kma/code/teeworlds/trunk/src/game/server/gameworld.hpp)
    }  # Group: Game
 
 Group: Index  {
@@ -102,6 +103,7 @@ Group: Index  {
    Constant Index: Constants
    Function Index: Functions
    Variable Index: Variables
+   File Index: Files
    }  # Group: Index
 
 
diff --git a/docs/output/files2/docs/client_time-txt.html b/docs/output/files2/docs/client_time-txt.html
index ff97b67e..e71da13d 100644
--- a/docs/output/files2/docs/client_time-txt.html
+++ b/docs/output/files2/docs/client_time-txt.html
@@ -19,9 +19,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <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"><!--
+<div id=Menu><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_huffman-h.html">e_huffman.h</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/entity-hpp.html">Entity</a></div></div><div class=MEntry><div class=MFile><a href="../../files/server/gamecontroller-hpp.html">Game Controller</a></div></div><div class=MEntry><div class=MFile><a href="../../files/server/gameworld-hpp.html">Game World</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 class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</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><!--
+--></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="Files">Files</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-->
 
 
diff --git a/docs/output/files2/docs/prediction-txt.html b/docs/output/files2/docs/prediction-txt.html
index 893064fa..c3c2592b 100644
--- a/docs/output/files2/docs/prediction-txt.html
+++ b/docs/output/files2/docs/prediction-txt.html
@@ -31,9 +31,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <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"><!--
+<div id=Menu><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_huffman-h.html">e_huffman.h</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/entity-hpp.html">Entity</a></div></div><div class=MEntry><div class=MFile><a href="../../files/server/gamecontroller-hpp.html">Game Controller</a></div></div><div class=MEntry><div class=MFile><a href="../../files/server/gameworld-hpp.html">Game World</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 class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</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><!--
+--></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="Files">Files</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-->
 
 
diff --git a/docs/output/files2/docs/server_op-txt.html b/docs/output/files2/docs/server_op-txt.html
index aa25fe67..71207d62 100644
--- a/docs/output/files2/docs/server_op-txt.html
+++ b/docs/output/files2/docs/server_op-txt.html
@@ -49,9 +49,9 @@ unload map</pre></blockquote></div></div></div>
 <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"><!--
+<div id=Menu><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_huffman-h.html">e_huffman.h</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/entity-hpp.html">Entity</a></div></div><div class=MEntry><div class=MFile><a href="../../files/server/gamecontroller-hpp.html">Game Controller</a></div></div><div class=MEntry><div class=MFile><a href="../../files/server/gameworld-hpp.html">Game World</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 class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</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><!--
+--></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="Files">Files</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-->
 
 
diff --git a/docs/output/files2/docs/snapshots-txt.html b/docs/output/files2/docs/snapshots-txt.html
index 9654118a..381dddf5 100644
--- a/docs/output/files2/docs/snapshots-txt.html
+++ b/docs/output/files2/docs/snapshots-txt.html
@@ -43,9 +43,9 @@ D = data bit</pre></blockquote><ul><li><b>Huffman</b>.&nbsp; The last step is to
 <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"><!--
+<div id=Menu><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_huffman-h.html">e_huffman.h</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/entity-hpp.html">Entity</a></div></div><div class=MEntry><div class=MFile><a href="../../files/server/gamecontroller-hpp.html">Game Controller</a></div></div><div class=MEntry><div class=MFile><a href="../../files/server/gameworld-hpp.html">Game World</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 class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</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><!--
+--></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="Files">Files</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-->
 
 
diff --git a/docs/output/files2/e_if_client-h.html b/docs/output/files2/e_if_client-h.html
index dae39f94..12ea51a6 100644
--- a/docs/output/files2/e_if_client-h.html
+++ b/docs/output/files2/e_if_client-h.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CSection"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="Client_Interface"></a>Client 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="#Client_Interface" >Client Interface</a></td><td class=SDescription></td></tr><tr class="SSection"><td class=SEntry><a href="#Constants" >Constants</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Constants" >Constants</a></td><td class=SDescription></td></tr><tr class="SConstant SIndent2 SMarked"><td class=SEntry><a href="#Client_States" >Client States</a></td><td class=SDescription></td></tr><tr class="SConstant SIndent2"><td class=SEntry><a href="#Image_Formats" >Image Formats</a></td><td class=SDescription></td></tr><tr class="SConstant SIndent2 SMarked"><td class=SEntry><a href="#Texture_Loading_Flags" >Texture Loading Flags</a></td><td class=SDescription></td></tr><tr class="SConstant SIndent2"><td class=SEntry><a href="#Server_Browser_Sorting" >Server Browser Sorting</a></td><td class=SDescription></td></tr><tr class="SSection"><td class=SEntry><a href="#Structures" >Structures</a></td><td class=SDescription></td></tr><tr class="SClass"><td class=SEntry><a href="#SERVER_INFO_PLAYER" >SERVER_INFO_PLAYER</a></td><td class=SDescription></td></tr><tr class="SClass"><td class=SEntry><a href="#SERVER_INFO" >SERVER_INFO</a></td><td class=SDescription></td></tr><tr class="SSection"><td class=SEntry><a href="#Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Time" >Time</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_tick" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">client_tick</a></td><td class=SDescription>Returns the tick of the current snapshot.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_intratick" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">client_intratick</a></td><td class=SDescription>Returns the current intratick.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_predtick" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">client_predtick</a></td><td class=SDescription>Returns the current predicted tick.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_predintratick" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">client_predintratick</a></td><td class=SDescription>Returns the current preticted intra tick.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_ticktime" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">client_ticktime</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_tickspeed" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">client_tickspeed</a></td><td class=SDescription>Returns how many ticks per second the client is doing.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_frametime" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">client_frametime</a></td><td class=SDescription>Returns how long time the last frame took to process.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_localtime" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">client_localtime</a></td><td class=SDescription>Returns the clients local time.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Server_Browser" >Server Browser</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_serverbrowse_refresh" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">client_serverbrowse_refresh</a></td><td class=SDescription>Issues a refresh of the server browser.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_serverbrowse_sorted_get" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">client_serverbrowse_sorted_get</a></td><td class=SDescription>Returns server info from the sorted list.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_serverbrowse_sorted_num" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">client_serverbrowse_sorted_num</a></td><td class=SDescription>Returns how many servers there are in the sorted list.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_serverbrowse_get" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">client_serverbrowse_get</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_serverbrowse_num" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')">client_serverbrowse_num</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_serverbrowse_num_requests" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')">client_serverbrowse_num_requests</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_serverbrowse_update" id=link15 onMouseOver="ShowTip(event, 'tt15', 'link15')" onMouseOut="HideTip('tt15')">client_serverbrowse_update</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_serverbrowse_lan" id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')">client_serverbrowse_lan</a></td><td class=SDescription>TODO</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Actions" >Actions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_connect" id=link17 onMouseOver="ShowTip(event, 'tt17', 'link17')" onMouseOut="HideTip('tt17')">client_connect</a></td><td class=SDescription>Connects to a server at the specified address.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_disconnect" id=link18 onMouseOver="ShowTip(event, 'tt18', 'link18')" onMouseOut="HideTip('tt18')">client_disconnect</a></td><td class=SDescription>Disconnects from the current server.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_quit" id=link19 onMouseOver="ShowTip(event, 'tt19', 'link19')" onMouseOut="HideTip('tt19')">client_quit</a></td><td class=SDescription>Tells to client to shutdown.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_rcon" id=link20 onMouseOver="ShowTip(event, 'tt20', 'link20')" onMouseOut="HideTip('tt20')">client_rcon</a></td><td class=SDescription>Sends a command to the server to execute on it&rsquo;s console.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_rcon_auth" id=link21 onMouseOver="ShowTip(event, 'tt21', 'link21')" onMouseOut="HideTip('tt21')">client_rcon_auth</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_rcon_authed" id=link22 onMouseOver="ShowTip(event, 'tt22', 'link22')" onMouseOut="HideTip('tt22')">client_rcon_authed</a></td><td class=SDescription>TODO</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Other" >Other</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_get_input" id=link23 onMouseOver="ShowTip(event, 'tt23', 'link23')" onMouseOut="HideTip('tt23')">client_get_input</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_direct_input" id=link24 onMouseOver="ShowTip(event, 'tt24', 'link24')" onMouseOut="HideTip('tt24')">client_direct_input</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_error_string" id=link25 onMouseOver="ShowTip(event, 'tt25', 'link25')" onMouseOut="HideTip('tt25')">client_error_string</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_connection_problems" id=link26 onMouseOver="ShowTip(event, 'tt26', 'link26')" onMouseOut="HideTip('tt26')">client_connection_problems</a></td><td class=SDescription>Returns 1 if the client is connection problems.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_state" id=link27 onMouseOver="ShowTip(event, 'tt27', 'link27')" onMouseOut="HideTip('tt27')">client_state</a></td><td class=SDescription>Returns the state of the client.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_mapdownload_amount" id=link28 onMouseOver="ShowTip(event, 'tt28', 'link28')" onMouseOut="HideTip('tt28')">client_mapdownload_amount</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_mapdownload_totalsize" id=link29 onMouseOver="ShowTip(event, 'tt29', 'link29')" onMouseOut="HideTip('tt29')">client_mapdownload_totalsize</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_save_line" id=link30 onMouseOver="ShowTip(event, 'tt30', 'link30')" onMouseOut="HideTip('tt30')">client_save_line</a></td><td class=SDescription>TODO</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
+<div id=Content><div class="CSection"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="Client_Interface"></a>Client 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="#Client_Interface" >Client Interface</a></td><td class=SDescription></td></tr><tr class="SSection"><td class=SEntry><a href="#Constants" >Constants</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Constants" >Constants</a></td><td class=SDescription></td></tr><tr class="SConstant SIndent2 SMarked"><td class=SEntry><a href="#Client_States" >Client States</a></td><td class=SDescription></td></tr><tr class="SConstant SIndent2"><td class=SEntry><a href="#Image_Formats" >Image Formats</a></td><td class=SDescription></td></tr><tr class="SConstant SIndent2 SMarked"><td class=SEntry><a href="#Texture_Loading_Flags" >Texture Loading Flags</a></td><td class=SDescription></td></tr><tr class="SConstant SIndent2"><td class=SEntry><a href="#Server_Browser_Sorting" >Server Browser Sorting</a></td><td class=SDescription></td></tr><tr class="SSection"><td class=SEntry><a href="#Structures" >Structures</a></td><td class=SDescription></td></tr><tr class="SClass"><td class=SEntry><a href="#SERVER_INFO_PLAYER" >SERVER_INFO_PLAYER</a></td><td class=SDescription></td></tr><tr class="SClass"><td class=SEntry><a href="#SERVER_INFO" >SERVER_INFO</a></td><td class=SDescription></td></tr><tr class="SSection"><td class=SEntry><a href="#Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Time" >Time</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_tick" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">client_tick</a></td><td class=SDescription>Returns the tick of the current snapshot.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_prevtick" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">client_prevtick</a></td><td class=SDescription>Returns the tick of the previous snapshot.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_intratick" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">client_intratick</a></td><td class=SDescription>Returns the current intratick.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_predtick" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">client_predtick</a></td><td class=SDescription>Returns the current predicted tick.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_predintratick" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">client_predintratick</a></td><td class=SDescription>Returns the current preticted intra tick.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_ticktime" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">client_ticktime</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_tickspeed" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">client_tickspeed</a></td><td class=SDescription>Returns how many ticks per second the client is doing.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_frametime" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">client_frametime</a></td><td class=SDescription>Returns how long time the last frame took to process.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_localtime" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">client_localtime</a></td><td class=SDescription>Returns the clients local time.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Server_Browser" >Server Browser</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_serverbrowse_refresh" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">client_serverbrowse_refresh</a></td><td class=SDescription>Issues a refresh of the server browser.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_serverbrowse_sorted_get" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">client_serverbrowse_sorted_get</a></td><td class=SDescription>Returns server info from the sorted list.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_serverbrowse_sorted_num" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">client_serverbrowse_sorted_num</a></td><td class=SDescription>Returns how many servers there are in the sorted list.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_serverbrowse_get" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')">client_serverbrowse_get</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_serverbrowse_num" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')">client_serverbrowse_num</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_serverbrowse_num_requests" id=link15 onMouseOver="ShowTip(event, 'tt15', 'link15')" onMouseOut="HideTip('tt15')">client_serverbrowse_num_requests</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_serverbrowse_update" id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')">client_serverbrowse_update</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_serverbrowse_lan" id=link17 onMouseOver="ShowTip(event, 'tt17', 'link17')" onMouseOut="HideTip('tt17')">client_serverbrowse_lan</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_serverbrowse_addfavorite" id=link18 onMouseOver="ShowTip(event, 'tt18', 'link18')" onMouseOut="HideTip('tt18')">client_serverbrowse_addfavorite</a></td><td class=SDescription>Adds a server to the favorite list</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_serverbrowse_removefavorite" id=link19 onMouseOver="ShowTip(event, 'tt19', 'link19')" onMouseOut="HideTip('tt19')">client_serverbrowse_removefavorite</a></td><td class=SDescription>Removes a server to the favorite list</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Actions" >Actions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_connect" id=link20 onMouseOver="ShowTip(event, 'tt20', 'link20')" onMouseOut="HideTip('tt20')">client_connect</a></td><td class=SDescription>Connects to a server at the specified address.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_disconnect" id=link21 onMouseOver="ShowTip(event, 'tt21', 'link21')" onMouseOut="HideTip('tt21')">client_disconnect</a></td><td class=SDescription>Disconnects from the current server.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_quit" id=link22 onMouseOver="ShowTip(event, 'tt22', 'link22')" onMouseOut="HideTip('tt22')">client_quit</a></td><td class=SDescription>Tells to client to shutdown.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_rcon" id=link23 onMouseOver="ShowTip(event, 'tt23', 'link23')" onMouseOut="HideTip('tt23')">client_rcon</a></td><td class=SDescription>Sends a command to the server to execute on it&rsquo;s console.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_rcon_auth" id=link24 onMouseOver="ShowTip(event, 'tt24', 'link24')" onMouseOut="HideTip('tt24')">client_rcon_auth</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_rcon_authed" id=link25 onMouseOver="ShowTip(event, 'tt25', 'link25')" onMouseOut="HideTip('tt25')">client_rcon_authed</a></td><td class=SDescription>TODO</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Other" >Other</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_latestversion" id=link26 onMouseOver="ShowTip(event, 'tt26', 'link26')" onMouseOut="HideTip('tt26')">client_latestversion</a></td><td class=SDescription>Returns 0 if there&rsquo;s no version difference</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_get_input" id=link27 onMouseOver="ShowTip(event, 'tt27', 'link27')" onMouseOut="HideTip('tt27')">client_get_input</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_direct_input" id=link28 onMouseOver="ShowTip(event, 'tt28', 'link28')" onMouseOut="HideTip('tt28')">client_direct_input</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_error_string" id=link29 onMouseOver="ShowTip(event, 'tt29', 'link29')" onMouseOut="HideTip('tt29')">client_error_string</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_connection_problems" id=link30 onMouseOver="ShowTip(event, 'tt30', 'link30')" onMouseOut="HideTip('tt30')">client_connection_problems</a></td><td class=SDescription>Returns 1 if the client is connection problems.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_state" id=link31 onMouseOver="ShowTip(event, 'tt31', 'link31')" onMouseOut="HideTip('tt31')">client_state</a></td><td class=SDescription>Returns the state of the client.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_mapdownload_amount" id=link32 onMouseOver="ShowTip(event, 'tt32', 'link32')" onMouseOut="HideTip('tt32')">client_mapdownload_amount</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#client_mapdownload_totalsize" id=link33 onMouseOver="ShowTip(event, 'tt33', 'link33')" onMouseOut="HideTip('tt33')">client_mapdownload_totalsize</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#client_save_line" id=link34 onMouseOver="ShowTip(event, 'tt34', 'link34')" onMouseOut="HideTip('tt34')">client_save_line</a></td><td class=SDescription>TODO</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
 
 <div class="CSection"><div class=CTopic><h2 class=CTitle><a name="Constants"></a>Constants</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="SGroup"><td class=SEntry><a href="#Constants" >Constants</a></td><td class=SDescription></td></tr><tr class="SConstant SIndent1 SMarked"><td class=SEntry><a href="#Client_States" >Client States</a></td><td class=SDescription></td></tr><tr class="SConstant SIndent1"><td class=SEntry><a href="#Image_Formats" >Image Formats</a></td><td class=SDescription></td></tr><tr class="SConstant SIndent1 SMarked"><td class=SEntry><a href="#Texture_Loading_Flags" >Texture Loading Flags</a></td><td class=SDescription></td></tr><tr class="SConstant SIndent1"><td class=SEntry><a href="#Server_Browser_Sorting" >Server Browser Sorting</a></td><td class=SDescription></td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
 
@@ -31,17 +31,19 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CClass"><div class=CTopic><h2 class=CTitle><a name="SERVER_INFO"></a>SERVER_INFO</h2><div class=CBody></div></div></div>
 
-<div class="CSection"><div class=CTopic><h2 class=CTitle><a name="Functions"></a>Functions</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="SGroup"><td class=SEntry><a href="#Time" >Time</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_tick" id=link31 onMouseOver="ShowTip(event, 'tt1', 'link31')" onMouseOut="HideTip('tt1')">client_tick</a></td><td class=SDescription>Returns the tick of the current snapshot.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_intratick" id=link32 onMouseOver="ShowTip(event, 'tt2', 'link32')" onMouseOut="HideTip('tt2')">client_intratick</a></td><td class=SDescription>Returns the current intratick.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_predtick" id=link33 onMouseOver="ShowTip(event, 'tt3', 'link33')" onMouseOut="HideTip('tt3')">client_predtick</a></td><td class=SDescription>Returns the current predicted tick.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_predintratick" id=link34 onMouseOver="ShowTip(event, 'tt4', 'link34')" onMouseOut="HideTip('tt4')">client_predintratick</a></td><td class=SDescription>Returns the current preticted intra tick.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_ticktime" id=link35 onMouseOver="ShowTip(event, 'tt5', 'link35')" onMouseOut="HideTip('tt5')">client_ticktime</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_tickspeed" id=link36 onMouseOver="ShowTip(event, 'tt6', 'link36')" onMouseOut="HideTip('tt6')">client_tickspeed</a></td><td class=SDescription>Returns how many ticks per second the client is doing.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_frametime" id=link37 onMouseOver="ShowTip(event, 'tt7', 'link37')" onMouseOut="HideTip('tt7')">client_frametime</a></td><td class=SDescription>Returns how long time the last frame took to process.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_localtime" id=link38 onMouseOver="ShowTip(event, 'tt8', 'link38')" onMouseOut="HideTip('tt8')">client_localtime</a></td><td class=SDescription>Returns the clients local time.</td></tr><tr class="SGroup"><td class=SEntry><a href="#Server_Browser" >Server Browser</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_serverbrowse_refresh" id=link39 onMouseOver="ShowTip(event, 'tt9', 'link39')" onMouseOut="HideTip('tt9')">client_serverbrowse_refresh</a></td><td class=SDescription>Issues a refresh of the server browser.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_serverbrowse_sorted_get" id=link40 onMouseOver="ShowTip(event, 'tt10', 'link40')" onMouseOut="HideTip('tt10')">client_serverbrowse_sorted_get</a></td><td class=SDescription>Returns server info from the sorted list.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_serverbrowse_sorted_num" id=link41 onMouseOver="ShowTip(event, 'tt11', 'link41')" onMouseOut="HideTip('tt11')">client_serverbrowse_sorted_num</a></td><td class=SDescription>Returns how many servers there are in the sorted list.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_serverbrowse_get" id=link42 onMouseOver="ShowTip(event, 'tt12', 'link42')" onMouseOut="HideTip('tt12')">client_serverbrowse_get</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_serverbrowse_num" id=link43 onMouseOver="ShowTip(event, 'tt13', 'link43')" onMouseOut="HideTip('tt13')">client_serverbrowse_num</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_serverbrowse_num_requests" id=link44 onMouseOver="ShowTip(event, 'tt14', 'link44')" onMouseOut="HideTip('tt14')">client_serverbrowse_num_requests</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_serverbrowse_update" id=link45 onMouseOver="ShowTip(event, 'tt15', 'link45')" onMouseOut="HideTip('tt15')">client_serverbrowse_update</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_serverbrowse_lan" id=link46 onMouseOver="ShowTip(event, 'tt16', 'link46')" onMouseOut="HideTip('tt16')">client_serverbrowse_lan</a></td><td class=SDescription>TODO</td></tr><tr class="SGroup"><td class=SEntry><a href="#Actions" >Actions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_connect" id=link47 onMouseOver="ShowTip(event, 'tt17', 'link47')" onMouseOut="HideTip('tt17')">client_connect</a></td><td class=SDescription>Connects to a server at the specified address.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_disconnect" id=link48 onMouseOver="ShowTip(event, 'tt18', 'link48')" onMouseOut="HideTip('tt18')">client_disconnect</a></td><td class=SDescription>Disconnects from the current server.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_quit" id=link49 onMouseOver="ShowTip(event, 'tt19', 'link49')" onMouseOut="HideTip('tt19')">client_quit</a></td><td class=SDescription>Tells to client to shutdown.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_rcon" id=link50 onMouseOver="ShowTip(event, 'tt20', 'link50')" onMouseOut="HideTip('tt20')">client_rcon</a></td><td class=SDescription>Sends a command to the server to execute on it&rsquo;s console.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_rcon_auth" id=link51 onMouseOver="ShowTip(event, 'tt21', 'link51')" onMouseOut="HideTip('tt21')">client_rcon_auth</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_rcon_authed" id=link52 onMouseOver="ShowTip(event, 'tt22', 'link52')" onMouseOut="HideTip('tt22')">client_rcon_authed</a></td><td class=SDescription>TODO</td></tr><tr class="SGroup"><td class=SEntry><a href="#Other" >Other</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_get_input" id=link53 onMouseOver="ShowTip(event, 'tt23', 'link53')" onMouseOut="HideTip('tt23')">client_get_input</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_direct_input" id=link54 onMouseOver="ShowTip(event, 'tt24', 'link54')" onMouseOut="HideTip('tt24')">client_direct_input</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_error_string" id=link55 onMouseOver="ShowTip(event, 'tt25', 'link55')" onMouseOut="HideTip('tt25')">client_error_string</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_connection_problems" id=link56 onMouseOver="ShowTip(event, 'tt26', 'link56')" onMouseOut="HideTip('tt26')">client_connection_problems</a></td><td class=SDescription>Returns 1 if the client is connection problems.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_state" id=link57 onMouseOver="ShowTip(event, 'tt27', 'link57')" onMouseOut="HideTip('tt27')">client_state</a></td><td class=SDescription>Returns the state of the client.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_mapdownload_amount" id=link58 onMouseOver="ShowTip(event, 'tt28', 'link58')" onMouseOut="HideTip('tt28')">client_mapdownload_amount</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_mapdownload_totalsize" id=link59 onMouseOver="ShowTip(event, 'tt29', 'link59')" onMouseOut="HideTip('tt29')">client_mapdownload_totalsize</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_save_line" id=link60 onMouseOver="ShowTip(event, 'tt30', 'link60')" onMouseOut="HideTip('tt30')">client_save_line</a></td><td class=SDescription>TODO</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
+<div class="CSection"><div class=CTopic><h2 class=CTitle><a name="Functions"></a>Functions</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="SGroup"><td class=SEntry><a href="#Time" >Time</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_tick" id=link35 onMouseOver="ShowTip(event, 'tt1', 'link35')" onMouseOut="HideTip('tt1')">client_tick</a></td><td class=SDescription>Returns the tick of the current snapshot.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_prevtick" id=link36 onMouseOver="ShowTip(event, 'tt2', 'link36')" onMouseOut="HideTip('tt2')">client_prevtick</a></td><td class=SDescription>Returns the tick of the previous snapshot.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_intratick" id=link37 onMouseOver="ShowTip(event, 'tt3', 'link37')" onMouseOut="HideTip('tt3')">client_intratick</a></td><td class=SDescription>Returns the current intratick.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_predtick" id=link38 onMouseOver="ShowTip(event, 'tt4', 'link38')" onMouseOut="HideTip('tt4')">client_predtick</a></td><td class=SDescription>Returns the current predicted tick.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_predintratick" id=link39 onMouseOver="ShowTip(event, 'tt5', 'link39')" onMouseOut="HideTip('tt5')">client_predintratick</a></td><td class=SDescription>Returns the current preticted intra tick.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_ticktime" id=link40 onMouseOver="ShowTip(event, 'tt6', 'link40')" onMouseOut="HideTip('tt6')">client_ticktime</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_tickspeed" id=link41 onMouseOver="ShowTip(event, 'tt7', 'link41')" onMouseOut="HideTip('tt7')">client_tickspeed</a></td><td class=SDescription>Returns how many ticks per second the client is doing.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_frametime" id=link42 onMouseOver="ShowTip(event, 'tt8', 'link42')" onMouseOut="HideTip('tt8')">client_frametime</a></td><td class=SDescription>Returns how long time the last frame took to process.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_localtime" id=link43 onMouseOver="ShowTip(event, 'tt9', 'link43')" onMouseOut="HideTip('tt9')">client_localtime</a></td><td class=SDescription>Returns the clients local time.</td></tr><tr class="SGroup"><td class=SEntry><a href="#Server_Browser" >Server Browser</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_serverbrowse_refresh" id=link44 onMouseOver="ShowTip(event, 'tt10', 'link44')" onMouseOut="HideTip('tt10')">client_serverbrowse_refresh</a></td><td class=SDescription>Issues a refresh of the server browser.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_serverbrowse_sorted_get" id=link45 onMouseOver="ShowTip(event, 'tt11', 'link45')" onMouseOut="HideTip('tt11')">client_serverbrowse_sorted_get</a></td><td class=SDescription>Returns server info from the sorted list.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_serverbrowse_sorted_num" id=link46 onMouseOver="ShowTip(event, 'tt12', 'link46')" onMouseOut="HideTip('tt12')">client_serverbrowse_sorted_num</a></td><td class=SDescription>Returns how many servers there are in the sorted list.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_serverbrowse_get" id=link47 onMouseOver="ShowTip(event, 'tt13', 'link47')" onMouseOut="HideTip('tt13')">client_serverbrowse_get</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_serverbrowse_num" id=link48 onMouseOver="ShowTip(event, 'tt14', 'link48')" onMouseOut="HideTip('tt14')">client_serverbrowse_num</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_serverbrowse_num_requests" id=link49 onMouseOver="ShowTip(event, 'tt15', 'link49')" onMouseOut="HideTip('tt15')">client_serverbrowse_num_requests</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_serverbrowse_update" id=link50 onMouseOver="ShowTip(event, 'tt16', 'link50')" onMouseOut="HideTip('tt16')">client_serverbrowse_update</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_serverbrowse_lan" id=link51 onMouseOver="ShowTip(event, 'tt17', 'link51')" onMouseOut="HideTip('tt17')">client_serverbrowse_lan</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_serverbrowse_addfavorite" id=link52 onMouseOver="ShowTip(event, 'tt18', 'link52')" onMouseOut="HideTip('tt18')">client_serverbrowse_addfavorite</a></td><td class=SDescription>Adds a server to the favorite list</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_serverbrowse_removefavorite" id=link53 onMouseOver="ShowTip(event, 'tt19', 'link53')" onMouseOut="HideTip('tt19')">client_serverbrowse_removefavorite</a></td><td class=SDescription>Removes a server to the favorite list</td></tr><tr class="SGroup"><td class=SEntry><a href="#Actions" >Actions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_connect" id=link54 onMouseOver="ShowTip(event, 'tt20', 'link54')" onMouseOut="HideTip('tt20')">client_connect</a></td><td class=SDescription>Connects to a server at the specified address.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_disconnect" id=link55 onMouseOver="ShowTip(event, 'tt21', 'link55')" onMouseOut="HideTip('tt21')">client_disconnect</a></td><td class=SDescription>Disconnects from the current server.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_quit" id=link56 onMouseOver="ShowTip(event, 'tt22', 'link56')" onMouseOut="HideTip('tt22')">client_quit</a></td><td class=SDescription>Tells to client to shutdown.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_rcon" id=link57 onMouseOver="ShowTip(event, 'tt23', 'link57')" onMouseOut="HideTip('tt23')">client_rcon</a></td><td class=SDescription>Sends a command to the server to execute on it&rsquo;s console.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_rcon_auth" id=link58 onMouseOver="ShowTip(event, 'tt24', 'link58')" onMouseOut="HideTip('tt24')">client_rcon_auth</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_rcon_authed" id=link59 onMouseOver="ShowTip(event, 'tt25', 'link59')" onMouseOut="HideTip('tt25')">client_rcon_authed</a></td><td class=SDescription>TODO</td></tr><tr class="SGroup"><td class=SEntry><a href="#Other" >Other</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_latestversion" id=link60 onMouseOver="ShowTip(event, 'tt26', 'link60')" onMouseOut="HideTip('tt26')">client_latestversion</a></td><td class=SDescription>Returns 0 if there&rsquo;s no version difference</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_get_input" id=link61 onMouseOver="ShowTip(event, 'tt27', 'link61')" onMouseOut="HideTip('tt27')">client_get_input</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_direct_input" id=link62 onMouseOver="ShowTip(event, 'tt28', 'link62')" onMouseOut="HideTip('tt28')">client_direct_input</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_error_string" id=link63 onMouseOver="ShowTip(event, 'tt29', 'link63')" onMouseOut="HideTip('tt29')">client_error_string</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_connection_problems" id=link64 onMouseOver="ShowTip(event, 'tt30', 'link64')" onMouseOut="HideTip('tt30')">client_connection_problems</a></td><td class=SDescription>Returns 1 if the client is connection problems.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_state" id=link65 onMouseOver="ShowTip(event, 'tt31', 'link65')" onMouseOut="HideTip('tt31')">client_state</a></td><td class=SDescription>Returns the state of the client.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_mapdownload_amount" id=link66 onMouseOver="ShowTip(event, 'tt32', 'link66')" onMouseOut="HideTip('tt32')">client_mapdownload_amount</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#client_mapdownload_totalsize" id=link67 onMouseOver="ShowTip(event, 'tt33', 'link67')" onMouseOut="HideTip('tt33')">client_mapdownload_totalsize</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#client_save_line" id=link68 onMouseOver="ShowTip(event, 'tt34', 'link68')" onMouseOut="HideTip('tt34')">client_save_line</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="Time"></a>Time</h3></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="client_tick"></a>client_tick</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_tick()</td></tr></table></blockquote><p>Returns the tick of the current snapshot.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="client_intratick"></a>client_intratick</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_intratick()</td></tr></table></blockquote><p>Returns the current intratick.</p><h4 class=CHeading>Remarks</h4><p>The intratick is how far gone the time is from the previous snapshot to the current.&nbsp; 0.0 means that it on the previous snapshot.&nbsp; 0.5 means that it&rsquo;s halfway to the current, and 1.0 means that it is on the current snapshot.&nbsp; It can go beyond 1.0 which means that the client has started to extrapolate due to lack of data from the server.</p><h4 class=CHeading>See Also</h4><p><a href="#client_tick" class=LFunction id=link61 onMouseOver="ShowTip(event, 'tt1', 'link61')" onMouseOut="HideTip('tt1')">client_tick</a></p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="client_prevtick"></a>client_prevtick</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_prevtick()</td></tr></table></blockquote><p>Returns the tick of the previous snapshot.</p></div></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="client_intratick"></a>client_intratick</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_intratick()</td></tr></table></blockquote><p>Returns the current intratick.</p><h4 class=CHeading>Remarks</h4><p>The intratick is how far gone the time is from the previous snapshot to the current.&nbsp; 0.0 means that it on the previous snapshot.&nbsp; 0.5 means that it&rsquo;s halfway to the current, and 1.0 means that it is on the current snapshot.&nbsp; It can go beyond 1.0 which means that the client has started to extrapolate due to lack of data from the server.</p><h4 class=CHeading>See Also</h4><p><a href="#client_tick" class=LFunction id=link69 onMouseOver="ShowTip(event, 'tt1', 'link69')" onMouseOut="HideTip('tt1')">client_tick</a></p></div></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="client_predtick"></a>client_predtick</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_predtick()</td></tr></table></blockquote><p>Returns the current predicted tick.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="client_predintratick"></a>client_predintratick</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_predintratick()</td></tr></table></blockquote><p>Returns the current preticted intra tick.</p><h4 class=CHeading>Remarks</h4><p>This is the same as <a href="#client_intratick" class=LFunction id=link62 onMouseOver="ShowTip(event, 'tt2', 'link62')" onMouseOut="HideTip('tt2')">client_intratick</a> but for the current predicted tick and previous predicted tick.</p><h4 class=CHeading>See Also</h4><p><a href="#client_intratick" class=LFunction id=link63 onMouseOver="ShowTip(event, 'tt2', 'link63')" onMouseOut="HideTip('tt2')">client_intratick</a></p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="client_predintratick"></a>client_predintratick</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_predintratick()</td></tr></table></blockquote><p>Returns the current preticted intra tick.</p><h4 class=CHeading>Remarks</h4><p>This is the same as <a href="#client_intratick" class=LFunction id=link70 onMouseOver="ShowTip(event, 'tt3', 'link70')" onMouseOut="HideTip('tt3')">client_intratick</a> but for the current predicted tick and previous predicted tick.</p><h4 class=CHeading>See Also</h4><p><a href="#client_intratick" class=LFunction id=link71 onMouseOver="ShowTip(event, 'tt3', 'link71')" onMouseOut="HideTip('tt3')">client_intratick</a></p></div></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="client_ticktime"></a>client_ticktime</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_ticktime()</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>
 
@@ -53,11 +55,11 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Server_Browser"></a>Server Browser</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="client_serverbrowse_refresh"></a>client_serverbrowse_refresh</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 client_serverbrowse_refresh(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>lan</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Issues a refresh of the server browser.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>lan</td><td class=CDLDescription>Tells the function if it should do a LAN listing or an Internet listing.</td></tr></table><h4 class=CHeading>Remarks</h4><p>This will cause a broadcast on the local network if the lan argument is set.&nbsp; Otherwise it call ask all the master servers for their servers lists.</p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="client_serverbrowse_refresh"></a>client_serverbrowse_refresh</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 client_serverbrowse_refresh(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>type</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Issues a refresh of the server browser.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>type</td><td class=CDLDescription>What type of servers to browse, internet, lan or favorites.</td></tr></table><h4 class=CHeading>Remarks</h4><p>This will cause a broadcast on the local network if the lan argument is set.&nbsp; Otherwise it call ask all the master servers for their servers lists.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="client_serverbrowse_sorted_get"></a>client_serverbrowse_sorted_get</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>SERVER_INFO *client_serverbrowse_sorted_get(</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><p>Returns server info from the sorted list.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>index</td><td class=CDLDescription>Zero based index into the sorted list.</td></tr></table><h4 class=CHeading>See Also</h4><p><a href="#client_serverbrowse_sorted_num" class=LFunction id=link64 onMouseOver="ShowTip(event, 'tt11', 'link64')" onMouseOut="HideTip('tt11')">client_serverbrowse_sorted_num</a></p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="client_serverbrowse_sorted_get"></a>client_serverbrowse_sorted_get</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>SERVER_INFO *client_serverbrowse_sorted_get(</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><p>Returns server info from the sorted list.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>index</td><td class=CDLDescription>Zero based index into the sorted list.</td></tr></table><h4 class=CHeading>See Also</h4><p><a href="#client_serverbrowse_sorted_num" class=LFunction id=link72 onMouseOver="ShowTip(event, 'tt12', 'link72')" onMouseOut="HideTip('tt12')">client_serverbrowse_sorted_num</a></p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="client_serverbrowse_sorted_num"></a>client_serverbrowse_sorted_num</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_sorted_num()</td></tr></table></blockquote><p>Returns how many servers there are in the sorted list.</p><h4 class=CHeading>See Also</h4><p><a href="#client_serverbrowse_sorted_get" class=LFunction id=link65 onMouseOver="ShowTip(event, 'tt10', 'link65')" onMouseOut="HideTip('tt10')">client_serverbrowse_sorted_get</a></p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="client_serverbrowse_sorted_num"></a>client_serverbrowse_sorted_num</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_sorted_num()</td></tr></table></blockquote><p>Returns how many servers there are in the sorted list.</p><h4 class=CHeading>See Also</h4><p><a href="#client_serverbrowse_sorted_get" class=LFunction id=link73 onMouseOver="ShowTip(event, 'tt11', 'link73')" onMouseOut="HideTip('tt11')">client_serverbrowse_sorted_get</a></p></div></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="client_serverbrowse_get"></a>client_serverbrowse_get</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>SERVER_INFO *client_serverbrowse_get(</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><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>
 
@@ -69,13 +71,17 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="client_serverbrowse_lan"></a>client_serverbrowse_lan</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_lan()</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="client_serverbrowse_addfavorite"></a>client_serverbrowse_addfavorite</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 client_serverbrowse_addfavorite(</td><td class=PType nowrap>NETADDR&nbsp;</td><td class=PParameter nowrap>addr</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Adds a server to the favorite list</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>addr</td><td class=CDLDescription>Address of the favorite server.</td></tr></table></div></div></div>
+
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="client_serverbrowse_removefavorite"></a>client_serverbrowse_removefavorite</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 client_serverbrowse_removefavorite(</td><td class=PType nowrap>NETADDR&nbsp;</td><td class=PParameter nowrap>addr</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Removes a server to the favorite list</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>addr</td><td class=CDLDescription>Address of the favorite server.</td></tr></table></div></div></div>
+
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Actions"></a>Actions</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="client_connect"></a>client_connect</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 client_connect(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>address</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Connects to a server at the specified address.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>address</td><td class=CDLDescription>Address of the server to connect to.</td></tr></table><h4 class=CHeading>See Also</h4><p><a href="#client_disconnect" class=LFunction id=link66 onMouseOver="ShowTip(event, 'tt18', 'link66')" onMouseOut="HideTip('tt18')">client_disconnect</a></p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="client_connect"></a>client_connect</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 client_connect(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>address</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Connects to a server at the specified address.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>address</td><td class=CDLDescription>Address of the server to connect to.</td></tr></table><h4 class=CHeading>See Also</h4><p><a href="#client_disconnect" class=LFunction id=link74 onMouseOver="ShowTip(event, 'tt21', 'link74')" onMouseOut="HideTip('tt21')">client_disconnect</a></p></div></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="client_disconnect"></a>client_disconnect</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void client_disconnect()</td></tr></table></blockquote><p>Disconnects from the current server.</p><h4 class=CHeading>Remarks</h4><p>Does nothing if not connected to a server.</p><h4 class=CHeading>See Also</h4><p>&lt;client_connect, client_quit&gt;</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="client_quit"></a>client_quit</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void client_quit()</td></tr></table></blockquote><p>Tells to client to shutdown.</p><h4 class=CHeading>See Also</h4><p><a href="#client_disconnect" class=LFunction id=link67 onMouseOver="ShowTip(event, 'tt18', 'link67')" onMouseOut="HideTip('tt18')">client_disconnect</a></p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="client_quit"></a>client_quit</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void client_quit()</td></tr></table></blockquote><p>Tells to client to shutdown.</p><h4 class=CHeading>See Also</h4><p><a href="#client_disconnect" class=LFunction id=link75 onMouseOver="ShowTip(event, 'tt21', 'link75')" onMouseOut="HideTip('tt21')">client_disconnect</a></p></div></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="client_rcon"></a>client_rcon</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 client_rcon(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>cmd</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Sends a command to the server to execute on it&rsquo;s console.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>cmd</td><td class=CDLDescription>The command to send.</td></tr></table><h4 class=CHeading>Remarks</h4><p>The client must have the correct rcon password to connect.</p><h4 class=CHeading>See Also</h4><p>&lt;client_rcon_auth, client_rcon_authed&gt;</p></div></div></div>
 
@@ -85,6 +91,8 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Other"></a>Other</h3></div></div>
 
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="client_latestversion"></a>client_latestversion</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>const char *client_latestversion()</td></tr></table></blockquote><p>Returns 0 if there&rsquo;s no version difference</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="client_get_input"></a>client_get_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 *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><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="client_direct_input"></a>client_direct_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>void client_direct_input(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>input,</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>
@@ -107,15 +115,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <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 id=MSelected>Client Interface</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"><!--
+<div id=Menu><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 id=MSelected>Client Interface</div></div><div class=MEntry><div class=MFile><a href="e_huffman-h.html">e_huffman.h</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/entity-hpp.html">Entity</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gamecontroller-hpp.html">Game Controller</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gameworld-hpp.html">Game World</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 class=MEntry><div class=MIndex><a href="../index/Files.html">Files</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><!--
+--></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="Files">Files</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>int client_tick()</td></tr></table></blockquote>Returns the tick of the current snapshot.</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_intratick()</td></tr></table></blockquote>Returns the current intratick.</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>float client_predintratick()</td></tr></table></blockquote>Returns the current preticted intra tick.</div></div><div class=CToolTip id="tt5"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_ticktime()</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 client_tickspeed()</td></tr></table></blockquote>Returns how many ticks per second the client is doing.</div></div><div class=CToolTip id="tt7"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_frametime()</td></tr></table></blockquote>Returns how long time the last frame took to process.</div></div><div class=CToolTip id="tt8"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_localtime()</td></tr></table></blockquote>Returns the clients local time.</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 client_serverbrowse_refresh(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>lan</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Issues a refresh of the server browser.</div></div><div class=CToolTip id="tt10"><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>SERVER_INFO *client_serverbrowse_sorted_get(</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>Returns server info from the sorted list.</div></div><div class=CToolTip id="tt11"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_sorted_num()</td></tr></table></blockquote>Returns how many servers there are in the sorted list.</div></div><div class=CToolTip id="tt12"><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>SERVER_INFO *client_serverbrowse_get(</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>TODO</div></div><div class=CToolTip id="tt13"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_num()</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>int client_serverbrowse_num_requests()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt15"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void client_serverbrowse_update()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt16"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_lan()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt17"><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 client_connect(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>address</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Connects to a server at the specified address.</div></div><div class=CToolTip id="tt18"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void client_disconnect()</td></tr></table></blockquote>Disconnects from the current server.</div></div><div class=CToolTip id="tt19"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void client_quit()</td></tr></table></blockquote>Tells to client to shutdown.</div></div><div class=CToolTip id="tt20"><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 client_rcon(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>cmd</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sends a command to the server to execute on it&rsquo;s console.</div></div><div class=CToolTip id="tt21"><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 client_rcon_auth(</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></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>password</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt22"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_rcon_authed()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt23"><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><div class=CToolTip id="tt24"><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 client_direct_input(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>input,</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="tt25"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>const char *client_error_string()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt26"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_connection_problems()</td></tr></table></blockquote>Returns 1 if the client is connection problems.</div></div><div class=CToolTip id="tt27"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_state()</td></tr></table></blockquote>Returns the state of the client.</div></div><div class=CToolTip id="tt28"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_mapdownload_amount()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt29"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_mapdownload_totalsize()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt30"><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 client_save_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><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><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="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_prevtick()</td></tr></table></blockquote>Returns the tick of the previous snapshot.</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_intratick()</td></tr></table></blockquote>Returns the current intratick.</div></div><div class=CToolTip id="tt4"><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="tt5"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_predintratick()</td></tr></table></blockquote>Returns the current preticted intra tick.</div></div><div class=CToolTip id="tt6"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_ticktime()</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>int client_tickspeed()</td></tr></table></blockquote>Returns how many ticks per second the client is doing.</div></div><div class=CToolTip id="tt8"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_frametime()</td></tr></table></blockquote>Returns how long time the last frame took to process.</div></div><div class=CToolTip id="tt9"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_localtime()</td></tr></table></blockquote>Returns the clients local time.</div></div><div class=CToolTip id="tt10"><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 client_serverbrowse_refresh(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>type</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Issues a refresh of the server browser.</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>SERVER_INFO *client_serverbrowse_sorted_get(</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>Returns server info from the sorted list.</div></div><div class=CToolTip id="tt12"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_sorted_num()</td></tr></table></blockquote>Returns how many servers there are in the sorted list.</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>SERVER_INFO *client_serverbrowse_get(</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>TODO</div></div><div class=CToolTip id="tt14"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_num()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt15"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_num_requests()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt16"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void client_serverbrowse_update()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt17"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_lan()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt18"><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 client_serverbrowse_addfavorite(</td><td class=PType nowrap>NETADDR&nbsp;</td><td class=PParameter nowrap>addr</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Adds a server to the favorite list</div></div><div class=CToolTip id="tt19"><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 client_serverbrowse_removefavorite(</td><td class=PType nowrap>NETADDR&nbsp;</td><td class=PParameter nowrap>addr</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Removes a server to the favorite list</div></div><div class=CToolTip id="tt20"><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 client_connect(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>address</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Connects to a server at the specified address.</div></div><div class=CToolTip id="tt21"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void client_disconnect()</td></tr></table></blockquote>Disconnects from the current server.</div></div><div class=CToolTip id="tt22"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void client_quit()</td></tr></table></blockquote>Tells to client to shutdown.</div></div><div class=CToolTip id="tt23"><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 client_rcon(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>cmd</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sends a command to the server to execute on it&rsquo;s console.</div></div><div class=CToolTip id="tt24"><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 client_rcon_auth(</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></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>password</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt25"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_rcon_authed()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt26"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>const char *client_latestversion()</td></tr></table></blockquote>Returns 0 if there&rsquo;s no version difference</div></div><div class=CToolTip id="tt27"><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><div class=CToolTip id="tt28"><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 client_direct_input(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>input,</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="tt29"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>const char *client_error_string()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt30"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_connection_problems()</td></tr></table></blockquote>Returns 1 if the client is connection problems.</div></div><div class=CToolTip id="tt31"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_state()</td></tr></table></blockquote>Returns the state of the client.</div></div><div class=CToolTip id="tt32"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_mapdownload_amount()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt33"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_mapdownload_totalsize()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt34"><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 client_save_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><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/docs/output/files2/e_if_gfx-h.html b/docs/output/files2/e_if_gfx-h.html
index 70842f57..f5bcc327 100644
--- a/docs/output/files2/e_if_gfx-h.html
+++ b/docs/output/files2/e_if_gfx-h.html
@@ -11,11 +11,11 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Content><div class="CSection"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="Graphics"></a>Graphics</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="#Graphics" >Graphics</a></td><td class=SDescription></td></tr><tr class="SSection"><td class=SEntry><a href="#Structures" >Structures</a></td><td class=SDescription></td></tr><tr class="SClass"><td class=SEntry><a href="#IMAGE_INFO" >IMAGE_INFO</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#IMAGE_INFO.Variables" >Variables</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#IMAGE_INFO.width" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">width</a></td><td class=SDescription>Contains the width of the image</td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#IMAGE_INFO.height" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">height</a></td><td class=SDescription>Contains the height of the image</td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#IMAGE_INFO.format" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">format</a></td><td class=SDescription>Contains the format of the image. </td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#IMAGE_INFO.data" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">data</a></td><td class=SDescription>Pointer to the image data.</td></tr><tr class="SClass"><td class=SEntry><a href="#VIDEO_MODE" >VIDEO_MODE</a></td><td class=SDescription></td></tr><tr class="SSection"><td class=SEntry><a href="#Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Quads" >Quads</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_quads_begin" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">gfx_quads_begin</a></td><td class=SDescription>Begins a quad drawing session.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_quads_end" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">gfx_quads_end</a></td><td class=SDescription>Ends a quad session.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_quads_setrotation" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">gfx_quads_setrotation</a></td><td class=SDescription>Sets the rotation to use when drawing a quad.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_quads_setsubset" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">gfx_quads_setsubset</a></td><td class=SDescription>Sets the uv coordinates to use.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_quads_setsubset_free" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">gfx_quads_setsubset_free</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_quads_drawTL" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">gfx_quads_drawTL</a></td><td class=SDescription>Draws a quad by specifying the top-left point.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_quads_draw" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">gfx_quads_draw</a></td><td class=SDescription>Draws a quad by specifying the center point.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_quads_draw_freeform" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">gfx_quads_draw_freeform</a></td><td class=SDescription>Draws a quad by specifying the corner points.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_quads_text" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')">gfx_quads_text</a></td><td class=SDescription>TODO</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Lines" >Lines</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_lines_begin" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')">gfx_lines_begin</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_lines_draw" id=link15 onMouseOver="ShowTip(event, 'tt15', 'link15')" onMouseOut="HideTip('tt15')">gfx_lines_draw</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_lines_end" id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')">gfx_lines_end</a></td><td class=SDescription>TODO</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Text" >Text</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_text" id=link17 onMouseOver="ShowTip(event, 'tt17', 'link17')" onMouseOut="HideTip('tt17')">gfx_text</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_text_width" id=link18 onMouseOver="ShowTip(event, 'tt18', 'link18')" onMouseOut="HideTip('tt18')">gfx_text_width</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_text_color" id=link19 onMouseOver="ShowTip(event, 'tt19', 'link19')" onMouseOut="HideTip('tt19')">gfx_text_color</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_text_set_default_font" id=link20 onMouseOver="ShowTip(event, 'tt20', 'link20')" onMouseOut="HideTip('tt20')">gfx_text_set_default_font</a></td><td class=SDescription>TODO</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Other" >Other</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_get_video_modes" id=link21 onMouseOver="ShowTip(event, 'tt21', 'link21')" onMouseOut="HideTip('tt21')">gfx_get_video_modes</a></td><td class=SDescription>Fetches a list of all the available video modes.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_load_png" id=link22 onMouseOver="ShowTip(event, 'tt22', 'link22')" onMouseOut="HideTip('tt22')">gfx_load_png</a></td><td class=SDescription>Loads a PNG image from disk.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_load_texture" id=link23 onMouseOver="ShowTip(event, 'tt23', 'link23')" onMouseOut="HideTip('tt23')">gfx_load_texture</a></td><td class=SDescription>Loads a texture from a file. </td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_load_texture_raw" id=link24 onMouseOver="ShowTip(event, 'tt24', 'link24')" onMouseOut="HideTip('tt24')">gfx_load_texture_raw</a></td><td class=SDescription>Loads a texture from memory.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_texture_set" id=link25 onMouseOver="ShowTip(event, 'tt25', 'link25')" onMouseOut="HideTip('tt25')">gfx_texture_set</a></td><td class=SDescription>Sets the active texture.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_unload_texture" id=link26 onMouseOver="ShowTip(event, 'tt26', 'link26')" onMouseOut="HideTip('tt26')">gfx_unload_texture</a></td><td class=SDescription>Unloads a texture.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_clear" id=link27 onMouseOver="ShowTip(event, 'tt27', 'link27')" onMouseOut="HideTip('tt27')">gfx_clear</a></td><td class=SDescription>Clears the screen with the specified color.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_screenaspect" id=link28 onMouseOver="ShowTip(event, 'tt28', 'link28')" onMouseOut="HideTip('tt28')">gfx_screenaspect</a></td><td class=SDescription>Returns the aspect ratio between width and height.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_screenwidth" id=link29 onMouseOver="ShowTip(event, 'tt29', 'link29')" onMouseOut="HideTip('tt29')">gfx_screenwidth</a></td><td class=SDescription>Returns the screen width.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_screenheight" id=link30 onMouseOver="ShowTip(event, 'tt30', 'link30')" onMouseOut="HideTip('tt30')">gfx_screenheight</a></td><td class=SDescription>Returns the screen height.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_mapscreen" id=link31 onMouseOver="ShowTip(event, 'tt31', 'link31')" onMouseOut="HideTip('tt31')">gfx_mapscreen</a></td><td class=SDescription>Specifies the coordinate system for the screen.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_blend_normal" id=link32 onMouseOver="ShowTip(event, 'tt32', 'link32')" onMouseOut="HideTip('tt32')">gfx_blend_normal</a></td><td class=SDescription>Set the active blending mode to normal (src, 1-src).</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_blend_additive" id=link33 onMouseOver="ShowTip(event, 'tt33', 'link33')" onMouseOut="HideTip('tt33')">gfx_blend_additive</a></td><td class=SDescription>Set the active blending mode to additive (src, one).</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_blend_none" id=link34 onMouseOver="ShowTip(event, 'tt34', 'link34')" onMouseOut="HideTip('tt34')">gfx_blend_none</a></td><td class=SDescription>Disables blending</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_setcolorvertex" id=link35 onMouseOver="ShowTip(event, 'tt35', 'link35')" onMouseOut="HideTip('tt35')">gfx_setcolorvertex</a></td><td class=SDescription>Sets the color of a vertex.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_setcolor" id=link36 onMouseOver="ShowTip(event, 'tt36', 'link36')" onMouseOut="HideTip('tt36')">gfx_setcolor</a></td><td class=SDescription>Sets the color of all the vertices.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_getscreen" id=link37 onMouseOver="ShowTip(event, 'tt37', 'link37')" onMouseOut="HideTip('tt37')">gfx_getscreen</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_memory_usage" id=link38 onMouseOver="ShowTip(event, 'tt38', 'link38')" onMouseOut="HideTip('tt38')">gfx_memory_usage</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_screenshot" id=link39 onMouseOver="ShowTip(event, 'tt39', 'link39')" onMouseOut="HideTip('tt39')">gfx_screenshot</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_clip_enable" id=link40 onMouseOver="ShowTip(event, 'tt40', 'link40')" onMouseOut="HideTip('tt40')">gfx_clip_enable</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_clip_disable" id=link41 onMouseOver="ShowTip(event, 'tt41', 'link41')" onMouseOut="HideTip('tt41')">gfx_clip_disable</a></td><td class=SDescription>TODO</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
+<div id=Content><div class="CSection"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="Graphics"></a>Graphics</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="#Graphics" >Graphics</a></td><td class=SDescription></td></tr><tr class="SSection"><td class=SEntry><a href="#Structures" >Structures</a></td><td class=SDescription></td></tr><tr class="SClass"><td class=SEntry><a href="#IMAGE_INFO" >IMAGE_INFO</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#IMAGE_INFO.Variables" >Variables</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#IMAGE_INFO.width" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">width</a></td><td class=SDescription>Contains the width of the image</td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#IMAGE_INFO.height" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">height</a></td><td class=SDescription>Contains the height of the image</td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#IMAGE_INFO.format" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">format</a></td><td class=SDescription>Contains the format of the image. </td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#IMAGE_INFO.data" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">data</a></td><td class=SDescription>Pointer to the image data.</td></tr><tr class="SClass"><td class=SEntry><a href="#VIDEO_MODE" >VIDEO_MODE</a></td><td class=SDescription></td></tr><tr class="SSection"><td class=SEntry><a href="#Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Quads" >Quads</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_quads_begin" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">gfx_quads_begin</a></td><td class=SDescription>Begins a quad drawing session.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_quads_end" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">gfx_quads_end</a></td><td class=SDescription>Ends a quad session.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_quads_setrotation" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">gfx_quads_setrotation</a></td><td class=SDescription>Sets the rotation to use when drawing a quad.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_quads_setsubset" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">gfx_quads_setsubset</a></td><td class=SDescription>Sets the uv coordinates to use.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_quads_setsubset_free" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">gfx_quads_setsubset_free</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_quads_drawTL" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">gfx_quads_drawTL</a></td><td class=SDescription>Draws a quad by specifying the top-left point.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_quads_draw" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">gfx_quads_draw</a></td><td class=SDescription>Draws a quad by specifying the center point.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_quads_draw_freeform" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">gfx_quads_draw_freeform</a></td><td class=SDescription>Draws a quad by specifying the corner points.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_quads_text" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')">gfx_quads_text</a></td><td class=SDescription>TODO</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Lines" >Lines</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_lines_begin" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')">gfx_lines_begin</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_lines_draw" id=link15 onMouseOver="ShowTip(event, 'tt15', 'link15')" onMouseOut="HideTip('tt15')">gfx_lines_draw</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_minimize" id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')">gfx_minimize</a></td><td class=SDescription>Minimizes the window.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_minimize" >gfx_minimize</a></td><td class=SDescription>Maximizes the window.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_lines_end" id=link17 onMouseOver="ShowTip(event, 'tt17', 'link17')" onMouseOut="HideTip('tt17')">gfx_lines_end</a></td><td class=SDescription>TODO</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Text" >Text</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_text" id=link18 onMouseOver="ShowTip(event, 'tt18', 'link18')" onMouseOut="HideTip('tt18')">gfx_text</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_text_width" id=link19 onMouseOver="ShowTip(event, 'tt19', 'link19')" onMouseOut="HideTip('tt19')">gfx_text_width</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_text_color" id=link20 onMouseOver="ShowTip(event, 'tt20', 'link20')" onMouseOut="HideTip('tt20')">gfx_text_color</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_text_set_default_font" id=link21 onMouseOver="ShowTip(event, 'tt21', 'link21')" onMouseOut="HideTip('tt21')">gfx_text_set_default_font</a></td><td class=SDescription>TODO</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Other" >Other</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_get_video_modes" id=link22 onMouseOver="ShowTip(event, 'tt22', 'link22')" onMouseOut="HideTip('tt22')">gfx_get_video_modes</a></td><td class=SDescription>Fetches a list of all the available video modes.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_load_png" id=link23 onMouseOver="ShowTip(event, 'tt23', 'link23')" onMouseOut="HideTip('tt23')">gfx_load_png</a></td><td class=SDescription>Loads a PNG image from disk.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_load_texture" id=link24 onMouseOver="ShowTip(event, 'tt24', 'link24')" onMouseOut="HideTip('tt24')">gfx_load_texture</a></td><td class=SDescription>Loads a texture from a file. </td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_load_texture_raw" id=link25 onMouseOver="ShowTip(event, 'tt25', 'link25')" onMouseOut="HideTip('tt25')">gfx_load_texture_raw</a></td><td class=SDescription>Loads a texture from memory.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_texture_set" id=link26 onMouseOver="ShowTip(event, 'tt26', 'link26')" onMouseOut="HideTip('tt26')">gfx_texture_set</a></td><td class=SDescription>Sets the active texture.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_unload_texture" id=link27 onMouseOver="ShowTip(event, 'tt27', 'link27')" onMouseOut="HideTip('tt27')">gfx_unload_texture</a></td><td class=SDescription>Unloads a texture.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_clear" id=link28 onMouseOver="ShowTip(event, 'tt28', 'link28')" onMouseOut="HideTip('tt28')">gfx_clear</a></td><td class=SDescription>Clears the screen with the specified color.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_screenaspect" id=link29 onMouseOver="ShowTip(event, 'tt29', 'link29')" onMouseOut="HideTip('tt29')">gfx_screenaspect</a></td><td class=SDescription>Returns the aspect ratio between width and height.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_screenwidth" id=link30 onMouseOver="ShowTip(event, 'tt30', 'link30')" onMouseOut="HideTip('tt30')">gfx_screenwidth</a></td><td class=SDescription>Returns the screen width.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_screenheight" id=link31 onMouseOver="ShowTip(event, 'tt31', 'link31')" onMouseOut="HideTip('tt31')">gfx_screenheight</a></td><td class=SDescription>Returns the screen height.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_mapscreen" id=link32 onMouseOver="ShowTip(event, 'tt32', 'link32')" onMouseOut="HideTip('tt32')">gfx_mapscreen</a></td><td class=SDescription>Specifies the coordinate system for the screen.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_blend_normal" id=link33 onMouseOver="ShowTip(event, 'tt33', 'link33')" onMouseOut="HideTip('tt33')">gfx_blend_normal</a></td><td class=SDescription>Set the active blending mode to normal (src, 1-src).</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_blend_additive" id=link34 onMouseOver="ShowTip(event, 'tt34', 'link34')" onMouseOut="HideTip('tt34')">gfx_blend_additive</a></td><td class=SDescription>Set the active blending mode to additive (src, one).</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_blend_none" id=link35 onMouseOver="ShowTip(event, 'tt35', 'link35')" onMouseOut="HideTip('tt35')">gfx_blend_none</a></td><td class=SDescription>Disables blending</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_setcolorvertex" id=link36 onMouseOver="ShowTip(event, 'tt36', 'link36')" onMouseOut="HideTip('tt36')">gfx_setcolorvertex</a></td><td class=SDescription>Sets the color of a vertex.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_setcolor" id=link37 onMouseOver="ShowTip(event, 'tt37', 'link37')" onMouseOut="HideTip('tt37')">gfx_setcolor</a></td><td class=SDescription>Sets the color of all the vertices.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_getscreen" id=link38 onMouseOver="ShowTip(event, 'tt38', 'link38')" onMouseOut="HideTip('tt38')">gfx_getscreen</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_memory_usage" id=link39 onMouseOver="ShowTip(event, 'tt39', 'link39')" onMouseOut="HideTip('tt39')">gfx_memory_usage</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_screenshot" id=link40 onMouseOver="ShowTip(event, 'tt40', 'link40')" onMouseOut="HideTip('tt40')">gfx_screenshot</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_screenshot_direct" id=link41 onMouseOver="ShowTip(event, 'tt41', 'link41')" onMouseOut="HideTip('tt41')">gfx_screenshot_direct</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#gfx_clip_enable" id=link42 onMouseOver="ShowTip(event, 'tt42', 'link42')" onMouseOut="HideTip('tt42')">gfx_clip_enable</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#gfx_clip_disable" id=link43 onMouseOver="ShowTip(event, 'tt43', 'link43')" onMouseOut="HideTip('tt43')">gfx_clip_disable</a></td><td class=SDescription>TODO</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
 
 <div class="CSection"><div class=CTopic><h2 class=CTitle><a name="Structures"></a>Structures</h2><div class=CBody></div></div></div>
 
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="IMAGE_INFO"></a>IMAGE_INFO</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="SGroup"><td class=SEntry><a href="#IMAGE_INFO.Variables" >Variables</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent1 SMarked"><td class=SEntry><a href="#IMAGE_INFO.width" id=link42 onMouseOver="ShowTip(event, 'tt1', 'link42')" onMouseOut="HideTip('tt1')">width</a></td><td class=SDescription>Contains the width of the image</td></tr><tr class="SVariable SIndent1"><td class=SEntry><a href="#IMAGE_INFO.height" id=link43 onMouseOver="ShowTip(event, 'tt2', 'link43')" onMouseOut="HideTip('tt2')">height</a></td><td class=SDescription>Contains the height of the image</td></tr><tr class="SVariable SIndent1 SMarked"><td class=SEntry><a href="#IMAGE_INFO.format" id=link44 onMouseOver="ShowTip(event, 'tt3', 'link44')" onMouseOut="HideTip('tt3')">format</a></td><td class=SDescription>Contains the format of the image. </td></tr><tr class="SVariable SIndent1"><td class=SEntry><a href="#IMAGE_INFO.data" id=link45 onMouseOver="ShowTip(event, 'tt4', 'link45')" onMouseOut="HideTip('tt4')">data</a></td><td class=SDescription>Pointer to the image data.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
+<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="IMAGE_INFO"></a>IMAGE_INFO</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="SGroup"><td class=SEntry><a href="#IMAGE_INFO.Variables" >Variables</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent1 SMarked"><td class=SEntry><a href="#IMAGE_INFO.width" id=link44 onMouseOver="ShowTip(event, 'tt1', 'link44')" onMouseOut="HideTip('tt1')">width</a></td><td class=SDescription>Contains the width of the image</td></tr><tr class="SVariable SIndent1"><td class=SEntry><a href="#IMAGE_INFO.height" id=link45 onMouseOver="ShowTip(event, 'tt2', 'link45')" onMouseOut="HideTip('tt2')">height</a></td><td class=SDescription>Contains the height of the image</td></tr><tr class="SVariable SIndent1 SMarked"><td class=SEntry><a href="#IMAGE_INFO.format" id=link46 onMouseOver="ShowTip(event, 'tt3', 'link46')" onMouseOut="HideTip('tt3')">format</a></td><td class=SDescription>Contains the format of the image. </td></tr><tr class="SVariable SIndent1"><td class=SEntry><a href="#IMAGE_INFO.data" id=link47 onMouseOver="ShowTip(event, 'tt4', 'link47')" onMouseOut="HideTip('tt4')">data</a></td><td class=SDescription>Pointer to the image data.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
 
 <div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="IMAGE_INFO.Variables"></a>Variables</h3></div></div>
 
@@ -29,23 +29,23 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CClass"><div class=CTopic><h2 class=CTitle><a name="VIDEO_MODE"></a>VIDEO_MODE</h2><div class=CBody></div></div></div>
 
-<div class="CSection"><div class=CTopic><h2 class=CTitle><a name="Functions"></a>Functions</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="SGroup"><td class=SEntry><a href="#Quads" >Quads</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_quads_begin" id=link46 onMouseOver="ShowTip(event, 'tt5', 'link46')" onMouseOut="HideTip('tt5')">gfx_quads_begin</a></td><td class=SDescription>Begins a quad drawing session.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_quads_end" id=link47 onMouseOver="ShowTip(event, 'tt6', 'link47')" onMouseOut="HideTip('tt6')">gfx_quads_end</a></td><td class=SDescription>Ends a quad session.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_quads_setrotation" id=link48 onMouseOver="ShowTip(event, 'tt7', 'link48')" onMouseOut="HideTip('tt7')">gfx_quads_setrotation</a></td><td class=SDescription>Sets the rotation to use when drawing a quad.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_quads_setsubset" id=link49 onMouseOver="ShowTip(event, 'tt8', 'link49')" onMouseOut="HideTip('tt8')">gfx_quads_setsubset</a></td><td class=SDescription>Sets the uv coordinates to use.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_quads_setsubset_free" id=link50 onMouseOver="ShowTip(event, 'tt9', 'link50')" onMouseOut="HideTip('tt9')">gfx_quads_setsubset_free</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_quads_drawTL" id=link51 onMouseOver="ShowTip(event, 'tt10', 'link51')" onMouseOut="HideTip('tt10')">gfx_quads_drawTL</a></td><td class=SDescription>Draws a quad by specifying the top-left point.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_quads_draw" id=link52 onMouseOver="ShowTip(event, 'tt11', 'link52')" onMouseOut="HideTip('tt11')">gfx_quads_draw</a></td><td class=SDescription>Draws a quad by specifying the center point.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_quads_draw_freeform" id=link53 onMouseOver="ShowTip(event, 'tt12', 'link53')" onMouseOut="HideTip('tt12')">gfx_quads_draw_freeform</a></td><td class=SDescription>Draws a quad by specifying the corner points.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_quads_text" id=link54 onMouseOver="ShowTip(event, 'tt13', 'link54')" onMouseOut="HideTip('tt13')">gfx_quads_text</a></td><td class=SDescription>TODO</td></tr><tr class="SGroup"><td class=SEntry><a href="#Lines" >Lines</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_lines_begin" id=link55 onMouseOver="ShowTip(event, 'tt14', 'link55')" onMouseOut="HideTip('tt14')">gfx_lines_begin</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_lines_draw" id=link56 onMouseOver="ShowTip(event, 'tt15', 'link56')" onMouseOut="HideTip('tt15')">gfx_lines_draw</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_lines_end" id=link57 onMouseOver="ShowTip(event, 'tt16', 'link57')" onMouseOut="HideTip('tt16')">gfx_lines_end</a></td><td class=SDescription>TODO</td></tr><tr class="SGroup"><td class=SEntry><a href="#Text" >Text</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_text" id=link58 onMouseOver="ShowTip(event, 'tt17', 'link58')" onMouseOut="HideTip('tt17')">gfx_text</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_text_width" id=link59 onMouseOver="ShowTip(event, 'tt18', 'link59')" onMouseOut="HideTip('tt18')">gfx_text_width</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_text_color" id=link60 onMouseOver="ShowTip(event, 'tt19', 'link60')" onMouseOut="HideTip('tt19')">gfx_text_color</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_text_set_default_font" id=link61 onMouseOver="ShowTip(event, 'tt20', 'link61')" onMouseOut="HideTip('tt20')">gfx_text_set_default_font</a></td><td class=SDescription>TODO</td></tr><tr class="SGroup"><td class=SEntry><a href="#Other" >Other</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_get_video_modes" id=link62 onMouseOver="ShowTip(event, 'tt21', 'link62')" onMouseOut="HideTip('tt21')">gfx_get_video_modes</a></td><td class=SDescription>Fetches a list of all the available video modes.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_load_png" id=link63 onMouseOver="ShowTip(event, 'tt22', 'link63')" onMouseOut="HideTip('tt22')">gfx_load_png</a></td><td class=SDescription>Loads a PNG image from disk.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_load_texture" id=link64 onMouseOver="ShowTip(event, 'tt23', 'link64')" onMouseOut="HideTip('tt23')">gfx_load_texture</a></td><td class=SDescription>Loads a texture from a file. </td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_load_texture_raw" id=link65 onMouseOver="ShowTip(event, 'tt24', 'link65')" onMouseOut="HideTip('tt24')">gfx_load_texture_raw</a></td><td class=SDescription>Loads a texture from memory.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_texture_set" id=link66 onMouseOver="ShowTip(event, 'tt25', 'link66')" onMouseOut="HideTip('tt25')">gfx_texture_set</a></td><td class=SDescription>Sets the active texture.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_unload_texture" id=link67 onMouseOver="ShowTip(event, 'tt26', 'link67')" onMouseOut="HideTip('tt26')">gfx_unload_texture</a></td><td class=SDescription>Unloads a texture.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_clear" id=link68 onMouseOver="ShowTip(event, 'tt27', 'link68')" onMouseOut="HideTip('tt27')">gfx_clear</a></td><td class=SDescription>Clears the screen with the specified color.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_screenaspect" id=link69 onMouseOver="ShowTip(event, 'tt28', 'link69')" onMouseOut="HideTip('tt28')">gfx_screenaspect</a></td><td class=SDescription>Returns the aspect ratio between width and height.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_screenwidth" id=link70 onMouseOver="ShowTip(event, 'tt29', 'link70')" onMouseOut="HideTip('tt29')">gfx_screenwidth</a></td><td class=SDescription>Returns the screen width.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_screenheight" id=link71 onMouseOver="ShowTip(event, 'tt30', 'link71')" onMouseOut="HideTip('tt30')">gfx_screenheight</a></td><td class=SDescription>Returns the screen height.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_mapscreen" id=link72 onMouseOver="ShowTip(event, 'tt31', 'link72')" onMouseOut="HideTip('tt31')">gfx_mapscreen</a></td><td class=SDescription>Specifies the coordinate system for the screen.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_blend_normal" id=link73 onMouseOver="ShowTip(event, 'tt32', 'link73')" onMouseOut="HideTip('tt32')">gfx_blend_normal</a></td><td class=SDescription>Set the active blending mode to normal (src, 1-src).</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_blend_additive" id=link74 onMouseOver="ShowTip(event, 'tt33', 'link74')" onMouseOut="HideTip('tt33')">gfx_blend_additive</a></td><td class=SDescription>Set the active blending mode to additive (src, one).</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_blend_none" id=link75 onMouseOver="ShowTip(event, 'tt34', 'link75')" onMouseOut="HideTip('tt34')">gfx_blend_none</a></td><td class=SDescription>Disables blending</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_setcolorvertex" id=link76 onMouseOver="ShowTip(event, 'tt35', 'link76')" onMouseOut="HideTip('tt35')">gfx_setcolorvertex</a></td><td class=SDescription>Sets the color of a vertex.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_setcolor" id=link77 onMouseOver="ShowTip(event, 'tt36', 'link77')" onMouseOut="HideTip('tt36')">gfx_setcolor</a></td><td class=SDescription>Sets the color of all the vertices.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_getscreen" id=link78 onMouseOver="ShowTip(event, 'tt37', 'link78')" onMouseOut="HideTip('tt37')">gfx_getscreen</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_memory_usage" id=link79 onMouseOver="ShowTip(event, 'tt38', 'link79')" onMouseOut="HideTip('tt38')">gfx_memory_usage</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_screenshot" id=link80 onMouseOver="ShowTip(event, 'tt39', 'link80')" onMouseOut="HideTip('tt39')">gfx_screenshot</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_clip_enable" id=link81 onMouseOver="ShowTip(event, 'tt40', 'link81')" onMouseOut="HideTip('tt40')">gfx_clip_enable</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_clip_disable" id=link82 onMouseOver="ShowTip(event, 'tt41', 'link82')" onMouseOut="HideTip('tt41')">gfx_clip_disable</a></td><td class=SDescription>TODO</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
+<div class="CSection"><div class=CTopic><h2 class=CTitle><a name="Functions"></a>Functions</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="SGroup"><td class=SEntry><a href="#Quads" >Quads</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_quads_begin" id=link48 onMouseOver="ShowTip(event, 'tt5', 'link48')" onMouseOut="HideTip('tt5')">gfx_quads_begin</a></td><td class=SDescription>Begins a quad drawing session.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_quads_end" id=link49 onMouseOver="ShowTip(event, 'tt6', 'link49')" onMouseOut="HideTip('tt6')">gfx_quads_end</a></td><td class=SDescription>Ends a quad session.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_quads_setrotation" id=link50 onMouseOver="ShowTip(event, 'tt7', 'link50')" onMouseOut="HideTip('tt7')">gfx_quads_setrotation</a></td><td class=SDescription>Sets the rotation to use when drawing a quad.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_quads_setsubset" id=link51 onMouseOver="ShowTip(event, 'tt8', 'link51')" onMouseOut="HideTip('tt8')">gfx_quads_setsubset</a></td><td class=SDescription>Sets the uv coordinates to use.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_quads_setsubset_free" id=link52 onMouseOver="ShowTip(event, 'tt9', 'link52')" onMouseOut="HideTip('tt9')">gfx_quads_setsubset_free</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_quads_drawTL" id=link53 onMouseOver="ShowTip(event, 'tt10', 'link53')" onMouseOut="HideTip('tt10')">gfx_quads_drawTL</a></td><td class=SDescription>Draws a quad by specifying the top-left point.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_quads_draw" id=link54 onMouseOver="ShowTip(event, 'tt11', 'link54')" onMouseOut="HideTip('tt11')">gfx_quads_draw</a></td><td class=SDescription>Draws a quad by specifying the center point.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_quads_draw_freeform" id=link55 onMouseOver="ShowTip(event, 'tt12', 'link55')" onMouseOut="HideTip('tt12')">gfx_quads_draw_freeform</a></td><td class=SDescription>Draws a quad by specifying the corner points.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_quads_text" id=link56 onMouseOver="ShowTip(event, 'tt13', 'link56')" onMouseOut="HideTip('tt13')">gfx_quads_text</a></td><td class=SDescription>TODO</td></tr><tr class="SGroup"><td class=SEntry><a href="#Lines" >Lines</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_lines_begin" id=link57 onMouseOver="ShowTip(event, 'tt14', 'link57')" onMouseOut="HideTip('tt14')">gfx_lines_begin</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_lines_draw" id=link58 onMouseOver="ShowTip(event, 'tt15', 'link58')" onMouseOut="HideTip('tt15')">gfx_lines_draw</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_minimize" id=link59 onMouseOver="ShowTip(event, 'tt16', 'link59')" onMouseOut="HideTip('tt16')">gfx_minimize</a></td><td class=SDescription>Minimizes the window.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_minimize" >gfx_minimize</a></td><td class=SDescription>Maximizes the window.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_lines_end" id=link60 onMouseOver="ShowTip(event, 'tt17', 'link60')" onMouseOut="HideTip('tt17')">gfx_lines_end</a></td><td class=SDescription>TODO</td></tr><tr class="SGroup"><td class=SEntry><a href="#Text" >Text</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_text" id=link61 onMouseOver="ShowTip(event, 'tt18', 'link61')" onMouseOut="HideTip('tt18')">gfx_text</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_text_width" id=link62 onMouseOver="ShowTip(event, 'tt19', 'link62')" onMouseOut="HideTip('tt19')">gfx_text_width</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_text_color" id=link63 onMouseOver="ShowTip(event, 'tt20', 'link63')" onMouseOut="HideTip('tt20')">gfx_text_color</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_text_set_default_font" id=link64 onMouseOver="ShowTip(event, 'tt21', 'link64')" onMouseOut="HideTip('tt21')">gfx_text_set_default_font</a></td><td class=SDescription>TODO</td></tr><tr class="SGroup"><td class=SEntry><a href="#Other" >Other</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_get_video_modes" id=link65 onMouseOver="ShowTip(event, 'tt22', 'link65')" onMouseOut="HideTip('tt22')">gfx_get_video_modes</a></td><td class=SDescription>Fetches a list of all the available video modes.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_load_png" id=link66 onMouseOver="ShowTip(event, 'tt23', 'link66')" onMouseOut="HideTip('tt23')">gfx_load_png</a></td><td class=SDescription>Loads a PNG image from disk.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_load_texture" id=link67 onMouseOver="ShowTip(event, 'tt24', 'link67')" onMouseOut="HideTip('tt24')">gfx_load_texture</a></td><td class=SDescription>Loads a texture from a file. </td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_load_texture_raw" id=link68 onMouseOver="ShowTip(event, 'tt25', 'link68')" onMouseOut="HideTip('tt25')">gfx_load_texture_raw</a></td><td class=SDescription>Loads a texture from memory.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_texture_set" id=link69 onMouseOver="ShowTip(event, 'tt26', 'link69')" onMouseOut="HideTip('tt26')">gfx_texture_set</a></td><td class=SDescription>Sets the active texture.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_unload_texture" id=link70 onMouseOver="ShowTip(event, 'tt27', 'link70')" onMouseOut="HideTip('tt27')">gfx_unload_texture</a></td><td class=SDescription>Unloads a texture.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_clear" id=link71 onMouseOver="ShowTip(event, 'tt28', 'link71')" onMouseOut="HideTip('tt28')">gfx_clear</a></td><td class=SDescription>Clears the screen with the specified color.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_screenaspect" id=link72 onMouseOver="ShowTip(event, 'tt29', 'link72')" onMouseOut="HideTip('tt29')">gfx_screenaspect</a></td><td class=SDescription>Returns the aspect ratio between width and height.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_screenwidth" id=link73 onMouseOver="ShowTip(event, 'tt30', 'link73')" onMouseOut="HideTip('tt30')">gfx_screenwidth</a></td><td class=SDescription>Returns the screen width.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_screenheight" id=link74 onMouseOver="ShowTip(event, 'tt31', 'link74')" onMouseOut="HideTip('tt31')">gfx_screenheight</a></td><td class=SDescription>Returns the screen height.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_mapscreen" id=link75 onMouseOver="ShowTip(event, 'tt32', 'link75')" onMouseOut="HideTip('tt32')">gfx_mapscreen</a></td><td class=SDescription>Specifies the coordinate system for the screen.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_blend_normal" id=link76 onMouseOver="ShowTip(event, 'tt33', 'link76')" onMouseOut="HideTip('tt33')">gfx_blend_normal</a></td><td class=SDescription>Set the active blending mode to normal (src, 1-src).</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_blend_additive" id=link77 onMouseOver="ShowTip(event, 'tt34', 'link77')" onMouseOut="HideTip('tt34')">gfx_blend_additive</a></td><td class=SDescription>Set the active blending mode to additive (src, one).</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_blend_none" id=link78 onMouseOver="ShowTip(event, 'tt35', 'link78')" onMouseOut="HideTip('tt35')">gfx_blend_none</a></td><td class=SDescription>Disables blending</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_setcolorvertex" id=link79 onMouseOver="ShowTip(event, 'tt36', 'link79')" onMouseOut="HideTip('tt36')">gfx_setcolorvertex</a></td><td class=SDescription>Sets the color of a vertex.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_setcolor" id=link80 onMouseOver="ShowTip(event, 'tt37', 'link80')" onMouseOut="HideTip('tt37')">gfx_setcolor</a></td><td class=SDescription>Sets the color of all the vertices.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_getscreen" id=link81 onMouseOver="ShowTip(event, 'tt38', 'link81')" onMouseOut="HideTip('tt38')">gfx_getscreen</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_memory_usage" id=link82 onMouseOver="ShowTip(event, 'tt39', 'link82')" onMouseOut="HideTip('tt39')">gfx_memory_usage</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_screenshot" id=link83 onMouseOver="ShowTip(event, 'tt40', 'link83')" onMouseOut="HideTip('tt40')">gfx_screenshot</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_screenshot_direct" id=link84 onMouseOver="ShowTip(event, 'tt41', 'link84')" onMouseOut="HideTip('tt41')">gfx_screenshot_direct</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#gfx_clip_enable" id=link85 onMouseOver="ShowTip(event, 'tt42', 'link85')" onMouseOut="HideTip('tt42')">gfx_clip_enable</a></td><td class=SDescription>TODO</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#gfx_clip_disable" id=link86 onMouseOver="ShowTip(event, 'tt43', 'link86')" onMouseOut="HideTip('tt43')">gfx_clip_disable</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="Quads"></a>Quads</h3></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_quads_begin"></a>gfx_quads_begin</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_quads_begin()</td></tr></table></blockquote><p>Begins a quad drawing session.</p><h4 class=CHeading>Remarks</h4><p>This functions resets the rotation, color and subset.&nbsp; End the session by using <a href="#gfx_quads_end" class=LFunction id=link83 onMouseOver="ShowTip(event, 'tt6', 'link83')" onMouseOut="HideTip('tt6')">gfx_quads_end</a>.&nbsp; You can&rsquo;t change texture or blending mode during a session.</p><h4 class=CHeading>See Also</h4><p><a href="#gfx_quads_end" class=LFunction id=link84 onMouseOver="ShowTip(event, 'tt6', 'link84')" onMouseOut="HideTip('tt6')">gfx_quads_end</a></p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_quads_begin"></a>gfx_quads_begin</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_quads_begin()</td></tr></table></blockquote><p>Begins a quad drawing session.</p><h4 class=CHeading>Remarks</h4><p>This functions resets the rotation, color and subset.&nbsp; End the session by using <a href="#gfx_quads_end" class=LFunction id=link87 onMouseOver="ShowTip(event, 'tt6', 'link87')" onMouseOut="HideTip('tt6')">gfx_quads_end</a>.&nbsp; You can&rsquo;t change texture or blending mode during a session.</p><h4 class=CHeading>See Also</h4><p><a href="#gfx_quads_end" class=LFunction id=link88 onMouseOver="ShowTip(event, 'tt6', 'link88')" onMouseOut="HideTip('tt6')">gfx_quads_end</a></p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_quads_end"></a>gfx_quads_end</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_quads_end()</td></tr></table></blockquote><p>Ends a quad session.</p><h4 class=CHeading>See Also</h4><p><a href="#gfx_quads_begin" class=LFunction id=link85 onMouseOver="ShowTip(event, 'tt5', 'link85')" onMouseOut="HideTip('tt5')">gfx_quads_begin</a></p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_quads_end"></a>gfx_quads_end</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_quads_end()</td></tr></table></blockquote><p>Ends a quad session.</p><h4 class=CHeading>See Also</h4><p><a href="#gfx_quads_begin" class=LFunction id=link89 onMouseOver="ShowTip(event, 'tt5', 'link89')" onMouseOut="HideTip('tt5')">gfx_quads_begin</a></p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_quads_setrotation"></a>gfx_quads_setrotation</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 gfx_quads_setrotation(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>angle</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Sets the rotation to use when drawing a quad.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>angle</td><td class=CDLDescription>Angle in radians.</td></tr></table><h4 class=CHeading>Remarks</h4><p>The angle is reset when <a href="#gfx_quads_begin" class=LFunction id=link86 onMouseOver="ShowTip(event, 'tt5', 'link86')" onMouseOut="HideTip('tt5')">gfx_quads_begin</a> is called.</p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_quads_setrotation"></a>gfx_quads_setrotation</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 gfx_quads_setrotation(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>angle</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Sets the rotation to use when drawing a quad.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>angle</td><td class=CDLDescription>Angle in radians.</td></tr></table><h4 class=CHeading>Remarks</h4><p>The angle is reset when <a href="#gfx_quads_begin" class=LFunction id=link90 onMouseOver="ShowTip(event, 'tt5', 'link90')" onMouseOut="HideTip('tt5')">gfx_quads_begin</a> is called.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_quads_setsubset"></a>gfx_quads_setsubset</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 gfx_quads_setsubset(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_u,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_v,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_u,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_v</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Sets the uv coordinates to use.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>tl_u</td><td class=CDLDescription>Top-left U value.</td></tr><tr><td class=CDLEntry>tl_v</td><td class=CDLDescription>Top-left V value.</td></tr><tr><td class=CDLEntry>br_u</td><td class=CDLDescription>Bottom-right U value.</td></tr><tr><td class=CDLEntry>br_v</td><td class=CDLDescription>Bottom-right V value.</td></tr></table><h4 class=CHeading>Remarks</h4><p>O,0 is top-left of the texture and 1,1 is bottom-right.&nbsp; The color is reset when <a href="#gfx_quads_begin" class=LFunction id=link87 onMouseOver="ShowTip(event, 'tt5', 'link87')" onMouseOut="HideTip('tt5')">gfx_quads_begin</a> is called.</p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_quads_setsubset"></a>gfx_quads_setsubset</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 gfx_quads_setsubset(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_u,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_v,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_u,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_v</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Sets the uv coordinates to use.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>tl_u</td><td class=CDLDescription>Top-left U value.</td></tr><tr><td class=CDLEntry>tl_v</td><td class=CDLDescription>Top-left V value.</td></tr><tr><td class=CDLEntry>br_u</td><td class=CDLDescription>Bottom-right U value.</td></tr><tr><td class=CDLEntry>br_v</td><td class=CDLDescription>Bottom-right V value.</td></tr></table><h4 class=CHeading>Remarks</h4><p>O,0 is top-left of the texture and 1,1 is bottom-right.&nbsp; The color is reset when <a href="#gfx_quads_begin" class=LFunction id=link91 onMouseOver="ShowTip(event, 'tt5', 'link91')" onMouseOut="HideTip('tt5')">gfx_quads_begin</a> is called.</p></div></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_quads_setsubset_free"></a>gfx_quads_setsubset_free</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 gfx_quads_setsubset_free(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x3,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y3</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="gfx_quads_drawTL"></a>gfx_quads_drawTL</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 gfx_quads_drawTL(</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></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>width,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>height</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Draws a quad by specifying the top-left point.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>x</td><td class=CDLDescription>X coordinate of the top-left corner.</td></tr><tr><td class=CDLEntry>y</td><td class=CDLDescription>Y coordinate of the top-left corner.</td></tr><tr><td class=CDLEntry>width</td><td class=CDLDescription>Width of the quad.</td></tr><tr><td class=CDLEntry>height</td><td class=CDLDescription>Height of the quad.</td></tr></table><h4 class=CHeading>Remarks</h4><p>Rotation still occurs from the center of the quad.&nbsp; You must call <a href="#gfx_quads_begin" class=LFunction id=link88 onMouseOver="ShowTip(event, 'tt5', 'link88')" onMouseOut="HideTip('tt5')">gfx_quads_begin</a> before calling this function.</p><h4 class=CHeading>See Also</h4><p>&lt;gfx_quads_draw, gfx_quads_draw_freeform&gt;</p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_quads_drawTL"></a>gfx_quads_drawTL</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 gfx_quads_drawTL(</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></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>width,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>height</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Draws a quad by specifying the top-left point.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>x</td><td class=CDLDescription>X coordinate of the top-left corner.</td></tr><tr><td class=CDLEntry>y</td><td class=CDLDescription>Y coordinate of the top-left corner.</td></tr><tr><td class=CDLEntry>width</td><td class=CDLDescription>Width of the quad.</td></tr><tr><td class=CDLEntry>height</td><td class=CDLDescription>Height of the quad.</td></tr></table><h4 class=CHeading>Remarks</h4><p>Rotation still occurs from the center of the quad.&nbsp; You must call <a href="#gfx_quads_begin" class=LFunction id=link92 onMouseOver="ShowTip(event, 'tt5', 'link92')" onMouseOut="HideTip('tt5')">gfx_quads_begin</a> before calling this function.</p><h4 class=CHeading>See Also</h4><p>&lt;gfx_quads_draw, gfx_quads_draw_freeform&gt;</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_quads_draw"></a>gfx_quads_draw</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 gfx_quads_draw(</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></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>w,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>h</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Draws a quad by specifying the center point.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>x</td><td class=CDLDescription>X coordinate of the center.</td></tr><tr><td class=CDLEntry>y</td><td class=CDLDescription>Y coordinate of the center.</td></tr><tr><td class=CDLEntry>width</td><td class=CDLDescription>Width of the quad.</td></tr><tr><td class=CDLEntry>height</td><td class=CDLDescription>Height of the quad.</td></tr></table><h4 class=CHeading>Remarks</h4><p>You must call <a href="#gfx_quads_begin" class=LFunction id=link89 onMouseOver="ShowTip(event, 'tt5', 'link89')" onMouseOut="HideTip('tt5')">gfx_quads_begin</a> before calling this function.</p><h4 class=CHeading>See Also</h4><p>&lt;gfx_quads_drawTL, gfx_quads_draw_freeform&gt;</p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_quads_draw"></a>gfx_quads_draw</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 gfx_quads_draw(</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></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>w,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>h</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Draws a quad by specifying the center point.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>x</td><td class=CDLDescription>X coordinate of the center.</td></tr><tr><td class=CDLEntry>y</td><td class=CDLDescription>Y coordinate of the center.</td></tr><tr><td class=CDLEntry>width</td><td class=CDLDescription>Width of the quad.</td></tr><tr><td class=CDLEntry>height</td><td class=CDLDescription>Height of the quad.</td></tr></table><h4 class=CHeading>Remarks</h4><p>You must call <a href="#gfx_quads_begin" class=LFunction id=link93 onMouseOver="ShowTip(event, 'tt5', 'link93')" onMouseOut="HideTip('tt5')">gfx_quads_begin</a> before calling this function.</p><h4 class=CHeading>See Also</h4><p>&lt;gfx_quads_drawTL, gfx_quads_draw_freeform&gt;</p></div></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_quads_draw_freeform"></a>gfx_quads_draw_freeform</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 gfx_quads_draw_freeform(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x3,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y3</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Draws a quad by specifying the corner points.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>x0, y0</td><td class=CDLDescription>Coordinates of the upper left corner.</td></tr><tr><td class=CDLEntry>x1, y1</td><td class=CDLDescription>Coordinates of the upper right corner.</td></tr><tr><td class=CDLEntry>x2, y2</td><td class=CDLDescription>Coordinates of the lower left corner.&nbsp; // TODO: DOUBLE CHECK!!!</td></tr><tr><td class=CDLEntry>x3, y3</td><td class=CDLDescription>Coordinates of the lower right corner.&nbsp; // TODO: DOUBLE CHECK!!!</td></tr></table><h4 class=CHeading>See Also</h4><p>&lt;gfx_quads_draw, gfx_quads_drawTL&gt;</p></div></div></div>
 
@@ -57,6 +57,10 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_lines_draw"></a>gfx_lines_draw</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 gfx_lines_draw(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y1</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="gfx_minimize"></a>gfx_minimize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_minimize()</td></tr></table></blockquote><p>Minimizes the window.</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="gfx_minimize"></a>gfx_minimize</h3><div class=CBody><p>Maximizes the window.</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="gfx_lines_end"></a>gfx_lines_end</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_lines_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="CGroup"><div class=CTopic><h3 class=CTitle><a name="Text"></a>Text</h3></div></div>
@@ -73,41 +77,43 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_get_video_modes"></a>gfx_get_video_modes</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 gfx_get_video_modes(</td><td class=PType nowrap>VIDEO_MODE&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>list,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>maxcount</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Fetches a list of all the available video modes.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>list</td><td class=CDLDescription>An array to recive the modes.&nbsp; Must be able to contain maxcount number of modes.</td></tr><tr><td class=CDLEntry>maxcount</td><td class=CDLDescription>The maximum number of modes to fetch.</td></tr></table><h4 class=CHeading>Returns</h4><p>The number of video modes that was fetched.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_load_png"></a>gfx_load_png</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 gfx_load_png(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>IMAGE_INFO&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>img,</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>filename</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Loads a PNG image from disk.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>img</td><td class=CDLDescription>Pointer to an structure to be filled out with the image information.</td></tr><tr><td class=CDLEntry>filename</td><td class=CDLDescription>Filename of the image to load.</td></tr></table><h4 class=CHeading>Returns</h4><p>Returns non-zero on success and zero on error.</p><h4 class=CHeading>Remarks</h4><p>The caller are responsible for cleaning up the allocated memory in the IMAGE_INFO structure.</p><h4 class=CHeading>See Also</h4><p><a href="#gfx_load_texture" class=LFunction id=link90 onMouseOver="ShowTip(event, 'tt23', 'link90')" onMouseOut="HideTip('tt23')">gfx_load_texture</a></p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_load_png"></a>gfx_load_png</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 gfx_load_png(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>IMAGE_INFO&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>img,</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>filename</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Loads a PNG image from disk.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>img</td><td class=CDLDescription>Pointer to an structure to be filled out with the image information.</td></tr><tr><td class=CDLEntry>filename</td><td class=CDLDescription>Filename of the image to load.</td></tr></table><h4 class=CHeading>Returns</h4><p>Returns non-zero on success and zero on error.</p><h4 class=CHeading>Remarks</h4><p>The caller are responsible for cleaning up the allocated memory in the IMAGE_INFO structure.</p><h4 class=CHeading>See Also</h4><p><a href="#gfx_load_texture" class=LFunction id=link94 onMouseOver="ShowTip(event, 'tt24', 'link94')" onMouseOut="HideTip('tt24')">gfx_load_texture</a></p></div></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_load_texture"></a>gfx_load_texture</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 gfx_load_texture(</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></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>store_format,</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>flags</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Loads a texture from a file.&nbsp; TGA and PNG supported.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>filename</td><td class=CDLDescription>Null terminated string to the file to load.</td></tr><tr><td class=CDLEntry>store_format</td><td class=CDLDescription>What format to store on gfx card as.</td></tr><tr><td class=CDLEntry>flags</td><td class=CDLDescription>controls how the texture is uploaded</td></tr></table><h4 class=CHeading>Returns</h4><p>An ID to the texture.&nbsp; -1 on failure.</p><h4 class=CHeading>See Also</h4><p>&lt;gfx_unload_texture, gfx_load_png&gt;</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_load_texture_raw"></a>gfx_load_texture_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>int gfx_load_texture_raw(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>w,</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>h,</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>format,</td></tr><tr><td></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>store_format,</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>flags</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Loads a texture from memory.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>w</td><td class=CDLDescription>Width of the texture.</td></tr><tr><td class=CDLEntry>h</td><td class=CDLDescription>Height of the texture.</td></tr><tr><td class=CDLEntry>data</td><td class=CDLDescription>Pointer to the pixel data.</td></tr><tr><td class=CDLEntry>format</td><td class=CDLDescription>Format of the pixel data.</td></tr><tr><td class=CDLEntry>store_format</td><td class=CDLDescription>The format to store the texture on the graphics card.</td></tr><tr><td class=CDLEntry>flags</td><td class=CDLDescription>controls how the texture is uploaded</td></tr></table><h4 class=CHeading>Returns</h4><p>An ID to the texture.&nbsp; -1 on failure.</p><h4 class=CHeading>Remarks</h4><p>The pixel data should be in RGBA format with 8 bit per component.&nbsp; So the total size of the data should be w*h*4.</p><h4 class=CHeading>See Also</h4><p><a href="#gfx_unload_texture" class=LFunction id=link91 onMouseOver="ShowTip(event, 'tt26', 'link91')" onMouseOut="HideTip('tt26')">gfx_unload_texture</a></p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_load_texture_raw"></a>gfx_load_texture_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>int gfx_load_texture_raw(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>w,</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>h,</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>format,</td></tr><tr><td></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>store_format,</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>flags</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Loads a texture from memory.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>w</td><td class=CDLDescription>Width of the texture.</td></tr><tr><td class=CDLEntry>h</td><td class=CDLDescription>Height of the texture.</td></tr><tr><td class=CDLEntry>data</td><td class=CDLDescription>Pointer to the pixel data.</td></tr><tr><td class=CDLEntry>format</td><td class=CDLDescription>Format of the pixel data.</td></tr><tr><td class=CDLEntry>store_format</td><td class=CDLDescription>The format to store the texture on the graphics card.</td></tr><tr><td class=CDLEntry>flags</td><td class=CDLDescription>controls how the texture is uploaded</td></tr></table><h4 class=CHeading>Returns</h4><p>An ID to the texture.&nbsp; -1 on failure.</p><h4 class=CHeading>Remarks</h4><p>The pixel data should be in RGBA format with 8 bit per component.&nbsp; So the total size of the data should be w*h*4.</p><h4 class=CHeading>See Also</h4><p><a href="#gfx_unload_texture" class=LFunction id=link95 onMouseOver="ShowTip(event, 'tt27', 'link95')" onMouseOut="HideTip('tt27')">gfx_unload_texture</a></p></div></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_texture_set"></a>gfx_texture_set</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 gfx_texture_set(</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>Sets the active texture.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>id</td><td class=CDLDescription>ID to the texture to set.</td></tr></table></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_unload_texture"></a>gfx_unload_texture</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 gfx_unload_texture(</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>Unloads a texture.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>id</td><td class=CDLDescription>ID to the texture to unload.</td></tr></table><h4 class=CHeading>See Also</h4><p>&lt;gfx_load_texture_tga&gt;, <a href="#gfx_load_texture_raw" class=LFunction id=link92 onMouseOver="ShowTip(event, 'tt24', 'link92')" onMouseOut="HideTip('tt24')">gfx_load_texture_raw</a></p><h4 class=CHeading>Remarks</h4><p>NOT IMPLEMENTED</p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_unload_texture"></a>gfx_unload_texture</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 gfx_unload_texture(</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>Unloads a texture.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>id</td><td class=CDLDescription>ID to the texture to unload.</td></tr></table><h4 class=CHeading>See Also</h4><p>&lt;gfx_load_texture_tga&gt;, <a href="#gfx_load_texture_raw" class=LFunction id=link96 onMouseOver="ShowTip(event, 'tt25', 'link96')" onMouseOut="HideTip('tt25')">gfx_load_texture_raw</a></p><h4 class=CHeading>Remarks</h4><p>NOT IMPLEMENTED</p></div></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_clear"></a>gfx_clear</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 gfx_clear(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Clears the screen with the specified color.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>r</td><td class=CDLDescription>Red component.</td></tr><tr><td class=CDLEntry>g</td><td class=CDLDescription>Green component.</td></tr><tr><td class=CDLEntry>b</td><td class=CDLDescription>Red component.</td></tr></table><h4 class=CHeading>Remarks</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>The value of the components are given in 0.0</td><td class=CDLDescription>1.0 ranges.</td></tr></table></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_screenaspect"></a>gfx_screenaspect</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float gfx_screenaspect()</td></tr></table></blockquote><p>Returns the aspect ratio between width and height.</p><h4 class=CHeading>See Also</h4><p><a href="#gfx_screenwidth" class=LFunction id=link93 onMouseOver="ShowTip(event, 'tt29', 'link93')" onMouseOut="HideTip('tt29')">gfx_screenwidth</a>, <a href="#gfx_screenheight" class=LFunction id=link94 onMouseOver="ShowTip(event, 'tt30', 'link94')" onMouseOut="HideTip('tt30')">gfx_screenheight</a></p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_screenaspect"></a>gfx_screenaspect</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float gfx_screenaspect()</td></tr></table></blockquote><p>Returns the aspect ratio between width and height.</p><h4 class=CHeading>See Also</h4><p><a href="#gfx_screenwidth" class=LFunction id=link97 onMouseOver="ShowTip(event, 'tt30', 'link97')" onMouseOut="HideTip('tt30')">gfx_screenwidth</a>, <a href="#gfx_screenheight" class=LFunction id=link98 onMouseOver="ShowTip(event, 'tt31', 'link98')" onMouseOut="HideTip('tt31')">gfx_screenheight</a></p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_screenwidth"></a>gfx_screenwidth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int gfx_screenwidth()</td></tr></table></blockquote><p>Returns the screen width.</p><h4 class=CHeading>See Also</h4><p><a href="#gfx_screenheight" class=LFunction id=link95 onMouseOver="ShowTip(event, 'tt30', 'link95')" onMouseOut="HideTip('tt30')">gfx_screenheight</a></p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_screenwidth"></a>gfx_screenwidth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int gfx_screenwidth()</td></tr></table></blockquote><p>Returns the screen width.</p><h4 class=CHeading>See Also</h4><p><a href="#gfx_screenheight" class=LFunction id=link99 onMouseOver="ShowTip(event, 'tt31', 'link99')" onMouseOut="HideTip('tt31')">gfx_screenheight</a></p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_screenheight"></a>gfx_screenheight</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int gfx_screenheight()</td></tr></table></blockquote><p>Returns the screen height.</p><h4 class=CHeading>See Also</h4><p><a href="#gfx_screenwidth" class=LFunction id=link96 onMouseOver="ShowTip(event, 'tt29', 'link96')" onMouseOut="HideTip('tt29')">gfx_screenwidth</a></p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_screenheight"></a>gfx_screenheight</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int gfx_screenheight()</td></tr></table></blockquote><p>Returns the screen height.</p><h4 class=CHeading>See Also</h4><p><a href="#gfx_screenwidth" class=LFunction id=link100 onMouseOver="ShowTip(event, 'tt30', 'link100')" onMouseOut="HideTip('tt30')">gfx_screenwidth</a></p></div></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_mapscreen"></a>gfx_mapscreen</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 gfx_mapscreen(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_y,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_y</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Specifies the coordinate system for the screen.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>tl_x</td><td class=CDLDescription>Top-left X</td></tr><tr><td class=CDLEntry>tl_y</td><td class=CDLDescription>Top-left Y</td></tr><tr><td class=CDLEntry>br_x</td><td class=CDLDescription>Bottom-right X</td></tr><tr><td class=CDLEntry>br_y</td><td class=CDLDescription>Bottom-right y</td></tr></table></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_blend_normal"></a>gfx_blend_normal</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_blend_normal()</td></tr></table></blockquote><p>Set the active blending mode to normal (src, 1-src).</p><h4 class=CHeading>Remarks</h4><p>This must be used before calling <a href="#gfx_quads_begin" class=LFunction id=link97 onMouseOver="ShowTip(event, 'tt5', 'link97')" onMouseOut="HideTip('tt5')">gfx_quads_begin</a>.&nbsp; This is equal to glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA).</p><h4 class=CHeading>See Also</h4><p>&lt;gfx_blend_additive,gfx_blend_none&gt;</p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_blend_normal"></a>gfx_blend_normal</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_blend_normal()</td></tr></table></blockquote><p>Set the active blending mode to normal (src, 1-src).</p><h4 class=CHeading>Remarks</h4><p>This must be used before calling <a href="#gfx_quads_begin" class=LFunction id=link101 onMouseOver="ShowTip(event, 'tt5', 'link101')" onMouseOut="HideTip('tt5')">gfx_quads_begin</a>.&nbsp; This is equal to glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA).</p><h4 class=CHeading>See Also</h4><p>&lt;gfx_blend_additive,gfx_blend_none&gt;</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_blend_additive"></a>gfx_blend_additive</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_blend_additive()</td></tr></table></blockquote><p>Set the active blending mode to additive (src, one).</p><h4 class=CHeading>Remarks</h4><p>This must be used before calling <a href="#gfx_quads_begin" class=LFunction id=link98 onMouseOver="ShowTip(event, 'tt5', 'link98')" onMouseOut="HideTip('tt5')">gfx_quads_begin</a>.&nbsp; This is equal to glBlendFunc(GL_SRC_ALPHA, GL_ONE).</p><h4 class=CHeading>See Also</h4><p>&lt;gfx_blend_normal,gfx_blend_none&gt;</p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_blend_additive"></a>gfx_blend_additive</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_blend_additive()</td></tr></table></blockquote><p>Set the active blending mode to additive (src, one).</p><h4 class=CHeading>Remarks</h4><p>This must be used before calling <a href="#gfx_quads_begin" class=LFunction id=link102 onMouseOver="ShowTip(event, 'tt5', 'link102')" onMouseOut="HideTip('tt5')">gfx_quads_begin</a>.&nbsp; This is equal to glBlendFunc(GL_SRC_ALPHA, GL_ONE).</p><h4 class=CHeading>See Also</h4><p>&lt;gfx_blend_normal,gfx_blend_none&gt;</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_blend_none"></a>gfx_blend_none</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_blend_none()</td></tr></table></blockquote><p>Disables blending</p><h4 class=CHeading>Remarks</h4><p>This must be used before calling <a href="#gfx_quads_begin" class=LFunction id=link99 onMouseOver="ShowTip(event, 'tt5', 'link99')" onMouseOut="HideTip('tt5')">gfx_quads_begin</a>.</p><h4 class=CHeading>See Also</h4><p>&lt;gfx_blend_normal,gfx_blend_additive&gt;</p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_blend_none"></a>gfx_blend_none</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_blend_none()</td></tr></table></blockquote><p>Disables blending</p><h4 class=CHeading>Remarks</h4><p>This must be used before calling <a href="#gfx_quads_begin" class=LFunction id=link103 onMouseOver="ShowTip(event, 'tt5', 'link103')" onMouseOut="HideTip('tt5')">gfx_quads_begin</a>.</p><h4 class=CHeading>See Also</h4><p>&lt;gfx_blend_normal,gfx_blend_additive&gt;</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_setcolorvertex"></a>gfx_setcolorvertex</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 gfx_setcolorvertex(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>i,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>a</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Sets the color of a vertex.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>i</td><td class=CDLDescription>Index to the vertex.</td></tr><tr><td class=CDLEntry>r</td><td class=CDLDescription>Red value.</td></tr><tr><td class=CDLEntry>g</td><td class=CDLDescription>Green value.</td></tr><tr><td class=CDLEntry>b</td><td class=CDLDescription>Blue value.</td></tr><tr><td class=CDLEntry>a</td><td class=CDLDescription>Alpha value.</td></tr></table><h4 class=CHeading>Remarks</h4><p>The color values are from 0.0 to 1.0.&nbsp; The color is reset when <a href="#gfx_quads_begin" class=LFunction id=link100 onMouseOver="ShowTip(event, 'tt5', 'link100')" onMouseOut="HideTip('tt5')">gfx_quads_begin</a> is called.</p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_setcolorvertex"></a>gfx_setcolorvertex</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 gfx_setcolorvertex(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>i,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>a</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Sets the color of a vertex.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>i</td><td class=CDLDescription>Index to the vertex.</td></tr><tr><td class=CDLEntry>r</td><td class=CDLDescription>Red value.</td></tr><tr><td class=CDLEntry>g</td><td class=CDLDescription>Green value.</td></tr><tr><td class=CDLEntry>b</td><td class=CDLDescription>Blue value.</td></tr><tr><td class=CDLEntry>a</td><td class=CDLDescription>Alpha value.</td></tr></table><h4 class=CHeading>Remarks</h4><p>The color values are from 0.0 to 1.0.&nbsp; The color is reset when <a href="#gfx_quads_begin" class=LFunction id=link104 onMouseOver="ShowTip(event, 'tt5', 'link104')" onMouseOut="HideTip('tt5')">gfx_quads_begin</a> is called.</p></div></div></div>
 
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_setcolor"></a>gfx_setcolor</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 gfx_setcolor(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>a</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Sets the color of all the vertices.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>r</td><td class=CDLDescription>Red value.</td></tr><tr><td class=CDLEntry>g</td><td class=CDLDescription>Green value.</td></tr><tr><td class=CDLEntry>b</td><td class=CDLDescription>Blue value.</td></tr><tr><td class=CDLEntry>a</td><td class=CDLDescription>Alpha value.</td></tr></table><h4 class=CHeading>Remarks</h4><p>The color values are from 0.0 to 1.0.&nbsp; The color is reset when <a href="#gfx_quads_begin" class=LFunction id=link101 onMouseOver="ShowTip(event, 'tt5', 'link101')" onMouseOut="HideTip('tt5')">gfx_quads_begin</a> is called.</p></div></div></div>
+<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_setcolor"></a>gfx_setcolor</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 gfx_setcolor(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>a</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Sets the color of all the vertices.</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>r</td><td class=CDLDescription>Red value.</td></tr><tr><td class=CDLEntry>g</td><td class=CDLDescription>Green value.</td></tr><tr><td class=CDLEntry>b</td><td class=CDLDescription>Blue value.</td></tr><tr><td class=CDLEntry>a</td><td class=CDLDescription>Alpha value.</td></tr></table><h4 class=CHeading>Remarks</h4><p>The color values are from 0.0 to 1.0.&nbsp; The color is reset when <a href="#gfx_quads_begin" class=LFunction id=link105 onMouseOver="ShowTip(event, 'tt5', 'link105')" onMouseOut="HideTip('tt5')">gfx_quads_begin</a> is called.</p></div></div></div>
 
 <div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="gfx_getscreen"></a>gfx_getscreen</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 gfx_getscreen(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>tl_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>tl_y,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>br_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>br_y</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="gfx_memory_usage"></a>gfx_memory_usage</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int gfx_memory_usage()</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="gfx_screenshot"></a>gfx_screenshot</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_screenshot()</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="gfx_screenshot"></a>gfx_screenshot</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_screenshot()</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>filename</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="gfx_screenshot_direct"></a>gfx_screenshot_direct</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 gfx_screenshot_direct(</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>TODO</p><h4 class=CHeading>Arguments</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>filename</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="gfx_clip_enable"></a>gfx_clip_enable</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 gfx_clip_enable(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>y,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>w,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>h</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>
 
@@ -119,15 +125,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <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 id=MSelected>Graphics</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"><!--
+<div id=Menu><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_huffman-h.html">e_huffman.h</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 id=MSelected>Graphics</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/entity-hpp.html">Entity</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gamecontroller-hpp.html">Game Controller</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gameworld-hpp.html">Game World</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 class=MEntry><div class=MIndex><a href="../index/Files.html">Files</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><!--
+--></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="Files">Files</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=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><div class=CToolTip id="tt2"><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><div class=CToolTip id="tt3"><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><div class=CToolTip id="tt4"><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><div class=CToolTip id="tt5"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_quads_begin()</td></tr></table></blockquote>Begins a quad drawing session.</div></div><div class=CToolTip id="tt6"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_quads_end()</td></tr></table></blockquote>Ends a quad session.</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 gfx_quads_setrotation(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>angle</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the rotation to use when drawing a quad.</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>void gfx_quads_setsubset(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_u,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_v,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_u,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_v</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the uv coordinates to use.</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 gfx_quads_setsubset_free(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x3,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y3</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt10"><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 gfx_quads_drawTL(</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></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>width,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>height</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Draws a quad by specifying the top-left point.</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 gfx_quads_draw(</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></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>w,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>h</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Draws a quad by specifying the center point.</div></div><div class=CToolTip id="tt12"><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 gfx_quads_draw_freeform(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x3,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y3</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Draws a quad by specifying the corner points.</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>void gfx_quads_text(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>y,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size,</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>text</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>void gfx_lines_begin()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt15"><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 gfx_lines_draw(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y1</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt16"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_lines_end()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt17"><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 gfx_text(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>font,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>y,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size,</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>text,</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>max_width</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt18"><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>float gfx_text_width(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>font,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size,</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>text,</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>length</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt19"><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 gfx_text_color(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>a</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt20"><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 gfx_text_set_default_font(</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>font</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt21"><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 gfx_get_video_modes(</td><td class=PType nowrap>VIDEO_MODE&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>list,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>maxcount</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Fetches a list of all the available video modes.</div></div><div class=CToolTip id="tt22"><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 gfx_load_png(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>IMAGE_INFO&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>img,</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>filename</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Loads a PNG image from disk.</div></div><div class=CToolTip id="tt23"><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 gfx_load_texture(</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></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>store_format,</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>flags</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Loads a texture from a file. </div></div><div class=CToolTip id="tt24"><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 gfx_load_texture_raw(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>w,</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>h,</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>format,</td></tr><tr><td></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>store_format,</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>flags</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Loads a texture from memory.</div></div><div class=CToolTip id="tt25"><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 gfx_texture_set(</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>Sets the active texture.</div></div><div class=CToolTip id="tt26"><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 gfx_unload_texture(</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>Unloads a texture.</div></div><div class=CToolTip id="tt27"><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 gfx_clear(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Clears the screen with the specified color.</div></div><div class=CToolTip id="tt28"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float gfx_screenaspect()</td></tr></table></blockquote>Returns the aspect ratio between width and height.</div></div><div class=CToolTip id="tt29"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int gfx_screenwidth()</td></tr></table></blockquote>Returns the screen width.</div></div><div class=CToolTip id="tt30"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int gfx_screenheight()</td></tr></table></blockquote>Returns the screen height.</div></div><div class=CToolTip id="tt31"><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 gfx_mapscreen(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_y,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_y</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Specifies the coordinate system for the screen.</div></div><div class=CToolTip id="tt32"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_blend_normal()</td></tr></table></blockquote>Set the active blending mode to normal (src, 1-src).</div></div><div class=CToolTip id="tt33"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_blend_additive()</td></tr></table></blockquote>Set the active blending mode to additive (src, one).</div></div><div class=CToolTip id="tt34"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_blend_none()</td></tr></table></blockquote>Disables blending</div></div><div class=CToolTip id="tt35"><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 gfx_setcolorvertex(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>i,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>a</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the color of a vertex.</div></div><div class=CToolTip id="tt36"><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 gfx_setcolor(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>a</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the color of all the vertices.</div></div><div class=CToolTip id="tt37"><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 gfx_getscreen(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>tl_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>tl_y,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>br_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>br_y</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt38"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int gfx_memory_usage()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt39"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_screenshot()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt40"><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 gfx_clip_enable(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>y,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>w,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>h</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt41"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_clip_disable()</td></tr></table></blockquote>TODO</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt1"><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><div class=CToolTip id="tt2"><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><div class=CToolTip id="tt3"><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><div class=CToolTip id="tt4"><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><div class=CToolTip id="tt5"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_quads_begin()</td></tr></table></blockquote>Begins a quad drawing session.</div></div><div class=CToolTip id="tt6"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_quads_end()</td></tr></table></blockquote>Ends a quad session.</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 gfx_quads_setrotation(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>angle</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the rotation to use when drawing a quad.</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>void gfx_quads_setsubset(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_u,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_v,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_u,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_v</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the uv coordinates to use.</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 gfx_quads_setsubset_free(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x3,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y3</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt10"><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 gfx_quads_drawTL(</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></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>width,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>height</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Draws a quad by specifying the top-left point.</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 gfx_quads_draw(</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></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>w,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>h</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Draws a quad by specifying the center point.</div></div><div class=CToolTip id="tt12"><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 gfx_quads_draw_freeform(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x3,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y3</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Draws a quad by specifying the corner points.</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>void gfx_quads_text(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>y,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size,</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>text</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>void gfx_lines_begin()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt15"><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 gfx_lines_draw(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y1</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt16"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_minimize()</td></tr></table></blockquote>Minimizes the window.</div></div><div class=CToolTip id="tt17"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_lines_end()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt18"><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 gfx_text(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>font,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>y,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size,</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>text,</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>max_width</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt19"><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>float gfx_text_width(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>font,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size,</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>text,</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>length</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt20"><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 gfx_text_color(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>a</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt21"><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 gfx_text_set_default_font(</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>font</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt22"><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 gfx_get_video_modes(</td><td class=PType nowrap>VIDEO_MODE&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>list,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>maxcount</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Fetches a list of all the available video modes.</div></div><div class=CToolTip id="tt23"><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 gfx_load_png(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>IMAGE_INFO&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>img,</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>filename</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Loads a PNG image from disk.</div></div><div class=CToolTip id="tt24"><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 gfx_load_texture(</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></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>store_format,</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>flags</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Loads a texture from a file. </div></div><div class=CToolTip id="tt25"><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 gfx_load_texture_raw(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>w,</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>h,</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>format,</td></tr><tr><td></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>store_format,</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>flags</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Loads a texture from memory.</div></div><div class=CToolTip id="tt26"><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 gfx_texture_set(</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>Sets the active texture.</div></div><div class=CToolTip id="tt27"><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 gfx_unload_texture(</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>Unloads a texture.</div></div><div class=CToolTip id="tt28"><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 gfx_clear(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Clears the screen with the specified color.</div></div><div class=CToolTip id="tt29"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float gfx_screenaspect()</td></tr></table></blockquote>Returns the aspect ratio between width and height.</div></div><div class=CToolTip id="tt30"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int gfx_screenwidth()</td></tr></table></blockquote>Returns the screen width.</div></div><div class=CToolTip id="tt31"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int gfx_screenheight()</td></tr></table></blockquote>Returns the screen height.</div></div><div class=CToolTip id="tt32"><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 gfx_mapscreen(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_y,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_y</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Specifies the coordinate system for the screen.</div></div><div class=CToolTip id="tt33"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_blend_normal()</td></tr></table></blockquote>Set the active blending mode to normal (src, 1-src).</div></div><div class=CToolTip id="tt34"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_blend_additive()</td></tr></table></blockquote>Set the active blending mode to additive (src, one).</div></div><div class=CToolTip id="tt35"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_blend_none()</td></tr></table></blockquote>Disables blending</div></div><div class=CToolTip id="tt36"><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 gfx_setcolorvertex(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>i,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>a</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the color of a vertex.</div></div><div class=CToolTip id="tt37"><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 gfx_setcolor(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>a</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the color of all the vertices.</div></div><div class=CToolTip id="tt38"><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 gfx_getscreen(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>tl_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>tl_y,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>br_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>br_y</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt39"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int gfx_memory_usage()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt40"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_screenshot()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt41"><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 gfx_screenshot_direct(</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>TODO</div></div><div class=CToolTip id="tt42"><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 gfx_clip_enable(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>y,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>w,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>h</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt43"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_clip_disable()</td></tr></table></blockquote>TODO</div></div><!--END_ND_TOOLTIPS-->
 
 
 
diff --git a/docs/output/files2/e_if_inp-h.html b/docs/output/files2/e_if_inp-h.html
index 91ac5b99..51ac8fb2 100644
--- a/docs/output/files2/e_if_inp-h.html
+++ b/docs/output/files2/e_if_inp-h.html
@@ -53,9 +53,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <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 id=MSelected>Input</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"><!--
+<div id=Menu><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_huffman-h.html">e_huffman.h</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 id=MSelected>Input</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/entity-hpp.html">Entity</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gamecontroller-hpp.html">Game Controller</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gameworld-hpp.html">Game World</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 class=MEntry><div class=MIndex><a href="../index/Files.html">Files</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><!--
+--></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="Files">Files</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-->
 
 
diff --git a/docs/output/files2/e_if_modc-h.html b/docs/output/files2/e_if_modc-h.html
index f75e3aee..5294e972 100644
--- a/docs/output/files2/e_if_modc-h.html
+++ b/docs/output/files2/e_if_modc-h.html
@@ -49,9 +49,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <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"><!--
+<div id=Menu><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_huffman-h.html">e_huffman.h</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/entity-hpp.html">Entity</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gamecontroller-hpp.html">Game Controller</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gameworld-hpp.html">Game World</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 class=MEntry><div class=MIndex><a href="../index/Files.html">Files</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><!--
+--></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="Files">Files</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-->
 
 
diff --git a/docs/output/files2/e_if_mods-h.html b/docs/output/files2/e_if_mods-h.html
index 3929a2d8..9dadec87 100644
--- a/docs/output/files2/e_if_mods-h.html
+++ b/docs/output/files2/e_if_mods-h.html
@@ -51,9 +51,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <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 id=MSelected>Server Hooks</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"><!--
+<div id=Menu><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_huffman-h.html">e_huffman.h</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 id=MSelected>Server Hooks</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/entity-hpp.html">Entity</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gamecontroller-hpp.html">Game Controller</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gameworld-hpp.html">Game World</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 class=MEntry><div class=MIndex><a href="../index/Files.html">Files</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><!--
+--></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="Files">Files</option><option value="Functions">Functions</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
 HideAllBut([4, 5, 6], 9);// --></script></div><!--Menu-->
 
 
diff --git a/docs/output/files2/e_if_msg-h.html b/docs/output/files2/e_if_msg-h.html
index f46cc24e..aa8cc870 100644
--- a/docs/output/files2/e_if_msg-h.html
+++ b/docs/output/files2/e_if_msg-h.html
@@ -39,9 +39,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <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"><!--
+<div id=Menu><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_huffman-h.html">e_huffman.h</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/entity-hpp.html">Entity</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gamecontroller-hpp.html">Game Controller</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gameworld-hpp.html">Game World</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 class=MEntry><div class=MIndex><a href="../index/Files.html">Files</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><!--
+--></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="Files">Files</option><option value="Functions">Functions</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
 HideAllBut([6, 3, 5], 9);// --></script></div><!--Menu-->
 
 
diff --git a/docs/output/files2/e_if_other-h.html b/docs/output/files2/e_if_other-h.html
index 23d4a2c0..91fd8f51 100644
--- a/docs/output/files2/e_if_other-h.html
+++ b/docs/output/files2/e_if_other-h.html
@@ -69,9 +69,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <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 id=MSelected>Engine Interface</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"><!--
+<div id=Menu><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_huffman-h.html">e_huffman.h</a></div></div><div class=MEntry><div class=MFile id=MSelected>Engine Interface</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/entity-hpp.html">Entity</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gamecontroller-hpp.html">Game Controller</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gameworld-hpp.html">Game World</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 class=MEntry><div class=MIndex><a href="../index/Files.html">Files</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><!--
+--></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="Files">Files</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-->
 
 
diff --git a/docs/output/files2/e_if_server-h.html b/docs/output/files2/e_if_server-h.html
index b4fa723b..dfba8272 100644
--- a/docs/output/files2/e_if_server-h.html
+++ b/docs/output/files2/e_if_server-h.html
@@ -25,7 +25,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 <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_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=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>game_type,</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>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>
 
@@ -39,15 +39,15 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <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"><!--
+<div id=Menu><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_huffman-h.html">e_huffman.h</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/entity-hpp.html">Entity</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gamecontroller-hpp.html">Game Controller</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gameworld-hpp.html">Game World</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 class=MEntry><div class=MIndex><a href="../index/Files.html">Files</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><!--
+--></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="Files">Files</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 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=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>game_type,</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>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-->
 
 
 
diff --git a/docs/output/files2/e_if_snd-h.html b/docs/output/files2/e_if_snd-h.html
index 5cc729f7..6a69ade5 100644
--- a/docs/output/files2/e_if_snd-h.html
+++ b/docs/output/files2/e_if_snd-h.html
@@ -33,9 +33,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <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"><!--
+<div id=Menu><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_huffman-h.html">e_huffman.h</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/entity-hpp.html">Entity</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gamecontroller-hpp.html">Game Controller</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gameworld-hpp.html">Game World</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 class=MEntry><div class=MIndex><a href="../index/Files.html">Files</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><!--
+--></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="Files">Files</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-->
 
 
diff --git a/docs/output/index.html b/docs/output/index.html
index 98fa8d05..52c8366b 100644
--- a/docs/output/index.html
+++ b/docs/output/index.html
@@ -1 +1 @@
-<html><head><meta http-equiv="Refresh" CONTENT="0; URL=files2/e_system-h.html"></head></html>
\ No newline at end of file
+<html><head><meta http-equiv="Refresh" CONTENT="0; URL=files2/e_if_msg-h.html"></head></html>
\ No newline at end of file
diff --git a/docs/output/index/Classes.html b/docs/output/index/Classes.html
index da6b2a74..8215f94d 100644
--- a/docs/output/index/Classes.html
+++ b/docs/output/index/Classes.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<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>
+<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/entity-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/gamecontroller-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/gameworld-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-->
 
@@ -41,9 +41,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <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"><!--
+<div id=Menu><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_huffman-h.html">e_huffman.h</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/entity-hpp.html">Entity</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gamecontroller-hpp.html">Game Controller</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gameworld-hpp.html">Game World</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 class=MEntry><div class=MIndex><a href="Files.html">Files</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><!--
+--></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="Files">Files</option><option value="Functions">Functions</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
 HideAllBut([8, 7, 6], 9);// --></script></div><!--Menu-->
 
 
diff --git a/docs/output/index/Constants.html b/docs/output/index/Constants.html
index b9e6938f..83d765ff 100644
--- a/docs/output/index/Constants.html
+++ b/docs/output/index/Constants.html
@@ -37,9 +37,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <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 id=MSelected>Constants</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"><!--
+<div id=Menu><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_huffman-h.html">e_huffman.h</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/entity-hpp.html">Entity</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gamecontroller-hpp.html">Game Controller</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gameworld-hpp.html">Game World</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 id=MSelected>Constants</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 class=MEntry><div class=MIndex><a href="Files.html">Files</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><!--
+--></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="Files">Files</option><option value="Functions">Functions</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
 HideAllBut([8, 7, 6], 9);// --></script></div><!--Menu-->
 
 
diff --git a/docs/output/index/Functions.html b/docs/output/index/Functions.html
index 7c450f8a..b04e2d4a 100644
--- a/docs/output/index/Functions.html
+++ b/docs/output/index/Functions.html
@@ -11,17 +11,17 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar>$#! &middot; 0-9 &middot; A &middot; B &middot; <a href="#C">C</a> &middot; <a href="#D">D</a> &middot; E &middot; <a href="#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="Functions5.html#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="C"></a>C</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_connect" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')" class=ISymbol>client_connect</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_connection_problems" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')" class=ISymbol>client_connection_problems</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_direct_input" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')" class=ISymbol>client_direct_input</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_disconnect" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')" class=ISymbol>client_disconnect</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_error_string" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')" class=ISymbol>client_error_string</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_frametime" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')" class=ISymbol>client_frametime</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_get_input" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')" class=ISymbol>client_get_input</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_intratick" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')" class=ISymbol>client_intratick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_localtime" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')" class=ISymbol>client_localtime</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_mapdownload_amount" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')" class=ISymbol>client_mapdownload_amount</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_mapdownload_totalsize" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')" class=ISymbol>client_mapdownload_totalsize</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_predintratick" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')" class=ISymbol>client_predintratick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_predtick" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')" class=ISymbol>client_predtick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_quit" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')" class=ISymbol>client_quit</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_rcon" id=link15 onMouseOver="ShowTip(event, 'tt15', 'link15')" onMouseOut="HideTip('tt15')" class=ISymbol>client_rcon</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_rcon_auth" id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')" class=ISymbol>client_rcon_auth</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_rcon_authed" id=link17 onMouseOver="ShowTip(event, 'tt17', 'link17')" onMouseOut="HideTip('tt17')" class=ISymbol>client_rcon_authed</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_save_line" id=link18 onMouseOver="ShowTip(event, 'tt18', 'link18')" onMouseOut="HideTip('tt18')" class=ISymbol>client_save_line</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#client_send_msg" id=link19 onMouseOver="ShowTip(event, 'tt19', 'link19')" onMouseOut="HideTip('tt19')" class=ISymbol>client_send_msg</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_get" id=link20 onMouseOver="ShowTip(event, 'tt20', 'link20')" onMouseOut="HideTip('tt20')" class=ISymbol>client_serverbrowse_get</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_lan" id=link21 onMouseOver="ShowTip(event, 'tt21', 'link21')" onMouseOut="HideTip('tt21')" class=ISymbol>client_serverbrowse_lan</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_num" id=link22 onMouseOver="ShowTip(event, 'tt22', 'link22')" onMouseOut="HideTip('tt22')" class=ISymbol>client_serverbrowse_num</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_num_requests" id=link23 onMouseOver="ShowTip(event, 'tt23', 'link23')" onMouseOut="HideTip('tt23')" class=ISymbol>client_serverbrowse_num_requests</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_refresh" id=link24 onMouseOver="ShowTip(event, 'tt24', 'link24')" onMouseOut="HideTip('tt24')" class=ISymbol>client_serverbrowse_refresh</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_sorted_get" id=link25 onMouseOver="ShowTip(event, 'tt25', 'link25')" onMouseOut="HideTip('tt25')" class=ISymbol>client_serverbrowse_sorted_get</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_sorted_num" id=link26 onMouseOver="ShowTip(event, 'tt26', 'link26')" onMouseOut="HideTip('tt26')" class=ISymbol>client_serverbrowse_sorted_num</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_update" id=link27 onMouseOver="ShowTip(event, 'tt27', 'link27')" onMouseOut="HideTip('tt27')" class=ISymbol>client_serverbrowse_update</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_state" id=link28 onMouseOver="ShowTip(event, 'tt28', 'link28')" onMouseOut="HideTip('tt28')" class=ISymbol>client_state</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_tick" id=link29 onMouseOver="ShowTip(event, 'tt29', 'link29')" onMouseOut="HideTip('tt29')" class=ISymbol>client_tick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_tickspeed" id=link30 onMouseOver="ShowTip(event, 'tt30', 'link30')" onMouseOut="HideTip('tt30')" class=ISymbol>client_tickspeed</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_ticktime" id=link31 onMouseOver="ShowTip(event, 'tt31', 'link31')" onMouseOut="HideTip('tt31')" class=ISymbol>client_ticktime</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gs_common-hpp.html#Game_World.closest_character" id=link32 onMouseOver="ShowTip(event, 'tt32', 'link32')" onMouseOut="HideTip('tt32')" class=ISymbol>closest_character</a>, <span class=IParent>Game World</span></td></tr><tr><td class=IHeading><a name="D"></a>D</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#dbg_assert" id=link33 onMouseOver="ShowTip(event, 'tt33', 'link33')" onMouseOut="HideTip('tt33')" class=ISymbol>dbg_assert</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#dbg_break" id=link34 onMouseOver="ShowTip(event, 'tt34', 'link34')" onMouseOut="HideTip('tt34')" class=ISymbol>dbg_break</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#dbg_msg" id=link35 onMouseOver="ShowTip(event, 'tt35', 'link35')" onMouseOut="HideTip('tt35')" class=ISymbol>dbg_msg</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gs_common-hpp.html#Entity.destroy" id=link36 onMouseOver="ShowTip(event, 'tt36', 'link36')" onMouseOut="HideTip('tt36')" class=ISymbol>destroy</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#Game_World.destroy_entity" id=link37 onMouseOver="ShowTip(event, 'tt37', 'link37')" onMouseOut="HideTip('tt37')" class=ISymbol>destroy_entity</a>, <span class=IParent>Game World</span></td></tr><tr><td class=IHeading><a name="F"></a>F</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gs_common-hpp.html#Game_World.find_entities" id=link38 onMouseOver="ShowTip(event, 'tt38', 'link38')" onMouseOut="HideTip('tt38')" class=ISymbol>find_entities</a>, <span class=IParent>Game World</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#fs_listdir" id=link39 onMouseOver="ShowTip(event, 'tt39', 'link39')" onMouseOut="HideTip('tt39')" class=ISymbol>fs_listdir</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#fs_makedir" id=link40 onMouseOver="ShowTip(event, 'tt40', 'link40')" onMouseOut="HideTip('tt40')" class=ISymbol>fs_makedir</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#fs_storage_path" id=link41 onMouseOver="ShowTip(event, 'tt41', 'link41')" onMouseOut="HideTip('tt41')" class=ISymbol>fs_storage_path</a></td></tr></table>
+<div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar>$#! &middot; 0-9 &middot; A &middot; B &middot; <a href="#C">C</a> &middot; <a href="#D">D</a> &middot; E &middot; <a href="#F">F</a> &middot; <a href="Functions2.html#G">G</a> &middot; <a href="Functions2.html#H">H</a> &middot; <a href="Functions2.html#I">I</a> &middot; J &middot; K &middot; L &middot; <a href="Functions2.html#M">M</a> &middot; N &middot; <a href="Functions3.html#O">O</a> &middot; P &middot; Q &middot; <a href="Functions3.html#R">R</a> &middot; <a href="Functions3.html#S">S</a> &middot; <a href="Functions3.html#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="C"></a>C</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_connect" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')" class=ISymbol>client_connect</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_connection_problems" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')" class=ISymbol>client_connection_problems</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_direct_input" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')" class=ISymbol>client_direct_input</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_disconnect" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')" class=ISymbol>client_disconnect</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_error_string" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')" class=ISymbol>client_error_string</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_frametime" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')" class=ISymbol>client_frametime</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_get_input" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')" class=ISymbol>client_get_input</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_intratick" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')" class=ISymbol>client_intratick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_latestversion" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')" class=ISymbol>client_latestversion</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_localtime" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')" class=ISymbol>client_localtime</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_mapdownload_amount" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')" class=ISymbol>client_mapdownload_amount</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_mapdownload_totalsize" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')" class=ISymbol>client_mapdownload_totalsize</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_predintratick" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')" class=ISymbol>client_predintratick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_predtick" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')" class=ISymbol>client_predtick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_prevtick" id=link15 onMouseOver="ShowTip(event, 'tt15', 'link15')" onMouseOut="HideTip('tt15')" class=ISymbol>client_prevtick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_quit" id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')" class=ISymbol>client_quit</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_rcon" id=link17 onMouseOver="ShowTip(event, 'tt17', 'link17')" onMouseOut="HideTip('tt17')" class=ISymbol>client_rcon</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_rcon_auth" id=link18 onMouseOver="ShowTip(event, 'tt18', 'link18')" onMouseOut="HideTip('tt18')" class=ISymbol>client_rcon_auth</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_rcon_authed" id=link19 onMouseOver="ShowTip(event, 'tt19', 'link19')" onMouseOut="HideTip('tt19')" class=ISymbol>client_rcon_authed</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_save_line" id=link20 onMouseOver="ShowTip(event, 'tt20', 'link20')" onMouseOut="HideTip('tt20')" class=ISymbol>client_save_line</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#client_send_msg" id=link21 onMouseOver="ShowTip(event, 'tt21', 'link21')" onMouseOut="HideTip('tt21')" class=ISymbol>client_send_msg</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_addfavorite" id=link22 onMouseOver="ShowTip(event, 'tt22', 'link22')" onMouseOut="HideTip('tt22')" class=ISymbol>client_serverbrowse_addfavorite</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_get" id=link23 onMouseOver="ShowTip(event, 'tt23', 'link23')" onMouseOut="HideTip('tt23')" class=ISymbol>client_serverbrowse_get</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_lan" id=link24 onMouseOver="ShowTip(event, 'tt24', 'link24')" onMouseOut="HideTip('tt24')" class=ISymbol>client_serverbrowse_lan</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_num" id=link25 onMouseOver="ShowTip(event, 'tt25', 'link25')" onMouseOut="HideTip('tt25')" class=ISymbol>client_serverbrowse_num</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_num_requests" id=link26 onMouseOver="ShowTip(event, 'tt26', 'link26')" onMouseOut="HideTip('tt26')" class=ISymbol>client_serverbrowse_num_requests</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_refresh" id=link27 onMouseOver="ShowTip(event, 'tt27', 'link27')" onMouseOut="HideTip('tt27')" class=ISymbol>client_serverbrowse_refresh</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_removefavorite" id=link28 onMouseOver="ShowTip(event, 'tt28', 'link28')" onMouseOut="HideTip('tt28')" class=ISymbol>client_serverbrowse_removefavorite</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_sorted_get" id=link29 onMouseOver="ShowTip(event, 'tt29', 'link29')" onMouseOut="HideTip('tt29')" class=ISymbol>client_serverbrowse_sorted_get</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_sorted_num" id=link30 onMouseOver="ShowTip(event, 'tt30', 'link30')" onMouseOut="HideTip('tt30')" class=ISymbol>client_serverbrowse_sorted_num</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_update" id=link31 onMouseOver="ShowTip(event, 'tt31', 'link31')" onMouseOut="HideTip('tt31')" class=ISymbol>client_serverbrowse_update</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_state" id=link32 onMouseOver="ShowTip(event, 'tt32', 'link32')" onMouseOut="HideTip('tt32')" class=ISymbol>client_state</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_tick" id=link33 onMouseOver="ShowTip(event, 'tt33', 'link33')" onMouseOut="HideTip('tt33')" class=ISymbol>client_tick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_tickspeed" id=link34 onMouseOver="ShowTip(event, 'tt34', 'link34')" onMouseOut="HideTip('tt34')" class=ISymbol>client_tickspeed</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_ticktime" id=link35 onMouseOver="ShowTip(event, 'tt35', 'link35')" onMouseOut="HideTip('tt35')" class=ISymbol>client_ticktime</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gameworld-hpp.html#Game_World.closest_character" id=link36 onMouseOver="ShowTip(event, 'tt36', 'link36')" onMouseOut="HideTip('tt36')" class=ISymbol>closest_character</a>, <span class=IParent>Game World</span></td></tr><tr><td class=IHeading><a name="D"></a>D</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/entity-hpp.html#Entity.destroy" id=link37 onMouseOver="ShowTip(event, 'tt37', 'link37')" onMouseOut="HideTip('tt37')" class=ISymbol>destroy</a>, <span class=IParent>Entity</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gameworld-hpp.html#Game_World.destroy_entity" id=link38 onMouseOver="ShowTip(event, 'tt38', 'link38')" onMouseOut="HideTip('tt38')" class=ISymbol>destroy_entity</a>, <span class=IParent>Game World</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="../files/server/gameworld-hpp.html#Game_World.find_entities" id=link39 onMouseOver="ShowTip(event, 'tt39', 'link39')" onMouseOut="HideTip('tt39')" class=ISymbol>find_entities</a>, <span class=IParent>Game World</span></td></tr></table>
 <!--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 client_connect(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>address</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Connects to a server at the specified address.</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_connection_problems()</td></tr></table></blockquote>Returns 1 if the client is connection problems.</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 client_direct_input(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>input,</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>void client_disconnect()</td></tr></table></blockquote>Disconnects from the current server.</div></div><div class=CToolTip id="tt5"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>const char *client_error_string()</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>float client_frametime()</td></tr></table></blockquote>Returns how long time the last frame took to process.</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>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><div class=CToolTip id="tt8"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_intratick()</td></tr></table></blockquote>Returns the current intratick.</div></div><div class=CToolTip id="tt9"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_localtime()</td></tr></table></blockquote>Returns the clients local time.</div></div><div class=CToolTip id="tt10"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_mapdownload_amount()</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>int client_mapdownload_totalsize()</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>float client_predintratick()</td></tr></table></blockquote>Returns the current preticted intra tick.</div></div><div class=CToolTip id="tt13"><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="tt14"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void client_quit()</td></tr></table></blockquote>Tells to client to shutdown.</div></div><div class=CToolTip id="tt15"><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 client_rcon(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>cmd</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sends a command to the server to execute on it&rsquo;s console.</div></div><div class=CToolTip id="tt16"><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 client_rcon_auth(</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></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>password</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt17"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_rcon_authed()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt18"><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 client_save_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="tt19"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_send_msg()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt20"><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>SERVER_INFO *client_serverbrowse_get(</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>TODO</div></div><div class=CToolTip id="tt21"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_lan()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt22"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_num()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt23"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_num_requests()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt24"><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 client_serverbrowse_refresh(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>lan</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Issues a refresh of the server browser.</div></div><div class=CToolTip id="tt25"><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>SERVER_INFO *client_serverbrowse_sorted_get(</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>Returns server info from the sorted list.</div></div><div class=CToolTip id="tt26"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_sorted_num()</td></tr></table></blockquote>Returns how many servers there are in the sorted list.</div></div><div class=CToolTip id="tt27"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void client_serverbrowse_update()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt28"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_state()</td></tr></table></blockquote>Returns the state of the client.</div></div><div class=CToolTip id="tt29"><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="tt30"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_tickspeed()</td></tr></table></blockquote>Returns how many ticks per second the client is doing.</div></div><div class=CToolTip id="tt31"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_ticktime()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt32"><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>class CHARACTER *closest_character(</td><td class=PType nowrap>vec2&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>pos,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>radius,</td></tr><tr><td></td><td class=PType nowrap>ENTITY&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>notthis</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Finds the closest character to a specific point.</div></div><!--END_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 client_connect(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>address</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Connects to a server at the specified address.</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_connection_problems()</td></tr></table></blockquote>Returns 1 if the client is connection problems.</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 client_direct_input(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>input,</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>void client_disconnect()</td></tr></table></blockquote>Disconnects from the current server.</div></div><div class=CToolTip id="tt5"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>const char *client_error_string()</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>float client_frametime()</td></tr></table></blockquote>Returns how long time the last frame took to process.</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>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><div class=CToolTip id="tt8"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_intratick()</td></tr></table></blockquote>Returns the current intratick.</div></div><div class=CToolTip id="tt9"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>const char *client_latestversion()</td></tr></table></blockquote>Returns 0 if there&rsquo;s no version difference</div></div><div class=CToolTip id="tt10"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_localtime()</td></tr></table></blockquote>Returns the clients local time.</div></div><div class=CToolTip id="tt11"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_mapdownload_amount()</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>int client_mapdownload_totalsize()</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>float client_predintratick()</td></tr></table></blockquote>Returns the current preticted intra tick.</div></div><div class=CToolTip id="tt14"><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="tt15"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_prevtick()</td></tr></table></blockquote>Returns the tick of the previous snapshot.</div></div><div class=CToolTip id="tt16"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void client_quit()</td></tr></table></blockquote>Tells to client to shutdown.</div></div><div class=CToolTip id="tt17"><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 client_rcon(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>cmd</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sends a command to the server to execute on it&rsquo;s console.</div></div><div class=CToolTip id="tt18"><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 client_rcon_auth(</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></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>password</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt19"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_rcon_authed()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt20"><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 client_save_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="tt21"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_send_msg()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt22"><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 client_serverbrowse_addfavorite(</td><td class=PType nowrap>NETADDR&nbsp;</td><td class=PParameter nowrap>addr</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Adds a server to the favorite list</div></div><div class=CToolTip id="tt23"><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>SERVER_INFO *client_serverbrowse_get(</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>TODO</div></div><div class=CToolTip id="tt24"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_lan()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt25"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_num()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt26"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_num_requests()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt27"><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 client_serverbrowse_refresh(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>type</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Issues a refresh of the server browser.</div></div><div class=CToolTip id="tt28"><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 client_serverbrowse_removefavorite(</td><td class=PType nowrap>NETADDR&nbsp;</td><td class=PParameter nowrap>addr</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Removes a server to the favorite list</div></div><div class=CToolTip id="tt29"><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>SERVER_INFO *client_serverbrowse_sorted_get(</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>Returns server info from the sorted list.</div></div><div class=CToolTip id="tt30"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_sorted_num()</td></tr></table></blockquote>Returns how many servers there are in the sorted list.</div></div><div class=CToolTip id="tt31"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void client_serverbrowse_update()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt32"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_state()</td></tr></table></blockquote>Returns the state of the client.</div></div><div class=CToolTip id="tt33"><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="tt34"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_tickspeed()</td></tr></table></blockquote>Returns how many ticks per second the client is doing.</div></div><div class=CToolTip id="tt35"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_ticktime()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt36"><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>class CHARACTER *closest_character(</td><td class=PType nowrap>vec2&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>pos,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>radius,</td></tr><tr><td></td><td class=PType nowrap>ENTITY&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>notthis</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Finds the closest character to a specific point.</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt33"><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 dbg_assert(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>test,</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>msg</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Breaks into the debugger based on a test.</div></div><div class=CToolTip id="tt34"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void dbg_break()</td></tr></table></blockquote>Breaks into the debugger.</div></div><div class=CToolTip id="tt35"><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 dbg_msg(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>sys,</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>fmt,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>...</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Prints a debug message.</div></div><div class=CToolTip id="tt36"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>virtual void destroy()</td></tr></table></blockquote>Destorys the entity.</div></div><div class=CToolTip id="tt37"><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 destroy_entity(</td><td class=PType nowrap>ENTITY&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>entity</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Destroys an entity in the world.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt37"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>virtual void destroy()</td></tr></table></blockquote>Destorys the entity.</div></div><div class=CToolTip id="tt38"><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 destroy_entity(</td><td class=PType nowrap>ENTITY&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>entity</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Destroys an entity in the world.</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt38"><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 find_entities(</td><td class=PType nowrap>vec2&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>pos,</td><td class=PDefaultValuePrefix>&nbsp;&nbsp;</td><td class=PDefaultValue width=100%></td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>radius,</td><td class=PDefaultValuePrefix>&nbsp;&nbsp;</td><td class=PDefaultValue width=100%></td></tr><tr><td></td><td class=PType nowrap>ENTITY&nbsp;</td><td class=PParameterPrefix nowrap>**</td><td class=PParameter nowrap>ents,</td><td class=PDefaultValuePrefix>&nbsp;&nbsp;</td><td class=PDefaultValue width=100%></td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>max,</td><td class=PDefaultValuePrefix>&nbsp;&nbsp;</td><td class=PDefaultValue width=100%></td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>type</td><td class=PDefaultValuePrefix>&nbsp;=&nbsp;</td><td class=PDefaultValue width=100%> -1</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Finds entities close to a position and returns them in a list.</div></div><div class=CToolTip id="tt39"><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>typedef void (</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>fs_listdir_callback</td><td class=PAfterParameters nowrap>)(const char *name, int is_dir, void *user)</td></tr></table></td></tr></table></blockquote>Lists the files in a directory</div></div><div class=CToolTip id="tt40"><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 fs_makedir(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>path</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Creates a directory</div></div><div class=CToolTip id="tt41"><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 fs_storage_path(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>appname,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>path,</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>max</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Fetches per user configuration directory.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt39"><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 find_entities(</td><td class=PType nowrap>vec2&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>pos,</td><td class=PDefaultValuePrefix>&nbsp;&nbsp;</td><td class=PDefaultValue width=100%></td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>radius,</td><td class=PDefaultValuePrefix>&nbsp;&nbsp;</td><td class=PDefaultValue width=100%></td></tr><tr><td></td><td class=PType nowrap>ENTITY&nbsp;</td><td class=PParameterPrefix nowrap>**</td><td class=PParameter nowrap>ents,</td><td class=PDefaultValuePrefix>&nbsp;&nbsp;</td><td class=PDefaultValue width=100%></td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>max,</td><td class=PDefaultValuePrefix>&nbsp;&nbsp;</td><td class=PDefaultValue width=100%></td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>type</td><td class=PDefaultValuePrefix>&nbsp;=&nbsp;</td><td class=PDefaultValue width=100%> -1</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Finds entities close to a position and returns them in a list.</div></div><!--END_ND_TOOLTIPS-->
 
 </div><!--Index-->
 
@@ -29,9 +29,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <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"><!--
+<div id=Menu><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_huffman-h.html">e_huffman.h</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/entity-hpp.html">Entity</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gamecontroller-hpp.html">Game Controller</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gameworld-hpp.html">Game World</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 class=MEntry><div class=MIndex><a href="Files.html">Files</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><!--
+--></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="Files">Files</option><option value="Functions">Functions</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
 HideAllBut([8, 7, 6], 9);// --></script></div><!--Menu-->
 
 
diff --git a/docs/output/index/Functions2.html b/docs/output/index/Functions2.html
index 34b8d01a..06926d83 100644
--- a/docs/output/index/Functions2.html
+++ b/docs/output/index/Functions2.html
@@ -11,13 +11,21 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<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="#G">G</a> &middot; H &middot; <a href="#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="Functions5.html#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="G"></a>G</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_blend_additive" id=link42 onMouseOver="ShowTip(event, 'tt42', 'link42')" onMouseOut="HideTip('tt42')" class=ISymbol>gfx_blend_additive</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_blend_none" id=link43 onMouseOver="ShowTip(event, 'tt43', 'link43')" onMouseOut="HideTip('tt43')" class=ISymbol>gfx_blend_none</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_blend_normal" id=link44 onMouseOver="ShowTip(event, 'tt44', 'link44')" onMouseOut="HideTip('tt44')" class=ISymbol>gfx_blend_normal</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_clear" id=link45 onMouseOver="ShowTip(event, 'tt45', 'link45')" onMouseOut="HideTip('tt45')" class=ISymbol>gfx_clear</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_clip_disable" id=link46 onMouseOver="ShowTip(event, 'tt46', 'link46')" onMouseOut="HideTip('tt46')" class=ISymbol>gfx_clip_disable</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_clip_enable" id=link47 onMouseOver="ShowTip(event, 'tt47', 'link47')" onMouseOut="HideTip('tt47')" class=ISymbol>gfx_clip_enable</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_get_video_modes" id=link48 onMouseOver="ShowTip(event, 'tt48', 'link48')" onMouseOut="HideTip('tt48')" class=ISymbol>gfx_get_video_modes</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_getscreen" id=link49 onMouseOver="ShowTip(event, 'tt49', 'link49')" onMouseOut="HideTip('tt49')" class=ISymbol>gfx_getscreen</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_lines_begin" id=link50 onMouseOver="ShowTip(event, 'tt50', 'link50')" onMouseOut="HideTip('tt50')" class=ISymbol>gfx_lines_begin</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_lines_draw" id=link51 onMouseOver="ShowTip(event, 'tt51', 'link51')" onMouseOut="HideTip('tt51')" class=ISymbol>gfx_lines_draw</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_lines_end" id=link52 onMouseOver="ShowTip(event, 'tt52', 'link52')" onMouseOut="HideTip('tt52')" class=ISymbol>gfx_lines_end</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_load_png" id=link53 onMouseOver="ShowTip(event, 'tt53', 'link53')" onMouseOut="HideTip('tt53')" class=ISymbol>gfx_load_png</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_load_texture" id=link54 onMouseOver="ShowTip(event, 'tt54', 'link54')" onMouseOut="HideTip('tt54')" class=ISymbol>gfx_load_texture</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_load_texture_raw" id=link55 onMouseOver="ShowTip(event, 'tt55', 'link55')" onMouseOut="HideTip('tt55')" class=ISymbol>gfx_load_texture_raw</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_mapscreen" id=link56 onMouseOver="ShowTip(event, 'tt56', 'link56')" onMouseOut="HideTip('tt56')" class=ISymbol>gfx_mapscreen</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_memory_usage" id=link57 onMouseOver="ShowTip(event, 'tt57', 'link57')" onMouseOut="HideTip('tt57')" class=ISymbol>gfx_memory_usage</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_begin" id=link58 onMouseOver="ShowTip(event, 'tt58', 'link58')" onMouseOut="HideTip('tt58')" class=ISymbol>gfx_quads_begin</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_draw" id=link59 onMouseOver="ShowTip(event, 'tt59', 'link59')" onMouseOut="HideTip('tt59')" class=ISymbol>gfx_quads_draw</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_draw_freeform" id=link60 onMouseOver="ShowTip(event, 'tt60', 'link60')" onMouseOut="HideTip('tt60')" class=ISymbol>gfx_quads_draw_freeform</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_drawTL" id=link61 onMouseOver="ShowTip(event, 'tt61', 'link61')" onMouseOut="HideTip('tt61')" class=ISymbol>gfx_quads_drawTL</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_end" id=link62 onMouseOver="ShowTip(event, 'tt62', 'link62')" onMouseOut="HideTip('tt62')" class=ISymbol>gfx_quads_end</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_setrotation" id=link63 onMouseOver="ShowTip(event, 'tt63', 'link63')" onMouseOut="HideTip('tt63')" class=ISymbol>gfx_quads_setrotation</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_setsubset" id=link64 onMouseOver="ShowTip(event, 'tt64', 'link64')" onMouseOut="HideTip('tt64')" class=ISymbol>gfx_quads_setsubset</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_setsubset_free" id=link65 onMouseOver="ShowTip(event, 'tt65', 'link65')" onMouseOut="HideTip('tt65')" class=ISymbol>gfx_quads_setsubset_free</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_text" id=link66 onMouseOver="ShowTip(event, 'tt66', 'link66')" onMouseOut="HideTip('tt66')" class=ISymbol>gfx_quads_text</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenaspect" id=link67 onMouseOver="ShowTip(event, 'tt67', 'link67')" onMouseOut="HideTip('tt67')" class=ISymbol>gfx_screenaspect</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenheight" id=link68 onMouseOver="ShowTip(event, 'tt68', 'link68')" onMouseOut="HideTip('tt68')" class=ISymbol>gfx_screenheight</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenshot" id=link69 onMouseOver="ShowTip(event, 'tt69', 'link69')" onMouseOut="HideTip('tt69')" class=ISymbol>gfx_screenshot</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenwidth" id=link70 onMouseOver="ShowTip(event, 'tt70', 'link70')" onMouseOut="HideTip('tt70')" class=ISymbol>gfx_screenwidth</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_setcolor" id=link71 onMouseOver="ShowTip(event, 'tt71', 'link71')" onMouseOut="HideTip('tt71')" class=ISymbol>gfx_setcolor</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_setcolorvertex" id=link72 onMouseOver="ShowTip(event, 'tt72', 'link72')" onMouseOut="HideTip('tt72')" class=ISymbol>gfx_setcolorvertex</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text" id=link73 onMouseOver="ShowTip(event, 'tt73', 'link73')" onMouseOut="HideTip('tt73')" class=ISymbol>gfx_text</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text_color" id=link74 onMouseOver="ShowTip(event, 'tt74', 'link74')" onMouseOut="HideTip('tt74')" class=ISymbol>gfx_text_color</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text_set_default_font" id=link75 onMouseOver="ShowTip(event, 'tt75', 'link75')" onMouseOut="HideTip('tt75')" class=ISymbol>gfx_text_set_default_font</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text_width" id=link76 onMouseOver="ShowTip(event, 'tt76', 'link76')" onMouseOut="HideTip('tt76')" class=ISymbol>gfx_text_width</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_texture_set" id=link77 onMouseOver="ShowTip(event, 'tt77', 'link77')" onMouseOut="HideTip('tt77')" class=ISymbol>gfx_texture_set</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_unload_texture" id=link78 onMouseOver="ShowTip(event, 'tt78', 'link78')" onMouseOut="HideTip('tt78')" class=ISymbol>gfx_unload_texture</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_inp-h.html#INPUT_EVENT.inp_clear_events" id=link79 onMouseOver="ShowTip(event, 'tt79', 'link79')" onMouseOut="HideTip('tt79')" class=ISymbol>inp_clear_events</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_clear_key_states" id=link80 onMouseOver="ShowTip(event, 'tt80', 'link80')" onMouseOut="HideTip('tt80')" class=ISymbol>inp_clear_key_states</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_get_event" id=link81 onMouseOver="ShowTip(event, 'tt81', 'link81')" onMouseOut="HideTip('tt81')" class=ISymbol>inp_get_event</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_code" id=link82 onMouseOver="ShowTip(event, 'tt82', 'link82')" onMouseOut="HideTip('tt82')" class=ISymbol>inp_key_code</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_down" id=link83 onMouseOver="ShowTip(event, 'tt83', 'link83')" onMouseOut="HideTip('tt83')" class=ISymbol>inp_key_down</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_name" id=link84 onMouseOver="ShowTip(event, 'tt84', 'link84')" onMouseOut="HideTip('tt84')" class=ISymbol>inp_key_name</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_pressed" id=link85 onMouseOver="ShowTip(event, 'tt85', 'link85')" onMouseOut="HideTip('tt85')" class=ISymbol>inp_key_pressed</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_presses" id=link86 onMouseOver="ShowTip(event, 'tt86', 'link86')" onMouseOut="HideTip('tt86')" class=ISymbol>inp_key_presses</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_releases" id=link87 onMouseOver="ShowTip(event, 'tt87', 'link87')" onMouseOut="HideTip('tt87')" class=ISymbol>inp_key_releases</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_state" id=link88 onMouseOver="ShowTip(event, 'tt88', 'link88')" onMouseOut="HideTip('tt88')" class=ISymbol>inp_key_state</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_was_pressed" id=link89 onMouseOver="ShowTip(event, 'tt89', 'link89')" onMouseOut="HideTip('tt89')" class=ISymbol>inp_key_was_pressed</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_mouse_doubleclick" id=link90 onMouseOver="ShowTip(event, 'tt90', 'link90')" onMouseOut="HideTip('tt90')" class=ISymbol>inp_mouse_doubleclick</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_mouse_relative" id=link91 onMouseOver="ShowTip(event, 'tt91', 'link91')" onMouseOut="HideTip('tt91')" class=ISymbol>inp_mouse_relative</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_mouse_scroll" id=link92 onMouseOver="ShowTip(event, 'tt92', 'link92')" onMouseOut="HideTip('tt92')" class=ISymbol>inp_mouse_scroll</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_num_events" id=link93 onMouseOver="ShowTip(event, 'tt93', 'link93')" onMouseOut="HideTip('tt93')" class=ISymbol>inp_num_events</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gs_common-hpp.html#Game_World.insert_entity" id=link94 onMouseOver="ShowTip(event, 'tt94', 'link94')" onMouseOut="HideTip('tt94')" class=ISymbol>insert_entity</a>, <span class=IParent>Game World</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gs_common-hpp.html#Game_World.interserct_character" id=link95 onMouseOver="ShowTip(event, 'tt95', 'link95')" onMouseOut="HideTip('tt95')" class=ISymbol>interserct_character</a>, <span class=IParent>Game World</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#io_close" id=link96 onMouseOver="ShowTip(event, 'tt96', 'link96')" onMouseOut="HideTip('tt96')" class=ISymbol>io_close</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#io_flush" id=link97 onMouseOver="ShowTip(event, 'tt97', 'link97')" onMouseOut="HideTip('tt97')" class=ISymbol>io_flush</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#io_length" id=link98 onMouseOver="ShowTip(event, 'tt98', 'link98')" onMouseOut="HideTip('tt98')" class=ISymbol>io_length</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#io_open" id=link99 onMouseOver="ShowTip(event, 'tt99', 'link99')" onMouseOut="HideTip('tt99')" class=ISymbol>io_open</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#io_read" id=link100 onMouseOver="ShowTip(event, 'tt100', 'link100')" onMouseOut="HideTip('tt100')" class=ISymbol>io_read</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#io_seek" id=link101 onMouseOver="ShowTip(event, 'tt101', 'link101')" onMouseOut="HideTip('tt101')" class=ISymbol>io_seek</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#io_skip" id=link102 onMouseOver="ShowTip(event, 'tt102', 'link102')" onMouseOut="HideTip('tt102')" class=ISymbol>io_skip</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#io_stderr" id=link103 onMouseOver="ShowTip(event, 'tt103', 'link103')" onMouseOut="HideTip('tt103')" class=ISymbol>io_stderr</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#io_stdin" id=link104 onMouseOver="ShowTip(event, 'tt104', 'link104')" onMouseOut="HideTip('tt104')" class=ISymbol>io_stdin</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#io_stdout" id=link105 onMouseOver="ShowTip(event, 'tt105', 'link105')" onMouseOut="HideTip('tt105')" class=ISymbol>io_stdout</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#io_tell" id=link106 onMouseOver="ShowTip(event, 'tt106', 'link106')" onMouseOut="HideTip('tt106')" class=ISymbol>io_tell</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#io_write" id=link107 onMouseOver="ShowTip(event, 'tt107', 'link107')" onMouseOut="HideTip('tt107')" class=ISymbol>io_write</a></td></tr></table>
+<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="#G">G</a> &middot; <a href="#H">H</a> &middot; <a href="#I">I</a> &middot; J &middot; K &middot; L &middot; <a href="#M">M</a> &middot; N &middot; <a href="Functions3.html#O">O</a> &middot; P &middot; Q &middot; <a href="Functions3.html#R">R</a> &middot; <a href="Functions3.html#S">S</a> &middot; <a href="Functions3.html#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="G"></a>G</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_blend_additive" id=link40 onMouseOver="ShowTip(event, 'tt40', 'link40')" onMouseOut="HideTip('tt40')" class=ISymbol>gfx_blend_additive</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_blend_none" id=link41 onMouseOver="ShowTip(event, 'tt41', 'link41')" onMouseOut="HideTip('tt41')" class=ISymbol>gfx_blend_none</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_blend_normal" id=link42 onMouseOver="ShowTip(event, 'tt42', 'link42')" onMouseOut="HideTip('tt42')" class=ISymbol>gfx_blend_normal</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_clear" id=link43 onMouseOver="ShowTip(event, 'tt43', 'link43')" onMouseOut="HideTip('tt43')" class=ISymbol>gfx_clear</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_clip_disable" id=link44 onMouseOver="ShowTip(event, 'tt44', 'link44')" onMouseOut="HideTip('tt44')" class=ISymbol>gfx_clip_disable</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_clip_enable" id=link45 onMouseOver="ShowTip(event, 'tt45', 'link45')" onMouseOut="HideTip('tt45')" class=ISymbol>gfx_clip_enable</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_get_video_modes" id=link46 onMouseOver="ShowTip(event, 'tt46', 'link46')" onMouseOut="HideTip('tt46')" class=ISymbol>gfx_get_video_modes</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_getscreen" id=link47 onMouseOver="ShowTip(event, 'tt47', 'link47')" onMouseOut="HideTip('tt47')" class=ISymbol>gfx_getscreen</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_lines_begin" id=link48 onMouseOver="ShowTip(event, 'tt48', 'link48')" onMouseOut="HideTip('tt48')" class=ISymbol>gfx_lines_begin</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_lines_draw" id=link49 onMouseOver="ShowTip(event, 'tt49', 'link49')" onMouseOut="HideTip('tt49')" class=ISymbol>gfx_lines_draw</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_lines_end" id=link50 onMouseOver="ShowTip(event, 'tt50', 'link50')" onMouseOut="HideTip('tt50')" class=ISymbol>gfx_lines_end</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_load_png" id=link51 onMouseOver="ShowTip(event, 'tt51', 'link51')" onMouseOut="HideTip('tt51')" class=ISymbol>gfx_load_png</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_load_texture" id=link52 onMouseOver="ShowTip(event, 'tt52', 'link52')" onMouseOut="HideTip('tt52')" class=ISymbol>gfx_load_texture</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_load_texture_raw" id=link53 onMouseOver="ShowTip(event, 'tt53', 'link53')" onMouseOut="HideTip('tt53')" class=ISymbol>gfx_load_texture_raw</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_mapscreen" id=link54 onMouseOver="ShowTip(event, 'tt54', 'link54')" onMouseOut="HideTip('tt54')" class=ISymbol>gfx_mapscreen</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_memory_usage" id=link55 onMouseOver="ShowTip(event, 'tt55', 'link55')" onMouseOut="HideTip('tt55')" class=ISymbol>gfx_memory_usage</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_minimize" id=link56 onMouseOver="ShowTip(event, 'tt56', 'link56')" onMouseOut="HideTip('tt56')" class=ISymbol>gfx_minimize</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_begin" id=link57 onMouseOver="ShowTip(event, 'tt57', 'link57')" onMouseOut="HideTip('tt57')" class=ISymbol>gfx_quads_begin</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_draw" id=link58 onMouseOver="ShowTip(event, 'tt58', 'link58')" onMouseOut="HideTip('tt58')" class=ISymbol>gfx_quads_draw</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_draw_freeform" id=link59 onMouseOver="ShowTip(event, 'tt59', 'link59')" onMouseOut="HideTip('tt59')" class=ISymbol>gfx_quads_draw_freeform</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_drawTL" id=link60 onMouseOver="ShowTip(event, 'tt60', 'link60')" onMouseOut="HideTip('tt60')" class=ISymbol>gfx_quads_drawTL</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_end" id=link61 onMouseOver="ShowTip(event, 'tt61', 'link61')" onMouseOut="HideTip('tt61')" class=ISymbol>gfx_quads_end</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_setrotation" id=link62 onMouseOver="ShowTip(event, 'tt62', 'link62')" onMouseOut="HideTip('tt62')" class=ISymbol>gfx_quads_setrotation</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_setsubset" id=link63 onMouseOver="ShowTip(event, 'tt63', 'link63')" onMouseOut="HideTip('tt63')" class=ISymbol>gfx_quads_setsubset</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_setsubset_free" id=link64 onMouseOver="ShowTip(event, 'tt64', 'link64')" onMouseOut="HideTip('tt64')" class=ISymbol>gfx_quads_setsubset_free</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_text" id=link65 onMouseOver="ShowTip(event, 'tt65', 'link65')" onMouseOut="HideTip('tt65')" class=ISymbol>gfx_quads_text</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenaspect" id=link66 onMouseOver="ShowTip(event, 'tt66', 'link66')" onMouseOut="HideTip('tt66')" class=ISymbol>gfx_screenaspect</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenheight" id=link67 onMouseOver="ShowTip(event, 'tt67', 'link67')" onMouseOut="HideTip('tt67')" class=ISymbol>gfx_screenheight</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenshot" id=link68 onMouseOver="ShowTip(event, 'tt68', 'link68')" onMouseOut="HideTip('tt68')" class=ISymbol>gfx_screenshot</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenshot_direct" id=link69 onMouseOver="ShowTip(event, 'tt69', 'link69')" onMouseOut="HideTip('tt69')" class=ISymbol>gfx_screenshot_direct</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenwidth" id=link70 onMouseOver="ShowTip(event, 'tt70', 'link70')" onMouseOut="HideTip('tt70')" class=ISymbol>gfx_screenwidth</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_setcolor" id=link71 onMouseOver="ShowTip(event, 'tt71', 'link71')" onMouseOut="HideTip('tt71')" class=ISymbol>gfx_setcolor</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_setcolorvertex" id=link72 onMouseOver="ShowTip(event, 'tt72', 'link72')" onMouseOut="HideTip('tt72')" class=ISymbol>gfx_setcolorvertex</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text" id=link73 onMouseOver="ShowTip(event, 'tt73', 'link73')" onMouseOut="HideTip('tt73')" class=ISymbol>gfx_text</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text_color" id=link74 onMouseOver="ShowTip(event, 'tt74', 'link74')" onMouseOut="HideTip('tt74')" class=ISymbol>gfx_text_color</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text_set_default_font" id=link75 onMouseOver="ShowTip(event, 'tt75', 'link75')" onMouseOut="HideTip('tt75')" class=ISymbol>gfx_text_set_default_font</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text_width" id=link76 onMouseOver="ShowTip(event, 'tt76', 'link76')" onMouseOut="HideTip('tt76')" class=ISymbol>gfx_text_width</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_texture_set" id=link77 onMouseOver="ShowTip(event, 'tt77', 'link77')" onMouseOut="HideTip('tt77')" class=ISymbol>gfx_texture_set</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_unload_texture" id=link78 onMouseOver="ShowTip(event, 'tt78', 'link78')" onMouseOut="HideTip('tt78')" class=ISymbol>gfx_unload_texture</a></td></tr><tr><td class=IHeading><a name="H"></a>H</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_huffman-h.html#huffman_compress" id=link79 onMouseOver="ShowTip(event, 'tt79', 'link79')" onMouseOut="HideTip('tt79')" class=ISymbol>huffman_compress</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_huffman-h.html#huffman_decompress" id=link80 onMouseOver="ShowTip(event, 'tt80', 'link80')" onMouseOut="HideTip('tt80')" class=ISymbol>huffman_decompress</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_huffman-h.html#huffman_init" id=link81 onMouseOver="ShowTip(event, 'tt81', 'link81')" onMouseOut="HideTip('tt81')" class=ISymbol>huffman_init</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_inp-h.html#INPUT_EVENT.inp_clear_events" id=link82 onMouseOver="ShowTip(event, 'tt82', 'link82')" onMouseOut="HideTip('tt82')" class=ISymbol>inp_clear_events</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_clear_key_states" id=link83 onMouseOver="ShowTip(event, 'tt83', 'link83')" onMouseOut="HideTip('tt83')" class=ISymbol>inp_clear_key_states</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_get_event" id=link84 onMouseOver="ShowTip(event, 'tt84', 'link84')" onMouseOut="HideTip('tt84')" class=ISymbol>inp_get_event</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_code" id=link85 onMouseOver="ShowTip(event, 'tt85', 'link85')" onMouseOut="HideTip('tt85')" class=ISymbol>inp_key_code</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_down" id=link86 onMouseOver="ShowTip(event, 'tt86', 'link86')" onMouseOut="HideTip('tt86')" class=ISymbol>inp_key_down</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_name" id=link87 onMouseOver="ShowTip(event, 'tt87', 'link87')" onMouseOut="HideTip('tt87')" class=ISymbol>inp_key_name</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_pressed" id=link88 onMouseOver="ShowTip(event, 'tt88', 'link88')" onMouseOut="HideTip('tt88')" class=ISymbol>inp_key_pressed</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_presses" id=link89 onMouseOver="ShowTip(event, 'tt89', 'link89')" onMouseOut="HideTip('tt89')" class=ISymbol>inp_key_presses</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_releases" id=link90 onMouseOver="ShowTip(event, 'tt90', 'link90')" onMouseOut="HideTip('tt90')" class=ISymbol>inp_key_releases</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_state" id=link91 onMouseOver="ShowTip(event, 'tt91', 'link91')" onMouseOut="HideTip('tt91')" class=ISymbol>inp_key_state</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_was_pressed" id=link92 onMouseOver="ShowTip(event, 'tt92', 'link92')" onMouseOut="HideTip('tt92')" class=ISymbol>inp_key_was_pressed</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_mouse_doubleclick" id=link93 onMouseOver="ShowTip(event, 'tt93', 'link93')" onMouseOut="HideTip('tt93')" class=ISymbol>inp_mouse_doubleclick</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_mouse_relative" id=link94 onMouseOver="ShowTip(event, 'tt94', 'link94')" onMouseOut="HideTip('tt94')" class=ISymbol>inp_mouse_relative</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_mouse_scroll" id=link95 onMouseOver="ShowTip(event, 'tt95', 'link95')" onMouseOut="HideTip('tt95')" class=ISymbol>inp_mouse_scroll</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_num_events" id=link96 onMouseOver="ShowTip(event, 'tt96', 'link96')" onMouseOut="HideTip('tt96')" class=ISymbol>inp_num_events</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gameworld-hpp.html#Game_World.insert_entity" id=link97 onMouseOver="ShowTip(event, 'tt97', 'link97')" onMouseOut="HideTip('tt97')" class=ISymbol>insert_entity</a>, <span class=IParent>Game World</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gameworld-hpp.html#Game_World.interserct_character" id=link98 onMouseOver="ShowTip(event, 'tt98', 'link98')" onMouseOut="HideTip('tt98')" class=ISymbol>interserct_character</a>, <span class=IParent>Game World</span></td></tr><tr><td class=IHeading><a name="M"></a>M</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_find_item" id=link99 onMouseOver="ShowTip(event, 'tt99', 'link99')" onMouseOut="HideTip('tt99')" class=ISymbol>map_find_item</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_get_data" id=link100 onMouseOver="ShowTip(event, 'tt100', 'link100')" onMouseOut="HideTip('tt100')" class=ISymbol>map_get_data</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_get_data_swapped" id=link101 onMouseOver="ShowTip(event, 'tt101', 'link101')" onMouseOut="HideTip('tt101')" class=ISymbol>map_get_data_swapped</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_get_item" id=link102 onMouseOver="ShowTip(event, 'tt102', 'link102')" onMouseOut="HideTip('tt102')" class=ISymbol>map_get_item</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_get_type" id=link103 onMouseOver="ShowTip(event, 'tt103', 'link103')" onMouseOut="HideTip('tt103')" class=ISymbol>map_get_type</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_is_loaded" id=link104 onMouseOver="ShowTip(event, 'tt104', 'link104')" onMouseOut="HideTip('tt104')" class=ISymbol>map_is_loaded</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_num_items" id=link105 onMouseOver="ShowTip(event, 'tt105', 'link105')" onMouseOut="HideTip('tt105')" class=ISymbol>map_num_items</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_unload_data" id=link106 onMouseOver="ShowTip(event, 'tt106', 'link106')" onMouseOut="HideTip('tt106')" class=ISymbol>map_unload_data</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_connected" id=link107 onMouseOver="ShowTip(event, 'tt107', 'link107')" onMouseOut="HideTip('tt107')" class=ISymbol>modc_connected</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_console_init" id=link108 onMouseOver="ShowTip(event, 'tt108', 'link108')" onMouseOut="HideTip('tt108')" class=ISymbol>modc_console_init</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_entergame" id=link109 onMouseOver="ShowTip(event, 'tt109', 'link109')" onMouseOut="HideTip('tt109')" class=ISymbol>modc_entergame</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_init" id=link110 onMouseOver="ShowTip(event, 'tt110', 'link110')" onMouseOut="HideTip('tt110')" class=ISymbol>modc_init</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_message" id=link111 onMouseOver="ShowTip(event, 'tt111', 'link111')" onMouseOut="HideTip('tt111')" class=ISymbol>modc_message</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_net_version" id=link112 onMouseOver="ShowTip(event, 'tt112', 'link112')" onMouseOut="HideTip('tt112')" class=ISymbol>modc_net_version</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_newsnapshot" id=link113 onMouseOver="ShowTip(event, 'tt113', 'link113')" onMouseOut="HideTip('tt113')" class=ISymbol>modc_newsnapshot</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_predict" id=link114 onMouseOver="ShowTip(event, 'tt114', 'link114')" onMouseOut="HideTip('tt114')" class=ISymbol>modc_predict</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_rcon_line" id=link115 onMouseOver="ShowTip(event, 'tt115', 'link115')" onMouseOut="HideTip('tt115')" class=ISymbol>modc_rcon_line</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_render" id=link116 onMouseOver="ShowTip(event, 'tt116', 'link116')" onMouseOut="HideTip('tt116')" class=ISymbol>modc_render</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_save_config" id=link117 onMouseOver="ShowTip(event, 'tt117', 'link117')" onMouseOut="HideTip('tt117')" class=ISymbol>modc_save_config</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_shutdown" id=link118 onMouseOver="ShowTip(event, 'tt118', 'link118')" onMouseOut="HideTip('tt118')" class=ISymbol>modc_shutdown</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_snap_input" id=link119 onMouseOver="ShowTip(event, 'tt119', 'link119')" onMouseOut="HideTip('tt119')" class=ISymbol>modc_snap_input</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_statechange" id=link120 onMouseOver="ShowTip(event, 'tt120', 'link120')" onMouseOut="HideTip('tt120')" class=ISymbol>modc_statechange</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_direct_input" id=link121 onMouseOver="ShowTip(event, 'tt121', 'link121')" onMouseOut="HideTip('tt121')" class=ISymbol>mods_client_direct_input</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_drop" id=link122 onMouseOver="ShowTip(event, 'tt122', 'link122')" onMouseOut="HideTip('tt122')" class=ISymbol>mods_client_drop</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_enter" id=link123 onMouseOver="ShowTip(event, 'tt123', 'link123')" onMouseOut="HideTip('tt123')" class=ISymbol>mods_client_enter</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_predicted_input" id=link124 onMouseOver="ShowTip(event, 'tt124', 'link124')" onMouseOut="HideTip('tt124')" class=ISymbol>mods_client_predicted_input</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_connected" id=link125 onMouseOver="ShowTip(event, 'tt125', 'link125')" onMouseOut="HideTip('tt125')" class=ISymbol>mods_connected</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_console_init" id=link126 onMouseOver="ShowTip(event, 'tt126', 'link126')" onMouseOut="HideTip('tt126')" class=ISymbol>mods_console_init</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_init" id=link127 onMouseOver="ShowTip(event, 'tt127', 'link127')" onMouseOut="HideTip('tt127')" class=ISymbol>mods_init</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_message" id=link128 onMouseOver="ShowTip(event, 'tt128', 'link128')" onMouseOut="HideTip('tt128')" class=ISymbol>mods_message</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_net_version" id=link129 onMouseOver="ShowTip(event, 'tt129', 'link129')" onMouseOut="HideTip('tt129')" class=ISymbol>mods_net_version</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_postsnap" id=link130 onMouseOver="ShowTip(event, 'tt130', 'link130')" onMouseOut="HideTip('tt130')" class=ISymbol>mods_postsnap</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_presnap" id=link131 onMouseOver="ShowTip(event, 'tt131', 'link131')" onMouseOut="HideTip('tt131')" class=ISymbol>mods_presnap</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_shutdown" id=link132 onMouseOver="ShowTip(event, 'tt132', 'link132')" onMouseOut="HideTip('tt132')" class=ISymbol>mods_shutdown</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_snap" id=link133 onMouseOver="ShowTip(event, 'tt133', 'link133')" onMouseOut="HideTip('tt133')" class=ISymbol>mods_snap</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_tick" id=link134 onMouseOver="ShowTip(event, 'tt134', 'link134')" onMouseOut="HideTip('tt134')" class=ISymbol>mods_tick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_version" id=link135 onMouseOver="ShowTip(event, 'tt135', 'link135')" onMouseOut="HideTip('tt135')" class=ISymbol>mods_version</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_end" id=link136 onMouseOver="ShowTip(event, 'tt136', 'link136')" onMouseOut="HideTip('tt136')" class=ISymbol>msg_pack_end</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_int" id=link137 onMouseOver="ShowTip(event, 'tt137', 'link137')" onMouseOut="HideTip('tt137')" class=ISymbol>msg_pack_int</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_raw" id=link138 onMouseOver="ShowTip(event, 'tt138', 'link138')" onMouseOut="HideTip('tt138')" class=ISymbol>msg_pack_raw</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_start" id=link139 onMouseOver="ShowTip(event, 'tt139', 'link139')" onMouseOut="HideTip('tt139')" class=ISymbol>msg_pack_start</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_string" id=link140 onMouseOver="ShowTip(event, 'tt140', 'link140')" onMouseOut="HideTip('tt140')" class=ISymbol>msg_pack_string</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_error" id=link141 onMouseOver="ShowTip(event, 'tt141', 'link141')" onMouseOut="HideTip('tt141')" class=ISymbol>msg_unpack_error</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_int" id=link142 onMouseOver="ShowTip(event, 'tt142', 'link142')" onMouseOut="HideTip('tt142')" class=ISymbol>msg_unpack_int</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_raw" id=link143 onMouseOver="ShowTip(event, 'tt143', 'link143')" onMouseOut="HideTip('tt143')" class=ISymbol>msg_unpack_raw</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_string" id=link144 onMouseOver="ShowTip(event, 'tt144', 'link144')" onMouseOut="HideTip('tt144')" class=ISymbol>msg_unpack_string</a></td></tr></table>
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt42"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_blend_additive()</td></tr></table></blockquote>Set the active blending mode to additive (src, one).</div></div><div class=CToolTip id="tt43"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_blend_none()</td></tr></table></blockquote>Disables blending</div></div><div class=CToolTip id="tt44"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_blend_normal()</td></tr></table></blockquote>Set the active blending mode to normal (src, 1-src).</div></div><div class=CToolTip id="tt45"><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 gfx_clear(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Clears the screen with the specified color.</div></div><div class=CToolTip id="tt46"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_clip_disable()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt47"><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 gfx_clip_enable(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>y,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>w,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>h</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt48"><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 gfx_get_video_modes(</td><td class=PType nowrap>VIDEO_MODE&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>list,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>maxcount</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Fetches a list of all the available video modes.</div></div><div class=CToolTip id="tt49"><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 gfx_getscreen(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>tl_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>tl_y,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>br_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>br_y</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt50"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_lines_begin()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt51"><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 gfx_lines_draw(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y1</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt52"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_lines_end()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt53"><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 gfx_load_png(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>IMAGE_INFO&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>img,</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>filename</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Loads a PNG image from disk.</div></div><div class=CToolTip id="tt54"><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 gfx_load_texture(</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></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>store_format,</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>flags</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Loads a texture from a file. </div></div><div class=CToolTip id="tt55"><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 gfx_load_texture_raw(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>w,</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>h,</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>format,</td></tr><tr><td></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>store_format,</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>flags</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Loads a texture from memory.</div></div><div class=CToolTip id="tt56"><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 gfx_mapscreen(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_y,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_y</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Specifies the coordinate system for the screen.</div></div><div class=CToolTip id="tt57"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int gfx_memory_usage()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt58"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_quads_begin()</td></tr></table></blockquote>Begins a quad drawing session.</div></div><div class=CToolTip id="tt59"><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 gfx_quads_draw(</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></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>w,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>h</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Draws a quad by specifying the center point.</div></div><div class=CToolTip id="tt60"><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 gfx_quads_draw_freeform(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x3,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y3</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Draws a quad by specifying the corner points.</div></div><div class=CToolTip id="tt61"><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 gfx_quads_drawTL(</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></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>width,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>height</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Draws a quad by specifying the top-left point.</div></div><div class=CToolTip id="tt62"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_quads_end()</td></tr></table></blockquote>Ends a quad session.</div></div><div class=CToolTip id="tt63"><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 gfx_quads_setrotation(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>angle</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the rotation to use when drawing a quad.</div></div><div class=CToolTip id="tt64"><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 gfx_quads_setsubset(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_u,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_v,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_u,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_v</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the uv coordinates to use.</div></div><div class=CToolTip id="tt65"><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 gfx_quads_setsubset_free(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x3,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y3</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt66"><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 gfx_quads_text(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>y,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size,</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>text</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt67"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float gfx_screenaspect()</td></tr></table></blockquote>Returns the aspect ratio between width and height.</div></div><div class=CToolTip id="tt68"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int gfx_screenheight()</td></tr></table></blockquote>Returns the screen height.</div></div><div class=CToolTip id="tt69"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_screenshot()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt70"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int gfx_screenwidth()</td></tr></table></blockquote>Returns the screen width.</div></div><div class=CToolTip id="tt71"><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 gfx_setcolor(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>a</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the color of all the vertices.</div></div><div class=CToolTip id="tt72"><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 gfx_setcolorvertex(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>i,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>a</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the color of a vertex.</div></div><div class=CToolTip id="tt73"><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 gfx_text(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>font,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>y,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size,</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>text,</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>max_width</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt74"><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 gfx_text_color(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>a</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt75"><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 gfx_text_set_default_font(</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>font</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt76"><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>float gfx_text_width(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>font,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size,</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>text,</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>length</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt77"><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 gfx_texture_set(</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>Sets the active texture.</div></div><div class=CToolTip id="tt78"><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 gfx_unload_texture(</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>Unloads a texture.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt40"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_blend_additive()</td></tr></table></blockquote>Set the active blending mode to additive (src, one).</div></div><div class=CToolTip id="tt41"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_blend_none()</td></tr></table></blockquote>Disables blending</div></div><div class=CToolTip id="tt42"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_blend_normal()</td></tr></table></blockquote>Set the active blending mode to normal (src, 1-src).</div></div><div class=CToolTip id="tt43"><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 gfx_clear(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Clears the screen with the specified color.</div></div><div class=CToolTip id="tt44"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_clip_disable()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt45"><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 gfx_clip_enable(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>y,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>w,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>h</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt46"><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 gfx_get_video_modes(</td><td class=PType nowrap>VIDEO_MODE&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>list,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>maxcount</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Fetches a list of all the available video modes.</div></div><div class=CToolTip id="tt47"><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 gfx_getscreen(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>tl_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>tl_y,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>br_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>br_y</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt48"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_lines_begin()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt49"><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 gfx_lines_draw(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y1</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt50"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_lines_end()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt51"><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 gfx_load_png(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>IMAGE_INFO&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>img,</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>filename</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Loads a PNG image from disk.</div></div><div class=CToolTip id="tt52"><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 gfx_load_texture(</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></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>store_format,</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>flags</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Loads a texture from a file. </div></div><div class=CToolTip id="tt53"><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 gfx_load_texture_raw(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>w,</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>h,</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>format,</td></tr><tr><td></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>store_format,</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>flags</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Loads a texture from memory.</div></div><div class=CToolTip id="tt54"><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 gfx_mapscreen(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_y,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_y</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Specifies the coordinate system for the screen.</div></div><div class=CToolTip id="tt55"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int gfx_memory_usage()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt56"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_minimize()</td></tr></table></blockquote>Minimizes the window.</div></div><div class=CToolTip id="tt57"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_quads_begin()</td></tr></table></blockquote>Begins a quad drawing session.</div></div><div class=CToolTip id="tt58"><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 gfx_quads_draw(</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></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>w,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>h</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Draws a quad by specifying the center point.</div></div><div class=CToolTip id="tt59"><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 gfx_quads_draw_freeform(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x3,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y3</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Draws a quad by specifying the corner points.</div></div><div class=CToolTip id="tt60"><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 gfx_quads_drawTL(</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></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>width,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>height</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Draws a quad by specifying the top-left point.</div></div><div class=CToolTip id="tt61"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_quads_end()</td></tr></table></blockquote>Ends a quad session.</div></div><div class=CToolTip id="tt62"><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 gfx_quads_setrotation(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>angle</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the rotation to use when drawing a quad.</div></div><div class=CToolTip id="tt63"><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 gfx_quads_setsubset(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_u,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_v,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_u,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_v</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the uv coordinates to use.</div></div><div class=CToolTip id="tt64"><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 gfx_quads_setsubset_free(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x3,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y3</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt65"><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 gfx_quads_text(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>y,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size,</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>text</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt66"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float gfx_screenaspect()</td></tr></table></blockquote>Returns the aspect ratio between width and height.</div></div><div class=CToolTip id="tt67"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int gfx_screenheight()</td></tr></table></blockquote>Returns the screen height.</div></div><div class=CToolTip id="tt68"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_screenshot()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt69"><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 gfx_screenshot_direct(</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>TODO</div></div><div class=CToolTip id="tt70"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int gfx_screenwidth()</td></tr></table></blockquote>Returns the screen width.</div></div><div class=CToolTip id="tt71"><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 gfx_setcolor(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>a</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the color of all the vertices.</div></div><div class=CToolTip id="tt72"><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 gfx_setcolorvertex(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>i,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>a</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the color of a vertex.</div></div><div class=CToolTip id="tt73"><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 gfx_text(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>font,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>y,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size,</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>text,</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>max_width</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt74"><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 gfx_text_color(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>a</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt75"><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 gfx_text_set_default_font(</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>font</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt76"><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>float gfx_text_width(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>font,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size,</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>text,</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>length</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt77"><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 gfx_texture_set(</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>Sets the active texture.</div></div><div class=CToolTip id="tt78"><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 gfx_unload_texture(</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>Unloads a texture.</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt79"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void inp_clear_events()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt80"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void inp_clear_key_states()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt81"><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>INPUT_EVENT inp_get_event(</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>TODO</div></div><div class=CToolTip id="tt82"><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 inp_key_code(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>key_name</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt83"><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 inp_key_down(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>key</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt84"><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 *inp_key_name(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>k</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt85"><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 inp_key_pressed(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>key</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Checks if a key is pressed.</div></div><div class=CToolTip id="tt86"><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 inp_key_presses(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>key</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt87"><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 inp_key_releases(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>key</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt88"><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 inp_key_state(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>key</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt89"><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 inp_key_was_pressed(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>key</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt90"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int inp_mouse_doubleclick()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt91"><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 inp_mouse_relative(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>y</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Fetches the mouse movements.</div></div><div class=CToolTip id="tt92"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int inp_mouse_scroll()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt93"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int inp_num_events()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt94"><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 insert_entity(</td><td class=PType nowrap>ENTITY&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>entity</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Adds an entity to the world.</div></div><div class=CToolTip id="tt95"><div class=CFunction>Finds the closest character that intersects the line.</div></div><div class=CToolTip id="tt96"><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 io_close(</td><td class=PType nowrap>IOHANDLE&nbsp;</td><td class=PParameter nowrap>io</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Closes a file.</div></div><div class=CToolTip id="tt97"><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 io_flush(</td><td class=PType nowrap>IOHANDLE&nbsp;</td><td class=PParameter nowrap>io</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Empties all buffers and writes all pending data.</div></div><div class=CToolTip id="tt98"><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>long int io_length(</td><td class=PType nowrap>IOHANDLE&nbsp;</td><td class=PParameter nowrap>io</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Gets the total length of the file. </div></div><div class=CToolTip id="tt99"><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>IOHANDLE io_open(</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></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>flags</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Opens a file.</div></div><div class=CToolTip id="tt100"><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>unsigned io_read(</td><td class=PType nowrap>IOHANDLE&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>io,</td></tr><tr><td></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>buffer,</td></tr><tr><td></td><td class=PType nowrap>unsigned&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Reads data into a buffer from a file.</div></div><div class=CToolTip id="tt101"><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 io_seek(</td><td class=PType nowrap>IOHANDLE&nbsp;</td><td class=PParameter nowrap>io,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>offset,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>origin</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Seeks to a specified offset in the file.</div></div><div class=CToolTip id="tt102"><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>unsigned io_skip(</td><td class=PType nowrap>IOHANDLE&nbsp;</td><td class=PParameter nowrap>io,</td></tr><tr><td></td><td class=PType nowrap>unsigned&nbsp;</td><td class=PParameter nowrap>size</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Skips data in a file.</div></div><div class=CToolTip id="tt103"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>IOHANDLE io_stderr()</td></tr></table></blockquote>Returns an IOHANDLE to the standard error.</div></div><div class=CToolTip id="tt104"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>IOHANDLE io_stdin()</td></tr></table></blockquote>Returns an IOHANDLE to the standard input.</div></div><div class=CToolTip id="tt105"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>IOHANDLE io_stdout()</td></tr></table></blockquote>Returns an IOHANDLE to the standard output.</div></div><div class=CToolTip id="tt106"><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>long int io_tell(</td><td class=PType nowrap>IOHANDLE&nbsp;</td><td class=PParameter nowrap>io</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Gets the current position in the file.</div></div><div class=CToolTip id="tt107"><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>unsigned io_write(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>IOHANDLE&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>io,</td></tr><tr><td></td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>buffer,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>unsigned&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Writes data from a buffer to file.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt79"><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 huffman_compress(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>HUFFMAN_STATE&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>huff,</td></tr><tr><td></td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>input,</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>input_size,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>output,</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>output_size</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Compresses a buffer and outputs a compressed buffer.</div></div><div class=CToolTip id="tt80"><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 huffman_decompress(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>HUFFMAN_STATE&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>huff,</td></tr><tr><td></td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>input,</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>input_size,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>output,</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>output_size</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Decompresses a buffer</div></div><div class=CToolTip id="tt81"><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 huffman_init(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>HUFFMAN_STATE&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>huff,</td></tr><tr><td></td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>unsigned&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>frequencies</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Inits the compressor/decompressor.</div></div><!--END_ND_TOOLTIPS-->
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt82"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void inp_clear_events()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt83"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void inp_clear_key_states()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt84"><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>INPUT_EVENT inp_get_event(</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>TODO</div></div><div class=CToolTip id="tt85"><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 inp_key_code(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>key_name</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt86"><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 inp_key_down(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>key</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt87"><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 *inp_key_name(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>k</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt88"><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 inp_key_pressed(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>key</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Checks if a key is pressed.</div></div><div class=CToolTip id="tt89"><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 inp_key_presses(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>key</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt90"><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 inp_key_releases(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>key</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt91"><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 inp_key_state(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>key</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt92"><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 inp_key_was_pressed(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>key</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt93"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int inp_mouse_doubleclick()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt94"><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 inp_mouse_relative(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>y</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Fetches the mouse movements.</div></div><div class=CToolTip id="tt95"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int inp_mouse_scroll()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt96"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int inp_num_events()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt97"><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 insert_entity(</td><td class=PType nowrap>ENTITY&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>entity</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Adds an entity to the world.</div></div><div class=CToolTip id="tt98"><div class=CFunction>Finds the closest character that intersects the line.</div></div><!--END_ND_TOOLTIPS-->
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt99"><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 *map_find_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><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Searches the map for an item.</div></div><div class=CToolTip id="tt100"><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 *map_get_data(</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>Fetches a pointer to a raw data chunk in the map.</div></div><div class=CToolTip id="tt101"><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 *map_get_data_swapped(</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>TODO</div></div><div class=CToolTip id="tt102"><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 *map_get_item(</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>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>type,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>id</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Gets an item from the loaded map from index.</div></div><div class=CToolTip id="tt103"><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 map_get_type(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>type,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>start,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>num</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Gets the index range of an item type.</div></div><div class=CToolTip id="tt104"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int map_is_loaded()</td></tr></table></blockquote>Checks if a map is loaded.</div></div><div class=CToolTip id="tt105"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int map_num_items()</td></tr></table></blockquote>Checks the number of items in the loaded map.</div></div><div class=CToolTip id="tt106"><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 map_unload_data(</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>TODO</div></div><div class=CToolTip id="tt107"><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="tt108"><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="tt109"><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="tt110"><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="tt111"><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="tt112"><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><div class=CToolTip id="tt113"><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="tt114"><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="tt115"><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="tt116"><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="tt117"><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="tt118"><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="tt119"><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="tt120"><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="tt121"><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_client_direct_input(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>cid,</td></tr><tr><td></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>input</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Called when the server recives new input from a client.</div></div><div class=CToolTip id="tt122"><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_client_drop(</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 when a client drops from the server.</div></div><div class=CToolTip id="tt123"><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_client_enter(</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 when a client has joined the game.</div></div><div class=CToolTip id="tt124"><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_client_predicted_input(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>cid,</td></tr><tr><td></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>input</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Called when the server applys the predicted input on the client.</div></div><div class=CToolTip id="tt125"><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_connected(</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="tt126"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void mods_console_init()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt127"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void mods_init()</td></tr></table></blockquote>Called when the server is started.</div></div><div class=CToolTip id="tt128"><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_message(</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>client_id</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt129"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>const char *mods_net_version()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt130"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void mods_postsnap()</td></tr></table></blockquote>Called after the server is done sending the snapshots.</div></div><div class=CToolTip id="tt131"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void mods_presnap()</td></tr></table></blockquote>Called before the server starts to construct snapshots for the clients.</div></div><div class=CToolTip id="tt132"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void mods_shutdown()</td></tr></table></blockquote>Called when the server quits.</div></div><div class=CToolTip id="tt133"><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="tt134"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void mods_tick()</td></tr></table></blockquote>Called with a regular interval to progress the gameplay.</div></div><div class=CToolTip id="tt135"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>const char *mods_version()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt136"><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="tt137"><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="tt138"><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="tt139"><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="tt140"><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="tt141"><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><div class=CToolTip id="tt142"><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="tt143"><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="tt144"><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><!--END_ND_TOOLTIPS-->
 
 </div><!--Index-->
 
@@ -25,9 +33,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <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"><!--
+<div id=Menu><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_huffman-h.html">e_huffman.h</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/entity-hpp.html">Entity</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gamecontroller-hpp.html">Game Controller</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gameworld-hpp.html">Game World</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 class=MEntry><div class=MIndex><a href="Files.html">Files</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><!--
+--></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="Files">Files</option><option value="Functions">Functions</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
 HideAllBut([8, 7, 6], 9);// --></script></div><!--Menu-->
 
 
diff --git a/docs/output/index/Functions3.html b/docs/output/index/Functions3.html
index 79367ec7..a8b83786 100644
--- a/docs/output/index/Functions3.html
+++ b/docs/output/index/Functions3.html
@@ -11,9 +11,21 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<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="#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="Functions5.html#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="M"></a>M</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_find_item" id=link108 onMouseOver="ShowTip(event, 'tt108', 'link108')" onMouseOut="HideTip('tt108')" class=ISymbol>map_find_item</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_get_data" id=link109 onMouseOver="ShowTip(event, 'tt109', 'link109')" onMouseOut="HideTip('tt109')" class=ISymbol>map_get_data</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_get_data_swapped" id=link110 onMouseOver="ShowTip(event, 'tt110', 'link110')" onMouseOut="HideTip('tt110')" class=ISymbol>map_get_data_swapped</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_get_item" id=link111 onMouseOver="ShowTip(event, 'tt111', 'link111')" onMouseOut="HideTip('tt111')" class=ISymbol>map_get_item</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_get_type" id=link112 onMouseOver="ShowTip(event, 'tt112', 'link112')" onMouseOut="HideTip('tt112')" class=ISymbol>map_get_type</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_is_loaded" id=link113 onMouseOver="ShowTip(event, 'tt113', 'link113')" onMouseOut="HideTip('tt113')" class=ISymbol>map_is_loaded</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_num_items" id=link114 onMouseOver="ShowTip(event, 'tt114', 'link114')" onMouseOut="HideTip('tt114')" class=ISymbol>map_num_items</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_unload_data" id=link115 onMouseOver="ShowTip(event, 'tt115', 'link115')" onMouseOut="HideTip('tt115')" class=ISymbol>map_unload_data</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#mem_alloc" id=link116 onMouseOver="ShowTip(event, 'tt116', 'link116')" onMouseOut="HideTip('tt116')" class=ISymbol>mem_alloc</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#mem_comp" id=link117 onMouseOver="ShowTip(event, 'tt117', 'link117')" onMouseOut="HideTip('tt117')" class=ISymbol>mem_comp</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#mem_copy" id=link118 onMouseOver="ShowTip(event, 'tt118', 'link118')" onMouseOut="HideTip('tt118')" class=ISymbol>mem_copy</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#mem_free" id=link119 onMouseOver="ShowTip(event, 'tt119', 'link119')" onMouseOut="HideTip('tt119')" class=ISymbol>mem_free</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#mem_move" id=link120 onMouseOver="ShowTip(event, 'tt120', 'link120')" onMouseOut="HideTip('tt120')" class=ISymbol>mem_move</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#mem_zero" id=link121 onMouseOver="ShowTip(event, 'tt121', 'link121')" onMouseOut="HideTip('tt121')" class=ISymbol>mem_zero</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_connected" id=link122 onMouseOver="ShowTip(event, 'tt122', 'link122')" onMouseOut="HideTip('tt122')" class=ISymbol>modc_connected</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_console_init" id=link123 onMouseOver="ShowTip(event, 'tt123', 'link123')" onMouseOut="HideTip('tt123')" class=ISymbol>modc_console_init</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_entergame" id=link124 onMouseOver="ShowTip(event, 'tt124', 'link124')" onMouseOut="HideTip('tt124')" class=ISymbol>modc_entergame</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_init" id=link125 onMouseOver="ShowTip(event, 'tt125', 'link125')" onMouseOut="HideTip('tt125')" class=ISymbol>modc_init</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_message" id=link126 onMouseOver="ShowTip(event, 'tt126', 'link126')" onMouseOut="HideTip('tt126')" class=ISymbol>modc_message</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_net_version" id=link127 onMouseOver="ShowTip(event, 'tt127', 'link127')" onMouseOut="HideTip('tt127')" class=ISymbol>modc_net_version</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_newsnapshot" id=link128 onMouseOver="ShowTip(event, 'tt128', 'link128')" onMouseOut="HideTip('tt128')" class=ISymbol>modc_newsnapshot</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_predict" id=link129 onMouseOver="ShowTip(event, 'tt129', 'link129')" onMouseOut="HideTip('tt129')" class=ISymbol>modc_predict</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_rcon_line" id=link130 onMouseOver="ShowTip(event, 'tt130', 'link130')" onMouseOut="HideTip('tt130')" class=ISymbol>modc_rcon_line</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_render" id=link131 onMouseOver="ShowTip(event, 'tt131', 'link131')" onMouseOut="HideTip('tt131')" class=ISymbol>modc_render</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_save_config" id=link132 onMouseOver="ShowTip(event, 'tt132', 'link132')" onMouseOut="HideTip('tt132')" class=ISymbol>modc_save_config</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_shutdown" id=link133 onMouseOver="ShowTip(event, 'tt133', 'link133')" onMouseOut="HideTip('tt133')" class=ISymbol>modc_shutdown</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_snap_input" id=link134 onMouseOver="ShowTip(event, 'tt134', 'link134')" onMouseOut="HideTip('tt134')" class=ISymbol>modc_snap_input</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_statechange" id=link135 onMouseOver="ShowTip(event, 'tt135', 'link135')" onMouseOut="HideTip('tt135')" class=ISymbol>modc_statechange</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_direct_input" id=link136 onMouseOver="ShowTip(event, 'tt136', 'link136')" onMouseOut="HideTip('tt136')" class=ISymbol>mods_client_direct_input</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_drop" id=link137 onMouseOver="ShowTip(event, 'tt137', 'link137')" onMouseOut="HideTip('tt137')" class=ISymbol>mods_client_drop</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_enter" id=link138 onMouseOver="ShowTip(event, 'tt138', 'link138')" onMouseOut="HideTip('tt138')" class=ISymbol>mods_client_enter</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_predicted_input" id=link139 onMouseOver="ShowTip(event, 'tt139', 'link139')" onMouseOut="HideTip('tt139')" class=ISymbol>mods_client_predicted_input</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_connected" id=link140 onMouseOver="ShowTip(event, 'tt140', 'link140')" onMouseOut="HideTip('tt140')" class=ISymbol>mods_connected</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_console_init" id=link141 onMouseOver="ShowTip(event, 'tt141', 'link141')" onMouseOut="HideTip('tt141')" class=ISymbol>mods_console_init</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_init" id=link142 onMouseOver="ShowTip(event, 'tt142', 'link142')" onMouseOut="HideTip('tt142')" class=ISymbol>mods_init</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_message" id=link143 onMouseOver="ShowTip(event, 'tt143', 'link143')" onMouseOut="HideTip('tt143')" class=ISymbol>mods_message</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_net_version" id=link144 onMouseOver="ShowTip(event, 'tt144', 'link144')" onMouseOut="HideTip('tt144')" class=ISymbol>mods_net_version</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_postsnap" id=link145 onMouseOver="ShowTip(event, 'tt145', 'link145')" onMouseOut="HideTip('tt145')" class=ISymbol>mods_postsnap</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_presnap" id=link146 onMouseOver="ShowTip(event, 'tt146', 'link146')" onMouseOut="HideTip('tt146')" class=ISymbol>mods_presnap</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_shutdown" id=link147 onMouseOver="ShowTip(event, 'tt147', 'link147')" onMouseOut="HideTip('tt147')" class=ISymbol>mods_shutdown</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_snap" id=link148 onMouseOver="ShowTip(event, 'tt148', 'link148')" onMouseOut="HideTip('tt148')" class=ISymbol>mods_snap</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_tick" id=link149 onMouseOver="ShowTip(event, 'tt149', 'link149')" onMouseOut="HideTip('tt149')" class=ISymbol>mods_tick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_version" id=link150 onMouseOver="ShowTip(event, 'tt150', 'link150')" onMouseOut="HideTip('tt150')" class=ISymbol>mods_version</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_end" id=link151 onMouseOver="ShowTip(event, 'tt151', 'link151')" onMouseOut="HideTip('tt151')" class=ISymbol>msg_pack_end</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_int" id=link152 onMouseOver="ShowTip(event, 'tt152', 'link152')" onMouseOut="HideTip('tt152')" class=ISymbol>msg_pack_int</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_raw" id=link153 onMouseOver="ShowTip(event, 'tt153', 'link153')" onMouseOut="HideTip('tt153')" class=ISymbol>msg_pack_raw</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_start" id=link154 onMouseOver="ShowTip(event, 'tt154', 'link154')" onMouseOut="HideTip('tt154')" class=ISymbol>msg_pack_start</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_string" id=link155 onMouseOver="ShowTip(event, 'tt155', 'link155')" onMouseOut="HideTip('tt155')" class=ISymbol>msg_pack_string</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_error" id=link156 onMouseOver="ShowTip(event, 'tt156', 'link156')" onMouseOut="HideTip('tt156')" class=ISymbol>msg_unpack_error</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_int" id=link157 onMouseOver="ShowTip(event, 'tt157', 'link157')" onMouseOut="HideTip('tt157')" class=ISymbol>msg_unpack_int</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_raw" id=link158 onMouseOver="ShowTip(event, 'tt158', 'link158')" onMouseOut="HideTip('tt158')" class=ISymbol>msg_unpack_raw</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_string" id=link159 onMouseOver="ShowTip(event, 'tt159', 'link159')" onMouseOut="HideTip('tt159')" class=ISymbol>msg_unpack_string</a></td></tr></table>
+<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; <a href="Functions2.html#H">H</a> &middot; <a href="Functions2.html#I">I</a> &middot; J &middot; K &middot; L &middot; <a href="Functions2.html#M">M</a> &middot; N &middot; <a href="#O">O</a> &middot; P &middot; Q &middot; <a href="#R">R</a> &middot; <a href="#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="O"></a>O</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gamecontroller-hpp.html#Game_Controller.on_character_death" id=link145 onMouseOver="ShowTip(event, 'tt145', 'link145')" onMouseOut="HideTip('tt145')" class=ISymbol>on_character_death</a>, <span class=IParent>Game Controller</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gamecontroller-hpp.html#Game_Controller.on_character_spawn" id=link146 onMouseOver="ShowTip(event, 'tt146', 'link146')" onMouseOut="HideTip('tt146')" class=ISymbol>on_character_spawn</a>, <span class=IParent>Game Controller</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gamecontroller-hpp.html#Game_Controller.on_entity" id=link147 onMouseOver="ShowTip(event, 'tt147', 'link147')" onMouseOut="HideTip('tt147')" class=ISymbol>on_entity</a>, <span class=IParent>Game Controller</span></td></tr><tr><td class=IHeading><a name="R"></a>R</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gameworld-hpp.html#Game_World.remove_entity" id=link148 onMouseOver="ShowTip(event, 'tt148', 'link148')" onMouseOut="HideTip('tt148')" class=ISymbol>remove_entity</a>, <span class=IParent>Game World</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/entity-hpp.html#Entity.reset" id=link149 onMouseOver="ShowTip(event, 'tt149', 'link149')" onMouseOut="HideTip('tt149')" class=ISymbol>reset</a>, <span class=IParent>Entity</span></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_server-h.html#server_clientname" id=link150 onMouseOver="ShowTip(event, 'tt150', 'link150')" onMouseOut="HideTip('tt150')" class=ISymbol>server_clientname</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_server-h.html#server_getclientinfo" id=link151 onMouseOver="ShowTip(event, 'tt151', 'link151')" onMouseOut="HideTip('tt151')" class=ISymbol>server_getclientinfo</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_server-h.html#server_kick" id=link152 onMouseOver="ShowTip(event, 'tt152', 'link152')" onMouseOut="HideTip('tt152')" class=ISymbol>server_kick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_server-h.html#server_latestinput" id=link153 onMouseOver="ShowTip(event, 'tt153', 'link153')" onMouseOut="HideTip('tt153')" class=ISymbol>server_latestinput</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#server_send_msg" id=link154 onMouseOver="ShowTip(event, 'tt154', 'link154')" onMouseOut="HideTip('tt154')" class=ISymbol>server_send_msg</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_server-h.html#server_setbrowseinfo" id=link155 onMouseOver="ShowTip(event, 'tt155', 'link155')" onMouseOut="HideTip('tt155')" class=ISymbol>server_setbrowseinfo</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_server-h.html#server_setclientname" id=link156 onMouseOver="ShowTip(event, 'tt156', 'link156')" onMouseOut="HideTip('tt156')" class=ISymbol>server_setclientname</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_server-h.html#server_setclientscore" id=link157 onMouseOver="ShowTip(event, 'tt157', 'link157')" onMouseOut="HideTip('tt157')" class=ISymbol>server_setclientscore</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_server-h.html#server_tick" id=link158 onMouseOver="ShowTip(event, 'tt158', 'link158')" onMouseOut="HideTip('tt158')" class=ISymbol>server_tick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_server-h.html#server_tickspeed" id=link159 onMouseOver="ShowTip(event, 'tt159', 'link159')" onMouseOut="HideTip('tt159')" class=ISymbol>server_tickspeed</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>snap</span><div class=ISubIndex><a href="../files/server/entity-hpp.html#Entity.snap" id=link160 onMouseOver="ShowTip(event, 'tt160', 'link160')" onMouseOut="HideTip('tt160')" class=IParent>Entity</a><a href="../files/server/gameworld-hpp.html#Game_World.snap" id=link161 onMouseOver="ShowTip(event, 'tt161', 'link161')" onMouseOut="HideTip('tt161')" class=IParent>Game World</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#snap_find_item" id=link162 onMouseOver="ShowTip(event, 'tt162', 'link162')" onMouseOut="HideTip('tt162')" class=ISymbol>snap_find_item</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#snap_free_id" id=link163 onMouseOver="ShowTip(event, 'tt163', 'link163')" onMouseOut="HideTip('tt163')" class=ISymbol>snap_free_id</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#snap_get_item" id=link164 onMouseOver="ShowTip(event, 'tt164', 'link164')" onMouseOut="HideTip('tt164')" class=ISymbol>snap_get_item</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#snap_input" id=link165 onMouseOver="ShowTip(event, 'tt165', 'link165')" onMouseOut="HideTip('tt165')" class=ISymbol>snap_input</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#snap_invalidate_item" id=link166 onMouseOver="ShowTip(event, 'tt166', 'link166')" onMouseOut="HideTip('tt166')" class=ISymbol>snap_invalidate_item</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#snap_new_id" id=link167 onMouseOver="ShowTip(event, 'tt167', 'link167')" onMouseOut="HideTip('tt167')" class=ISymbol>snap_new_id</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#snap_new_item" id=link168 onMouseOver="ShowTip(event, 'tt168', 'link168')" onMouseOut="HideTip('tt168')" class=ISymbol>snap_new_item</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#snap_num_items" id=link169 onMouseOver="ShowTip(event, 'tt169', 'link169')" onMouseOut="HideTip('tt169')" class=ISymbol>snap_num_items</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#snap_set_staticsize" id=link170 onMouseOver="ShowTip(event, 'tt170', 'link170')" onMouseOut="HideTip('tt170')" class=ISymbol>snap_set_staticsize</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_snd-h.html#snd_load_wv" id=link171 onMouseOver="ShowTip(event, 'tt171', 'link171')" onMouseOut="HideTip('tt171')" class=ISymbol>snd_load_wv</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_snd-h.html#snd_play" id=link172 onMouseOver="ShowTip(event, 'tt172', 'link172')" onMouseOut="HideTip('tt172')" class=ISymbol>snd_play</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_snd-h.html#snd_play_at" id=link173 onMouseOver="ShowTip(event, 'tt173', 'link173')" onMouseOut="HideTip('tt173')" class=ISymbol>snd_play_at</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_snd-h.html#snd_set_channel" id=link174 onMouseOver="ShowTip(event, 'tt174', 'link174')" onMouseOut="HideTip('tt174')" class=ISymbol>snd_set_channel</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_snd-h.html#snd_set_listener_pos" id=link175 onMouseOver="ShowTip(event, 'tt175', 'link175')" onMouseOut="HideTip('tt175')" class=ISymbol>snd_set_listener_pos</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_snd-h.html#snd_stop" id=link176 onMouseOver="ShowTip(event, 'tt176', 'link176')" onMouseOut="HideTip('tt176')" class=ISymbol>snd_stop</a></td></tr><tr><td class=IHeading><a name="T"></a>T</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>tick</span><div class=ISubIndex><a href="../files/server/entity-hpp.html#Entity.tick" id=link177 onMouseOver="ShowTip(event, 'tt177', 'link177')" onMouseOut="HideTip('tt177')" class=IParent>Entity</a><a href="../files/server/gameworld-hpp.html#Game_World.tick" id=link178 onMouseOver="ShowTip(event, 'tt178', 'link178')" onMouseOut="HideTip('tt178')" class=IParent>Game World</a></div></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/entity-hpp.html#Entity.tick_defered" id=link179 onMouseOver="ShowTip(event, 'tt179', 'link179')" onMouseOut="HideTip('tt179')" class=ISymbol>tick_defered</a>, <span class=IParent>Entity</span></td></tr></table>
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt108"><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 *map_find_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><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Searches the map for an item.</div></div><div class=CToolTip id="tt109"><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 *map_get_data(</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>Fetches a pointer to a raw data chunk in the map.</div></div><div class=CToolTip id="tt110"><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 *map_get_data_swapped(</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>TODO</div></div><div class=CToolTip id="tt111"><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 *map_get_item(</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>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>type,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>id</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Gets an item from the loaded map from index.</div></div><div class=CToolTip id="tt112"><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 map_get_type(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>type,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>start,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>num</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Gets the index range of an item type.</div></div><div class=CToolTip id="tt113"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int map_is_loaded()</td></tr></table></blockquote>Checks if a map is loaded.</div></div><div class=CToolTip id="tt114"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int map_num_items()</td></tr></table></blockquote>Checks the number of items in the loaded map.</div></div><div class=CToolTip id="tt115"><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 map_unload_data(</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>TODO</div></div><div class=CToolTip id="tt116"><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 *mem_alloc_debug(</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></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>line,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>unsigned&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>unsigned&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>alignment</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Allocates memory.</div></div><div class=CToolTip id="tt117"><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 mem_comp(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>a,</td></tr><tr><td></td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>b,</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>Compares two blocks of memory</div></div><div class=CToolTip id="tt118"><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 mem_copy(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>dest,</td></tr><tr><td></td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>source,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>unsigned&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Copies a a memory block.</div></div><div class=CToolTip id="tt119"><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 mem_free(</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>block</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Frees a block allocated through mem_alloc.</div></div><div class=CToolTip id="tt120"><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 mem_move(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>dest,</td></tr><tr><td></td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>source,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>unsigned&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Copies a a memory block</div></div><div class=CToolTip id="tt121"><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 mem_zero(</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>block,</td></tr><tr><td></td><td class=PType nowrap>unsigned&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets a complete memory block to 0</div></div><div class=CToolTip id="tt122"><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="tt123"><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="tt124"><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="tt125"><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="tt126"><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="tt127"><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><div class=CToolTip id="tt128"><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="tt129"><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="tt130"><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="tt131"><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="tt132"><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="tt133"><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="tt134"><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="tt135"><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="tt136"><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_client_direct_input(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>cid,</td></tr><tr><td></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>input</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Called when the server recives new input from a client.</div></div><div class=CToolTip id="tt137"><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_client_drop(</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 when a client drops from the server.</div></div><div class=CToolTip id="tt138"><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_client_enter(</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 when a client has joined the game.</div></div><div class=CToolTip id="tt139"><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_client_predicted_input(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>cid,</td></tr><tr><td></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>input</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Called when the server applys the predicted input on the client.</div></div><div class=CToolTip id="tt140"><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_connected(</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="tt141"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void mods_console_init()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt142"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void mods_init()</td></tr></table></blockquote>Called when the server is started.</div></div><div class=CToolTip id="tt143"><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_message(</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>client_id</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt144"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>const char *mods_net_version()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt145"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void mods_postsnap()</td></tr></table></blockquote>Called after the server is done sending the snapshots.</div></div><div class=CToolTip id="tt146"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void mods_presnap()</td></tr></table></blockquote>Called before the server starts to construct snapshots for the clients.</div></div><div class=CToolTip id="tt147"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void mods_shutdown()</td></tr></table></blockquote>Called when the server quits.</div></div><div class=CToolTip id="tt148"><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="tt149"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void mods_tick()</td></tr></table></blockquote>Called with a regular interval to progress the gameplay.</div></div><div class=CToolTip id="tt150"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>const char *mods_version()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt151"><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="tt152"><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="tt153"><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="tt154"><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="tt155"><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="tt156"><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><div class=CToolTip id="tt157"><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="tt158"><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="tt159"><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><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt145"><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>virtual int on_character_death(</td><td class=PTypePrefix nowrap>class&nbsp;</td><td class=PType nowrap>CHARACTER&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>victim,</td></tr><tr><td></td><td class=PTypePrefix nowrap>class&nbsp;</td><td class=PType nowrap>PLAYER&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>killer,</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>weapon</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Called when a character in the world dies.</div></div><div class=CToolTip id="tt146"><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>virtual void on_character_spawn(</td><td class=PTypePrefix nowrap>class&nbsp;</td><td class=PType nowrap>CHARACTER&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>chr</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Called when a character spawns into the game world.</div></div><div class=CToolTip id="tt147"><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>virtual bool on_entity(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>index,</td></tr><tr><td></td><td class=PType nowrap>vec2&nbsp;</td><td class=PParameter nowrap>pos</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Called when the map is loaded to process an entity in the map.</div></div><!--END_ND_TOOLTIPS-->
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt148"><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 remove_entity(</td><td class=PType nowrap>ENTITY&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>entity</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Removes an entity from the world.</div></div><div class=CToolTip id="tt149"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>virtual void reset()</td></tr></table></blockquote>Called when the game resets the map. </div></div><!--END_ND_TOOLTIPS-->
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt150"><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="tt151"><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="tt152"><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="tt153"><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="tt154"><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_send_msg(</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="tt155"><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=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>game_type,</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>progression</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt156"><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="tt157"><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="tt158"><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="tt159"><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><div class=CToolTip id="tt160"><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>virtual void snap(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>snapping_client</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Called when a new snapshot is being generated for a specific client.</div></div><div class=CToolTip id="tt161"><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(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>snapping_client</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Calls snap on all the entities in the world to create the snapshot.</div></div><div class=CToolTip id="tt162"><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="tt163"><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_free_id(</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>TODO</div></div><div class=CToolTip id="tt164"><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="tt165"><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_input(</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=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>Sets the input data to send to the server.</div></div><div class=CToolTip id="tt166"><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><div class=CToolTip id="tt167"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int snap_new_id()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt168"><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="tt169"><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="tt170"><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_set_staticsize(</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>size</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Tells the engine how big a specific item always will be. </div></div><div class=CToolTip id="tt171"><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="tt172"><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="tt173"><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="tt174"><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="tt175"><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><div class=CToolTip id="tt176"><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><!--END_ND_TOOLTIPS-->
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt177"><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="tt178"><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="tt179"><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><!--END_ND_TOOLTIPS-->
 
 </div><!--Index-->
 
@@ -21,9 +33,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <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"><!--
+<div id=Menu><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_huffman-h.html">e_huffman.h</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/entity-hpp.html">Entity</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gamecontroller-hpp.html">Game Controller</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gameworld-hpp.html">Game World</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 class=MEntry><div class=MIndex><a href="Files.html">Files</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><!--
+--></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="Files">Files</option><option value="Functions">Functions</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
 HideAllBut([8, 7, 6], 9);// --></script></div><!--Menu-->
 
 
diff --git a/docs/output/index/General.html b/docs/output/index/General.html
index 68e24be3..ff43c120 100644
--- a/docs/output/index/General.html
+++ b/docs/output/index/General.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! &middot; 0-9 &middot; <a href="#A">A</a> &middot; <a href="#B">B</a> &middot; <a href="#C">C</a> &middot; <a href="#D">D</a> &middot; <a href="#E">E</a> &middot; <a href="#F">F</a> &middot; <a href="General2.html#G">G</a> &middot; <a href="General2.html#H">H</a> &middot; <a href="General3.html#I">I</a> &middot; J &middot; K &middot; <a href="General3.html#L">L</a> &middot; <a href="General4.html#M">M</a> &middot; <a href="General5.html#N">N</a> &middot; <a href="General5.html#O">O</a> &middot; <a href="General5.html#P">P</a> &middot; <a href="General5.html#Q">Q</a> &middot; <a href="General5.html#R">R</a> &middot; <a href="General6.html#S">S</a> &middot; <a href="General6.html#T">T</a> &middot; <a href="General6.html#U">U</a> &middot; <a href="General6.html#V">V</a> &middot; <a href="General6.html#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="A"></a>A</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#Actions"  class=ISymbol>Actions</a></td></tr><tr><td class=IHeading><a name="B"></a>B</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#BROWSESORT_GAMETYPE" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')" class=ISymbol>BROWSESORT_GAMETYPE</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#BROWSESORT_MAP" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')" class=ISymbol>BROWSESORT_MAP</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#BROWSESORT_NAME" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')" class=ISymbol>BROWSESORT_NAME</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#BROWSESORT_NUMPLAYERS" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')" class=ISymbol>BROWSESORT_NUMPLAYERS</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#BROWSESORT_PING" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')" class=ISymbol>BROWSESORT_PING</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#BROWSESORT_PROGRESSION" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')" class=ISymbol>BROWSESORT_PROGRESSION</a></td></tr><tr><td class=IHeading><a name="C"></a>C</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#Client_Hooks"  class=ISymbol>Client Hooks</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#Client_Interface"  class=ISymbol>Client Interface</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/snapshots-txt.html#Client_Side"  class=ISymbol>Client Side</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#Client_States"  class=ISymbol>Client States</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_connect" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')" class=ISymbol>client_connect</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_connection_problems" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')" class=ISymbol>client_connection_problems</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_direct_input" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')" class=ISymbol>client_direct_input</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_disconnect" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')" class=ISymbol>client_disconnect</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_error_string" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')" class=ISymbol>client_error_string</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_frametime" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')" class=ISymbol>client_frametime</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_get_input" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')" class=ISymbol>client_get_input</a></td></tr><tr><td class=ISymbolPrefix>&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=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_intratick" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')" class=ISymbol>client_intratick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_localtime" id=link15 onMouseOver="ShowTip(event, 'tt15', 'link15')" onMouseOut="HideTip('tt15')" class=ISymbol>client_localtime</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_mapdownload_amount" id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')" class=ISymbol>client_mapdownload_amount</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_mapdownload_totalsize" id=link17 onMouseOver="ShowTip(event, 'tt17', 'link17')" onMouseOut="HideTip('tt17')" class=ISymbol>client_mapdownload_totalsize</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_predintratick" id=link18 onMouseOver="ShowTip(event, 'tt18', 'link18')" onMouseOut="HideTip('tt18')" class=ISymbol>client_predintratick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_predtick" id=link19 onMouseOver="ShowTip(event, 'tt19', 'link19')" onMouseOut="HideTip('tt19')" class=ISymbol>client_predtick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_quit" id=link20 onMouseOver="ShowTip(event, 'tt20', 'link20')" onMouseOut="HideTip('tt20')" class=ISymbol>client_quit</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_rcon" id=link21 onMouseOver="ShowTip(event, 'tt21', 'link21')" onMouseOut="HideTip('tt21')" class=ISymbol>client_rcon</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_rcon_auth" id=link22 onMouseOver="ShowTip(event, 'tt22', 'link22')" onMouseOut="HideTip('tt22')" class=ISymbol>client_rcon_auth</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_rcon_authed" id=link23 onMouseOver="ShowTip(event, 'tt23', 'link23')" onMouseOut="HideTip('tt23')" class=ISymbol>client_rcon_authed</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_save_line" id=link24 onMouseOver="ShowTip(event, 'tt24', 'link24')" onMouseOut="HideTip('tt24')" class=ISymbol>client_save_line</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#client_send_msg" id=link25 onMouseOver="ShowTip(event, 'tt25', 'link25')" onMouseOut="HideTip('tt25')" class=ISymbol>client_send_msg</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_get" id=link26 onMouseOver="ShowTip(event, 'tt26', 'link26')" onMouseOut="HideTip('tt26')" class=ISymbol>client_serverbrowse_get</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_lan" id=link27 onMouseOver="ShowTip(event, 'tt27', 'link27')" onMouseOut="HideTip('tt27')" class=ISymbol>client_serverbrowse_lan</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_num" id=link28 onMouseOver="ShowTip(event, 'tt28', 'link28')" onMouseOut="HideTip('tt28')" class=ISymbol>client_serverbrowse_num</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_num_requests" id=link29 onMouseOver="ShowTip(event, 'tt29', 'link29')" onMouseOut="HideTip('tt29')" class=ISymbol>client_serverbrowse_num_requests</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_refresh" id=link30 onMouseOver="ShowTip(event, 'tt30', 'link30')" onMouseOut="HideTip('tt30')" class=ISymbol>client_serverbrowse_refresh</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_sorted_get" id=link31 onMouseOver="ShowTip(event, 'tt31', 'link31')" onMouseOut="HideTip('tt31')" class=ISymbol>client_serverbrowse_sorted_get</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_sorted_num" id=link32 onMouseOver="ShowTip(event, 'tt32', 'link32')" onMouseOut="HideTip('tt32')" class=ISymbol>client_serverbrowse_sorted_num</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_update" id=link33 onMouseOver="ShowTip(event, 'tt33', 'link33')" onMouseOut="HideTip('tt33')" class=ISymbol>client_serverbrowse_update</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_state" id=link34 onMouseOver="ShowTip(event, 'tt34', 'link34')" onMouseOut="HideTip('tt34')" class=ISymbol>client_state</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_tick" id=link35 onMouseOver="ShowTip(event, 'tt35', 'link35')" onMouseOut="HideTip('tt35')" class=ISymbol>client_tick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_tickspeed" id=link36 onMouseOver="ShowTip(event, 'tt36', 'link36')" onMouseOut="HideTip('tt36')" class=ISymbol>client_tickspeed</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_ticktime" id=link37 onMouseOver="ShowTip(event, 'tt37', 'link37')" onMouseOut="HideTip('tt37')" class=ISymbol>client_ticktime</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#CLIENTSTATE_CONNECTING" id=link38 onMouseOver="ShowTip(event, 'tt38', 'link38')" onMouseOut="HideTip('tt38')" class=ISymbol>CLIENTSTATE_CONNECTING</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#CLIENTSTATE_LOADING" id=link39 onMouseOver="ShowTip(event, 'tt39', 'link39')" onMouseOut="HideTip('tt39')" class=ISymbol>CLIENTSTATE_LOADING</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#CLIENTSTATE_OFFLINE" id=link40 onMouseOver="ShowTip(event, 'tt40', 'link40')" onMouseOut="HideTip('tt40')" class=ISymbol>CLIENTSTATE_OFFLINE</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#CLIENTSTATE_ONLINE" id=link41 onMouseOver="ShowTip(event, 'tt41', 'link41')" onMouseOut="HideTip('tt41')" class=ISymbol>CLIENTSTATE_ONLINE</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#CLIENTSTATE_QUITING" id=link42 onMouseOver="ShowTip(event, 'tt42', 'link42')" onMouseOut="HideTip('tt42')" class=ISymbol>CLIENTSTATE_QUITING</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gs_common-hpp.html#Game_World.closest_character" id=link43 onMouseOver="ShowTip(event, 'tt43', 'link43')" onMouseOut="HideTip('tt43')" class=ISymbol>closest_character</a>, <span class=IParent>Game World</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/snapshots-txt.html#Compression" id=link44 onMouseOver="ShowTip(event, 'tt44', 'link44')" onMouseOut="HideTip('tt44')" class=ISymbol>Compression</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#Constants"  class=ISymbol>Constants</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/snapshots-txt.html#Creating" id=link45 onMouseOver="ShowTip(event, 'tt45', 'link45')" onMouseOut="HideTip('tt45')" class=ISymbol>Creating</a></td></tr><tr><td class=IHeading><a name="D"></a>D</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.data" id=link46 onMouseOver="ShowTip(event, 'tt46', 'link46')" onMouseOut="HideTip('tt46')" class=ISymbol>data</a>, <span class=IParent>IMAGE_INFO</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#dbg_assert" id=link47 onMouseOver="ShowTip(event, 'tt47', 'link47')" onMouseOut="HideTip('tt47')" class=ISymbol>dbg_assert</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#dbg_break" id=link48 onMouseOver="ShowTip(event, 'tt48', 'link48')" onMouseOut="HideTip('tt48')" class=ISymbol>dbg_break</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#dbg_msg" id=link49 onMouseOver="ShowTip(event, 'tt49', 'link49')" onMouseOut="HideTip('tt49')" class=ISymbol>dbg_msg</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#Debug"  class=ISymbol>Debug</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/snapshots-txt.html#Definitions"  class=ISymbol>Definitions</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gs_common-hpp.html#Entity.destroy" id=link50 onMouseOver="ShowTip(event, 'tt50', 'link50')" onMouseOut="HideTip('tt50')" class=ISymbol>destroy</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#Game_World.destroy_entity" id=link51 onMouseOver="ShowTip(event, 'tt51', 'link51')" onMouseOut="HideTip('tt51')" class=ISymbol>destroy_entity</a>, <span class=IParent>Game World</span></td></tr><tr><td class=IHeading><a name="E"></a>E</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#Engine_Interface"  class=ISymbol>Engine Interface</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gs_common-hpp.html#Entity" id=link52 onMouseOver="ShowTip(event, 'tt52', 'link52')" onMouseOut="HideTip('tt52')" class=ISymbol>Entity</a></td></tr><tr><td class=IHeading><a name="F"></a>F</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#File_IO"  class=ISymbol>File IO</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#Filesystem"  class=ISymbol>Filesystem</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gs_common-hpp.html#Game_World.find_entities" id=link53 onMouseOver="ShowTip(event, 'tt53', 'link53')" onMouseOut="HideTip('tt53')" class=ISymbol>find_entities</a>, <span class=IParent>Game World</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#IMAGE_INFO.format" id=link54 onMouseOver="ShowTip(event, 'tt54', 'link54')" onMouseOut="HideTip('tt54')" class=ISymbol>format</a>, <span class=IParent>IMAGE_INFO</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#fs_listdir" id=link55 onMouseOver="ShowTip(event, 'tt55', 'link55')" onMouseOut="HideTip('tt55')" class=ISymbol>fs_listdir</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#fs_makedir" id=link56 onMouseOver="ShowTip(event, 'tt56', 'link56')" onMouseOut="HideTip('tt56')" class=ISymbol>fs_makedir</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#fs_storage_path" id=link57 onMouseOver="ShowTip(event, 'tt57', 'link57')" onMouseOut="HideTip('tt57')" class=ISymbol>fs_storage_path</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>Functions</span><div class=ISubIndex><span class=IParent>Global</span><div class=ISubIndex><a href="../files2/e_if_client-h.html#Functions"  class=IFile>e_if_client.h</a><a href="../files2/e_if_gfx-h.html#Functions"  class=IFile>e_if_gfx.h</a><a href="../files2/e_if_modc-h.html#Functions"  class=IFile>e_if_modc.h</a><a href="../files2/e_if_mods-h.html#Functions"  class=IFile>e_if_mods.h</a><a href="../files2/e_if_msg-h.html#Functions"  class=IFile>e_if_msg.h</a><a href="../files2/e_if_other-h.html#Functions"  class=IFile>e_if_other.h</a><a href="../files2/e_if_server-h.html#Functions"  class=IFile>e_if_server.h</a><a href="../files2/e_if_snd-h.html#Functions"  class=IFile>e_if_snd.h</a></div><a href="../files/server/gs_common-hpp.html#Entity.Functions"  class=IParent>Entity</a><a href="../files/server/gs_common-hpp.html#Game_Controller.Functions"  class=IParent>Game Controller</a><a href="../files/server/gs_common-hpp.html#Game_World.Functions"  class=IParent>Game World</a><a href="../files2/e_if_inp-h.html#INPUT_EVENT.Functions"  class=IParent>INPUT_EVENT</a></div></td></tr></table>
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! &middot; 0-9 &middot; <a href="#A">A</a> &middot; <a href="#B">B</a> &middot; <a href="#C">C</a> &middot; <a href="#D">D</a> &middot; <a href="#E">E</a> &middot; <a href="#F">F</a> &middot; <a href="General2.html#G">G</a> &middot; <a href="General2.html#H">H</a> &middot; <a href="General3.html#I">I</a> &middot; J &middot; K &middot; <a href="General3.html#L">L</a> &middot; <a href="General3.html#M">M</a> &middot; <a href="General3.html#N">N</a> &middot; <a href="General3.html#O">O</a> &middot; <a href="General3.html#P">P</a> &middot; <a href="General3.html#Q">Q</a> &middot; <a href="General4.html#R">R</a> &middot; <a href="General4.html#S">S</a> &middot; <a href="General4.html#T">T</a> &middot; U &middot; <a href="General4.html#V">V</a> &middot; <a href="General4.html#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="A"></a>A</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#Actions"  class=ISymbol>Actions</a></td></tr><tr><td class=IHeading><a name="B"></a>B</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#BROWSESORT_GAMETYPE" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')" class=ISymbol>BROWSESORT_GAMETYPE</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#BROWSESORT_MAP" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')" class=ISymbol>BROWSESORT_MAP</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#BROWSESORT_NAME" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')" class=ISymbol>BROWSESORT_NAME</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#BROWSESORT_NUMPLAYERS" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')" class=ISymbol>BROWSESORT_NUMPLAYERS</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#BROWSESORT_PING" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')" class=ISymbol>BROWSESORT_PING</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#BROWSESORT_PROGRESSION" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')" class=ISymbol>BROWSESORT_PROGRESSION</a></td></tr><tr><td class=IHeading><a name="C"></a>C</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#Client_Hooks"  class=ISymbol>Client Hooks</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#Client_Interface"  class=ISymbol>Client Interface</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/snapshots-txt.html#Client_Side"  class=ISymbol>Client Side</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#Client_States"  class=ISymbol>Client States</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_connect" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')" class=ISymbol>client_connect</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_connection_problems" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')" class=ISymbol>client_connection_problems</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_direct_input" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')" class=ISymbol>client_direct_input</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_disconnect" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')" class=ISymbol>client_disconnect</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_error_string" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')" class=ISymbol>client_error_string</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_frametime" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')" class=ISymbol>client_frametime</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_get_input" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')" class=ISymbol>client_get_input</a></td></tr><tr><td class=ISymbolPrefix>&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=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_intratick" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')" class=ISymbol>client_intratick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_latestversion" id=link15 onMouseOver="ShowTip(event, 'tt15', 'link15')" onMouseOut="HideTip('tt15')" class=ISymbol>client_latestversion</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_localtime" id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')" class=ISymbol>client_localtime</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_mapdownload_amount" id=link17 onMouseOver="ShowTip(event, 'tt17', 'link17')" onMouseOut="HideTip('tt17')" class=ISymbol>client_mapdownload_amount</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_mapdownload_totalsize" id=link18 onMouseOver="ShowTip(event, 'tt18', 'link18')" onMouseOut="HideTip('tt18')" class=ISymbol>client_mapdownload_totalsize</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_predintratick" id=link19 onMouseOver="ShowTip(event, 'tt19', 'link19')" onMouseOut="HideTip('tt19')" class=ISymbol>client_predintratick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_predtick" id=link20 onMouseOver="ShowTip(event, 'tt20', 'link20')" onMouseOut="HideTip('tt20')" class=ISymbol>client_predtick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_prevtick" id=link21 onMouseOver="ShowTip(event, 'tt21', 'link21')" onMouseOut="HideTip('tt21')" class=ISymbol>client_prevtick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_quit" id=link22 onMouseOver="ShowTip(event, 'tt22', 'link22')" onMouseOut="HideTip('tt22')" class=ISymbol>client_quit</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_rcon" id=link23 onMouseOver="ShowTip(event, 'tt23', 'link23')" onMouseOut="HideTip('tt23')" class=ISymbol>client_rcon</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_rcon_auth" id=link24 onMouseOver="ShowTip(event, 'tt24', 'link24')" onMouseOut="HideTip('tt24')" class=ISymbol>client_rcon_auth</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_rcon_authed" id=link25 onMouseOver="ShowTip(event, 'tt25', 'link25')" onMouseOut="HideTip('tt25')" class=ISymbol>client_rcon_authed</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_save_line" id=link26 onMouseOver="ShowTip(event, 'tt26', 'link26')" onMouseOut="HideTip('tt26')" class=ISymbol>client_save_line</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#client_send_msg" id=link27 onMouseOver="ShowTip(event, 'tt27', 'link27')" onMouseOut="HideTip('tt27')" class=ISymbol>client_send_msg</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_addfavorite" id=link28 onMouseOver="ShowTip(event, 'tt28', 'link28')" onMouseOut="HideTip('tt28')" class=ISymbol>client_serverbrowse_addfavorite</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_get" id=link29 onMouseOver="ShowTip(event, 'tt29', 'link29')" onMouseOut="HideTip('tt29')" class=ISymbol>client_serverbrowse_get</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_lan" id=link30 onMouseOver="ShowTip(event, 'tt30', 'link30')" onMouseOut="HideTip('tt30')" class=ISymbol>client_serverbrowse_lan</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_num" id=link31 onMouseOver="ShowTip(event, 'tt31', 'link31')" onMouseOut="HideTip('tt31')" class=ISymbol>client_serverbrowse_num</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_num_requests" id=link32 onMouseOver="ShowTip(event, 'tt32', 'link32')" onMouseOut="HideTip('tt32')" class=ISymbol>client_serverbrowse_num_requests</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_refresh" id=link33 onMouseOver="ShowTip(event, 'tt33', 'link33')" onMouseOut="HideTip('tt33')" class=ISymbol>client_serverbrowse_refresh</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_removefavorite" id=link34 onMouseOver="ShowTip(event, 'tt34', 'link34')" onMouseOut="HideTip('tt34')" class=ISymbol>client_serverbrowse_removefavorite</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_sorted_get" id=link35 onMouseOver="ShowTip(event, 'tt35', 'link35')" onMouseOut="HideTip('tt35')" class=ISymbol>client_serverbrowse_sorted_get</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_sorted_num" id=link36 onMouseOver="ShowTip(event, 'tt36', 'link36')" onMouseOut="HideTip('tt36')" class=ISymbol>client_serverbrowse_sorted_num</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_update" id=link37 onMouseOver="ShowTip(event, 'tt37', 'link37')" onMouseOut="HideTip('tt37')" class=ISymbol>client_serverbrowse_update</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_state" id=link38 onMouseOver="ShowTip(event, 'tt38', 'link38')" onMouseOut="HideTip('tt38')" class=ISymbol>client_state</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_tick" id=link39 onMouseOver="ShowTip(event, 'tt39', 'link39')" onMouseOut="HideTip('tt39')" class=ISymbol>client_tick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_tickspeed" id=link40 onMouseOver="ShowTip(event, 'tt40', 'link40')" onMouseOut="HideTip('tt40')" class=ISymbol>client_tickspeed</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#client_ticktime" id=link41 onMouseOver="ShowTip(event, 'tt41', 'link41')" onMouseOut="HideTip('tt41')" class=ISymbol>client_ticktime</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#CLIENTSTATE_CONNECTING" id=link42 onMouseOver="ShowTip(event, 'tt42', 'link42')" onMouseOut="HideTip('tt42')" class=ISymbol>CLIENTSTATE_CONNECTING</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#CLIENTSTATE_LOADING" id=link43 onMouseOver="ShowTip(event, 'tt43', 'link43')" onMouseOut="HideTip('tt43')" class=ISymbol>CLIENTSTATE_LOADING</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#CLIENTSTATE_OFFLINE" id=link44 onMouseOver="ShowTip(event, 'tt44', 'link44')" onMouseOut="HideTip('tt44')" class=ISymbol>CLIENTSTATE_OFFLINE</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#CLIENTSTATE_ONLINE" id=link45 onMouseOver="ShowTip(event, 'tt45', 'link45')" onMouseOut="HideTip('tt45')" class=ISymbol>CLIENTSTATE_ONLINE</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#CLIENTSTATE_QUITING" id=link46 onMouseOver="ShowTip(event, 'tt46', 'link46')" onMouseOut="HideTip('tt46')" class=ISymbol>CLIENTSTATE_QUITING</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gameworld-hpp.html#Game_World.closest_character" id=link47 onMouseOver="ShowTip(event, 'tt47', 'link47')" onMouseOut="HideTip('tt47')" class=ISymbol>closest_character</a>, <span class=IParent>Game World</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/snapshots-txt.html#Compression" id=link48 onMouseOver="ShowTip(event, 'tt48', 'link48')" onMouseOut="HideTip('tt48')" class=ISymbol>Compression</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#Constants"  class=ISymbol>Constants</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/snapshots-txt.html#Creating" id=link49 onMouseOver="ShowTip(event, 'tt49', 'link49')" onMouseOut="HideTip('tt49')" class=ISymbol>Creating</a></td></tr><tr><td class=IHeading><a name="D"></a>D</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.data" id=link50 onMouseOver="ShowTip(event, 'tt50', 'link50')" onMouseOut="HideTip('tt50')" class=ISymbol>data</a>, <span class=IParent>IMAGE_INFO</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/snapshots-txt.html#Definitions"  class=ISymbol>Definitions</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/entity-hpp.html#Entity.destroy" id=link51 onMouseOver="ShowTip(event, 'tt51', 'link51')" onMouseOut="HideTip('tt51')" class=ISymbol>destroy</a>, <span class=IParent>Entity</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gameworld-hpp.html#Game_World.destroy_entity" id=link52 onMouseOver="ShowTip(event, 'tt52', 'link52')" onMouseOut="HideTip('tt52')" class=ISymbol>destroy_entity</a>, <span class=IParent>Game World</span></td></tr><tr><td class=IHeading><a name="E"></a>E</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_huffman-h.html#e_huffman.h"  class=ISymbol>e_huffman.h</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#Engine_Interface"  class=ISymbol>Engine Interface</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/entity-hpp.html#Entity" id=link53 onMouseOver="ShowTip(event, 'tt53', 'link53')" onMouseOut="HideTip('tt53')" class=ISymbol>Entity</a></td></tr><tr><td class=IHeading><a name="F"></a>F</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gameworld-hpp.html#Game_World.find_entities" id=link54 onMouseOver="ShowTip(event, 'tt54', 'link54')" onMouseOut="HideTip('tt54')" class=ISymbol>find_entities</a>, <span class=IParent>Game World</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#IMAGE_INFO.format" id=link55 onMouseOver="ShowTip(event, 'tt55', 'link55')" onMouseOut="HideTip('tt55')" class=ISymbol>format</a>, <span class=IParent>IMAGE_INFO</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>Functions</span><div class=ISubIndex><span class=IParent>Global</span><div class=ISubIndex><a href="../files2/e_huffman-h.html#Functions"  class=IFile>e_huffman.h</a><a href="../files2/e_if_client-h.html#Functions"  class=IFile>e_if_client.h</a><a href="../files2/e_if_gfx-h.html#Functions"  class=IFile>e_if_gfx.h</a><a href="../files2/e_if_modc-h.html#Functions"  class=IFile>e_if_modc.h</a><a href="../files2/e_if_mods-h.html#Functions"  class=IFile>e_if_mods.h</a><a href="../files2/e_if_msg-h.html#Functions"  class=IFile>e_if_msg.h</a><a href="../files2/e_if_other-h.html#Functions"  class=IFile>e_if_other.h</a><a href="../files2/e_if_server-h.html#Functions"  class=IFile>e_if_server.h</a><a href="../files2/e_if_snd-h.html#Functions"  class=IFile>e_if_snd.h</a></div><a href="../files/server/entity-hpp.html#Entity.Functions"  class=IParent>Entity</a><a href="../files/server/gamecontroller-hpp.html#Game_Controller.Functions"  class=IParent>Game Controller</a><a href="../files/server/gameworld-hpp.html#Game_World.Functions"  class=IParent>Game World</a><a href="../files2/e_if_inp-h.html#INPUT_EVENT.Functions"  class=IParent>INPUT_EVENT</a></div></td></tr></table>
 <!--START_ND_TOOLTIPS-->
 <!--END_ND_TOOLTIPS-->
 
@@ -21,19 +21,19 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 <!--START_ND_TOOLTIPS-->
-<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 client_connect(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>address</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Connects to a server at the specified address.</div></div><div class=CToolTip id="tt8"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_connection_problems()</td></tr></table></blockquote>Returns 1 if the client is connection problems.</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 client_direct_input(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>input,</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="tt10"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void client_disconnect()</td></tr></table></blockquote>Disconnects from the current server.</div></div><div class=CToolTip id="tt11"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>const char *client_error_string()</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>float client_frametime()</td></tr></table></blockquote>Returns how long time the last frame took to process.</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 *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><div class=CToolTip id="tt14"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_intratick()</td></tr></table></blockquote>Returns the current intratick.</div></div><div class=CToolTip id="tt15"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_localtime()</td></tr></table></blockquote>Returns the clients local time.</div></div><div class=CToolTip id="tt16"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_mapdownload_amount()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt17"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_mapdownload_totalsize()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt18"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_predintratick()</td></tr></table></blockquote>Returns the current preticted intra tick.</div></div><div class=CToolTip id="tt19"><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="tt20"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void client_quit()</td></tr></table></blockquote>Tells to client to shutdown.</div></div><div class=CToolTip id="tt21"><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 client_rcon(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>cmd</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sends a command to the server to execute on it&rsquo;s console.</div></div><div class=CToolTip id="tt22"><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 client_rcon_auth(</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></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>password</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt23"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_rcon_authed()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt24"><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 client_save_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="tt25"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_send_msg()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt26"><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>SERVER_INFO *client_serverbrowse_get(</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>TODO</div></div><div class=CToolTip id="tt27"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_lan()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt28"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_num()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt29"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_num_requests()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt30"><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 client_serverbrowse_refresh(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>lan</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Issues a refresh of the server browser.</div></div><div class=CToolTip id="tt31"><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>SERVER_INFO *client_serverbrowse_sorted_get(</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>Returns server info from the sorted list.</div></div><div class=CToolTip id="tt32"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_sorted_num()</td></tr></table></blockquote>Returns how many servers there are in the sorted list.</div></div><div class=CToolTip id="tt33"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void client_serverbrowse_update()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt34"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_state()</td></tr></table></blockquote>Returns the state of the client.</div></div><div class=CToolTip id="tt35"><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="tt36"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_tickspeed()</td></tr></table></blockquote>Returns how many ticks per second the client is doing.</div></div><div class=CToolTip id="tt37"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_ticktime()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt38"><div class=CConstant>The client is trying to connect to a server.</div></div><div class=CToolTip id="tt39"><div class=CConstant>The client has connected to a server and is loading resources.</div></div><div class=CToolTip id="tt40"><div class=CConstant>The client is offline.</div></div><div class=CToolTip id="tt41"><div class=CConstant>The client is connected to a server and running the game.</div></div><div class=CToolTip id="tt42"><div class=CConstant>The client is quiting.</div></div><div class=CToolTip id="tt43"><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>class CHARACTER *closest_character(</td><td class=PType nowrap>vec2&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>pos,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>radius,</td></tr><tr><td></td><td class=PType nowrap>ENTITY&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>notthis</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Finds the closest character to a specific point.</div></div><div class=CToolTip id="tt44"><div class=CGeneric>After a snapshot have been created, compression is applyed to reduce the bandwidth. </div></div><div class=CToolTip id="tt45"><div class=CGeneric>Items can be added when mods_snap is called using the snap_new_item function to insert an item to the snapshot. </div></div><!--END_ND_TOOLTIPS-->
+<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 client_connect(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>address</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Connects to a server at the specified address.</div></div><div class=CToolTip id="tt8"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_connection_problems()</td></tr></table></blockquote>Returns 1 if the client is connection problems.</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 client_direct_input(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>input,</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="tt10"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void client_disconnect()</td></tr></table></blockquote>Disconnects from the current server.</div></div><div class=CToolTip id="tt11"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>const char *client_error_string()</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>float client_frametime()</td></tr></table></blockquote>Returns how long time the last frame took to process.</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 *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><div class=CToolTip id="tt14"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_intratick()</td></tr></table></blockquote>Returns the current intratick.</div></div><div class=CToolTip id="tt15"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>const char *client_latestversion()</td></tr></table></blockquote>Returns 0 if there&rsquo;s no version difference</div></div><div class=CToolTip id="tt16"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_localtime()</td></tr></table></blockquote>Returns the clients local time.</div></div><div class=CToolTip id="tt17"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_mapdownload_amount()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt18"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_mapdownload_totalsize()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt19"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_predintratick()</td></tr></table></blockquote>Returns the current preticted intra tick.</div></div><div class=CToolTip id="tt20"><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="tt21"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_prevtick()</td></tr></table></blockquote>Returns the tick of the previous snapshot.</div></div><div class=CToolTip id="tt22"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void client_quit()</td></tr></table></blockquote>Tells to client to shutdown.</div></div><div class=CToolTip id="tt23"><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 client_rcon(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>cmd</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sends a command to the server to execute on it&rsquo;s console.</div></div><div class=CToolTip id="tt24"><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 client_rcon_auth(</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></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>password</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt25"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_rcon_authed()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt26"><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 client_save_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="tt27"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_send_msg()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt28"><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 client_serverbrowse_addfavorite(</td><td class=PType nowrap>NETADDR&nbsp;</td><td class=PParameter nowrap>addr</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Adds a server to the favorite list</div></div><div class=CToolTip id="tt29"><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>SERVER_INFO *client_serverbrowse_get(</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>TODO</div></div><div class=CToolTip id="tt30"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_lan()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt31"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_num()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt32"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_num_requests()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt33"><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 client_serverbrowse_refresh(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>type</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Issues a refresh of the server browser.</div></div><div class=CToolTip id="tt34"><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 client_serverbrowse_removefavorite(</td><td class=PType nowrap>NETADDR&nbsp;</td><td class=PParameter nowrap>addr</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Removes a server to the favorite list</div></div><div class=CToolTip id="tt35"><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>SERVER_INFO *client_serverbrowse_sorted_get(</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>Returns server info from the sorted list.</div></div><div class=CToolTip id="tt36"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_serverbrowse_sorted_num()</td></tr></table></blockquote>Returns how many servers there are in the sorted list.</div></div><div class=CToolTip id="tt37"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void client_serverbrowse_update()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt38"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_state()</td></tr></table></blockquote>Returns the state of the client.</div></div><div class=CToolTip id="tt39"><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="tt40"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int client_tickspeed()</td></tr></table></blockquote>Returns how many ticks per second the client is doing.</div></div><div class=CToolTip id="tt41"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float client_ticktime()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt42"><div class=CConstant>The client is trying to connect to a server.</div></div><div class=CToolTip id="tt43"><div class=CConstant>The client has connected to a server and is loading resources.</div></div><div class=CToolTip id="tt44"><div class=CConstant>The client is offline.</div></div><div class=CToolTip id="tt45"><div class=CConstant>The client is connected to a server and running the game.</div></div><div class=CToolTip id="tt46"><div class=CConstant>The client is quiting.</div></div><div class=CToolTip id="tt47"><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>class CHARACTER *closest_character(</td><td class=PType nowrap>vec2&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>pos,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>radius,</td></tr><tr><td></td><td class=PType nowrap>ENTITY&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>notthis</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Finds the closest character to a specific point.</div></div><div class=CToolTip id="tt48"><div class=CGeneric>After a snapshot have been created, compression is applyed to reduce the bandwidth. </div></div><div class=CToolTip id="tt49"><div class=CGeneric>Items can be added when mods_snap is called using the snap_new_item function to insert an item to the snapshot. </div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt46"><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><div class=CToolTip id="tt47"><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 dbg_assert(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>test,</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>msg</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Breaks into the debugger based on a test.</div></div><div class=CToolTip id="tt48"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void dbg_break()</td></tr></table></blockquote>Breaks into the debugger.</div></div><div class=CToolTip id="tt49"><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 dbg_msg(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>sys,</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>fmt,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>...</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Prints a debug message.</div></div><div class=CToolTip id="tt50"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>virtual void destroy()</td></tr></table></blockquote>Destorys the entity.</div></div><div class=CToolTip id="tt51"><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 destroy_entity(</td><td class=PType nowrap>ENTITY&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>entity</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Destroys an entity in the world.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt50"><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><div class=CToolTip id="tt51"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>virtual void destroy()</td></tr></table></blockquote>Destorys the entity.</div></div><div class=CToolTip id="tt52"><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 destroy_entity(</td><td class=PType nowrap>ENTITY&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>entity</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Destroys an entity in the world.</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt52"><div class=CClass>Basic entity class.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt53"><div class=CClass>Basic entity class.</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt53"><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 find_entities(</td><td class=PType nowrap>vec2&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>pos,</td><td class=PDefaultValuePrefix>&nbsp;&nbsp;</td><td class=PDefaultValue width=100%></td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>radius,</td><td class=PDefaultValuePrefix>&nbsp;&nbsp;</td><td class=PDefaultValue width=100%></td></tr><tr><td></td><td class=PType nowrap>ENTITY&nbsp;</td><td class=PParameterPrefix nowrap>**</td><td class=PParameter nowrap>ents,</td><td class=PDefaultValuePrefix>&nbsp;&nbsp;</td><td class=PDefaultValue width=100%></td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>max,</td><td class=PDefaultValuePrefix>&nbsp;&nbsp;</td><td class=PDefaultValue width=100%></td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>type</td><td class=PDefaultValuePrefix>&nbsp;=&nbsp;</td><td class=PDefaultValue width=100%> -1</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Finds entities close to a position and returns them in a list.</div></div><div class=CToolTip id="tt54"><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><div class=CToolTip id="tt55"><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>typedef void (</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>fs_listdir_callback</td><td class=PAfterParameters nowrap>)(const char *name, int is_dir, void *user)</td></tr></table></td></tr></table></blockquote>Lists the files in a directory</div></div><div class=CToolTip id="tt56"><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 fs_makedir(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>path</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Creates a directory</div></div><div class=CToolTip id="tt57"><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 fs_storage_path(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>appname,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>path,</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>max</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Fetches per user configuration directory.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt54"><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 find_entities(</td><td class=PType nowrap>vec2&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>pos,</td><td class=PDefaultValuePrefix>&nbsp;&nbsp;</td><td class=PDefaultValue width=100%></td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>radius,</td><td class=PDefaultValuePrefix>&nbsp;&nbsp;</td><td class=PDefaultValue width=100%></td></tr><tr><td></td><td class=PType nowrap>ENTITY&nbsp;</td><td class=PParameterPrefix nowrap>**</td><td class=PParameter nowrap>ents,</td><td class=PDefaultValuePrefix>&nbsp;&nbsp;</td><td class=PDefaultValue width=100%></td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>max,</td><td class=PDefaultValuePrefix>&nbsp;&nbsp;</td><td class=PDefaultValue width=100%></td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>type</td><td class=PDefaultValuePrefix>&nbsp;=&nbsp;</td><td class=PDefaultValue width=100%> -1</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Finds entities close to a position and returns them in a list.</div></div><div class=CToolTip id="tt55"><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-->
 
 </div><!--Index-->
 
@@ -41,9 +41,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <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 id=MSelected>Everything</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><a href="Variables.html">Variables</a></div></div></div></div></div><script type="text/javascript"><!--
+<div id=Menu><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_huffman-h.html">e_huffman.h</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/entity-hpp.html">Entity</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gamecontroller-hpp.html">Game Controller</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gameworld-hpp.html">Game World</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 id=MSelected>Everything</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><a href="Variables.html">Variables</a></div></div><div class=MEntry><div class=MIndex><a href="Files.html">Files</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><!--
+--></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="Files">Files</option><option value="Functions">Functions</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
 HideAllBut([8, 7, 6], 9);// --></script></div><!--Menu-->
 
 
diff --git a/docs/output/index/General2.html b/docs/output/index/General2.html
index 7a54a775..4ad11a5d 100644
--- a/docs/output/index/General2.html
+++ b/docs/output/index/General2.html
@@ -11,13 +11,13 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! &middot; 0-9 &middot; <a href="General.html#A">A</a> &middot; <a href="General.html#B">B</a> &middot; <a href="General.html#C">C</a> &middot; <a href="General.html#D">D</a> &middot; <a href="General.html#E">E</a> &middot; <a href="General.html#F">F</a> &middot; <a href="#G">G</a> &middot; <a href="#H">H</a> &middot; <a href="General3.html#I">I</a> &middot; J &middot; K &middot; <a href="General3.html#L">L</a> &middot; <a href="General4.html#M">M</a> &middot; <a href="General5.html#N">N</a> &middot; <a href="General5.html#O">O</a> &middot; <a href="General5.html#P">P</a> &middot; <a href="General5.html#Q">Q</a> &middot; <a href="General5.html#R">R</a> &middot; <a href="General6.html#S">S</a> &middot; <a href="General6.html#T">T</a> &middot; <a href="General6.html#U">U</a> &middot; <a href="General6.html#V">V</a> &middot; <a href="General6.html#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="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=link58 onMouseOver="ShowTip(event, 'tt58', 'link58')" onMouseOut="HideTip('tt58')" class=ISymbol>Game Controller</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gs_common-hpp.html#Game_World" id=link59 onMouseOver="ShowTip(event, 'tt59', 'link59')" onMouseOut="HideTip('tt59')" class=ISymbol>Game World</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_blend_additive" id=link60 onMouseOver="ShowTip(event, 'tt60', 'link60')" onMouseOut="HideTip('tt60')" class=ISymbol>gfx_blend_additive</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_blend_none" id=link61 onMouseOver="ShowTip(event, 'tt61', 'link61')" onMouseOut="HideTip('tt61')" class=ISymbol>gfx_blend_none</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_blend_normal" id=link62 onMouseOver="ShowTip(event, 'tt62', 'link62')" onMouseOut="HideTip('tt62')" class=ISymbol>gfx_blend_normal</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_clear" id=link63 onMouseOver="ShowTip(event, 'tt63', 'link63')" onMouseOut="HideTip('tt63')" class=ISymbol>gfx_clear</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_clip_disable" id=link64 onMouseOver="ShowTip(event, 'tt64', 'link64')" onMouseOut="HideTip('tt64')" class=ISymbol>gfx_clip_disable</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_clip_enable" id=link65 onMouseOver="ShowTip(event, 'tt65', 'link65')" onMouseOut="HideTip('tt65')" class=ISymbol>gfx_clip_enable</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_get_video_modes" id=link66 onMouseOver="ShowTip(event, 'tt66', 'link66')" onMouseOut="HideTip('tt66')" class=ISymbol>gfx_get_video_modes</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_getscreen" id=link67 onMouseOver="ShowTip(event, 'tt67', 'link67')" onMouseOut="HideTip('tt67')" class=ISymbol>gfx_getscreen</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_lines_begin" id=link68 onMouseOver="ShowTip(event, 'tt68', 'link68')" onMouseOut="HideTip('tt68')" class=ISymbol>gfx_lines_begin</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_lines_draw" id=link69 onMouseOver="ShowTip(event, 'tt69', 'link69')" onMouseOut="HideTip('tt69')" class=ISymbol>gfx_lines_draw</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_lines_end" id=link70 onMouseOver="ShowTip(event, 'tt70', 'link70')" onMouseOut="HideTip('tt70')" class=ISymbol>gfx_lines_end</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_load_png" id=link71 onMouseOver="ShowTip(event, 'tt71', 'link71')" onMouseOut="HideTip('tt71')" class=ISymbol>gfx_load_png</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_load_texture" id=link72 onMouseOver="ShowTip(event, 'tt72', 'link72')" onMouseOut="HideTip('tt72')" class=ISymbol>gfx_load_texture</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_load_texture_raw" id=link73 onMouseOver="ShowTip(event, 'tt73', 'link73')" onMouseOut="HideTip('tt73')" class=ISymbol>gfx_load_texture_raw</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_mapscreen" id=link74 onMouseOver="ShowTip(event, 'tt74', 'link74')" onMouseOut="HideTip('tt74')" class=ISymbol>gfx_mapscreen</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_memory_usage" id=link75 onMouseOver="ShowTip(event, 'tt75', 'link75')" onMouseOut="HideTip('tt75')" class=ISymbol>gfx_memory_usage</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_begin" id=link76 onMouseOver="ShowTip(event, 'tt76', 'link76')" onMouseOut="HideTip('tt76')" class=ISymbol>gfx_quads_begin</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_draw" id=link77 onMouseOver="ShowTip(event, 'tt77', 'link77')" onMouseOut="HideTip('tt77')" class=ISymbol>gfx_quads_draw</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_draw_freeform" id=link78 onMouseOver="ShowTip(event, 'tt78', 'link78')" onMouseOut="HideTip('tt78')" class=ISymbol>gfx_quads_draw_freeform</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_drawTL" id=link79 onMouseOver="ShowTip(event, 'tt79', 'link79')" onMouseOut="HideTip('tt79')" class=ISymbol>gfx_quads_drawTL</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_end" id=link80 onMouseOver="ShowTip(event, 'tt80', 'link80')" onMouseOut="HideTip('tt80')" class=ISymbol>gfx_quads_end</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_setrotation" id=link81 onMouseOver="ShowTip(event, 'tt81', 'link81')" onMouseOut="HideTip('tt81')" class=ISymbol>gfx_quads_setrotation</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_setsubset" id=link82 onMouseOver="ShowTip(event, 'tt82', 'link82')" onMouseOut="HideTip('tt82')" class=ISymbol>gfx_quads_setsubset</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_setsubset_free" id=link83 onMouseOver="ShowTip(event, 'tt83', 'link83')" onMouseOut="HideTip('tt83')" class=ISymbol>gfx_quads_setsubset_free</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_text" id=link84 onMouseOver="ShowTip(event, 'tt84', 'link84')" onMouseOut="HideTip('tt84')" class=ISymbol>gfx_quads_text</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenaspect" id=link85 onMouseOver="ShowTip(event, 'tt85', 'link85')" onMouseOut="HideTip('tt85')" class=ISymbol>gfx_screenaspect</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenheight" id=link86 onMouseOver="ShowTip(event, 'tt86', 'link86')" onMouseOut="HideTip('tt86')" class=ISymbol>gfx_screenheight</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenshot" id=link87 onMouseOver="ShowTip(event, 'tt87', 'link87')" onMouseOut="HideTip('tt87')" class=ISymbol>gfx_screenshot</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenwidth" id=link88 onMouseOver="ShowTip(event, 'tt88', 'link88')" onMouseOut="HideTip('tt88')" class=ISymbol>gfx_screenwidth</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_setcolor" id=link89 onMouseOver="ShowTip(event, 'tt89', 'link89')" onMouseOut="HideTip('tt89')" class=ISymbol>gfx_setcolor</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_setcolorvertex" id=link90 onMouseOver="ShowTip(event, 'tt90', 'link90')" onMouseOut="HideTip('tt90')" class=ISymbol>gfx_setcolorvertex</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text" id=link91 onMouseOver="ShowTip(event, 'tt91', 'link91')" onMouseOut="HideTip('tt91')" class=ISymbol>gfx_text</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text_color" id=link92 onMouseOver="ShowTip(event, 'tt92', 'link92')" onMouseOut="HideTip('tt92')" class=ISymbol>gfx_text_color</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text_set_default_font" id=link93 onMouseOver="ShowTip(event, 'tt93', 'link93')" onMouseOut="HideTip('tt93')" class=ISymbol>gfx_text_set_default_font</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text_width" id=link94 onMouseOver="ShowTip(event, 'tt94', 'link94')" onMouseOut="HideTip('tt94')" class=ISymbol>gfx_text_width</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_texture_set" id=link95 onMouseOver="ShowTip(event, 'tt95', 'link95')" onMouseOut="HideTip('tt95')" class=ISymbol>gfx_texture_set</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_unload_texture" id=link96 onMouseOver="ShowTip(event, 'tt96', 'link96')" onMouseOut="HideTip('tt96')" class=ISymbol>gfx_unload_texture</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#Graphics"  class=ISymbol>Graphics</a></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=link97 onMouseOver="ShowTip(event, 'tt97', 'link97')" onMouseOut="HideTip('tt97')" class=ISymbol>height</a>, <span class=IParent>IMAGE_INFO</span></td></tr></table>
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! &middot; 0-9 &middot; <a href="General.html#A">A</a> &middot; <a href="General.html#B">B</a> &middot; <a href="General.html#C">C</a> &middot; <a href="General.html#D">D</a> &middot; <a href="General.html#E">E</a> &middot; <a href="General.html#F">F</a> &middot; <a href="#G">G</a> &middot; <a href="#H">H</a> &middot; <a href="General3.html#I">I</a> &middot; J &middot; K &middot; <a href="General3.html#L">L</a> &middot; <a href="General3.html#M">M</a> &middot; <a href="General3.html#N">N</a> &middot; <a href="General3.html#O">O</a> &middot; <a href="General3.html#P">P</a> &middot; <a href="General3.html#Q">Q</a> &middot; <a href="General4.html#R">R</a> &middot; <a href="General4.html#S">S</a> &middot; <a href="General4.html#T">T</a> &middot; U &middot; <a href="General4.html#V">V</a> &middot; <a href="General4.html#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="G"></a>G</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gamecontroller-hpp.html#Game_Controller" id=link56 onMouseOver="ShowTip(event, 'tt56', 'link56')" onMouseOut="HideTip('tt56')" class=ISymbol>Game Controller</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gameworld-hpp.html#Game_World" id=link57 onMouseOver="ShowTip(event, 'tt57', 'link57')" onMouseOut="HideTip('tt57')" class=ISymbol>Game World</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_blend_additive" id=link58 onMouseOver="ShowTip(event, 'tt58', 'link58')" onMouseOut="HideTip('tt58')" class=ISymbol>gfx_blend_additive</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_blend_none" id=link59 onMouseOver="ShowTip(event, 'tt59', 'link59')" onMouseOut="HideTip('tt59')" class=ISymbol>gfx_blend_none</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_blend_normal" id=link60 onMouseOver="ShowTip(event, 'tt60', 'link60')" onMouseOut="HideTip('tt60')" class=ISymbol>gfx_blend_normal</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_clear" id=link61 onMouseOver="ShowTip(event, 'tt61', 'link61')" onMouseOut="HideTip('tt61')" class=ISymbol>gfx_clear</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_clip_disable" id=link62 onMouseOver="ShowTip(event, 'tt62', 'link62')" onMouseOut="HideTip('tt62')" class=ISymbol>gfx_clip_disable</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_clip_enable" id=link63 onMouseOver="ShowTip(event, 'tt63', 'link63')" onMouseOut="HideTip('tt63')" class=ISymbol>gfx_clip_enable</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_get_video_modes" id=link64 onMouseOver="ShowTip(event, 'tt64', 'link64')" onMouseOut="HideTip('tt64')" class=ISymbol>gfx_get_video_modes</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_getscreen" id=link65 onMouseOver="ShowTip(event, 'tt65', 'link65')" onMouseOut="HideTip('tt65')" class=ISymbol>gfx_getscreen</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_lines_begin" id=link66 onMouseOver="ShowTip(event, 'tt66', 'link66')" onMouseOut="HideTip('tt66')" class=ISymbol>gfx_lines_begin</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_lines_draw" id=link67 onMouseOver="ShowTip(event, 'tt67', 'link67')" onMouseOut="HideTip('tt67')" class=ISymbol>gfx_lines_draw</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_lines_end" id=link68 onMouseOver="ShowTip(event, 'tt68', 'link68')" onMouseOut="HideTip('tt68')" class=ISymbol>gfx_lines_end</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_load_png" id=link69 onMouseOver="ShowTip(event, 'tt69', 'link69')" onMouseOut="HideTip('tt69')" class=ISymbol>gfx_load_png</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_load_texture" id=link70 onMouseOver="ShowTip(event, 'tt70', 'link70')" onMouseOut="HideTip('tt70')" class=ISymbol>gfx_load_texture</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_load_texture_raw" id=link71 onMouseOver="ShowTip(event, 'tt71', 'link71')" onMouseOut="HideTip('tt71')" class=ISymbol>gfx_load_texture_raw</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_mapscreen" id=link72 onMouseOver="ShowTip(event, 'tt72', 'link72')" onMouseOut="HideTip('tt72')" class=ISymbol>gfx_mapscreen</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_memory_usage" id=link73 onMouseOver="ShowTip(event, 'tt73', 'link73')" onMouseOut="HideTip('tt73')" class=ISymbol>gfx_memory_usage</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_minimize" id=link74 onMouseOver="ShowTip(event, 'tt74', 'link74')" onMouseOut="HideTip('tt74')" class=ISymbol>gfx_minimize</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_begin" id=link75 onMouseOver="ShowTip(event, 'tt75', 'link75')" onMouseOut="HideTip('tt75')" class=ISymbol>gfx_quads_begin</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_draw" id=link76 onMouseOver="ShowTip(event, 'tt76', 'link76')" onMouseOut="HideTip('tt76')" class=ISymbol>gfx_quads_draw</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_draw_freeform" id=link77 onMouseOver="ShowTip(event, 'tt77', 'link77')" onMouseOut="HideTip('tt77')" class=ISymbol>gfx_quads_draw_freeform</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_drawTL" id=link78 onMouseOver="ShowTip(event, 'tt78', 'link78')" onMouseOut="HideTip('tt78')" class=ISymbol>gfx_quads_drawTL</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_end" id=link79 onMouseOver="ShowTip(event, 'tt79', 'link79')" onMouseOut="HideTip('tt79')" class=ISymbol>gfx_quads_end</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_setrotation" id=link80 onMouseOver="ShowTip(event, 'tt80', 'link80')" onMouseOut="HideTip('tt80')" class=ISymbol>gfx_quads_setrotation</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_setsubset" id=link81 onMouseOver="ShowTip(event, 'tt81', 'link81')" onMouseOut="HideTip('tt81')" class=ISymbol>gfx_quads_setsubset</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_setsubset_free" id=link82 onMouseOver="ShowTip(event, 'tt82', 'link82')" onMouseOut="HideTip('tt82')" class=ISymbol>gfx_quads_setsubset_free</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_text" id=link83 onMouseOver="ShowTip(event, 'tt83', 'link83')" onMouseOut="HideTip('tt83')" class=ISymbol>gfx_quads_text</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenaspect" id=link84 onMouseOver="ShowTip(event, 'tt84', 'link84')" onMouseOut="HideTip('tt84')" class=ISymbol>gfx_screenaspect</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenheight" id=link85 onMouseOver="ShowTip(event, 'tt85', 'link85')" onMouseOut="HideTip('tt85')" class=ISymbol>gfx_screenheight</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenshot" id=link86 onMouseOver="ShowTip(event, 'tt86', 'link86')" onMouseOut="HideTip('tt86')" class=ISymbol>gfx_screenshot</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenshot_direct" id=link87 onMouseOver="ShowTip(event, 'tt87', 'link87')" onMouseOut="HideTip('tt87')" class=ISymbol>gfx_screenshot_direct</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenwidth" id=link88 onMouseOver="ShowTip(event, 'tt88', 'link88')" onMouseOut="HideTip('tt88')" class=ISymbol>gfx_screenwidth</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_setcolor" id=link89 onMouseOver="ShowTip(event, 'tt89', 'link89')" onMouseOut="HideTip('tt89')" class=ISymbol>gfx_setcolor</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_setcolorvertex" id=link90 onMouseOver="ShowTip(event, 'tt90', 'link90')" onMouseOut="HideTip('tt90')" class=ISymbol>gfx_setcolorvertex</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text" id=link91 onMouseOver="ShowTip(event, 'tt91', 'link91')" onMouseOut="HideTip('tt91')" class=ISymbol>gfx_text</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text_color" id=link92 onMouseOver="ShowTip(event, 'tt92', 'link92')" onMouseOut="HideTip('tt92')" class=ISymbol>gfx_text_color</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text_set_default_font" id=link93 onMouseOver="ShowTip(event, 'tt93', 'link93')" onMouseOut="HideTip('tt93')" class=ISymbol>gfx_text_set_default_font</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text_width" id=link94 onMouseOver="ShowTip(event, 'tt94', 'link94')" onMouseOut="HideTip('tt94')" class=ISymbol>gfx_text_width</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_texture_set" id=link95 onMouseOver="ShowTip(event, 'tt95', 'link95')" onMouseOut="HideTip('tt95')" class=ISymbol>gfx_texture_set</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_unload_texture" id=link96 onMouseOver="ShowTip(event, 'tt96', 'link96')" onMouseOut="HideTip('tt96')" class=ISymbol>gfx_unload_texture</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#Graphics"  class=ISymbol>Graphics</a></td></tr><tr><td class=IHeading><a name="H"></a>H</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.height" id=link97 onMouseOver="ShowTip(event, 'tt97', 'link97')" onMouseOut="HideTip('tt97')" class=ISymbol>height</a>, <span class=IParent>IMAGE_INFO</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_huffman-h.html#huffman_compress" id=link98 onMouseOver="ShowTip(event, 'tt98', 'link98')" onMouseOut="HideTip('tt98')" class=ISymbol>huffman_compress</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_huffman-h.html#huffman_decompress" id=link99 onMouseOver="ShowTip(event, 'tt99', 'link99')" onMouseOut="HideTip('tt99')" class=ISymbol>huffman_decompress</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_huffman-h.html#huffman_init" id=link100 onMouseOver="ShowTip(event, 'tt100', 'link100')" onMouseOut="HideTip('tt100')" class=ISymbol>huffman_init</a></td></tr></table>
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt58"><div class=CClass>Controls the main game logic. </div></div><div class=CToolTip id="tt59"><div class=CClass>Tracks all entities in the game. </div></div><div class=CToolTip id="tt60"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_blend_additive()</td></tr></table></blockquote>Set the active blending mode to additive (src, one).</div></div><div class=CToolTip id="tt61"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_blend_none()</td></tr></table></blockquote>Disables blending</div></div><div class=CToolTip id="tt62"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_blend_normal()</td></tr></table></blockquote>Set the active blending mode to normal (src, 1-src).</div></div><div class=CToolTip id="tt63"><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 gfx_clear(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Clears the screen with the specified color.</div></div><div class=CToolTip id="tt64"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_clip_disable()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt65"><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 gfx_clip_enable(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>y,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>w,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>h</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt66"><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 gfx_get_video_modes(</td><td class=PType nowrap>VIDEO_MODE&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>list,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>maxcount</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Fetches a list of all the available video modes.</div></div><div class=CToolTip id="tt67"><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 gfx_getscreen(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>tl_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>tl_y,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>br_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>br_y</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt68"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_lines_begin()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt69"><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 gfx_lines_draw(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y1</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt70"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_lines_end()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt71"><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 gfx_load_png(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>IMAGE_INFO&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>img,</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>filename</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Loads a PNG image from disk.</div></div><div class=CToolTip id="tt72"><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 gfx_load_texture(</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></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>store_format,</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>flags</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Loads a texture from a file. </div></div><div class=CToolTip id="tt73"><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 gfx_load_texture_raw(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>w,</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>h,</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>format,</td></tr><tr><td></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>store_format,</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>flags</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Loads a texture from memory.</div></div><div class=CToolTip id="tt74"><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 gfx_mapscreen(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_y,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_y</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Specifies the coordinate system for the screen.</div></div><div class=CToolTip id="tt75"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int gfx_memory_usage()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt76"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_quads_begin()</td></tr></table></blockquote>Begins a quad drawing session.</div></div><div class=CToolTip id="tt77"><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 gfx_quads_draw(</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></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>w,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>h</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Draws a quad by specifying the center point.</div></div><div class=CToolTip id="tt78"><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 gfx_quads_draw_freeform(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x3,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y3</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Draws a quad by specifying the corner points.</div></div><div class=CToolTip id="tt79"><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 gfx_quads_drawTL(</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></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>width,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>height</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Draws a quad by specifying the top-left point.</div></div><div class=CToolTip id="tt80"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_quads_end()</td></tr></table></blockquote>Ends a quad session.</div></div><div class=CToolTip id="tt81"><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 gfx_quads_setrotation(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>angle</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the rotation to use when drawing a quad.</div></div><div class=CToolTip id="tt82"><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 gfx_quads_setsubset(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_u,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_v,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_u,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_v</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the uv coordinates to use.</div></div><div class=CToolTip id="tt83"><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 gfx_quads_setsubset_free(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x3,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y3</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt84"><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 gfx_quads_text(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>y,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size,</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>text</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt85"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float gfx_screenaspect()</td></tr></table></blockquote>Returns the aspect ratio between width and height.</div></div><div class=CToolTip id="tt86"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int gfx_screenheight()</td></tr></table></blockquote>Returns the screen height.</div></div><div class=CToolTip id="tt87"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_screenshot()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt88"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int gfx_screenwidth()</td></tr></table></blockquote>Returns the screen width.</div></div><div class=CToolTip id="tt89"><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 gfx_setcolor(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>a</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the color of all the vertices.</div></div><div class=CToolTip id="tt90"><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 gfx_setcolorvertex(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>i,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>a</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the color of a vertex.</div></div><div class=CToolTip id="tt91"><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 gfx_text(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>font,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>y,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size,</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>text,</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>max_width</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt92"><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 gfx_text_color(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>a</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt93"><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 gfx_text_set_default_font(</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>font</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt94"><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>float gfx_text_width(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>font,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size,</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>text,</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>length</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt95"><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 gfx_texture_set(</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>Sets the active texture.</div></div><div class=CToolTip id="tt96"><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 gfx_unload_texture(</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>Unloads a texture.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt56"><div class=CClass>Controls the main game logic. </div></div><div class=CToolTip id="tt57"><div class=CClass>Tracks all entities in the game. </div></div><div class=CToolTip id="tt58"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_blend_additive()</td></tr></table></blockquote>Set the active blending mode to additive (src, one).</div></div><div class=CToolTip id="tt59"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_blend_none()</td></tr></table></blockquote>Disables blending</div></div><div class=CToolTip id="tt60"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_blend_normal()</td></tr></table></blockquote>Set the active blending mode to normal (src, 1-src).</div></div><div class=CToolTip id="tt61"><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 gfx_clear(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Clears the screen with the specified color.</div></div><div class=CToolTip id="tt62"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_clip_disable()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt63"><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 gfx_clip_enable(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>y,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>w,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>h</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt64"><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 gfx_get_video_modes(</td><td class=PType nowrap>VIDEO_MODE&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>list,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>maxcount</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Fetches a list of all the available video modes.</div></div><div class=CToolTip id="tt65"><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 gfx_getscreen(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>tl_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>tl_y,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>br_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>br_y</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt66"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_lines_begin()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt67"><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 gfx_lines_draw(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y1</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt68"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_lines_end()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt69"><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 gfx_load_png(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>IMAGE_INFO&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>img,</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>filename</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Loads a PNG image from disk.</div></div><div class=CToolTip id="tt70"><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 gfx_load_texture(</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></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>store_format,</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>flags</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Loads a texture from a file. </div></div><div class=CToolTip id="tt71"><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 gfx_load_texture_raw(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>w,</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>h,</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>format,</td></tr><tr><td></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>store_format,</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>flags</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Loads a texture from memory.</div></div><div class=CToolTip id="tt72"><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 gfx_mapscreen(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_y,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_x,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_y</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Specifies the coordinate system for the screen.</div></div><div class=CToolTip id="tt73"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int gfx_memory_usage()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt74"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_minimize()</td></tr></table></blockquote>Minimizes the window.</div></div><div class=CToolTip id="tt75"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_quads_begin()</td></tr></table></blockquote>Begins a quad drawing session.</div></div><div class=CToolTip id="tt76"><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 gfx_quads_draw(</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></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>w,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>h</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Draws a quad by specifying the center point.</div></div><div class=CToolTip id="tt77"><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 gfx_quads_draw_freeform(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x3,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y3</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Draws a quad by specifying the corner points.</div></div><div class=CToolTip id="tt78"><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 gfx_quads_drawTL(</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></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>width,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>height</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Draws a quad by specifying the top-left point.</div></div><div class=CToolTip id="tt79"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_quads_end()</td></tr></table></blockquote>Ends a quad session.</div></div><div class=CToolTip id="tt80"><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 gfx_quads_setrotation(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>angle</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the rotation to use when drawing a quad.</div></div><div class=CToolTip id="tt81"><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 gfx_quads_setsubset(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_u,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>tl_v,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_u,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>br_v</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the uv coordinates to use.</div></div><div class=CToolTip id="tt82"><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 gfx_quads_setsubset_free(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y0,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y1,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y2,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>x3,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>y3</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt83"><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 gfx_quads_text(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>y,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size,</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>text</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt84"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>float gfx_screenaspect()</td></tr></table></blockquote>Returns the aspect ratio between width and height.</div></div><div class=CToolTip id="tt85"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int gfx_screenheight()</td></tr></table></blockquote>Returns the screen height.</div></div><div class=CToolTip id="tt86"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void gfx_screenshot()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt87"><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 gfx_screenshot_direct(</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>TODO</div></div><div class=CToolTip id="tt88"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int gfx_screenwidth()</td></tr></table></blockquote>Returns the screen width.</div></div><div class=CToolTip id="tt89"><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 gfx_setcolor(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>a</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the color of all the vertices.</div></div><div class=CToolTip id="tt90"><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 gfx_setcolorvertex(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>i,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>a</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets the color of a vertex.</div></div><div class=CToolTip id="tt91"><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 gfx_text(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>font,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>y,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size,</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>text,</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>max_width</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt92"><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 gfx_text_color(</td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>r,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>g,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>b,</td></tr><tr><td></td><td class=PType nowrap>float&nbsp;</td><td class=PParameter nowrap>a</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt93"><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 gfx_text_set_default_font(</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>font</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt94"><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>float gfx_text_width(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>font,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>float&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size,</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>text,</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>length</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt95"><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 gfx_texture_set(</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>Sets the active texture.</div></div><div class=CToolTip id="tt96"><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 gfx_unload_texture(</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>Unloads a texture.</div></div><!--END_ND_TOOLTIPS-->
 
 
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt97"><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-->
+<div class=CToolTip id="tt97"><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><div class=CToolTip id="tt98"><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 huffman_compress(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>HUFFMAN_STATE&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>huff,</td></tr><tr><td></td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>input,</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>input_size,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>output,</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>output_size</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Compresses a buffer and outputs a compressed buffer.</div></div><div class=CToolTip id="tt99"><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 huffman_decompress(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>HUFFMAN_STATE&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>huff,</td></tr><tr><td></td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>input,</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>input_size,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>output,</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>output_size</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Decompresses a buffer</div></div><div class=CToolTip id="tt100"><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 huffman_init(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>HUFFMAN_STATE&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>huff,</td></tr><tr><td></td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>unsigned&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>frequencies</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Inits the compressor/decompressor.</div></div><!--END_ND_TOOLTIPS-->
 
 </div><!--Index-->
 
@@ -25,9 +25,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <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 id=MSelected>Everything</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><a href="Variables.html">Variables</a></div></div></div></div></div><script type="text/javascript"><!--
+<div id=Menu><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_huffman-h.html">e_huffman.h</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/entity-hpp.html">Entity</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gamecontroller-hpp.html">Game Controller</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gameworld-hpp.html">Game World</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 id=MSelected>Everything</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><a href="Variables.html">Variables</a></div></div><div class=MEntry><div class=MIndex><a href="Files.html">Files</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><!--
+--></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="Files">Files</option><option value="Functions">Functions</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
 HideAllBut([8, 7, 6], 9);// --></script></div><!--Menu-->
 
 
diff --git a/docs/output/index/General3.html b/docs/output/index/General3.html
index 5d71bfa1..097c75ef 100644
--- a/docs/output/index/General3.html
+++ b/docs/output/index/General3.html
@@ -11,9 +11,29 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! &middot; 0-9 &middot; <a href="General.html#A">A</a> &middot; <a href="General.html#B">B</a> &middot; <a href="General.html#C">C</a> &middot; <a href="General.html#D">D</a> &middot; <a href="General.html#E">E</a> &middot; <a href="General.html#F">F</a> &middot; <a href="General2.html#G">G</a> &middot; <a href="General2.html#H">H</a> &middot; <a href="#I">I</a> &middot; J &middot; K &middot; <a href="#L">L</a> &middot; <a href="General4.html#M">M</a> &middot; <a href="General5.html#N">N</a> &middot; <a href="General5.html#O">O</a> &middot; <a href="General5.html#P">P</a> &middot; <a href="General5.html#Q">Q</a> &middot; <a href="General5.html#R">R</a> &middot; <a href="General6.html#S">S</a> &middot; <a href="General6.html#T">T</a> &middot; <a href="General6.html#U">U</a> &middot; <a href="General6.html#V">V</a> &middot; <a href="General6.html#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="I"></a>I</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#Image_Formats"  class=ISymbol>Image Formats</a></td></tr><tr><td class=ISymbolPrefix>&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>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#IMG_ALPHA" id=link98 onMouseOver="ShowTip(event, 'tt98', 'link98')" onMouseOut="HideTip('tt98')" class=ISymbol>IMG_ALPHA</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#IMG_AUTO" id=link99 onMouseOver="ShowTip(event, 'tt99', 'link99')" onMouseOut="HideTip('tt99')" class=ISymbol>IMG_AUTO</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#IMG_RGB" id=link100 onMouseOver="ShowTip(event, 'tt100', 'link100')" onMouseOut="HideTip('tt100')" class=ISymbol>IMG_RGB</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#IMG_RGBA" id=link101 onMouseOver="ShowTip(event, 'tt101', 'link101')" onMouseOut="HideTip('tt101')" class=ISymbol>IMG_RGBA</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/snapshots-txt.html#In_depth"  class=ISymbol>In depth</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/server_op-txt.html#Init"  class=ISymbol>Init</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_clear_events" id=link102 onMouseOver="ShowTip(event, 'tt102', 'link102')" onMouseOut="HideTip('tt102')" class=ISymbol>inp_clear_events</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_clear_key_states" id=link103 onMouseOver="ShowTip(event, 'tt103', 'link103')" onMouseOut="HideTip('tt103')" class=ISymbol>inp_clear_key_states</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_get_event" id=link104 onMouseOver="ShowTip(event, 'tt104', 'link104')" onMouseOut="HideTip('tt104')" class=ISymbol>inp_get_event</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_code" id=link105 onMouseOver="ShowTip(event, 'tt105', 'link105')" onMouseOut="HideTip('tt105')" class=ISymbol>inp_key_code</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_down" id=link106 onMouseOver="ShowTip(event, 'tt106', 'link106')" onMouseOut="HideTip('tt106')" class=ISymbol>inp_key_down</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_name" id=link107 onMouseOver="ShowTip(event, 'tt107', 'link107')" onMouseOut="HideTip('tt107')" class=ISymbol>inp_key_name</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_pressed" id=link108 onMouseOver="ShowTip(event, 'tt108', 'link108')" onMouseOut="HideTip('tt108')" class=ISymbol>inp_key_pressed</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_presses" id=link109 onMouseOver="ShowTip(event, 'tt109', 'link109')" onMouseOut="HideTip('tt109')" class=ISymbol>inp_key_presses</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_releases" id=link110 onMouseOver="ShowTip(event, 'tt110', 'link110')" onMouseOut="HideTip('tt110')" class=ISymbol>inp_key_releases</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_state" id=link111 onMouseOver="ShowTip(event, 'tt111', 'link111')" onMouseOut="HideTip('tt111')" class=ISymbol>inp_key_state</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_was_pressed" id=link112 onMouseOver="ShowTip(event, 'tt112', 'link112')" onMouseOut="HideTip('tt112')" class=ISymbol>inp_key_was_pressed</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_mouse_doubleclick" id=link113 onMouseOver="ShowTip(event, 'tt113', 'link113')" onMouseOut="HideTip('tt113')" class=ISymbol>inp_mouse_doubleclick</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_mouse_relative" id=link114 onMouseOver="ShowTip(event, 'tt114', 'link114')" onMouseOut="HideTip('tt114')" class=ISymbol>inp_mouse_relative</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_mouse_scroll" id=link115 onMouseOver="ShowTip(event, 'tt115', 'link115')" onMouseOut="HideTip('tt115')" class=ISymbol>inp_mouse_scroll</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_num_events" id=link116 onMouseOver="ShowTip(event, 'tt116', 'link116')" onMouseOut="HideTip('tt116')" class=ISymbol>inp_num_events</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#Input"  class=ISymbol>Input</a></td></tr><tr><td class=ISymbolPrefix>&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=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gs_common-hpp.html#Game_World.insert_entity" id=link117 onMouseOver="ShowTip(event, 'tt117', 'link117')" onMouseOut="HideTip('tt117')" class=ISymbol>insert_entity</a>, <span class=IParent>Game World</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/snapshots-txt.html#Inspection" id=link118 onMouseOver="ShowTip(event, 'tt118', 'link118')" onMouseOut="HideTip('tt118')" class=ISymbol>Inspection</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gs_common-hpp.html#Game_World.interserct_character" id=link119 onMouseOver="ShowTip(event, 'tt119', 'link119')" onMouseOut="HideTip('tt119')" class=ISymbol>interserct_character</a>, <span class=IParent>Game World</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/snapshots-txt.html#Interval" id=link120 onMouseOver="ShowTip(event, 'tt120', 'link120')" onMouseOut="HideTip('tt120')" class=ISymbol>Interval</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#io_close" id=link121 onMouseOver="ShowTip(event, 'tt121', 'link121')" onMouseOut="HideTip('tt121')" class=ISymbol>io_close</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#io_flush" id=link122 onMouseOver="ShowTip(event, 'tt122', 'link122')" onMouseOut="HideTip('tt122')" class=ISymbol>io_flush</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#io_length" id=link123 onMouseOver="ShowTip(event, 'tt123', 'link123')" onMouseOut="HideTip('tt123')" class=ISymbol>io_length</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#io_open" id=link124 onMouseOver="ShowTip(event, 'tt124', 'link124')" onMouseOut="HideTip('tt124')" class=ISymbol>io_open</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#io_read" id=link125 onMouseOver="ShowTip(event, 'tt125', 'link125')" onMouseOut="HideTip('tt125')" class=ISymbol>io_read</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#io_seek" id=link126 onMouseOver="ShowTip(event, 'tt126', 'link126')" onMouseOut="HideTip('tt126')" class=ISymbol>io_seek</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#io_skip" id=link127 onMouseOver="ShowTip(event, 'tt127', 'link127')" onMouseOut="HideTip('tt127')" class=ISymbol>io_skip</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#io_stderr" id=link128 onMouseOver="ShowTip(event, 'tt128', 'link128')" onMouseOut="HideTip('tt128')" class=ISymbol>io_stderr</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#io_stdin" id=link129 onMouseOver="ShowTip(event, 'tt129', 'link129')" onMouseOut="HideTip('tt129')" class=ISymbol>io_stdin</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#io_stdout" id=link130 onMouseOver="ShowTip(event, 'tt130', 'link130')" onMouseOut="HideTip('tt130')" class=ISymbol>io_stdout</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#io_tell" id=link131 onMouseOver="ShowTip(event, 'tt131', 'link131')" onMouseOut="HideTip('tt131')" class=ISymbol>io_tell</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#io_write" id=link132 onMouseOver="ShowTip(event, 'tt132', 'link132')" onMouseOut="HideTip('tt132')" class=ISymbol>io_write</a></td></tr><tr><td class=IHeading><a name="L"></a>L</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#Lines"  class=ISymbol>Lines</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#Locks"  class=ISymbol>Locks</a></td></tr></table>
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! &middot; 0-9 &middot; <a href="General.html#A">A</a> &middot; <a href="General.html#B">B</a> &middot; <a href="General.html#C">C</a> &middot; <a href="General.html#D">D</a> &middot; <a href="General.html#E">E</a> &middot; <a href="General.html#F">F</a> &middot; <a href="General2.html#G">G</a> &middot; <a href="General2.html#H">H</a> &middot; <a href="#I">I</a> &middot; J &middot; K &middot; <a href="#L">L</a> &middot; <a href="#M">M</a> &middot; <a href="#N">N</a> &middot; <a href="#O">O</a> &middot; <a href="#P">P</a> &middot; <a href="#Q">Q</a> &middot; <a href="General4.html#R">R</a> &middot; <a href="General4.html#S">S</a> &middot; <a href="General4.html#T">T</a> &middot; U &middot; <a href="General4.html#V">V</a> &middot; <a href="General4.html#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="I"></a>I</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#Image_Formats"  class=ISymbol>Image Formats</a></td></tr><tr><td class=ISymbolPrefix>&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>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#IMG_ALPHA" id=link101 onMouseOver="ShowTip(event, 'tt101', 'link101')" onMouseOut="HideTip('tt101')" class=ISymbol>IMG_ALPHA</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#IMG_AUTO" id=link102 onMouseOver="ShowTip(event, 'tt102', 'link102')" onMouseOut="HideTip('tt102')" class=ISymbol>IMG_AUTO</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#IMG_RGB" id=link103 onMouseOver="ShowTip(event, 'tt103', 'link103')" onMouseOut="HideTip('tt103')" class=ISymbol>IMG_RGB</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#IMG_RGBA" id=link104 onMouseOver="ShowTip(event, 'tt104', 'link104')" onMouseOut="HideTip('tt104')" class=ISymbol>IMG_RGBA</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/snapshots-txt.html#In_depth"  class=ISymbol>In depth</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/server_op-txt.html#Init"  class=ISymbol>Init</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_clear_events" id=link105 onMouseOver="ShowTip(event, 'tt105', 'link105')" onMouseOut="HideTip('tt105')" class=ISymbol>inp_clear_events</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_clear_key_states" id=link106 onMouseOver="ShowTip(event, 'tt106', 'link106')" onMouseOut="HideTip('tt106')" class=ISymbol>inp_clear_key_states</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_get_event" id=link107 onMouseOver="ShowTip(event, 'tt107', 'link107')" onMouseOut="HideTip('tt107')" class=ISymbol>inp_get_event</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_code" id=link108 onMouseOver="ShowTip(event, 'tt108', 'link108')" onMouseOut="HideTip('tt108')" class=ISymbol>inp_key_code</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_down" id=link109 onMouseOver="ShowTip(event, 'tt109', 'link109')" onMouseOut="HideTip('tt109')" class=ISymbol>inp_key_down</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_name" id=link110 onMouseOver="ShowTip(event, 'tt110', 'link110')" onMouseOut="HideTip('tt110')" class=ISymbol>inp_key_name</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_pressed" id=link111 onMouseOver="ShowTip(event, 'tt111', 'link111')" onMouseOut="HideTip('tt111')" class=ISymbol>inp_key_pressed</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_presses" id=link112 onMouseOver="ShowTip(event, 'tt112', 'link112')" onMouseOut="HideTip('tt112')" class=ISymbol>inp_key_presses</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_releases" id=link113 onMouseOver="ShowTip(event, 'tt113', 'link113')" onMouseOut="HideTip('tt113')" class=ISymbol>inp_key_releases</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_state" id=link114 onMouseOver="ShowTip(event, 'tt114', 'link114')" onMouseOut="HideTip('tt114')" class=ISymbol>inp_key_state</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_was_pressed" id=link115 onMouseOver="ShowTip(event, 'tt115', 'link115')" onMouseOut="HideTip('tt115')" class=ISymbol>inp_key_was_pressed</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_mouse_doubleclick" id=link116 onMouseOver="ShowTip(event, 'tt116', 'link116')" onMouseOut="HideTip('tt116')" class=ISymbol>inp_mouse_doubleclick</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_mouse_relative" id=link117 onMouseOver="ShowTip(event, 'tt117', 'link117')" onMouseOut="HideTip('tt117')" class=ISymbol>inp_mouse_relative</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_mouse_scroll" id=link118 onMouseOver="ShowTip(event, 'tt118', 'link118')" onMouseOut="HideTip('tt118')" class=ISymbol>inp_mouse_scroll</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_num_events" id=link119 onMouseOver="ShowTip(event, 'tt119', 'link119')" onMouseOut="HideTip('tt119')" class=ISymbol>inp_num_events</a>, <span class=IParent>INPUT_EVENT</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_inp-h.html#Input"  class=ISymbol>Input</a></td></tr><tr><td class=ISymbolPrefix>&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=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gameworld-hpp.html#Game_World.insert_entity" id=link120 onMouseOver="ShowTip(event, 'tt120', 'link120')" onMouseOut="HideTip('tt120')" class=ISymbol>insert_entity</a>, <span class=IParent>Game World</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/snapshots-txt.html#Inspection" id=link121 onMouseOver="ShowTip(event, 'tt121', 'link121')" onMouseOut="HideTip('tt121')" class=ISymbol>Inspection</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gameworld-hpp.html#Game_World.interserct_character" id=link122 onMouseOver="ShowTip(event, 'tt122', 'link122')" onMouseOut="HideTip('tt122')" class=ISymbol>interserct_character</a>, <span class=IParent>Game World</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/snapshots-txt.html#Interval" id=link123 onMouseOver="ShowTip(event, 'tt123', 'link123')" onMouseOut="HideTip('tt123')" class=ISymbol>Interval</a></td></tr><tr><td class=IHeading><a name="L"></a>L</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#Lines"  class=ISymbol>Lines</a></td></tr><tr><td class=IHeading><a name="M"></a>M</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#Map"  class=ISymbol>Map</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_find_item" id=link124 onMouseOver="ShowTip(event, 'tt124', 'link124')" onMouseOut="HideTip('tt124')" class=ISymbol>map_find_item</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_get_data" id=link125 onMouseOver="ShowTip(event, 'tt125', 'link125')" onMouseOut="HideTip('tt125')" class=ISymbol>map_get_data</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_get_data_swapped" id=link126 onMouseOver="ShowTip(event, 'tt126', 'link126')" onMouseOut="HideTip('tt126')" class=ISymbol>map_get_data_swapped</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_get_item" id=link127 onMouseOver="ShowTip(event, 'tt127', 'link127')" onMouseOut="HideTip('tt127')" class=ISymbol>map_get_item</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_get_type" id=link128 onMouseOver="ShowTip(event, 'tt128', 'link128')" onMouseOut="HideTip('tt128')" class=ISymbol>map_get_type</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_is_loaded" id=link129 onMouseOver="ShowTip(event, 'tt129', 'link129')" onMouseOut="HideTip('tt129')" class=ISymbol>map_is_loaded</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_num_items" id=link130 onMouseOver="ShowTip(event, 'tt130', 'link130')" onMouseOut="HideTip('tt130')" class=ISymbol>map_num_items</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_unload_data" id=link131 onMouseOver="ShowTip(event, 'tt131', 'link131')" onMouseOut="HideTip('tt131')" class=ISymbol>map_unload_data</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#Messaging"  class=ISymbol>Messaging</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_connected" id=link132 onMouseOver="ShowTip(event, 'tt132', 'link132')" onMouseOut="HideTip('tt132')" class=ISymbol>modc_connected</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_console_init" id=link133 onMouseOver="ShowTip(event, 'tt133', 'link133')" onMouseOut="HideTip('tt133')" class=ISymbol>modc_console_init</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_entergame" id=link134 onMouseOver="ShowTip(event, 'tt134', 'link134')" onMouseOut="HideTip('tt134')" class=ISymbol>modc_entergame</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_init" id=link135 onMouseOver="ShowTip(event, 'tt135', 'link135')" onMouseOut="HideTip('tt135')" class=ISymbol>modc_init</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_message" id=link136 onMouseOver="ShowTip(event, 'tt136', 'link136')" onMouseOut="HideTip('tt136')" class=ISymbol>modc_message</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_net_version" id=link137 onMouseOver="ShowTip(event, 'tt137', 'link137')" onMouseOut="HideTip('tt137')" class=ISymbol>modc_net_version</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_newsnapshot" id=link138 onMouseOver="ShowTip(event, 'tt138', 'link138')" onMouseOut="HideTip('tt138')" class=ISymbol>modc_newsnapshot</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_predict" id=link139 onMouseOver="ShowTip(event, 'tt139', 'link139')" onMouseOut="HideTip('tt139')" class=ISymbol>modc_predict</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_rcon_line" id=link140 onMouseOver="ShowTip(event, 'tt140', 'link140')" onMouseOut="HideTip('tt140')" class=ISymbol>modc_rcon_line</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_render" id=link141 onMouseOver="ShowTip(event, 'tt141', 'link141')" onMouseOut="HideTip('tt141')" class=ISymbol>modc_render</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_save_config" id=link142 onMouseOver="ShowTip(event, 'tt142', 'link142')" onMouseOut="HideTip('tt142')" class=ISymbol>modc_save_config</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_shutdown" id=link143 onMouseOver="ShowTip(event, 'tt143', 'link143')" onMouseOut="HideTip('tt143')" class=ISymbol>modc_shutdown</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_snap_input" id=link144 onMouseOver="ShowTip(event, 'tt144', 'link144')" onMouseOut="HideTip('tt144')" class=ISymbol>modc_snap_input</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_statechange" id=link145 onMouseOver="ShowTip(event, 'tt145', 'link145')" onMouseOut="HideTip('tt145')" class=ISymbol>modc_statechange</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_direct_input" id=link146 onMouseOver="ShowTip(event, 'tt146', 'link146')" onMouseOut="HideTip('tt146')" class=ISymbol>mods_client_direct_input</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_drop" id=link147 onMouseOver="ShowTip(event, 'tt147', 'link147')" onMouseOut="HideTip('tt147')" class=ISymbol>mods_client_drop</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_enter" id=link148 onMouseOver="ShowTip(event, 'tt148', 'link148')" onMouseOut="HideTip('tt148')" class=ISymbol>mods_client_enter</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_predicted_input" id=link149 onMouseOver="ShowTip(event, 'tt149', 'link149')" onMouseOut="HideTip('tt149')" class=ISymbol>mods_client_predicted_input</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_connected" id=link150 onMouseOver="ShowTip(event, 'tt150', 'link150')" onMouseOut="HideTip('tt150')" class=ISymbol>mods_connected</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_console_init" id=link151 onMouseOver="ShowTip(event, 'tt151', 'link151')" onMouseOut="HideTip('tt151')" class=ISymbol>mods_console_init</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_init" id=link152 onMouseOver="ShowTip(event, 'tt152', 'link152')" onMouseOut="HideTip('tt152')" class=ISymbol>mods_init</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_message" id=link153 onMouseOver="ShowTip(event, 'tt153', 'link153')" onMouseOut="HideTip('tt153')" class=ISymbol>mods_message</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_net_version" id=link154 onMouseOver="ShowTip(event, 'tt154', 'link154')" onMouseOut="HideTip('tt154')" class=ISymbol>mods_net_version</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_postsnap" id=link155 onMouseOver="ShowTip(event, 'tt155', 'link155')" onMouseOut="HideTip('tt155')" class=ISymbol>mods_postsnap</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_presnap" id=link156 onMouseOver="ShowTip(event, 'tt156', 'link156')" onMouseOut="HideTip('tt156')" class=ISymbol>mods_presnap</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_shutdown" id=link157 onMouseOver="ShowTip(event, 'tt157', 'link157')" onMouseOut="HideTip('tt157')" class=ISymbol>mods_shutdown</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_snap" id=link158 onMouseOver="ShowTip(event, 'tt158', 'link158')" onMouseOut="HideTip('tt158')" class=ISymbol>mods_snap</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_tick" id=link159 onMouseOver="ShowTip(event, 'tt159', 'link159')" onMouseOut="HideTip('tt159')" class=ISymbol>mods_tick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_version" id=link160 onMouseOver="ShowTip(event, 'tt160', 'link160')" onMouseOut="HideTip('tt160')" class=ISymbol>mods_version</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_end" id=link161 onMouseOver="ShowTip(event, 'tt161', 'link161')" onMouseOut="HideTip('tt161')" class=ISymbol>msg_pack_end</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_int" id=link162 onMouseOver="ShowTip(event, 'tt162', 'link162')" onMouseOut="HideTip('tt162')" class=ISymbol>msg_pack_int</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_raw" id=link163 onMouseOver="ShowTip(event, 'tt163', 'link163')" onMouseOut="HideTip('tt163')" class=ISymbol>msg_pack_raw</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_start" id=link164 onMouseOver="ShowTip(event, 'tt164', 'link164')" onMouseOut="HideTip('tt164')" class=ISymbol>msg_pack_start</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_string" id=link165 onMouseOver="ShowTip(event, 'tt165', 'link165')" onMouseOut="HideTip('tt165')" class=ISymbol>msg_pack_string</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_error" id=link166 onMouseOver="ShowTip(event, 'tt166', 'link166')" onMouseOut="HideTip('tt166')" class=ISymbol>msg_unpack_error</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_int" id=link167 onMouseOver="ShowTip(event, 'tt167', 'link167')" onMouseOut="HideTip('tt167')" class=ISymbol>msg_unpack_int</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_raw" id=link168 onMouseOver="ShowTip(event, 'tt168', 'link168')" onMouseOut="HideTip('tt168')" class=ISymbol>msg_unpack_raw</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_string" id=link169 onMouseOver="ShowTip(event, 'tt169', 'link169')" onMouseOut="HideTip('tt169')" class=ISymbol>msg_unpack_string</a></td></tr><tr><td class=IHeading><a name="N"></a>N</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#Network(Server)"  class=ISymbol>Network(Server)</a></td></tr><tr><td class=IHeading><a name="O"></a>O</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gamecontroller-hpp.html#Game_Controller.on_character_death" id=link170 onMouseOver="ShowTip(event, 'tt170', 'link170')" onMouseOut="HideTip('tt170')" class=ISymbol>on_character_death</a>, <span class=IParent>Game Controller</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gamecontroller-hpp.html#Game_Controller.on_character_spawn" id=link171 onMouseOver="ShowTip(event, 'tt171', 'link171')" onMouseOut="HideTip('tt171')" class=ISymbol>on_character_spawn</a>, <span class=IParent>Game Controller</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gamecontroller-hpp.html#Game_Controller.on_entity" id=link172 onMouseOver="ShowTip(event, 'tt172', 'link172')" onMouseOut="HideTip('tt172')" class=ISymbol>on_entity</a>, <span class=IParent>Game Controller</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>Other</span><div class=ISubIndex><a href="../files2/e_if_client-h.html#Other"  class=IFile>e_if_client.h</a><a href="../files2/e_if_gfx-h.html#Other"  class=IFile>e_if_gfx.h</a></div></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/snapshots-txt.html#Overview"  class=ISymbol>Overview</a></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/entity-hpp.html#Entity.pos" id=link173 onMouseOver="ShowTip(event, 'tt173', 'link173')" onMouseOut="HideTip('tt173')" class=ISymbol>pos</a>, <span class=IParent>Entity</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/prediction-txt.html#Prediction" id=link174 onMouseOver="ShowTip(event, 'tt174', 'link174')" onMouseOut="HideTip('tt174')" class=ISymbol>Prediction</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/entity-hpp.html#Entity.proximity_radius" id=link175 onMouseOver="ShowTip(event, 'tt175', 'link175')" onMouseOut="HideTip('tt175')" class=ISymbol>proximity_radius</a>, <span class=IParent>Entity</span></td></tr><tr><td class=IHeading><a name="Q"></a>Q</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#Quads"  class=ISymbol>Quads</a></td></tr></table>
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt98"><div class=CConstant>8-Bit uncompressed alpha</div></div><div class=CToolTip id="tt99"><div class=CConstant>Lets the engine choose the format.</div></div><div class=CToolTip id="tt100"><div class=CConstant>8-Bit uncompressed RGB</div></div><div class=CToolTip id="tt101"><div class=CConstant>8-Bit uncompressed RGBA</div></div><div class=CToolTip id="tt102"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void inp_clear_events()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt103"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void inp_clear_key_states()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt104"><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>INPUT_EVENT inp_get_event(</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>TODO</div></div><div class=CToolTip id="tt105"><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 inp_key_code(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>key_name</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt106"><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 inp_key_down(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>key</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt107"><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 *inp_key_name(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>k</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt108"><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 inp_key_pressed(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>key</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Checks if a key is pressed.</div></div><div class=CToolTip id="tt109"><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 inp_key_presses(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>key</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt110"><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 inp_key_releases(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>key</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt111"><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 inp_key_state(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>key</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt112"><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 inp_key_was_pressed(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>key</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt113"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int inp_mouse_doubleclick()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt114"><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 inp_mouse_relative(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>y</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Fetches the mouse movements.</div></div><div class=CToolTip id="tt115"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int inp_mouse_scroll()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt116"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int inp_num_events()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt117"><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 insert_entity(</td><td class=PType nowrap>ENTITY&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>entity</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Adds an entity to the world.</div></div><div class=CToolTip id="tt118"><div class=CGeneric>modc_newsnapshot is called when a new snapshot has arrived for processing. </div></div><div class=CToolTip id="tt119"><div class=CFunction>Finds the closest character that intersects the line.</div></div><div class=CToolTip id="tt120"><div class=CGeneric>The interval for how often a client recives a snapshot changes during the course of the connection. </div></div><div class=CToolTip id="tt121"><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 io_close(</td><td class=PType nowrap>IOHANDLE&nbsp;</td><td class=PParameter nowrap>io</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Closes a file.</div></div><div class=CToolTip id="tt122"><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 io_flush(</td><td class=PType nowrap>IOHANDLE&nbsp;</td><td class=PParameter nowrap>io</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Empties all buffers and writes all pending data.</div></div><div class=CToolTip id="tt123"><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>long int io_length(</td><td class=PType nowrap>IOHANDLE&nbsp;</td><td class=PParameter nowrap>io</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Gets the total length of the file. </div></div><div class=CToolTip id="tt124"><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>IOHANDLE io_open(</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></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>flags</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Opens a file.</div></div><div class=CToolTip id="tt125"><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>unsigned io_read(</td><td class=PType nowrap>IOHANDLE&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>io,</td></tr><tr><td></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>buffer,</td></tr><tr><td></td><td class=PType nowrap>unsigned&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Reads data into a buffer from a file.</div></div><div class=CToolTip id="tt126"><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 io_seek(</td><td class=PType nowrap>IOHANDLE&nbsp;</td><td class=PParameter nowrap>io,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>offset,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>origin</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Seeks to a specified offset in the file.</div></div><div class=CToolTip id="tt127"><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>unsigned io_skip(</td><td class=PType nowrap>IOHANDLE&nbsp;</td><td class=PParameter nowrap>io,</td></tr><tr><td></td><td class=PType nowrap>unsigned&nbsp;</td><td class=PParameter nowrap>size</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Skips data in a file.</div></div><div class=CToolTip id="tt128"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>IOHANDLE io_stderr()</td></tr></table></blockquote>Returns an IOHANDLE to the standard error.</div></div><div class=CToolTip id="tt129"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>IOHANDLE io_stdin()</td></tr></table></blockquote>Returns an IOHANDLE to the standard input.</div></div><div class=CToolTip id="tt130"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>IOHANDLE io_stdout()</td></tr></table></blockquote>Returns an IOHANDLE to the standard output.</div></div><div class=CToolTip id="tt131"><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>long int io_tell(</td><td class=PType nowrap>IOHANDLE&nbsp;</td><td class=PParameter nowrap>io</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Gets the current position in the file.</div></div><div class=CToolTip id="tt132"><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>unsigned io_write(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>IOHANDLE&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>io,</td></tr><tr><td></td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>buffer,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>unsigned&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Writes data from a buffer to file.</div></div><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt101"><div class=CConstant>8-Bit uncompressed alpha</div></div><div class=CToolTip id="tt102"><div class=CConstant>Lets the engine choose the format.</div></div><div class=CToolTip id="tt103"><div class=CConstant>8-Bit uncompressed RGB</div></div><div class=CToolTip id="tt104"><div class=CConstant>8-Bit uncompressed RGBA</div></div><div class=CToolTip id="tt105"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void inp_clear_events()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt106"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void inp_clear_key_states()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt107"><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>INPUT_EVENT inp_get_event(</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>TODO</div></div><div class=CToolTip id="tt108"><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 inp_key_code(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>key_name</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt109"><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 inp_key_down(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>key</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt110"><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 *inp_key_name(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>k</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt111"><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 inp_key_pressed(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>key</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Checks if a key is pressed.</div></div><div class=CToolTip id="tt112"><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 inp_key_presses(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>key</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt113"><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 inp_key_releases(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>key</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt114"><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 inp_key_state(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>key</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt115"><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 inp_key_was_pressed(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>key</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt116"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int inp_mouse_doubleclick()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt117"><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 inp_mouse_relative(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>y</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Fetches the mouse movements.</div></div><div class=CToolTip id="tt118"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int inp_mouse_scroll()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt119"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int inp_num_events()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt120"><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 insert_entity(</td><td class=PType nowrap>ENTITY&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>entity</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Adds an entity to the world.</div></div><div class=CToolTip id="tt121"><div class=CGeneric>modc_newsnapshot is called when a new snapshot has arrived for processing. </div></div><div class=CToolTip id="tt122"><div class=CFunction>Finds the closest character that intersects the line.</div></div><div class=CToolTip id="tt123"><div class=CGeneric>The interval for how often a client recives a snapshot changes during the course of the connection. </div></div><!--END_ND_TOOLTIPS-->
+
+
+<!--START_ND_TOOLTIPS-->
+<!--END_ND_TOOLTIPS-->
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt124"><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 *map_find_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><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Searches the map for an item.</div></div><div class=CToolTip id="tt125"><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 *map_get_data(</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>Fetches a pointer to a raw data chunk in the map.</div></div><div class=CToolTip id="tt126"><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 *map_get_data_swapped(</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>TODO</div></div><div class=CToolTip id="tt127"><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 *map_get_item(</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>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>type,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>id</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Gets an item from the loaded map from index.</div></div><div class=CToolTip id="tt128"><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 map_get_type(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>type,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>start,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>num</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Gets the index range of an item type.</div></div><div class=CToolTip id="tt129"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int map_is_loaded()</td></tr></table></blockquote>Checks if a map is loaded.</div></div><div class=CToolTip id="tt130"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int map_num_items()</td></tr></table></blockquote>Checks the number of items in the loaded map.</div></div><div class=CToolTip id="tt131"><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 map_unload_data(</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>TODO</div></div><div class=CToolTip id="tt132"><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="tt133"><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="tt134"><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="tt135"><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="tt136"><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="tt137"><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><div class=CToolTip id="tt138"><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="tt139"><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="tt140"><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="tt141"><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="tt142"><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="tt143"><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="tt144"><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="tt145"><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="tt146"><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_client_direct_input(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>cid,</td></tr><tr><td></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>input</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Called when the server recives new input from a client.</div></div><div class=CToolTip id="tt147"><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_client_drop(</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 when a client drops from the server.</div></div><div class=CToolTip id="tt148"><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_client_enter(</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 when a client has joined the game.</div></div><div class=CToolTip id="tt149"><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_client_predicted_input(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>cid,</td></tr><tr><td></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>input</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Called when the server applys the predicted input on the client.</div></div><div class=CToolTip id="tt150"><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_connected(</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="tt151"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void mods_console_init()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt152"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void mods_init()</td></tr></table></blockquote>Called when the server is started.</div></div><div class=CToolTip id="tt153"><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_message(</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>client_id</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt154"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>const char *mods_net_version()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt155"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void mods_postsnap()</td></tr></table></blockquote>Called after the server is done sending the snapshots.</div></div><div class=CToolTip id="tt156"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void mods_presnap()</td></tr></table></blockquote>Called before the server starts to construct snapshots for the clients.</div></div><div class=CToolTip id="tt157"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void mods_shutdown()</td></tr></table></blockquote>Called when the server quits.</div></div><div class=CToolTip id="tt158"><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="tt159"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void mods_tick()</td></tr></table></blockquote>Called with a regular interval to progress the gameplay.</div></div><div class=CToolTip id="tt160"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>const char *mods_version()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt161"><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="tt162"><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="tt163"><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="tt164"><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="tt165"><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="tt166"><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><div class=CToolTip id="tt167"><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="tt168"><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="tt169"><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><!--END_ND_TOOLTIPS-->
+
+
+<!--START_ND_TOOLTIPS-->
+<!--END_ND_TOOLTIPS-->
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt170"><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>virtual int on_character_death(</td><td class=PTypePrefix nowrap>class&nbsp;</td><td class=PType nowrap>CHARACTER&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>victim,</td></tr><tr><td></td><td class=PTypePrefix nowrap>class&nbsp;</td><td class=PType nowrap>PLAYER&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>killer,</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>weapon</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Called when a character in the world dies.</div></div><div class=CToolTip id="tt171"><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>virtual void on_character_spawn(</td><td class=PTypePrefix nowrap>class&nbsp;</td><td class=PType nowrap>CHARACTER&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>chr</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Called when a character spawns into the game world.</div></div><div class=CToolTip id="tt172"><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>virtual bool on_entity(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>index,</td></tr><tr><td></td><td class=PType nowrap>vec2&nbsp;</td><td class=PParameter nowrap>pos</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Called when the map is loaded to process an entity in the map.</div></div><!--END_ND_TOOLTIPS-->
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt173"><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="tt174"><div class=CSection>The engine calls modc_predict when reprediction is required. </div></div><div class=CToolTip id="tt175"><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-->
@@ -25,9 +45,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <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 id=MSelected>Everything</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><a href="Variables.html">Variables</a></div></div></div></div></div><script type="text/javascript"><!--
+<div id=Menu><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_huffman-h.html">e_huffman.h</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/entity-hpp.html">Entity</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gamecontroller-hpp.html">Game Controller</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gameworld-hpp.html">Game World</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 id=MSelected>Everything</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><a href="Variables.html">Variables</a></div></div><div class=MEntry><div class=MIndex><a href="Files.html">Files</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><!--
+--></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="Files">Files</option><option value="Functions">Functions</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
 HideAllBut([8, 7, 6], 9);// --></script></div><!--Menu-->
 
 
diff --git a/docs/output/index/General4.html b/docs/output/index/General4.html
index 2ea0db43..30f043d7 100644
--- a/docs/output/index/General4.html
+++ b/docs/output/index/General4.html
@@ -11,9 +11,25 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! &middot; 0-9 &middot; <a href="General.html#A">A</a> &middot; <a href="General.html#B">B</a> &middot; <a href="General.html#C">C</a> &middot; <a href="General.html#D">D</a> &middot; <a href="General.html#E">E</a> &middot; <a href="General.html#F">F</a> &middot; <a href="General2.html#G">G</a> &middot; <a href="General2.html#H">H</a> &middot; <a href="General3.html#I">I</a> &middot; J &middot; K &middot; <a href="General3.html#L">L</a> &middot; <a href="#M">M</a> &middot; <a href="General5.html#N">N</a> &middot; <a href="General5.html#O">O</a> &middot; <a href="General5.html#P">P</a> &middot; <a href="General5.html#Q">Q</a> &middot; <a href="General5.html#R">R</a> &middot; <a href="General6.html#S">S</a> &middot; <a href="General6.html#T">T</a> &middot; <a href="General6.html#U">U</a> &middot; <a href="General6.html#V">V</a> &middot; <a href="General6.html#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="M"></a>M</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#Map"  class=ISymbol>Map</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_find_item" id=link133 onMouseOver="ShowTip(event, 'tt133', 'link133')" onMouseOut="HideTip('tt133')" class=ISymbol>map_find_item</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_get_data" id=link134 onMouseOver="ShowTip(event, 'tt134', 'link134')" onMouseOut="HideTip('tt134')" class=ISymbol>map_get_data</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_get_data_swapped" id=link135 onMouseOver="ShowTip(event, 'tt135', 'link135')" onMouseOut="HideTip('tt135')" class=ISymbol>map_get_data_swapped</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_get_item" id=link136 onMouseOver="ShowTip(event, 'tt136', 'link136')" onMouseOut="HideTip('tt136')" class=ISymbol>map_get_item</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_get_type" id=link137 onMouseOver="ShowTip(event, 'tt137', 'link137')" onMouseOut="HideTip('tt137')" class=ISymbol>map_get_type</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_is_loaded" id=link138 onMouseOver="ShowTip(event, 'tt138', 'link138')" onMouseOut="HideTip('tt138')" class=ISymbol>map_is_loaded</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_num_items" id=link139 onMouseOver="ShowTip(event, 'tt139', 'link139')" onMouseOut="HideTip('tt139')" class=ISymbol>map_num_items</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#map_unload_data" id=link140 onMouseOver="ShowTip(event, 'tt140', 'link140')" onMouseOut="HideTip('tt140')" class=ISymbol>map_unload_data</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#mem_alloc" id=link141 onMouseOver="ShowTip(event, 'tt141', 'link141')" onMouseOut="HideTip('tt141')" class=ISymbol>mem_alloc</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#mem_comp" id=link142 onMouseOver="ShowTip(event, 'tt142', 'link142')" onMouseOut="HideTip('tt142')" class=ISymbol>mem_comp</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#mem_copy" id=link143 onMouseOver="ShowTip(event, 'tt143', 'link143')" onMouseOut="HideTip('tt143')" class=ISymbol>mem_copy</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#mem_free" id=link144 onMouseOver="ShowTip(event, 'tt144', 'link144')" onMouseOut="HideTip('tt144')" class=ISymbol>mem_free</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#mem_move" id=link145 onMouseOver="ShowTip(event, 'tt145', 'link145')" onMouseOut="HideTip('tt145')" class=ISymbol>mem_move</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#mem_zero" id=link146 onMouseOver="ShowTip(event, 'tt146', 'link146')" onMouseOut="HideTip('tt146')" class=ISymbol>mem_zero</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_system-h.html#Memory"  class=ISymbol>Memory</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#Messaging"  class=ISymbol>Messaging</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_connected" id=link147 onMouseOver="ShowTip(event, 'tt147', 'link147')" onMouseOut="HideTip('tt147')" class=ISymbol>modc_connected</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_console_init" id=link148 onMouseOver="ShowTip(event, 'tt148', 'link148')" onMouseOut="HideTip('tt148')" class=ISymbol>modc_console_init</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_entergame" id=link149 onMouseOver="ShowTip(event, 'tt149', 'link149')" onMouseOut="HideTip('tt149')" class=ISymbol>modc_entergame</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_init" id=link150 onMouseOver="ShowTip(event, 'tt150', 'link150')" onMouseOut="HideTip('tt150')" class=ISymbol>modc_init</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_message" id=link151 onMouseOver="ShowTip(event, 'tt151', 'link151')" onMouseOut="HideTip('tt151')" class=ISymbol>modc_message</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_net_version" id=link152 onMouseOver="ShowTip(event, 'tt152', 'link152')" onMouseOut="HideTip('tt152')" class=ISymbol>modc_net_version</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_newsnapshot" id=link153 onMouseOver="ShowTip(event, 'tt153', 'link153')" onMouseOut="HideTip('tt153')" class=ISymbol>modc_newsnapshot</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_predict" id=link154 onMouseOver="ShowTip(event, 'tt154', 'link154')" onMouseOut="HideTip('tt154')" class=ISymbol>modc_predict</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_rcon_line" id=link155 onMouseOver="ShowTip(event, 'tt155', 'link155')" onMouseOut="HideTip('tt155')" class=ISymbol>modc_rcon_line</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_render" id=link156 onMouseOver="ShowTip(event, 'tt156', 'link156')" onMouseOut="HideTip('tt156')" class=ISymbol>modc_render</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_save_config" id=link157 onMouseOver="ShowTip(event, 'tt157', 'link157')" onMouseOut="HideTip('tt157')" class=ISymbol>modc_save_config</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_shutdown" id=link158 onMouseOver="ShowTip(event, 'tt158', 'link158')" onMouseOut="HideTip('tt158')" class=ISymbol>modc_shutdown</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_snap_input" id=link159 onMouseOver="ShowTip(event, 'tt159', 'link159')" onMouseOut="HideTip('tt159')" class=ISymbol>modc_snap_input</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_modc-h.html#modc_statechange" id=link160 onMouseOver="ShowTip(event, 'tt160', 'link160')" onMouseOut="HideTip('tt160')" class=ISymbol>modc_statechange</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_direct_input" id=link161 onMouseOver="ShowTip(event, 'tt161', 'link161')" onMouseOut="HideTip('tt161')" class=ISymbol>mods_client_direct_input</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_drop" id=link162 onMouseOver="ShowTip(event, 'tt162', 'link162')" onMouseOut="HideTip('tt162')" class=ISymbol>mods_client_drop</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_enter" id=link163 onMouseOver="ShowTip(event, 'tt163', 'link163')" onMouseOut="HideTip('tt163')" class=ISymbol>mods_client_enter</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_predicted_input" id=link164 onMouseOver="ShowTip(event, 'tt164', 'link164')" onMouseOut="HideTip('tt164')" class=ISymbol>mods_client_predicted_input</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_connected" id=link165 onMouseOver="ShowTip(event, 'tt165', 'link165')" onMouseOut="HideTip('tt165')" class=ISymbol>mods_connected</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_console_init" id=link166 onMouseOver="ShowTip(event, 'tt166', 'link166')" onMouseOut="HideTip('tt166')" class=ISymbol>mods_console_init</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_init" id=link167 onMouseOver="ShowTip(event, 'tt167', 'link167')" onMouseOut="HideTip('tt167')" class=ISymbol>mods_init</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_message" id=link168 onMouseOver="ShowTip(event, 'tt168', 'link168')" onMouseOut="HideTip('tt168')" class=ISymbol>mods_message</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_net_version" id=link169 onMouseOver="ShowTip(event, 'tt169', 'link169')" onMouseOut="HideTip('tt169')" class=ISymbol>mods_net_version</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_postsnap" id=link170 onMouseOver="ShowTip(event, 'tt170', 'link170')" onMouseOut="HideTip('tt170')" class=ISymbol>mods_postsnap</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_presnap" id=link171 onMouseOver="ShowTip(event, 'tt171', 'link171')" onMouseOut="HideTip('tt171')" class=ISymbol>mods_presnap</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_shutdown" id=link172 onMouseOver="ShowTip(event, 'tt172', 'link172')" onMouseOut="HideTip('tt172')" class=ISymbol>mods_shutdown</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_snap" id=link173 onMouseOver="ShowTip(event, 'tt173', 'link173')" onMouseOut="HideTip('tt173')" class=ISymbol>mods_snap</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_tick" id=link174 onMouseOver="ShowTip(event, 'tt174', 'link174')" onMouseOut="HideTip('tt174')" class=ISymbol>mods_tick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#mods_version" id=link175 onMouseOver="ShowTip(event, 'tt175', 'link175')" onMouseOut="HideTip('tt175')" class=ISymbol>mods_version</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_end" id=link176 onMouseOver="ShowTip(event, 'tt176', 'link176')" onMouseOut="HideTip('tt176')" class=ISymbol>msg_pack_end</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_int" id=link177 onMouseOver="ShowTip(event, 'tt177', 'link177')" onMouseOut="HideTip('tt177')" class=ISymbol>msg_pack_int</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_raw" id=link178 onMouseOver="ShowTip(event, 'tt178', 'link178')" onMouseOut="HideTip('tt178')" class=ISymbol>msg_pack_raw</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_start" id=link179 onMouseOver="ShowTip(event, 'tt179', 'link179')" onMouseOut="HideTip('tt179')" class=ISymbol>msg_pack_start</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_string" id=link180 onMouseOver="ShowTip(event, 'tt180', 'link180')" onMouseOut="HideTip('tt180')" class=ISymbol>msg_pack_string</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_error" id=link181 onMouseOver="ShowTip(event, 'tt181', 'link181')" onMouseOut="HideTip('tt181')" class=ISymbol>msg_unpack_error</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_int" id=link182 onMouseOver="ShowTip(event, 'tt182', 'link182')" onMouseOut="HideTip('tt182')" class=ISymbol>msg_unpack_int</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_raw" id=link183 onMouseOver="ShowTip(event, 'tt183', 'link183')" onMouseOut="HideTip('tt183')" class=ISymbol>msg_unpack_raw</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_string" id=link184 onMouseOver="ShowTip(event, 'tt184', 'link184')" onMouseOut="HideTip('tt184')" class=ISymbol>msg_unpack_string</a></td></tr></table>
+<div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar>$#! &middot; 0-9 &middot; <a href="General.html#A">A</a> &middot; <a href="General.html#B">B</a> &middot; <a href="General.html#C">C</a> &middot; <a href="General.html#D">D</a> &middot; <a href="General.html#E">E</a> &middot; <a href="General.html#F">F</a> &middot; <a href="General2.html#G">G</a> &middot; <a href="General2.html#H">H</a> &middot; <a href="General3.html#I">I</a> &middot; J &middot; K &middot; <a href="General3.html#L">L</a> &middot; <a href="General3.html#M">M</a> &middot; <a href="General3.html#N">N</a> &middot; <a href="General3.html#O">O</a> &middot; <a href="General3.html#P">P</a> &middot; <a href="General3.html#Q">Q</a> &middot; <a href="#R">R</a> &middot; <a href="#S">S</a> &middot; <a href="#T">T</a> &middot; U &middot; <a href="#V">V</a> &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="R"></a>R</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/server_op-txt.html#Reinit"  class=ISymbol>Reinit</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/gameworld-hpp.html#Game_World.remove_entity" id=link176 onMouseOver="ShowTip(event, 'tt176', 'link176')" onMouseOut="HideTip('tt176')" class=ISymbol>remove_entity</a>, <span class=IParent>Game World</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/snapshots-txt.html#Rendering" id=link177 onMouseOver="ShowTip(event, 'tt177', 'link177')" onMouseOut="HideTip('tt177')" class=ISymbol>Rendering</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/entity-hpp.html#Entity.reset" id=link178 onMouseOver="ShowTip(event, 'tt178', 'link178')" onMouseOut="HideTip('tt178')" class=ISymbol>reset</a>, <span class=IParent>Entity</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/server_op-txt.html#Running" id=link179 onMouseOver="ShowTip(event, 'tt179', 'link179')" onMouseOut="HideTip('tt179')" class=ISymbol>Running</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_Browser"  class=ISymbol>Server Browser</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#Server_Browser_Sorting"  class=ISymbol>Server Browser Sorting</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_mods-h.html#Server_Hooks"  class=ISymbol>Server Hooks</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_server-h.html#Server_Interface"  class=ISymbol>Server Interface</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/server_op-txt.html#Server_Operation"  class=ISymbol>Server Operation</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/snapshots-txt.html#Server_Side"  class=ISymbol>Server Side</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_server-h.html#server_clientname" id=link180 onMouseOver="ShowTip(event, 'tt180', 'link180')" onMouseOut="HideTip('tt180')" class=ISymbol>server_clientname</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_server-h.html#server_getclientinfo" id=link181 onMouseOver="ShowTip(event, 'tt181', 'link181')" onMouseOut="HideTip('tt181')" class=ISymbol>server_getclientinfo</a></td></tr><tr><td class=ISymbolPrefix>&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>&nbsp;</td><td class=IEntry><a href="../files2/e_if_server-h.html#server_kick" id=link182 onMouseOver="ShowTip(event, 'tt182', 'link182')" onMouseOut="HideTip('tt182')" class=ISymbol>server_kick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_server-h.html#server_latestinput" id=link183 onMouseOver="ShowTip(event, 'tt183', 'link183')" onMouseOut="HideTip('tt183')" class=ISymbol>server_latestinput</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#server_send_msg" id=link184 onMouseOver="ShowTip(event, 'tt184', 'link184')" onMouseOut="HideTip('tt184')" class=ISymbol>server_send_msg</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_server-h.html#server_setbrowseinfo" id=link185 onMouseOver="ShowTip(event, 'tt185', 'link185')" onMouseOut="HideTip('tt185')" class=ISymbol>server_setbrowseinfo</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_server-h.html#server_setclientname" id=link186 onMouseOver="ShowTip(event, 'tt186', 'link186')" onMouseOut="HideTip('tt186')" class=ISymbol>server_setclientname</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_server-h.html#server_setclientscore" id=link187 onMouseOver="ShowTip(event, 'tt187', 'link187')" onMouseOut="HideTip('tt187')" class=ISymbol>server_setclientscore</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_server-h.html#server_tick" id=link188 onMouseOver="ShowTip(event, 'tt188', 'link188')" onMouseOut="HideTip('tt188')" class=ISymbol>server_tick</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_server-h.html#server_tickspeed" id=link189 onMouseOver="ShowTip(event, 'tt189', 'link189')" onMouseOut="HideTip('tt189')" class=ISymbol>server_tickspeed</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/server_op-txt.html#Shutdown"  class=ISymbol>Shutdown</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>snap</span><div class=ISubIndex><a href="../files/server/entity-hpp.html#Entity.snap" id=link190 onMouseOver="ShowTip(event, 'tt190', 'link190')" onMouseOut="HideTip('tt190')" class=IParent>Entity</a><a href="../files/server/gameworld-hpp.html#Game_World.snap" id=link191 onMouseOver="ShowTip(event, 'tt191', 'link191')" onMouseOut="HideTip('tt191')" class=IParent>Game World</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#snap_find_item" id=link192 onMouseOver="ShowTip(event, 'tt192', 'link192')" onMouseOut="HideTip('tt192')" class=ISymbol>snap_find_item</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#snap_free_id" id=link193 onMouseOver="ShowTip(event, 'tt193', 'link193')" onMouseOut="HideTip('tt193')" class=ISymbol>snap_free_id</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#snap_get_item" id=link194 onMouseOver="ShowTip(event, 'tt194', 'link194')" onMouseOut="HideTip('tt194')" class=ISymbol>snap_get_item</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#snap_input" id=link195 onMouseOver="ShowTip(event, 'tt195', 'link195')" onMouseOut="HideTip('tt195')" class=ISymbol>snap_input</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#snap_invalidate_item" id=link196 onMouseOver="ShowTip(event, 'tt196', 'link196')" onMouseOut="HideTip('tt196')" class=ISymbol>snap_invalidate_item</a></td></tr><tr><td class=ISymbolPrefix>&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=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#snap_new_id" id=link197 onMouseOver="ShowTip(event, 'tt197', 'link197')" onMouseOut="HideTip('tt197')" class=ISymbol>snap_new_id</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#snap_new_item" id=link198 onMouseOver="ShowTip(event, 'tt198', 'link198')" onMouseOut="HideTip('tt198')" class=ISymbol>snap_new_item</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#snap_num_items" id=link199 onMouseOver="ShowTip(event, 'tt199', 'link199')" onMouseOut="HideTip('tt199')" class=ISymbol>snap_num_items</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_other-h.html#snap_set_staticsize" id=link200 onMouseOver="ShowTip(event, 'tt200', 'link200')" onMouseOut="HideTip('tt200')" class=ISymbol>snap_set_staticsize</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/snapshots-txt.html#Snapshots"  class=ISymbol>Snapshots</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_snd-h.html#snd_load_wv" id=link201 onMouseOver="ShowTip(event, 'tt201', 'link201')" onMouseOut="HideTip('tt201')" class=ISymbol>snd_load_wv</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_snd-h.html#snd_play" id=link202 onMouseOver="ShowTip(event, 'tt202', 'link202')" onMouseOut="HideTip('tt202')" class=ISymbol>snd_play</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_snd-h.html#snd_play_at" id=link203 onMouseOver="ShowTip(event, 'tt203', 'link203')" onMouseOut="HideTip('tt203')" class=ISymbol>snd_play_at</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_snd-h.html#snd_set_channel" id=link204 onMouseOver="ShowTip(event, 'tt204', 'link204')" onMouseOut="HideTip('tt204')" class=ISymbol>snd_set_channel</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_snd-h.html#snd_set_listener_pos" id=link205 onMouseOver="ShowTip(event, 'tt205', 'link205')" onMouseOut="HideTip('tt205')" class=ISymbol>snd_set_listener_pos</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_snd-h.html#snd_stop" id=link206 onMouseOver="ShowTip(event, 'tt206', 'link206')" onMouseOut="HideTip('tt206')" class=ISymbol>snd_stop</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_snd-h.html#Sound"  class=ISymbol>Sound</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/snapshots-txt.html#Structure" id=link207 onMouseOver="ShowTip(event, 'tt207', 'link207')" onMouseOut="HideTip('tt207')" class=ISymbol>Structure</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>Structures</span><div class=ISubIndex><a href="../files2/e_if_client-h.html#Structures"  class=IFile>e_if_client.h</a><a href="../files2/e_if_gfx-h.html#Structures"  class=IFile>e_if_gfx.h</a></div></td></tr><tr><td class=IHeading><a name="T"></a>T</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#TEXLOAD_NORESAMPLE" id=link208 onMouseOver="ShowTip(event, 'tt208', 'link208')" onMouseOut="HideTip('tt208')" class=ISymbol>TEXLOAD_NORESAMPLE</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#Text"  class=ISymbol>Text</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_client-h.html#Texture_Loading_Flags"  class=ISymbol>Texture Loading Flags</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>tick</span><div class=ISubIndex><a href="../files/server/entity-hpp.html#Entity.tick" id=link209 onMouseOver="ShowTip(event, 'tt209', 'link209')" onMouseOut="HideTip('tt209')" class=IParent>Entity</a><a href="../files/server/gameworld-hpp.html#Game_World.tick" id=link210 onMouseOver="ShowTip(event, 'tt210', 'link210')" onMouseOut="HideTip('tt210')" class=IParent>Game World</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/server/entity-hpp.html#Entity.tick_defered" id=link211 onMouseOver="ShowTip(event, 'tt211', 'link211')" onMouseOut="HideTip('tt211')" 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_if_client-h.html#Time"  class=ISymbol>Time</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/docs/client_time-txt.html#Time_on_the_client" id=link212 onMouseOver="ShowTip(event, 'tt212', 'link212')" onMouseOut="HideTip('tt212')" class=ISymbol>Time on the client</a></td></tr><tr><td class=IHeading><a name="V"></a>V</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>Variables</span><div class=ISubIndex><a href="../files/server/entity-hpp.html#Entity.Variables"  class=IParent>Entity</a><a href="../files2/e_if_gfx-h.html#IMAGE_INFO.Variables"  class=IParent>IMAGE_INFO</a></div></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files2/e_if_gfx-h.html#VIDEO_MODE"  class=ISymbol>VIDEO_MODE</a></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=link213 onMouseOver="ShowTip(event, 'tt213', 'link213')" onMouseOut="HideTip('tt213')" class=ISymbol>width</a>, <span class=IParent>IMAGE_INFO</span></td></tr></table>
 <!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt133"><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 *map_find_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><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Searches the map for an item.</div></div><div class=CToolTip id="tt134"><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 *map_get_data(</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>Fetches a pointer to a raw data chunk in the map.</div></div><div class=CToolTip id="tt135"><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 *map_get_data_swapped(</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>TODO</div></div><div class=CToolTip id="tt136"><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 *map_get_item(</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>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>type,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>id</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Gets an item from the loaded map from index.</div></div><div class=CToolTip id="tt137"><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 map_get_type(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>type,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>start,</td></tr><tr><td></td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>num</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Gets the index range of an item type.</div></div><div class=CToolTip id="tt138"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int map_is_loaded()</td></tr></table></blockquote>Checks if a map is loaded.</div></div><div class=CToolTip id="tt139"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int map_num_items()</td></tr></table></blockquote>Checks the number of items in the loaded map.</div></div><div class=CToolTip id="tt140"><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 map_unload_data(</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>TODO</div></div><div class=CToolTip id="tt141"><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 *mem_alloc_debug(</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></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>line,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>unsigned&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>unsigned&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>alignment</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Allocates memory.</div></div><div class=CToolTip id="tt142"><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 mem_comp(</td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>a,</td></tr><tr><td></td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>b,</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>Compares two blocks of memory</div></div><div class=CToolTip id="tt143"><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 mem_copy(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>dest,</td></tr><tr><td></td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>source,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>unsigned&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Copies a a memory block.</div></div><div class=CToolTip id="tt144"><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 mem_free(</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>block</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Frees a block allocated through mem_alloc.</div></div><div class=CToolTip id="tt145"><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 mem_move(</td><td class=PTypePrefix nowrap></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>dest,</td></tr><tr><td></td><td class=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>source,</td></tr><tr><td></td><td class=PTypePrefix nowrap></td><td class=PType nowrap>unsigned&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Copies a a memory block</div></div><div class=CToolTip id="tt146"><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 mem_zero(</td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>block,</td></tr><tr><td></td><td class=PType nowrap>unsigned&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>size</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sets a complete memory block to 0</div></div><div class=CToolTip id="tt147"><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="tt148"><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="tt149"><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="tt150"><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="tt151"><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="tt152"><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><div class=CToolTip id="tt153"><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="tt154"><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="tt155"><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="tt156"><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="tt157"><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="tt158"><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="tt159"><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="tt160"><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="tt161"><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_client_direct_input(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>cid,</td></tr><tr><td></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>input</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Called when the server recives new input from a client.</div></div><div class=CToolTip id="tt162"><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_client_drop(</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 when a client drops from the server.</div></div><div class=CToolTip id="tt163"><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_client_enter(</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 when a client has joined the game.</div></div><div class=CToolTip id="tt164"><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_client_predicted_input(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameterPrefix nowrap></td><td class=PParameter nowrap>cid,</td></tr><tr><td></td><td class=PType nowrap>void&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>input</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Called when the server applys the predicted input on the client.</div></div><div class=CToolTip id="tt165"><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_connected(</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="tt166"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void mods_console_init()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt167"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void mods_init()</td></tr></table></blockquote>Called when the server is started.</div></div><div class=CToolTip id="tt168"><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_message(</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>client_id</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt169"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>const char *mods_net_version()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt170"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void mods_postsnap()</td></tr></table></blockquote>Called after the server is done sending the snapshots.</div></div><div class=CToolTip id="tt171"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void mods_presnap()</td></tr></table></blockquote>Called before the server starts to construct snapshots for the clients.</div></div><div class=CToolTip id="tt172"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void mods_shutdown()</td></tr></table></blockquote>Called when the server quits.</div></div><div class=CToolTip id="tt173"><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="tt174"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>void mods_tick()</td></tr></table></blockquote>Called with a regular interval to progress the gameplay.</div></div><div class=CToolTip id="tt175"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>const char *mods_version()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt176"><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="tt177"><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="tt178"><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="tt179"><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="tt180"><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="tt181"><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><div class=CToolTip id="tt182"><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="tt183"><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="tt184"><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><!--END_ND_TOOLTIPS-->
+<div class=CToolTip id="tt176"><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 remove_entity(</td><td class=PType nowrap>ENTITY&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>entity</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Removes an entity from the world.</div></div><div class=CToolTip id="tt177"><div class=CGeneric>DOCTODO</div></div><div class=CToolTip id="tt178"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>virtual void reset()</td></tr></table></blockquote>Called when the game resets the map. </div></div><div class=CToolTip id="tt179"><div class=CSection>Here is an graph over how the server operates on each refresh.</div></div><!--END_ND_TOOLTIPS-->
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt180"><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="tt181"><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="tt182"><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="tt183"><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="tt184"><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_send_msg(</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="tt185"><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=PTypePrefix nowrap>const&nbsp;</td><td class=PType nowrap>char&nbsp;</td><td class=PParameterPrefix nowrap>*</td><td class=PParameter nowrap>game_type,</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>progression</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt186"><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="tt187"><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="tt188"><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="tt189"><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><div class=CToolTip id="tt190"><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>virtual void snap(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>snapping_client</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Called when a new snapshot is being generated for a specific client.</div></div><div class=CToolTip id="tt191"><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(</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>snapping_client</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Calls snap on all the entities in the world to create the snapshot.</div></div><div class=CToolTip id="tt192"><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="tt193"><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_free_id(</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>TODO</div></div><div class=CToolTip id="tt194"><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="tt195"><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_input(</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=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>Sets the input data to send to the server.</div></div><div class=CToolTip id="tt196"><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><div class=CToolTip id="tt197"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>int snap_new_id()</td></tr></table></blockquote>TODO</div></div><div class=CToolTip id="tt198"><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="tt199"><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="tt200"><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_set_staticsize(</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>size</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Tells the engine how big a specific item always will be. </div></div><div class=CToolTip id="tt201"><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="tt202"><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="tt203"><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="tt204"><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="tt205"><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><div class=CToolTip id="tt206"><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="tt207"><div class=CGeneric>A snapshot contains a series of items. </div></div><!--END_ND_TOOLTIPS-->
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt208"><div class=CConstant>Prevents the texture from any resampling</div></div><div class=CToolTip id="tt209"><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="tt210"><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="tt211"><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="tt212"><div class=CSection>tick, intratick predtick, predintratick</div></div><!--END_ND_TOOLTIPS-->
+
+
+<!--START_ND_TOOLTIPS-->
+<!--END_ND_TOOLTIPS-->
+
+
+<!--START_ND_TOOLTIPS-->
+<div class=CToolTip id="tt213"><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-->
 
@@ -21,9 +37,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <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 id=MSelected>Everything</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><a href="Variables.html">Variables</a></div></div></div></div></div><script type="text/javascript"><!--
+<div id=Menu><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_huffman-h.html">e_huffman.h</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/entity-hpp.html">Entity</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gamecontroller-hpp.html">Game Controller</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gameworld-hpp.html">Game World</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 id=MSelected>Everything</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><a href="Variables.html">Variables</a></div></div><div class=MEntry><div class=MIndex><a href="Files.html">Files</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><!--
+--></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="Files">Files</option><option value="Functions">Functions</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
 HideAllBut([8, 7, 6], 9);// --></script></div><!--Menu-->
 
 
diff --git a/docs/output/index/Variables.html b/docs/output/index/Variables.html
index 91528a38..75bcc2b5 100644
--- a/docs/output/index/Variables.html
+++ b/docs/output/index/Variables.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<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>
+<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/entity-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/entity-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-->
 
@@ -37,9 +37,9 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 <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"><!--
+<div id=Menu><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_huffman-h.html">e_huffman.h</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/entity-hpp.html">Entity</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gamecontroller-hpp.html">Game Controller</a></div></div><div class=MEntry><div class=MFile><a href="../files/server/gameworld-hpp.html">Game World</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 class=MEntry><div class=MIndex><a href="Files.html">Files</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><!--
+--></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="Files">Files</option><option value="Functions">Functions</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
 HideAllBut([8, 7, 6], 9);// --></script></div><!--Menu-->
 
 
diff --git a/docs/output/javascript/searchdata.js b/docs/output/javascript/searchdata.js
index 26acc090..708a9431 100644
--- a/docs/output/javascript/searchdata.js
+++ b/docs/output/javascript/searchdata.js
@@ -69,13 +69,13 @@ var indexSectionsWithContent = {
       "E": false,
       "F": true,
       "G": true,
-      "H": false,
+      "H": true,
       "I": true,
       "J": false,
       "K": false,
       "L": false,
       "M": true,
-      "N": true,
+      "N": false,
       "O": true,
       "P": false,
       "Q": false,
@@ -89,6 +89,36 @@ var indexSectionsWithContent = {
       "Y": false,
       "Z": false
       },
+   "Files": {
+      "Symbols": false,
+      "Numbers": false,
+      "A": false,
+      "B": false,
+      "C": false,
+      "D": false,
+      "E": true,
+      "F": false,
+      "G": false,
+      "H": false,
+      "I": false,
+      "J": false,
+      "K": false,
+      "L": false,
+      "M": false,
+      "N": false,
+      "O": false,
+      "P": false,
+      "Q": false,
+      "R": false,
+      "S": false,
+      "T": false,
+      "U": false,
+      "V": false,
+      "W": false,
+      "X": false,
+      "Y": false,
+      "Z": false
+      },
    "Constants": {
       "Symbols": false,
       "Numbers": false,
diff --git a/docs/output/search/ClassesE.html b/docs/output/search/ClassesE.html
index 5c3d1843..68283e5e 100644
--- a/docs/output/search/ClassesE.html
+++ b/docs/output/search/ClassesE.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<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"><!--
+<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/entity-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");
diff --git a/docs/output/search/ClassesG.html b/docs/output/search/ClassesG.html
index e9ca4016..cbe3989a 100644
--- a/docs/output/search/ClassesG.html
+++ b/docs/output/search/ClassesG.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<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"><!--
+<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/gamecontroller-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/gameworld-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");
diff --git a/docs/output/search/FunctionsC.html b/docs/output/search/FunctionsC.html
index 1d715ef0..34247010 100644
--- a/docs/output/search/FunctionsC.html
+++ b/docs/output/search/FunctionsC.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_client_undconnect><div class=IEntry><a href="../files2/e_if_client-h.html#client_connect" target=_parent class=ISymbol>client_connect</a></div></div><div class=SRResult id=SR_client_undconnection_undproblems><div class=IEntry><a href="../files2/e_if_client-h.html#client_connection_problems" target=_parent class=ISymbol>client_connection_problems</a></div></div><div class=SRResult id=SR_client_unddirect_undinput><div class=IEntry><a href="../files2/e_if_client-h.html#client_direct_input" target=_parent class=ISymbol>client_direct_input</a></div></div><div class=SRResult id=SR_client_unddisconnect><div class=IEntry><a href="../files2/e_if_client-h.html#client_disconnect" target=_parent class=ISymbol>client_disconnect</a></div></div><div class=SRResult id=SR_client_underror_undstring><div class=IEntry><a href="../files2/e_if_client-h.html#client_error_string" target=_parent class=ISymbol>client_error_string</a></div></div><div class=SRResult id=SR_client_undframetime><div class=IEntry><a href="../files2/e_if_client-h.html#client_frametime" target=_parent class=ISymbol>client_frametime</a></div></div><div class=SRResult id=SR_client_undget_undinput><div class=IEntry><a href="../files2/e_if_client-h.html#client_get_input" target=_parent class=ISymbol>client_get_input</a></div></div><div class=SRResult id=SR_client_undintratick><div class=IEntry><a href="../files2/e_if_client-h.html#client_intratick" target=_parent class=ISymbol>client_intratick</a></div></div><div class=SRResult id=SR_client_undlocaltime><div class=IEntry><a href="../files2/e_if_client-h.html#client_localtime" target=_parent class=ISymbol>client_localtime</a></div></div><div class=SRResult id=SR_client_undmapdownload_undamount><div class=IEntry><a href="../files2/e_if_client-h.html#client_mapdownload_amount" target=_parent class=ISymbol>client_mapdownload_amount</a></div></div><div class=SRResult id=SR_client_undmapdownload_undtotalsize><div class=IEntry><a href="../files2/e_if_client-h.html#client_mapdownload_totalsize" target=_parent class=ISymbol>client_mapdownload_totalsize</a></div></div><div class=SRResult id=SR_client_undpredintratick><div class=IEntry><a href="../files2/e_if_client-h.html#client_predintratick" target=_parent class=ISymbol>client_predintratick</a></div></div><div class=SRResult id=SR_client_undpredtick><div class=IEntry><a href="../files2/e_if_client-h.html#client_predtick" target=_parent class=ISymbol>client_predtick</a></div></div><div class=SRResult id=SR_client_undquit><div class=IEntry><a href="../files2/e_if_client-h.html#client_quit" target=_parent class=ISymbol>client_quit</a></div></div><div class=SRResult id=SR_client_undrcon><div class=IEntry><a href="../files2/e_if_client-h.html#client_rcon" target=_parent class=ISymbol>client_rcon</a></div></div><div class=SRResult id=SR_client_undrcon_undauth><div class=IEntry><a href="../files2/e_if_client-h.html#client_rcon_auth" target=_parent class=ISymbol>client_rcon_auth</a></div></div><div class=SRResult id=SR_client_undrcon_undauthed><div class=IEntry><a href="../files2/e_if_client-h.html#client_rcon_authed" target=_parent class=ISymbol>client_rcon_authed</a></div></div><div class=SRResult id=SR_client_undsave_undline><div class=IEntry><a href="../files2/e_if_client-h.html#client_save_line" target=_parent class=ISymbol>client_save_line</a></div></div><div class=SRResult id=SR_client_undsend_undmsg><div class=IEntry><a href="../files2/e_if_other-h.html#client_send_msg" target=_parent class=ISymbol>client_send_msg</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undget><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_get" target=_parent class=ISymbol>client_serverbrowse_get</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undlan><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_lan" target=_parent class=ISymbol>client_serverbrowse_lan</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undnum><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_num" target=_parent class=ISymbol>client_serverbrowse_num</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undnum_undrequests><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_num_requests" target=_parent class=ISymbol>client_serverbrowse_num_requests</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undrefresh><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_refresh" target=_parent class=ISymbol>client_serverbrowse_refresh</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undsorted_undget><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_sorted_get" target=_parent class=ISymbol>client_serverbrowse_sorted_get</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undsorted_undnum><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_sorted_num" target=_parent class=ISymbol>client_serverbrowse_sorted_num</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undupdate><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_update" target=_parent class=ISymbol>client_serverbrowse_update</a></div></div><div class=SRResult id=SR_client_undstate><div class=IEntry><a href="../files2/e_if_client-h.html#client_state" target=_parent class=ISymbol>client_state</a></div></div><div class=SRResult id=SR_client_undtick><div class=IEntry><a href="../files2/e_if_client-h.html#client_tick" target=_parent class=ISymbol>client_tick</a></div></div><div class=SRResult id=SR_client_undtickspeed><div class=IEntry><a href="../files2/e_if_client-h.html#client_tickspeed" target=_parent class=ISymbol>client_tickspeed</a></div></div><div class=SRResult id=SR_client_undticktime><div class=IEntry><a href="../files2/e_if_client-h.html#client_ticktime" target=_parent class=ISymbol>client_ticktime</a></div></div><div class=SRResult id=SR_closest_undcharacter><div class=IEntry><a href="../files/server/gs_common-hpp.html#Game_World.closest_character" target=_parent class=ISymbol>closest_character</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"><!--
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_client_undconnect><div class=IEntry><a href="../files2/e_if_client-h.html#client_connect" target=_parent class=ISymbol>client_connect</a></div></div><div class=SRResult id=SR_client_undconnection_undproblems><div class=IEntry><a href="../files2/e_if_client-h.html#client_connection_problems" target=_parent class=ISymbol>client_connection_problems</a></div></div><div class=SRResult id=SR_client_unddirect_undinput><div class=IEntry><a href="../files2/e_if_client-h.html#client_direct_input" target=_parent class=ISymbol>client_direct_input</a></div></div><div class=SRResult id=SR_client_unddisconnect><div class=IEntry><a href="../files2/e_if_client-h.html#client_disconnect" target=_parent class=ISymbol>client_disconnect</a></div></div><div class=SRResult id=SR_client_underror_undstring><div class=IEntry><a href="../files2/e_if_client-h.html#client_error_string" target=_parent class=ISymbol>client_error_string</a></div></div><div class=SRResult id=SR_client_undframetime><div class=IEntry><a href="../files2/e_if_client-h.html#client_frametime" target=_parent class=ISymbol>client_frametime</a></div></div><div class=SRResult id=SR_client_undget_undinput><div class=IEntry><a href="../files2/e_if_client-h.html#client_get_input" target=_parent class=ISymbol>client_get_input</a></div></div><div class=SRResult id=SR_client_undintratick><div class=IEntry><a href="../files2/e_if_client-h.html#client_intratick" target=_parent class=ISymbol>client_intratick</a></div></div><div class=SRResult id=SR_client_undlatestversion><div class=IEntry><a href="../files2/e_if_client-h.html#client_latestversion" target=_parent class=ISymbol>client_latestversion</a></div></div><div class=SRResult id=SR_client_undlocaltime><div class=IEntry><a href="../files2/e_if_client-h.html#client_localtime" target=_parent class=ISymbol>client_localtime</a></div></div><div class=SRResult id=SR_client_undmapdownload_undamount><div class=IEntry><a href="../files2/e_if_client-h.html#client_mapdownload_amount" target=_parent class=ISymbol>client_mapdownload_amount</a></div></div><div class=SRResult id=SR_client_undmapdownload_undtotalsize><div class=IEntry><a href="../files2/e_if_client-h.html#client_mapdownload_totalsize" target=_parent class=ISymbol>client_mapdownload_totalsize</a></div></div><div class=SRResult id=SR_client_undpredintratick><div class=IEntry><a href="../files2/e_if_client-h.html#client_predintratick" target=_parent class=ISymbol>client_predintratick</a></div></div><div class=SRResult id=SR_client_undpredtick><div class=IEntry><a href="../files2/e_if_client-h.html#client_predtick" target=_parent class=ISymbol>client_predtick</a></div></div><div class=SRResult id=SR_client_undprevtick><div class=IEntry><a href="../files2/e_if_client-h.html#client_prevtick" target=_parent class=ISymbol>client_prevtick</a></div></div><div class=SRResult id=SR_client_undquit><div class=IEntry><a href="../files2/e_if_client-h.html#client_quit" target=_parent class=ISymbol>client_quit</a></div></div><div class=SRResult id=SR_client_undrcon><div class=IEntry><a href="../files2/e_if_client-h.html#client_rcon" target=_parent class=ISymbol>client_rcon</a></div></div><div class=SRResult id=SR_client_undrcon_undauth><div class=IEntry><a href="../files2/e_if_client-h.html#client_rcon_auth" target=_parent class=ISymbol>client_rcon_auth</a></div></div><div class=SRResult id=SR_client_undrcon_undauthed><div class=IEntry><a href="../files2/e_if_client-h.html#client_rcon_authed" target=_parent class=ISymbol>client_rcon_authed</a></div></div><div class=SRResult id=SR_client_undsave_undline><div class=IEntry><a href="../files2/e_if_client-h.html#client_save_line" target=_parent class=ISymbol>client_save_line</a></div></div><div class=SRResult id=SR_client_undsend_undmsg><div class=IEntry><a href="../files2/e_if_other-h.html#client_send_msg" target=_parent class=ISymbol>client_send_msg</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undaddfavorite><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_addfavorite" target=_parent class=ISymbol>client_serverbrowse_addfavorite</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undget><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_get" target=_parent class=ISymbol>client_serverbrowse_get</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undlan><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_lan" target=_parent class=ISymbol>client_serverbrowse_lan</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undnum><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_num" target=_parent class=ISymbol>client_serverbrowse_num</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undnum_undrequests><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_num_requests" target=_parent class=ISymbol>client_serverbrowse_num_requests</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undrefresh><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_refresh" target=_parent class=ISymbol>client_serverbrowse_refresh</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undremovefavorite><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_removefavorite" target=_parent class=ISymbol>client_serverbrowse_removefavorite</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undsorted_undget><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_sorted_get" target=_parent class=ISymbol>client_serverbrowse_sorted_get</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undsorted_undnum><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_sorted_num" target=_parent class=ISymbol>client_serverbrowse_sorted_num</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undupdate><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_update" target=_parent class=ISymbol>client_serverbrowse_update</a></div></div><div class=SRResult id=SR_client_undstate><div class=IEntry><a href="../files2/e_if_client-h.html#client_state" target=_parent class=ISymbol>client_state</a></div></div><div class=SRResult id=SR_client_undtick><div class=IEntry><a href="../files2/e_if_client-h.html#client_tick" target=_parent class=ISymbol>client_tick</a></div></div><div class=SRResult id=SR_client_undtickspeed><div class=IEntry><a href="../files2/e_if_client-h.html#client_tickspeed" target=_parent class=ISymbol>client_tickspeed</a></div></div><div class=SRResult id=SR_client_undticktime><div class=IEntry><a href="../files2/e_if_client-h.html#client_ticktime" target=_parent class=ISymbol>client_ticktime</a></div></div><div class=SRResult id=SR_closest_undcharacter><div class=IEntry><a href="../files/server/gameworld-hpp.html#Game_World.closest_character" target=_parent class=ISymbol>closest_character</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");
diff --git a/docs/output/search/FunctionsD.html b/docs/output/search/FunctionsD.html
index 3e2d841f..0c937556 100644
--- a/docs/output/search/FunctionsD.html
+++ b/docs/output/search/FunctionsD.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<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"><!--
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_destroy><div class=IEntry><a href="../files/server/entity-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/gameworld-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");
diff --git a/docs/output/search/FunctionsF.html b/docs/output/search/FunctionsF.html
index 383f14f2..5b480c90 100644
--- a/docs/output/search/FunctionsF.html
+++ b/docs/output/search/FunctionsF.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<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"><!--
+<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/gameworld-hpp.html#Game_World.find_entities" target=_parent class=ISymbol>find_entities</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");
diff --git a/docs/output/search/FunctionsG.html b/docs/output/search/FunctionsG.html
index 35158007..5b272eab 100644
--- a/docs/output/search/FunctionsG.html
+++ b/docs/output/search/FunctionsG.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_gfx_undblend_undadditive><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_blend_additive" target=_parent class=ISymbol>gfx_blend_additive</a></div></div><div class=SRResult id=SR_gfx_undblend_undnone><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_blend_none" target=_parent class=ISymbol>gfx_blend_none</a></div></div><div class=SRResult id=SR_gfx_undblend_undnormal><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_blend_normal" target=_parent class=ISymbol>gfx_blend_normal</a></div></div><div class=SRResult id=SR_gfx_undclear><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_clear" target=_parent class=ISymbol>gfx_clear</a></div></div><div class=SRResult id=SR_gfx_undclip_unddisable><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_clip_disable" target=_parent class=ISymbol>gfx_clip_disable</a></div></div><div class=SRResult id=SR_gfx_undclip_undenable><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_clip_enable" target=_parent class=ISymbol>gfx_clip_enable</a></div></div><div class=SRResult id=SR_gfx_undget_undvideo_undmodes><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_get_video_modes" target=_parent class=ISymbol>gfx_get_video_modes</a></div></div><div class=SRResult id=SR_gfx_undgetscreen><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_getscreen" target=_parent class=ISymbol>gfx_getscreen</a></div></div><div class=SRResult id=SR_gfx_undlines_undbegin><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_lines_begin" target=_parent class=ISymbol>gfx_lines_begin</a></div></div><div class=SRResult id=SR_gfx_undlines_unddraw><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_lines_draw" target=_parent class=ISymbol>gfx_lines_draw</a></div></div><div class=SRResult id=SR_gfx_undlines_undend><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_lines_end" target=_parent class=ISymbol>gfx_lines_end</a></div></div><div class=SRResult id=SR_gfx_undload_undpng><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_load_png" target=_parent class=ISymbol>gfx_load_png</a></div></div><div class=SRResult id=SR_gfx_undload_undtexture><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_load_texture" target=_parent class=ISymbol>gfx_load_texture</a></div></div><div class=SRResult id=SR_gfx_undload_undtexture_undraw><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_load_texture_raw" target=_parent class=ISymbol>gfx_load_texture_raw</a></div></div><div class=SRResult id=SR_gfx_undmapscreen><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_mapscreen" target=_parent class=ISymbol>gfx_mapscreen</a></div></div><div class=SRResult id=SR_gfx_undmemory_undusage><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_memory_usage" target=_parent class=ISymbol>gfx_memory_usage</a></div></div><div class=SRResult id=SR_gfx_undquads_undbegin><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_begin" target=_parent class=ISymbol>gfx_quads_begin</a></div></div><div class=SRResult id=SR_gfx_undquads_unddraw><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_draw" target=_parent class=ISymbol>gfx_quads_draw</a></div></div><div class=SRResult id=SR_gfx_undquads_unddraw_undfreeform><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_draw_freeform" target=_parent class=ISymbol>gfx_quads_draw_freeform</a></div></div><div class=SRResult id=SR_gfx_undquads_unddrawTL><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_drawTL" target=_parent class=ISymbol>gfx_quads_drawTL</a></div></div><div class=SRResult id=SR_gfx_undquads_undend><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_end" target=_parent class=ISymbol>gfx_quads_end</a></div></div><div class=SRResult id=SR_gfx_undquads_undsetrotation><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_setrotation" target=_parent class=ISymbol>gfx_quads_setrotation</a></div></div><div class=SRResult id=SR_gfx_undquads_undsetsubset><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_setsubset" target=_parent class=ISymbol>gfx_quads_setsubset</a></div></div><div class=SRResult id=SR_gfx_undquads_undsetsubset_undfree><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_setsubset_free" target=_parent class=ISymbol>gfx_quads_setsubset_free</a></div></div><div class=SRResult id=SR_gfx_undquads_undtext><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_text" target=_parent class=ISymbol>gfx_quads_text</a></div></div><div class=SRResult id=SR_gfx_undscreenaspect><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenaspect" target=_parent class=ISymbol>gfx_screenaspect</a></div></div><div class=SRResult id=SR_gfx_undscreenheight><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenheight" target=_parent class=ISymbol>gfx_screenheight</a></div></div><div class=SRResult id=SR_gfx_undscreenshot><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenshot" target=_parent class=ISymbol>gfx_screenshot</a></div></div><div class=SRResult id=SR_gfx_undscreenwidth><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenwidth" target=_parent class=ISymbol>gfx_screenwidth</a></div></div><div class=SRResult id=SR_gfx_undsetcolor><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_setcolor" target=_parent class=ISymbol>gfx_setcolor</a></div></div><div class=SRResult id=SR_gfx_undsetcolorvertex><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_setcolorvertex" target=_parent class=ISymbol>gfx_setcolorvertex</a></div></div><div class=SRResult id=SR_gfx_undtext><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text" target=_parent class=ISymbol>gfx_text</a></div></div><div class=SRResult id=SR_gfx_undtext_undcolor><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text_color" target=_parent class=ISymbol>gfx_text_color</a></div></div><div class=SRResult id=SR_gfx_undtext_undset_unddefault_undfont><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text_set_default_font" target=_parent class=ISymbol>gfx_text_set_default_font</a></div></div><div class=SRResult id=SR_gfx_undtext_undwidth><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text_width" target=_parent class=ISymbol>gfx_text_width</a></div></div><div class=SRResult id=SR_gfx_undtexture_undset><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_texture_set" target=_parent class=ISymbol>gfx_texture_set</a></div></div><div class=SRResult id=SR_gfx_undunload_undtexture><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_unload_texture" target=_parent class=ISymbol>gfx_unload_texture</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_gfx_undblend_undadditive><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_blend_additive" target=_parent class=ISymbol>gfx_blend_additive</a></div></div><div class=SRResult id=SR_gfx_undblend_undnone><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_blend_none" target=_parent class=ISymbol>gfx_blend_none</a></div></div><div class=SRResult id=SR_gfx_undblend_undnormal><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_blend_normal" target=_parent class=ISymbol>gfx_blend_normal</a></div></div><div class=SRResult id=SR_gfx_undclear><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_clear" target=_parent class=ISymbol>gfx_clear</a></div></div><div class=SRResult id=SR_gfx_undclip_unddisable><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_clip_disable" target=_parent class=ISymbol>gfx_clip_disable</a></div></div><div class=SRResult id=SR_gfx_undclip_undenable><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_clip_enable" target=_parent class=ISymbol>gfx_clip_enable</a></div></div><div class=SRResult id=SR_gfx_undget_undvideo_undmodes><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_get_video_modes" target=_parent class=ISymbol>gfx_get_video_modes</a></div></div><div class=SRResult id=SR_gfx_undgetscreen><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_getscreen" target=_parent class=ISymbol>gfx_getscreen</a></div></div><div class=SRResult id=SR_gfx_undlines_undbegin><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_lines_begin" target=_parent class=ISymbol>gfx_lines_begin</a></div></div><div class=SRResult id=SR_gfx_undlines_unddraw><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_lines_draw" target=_parent class=ISymbol>gfx_lines_draw</a></div></div><div class=SRResult id=SR_gfx_undlines_undend><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_lines_end" target=_parent class=ISymbol>gfx_lines_end</a></div></div><div class=SRResult id=SR_gfx_undload_undpng><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_load_png" target=_parent class=ISymbol>gfx_load_png</a></div></div><div class=SRResult id=SR_gfx_undload_undtexture><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_load_texture" target=_parent class=ISymbol>gfx_load_texture</a></div></div><div class=SRResult id=SR_gfx_undload_undtexture_undraw><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_load_texture_raw" target=_parent class=ISymbol>gfx_load_texture_raw</a></div></div><div class=SRResult id=SR_gfx_undmapscreen><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_mapscreen" target=_parent class=ISymbol>gfx_mapscreen</a></div></div><div class=SRResult id=SR_gfx_undmemory_undusage><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_memory_usage" target=_parent class=ISymbol>gfx_memory_usage</a></div></div><div class=SRResult id=SR_gfx_undminimize><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_minimize" target=_parent class=ISymbol>gfx_minimize</a></div></div><div class=SRResult id=SR_gfx_undquads_undbegin><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_begin" target=_parent class=ISymbol>gfx_quads_begin</a></div></div><div class=SRResult id=SR_gfx_undquads_unddraw><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_draw" target=_parent class=ISymbol>gfx_quads_draw</a></div></div><div class=SRResult id=SR_gfx_undquads_unddraw_undfreeform><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_draw_freeform" target=_parent class=ISymbol>gfx_quads_draw_freeform</a></div></div><div class=SRResult id=SR_gfx_undquads_unddrawTL><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_drawTL" target=_parent class=ISymbol>gfx_quads_drawTL</a></div></div><div class=SRResult id=SR_gfx_undquads_undend><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_end" target=_parent class=ISymbol>gfx_quads_end</a></div></div><div class=SRResult id=SR_gfx_undquads_undsetrotation><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_setrotation" target=_parent class=ISymbol>gfx_quads_setrotation</a></div></div><div class=SRResult id=SR_gfx_undquads_undsetsubset><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_setsubset" target=_parent class=ISymbol>gfx_quads_setsubset</a></div></div><div class=SRResult id=SR_gfx_undquads_undsetsubset_undfree><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_setsubset_free" target=_parent class=ISymbol>gfx_quads_setsubset_free</a></div></div><div class=SRResult id=SR_gfx_undquads_undtext><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_text" target=_parent class=ISymbol>gfx_quads_text</a></div></div><div class=SRResult id=SR_gfx_undscreenaspect><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenaspect" target=_parent class=ISymbol>gfx_screenaspect</a></div></div><div class=SRResult id=SR_gfx_undscreenheight><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenheight" target=_parent class=ISymbol>gfx_screenheight</a></div></div><div class=SRResult id=SR_gfx_undscreenshot><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenshot" target=_parent class=ISymbol>gfx_screenshot</a></div></div><div class=SRResult id=SR_gfx_undscreenshot_unddirect><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenshot_direct" target=_parent class=ISymbol>gfx_screenshot_direct</a></div></div><div class=SRResult id=SR_gfx_undscreenwidth><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenwidth" target=_parent class=ISymbol>gfx_screenwidth</a></div></div><div class=SRResult id=SR_gfx_undsetcolor><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_setcolor" target=_parent class=ISymbol>gfx_setcolor</a></div></div><div class=SRResult id=SR_gfx_undsetcolorvertex><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_setcolorvertex" target=_parent class=ISymbol>gfx_setcolorvertex</a></div></div><div class=SRResult id=SR_gfx_undtext><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text" target=_parent class=ISymbol>gfx_text</a></div></div><div class=SRResult id=SR_gfx_undtext_undcolor><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text_color" target=_parent class=ISymbol>gfx_text_color</a></div></div><div class=SRResult id=SR_gfx_undtext_undset_unddefault_undfont><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text_set_default_font" target=_parent class=ISymbol>gfx_text_set_default_font</a></div></div><div class=SRResult id=SR_gfx_undtext_undwidth><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text_width" target=_parent class=ISymbol>gfx_text_width</a></div></div><div class=SRResult id=SR_gfx_undtexture_undset><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_texture_set" target=_parent class=ISymbol>gfx_texture_set</a></div></div><div class=SRResult id=SR_gfx_undunload_undtexture><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_unload_texture" target=_parent class=ISymbol>gfx_unload_texture</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");
diff --git a/docs/output/search/FunctionsI.html b/docs/output/search/FunctionsI.html
index 08a41fd9..6420f1b9 100644
--- a/docs/output/search/FunctionsI.html
+++ b/docs/output/search/FunctionsI.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_inp_undclear_undevents><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_clear_events" target=_parent class=ISymbol>inp_clear_events</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undclear_undkey_undstates><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_clear_key_states" target=_parent class=ISymbol>inp_clear_key_states</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undget_undevent><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_get_event" target=_parent class=ISymbol>inp_get_event</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undcode><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_code" target=_parent class=ISymbol>inp_key_code</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_unddown><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_down" target=_parent class=ISymbol>inp_key_down</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undname><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_name" target=_parent class=ISymbol>inp_key_name</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undpressed><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_pressed" target=_parent class=ISymbol>inp_key_pressed</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undpresses><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_presses" target=_parent class=ISymbol>inp_key_presses</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undreleases><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_releases" target=_parent class=ISymbol>inp_key_releases</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undstate><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_state" target=_parent class=ISymbol>inp_key_state</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undwas_undpressed><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_was_pressed" target=_parent class=ISymbol>inp_key_was_pressed</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undmouse_unddoubleclick><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_mouse_doubleclick" target=_parent class=ISymbol>inp_mouse_doubleclick</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undmouse_undrelative><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_mouse_relative" target=_parent class=ISymbol>inp_mouse_relative</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undmouse_undscroll><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_mouse_scroll" target=_parent class=ISymbol>inp_mouse_scroll</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undnum_undevents><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_num_events" target=_parent class=ISymbol>inp_num_events</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_insert_undentity><div class=IEntry><a href="../files/server/gs_common-hpp.html#Game_World.insert_entity" target=_parent class=ISymbol>insert_entity</a>, <span class=IParent>Game World</span></div></div><div class=SRResult id=SR_interserct_undcharacter><div class=IEntry><a href="../files/server/gs_common-hpp.html#Game_World.interserct_character" target=_parent class=ISymbol>interserct_character</a>, <span class=IParent>Game World</span></div></div><div class=SRResult id=SR_io_undclose><div class=IEntry><a href="../files2/e_system-h.html#io_close" target=_parent class=ISymbol>io_close</a></div></div><div class=SRResult id=SR_io_undflush><div class=IEntry><a href="../files2/e_system-h.html#io_flush" target=_parent class=ISymbol>io_flush</a></div></div><div class=SRResult id=SR_io_undlength><div class=IEntry><a href="../files2/e_system-h.html#io_length" target=_parent class=ISymbol>io_length</a></div></div><div class=SRResult id=SR_io_undopen><div class=IEntry><a href="../files2/e_system-h.html#io_open" target=_parent class=ISymbol>io_open</a></div></div><div class=SRResult id=SR_io_undread><div class=IEntry><a href="../files2/e_system-h.html#io_read" target=_parent class=ISymbol>io_read</a></div></div><div class=SRResult id=SR_io_undseek><div class=IEntry><a href="../files2/e_system-h.html#io_seek" target=_parent class=ISymbol>io_seek</a></div></div><div class=SRResult id=SR_io_undskip><div class=IEntry><a href="../files2/e_system-h.html#io_skip" target=_parent class=ISymbol>io_skip</a></div></div><div class=SRResult id=SR_io_undstderr><div class=IEntry><a href="../files2/e_system-h.html#io_stderr" target=_parent class=ISymbol>io_stderr</a></div></div><div class=SRResult id=SR_io_undstdin><div class=IEntry><a href="../files2/e_system-h.html#io_stdin" target=_parent class=ISymbol>io_stdin</a></div></div><div class=SRResult id=SR_io_undstdout><div class=IEntry><a href="../files2/e_system-h.html#io_stdout" target=_parent class=ISymbol>io_stdout</a></div></div><div class=SRResult id=SR_io_undtell><div class=IEntry><a href="../files2/e_system-h.html#io_tell" target=_parent class=ISymbol>io_tell</a></div></div><div class=SRResult id=SR_io_undwrite><div class=IEntry><a href="../files2/e_system-h.html#io_write" target=_parent class=ISymbol>io_write</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_inp_undclear_undevents><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_clear_events" target=_parent class=ISymbol>inp_clear_events</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undclear_undkey_undstates><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_clear_key_states" target=_parent class=ISymbol>inp_clear_key_states</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undget_undevent><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_get_event" target=_parent class=ISymbol>inp_get_event</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undcode><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_code" target=_parent class=ISymbol>inp_key_code</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_unddown><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_down" target=_parent class=ISymbol>inp_key_down</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undname><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_name" target=_parent class=ISymbol>inp_key_name</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undpressed><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_pressed" target=_parent class=ISymbol>inp_key_pressed</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undpresses><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_presses" target=_parent class=ISymbol>inp_key_presses</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undreleases><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_releases" target=_parent class=ISymbol>inp_key_releases</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undstate><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_state" target=_parent class=ISymbol>inp_key_state</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undwas_undpressed><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_was_pressed" target=_parent class=ISymbol>inp_key_was_pressed</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undmouse_unddoubleclick><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_mouse_doubleclick" target=_parent class=ISymbol>inp_mouse_doubleclick</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undmouse_undrelative><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_mouse_relative" target=_parent class=ISymbol>inp_mouse_relative</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undmouse_undscroll><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_mouse_scroll" target=_parent class=ISymbol>inp_mouse_scroll</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undnum_undevents><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_num_events" target=_parent class=ISymbol>inp_num_events</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_insert_undentity><div class=IEntry><a href="../files/server/gameworld-hpp.html#Game_World.insert_entity" target=_parent class=ISymbol>insert_entity</a>, <span class=IParent>Game World</span></div></div><div class=SRResult id=SR_interserct_undcharacter><div class=IEntry><a href="../files/server/gameworld-hpp.html#Game_World.interserct_character" target=_parent class=ISymbol>interserct_character</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");
diff --git a/docs/output/search/FunctionsM.html b/docs/output/search/FunctionsM.html
index 676f5c96..eed0149e 100644
--- a/docs/output/search/FunctionsM.html
+++ b/docs/output/search/FunctionsM.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_map_undfind_unditem><div class=IEntry><a href="../files2/e_if_other-h.html#map_find_item" target=_parent class=ISymbol>map_find_item</a></div></div><div class=SRResult id=SR_map_undget_unddata><div class=IEntry><a href="../files2/e_if_other-h.html#map_get_data" target=_parent class=ISymbol>map_get_data</a></div></div><div class=SRResult id=SR_map_undget_unddata_undswapped><div class=IEntry><a href="../files2/e_if_other-h.html#map_get_data_swapped" target=_parent class=ISymbol>map_get_data_swapped</a></div></div><div class=SRResult id=SR_map_undget_unditem><div class=IEntry><a href="../files2/e_if_other-h.html#map_get_item" target=_parent class=ISymbol>map_get_item</a></div></div><div class=SRResult id=SR_map_undget_undtype><div class=IEntry><a href="../files2/e_if_other-h.html#map_get_type" target=_parent class=ISymbol>map_get_type</a></div></div><div class=SRResult id=SR_map_undis_undloaded><div class=IEntry><a href="../files2/e_if_other-h.html#map_is_loaded" target=_parent class=ISymbol>map_is_loaded</a></div></div><div class=SRResult id=SR_map_undnum_unditems><div class=IEntry><a href="../files2/e_if_other-h.html#map_num_items" target=_parent class=ISymbol>map_num_items</a></div></div><div class=SRResult id=SR_map_undunload_unddata><div class=IEntry><a href="../files2/e_if_other-h.html#map_unload_data" target=_parent class=ISymbol>map_unload_data</a></div></div><div class=SRResult id=SR_mem_undalloc><div class=IEntry><a href="../files2/e_system-h.html#mem_alloc" target=_parent class=ISymbol>mem_alloc</a></div></div><div class=SRResult id=SR_mem_undcomp><div class=IEntry><a href="../files2/e_system-h.html#mem_comp" target=_parent class=ISymbol>mem_comp</a></div></div><div class=SRResult id=SR_mem_undcopy><div class=IEntry><a href="../files2/e_system-h.html#mem_copy" target=_parent class=ISymbol>mem_copy</a></div></div><div class=SRResult id=SR_mem_undfree><div class=IEntry><a href="../files2/e_system-h.html#mem_free" target=_parent class=ISymbol>mem_free</a></div></div><div class=SRResult id=SR_mem_undmove><div class=IEntry><a href="../files2/e_system-h.html#mem_move" target=_parent class=ISymbol>mem_move</a></div></div><div class=SRResult id=SR_mem_undzero><div class=IEntry><a href="../files2/e_system-h.html#mem_zero" target=_parent class=ISymbol>mem_zero</a></div></div><div class=SRResult id=SR_modc_undconnected><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_connected" target=_parent class=ISymbol>modc_connected</a></div></div><div class=SRResult id=SR_modc_undconsole_undinit><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_console_init" target=_parent class=ISymbol>modc_console_init</a></div></div><div class=SRResult id=SR_modc_undentergame><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_entergame" target=_parent class=ISymbol>modc_entergame</a></div></div><div class=SRResult id=SR_modc_undinit><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_init" target=_parent class=ISymbol>modc_init</a></div></div><div class=SRResult id=SR_modc_undmessage><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_message" target=_parent class=ISymbol>modc_message</a></div></div><div class=SRResult id=SR_modc_undnet_undversion><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_net_version" target=_parent class=ISymbol>modc_net_version</a></div></div><div class=SRResult id=SR_modc_undnewsnapshot><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_newsnapshot" target=_parent class=ISymbol>modc_newsnapshot</a></div></div><div class=SRResult id=SR_modc_undpredict><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_predict" target=_parent class=ISymbol>modc_predict</a></div></div><div class=SRResult id=SR_modc_undrcon_undline><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_rcon_line" target=_parent class=ISymbol>modc_rcon_line</a></div></div><div class=SRResult id=SR_modc_undrender><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_render" target=_parent class=ISymbol>modc_render</a></div></div><div class=SRResult id=SR_modc_undsave_undconfig><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_save_config" target=_parent class=ISymbol>modc_save_config</a></div></div><div class=SRResult id=SR_modc_undshutdown><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_shutdown" target=_parent class=ISymbol>modc_shutdown</a></div></div><div class=SRResult id=SR_modc_undsnap_undinput><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_snap_input" target=_parent class=ISymbol>modc_snap_input</a></div></div><div class=SRResult id=SR_modc_undstatechange><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_statechange" target=_parent class=ISymbol>modc_statechange</a></div></div><div class=SRResult id=SR_mods_undclient_unddirect_undinput><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_direct_input" target=_parent class=ISymbol>mods_client_direct_input</a></div></div><div class=SRResult id=SR_mods_undclient_unddrop><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_drop" target=_parent class=ISymbol>mods_client_drop</a></div></div><div class=SRResult id=SR_mods_undclient_undenter><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_enter" target=_parent class=ISymbol>mods_client_enter</a></div></div><div class=SRResult id=SR_mods_undclient_undpredicted_undinput><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_predicted_input" target=_parent class=ISymbol>mods_client_predicted_input</a></div></div><div class=SRResult id=SR_mods_undconnected><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_connected" target=_parent class=ISymbol>mods_connected</a></div></div><div class=SRResult id=SR_mods_undconsole_undinit><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_console_init" target=_parent class=ISymbol>mods_console_init</a></div></div><div class=SRResult id=SR_mods_undinit><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_init" target=_parent class=ISymbol>mods_init</a></div></div><div class=SRResult id=SR_mods_undmessage><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_message" target=_parent class=ISymbol>mods_message</a></div></div><div class=SRResult id=SR_mods_undnet_undversion><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_net_version" target=_parent class=ISymbol>mods_net_version</a></div></div><div class=SRResult id=SR_mods_undpostsnap><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_postsnap" target=_parent class=ISymbol>mods_postsnap</a></div></div><div class=SRResult id=SR_mods_undpresnap><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_presnap" target=_parent class=ISymbol>mods_presnap</a></div></div><div class=SRResult id=SR_mods_undshutdown><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_shutdown" target=_parent class=ISymbol>mods_shutdown</a></div></div><div class=SRResult id=SR_mods_undsnap><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_snap" target=_parent class=ISymbol>mods_snap</a></div></div><div class=SRResult id=SR_mods_undtick><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_tick" target=_parent class=ISymbol>mods_tick</a></div></div><div class=SRResult id=SR_mods_undversion><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_version" target=_parent class=ISymbol>mods_version</a></div></div><div class=SRResult id=SR_msg_undpack_undend><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_end" target=_parent class=ISymbol>msg_pack_end</a></div></div><div class=SRResult id=SR_msg_undpack_undint><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_int" target=_parent class=ISymbol>msg_pack_int</a></div></div><div class=SRResult id=SR_msg_undpack_undraw><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_raw" target=_parent class=ISymbol>msg_pack_raw</a></div></div><div class=SRResult id=SR_msg_undpack_undstart><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_start" target=_parent class=ISymbol>msg_pack_start</a></div></div><div class=SRResult id=SR_msg_undpack_undstring><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_string" target=_parent class=ISymbol>msg_pack_string</a></div></div><div class=SRResult id=SR_msg_undunpack_underror><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_error" target=_parent class=ISymbol>msg_unpack_error</a></div></div><div class=SRResult id=SR_msg_undunpack_undint><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_int" target=_parent class=ISymbol>msg_unpack_int</a></div></div><div class=SRResult id=SR_msg_undunpack_undraw><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_raw" target=_parent class=ISymbol>msg_unpack_raw</a></div></div><div class=SRResult id=SR_msg_undunpack_undstring><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_string" target=_parent class=ISymbol>msg_unpack_string</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_map_undfind_unditem><div class=IEntry><a href="../files2/e_if_other-h.html#map_find_item" target=_parent class=ISymbol>map_find_item</a></div></div><div class=SRResult id=SR_map_undget_unddata><div class=IEntry><a href="../files2/e_if_other-h.html#map_get_data" target=_parent class=ISymbol>map_get_data</a></div></div><div class=SRResult id=SR_map_undget_unddata_undswapped><div class=IEntry><a href="../files2/e_if_other-h.html#map_get_data_swapped" target=_parent class=ISymbol>map_get_data_swapped</a></div></div><div class=SRResult id=SR_map_undget_unditem><div class=IEntry><a href="../files2/e_if_other-h.html#map_get_item" target=_parent class=ISymbol>map_get_item</a></div></div><div class=SRResult id=SR_map_undget_undtype><div class=IEntry><a href="../files2/e_if_other-h.html#map_get_type" target=_parent class=ISymbol>map_get_type</a></div></div><div class=SRResult id=SR_map_undis_undloaded><div class=IEntry><a href="../files2/e_if_other-h.html#map_is_loaded" target=_parent class=ISymbol>map_is_loaded</a></div></div><div class=SRResult id=SR_map_undnum_unditems><div class=IEntry><a href="../files2/e_if_other-h.html#map_num_items" target=_parent class=ISymbol>map_num_items</a></div></div><div class=SRResult id=SR_map_undunload_unddata><div class=IEntry><a href="../files2/e_if_other-h.html#map_unload_data" target=_parent class=ISymbol>map_unload_data</a></div></div><div class=SRResult id=SR_modc_undconnected><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_connected" target=_parent class=ISymbol>modc_connected</a></div></div><div class=SRResult id=SR_modc_undconsole_undinit><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_console_init" target=_parent class=ISymbol>modc_console_init</a></div></div><div class=SRResult id=SR_modc_undentergame><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_entergame" target=_parent class=ISymbol>modc_entergame</a></div></div><div class=SRResult id=SR_modc_undinit><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_init" target=_parent class=ISymbol>modc_init</a></div></div><div class=SRResult id=SR_modc_undmessage><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_message" target=_parent class=ISymbol>modc_message</a></div></div><div class=SRResult id=SR_modc_undnet_undversion><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_net_version" target=_parent class=ISymbol>modc_net_version</a></div></div><div class=SRResult id=SR_modc_undnewsnapshot><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_newsnapshot" target=_parent class=ISymbol>modc_newsnapshot</a></div></div><div class=SRResult id=SR_modc_undpredict><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_predict" target=_parent class=ISymbol>modc_predict</a></div></div><div class=SRResult id=SR_modc_undrcon_undline><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_rcon_line" target=_parent class=ISymbol>modc_rcon_line</a></div></div><div class=SRResult id=SR_modc_undrender><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_render" target=_parent class=ISymbol>modc_render</a></div></div><div class=SRResult id=SR_modc_undsave_undconfig><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_save_config" target=_parent class=ISymbol>modc_save_config</a></div></div><div class=SRResult id=SR_modc_undshutdown><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_shutdown" target=_parent class=ISymbol>modc_shutdown</a></div></div><div class=SRResult id=SR_modc_undsnap_undinput><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_snap_input" target=_parent class=ISymbol>modc_snap_input</a></div></div><div class=SRResult id=SR_modc_undstatechange><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_statechange" target=_parent class=ISymbol>modc_statechange</a></div></div><div class=SRResult id=SR_mods_undclient_unddirect_undinput><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_direct_input" target=_parent class=ISymbol>mods_client_direct_input</a></div></div><div class=SRResult id=SR_mods_undclient_unddrop><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_drop" target=_parent class=ISymbol>mods_client_drop</a></div></div><div class=SRResult id=SR_mods_undclient_undenter><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_enter" target=_parent class=ISymbol>mods_client_enter</a></div></div><div class=SRResult id=SR_mods_undclient_undpredicted_undinput><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_predicted_input" target=_parent class=ISymbol>mods_client_predicted_input</a></div></div><div class=SRResult id=SR_mods_undconnected><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_connected" target=_parent class=ISymbol>mods_connected</a></div></div><div class=SRResult id=SR_mods_undconsole_undinit><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_console_init" target=_parent class=ISymbol>mods_console_init</a></div></div><div class=SRResult id=SR_mods_undinit><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_init" target=_parent class=ISymbol>mods_init</a></div></div><div class=SRResult id=SR_mods_undmessage><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_message" target=_parent class=ISymbol>mods_message</a></div></div><div class=SRResult id=SR_mods_undnet_undversion><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_net_version" target=_parent class=ISymbol>mods_net_version</a></div></div><div class=SRResult id=SR_mods_undpostsnap><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_postsnap" target=_parent class=ISymbol>mods_postsnap</a></div></div><div class=SRResult id=SR_mods_undpresnap><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_presnap" target=_parent class=ISymbol>mods_presnap</a></div></div><div class=SRResult id=SR_mods_undshutdown><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_shutdown" target=_parent class=ISymbol>mods_shutdown</a></div></div><div class=SRResult id=SR_mods_undsnap><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_snap" target=_parent class=ISymbol>mods_snap</a></div></div><div class=SRResult id=SR_mods_undtick><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_tick" target=_parent class=ISymbol>mods_tick</a></div></div><div class=SRResult id=SR_mods_undversion><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_version" target=_parent class=ISymbol>mods_version</a></div></div><div class=SRResult id=SR_msg_undpack_undend><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_end" target=_parent class=ISymbol>msg_pack_end</a></div></div><div class=SRResult id=SR_msg_undpack_undint><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_int" target=_parent class=ISymbol>msg_pack_int</a></div></div><div class=SRResult id=SR_msg_undpack_undraw><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_raw" target=_parent class=ISymbol>msg_pack_raw</a></div></div><div class=SRResult id=SR_msg_undpack_undstart><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_start" target=_parent class=ISymbol>msg_pack_start</a></div></div><div class=SRResult id=SR_msg_undpack_undstring><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_string" target=_parent class=ISymbol>msg_pack_string</a></div></div><div class=SRResult id=SR_msg_undunpack_underror><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_error" target=_parent class=ISymbol>msg_unpack_error</a></div></div><div class=SRResult id=SR_msg_undunpack_undint><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_int" target=_parent class=ISymbol>msg_unpack_int</a></div></div><div class=SRResult id=SR_msg_undunpack_undraw><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_raw" target=_parent class=ISymbol>msg_unpack_raw</a></div></div><div class=SRResult id=SR_msg_undunpack_undstring><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_string" target=_parent class=ISymbol>msg_unpack_string</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");
diff --git a/docs/output/search/FunctionsO.html b/docs/output/search/FunctionsO.html
index a5ceefd6..fd0e5a80 100644
--- a/docs/output/search/FunctionsO.html
+++ b/docs/output/search/FunctionsO.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<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"><!--
+<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/gamecontroller-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/gamecontroller-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/gamecontroller-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");
diff --git a/docs/output/search/FunctionsR.html b/docs/output/search/FunctionsR.html
index 844d9743..6d43a773 100644
--- a/docs/output/search/FunctionsR.html
+++ b/docs/output/search/FunctionsR.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<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"><!--
+<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/gameworld-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/entity-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");
diff --git a/docs/output/search/FunctionsS.html b/docs/output/search/FunctionsS.html
index c515d28a..58506898 100644
--- a/docs/output/search/FunctionsS.html
+++ b/docs/output/search/FunctionsS.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_server_undclientname><div class=IEntry><a href="../files2/e_if_server-h.html#server_clientname" target=_parent class=ISymbol>server_clientname</a></div></div><div class=SRResult id=SR_server_undgetclientinfo><div class=IEntry><a href="../files2/e_if_server-h.html#server_getclientinfo" target=_parent class=ISymbol>server_getclientinfo</a></div></div><div class=SRResult id=SR_server_undkick><div class=IEntry><a href="../files2/e_if_server-h.html#server_kick" target=_parent class=ISymbol>server_kick</a></div></div><div class=SRResult id=SR_server_undlatestinput><div class=IEntry><a href="../files2/e_if_server-h.html#server_latestinput" target=_parent class=ISymbol>server_latestinput</a></div></div><div class=SRResult id=SR_server_undsend_undmsg><div class=IEntry><a href="../files2/e_if_other-h.html#server_send_msg" target=_parent class=ISymbol>server_send_msg</a></div></div><div class=SRResult id=SR_server_undsetbrowseinfo><div class=IEntry><a href="../files2/e_if_server-h.html#server_setbrowseinfo" target=_parent class=ISymbol>server_setbrowseinfo</a></div></div><div class=SRResult id=SR_server_undsetclientname><div class=IEntry><a href="../files2/e_if_server-h.html#server_setclientname" target=_parent class=ISymbol>server_setclientname</a></div></div><div class=SRResult id=SR_server_undsetclientscore><div class=IEntry><a href="../files2/e_if_server-h.html#server_setclientscore" target=_parent class=ISymbol>server_setclientscore</a></div></div><div class=SRResult id=SR_server_undtick><div class=IEntry><a href="../files2/e_if_server-h.html#server_tick" target=_parent class=ISymbol>server_tick</a></div></div><div class=SRResult id=SR_server_undtickspeed><div class=IEntry><a href="../files2/e_if_server-h.html#server_tickspeed" target=_parent class=ISymbol>server_tickspeed</a></div></div><div class=SRResult id=SR_snap><div class=IEntry><a href="javascript:searchResults.Toggle('SR_snap')" class=ISymbol>snap</a><div class=ISubIndex><a href="../files/server/gs_common-hpp.html#Entity.snap" target=_parent class=IParent>Entity</a><a href="../files/server/gs_common-hpp.html#Game_World.snap" target=_parent class=IParent>Game World</a></div></div></div><div class=SRResult id=SR_snap_undfind_unditem><div class=IEntry><a href="../files2/e_if_other-h.html#snap_find_item" target=_parent class=ISymbol>snap_find_item</a></div></div><div class=SRResult id=SR_snap_undfree_undid><div class=IEntry><a href="../files2/e_if_other-h.html#snap_free_id" target=_parent class=ISymbol>snap_free_id</a></div></div><div class=SRResult id=SR_snap_undget_unditem><div class=IEntry><a href="../files2/e_if_other-h.html#snap_get_item" target=_parent class=ISymbol>snap_get_item</a></div></div><div class=SRResult id=SR_snap_undinput><div class=IEntry><a href="../files2/e_if_other-h.html#snap_input" target=_parent class=ISymbol>snap_input</a></div></div><div class=SRResult id=SR_snap_undinvalidate_unditem><div class=IEntry><a href="../files2/e_if_other-h.html#snap_invalidate_item" target=_parent class=ISymbol>snap_invalidate_item</a></div></div><div class=SRResult id=SR_snap_undnew_undid><div class=IEntry><a href="../files2/e_if_other-h.html#snap_new_id" target=_parent class=ISymbol>snap_new_id</a></div></div><div class=SRResult id=SR_snap_undnew_unditem><div class=IEntry><a href="../files2/e_if_other-h.html#snap_new_item" target=_parent class=ISymbol>snap_new_item</a></div></div><div class=SRResult id=SR_snap_undnum_unditems><div class=IEntry><a href="../files2/e_if_other-h.html#snap_num_items" target=_parent class=ISymbol>snap_num_items</a></div></div><div class=SRResult id=SR_snap_undset_undstaticsize><div class=IEntry><a href="../files2/e_if_other-h.html#snap_set_staticsize" target=_parent class=ISymbol>snap_set_staticsize</a></div></div><div class=SRResult id=SR_snd_undload_undwv><div class=IEntry><a href="../files2/e_if_snd-h.html#snd_load_wv" target=_parent class=ISymbol>snd_load_wv</a></div></div><div class=SRResult id=SR_snd_undplay><div class=IEntry><a href="../files2/e_if_snd-h.html#snd_play" target=_parent class=ISymbol>snd_play</a></div></div><div class=SRResult id=SR_snd_undplay_undat><div class=IEntry><a href="../files2/e_if_snd-h.html#snd_play_at" target=_parent class=ISymbol>snd_play_at</a></div></div><div class=SRResult id=SR_snd_undset_undchannel><div class=IEntry><a href="../files2/e_if_snd-h.html#snd_set_channel" target=_parent class=ISymbol>snd_set_channel</a></div></div><div class=SRResult id=SR_snd_undset_undlistener_undpos><div class=IEntry><a href="../files2/e_if_snd-h.html#snd_set_listener_pos" target=_parent class=ISymbol>snd_set_listener_pos</a></div></div><div class=SRResult id=SR_snd_undstop><div class=IEntry><a href="../files2/e_if_snd-h.html#snd_stop" target=_parent class=ISymbol>snd_stop</a></div></div><div class=SRResult id=SR_str_undappend><div class=IEntry><a href="../files2/e_system-h.html#str_append" target=_parent class=ISymbol>str_append</a></div></div><div class=SRResult id=SR_str_undcomp_undnocase><div class=IEntry><a href="../files2/e_system-h.html#str_comp_nocase" target=_parent class=ISymbol>str_comp_nocase</a></div></div><div class=SRResult id=SR_str_undcopy><div class=IEntry><a href="../files2/e_system-h.html#str_copy" target=_parent class=ISymbol>str_copy</a></div></div><div class=SRResult id=SR_str_undfind_undnocase><div class=IEntry><a href="../files2/e_system-h.html#str_find_nocase" target=_parent class=ISymbol>str_find_nocase</a></div></div><div class=SRResult id=SR_str_undformat><div class=IEntry><a href="../files2/e_system-h.html#str_format" target=_parent class=ISymbol>str_format</a></div></div><div class=SRResult id=SR_str_undhex><div class=IEntry><a href="../files2/e_system-h.html#str_hex" target=_parent class=ISymbol>str_hex</a></div></div><div class=SRResult id=SR_str_undsanitize><div class=IEntry><a href="../files2/e_system-h.html#str_sanitize" target=_parent class=ISymbol>str_sanitize</a></div></div><div class=SRResult id=SR_str_undsanitize_undstrong><div class=IEntry><a href="../files2/e_system-h.html#str_sanitize_strong" target=_parent class=ISymbol>str_sanitize_strong</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_server_undclientname><div class=IEntry><a href="../files2/e_if_server-h.html#server_clientname" target=_parent class=ISymbol>server_clientname</a></div></div><div class=SRResult id=SR_server_undgetclientinfo><div class=IEntry><a href="../files2/e_if_server-h.html#server_getclientinfo" target=_parent class=ISymbol>server_getclientinfo</a></div></div><div class=SRResult id=SR_server_undkick><div class=IEntry><a href="../files2/e_if_server-h.html#server_kick" target=_parent class=ISymbol>server_kick</a></div></div><div class=SRResult id=SR_server_undlatestinput><div class=IEntry><a href="../files2/e_if_server-h.html#server_latestinput" target=_parent class=ISymbol>server_latestinput</a></div></div><div class=SRResult id=SR_server_undsend_undmsg><div class=IEntry><a href="../files2/e_if_other-h.html#server_send_msg" target=_parent class=ISymbol>server_send_msg</a></div></div><div class=SRResult id=SR_server_undsetbrowseinfo><div class=IEntry><a href="../files2/e_if_server-h.html#server_setbrowseinfo" target=_parent class=ISymbol>server_setbrowseinfo</a></div></div><div class=SRResult id=SR_server_undsetclientname><div class=IEntry><a href="../files2/e_if_server-h.html#server_setclientname" target=_parent class=ISymbol>server_setclientname</a></div></div><div class=SRResult id=SR_server_undsetclientscore><div class=IEntry><a href="../files2/e_if_server-h.html#server_setclientscore" target=_parent class=ISymbol>server_setclientscore</a></div></div><div class=SRResult id=SR_server_undtick><div class=IEntry><a href="../files2/e_if_server-h.html#server_tick" target=_parent class=ISymbol>server_tick</a></div></div><div class=SRResult id=SR_server_undtickspeed><div class=IEntry><a href="../files2/e_if_server-h.html#server_tickspeed" target=_parent class=ISymbol>server_tickspeed</a></div></div><div class=SRResult id=SR_snap><div class=IEntry><a href="javascript:searchResults.Toggle('SR_snap')" class=ISymbol>snap</a><div class=ISubIndex><a href="../files/server/entity-hpp.html#Entity.snap" target=_parent class=IParent>Entity</a><a href="../files/server/gameworld-hpp.html#Game_World.snap" target=_parent class=IParent>Game World</a></div></div></div><div class=SRResult id=SR_snap_undfind_unditem><div class=IEntry><a href="../files2/e_if_other-h.html#snap_find_item" target=_parent class=ISymbol>snap_find_item</a></div></div><div class=SRResult id=SR_snap_undfree_undid><div class=IEntry><a href="../files2/e_if_other-h.html#snap_free_id" target=_parent class=ISymbol>snap_free_id</a></div></div><div class=SRResult id=SR_snap_undget_unditem><div class=IEntry><a href="../files2/e_if_other-h.html#snap_get_item" target=_parent class=ISymbol>snap_get_item</a></div></div><div class=SRResult id=SR_snap_undinput><div class=IEntry><a href="../files2/e_if_other-h.html#snap_input" target=_parent class=ISymbol>snap_input</a></div></div><div class=SRResult id=SR_snap_undinvalidate_unditem><div class=IEntry><a href="../files2/e_if_other-h.html#snap_invalidate_item" target=_parent class=ISymbol>snap_invalidate_item</a></div></div><div class=SRResult id=SR_snap_undnew_undid><div class=IEntry><a href="../files2/e_if_other-h.html#snap_new_id" target=_parent class=ISymbol>snap_new_id</a></div></div><div class=SRResult id=SR_snap_undnew_unditem><div class=IEntry><a href="../files2/e_if_other-h.html#snap_new_item" target=_parent class=ISymbol>snap_new_item</a></div></div><div class=SRResult id=SR_snap_undnum_unditems><div class=IEntry><a href="../files2/e_if_other-h.html#snap_num_items" target=_parent class=ISymbol>snap_num_items</a></div></div><div class=SRResult id=SR_snap_undset_undstaticsize><div class=IEntry><a href="../files2/e_if_other-h.html#snap_set_staticsize" target=_parent class=ISymbol>snap_set_staticsize</a></div></div><div class=SRResult id=SR_snd_undload_undwv><div class=IEntry><a href="../files2/e_if_snd-h.html#snd_load_wv" target=_parent class=ISymbol>snd_load_wv</a></div></div><div class=SRResult id=SR_snd_undplay><div class=IEntry><a href="../files2/e_if_snd-h.html#snd_play" target=_parent class=ISymbol>snd_play</a></div></div><div class=SRResult id=SR_snd_undplay_undat><div class=IEntry><a href="../files2/e_if_snd-h.html#snd_play_at" target=_parent class=ISymbol>snd_play_at</a></div></div><div class=SRResult id=SR_snd_undset_undchannel><div class=IEntry><a href="../files2/e_if_snd-h.html#snd_set_channel" target=_parent class=ISymbol>snd_set_channel</a></div></div><div class=SRResult id=SR_snd_undset_undlistener_undpos><div class=IEntry><a href="../files2/e_if_snd-h.html#snd_set_listener_pos" target=_parent class=ISymbol>snd_set_listener_pos</a></div></div><div class=SRResult id=SR_snd_undstop><div class=IEntry><a href="../files2/e_if_snd-h.html#snd_stop" target=_parent class=ISymbol>snd_stop</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");
diff --git a/docs/output/search/FunctionsT.html b/docs/output/search/FunctionsT.html
index 44b7d83d..e767e3ce 100644
--- a/docs/output/search/FunctionsT.html
+++ b/docs/output/search/FunctionsT.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<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"><!--
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><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/entity-hpp.html#Entity.tick" target=_parent class=IParent>Entity</a><a href="../files/server/gameworld-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/entity-hpp.html#Entity.tick_defered" target=_parent class=ISymbol>tick_defered</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");
diff --git a/docs/output/search/GeneralC.html b/docs/output/search/GeneralC.html
index fb1aeb7a..8f495616 100644
--- a/docs/output/search/GeneralC.html
+++ b/docs/output/search/GeneralC.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Client_spcHooks><div class=IEntry><a href="../files2/e_if_modc-h.html#Client_Hooks" target=_parent class=ISymbol>Client Hooks</a></div></div><div class=SRResult id=SR_Client_spcInterface><div class=IEntry><a href="../files2/e_if_client-h.html#Client_Interface" target=_parent class=ISymbol>Client Interface</a></div></div><div class=SRResult id=SR_Client_spcSide><div class=IEntry><a href="../files2/docs/snapshots-txt.html#Client_Side" target=_parent class=ISymbol>Client Side</a></div></div><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_client_undconnect><div class=IEntry><a href="../files2/e_if_client-h.html#client_connect" target=_parent class=ISymbol>client_connect</a></div></div><div class=SRResult id=SR_client_undconnection_undproblems><div class=IEntry><a href="../files2/e_if_client-h.html#client_connection_problems" target=_parent class=ISymbol>client_connection_problems</a></div></div><div class=SRResult id=SR_client_unddirect_undinput><div class=IEntry><a href="../files2/e_if_client-h.html#client_direct_input" target=_parent class=ISymbol>client_direct_input</a></div></div><div class=SRResult id=SR_client_unddisconnect><div class=IEntry><a href="../files2/e_if_client-h.html#client_disconnect" target=_parent class=ISymbol>client_disconnect</a></div></div><div class=SRResult id=SR_client_underror_undstring><div class=IEntry><a href="../files2/e_if_client-h.html#client_error_string" target=_parent class=ISymbol>client_error_string</a></div></div><div class=SRResult id=SR_client_undframetime><div class=IEntry><a href="../files2/e_if_client-h.html#client_frametime" target=_parent class=ISymbol>client_frametime</a></div></div><div class=SRResult id=SR_client_undget_undinput><div class=IEntry><a href="../files2/e_if_client-h.html#client_get_input" target=_parent class=ISymbol>client_get_input</a></div></div><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><div class=SRResult id=SR_client_undintratick><div class=IEntry><a href="../files2/e_if_client-h.html#client_intratick" target=_parent class=ISymbol>client_intratick</a></div></div><div class=SRResult id=SR_client_undlocaltime><div class=IEntry><a href="../files2/e_if_client-h.html#client_localtime" target=_parent class=ISymbol>client_localtime</a></div></div><div class=SRResult id=SR_client_undmapdownload_undamount><div class=IEntry><a href="../files2/e_if_client-h.html#client_mapdownload_amount" target=_parent class=ISymbol>client_mapdownload_amount</a></div></div><div class=SRResult id=SR_client_undmapdownload_undtotalsize><div class=IEntry><a href="../files2/e_if_client-h.html#client_mapdownload_totalsize" target=_parent class=ISymbol>client_mapdownload_totalsize</a></div></div><div class=SRResult id=SR_client_undpredintratick><div class=IEntry><a href="../files2/e_if_client-h.html#client_predintratick" target=_parent class=ISymbol>client_predintratick</a></div></div><div class=SRResult id=SR_client_undpredtick><div class=IEntry><a href="../files2/e_if_client-h.html#client_predtick" target=_parent class=ISymbol>client_predtick</a></div></div><div class=SRResult id=SR_client_undquit><div class=IEntry><a href="../files2/e_if_client-h.html#client_quit" target=_parent class=ISymbol>client_quit</a></div></div><div class=SRResult id=SR_client_undrcon><div class=IEntry><a href="../files2/e_if_client-h.html#client_rcon" target=_parent class=ISymbol>client_rcon</a></div></div><div class=SRResult id=SR_client_undrcon_undauth><div class=IEntry><a href="../files2/e_if_client-h.html#client_rcon_auth" target=_parent class=ISymbol>client_rcon_auth</a></div></div><div class=SRResult id=SR_client_undrcon_undauthed><div class=IEntry><a href="../files2/e_if_client-h.html#client_rcon_authed" target=_parent class=ISymbol>client_rcon_authed</a></div></div><div class=SRResult id=SR_client_undsave_undline><div class=IEntry><a href="../files2/e_if_client-h.html#client_save_line" target=_parent class=ISymbol>client_save_line</a></div></div><div class=SRResult id=SR_client_undsend_undmsg><div class=IEntry><a href="../files2/e_if_other-h.html#client_send_msg" target=_parent class=ISymbol>client_send_msg</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undget><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_get" target=_parent class=ISymbol>client_serverbrowse_get</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undlan><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_lan" target=_parent class=ISymbol>client_serverbrowse_lan</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undnum><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_num" target=_parent class=ISymbol>client_serverbrowse_num</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undnum_undrequests><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_num_requests" target=_parent class=ISymbol>client_serverbrowse_num_requests</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undrefresh><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_refresh" target=_parent class=ISymbol>client_serverbrowse_refresh</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undsorted_undget><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_sorted_get" target=_parent class=ISymbol>client_serverbrowse_sorted_get</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undsorted_undnum><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_sorted_num" target=_parent class=ISymbol>client_serverbrowse_sorted_num</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undupdate><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_update" target=_parent class=ISymbol>client_serverbrowse_update</a></div></div><div class=SRResult id=SR_client_undstate><div class=IEntry><a href="../files2/e_if_client-h.html#client_state" target=_parent class=ISymbol>client_state</a></div></div><div class=SRResult id=SR_client_undtick><div class=IEntry><a href="../files2/e_if_client-h.html#client_tick" target=_parent class=ISymbol>client_tick</a></div></div><div class=SRResult id=SR_client_undtickspeed><div class=IEntry><a href="../files2/e_if_client-h.html#client_tickspeed" target=_parent class=ISymbol>client_tickspeed</a></div></div><div class=SRResult id=SR_client_undticktime><div class=IEntry><a href="../files2/e_if_client-h.html#client_ticktime" target=_parent class=ISymbol>client_ticktime</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><div class=SRResult id=SR_closest_undcharacter><div class=IEntry><a href="../files/server/gs_common-hpp.html#Game_World.closest_character" target=_parent class=ISymbol>closest_character</a>, <span class=IParent>Game World</span></div></div><div class=SRResult id=SR_Compression><div class=IEntry><a href="../files2/docs/snapshots-txt.html#Compression" target=_parent class=ISymbol>Compression</a></div></div><div class=SRResult id=SR_Constants><div class=IEntry><a href="../files2/e_if_client-h.html#Constants" target=_parent class=ISymbol>Constants</a></div></div><div class=SRResult id=SR_Creating><div class=IEntry><a href="../files2/docs/snapshots-txt.html#Creating" target=_parent class=ISymbol>Creating</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Client_spcHooks><div class=IEntry><a href="../files2/e_if_modc-h.html#Client_Hooks" target=_parent class=ISymbol>Client Hooks</a></div></div><div class=SRResult id=SR_Client_spcInterface><div class=IEntry><a href="../files2/e_if_client-h.html#Client_Interface" target=_parent class=ISymbol>Client Interface</a></div></div><div class=SRResult id=SR_Client_spcSide><div class=IEntry><a href="../files2/docs/snapshots-txt.html#Client_Side" target=_parent class=ISymbol>Client Side</a></div></div><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_client_undconnect><div class=IEntry><a href="../files2/e_if_client-h.html#client_connect" target=_parent class=ISymbol>client_connect</a></div></div><div class=SRResult id=SR_client_undconnection_undproblems><div class=IEntry><a href="../files2/e_if_client-h.html#client_connection_problems" target=_parent class=ISymbol>client_connection_problems</a></div></div><div class=SRResult id=SR_client_unddirect_undinput><div class=IEntry><a href="../files2/e_if_client-h.html#client_direct_input" target=_parent class=ISymbol>client_direct_input</a></div></div><div class=SRResult id=SR_client_unddisconnect><div class=IEntry><a href="../files2/e_if_client-h.html#client_disconnect" target=_parent class=ISymbol>client_disconnect</a></div></div><div class=SRResult id=SR_client_underror_undstring><div class=IEntry><a href="../files2/e_if_client-h.html#client_error_string" target=_parent class=ISymbol>client_error_string</a></div></div><div class=SRResult id=SR_client_undframetime><div class=IEntry><a href="../files2/e_if_client-h.html#client_frametime" target=_parent class=ISymbol>client_frametime</a></div></div><div class=SRResult id=SR_client_undget_undinput><div class=IEntry><a href="../files2/e_if_client-h.html#client_get_input" target=_parent class=ISymbol>client_get_input</a></div></div><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><div class=SRResult id=SR_client_undintratick><div class=IEntry><a href="../files2/e_if_client-h.html#client_intratick" target=_parent class=ISymbol>client_intratick</a></div></div><div class=SRResult id=SR_client_undlatestversion><div class=IEntry><a href="../files2/e_if_client-h.html#client_latestversion" target=_parent class=ISymbol>client_latestversion</a></div></div><div class=SRResult id=SR_client_undlocaltime><div class=IEntry><a href="../files2/e_if_client-h.html#client_localtime" target=_parent class=ISymbol>client_localtime</a></div></div><div class=SRResult id=SR_client_undmapdownload_undamount><div class=IEntry><a href="../files2/e_if_client-h.html#client_mapdownload_amount" target=_parent class=ISymbol>client_mapdownload_amount</a></div></div><div class=SRResult id=SR_client_undmapdownload_undtotalsize><div class=IEntry><a href="../files2/e_if_client-h.html#client_mapdownload_totalsize" target=_parent class=ISymbol>client_mapdownload_totalsize</a></div></div><div class=SRResult id=SR_client_undpredintratick><div class=IEntry><a href="../files2/e_if_client-h.html#client_predintratick" target=_parent class=ISymbol>client_predintratick</a></div></div><div class=SRResult id=SR_client_undpredtick><div class=IEntry><a href="../files2/e_if_client-h.html#client_predtick" target=_parent class=ISymbol>client_predtick</a></div></div><div class=SRResult id=SR_client_undprevtick><div class=IEntry><a href="../files2/e_if_client-h.html#client_prevtick" target=_parent class=ISymbol>client_prevtick</a></div></div><div class=SRResult id=SR_client_undquit><div class=IEntry><a href="../files2/e_if_client-h.html#client_quit" target=_parent class=ISymbol>client_quit</a></div></div><div class=SRResult id=SR_client_undrcon><div class=IEntry><a href="../files2/e_if_client-h.html#client_rcon" target=_parent class=ISymbol>client_rcon</a></div></div><div class=SRResult id=SR_client_undrcon_undauth><div class=IEntry><a href="../files2/e_if_client-h.html#client_rcon_auth" target=_parent class=ISymbol>client_rcon_auth</a></div></div><div class=SRResult id=SR_client_undrcon_undauthed><div class=IEntry><a href="../files2/e_if_client-h.html#client_rcon_authed" target=_parent class=ISymbol>client_rcon_authed</a></div></div><div class=SRResult id=SR_client_undsave_undline><div class=IEntry><a href="../files2/e_if_client-h.html#client_save_line" target=_parent class=ISymbol>client_save_line</a></div></div><div class=SRResult id=SR_client_undsend_undmsg><div class=IEntry><a href="../files2/e_if_other-h.html#client_send_msg" target=_parent class=ISymbol>client_send_msg</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undaddfavorite><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_addfavorite" target=_parent class=ISymbol>client_serverbrowse_addfavorite</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undget><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_get" target=_parent class=ISymbol>client_serverbrowse_get</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undlan><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_lan" target=_parent class=ISymbol>client_serverbrowse_lan</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undnum><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_num" target=_parent class=ISymbol>client_serverbrowse_num</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undnum_undrequests><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_num_requests" target=_parent class=ISymbol>client_serverbrowse_num_requests</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undrefresh><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_refresh" target=_parent class=ISymbol>client_serverbrowse_refresh</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undremovefavorite><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_removefavorite" target=_parent class=ISymbol>client_serverbrowse_removefavorite</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undsorted_undget><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_sorted_get" target=_parent class=ISymbol>client_serverbrowse_sorted_get</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undsorted_undnum><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_sorted_num" target=_parent class=ISymbol>client_serverbrowse_sorted_num</a></div></div><div class=SRResult id=SR_client_undserverbrowse_undupdate><div class=IEntry><a href="../files2/e_if_client-h.html#client_serverbrowse_update" target=_parent class=ISymbol>client_serverbrowse_update</a></div></div><div class=SRResult id=SR_client_undstate><div class=IEntry><a href="../files2/e_if_client-h.html#client_state" target=_parent class=ISymbol>client_state</a></div></div><div class=SRResult id=SR_client_undtick><div class=IEntry><a href="../files2/e_if_client-h.html#client_tick" target=_parent class=ISymbol>client_tick</a></div></div><div class=SRResult id=SR_client_undtickspeed><div class=IEntry><a href="../files2/e_if_client-h.html#client_tickspeed" target=_parent class=ISymbol>client_tickspeed</a></div></div><div class=SRResult id=SR_client_undticktime><div class=IEntry><a href="../files2/e_if_client-h.html#client_ticktime" target=_parent class=ISymbol>client_ticktime</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><div class=SRResult id=SR_closest_undcharacter><div class=IEntry><a href="../files/server/gameworld-hpp.html#Game_World.closest_character" target=_parent class=ISymbol>closest_character</a>, <span class=IParent>Game World</span></div></div><div class=SRResult id=SR_Compression><div class=IEntry><a href="../files2/docs/snapshots-txt.html#Compression" target=_parent class=ISymbol>Compression</a></div></div><div class=SRResult id=SR_Constants><div class=IEntry><a href="../files2/e_if_client-h.html#Constants" target=_parent class=ISymbol>Constants</a></div></div><div class=SRResult id=SR_Creating><div class=IEntry><a href="../files2/docs/snapshots-txt.html#Creating" target=_parent class=ISymbol>Creating</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");
diff --git a/docs/output/search/GeneralD.html b/docs/output/search/GeneralD.html
index 11e12e8f..b127e941 100644
--- a/docs/output/search/GeneralD.html
+++ b/docs/output/search/GeneralD.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<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"><!--
+<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_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/entity-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/gameworld-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");
diff --git a/docs/output/search/GeneralE.html b/docs/output/search/GeneralE.html
index 795ac26b..621ab3e8 100644
--- a/docs/output/search/GeneralE.html
+++ b/docs/output/search/GeneralE.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<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"><!--
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_e_undhuffman_perh><div class=IEntry><a href="../files2/e_huffman-h.html#e_huffman.h" target=_parent class=ISymbol>e_huffman.h</a></div></div><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/entity-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");
diff --git a/docs/output/search/GeneralF.html b/docs/output/search/GeneralF.html
index b6237330..65591d35 100644
--- a/docs/output/search/GeneralF.html
+++ b/docs/output/search/GeneralF.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<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"><!--
+<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/gameworld-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_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_huffman-h.html#Functions" target=_parent class=IFile>e_huffman.h</a><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/entity-hpp.html#Entity.Functions" target=_parent class=IParent>Entity</a><a href="../files/server/gamecontroller-hpp.html#Game_Controller.Functions" target=_parent class=IParent>Game Controller</a><a href="../files/server/gameworld-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");
diff --git a/docs/output/search/GeneralG.html b/docs/output/search/GeneralG.html
index b3a01405..a7ef1931 100644
--- a/docs/output/search/GeneralG.html
+++ b/docs/output/search/GeneralG.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<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><div class=SRResult id=SR_gfx_undblend_undadditive><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_blend_additive" target=_parent class=ISymbol>gfx_blend_additive</a></div></div><div class=SRResult id=SR_gfx_undblend_undnone><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_blend_none" target=_parent class=ISymbol>gfx_blend_none</a></div></div><div class=SRResult id=SR_gfx_undblend_undnormal><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_blend_normal" target=_parent class=ISymbol>gfx_blend_normal</a></div></div><div class=SRResult id=SR_gfx_undclear><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_clear" target=_parent class=ISymbol>gfx_clear</a></div></div><div class=SRResult id=SR_gfx_undclip_unddisable><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_clip_disable" target=_parent class=ISymbol>gfx_clip_disable</a></div></div><div class=SRResult id=SR_gfx_undclip_undenable><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_clip_enable" target=_parent class=ISymbol>gfx_clip_enable</a></div></div><div class=SRResult id=SR_gfx_undget_undvideo_undmodes><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_get_video_modes" target=_parent class=ISymbol>gfx_get_video_modes</a></div></div><div class=SRResult id=SR_gfx_undgetscreen><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_getscreen" target=_parent class=ISymbol>gfx_getscreen</a></div></div><div class=SRResult id=SR_gfx_undlines_undbegin><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_lines_begin" target=_parent class=ISymbol>gfx_lines_begin</a></div></div><div class=SRResult id=SR_gfx_undlines_unddraw><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_lines_draw" target=_parent class=ISymbol>gfx_lines_draw</a></div></div><div class=SRResult id=SR_gfx_undlines_undend><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_lines_end" target=_parent class=ISymbol>gfx_lines_end</a></div></div><div class=SRResult id=SR_gfx_undload_undpng><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_load_png" target=_parent class=ISymbol>gfx_load_png</a></div></div><div class=SRResult id=SR_gfx_undload_undtexture><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_load_texture" target=_parent class=ISymbol>gfx_load_texture</a></div></div><div class=SRResult id=SR_gfx_undload_undtexture_undraw><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_load_texture_raw" target=_parent class=ISymbol>gfx_load_texture_raw</a></div></div><div class=SRResult id=SR_gfx_undmapscreen><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_mapscreen" target=_parent class=ISymbol>gfx_mapscreen</a></div></div><div class=SRResult id=SR_gfx_undmemory_undusage><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_memory_usage" target=_parent class=ISymbol>gfx_memory_usage</a></div></div><div class=SRResult id=SR_gfx_undquads_undbegin><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_begin" target=_parent class=ISymbol>gfx_quads_begin</a></div></div><div class=SRResult id=SR_gfx_undquads_unddraw><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_draw" target=_parent class=ISymbol>gfx_quads_draw</a></div></div><div class=SRResult id=SR_gfx_undquads_unddraw_undfreeform><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_draw_freeform" target=_parent class=ISymbol>gfx_quads_draw_freeform</a></div></div><div class=SRResult id=SR_gfx_undquads_unddrawTL><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_drawTL" target=_parent class=ISymbol>gfx_quads_drawTL</a></div></div><div class=SRResult id=SR_gfx_undquads_undend><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_end" target=_parent class=ISymbol>gfx_quads_end</a></div></div><div class=SRResult id=SR_gfx_undquads_undsetrotation><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_setrotation" target=_parent class=ISymbol>gfx_quads_setrotation</a></div></div><div class=SRResult id=SR_gfx_undquads_undsetsubset><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_setsubset" target=_parent class=ISymbol>gfx_quads_setsubset</a></div></div><div class=SRResult id=SR_gfx_undquads_undsetsubset_undfree><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_setsubset_free" target=_parent class=ISymbol>gfx_quads_setsubset_free</a></div></div><div class=SRResult id=SR_gfx_undquads_undtext><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_text" target=_parent class=ISymbol>gfx_quads_text</a></div></div><div class=SRResult id=SR_gfx_undscreenaspect><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenaspect" target=_parent class=ISymbol>gfx_screenaspect</a></div></div><div class=SRResult id=SR_gfx_undscreenheight><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenheight" target=_parent class=ISymbol>gfx_screenheight</a></div></div><div class=SRResult id=SR_gfx_undscreenshot><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenshot" target=_parent class=ISymbol>gfx_screenshot</a></div></div><div class=SRResult id=SR_gfx_undscreenwidth><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenwidth" target=_parent class=ISymbol>gfx_screenwidth</a></div></div><div class=SRResult id=SR_gfx_undsetcolor><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_setcolor" target=_parent class=ISymbol>gfx_setcolor</a></div></div><div class=SRResult id=SR_gfx_undsetcolorvertex><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_setcolorvertex" target=_parent class=ISymbol>gfx_setcolorvertex</a></div></div><div class=SRResult id=SR_gfx_undtext><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text" target=_parent class=ISymbol>gfx_text</a></div></div><div class=SRResult id=SR_gfx_undtext_undcolor><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text_color" target=_parent class=ISymbol>gfx_text_color</a></div></div><div class=SRResult id=SR_gfx_undtext_undset_unddefault_undfont><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text_set_default_font" target=_parent class=ISymbol>gfx_text_set_default_font</a></div></div><div class=SRResult id=SR_gfx_undtext_undwidth><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text_width" target=_parent class=ISymbol>gfx_text_width</a></div></div><div class=SRResult id=SR_gfx_undtexture_undset><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_texture_set" target=_parent class=ISymbol>gfx_texture_set</a></div></div><div class=SRResult id=SR_gfx_undunload_undtexture><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_unload_texture" target=_parent class=ISymbol>gfx_unload_texture</a></div></div><div class=SRResult id=SR_Graphics><div class=IEntry><a href="../files2/e_if_gfx-h.html#Graphics" target=_parent class=ISymbol>Graphics</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
+<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/gamecontroller-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/gameworld-hpp.html#Game_World" target=_parent class=ISymbol>Game World</a></div></div><div class=SRResult id=SR_gfx_undblend_undadditive><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_blend_additive" target=_parent class=ISymbol>gfx_blend_additive</a></div></div><div class=SRResult id=SR_gfx_undblend_undnone><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_blend_none" target=_parent class=ISymbol>gfx_blend_none</a></div></div><div class=SRResult id=SR_gfx_undblend_undnormal><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_blend_normal" target=_parent class=ISymbol>gfx_blend_normal</a></div></div><div class=SRResult id=SR_gfx_undclear><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_clear" target=_parent class=ISymbol>gfx_clear</a></div></div><div class=SRResult id=SR_gfx_undclip_unddisable><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_clip_disable" target=_parent class=ISymbol>gfx_clip_disable</a></div></div><div class=SRResult id=SR_gfx_undclip_undenable><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_clip_enable" target=_parent class=ISymbol>gfx_clip_enable</a></div></div><div class=SRResult id=SR_gfx_undget_undvideo_undmodes><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_get_video_modes" target=_parent class=ISymbol>gfx_get_video_modes</a></div></div><div class=SRResult id=SR_gfx_undgetscreen><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_getscreen" target=_parent class=ISymbol>gfx_getscreen</a></div></div><div class=SRResult id=SR_gfx_undlines_undbegin><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_lines_begin" target=_parent class=ISymbol>gfx_lines_begin</a></div></div><div class=SRResult id=SR_gfx_undlines_unddraw><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_lines_draw" target=_parent class=ISymbol>gfx_lines_draw</a></div></div><div class=SRResult id=SR_gfx_undlines_undend><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_lines_end" target=_parent class=ISymbol>gfx_lines_end</a></div></div><div class=SRResult id=SR_gfx_undload_undpng><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_load_png" target=_parent class=ISymbol>gfx_load_png</a></div></div><div class=SRResult id=SR_gfx_undload_undtexture><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_load_texture" target=_parent class=ISymbol>gfx_load_texture</a></div></div><div class=SRResult id=SR_gfx_undload_undtexture_undraw><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_load_texture_raw" target=_parent class=ISymbol>gfx_load_texture_raw</a></div></div><div class=SRResult id=SR_gfx_undmapscreen><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_mapscreen" target=_parent class=ISymbol>gfx_mapscreen</a></div></div><div class=SRResult id=SR_gfx_undmemory_undusage><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_memory_usage" target=_parent class=ISymbol>gfx_memory_usage</a></div></div><div class=SRResult id=SR_gfx_undminimize><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_minimize" target=_parent class=ISymbol>gfx_minimize</a></div></div><div class=SRResult id=SR_gfx_undquads_undbegin><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_begin" target=_parent class=ISymbol>gfx_quads_begin</a></div></div><div class=SRResult id=SR_gfx_undquads_unddraw><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_draw" target=_parent class=ISymbol>gfx_quads_draw</a></div></div><div class=SRResult id=SR_gfx_undquads_unddraw_undfreeform><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_draw_freeform" target=_parent class=ISymbol>gfx_quads_draw_freeform</a></div></div><div class=SRResult id=SR_gfx_undquads_unddrawTL><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_drawTL" target=_parent class=ISymbol>gfx_quads_drawTL</a></div></div><div class=SRResult id=SR_gfx_undquads_undend><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_end" target=_parent class=ISymbol>gfx_quads_end</a></div></div><div class=SRResult id=SR_gfx_undquads_undsetrotation><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_setrotation" target=_parent class=ISymbol>gfx_quads_setrotation</a></div></div><div class=SRResult id=SR_gfx_undquads_undsetsubset><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_setsubset" target=_parent class=ISymbol>gfx_quads_setsubset</a></div></div><div class=SRResult id=SR_gfx_undquads_undsetsubset_undfree><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_setsubset_free" target=_parent class=ISymbol>gfx_quads_setsubset_free</a></div></div><div class=SRResult id=SR_gfx_undquads_undtext><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_quads_text" target=_parent class=ISymbol>gfx_quads_text</a></div></div><div class=SRResult id=SR_gfx_undscreenaspect><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenaspect" target=_parent class=ISymbol>gfx_screenaspect</a></div></div><div class=SRResult id=SR_gfx_undscreenheight><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenheight" target=_parent class=ISymbol>gfx_screenheight</a></div></div><div class=SRResult id=SR_gfx_undscreenshot><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenshot" target=_parent class=ISymbol>gfx_screenshot</a></div></div><div class=SRResult id=SR_gfx_undscreenshot_unddirect><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenshot_direct" target=_parent class=ISymbol>gfx_screenshot_direct</a></div></div><div class=SRResult id=SR_gfx_undscreenwidth><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_screenwidth" target=_parent class=ISymbol>gfx_screenwidth</a></div></div><div class=SRResult id=SR_gfx_undsetcolor><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_setcolor" target=_parent class=ISymbol>gfx_setcolor</a></div></div><div class=SRResult id=SR_gfx_undsetcolorvertex><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_setcolorvertex" target=_parent class=ISymbol>gfx_setcolorvertex</a></div></div><div class=SRResult id=SR_gfx_undtext><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text" target=_parent class=ISymbol>gfx_text</a></div></div><div class=SRResult id=SR_gfx_undtext_undcolor><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text_color" target=_parent class=ISymbol>gfx_text_color</a></div></div><div class=SRResult id=SR_gfx_undtext_undset_unddefault_undfont><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text_set_default_font" target=_parent class=ISymbol>gfx_text_set_default_font</a></div></div><div class=SRResult id=SR_gfx_undtext_undwidth><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_text_width" target=_parent class=ISymbol>gfx_text_width</a></div></div><div class=SRResult id=SR_gfx_undtexture_undset><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_texture_set" target=_parent class=ISymbol>gfx_texture_set</a></div></div><div class=SRResult id=SR_gfx_undunload_undtexture><div class=IEntry><a href="../files2/e_if_gfx-h.html#gfx_unload_texture" target=_parent class=ISymbol>gfx_unload_texture</a></div></div><div class=SRResult id=SR_Graphics><div class=IEntry><a href="../files2/e_if_gfx-h.html#Graphics" target=_parent class=ISymbol>Graphics</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");
diff --git a/docs/output/search/GeneralH.html b/docs/output/search/GeneralH.html
index 040aae73..bad336d6 100644
--- a/docs/output/search/GeneralH.html
+++ b/docs/output/search/GeneralH.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<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"><!--
+<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><div class=SRResult id=SR_huffman_undcompress><div class=IEntry><a href="../files2/e_huffman-h.html#huffman_compress" target=_parent class=ISymbol>huffman_compress</a></div></div><div class=SRResult id=SR_huffman_unddecompress><div class=IEntry><a href="../files2/e_huffman-h.html#huffman_decompress" target=_parent class=ISymbol>huffman_decompress</a></div></div><div class=SRResult id=SR_huffman_undinit><div class=IEntry><a href="../files2/e_huffman-h.html#huffman_init" target=_parent class=ISymbol>huffman_init</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");
diff --git a/docs/output/search/GeneralI.html b/docs/output/search/GeneralI.html
index b421abe4..880ca801 100644
--- a/docs/output/search/GeneralI.html
+++ b/docs/output/search/GeneralI.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<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_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_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><div class=SRResult id=SR_In_spcdepth><div class=IEntry><a href="../files2/docs/snapshots-txt.html#In_depth" target=_parent class=ISymbol>In depth</a></div></div><div class=SRResult id=SR_Init><div class=IEntry><a href="../files2/docs/server_op-txt.html#Init" target=_parent class=ISymbol>Init</a></div></div><div class=SRResult id=SR_inp_undclear_undevents><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_clear_events" target=_parent class=ISymbol>inp_clear_events</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undclear_undkey_undstates><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_clear_key_states" target=_parent class=ISymbol>inp_clear_key_states</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undget_undevent><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_get_event" target=_parent class=ISymbol>inp_get_event</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undcode><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_code" target=_parent class=ISymbol>inp_key_code</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_unddown><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_down" target=_parent class=ISymbol>inp_key_down</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undname><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_name" target=_parent class=ISymbol>inp_key_name</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undpressed><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_pressed" target=_parent class=ISymbol>inp_key_pressed</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undpresses><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_presses" target=_parent class=ISymbol>inp_key_presses</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undreleases><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_releases" target=_parent class=ISymbol>inp_key_releases</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undstate><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_state" target=_parent class=ISymbol>inp_key_state</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undwas_undpressed><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_was_pressed" target=_parent class=ISymbol>inp_key_was_pressed</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undmouse_unddoubleclick><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_mouse_doubleclick" target=_parent class=ISymbol>inp_mouse_doubleclick</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undmouse_undrelative><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_mouse_relative" target=_parent class=ISymbol>inp_mouse_relative</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undmouse_undscroll><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_mouse_scroll" target=_parent class=ISymbol>inp_mouse_scroll</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undnum_undevents><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_num_events" target=_parent class=ISymbol>inp_num_events</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_Input><div class=IEntry><a href="../files2/e_if_inp-h.html#Input" target=_parent class=ISymbol>Input</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><div class=SRResult id=SR_insert_undentity><div class=IEntry><a href="../files/server/gs_common-hpp.html#Game_World.insert_entity" target=_parent class=ISymbol>insert_entity</a>, <span class=IParent>Game World</span></div></div><div class=SRResult id=SR_Inspection><div class=IEntry><a href="../files2/docs/snapshots-txt.html#Inspection" target=_parent class=ISymbol>Inspection</a></div></div><div class=SRResult id=SR_interserct_undcharacter><div class=IEntry><a href="../files/server/gs_common-hpp.html#Game_World.interserct_character" target=_parent class=ISymbol>interserct_character</a>, <span class=IParent>Game World</span></div></div><div class=SRResult id=SR_Interval><div class=IEntry><a href="../files2/docs/snapshots-txt.html#Interval" target=_parent class=ISymbol>Interval</a></div></div><div class=SRResult id=SR_io_undclose><div class=IEntry><a href="../files2/e_system-h.html#io_close" target=_parent class=ISymbol>io_close</a></div></div><div class=SRResult id=SR_io_undflush><div class=IEntry><a href="../files2/e_system-h.html#io_flush" target=_parent class=ISymbol>io_flush</a></div></div><div class=SRResult id=SR_io_undlength><div class=IEntry><a href="../files2/e_system-h.html#io_length" target=_parent class=ISymbol>io_length</a></div></div><div class=SRResult id=SR_io_undopen><div class=IEntry><a href="../files2/e_system-h.html#io_open" target=_parent class=ISymbol>io_open</a></div></div><div class=SRResult id=SR_io_undread><div class=IEntry><a href="../files2/e_system-h.html#io_read" target=_parent class=ISymbol>io_read</a></div></div><div class=SRResult id=SR_io_undseek><div class=IEntry><a href="../files2/e_system-h.html#io_seek" target=_parent class=ISymbol>io_seek</a></div></div><div class=SRResult id=SR_io_undskip><div class=IEntry><a href="../files2/e_system-h.html#io_skip" target=_parent class=ISymbol>io_skip</a></div></div><div class=SRResult id=SR_io_undstderr><div class=IEntry><a href="../files2/e_system-h.html#io_stderr" target=_parent class=ISymbol>io_stderr</a></div></div><div class=SRResult id=SR_io_undstdin><div class=IEntry><a href="../files2/e_system-h.html#io_stdin" target=_parent class=ISymbol>io_stdin</a></div></div><div class=SRResult id=SR_io_undstdout><div class=IEntry><a href="../files2/e_system-h.html#io_stdout" target=_parent class=ISymbol>io_stdout</a></div></div><div class=SRResult id=SR_io_undtell><div class=IEntry><a href="../files2/e_system-h.html#io_tell" target=_parent class=ISymbol>io_tell</a></div></div><div class=SRResult id=SR_io_undwrite><div class=IEntry><a href="../files2/e_system-h.html#io_write" target=_parent class=ISymbol>io_write</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
+<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_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_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><div class=SRResult id=SR_In_spcdepth><div class=IEntry><a href="../files2/docs/snapshots-txt.html#In_depth" target=_parent class=ISymbol>In depth</a></div></div><div class=SRResult id=SR_Init><div class=IEntry><a href="../files2/docs/server_op-txt.html#Init" target=_parent class=ISymbol>Init</a></div></div><div class=SRResult id=SR_inp_undclear_undevents><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_clear_events" target=_parent class=ISymbol>inp_clear_events</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undclear_undkey_undstates><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_clear_key_states" target=_parent class=ISymbol>inp_clear_key_states</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undget_undevent><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_get_event" target=_parent class=ISymbol>inp_get_event</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undcode><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_code" target=_parent class=ISymbol>inp_key_code</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_unddown><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_down" target=_parent class=ISymbol>inp_key_down</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undname><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_name" target=_parent class=ISymbol>inp_key_name</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undpressed><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_pressed" target=_parent class=ISymbol>inp_key_pressed</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undpresses><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_presses" target=_parent class=ISymbol>inp_key_presses</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undreleases><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_releases" target=_parent class=ISymbol>inp_key_releases</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undstate><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_state" target=_parent class=ISymbol>inp_key_state</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undkey_undwas_undpressed><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_key_was_pressed" target=_parent class=ISymbol>inp_key_was_pressed</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undmouse_unddoubleclick><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_mouse_doubleclick" target=_parent class=ISymbol>inp_mouse_doubleclick</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undmouse_undrelative><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_mouse_relative" target=_parent class=ISymbol>inp_mouse_relative</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undmouse_undscroll><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_mouse_scroll" target=_parent class=ISymbol>inp_mouse_scroll</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_inp_undnum_undevents><div class=IEntry><a href="../files2/e_if_inp-h.html#INPUT_EVENT.inp_num_events" target=_parent class=ISymbol>inp_num_events</a>, <span class=IParent>INPUT_EVENT</span></div></div><div class=SRResult id=SR_Input><div class=IEntry><a href="../files2/e_if_inp-h.html#Input" target=_parent class=ISymbol>Input</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><div class=SRResult id=SR_insert_undentity><div class=IEntry><a href="../files/server/gameworld-hpp.html#Game_World.insert_entity" target=_parent class=ISymbol>insert_entity</a>, <span class=IParent>Game World</span></div></div><div class=SRResult id=SR_Inspection><div class=IEntry><a href="../files2/docs/snapshots-txt.html#Inspection" target=_parent class=ISymbol>Inspection</a></div></div><div class=SRResult id=SR_interserct_undcharacter><div class=IEntry><a href="../files/server/gameworld-hpp.html#Game_World.interserct_character" target=_parent class=ISymbol>interserct_character</a>, <span class=IParent>Game World</span></div></div><div class=SRResult id=SR_Interval><div class=IEntry><a href="../files2/docs/snapshots-txt.html#Interval" target=_parent class=ISymbol>Interval</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");
diff --git a/docs/output/search/GeneralL.html b/docs/output/search/GeneralL.html
index 2e699c98..c99bccf3 100644
--- a/docs/output/search/GeneralL.html
+++ b/docs/output/search/GeneralL.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<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"><!--
+<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></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");
diff --git a/docs/output/search/GeneralM.html b/docs/output/search/GeneralM.html
index 014ae1d3..867ab5cb 100644
--- a/docs/output/search/GeneralM.html
+++ b/docs/output/search/GeneralM.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Map><div class=IEntry><a href="../files2/e_if_other-h.html#Map" target=_parent class=ISymbol>Map</a></div></div><div class=SRResult id=SR_map_undfind_unditem><div class=IEntry><a href="../files2/e_if_other-h.html#map_find_item" target=_parent class=ISymbol>map_find_item</a></div></div><div class=SRResult id=SR_map_undget_unddata><div class=IEntry><a href="../files2/e_if_other-h.html#map_get_data" target=_parent class=ISymbol>map_get_data</a></div></div><div class=SRResult id=SR_map_undget_unddata_undswapped><div class=IEntry><a href="../files2/e_if_other-h.html#map_get_data_swapped" target=_parent class=ISymbol>map_get_data_swapped</a></div></div><div class=SRResult id=SR_map_undget_unditem><div class=IEntry><a href="../files2/e_if_other-h.html#map_get_item" target=_parent class=ISymbol>map_get_item</a></div></div><div class=SRResult id=SR_map_undget_undtype><div class=IEntry><a href="../files2/e_if_other-h.html#map_get_type" target=_parent class=ISymbol>map_get_type</a></div></div><div class=SRResult id=SR_map_undis_undloaded><div class=IEntry><a href="../files2/e_if_other-h.html#map_is_loaded" target=_parent class=ISymbol>map_is_loaded</a></div></div><div class=SRResult id=SR_map_undnum_unditems><div class=IEntry><a href="../files2/e_if_other-h.html#map_num_items" target=_parent class=ISymbol>map_num_items</a></div></div><div class=SRResult id=SR_map_undunload_unddata><div class=IEntry><a href="../files2/e_if_other-h.html#map_unload_data" target=_parent class=ISymbol>map_unload_data</a></div></div><div class=SRResult id=SR_mem_undalloc><div class=IEntry><a href="../files2/e_system-h.html#mem_alloc" target=_parent class=ISymbol>mem_alloc</a></div></div><div class=SRResult id=SR_mem_undcomp><div class=IEntry><a href="../files2/e_system-h.html#mem_comp" target=_parent class=ISymbol>mem_comp</a></div></div><div class=SRResult id=SR_mem_undcopy><div class=IEntry><a href="../files2/e_system-h.html#mem_copy" target=_parent class=ISymbol>mem_copy</a></div></div><div class=SRResult id=SR_mem_undfree><div class=IEntry><a href="../files2/e_system-h.html#mem_free" target=_parent class=ISymbol>mem_free</a></div></div><div class=SRResult id=SR_mem_undmove><div class=IEntry><a href="../files2/e_system-h.html#mem_move" target=_parent class=ISymbol>mem_move</a></div></div><div class=SRResult id=SR_mem_undzero><div class=IEntry><a href="../files2/e_system-h.html#mem_zero" target=_parent class=ISymbol>mem_zero</a></div></div><div class=SRResult id=SR_Memory><div class=IEntry><a href="../files2/e_system-h.html#Memory" target=_parent class=ISymbol>Memory</a></div></div><div class=SRResult id=SR_Messaging><div class=IEntry><a href="../files2/e_if_msg-h.html#Messaging" target=_parent class=ISymbol>Messaging</a></div></div><div class=SRResult id=SR_modc_undconnected><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_connected" target=_parent class=ISymbol>modc_connected</a></div></div><div class=SRResult id=SR_modc_undconsole_undinit><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_console_init" target=_parent class=ISymbol>modc_console_init</a></div></div><div class=SRResult id=SR_modc_undentergame><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_entergame" target=_parent class=ISymbol>modc_entergame</a></div></div><div class=SRResult id=SR_modc_undinit><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_init" target=_parent class=ISymbol>modc_init</a></div></div><div class=SRResult id=SR_modc_undmessage><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_message" target=_parent class=ISymbol>modc_message</a></div></div><div class=SRResult id=SR_modc_undnet_undversion><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_net_version" target=_parent class=ISymbol>modc_net_version</a></div></div><div class=SRResult id=SR_modc_undnewsnapshot><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_newsnapshot" target=_parent class=ISymbol>modc_newsnapshot</a></div></div><div class=SRResult id=SR_modc_undpredict><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_predict" target=_parent class=ISymbol>modc_predict</a></div></div><div class=SRResult id=SR_modc_undrcon_undline><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_rcon_line" target=_parent class=ISymbol>modc_rcon_line</a></div></div><div class=SRResult id=SR_modc_undrender><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_render" target=_parent class=ISymbol>modc_render</a></div></div><div class=SRResult id=SR_modc_undsave_undconfig><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_save_config" target=_parent class=ISymbol>modc_save_config</a></div></div><div class=SRResult id=SR_modc_undshutdown><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_shutdown" target=_parent class=ISymbol>modc_shutdown</a></div></div><div class=SRResult id=SR_modc_undsnap_undinput><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_snap_input" target=_parent class=ISymbol>modc_snap_input</a></div></div><div class=SRResult id=SR_modc_undstatechange><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_statechange" target=_parent class=ISymbol>modc_statechange</a></div></div><div class=SRResult id=SR_mods_undclient_unddirect_undinput><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_direct_input" target=_parent class=ISymbol>mods_client_direct_input</a></div></div><div class=SRResult id=SR_mods_undclient_unddrop><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_drop" target=_parent class=ISymbol>mods_client_drop</a></div></div><div class=SRResult id=SR_mods_undclient_undenter><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_enter" target=_parent class=ISymbol>mods_client_enter</a></div></div><div class=SRResult id=SR_mods_undclient_undpredicted_undinput><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_predicted_input" target=_parent class=ISymbol>mods_client_predicted_input</a></div></div><div class=SRResult id=SR_mods_undconnected><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_connected" target=_parent class=ISymbol>mods_connected</a></div></div><div class=SRResult id=SR_mods_undconsole_undinit><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_console_init" target=_parent class=ISymbol>mods_console_init</a></div></div><div class=SRResult id=SR_mods_undinit><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_init" target=_parent class=ISymbol>mods_init</a></div></div><div class=SRResult id=SR_mods_undmessage><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_message" target=_parent class=ISymbol>mods_message</a></div></div><div class=SRResult id=SR_mods_undnet_undversion><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_net_version" target=_parent class=ISymbol>mods_net_version</a></div></div><div class=SRResult id=SR_mods_undpostsnap><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_postsnap" target=_parent class=ISymbol>mods_postsnap</a></div></div><div class=SRResult id=SR_mods_undpresnap><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_presnap" target=_parent class=ISymbol>mods_presnap</a></div></div><div class=SRResult id=SR_mods_undshutdown><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_shutdown" target=_parent class=ISymbol>mods_shutdown</a></div></div><div class=SRResult id=SR_mods_undsnap><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_snap" target=_parent class=ISymbol>mods_snap</a></div></div><div class=SRResult id=SR_mods_undtick><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_tick" target=_parent class=ISymbol>mods_tick</a></div></div><div class=SRResult id=SR_mods_undversion><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_version" target=_parent class=ISymbol>mods_version</a></div></div><div class=SRResult id=SR_msg_undpack_undend><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_end" target=_parent class=ISymbol>msg_pack_end</a></div></div><div class=SRResult id=SR_msg_undpack_undint><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_int" target=_parent class=ISymbol>msg_pack_int</a></div></div><div class=SRResult id=SR_msg_undpack_undraw><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_raw" target=_parent class=ISymbol>msg_pack_raw</a></div></div><div class=SRResult id=SR_msg_undpack_undstart><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_start" target=_parent class=ISymbol>msg_pack_start</a></div></div><div class=SRResult id=SR_msg_undpack_undstring><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_string" target=_parent class=ISymbol>msg_pack_string</a></div></div><div class=SRResult id=SR_msg_undunpack_underror><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_error" target=_parent class=ISymbol>msg_unpack_error</a></div></div><div class=SRResult id=SR_msg_undunpack_undint><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_int" target=_parent class=ISymbol>msg_unpack_int</a></div></div><div class=SRResult id=SR_msg_undunpack_undraw><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_raw" target=_parent class=ISymbol>msg_unpack_raw</a></div></div><div class=SRResult id=SR_msg_undunpack_undstring><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_string" target=_parent class=ISymbol>msg_unpack_string</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Map><div class=IEntry><a href="../files2/e_if_other-h.html#Map" target=_parent class=ISymbol>Map</a></div></div><div class=SRResult id=SR_map_undfind_unditem><div class=IEntry><a href="../files2/e_if_other-h.html#map_find_item" target=_parent class=ISymbol>map_find_item</a></div></div><div class=SRResult id=SR_map_undget_unddata><div class=IEntry><a href="../files2/e_if_other-h.html#map_get_data" target=_parent class=ISymbol>map_get_data</a></div></div><div class=SRResult id=SR_map_undget_unddata_undswapped><div class=IEntry><a href="../files2/e_if_other-h.html#map_get_data_swapped" target=_parent class=ISymbol>map_get_data_swapped</a></div></div><div class=SRResult id=SR_map_undget_unditem><div class=IEntry><a href="../files2/e_if_other-h.html#map_get_item" target=_parent class=ISymbol>map_get_item</a></div></div><div class=SRResult id=SR_map_undget_undtype><div class=IEntry><a href="../files2/e_if_other-h.html#map_get_type" target=_parent class=ISymbol>map_get_type</a></div></div><div class=SRResult id=SR_map_undis_undloaded><div class=IEntry><a href="../files2/e_if_other-h.html#map_is_loaded" target=_parent class=ISymbol>map_is_loaded</a></div></div><div class=SRResult id=SR_map_undnum_unditems><div class=IEntry><a href="../files2/e_if_other-h.html#map_num_items" target=_parent class=ISymbol>map_num_items</a></div></div><div class=SRResult id=SR_map_undunload_unddata><div class=IEntry><a href="../files2/e_if_other-h.html#map_unload_data" target=_parent class=ISymbol>map_unload_data</a></div></div><div class=SRResult id=SR_Messaging><div class=IEntry><a href="../files2/e_if_msg-h.html#Messaging" target=_parent class=ISymbol>Messaging</a></div></div><div class=SRResult id=SR_modc_undconnected><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_connected" target=_parent class=ISymbol>modc_connected</a></div></div><div class=SRResult id=SR_modc_undconsole_undinit><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_console_init" target=_parent class=ISymbol>modc_console_init</a></div></div><div class=SRResult id=SR_modc_undentergame><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_entergame" target=_parent class=ISymbol>modc_entergame</a></div></div><div class=SRResult id=SR_modc_undinit><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_init" target=_parent class=ISymbol>modc_init</a></div></div><div class=SRResult id=SR_modc_undmessage><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_message" target=_parent class=ISymbol>modc_message</a></div></div><div class=SRResult id=SR_modc_undnet_undversion><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_net_version" target=_parent class=ISymbol>modc_net_version</a></div></div><div class=SRResult id=SR_modc_undnewsnapshot><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_newsnapshot" target=_parent class=ISymbol>modc_newsnapshot</a></div></div><div class=SRResult id=SR_modc_undpredict><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_predict" target=_parent class=ISymbol>modc_predict</a></div></div><div class=SRResult id=SR_modc_undrcon_undline><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_rcon_line" target=_parent class=ISymbol>modc_rcon_line</a></div></div><div class=SRResult id=SR_modc_undrender><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_render" target=_parent class=ISymbol>modc_render</a></div></div><div class=SRResult id=SR_modc_undsave_undconfig><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_save_config" target=_parent class=ISymbol>modc_save_config</a></div></div><div class=SRResult id=SR_modc_undshutdown><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_shutdown" target=_parent class=ISymbol>modc_shutdown</a></div></div><div class=SRResult id=SR_modc_undsnap_undinput><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_snap_input" target=_parent class=ISymbol>modc_snap_input</a></div></div><div class=SRResult id=SR_modc_undstatechange><div class=IEntry><a href="../files2/e_if_modc-h.html#modc_statechange" target=_parent class=ISymbol>modc_statechange</a></div></div><div class=SRResult id=SR_mods_undclient_unddirect_undinput><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_direct_input" target=_parent class=ISymbol>mods_client_direct_input</a></div></div><div class=SRResult id=SR_mods_undclient_unddrop><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_drop" target=_parent class=ISymbol>mods_client_drop</a></div></div><div class=SRResult id=SR_mods_undclient_undenter><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_enter" target=_parent class=ISymbol>mods_client_enter</a></div></div><div class=SRResult id=SR_mods_undclient_undpredicted_undinput><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_client_predicted_input" target=_parent class=ISymbol>mods_client_predicted_input</a></div></div><div class=SRResult id=SR_mods_undconnected><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_connected" target=_parent class=ISymbol>mods_connected</a></div></div><div class=SRResult id=SR_mods_undconsole_undinit><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_console_init" target=_parent class=ISymbol>mods_console_init</a></div></div><div class=SRResult id=SR_mods_undinit><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_init" target=_parent class=ISymbol>mods_init</a></div></div><div class=SRResult id=SR_mods_undmessage><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_message" target=_parent class=ISymbol>mods_message</a></div></div><div class=SRResult id=SR_mods_undnet_undversion><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_net_version" target=_parent class=ISymbol>mods_net_version</a></div></div><div class=SRResult id=SR_mods_undpostsnap><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_postsnap" target=_parent class=ISymbol>mods_postsnap</a></div></div><div class=SRResult id=SR_mods_undpresnap><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_presnap" target=_parent class=ISymbol>mods_presnap</a></div></div><div class=SRResult id=SR_mods_undshutdown><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_shutdown" target=_parent class=ISymbol>mods_shutdown</a></div></div><div class=SRResult id=SR_mods_undsnap><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_snap" target=_parent class=ISymbol>mods_snap</a></div></div><div class=SRResult id=SR_mods_undtick><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_tick" target=_parent class=ISymbol>mods_tick</a></div></div><div class=SRResult id=SR_mods_undversion><div class=IEntry><a href="../files2/e_if_mods-h.html#mods_version" target=_parent class=ISymbol>mods_version</a></div></div><div class=SRResult id=SR_msg_undpack_undend><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_end" target=_parent class=ISymbol>msg_pack_end</a></div></div><div class=SRResult id=SR_msg_undpack_undint><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_int" target=_parent class=ISymbol>msg_pack_int</a></div></div><div class=SRResult id=SR_msg_undpack_undraw><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_raw" target=_parent class=ISymbol>msg_pack_raw</a></div></div><div class=SRResult id=SR_msg_undpack_undstart><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_start" target=_parent class=ISymbol>msg_pack_start</a></div></div><div class=SRResult id=SR_msg_undpack_undstring><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_pack_string" target=_parent class=ISymbol>msg_pack_string</a></div></div><div class=SRResult id=SR_msg_undunpack_underror><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_error" target=_parent class=ISymbol>msg_unpack_error</a></div></div><div class=SRResult id=SR_msg_undunpack_undint><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_int" target=_parent class=ISymbol>msg_unpack_int</a></div></div><div class=SRResult id=SR_msg_undunpack_undraw><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_raw" target=_parent class=ISymbol>msg_unpack_raw</a></div></div><div class=SRResult id=SR_msg_undunpack_undstring><div class=IEntry><a href="../files2/e_if_msg-h.html#msg_unpack_string" target=_parent class=ISymbol>msg_unpack_string</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");
diff --git a/docs/output/search/GeneralN.html b/docs/output/search/GeneralN.html
index 97c92b18..3cfa2b02 100644
--- a/docs/output/search/GeneralN.html
+++ b/docs/output/search/GeneralN.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<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"><!--
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><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");
diff --git a/docs/output/search/GeneralO.html b/docs/output/search/GeneralO.html
index 1e3cdf5f..3095baa1 100644
--- a/docs/output/search/GeneralO.html
+++ b/docs/output/search/GeneralO.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<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"><!--
+<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/gamecontroller-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/gamecontroller-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/gamecontroller-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_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");
diff --git a/docs/output/search/GeneralP.html b/docs/output/search/GeneralP.html
index 9e1de0c6..0475a904 100644
--- a/docs/output/search/GeneralP.html
+++ b/docs/output/search/GeneralP.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<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"><!--
+<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/entity-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/entity-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");
diff --git a/docs/output/search/GeneralR.html b/docs/output/search/GeneralR.html
index c239c5ae..a55d7490 100644
--- a/docs/output/search/GeneralR.html
+++ b/docs/output/search/GeneralR.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<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"><!--
+<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/gameworld-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/entity-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");
diff --git a/docs/output/search/GeneralS.html b/docs/output/search/GeneralS.html
index 434ad929..2b4e0a73 100644
--- a/docs/output/search/GeneralS.html
+++ b/docs/output/search/GeneralS.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Server_spcBrowser><div class=IEntry><a href="../files2/e_if_client-h.html#Server_Browser" target=_parent class=ISymbol>Server Browser</a></div></div><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><div class=SRResult id=SR_Server_spcHooks><div class=IEntry><a href="../files2/e_if_mods-h.html#Server_Hooks" target=_parent class=ISymbol>Server Hooks</a></div></div><div class=SRResult id=SR_Server_spcInterface><div class=IEntry><a href="../files2/e_if_server-h.html#Server_Interface" target=_parent class=ISymbol>Server Interface</a></div></div><div class=SRResult id=SR_Server_spcOperation><div class=IEntry><a href="../files2/docs/server_op-txt.html#Server_Operation" target=_parent class=ISymbol>Server Operation</a></div></div><div class=SRResult id=SR_Server_spcSide><div class=IEntry><a href="../files2/docs/snapshots-txt.html#Server_Side" target=_parent class=ISymbol>Server Side</a></div></div><div class=SRResult id=SR_server_undclientname><div class=IEntry><a href="../files2/e_if_server-h.html#server_clientname" target=_parent class=ISymbol>server_clientname</a></div></div><div class=SRResult id=SR_server_undgetclientinfo><div class=IEntry><a href="../files2/e_if_server-h.html#server_getclientinfo" target=_parent class=ISymbol>server_getclientinfo</a></div></div><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_server_undkick><div class=IEntry><a href="../files2/e_if_server-h.html#server_kick" target=_parent class=ISymbol>server_kick</a></div></div><div class=SRResult id=SR_server_undlatestinput><div class=IEntry><a href="../files2/e_if_server-h.html#server_latestinput" target=_parent class=ISymbol>server_latestinput</a></div></div><div class=SRResult id=SR_server_undsend_undmsg><div class=IEntry><a href="../files2/e_if_other-h.html#server_send_msg" target=_parent class=ISymbol>server_send_msg</a></div></div><div class=SRResult id=SR_server_undsetbrowseinfo><div class=IEntry><a href="../files2/e_if_server-h.html#server_setbrowseinfo" target=_parent class=ISymbol>server_setbrowseinfo</a></div></div><div class=SRResult id=SR_server_undsetclientname><div class=IEntry><a href="../files2/e_if_server-h.html#server_setclientname" target=_parent class=ISymbol>server_setclientname</a></div></div><div class=SRResult id=SR_server_undsetclientscore><div class=IEntry><a href="../files2/e_if_server-h.html#server_setclientscore" target=_parent class=ISymbol>server_setclientscore</a></div></div><div class=SRResult id=SR_server_undtick><div class=IEntry><a href="../files2/e_if_server-h.html#server_tick" target=_parent class=ISymbol>server_tick</a></div></div><div class=SRResult id=SR_server_undtickspeed><div class=IEntry><a href="../files2/e_if_server-h.html#server_tickspeed" target=_parent class=ISymbol>server_tickspeed</a></div></div><div class=SRResult id=SR_Shutdown><div class=IEntry><a href="../files2/docs/server_op-txt.html#Shutdown" target=_parent class=ISymbol>Shutdown</a></div></div><div class=SRResult id=SR_snap><div class=IEntry><a href="javascript:searchResults.Toggle('SR_snap')" class=ISymbol>snap</a><div class=ISubIndex><a href="../files/server/gs_common-hpp.html#Entity.snap" target=_parent class=IParent>Entity</a><a href="../files/server/gs_common-hpp.html#Game_World.snap" target=_parent class=IParent>Game World</a></div></div></div><div class=SRResult id=SR_snap_undfind_unditem><div class=IEntry><a href="../files2/e_if_other-h.html#snap_find_item" target=_parent class=ISymbol>snap_find_item</a></div></div><div class=SRResult id=SR_snap_undfree_undid><div class=IEntry><a href="../files2/e_if_other-h.html#snap_free_id" target=_parent class=ISymbol>snap_free_id</a></div></div><div class=SRResult id=SR_snap_undget_unditem><div class=IEntry><a href="../files2/e_if_other-h.html#snap_get_item" target=_parent class=ISymbol>snap_get_item</a></div></div><div class=SRResult id=SR_snap_undinput><div class=IEntry><a href="../files2/e_if_other-h.html#snap_input" target=_parent class=ISymbol>snap_input</a></div></div><div class=SRResult id=SR_snap_undinvalidate_unditem><div class=IEntry><a href="../files2/e_if_other-h.html#snap_invalidate_item" target=_parent class=ISymbol>snap_invalidate_item</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><div class=SRResult id=SR_snap_undnew_undid><div class=IEntry><a href="../files2/e_if_other-h.html#snap_new_id" target=_parent class=ISymbol>snap_new_id</a></div></div><div class=SRResult id=SR_snap_undnew_unditem><div class=IEntry><a href="../files2/e_if_other-h.html#snap_new_item" target=_parent class=ISymbol>snap_new_item</a></div></div><div class=SRResult id=SR_snap_undnum_unditems><div class=IEntry><a href="../files2/e_if_other-h.html#snap_num_items" target=_parent class=ISymbol>snap_num_items</a></div></div><div class=SRResult id=SR_snap_undset_undstaticsize><div class=IEntry><a href="../files2/e_if_other-h.html#snap_set_staticsize" target=_parent class=ISymbol>snap_set_staticsize</a></div></div><div class=SRResult id=SR_Snapshots><div class=IEntry><a href="../files2/docs/snapshots-txt.html#Snapshots" target=_parent class=ISymbol>Snapshots</a></div></div><div class=SRResult id=SR_snd_undload_undwv><div class=IEntry><a href="../files2/e_if_snd-h.html#snd_load_wv" target=_parent class=ISymbol>snd_load_wv</a></div></div><div class=SRResult id=SR_snd_undplay><div class=IEntry><a href="../files2/e_if_snd-h.html#snd_play" target=_parent class=ISymbol>snd_play</a></div></div><div class=SRResult id=SR_snd_undplay_undat><div class=IEntry><a href="../files2/e_if_snd-h.html#snd_play_at" target=_parent class=ISymbol>snd_play_at</a></div></div><div class=SRResult id=SR_snd_undset_undchannel><div class=IEntry><a href="../files2/e_if_snd-h.html#snd_set_channel" target=_parent class=ISymbol>snd_set_channel</a></div></div><div class=SRResult id=SR_snd_undset_undlistener_undpos><div class=IEntry><a href="../files2/e_if_snd-h.html#snd_set_listener_pos" target=_parent class=ISymbol>snd_set_listener_pos</a></div></div><div class=SRResult id=SR_snd_undstop><div class=IEntry><a href="../files2/e_if_snd-h.html#snd_stop" target=_parent class=ISymbol>snd_stop</a></div></div><div class=SRResult id=SR_Sound><div class=IEntry><a href="../files2/e_if_snd-h.html#Sound" target=_parent class=ISymbol>Sound</a></div></div><div class=SRResult id=SR_str_undappend><div class=IEntry><a href="../files2/e_system-h.html#str_append" target=_parent class=ISymbol>str_append</a></div></div><div class=SRResult id=SR_str_undcomp_undnocase><div class=IEntry><a href="../files2/e_system-h.html#str_comp_nocase" target=_parent class=ISymbol>str_comp_nocase</a></div></div><div class=SRResult id=SR_str_undcopy><div class=IEntry><a href="../files2/e_system-h.html#str_copy" target=_parent class=ISymbol>str_copy</a></div></div><div class=SRResult id=SR_str_undfind_undnocase><div class=IEntry><a href="../files2/e_system-h.html#str_find_nocase" target=_parent class=ISymbol>str_find_nocase</a></div></div><div class=SRResult id=SR_str_undformat><div class=IEntry><a href="../files2/e_system-h.html#str_format" target=_parent class=ISymbol>str_format</a></div></div><div class=SRResult id=SR_str_undhex><div class=IEntry><a href="../files2/e_system-h.html#str_hex" target=_parent class=ISymbol>str_hex</a></div></div><div class=SRResult id=SR_str_undsanitize><div class=IEntry><a href="../files2/e_system-h.html#str_sanitize" target=_parent class=ISymbol>str_sanitize</a></div></div><div class=SRResult id=SR_str_undsanitize_undstrong><div class=IEntry><a href="../files2/e_system-h.html#str_sanitize_strong" target=_parent class=ISymbol>str_sanitize_strong</a></div></div><div class=SRResult id=SR_Strings><div class=IEntry><a href="../files2/e_system-h.html#Strings" target=_parent class=ISymbol>Strings</a></div></div><div class=SRResult id=SR_Structure><div class=IEntry><a href="../files2/docs/snapshots-txt.html#Structure" target=_parent class=ISymbol>Structure</a></div></div><div class=SRResult id=SR_Structures><div class=IEntry><a href="javascript:searchResults.Toggle('SR_Structures')" class=ISymbol>Structures</a><div class=ISubIndex><a href="../files2/e_if_client-h.html#Structures" target=_parent class=IFile>e_if_client.h</a><a href="../files2/e_if_gfx-h.html#Structures" target=_parent class=IFile>e_if_gfx.h</a></div></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
+<div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Server_spcBrowser><div class=IEntry><a href="../files2/e_if_client-h.html#Server_Browser" target=_parent class=ISymbol>Server Browser</a></div></div><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><div class=SRResult id=SR_Server_spcHooks><div class=IEntry><a href="../files2/e_if_mods-h.html#Server_Hooks" target=_parent class=ISymbol>Server Hooks</a></div></div><div class=SRResult id=SR_Server_spcInterface><div class=IEntry><a href="../files2/e_if_server-h.html#Server_Interface" target=_parent class=ISymbol>Server Interface</a></div></div><div class=SRResult id=SR_Server_spcOperation><div class=IEntry><a href="../files2/docs/server_op-txt.html#Server_Operation" target=_parent class=ISymbol>Server Operation</a></div></div><div class=SRResult id=SR_Server_spcSide><div class=IEntry><a href="../files2/docs/snapshots-txt.html#Server_Side" target=_parent class=ISymbol>Server Side</a></div></div><div class=SRResult id=SR_server_undclientname><div class=IEntry><a href="../files2/e_if_server-h.html#server_clientname" target=_parent class=ISymbol>server_clientname</a></div></div><div class=SRResult id=SR_server_undgetclientinfo><div class=IEntry><a href="../files2/e_if_server-h.html#server_getclientinfo" target=_parent class=ISymbol>server_getclientinfo</a></div></div><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_server_undkick><div class=IEntry><a href="../files2/e_if_server-h.html#server_kick" target=_parent class=ISymbol>server_kick</a></div></div><div class=SRResult id=SR_server_undlatestinput><div class=IEntry><a href="../files2/e_if_server-h.html#server_latestinput" target=_parent class=ISymbol>server_latestinput</a></div></div><div class=SRResult id=SR_server_undsend_undmsg><div class=IEntry><a href="../files2/e_if_other-h.html#server_send_msg" target=_parent class=ISymbol>server_send_msg</a></div></div><div class=SRResult id=SR_server_undsetbrowseinfo><div class=IEntry><a href="../files2/e_if_server-h.html#server_setbrowseinfo" target=_parent class=ISymbol>server_setbrowseinfo</a></div></div><div class=SRResult id=SR_server_undsetclientname><div class=IEntry><a href="../files2/e_if_server-h.html#server_setclientname" target=_parent class=ISymbol>server_setclientname</a></div></div><div class=SRResult id=SR_server_undsetclientscore><div class=IEntry><a href="../files2/e_if_server-h.html#server_setclientscore" target=_parent class=ISymbol>server_setclientscore</a></div></div><div class=SRResult id=SR_server_undtick><div class=IEntry><a href="../files2/e_if_server-h.html#server_tick" target=_parent class=ISymbol>server_tick</a></div></div><div class=SRResult id=SR_server_undtickspeed><div class=IEntry><a href="../files2/e_if_server-h.html#server_tickspeed" target=_parent class=ISymbol>server_tickspeed</a></div></div><div class=SRResult id=SR_Shutdown><div class=IEntry><a href="../files2/docs/server_op-txt.html#Shutdown" target=_parent class=ISymbol>Shutdown</a></div></div><div class=SRResult id=SR_snap><div class=IEntry><a href="javascript:searchResults.Toggle('SR_snap')" class=ISymbol>snap</a><div class=ISubIndex><a href="../files/server/entity-hpp.html#Entity.snap" target=_parent class=IParent>Entity</a><a href="../files/server/gameworld-hpp.html#Game_World.snap" target=_parent class=IParent>Game World</a></div></div></div><div class=SRResult id=SR_snap_undfind_unditem><div class=IEntry><a href="../files2/e_if_other-h.html#snap_find_item" target=_parent class=ISymbol>snap_find_item</a></div></div><div class=SRResult id=SR_snap_undfree_undid><div class=IEntry><a href="../files2/e_if_other-h.html#snap_free_id" target=_parent class=ISymbol>snap_free_id</a></div></div><div class=SRResult id=SR_snap_undget_unditem><div class=IEntry><a href="../files2/e_if_other-h.html#snap_get_item" target=_parent class=ISymbol>snap_get_item</a></div></div><div class=SRResult id=SR_snap_undinput><div class=IEntry><a href="../files2/e_if_other-h.html#snap_input" target=_parent class=ISymbol>snap_input</a></div></div><div class=SRResult id=SR_snap_undinvalidate_unditem><div class=IEntry><a href="../files2/e_if_other-h.html#snap_invalidate_item" target=_parent class=ISymbol>snap_invalidate_item</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><div class=SRResult id=SR_snap_undnew_undid><div class=IEntry><a href="../files2/e_if_other-h.html#snap_new_id" target=_parent class=ISymbol>snap_new_id</a></div></div><div class=SRResult id=SR_snap_undnew_unditem><div class=IEntry><a href="../files2/e_if_other-h.html#snap_new_item" target=_parent class=ISymbol>snap_new_item</a></div></div><div class=SRResult id=SR_snap_undnum_unditems><div class=IEntry><a href="../files2/e_if_other-h.html#snap_num_items" target=_parent class=ISymbol>snap_num_items</a></div></div><div class=SRResult id=SR_snap_undset_undstaticsize><div class=IEntry><a href="../files2/e_if_other-h.html#snap_set_staticsize" target=_parent class=ISymbol>snap_set_staticsize</a></div></div><div class=SRResult id=SR_Snapshots><div class=IEntry><a href="../files2/docs/snapshots-txt.html#Snapshots" target=_parent class=ISymbol>Snapshots</a></div></div><div class=SRResult id=SR_snd_undload_undwv><div class=IEntry><a href="../files2/e_if_snd-h.html#snd_load_wv" target=_parent class=ISymbol>snd_load_wv</a></div></div><div class=SRResult id=SR_snd_undplay><div class=IEntry><a href="../files2/e_if_snd-h.html#snd_play" target=_parent class=ISymbol>snd_play</a></div></div><div class=SRResult id=SR_snd_undplay_undat><div class=IEntry><a href="../files2/e_if_snd-h.html#snd_play_at" target=_parent class=ISymbol>snd_play_at</a></div></div><div class=SRResult id=SR_snd_undset_undchannel><div class=IEntry><a href="../files2/e_if_snd-h.html#snd_set_channel" target=_parent class=ISymbol>snd_set_channel</a></div></div><div class=SRResult id=SR_snd_undset_undlistener_undpos><div class=IEntry><a href="../files2/e_if_snd-h.html#snd_set_listener_pos" target=_parent class=ISymbol>snd_set_listener_pos</a></div></div><div class=SRResult id=SR_snd_undstop><div class=IEntry><a href="../files2/e_if_snd-h.html#snd_stop" target=_parent class=ISymbol>snd_stop</a></div></div><div class=SRResult id=SR_Sound><div class=IEntry><a href="../files2/e_if_snd-h.html#Sound" target=_parent class=ISymbol>Sound</a></div></div><div class=SRResult id=SR_Structure><div class=IEntry><a href="../files2/docs/snapshots-txt.html#Structure" target=_parent class=ISymbol>Structure</a></div></div><div class=SRResult id=SR_Structures><div class=IEntry><a href="javascript:searchResults.Toggle('SR_Structures')" class=ISymbol>Structures</a><div class=ISubIndex><a href="../files2/e_if_client-h.html#Structures" target=_parent class=IFile>e_if_client.h</a><a href="../files2/e_if_gfx-h.html#Structures" target=_parent class=IFile>e_if_gfx.h</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");
diff --git a/docs/output/search/GeneralT.html b/docs/output/search/GeneralT.html
index 17f46e89..3feda4e5 100644
--- a/docs/output/search/GeneralT.html
+++ b/docs/output/search/GeneralT.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<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"><!--
+<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_tick><div class=IEntry><a href="javascript:searchResults.Toggle('SR_tick')" class=ISymbol>tick</a><div class=ISubIndex><a href="../files/server/entity-hpp.html#Entity.tick" target=_parent class=IParent>Entity</a><a href="../files/server/gameworld-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/entity-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></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");
diff --git a/docs/output/search/GeneralV.html b/docs/output/search/GeneralV.html
index 23e0bb27..237da990 100644
--- a/docs/output/search/GeneralV.html
+++ b/docs/output/search/GeneralV.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<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"><!--
+<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/entity-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");
diff --git a/docs/output/search/VariablesP.html b/docs/output/search/VariablesP.html
index 5ec61d40..dd64d743 100644
--- a/docs/output/search/VariablesP.html
+++ b/docs/output/search/VariablesP.html
@@ -11,7 +11,7 @@ if (browserType) {document.write("<div class=" + browserType + ">");if (browserV
 
 
 
-<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"><!--
+<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/entity-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/entity-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");
diff --git a/src/engine/client/ec_client.c b/src/engine/client/ec_client.c
index 8d8bdad7..3e7e8c27 100644
--- a/src/engine/client/ec_client.c
+++ b/src/engine/client/ec_client.c
@@ -23,6 +23,8 @@
 
 #include <engine/e_huffman.h>
 
+#include <engine/e_demorec.h>
+
 #include <mastersrv/mastersrv.h>
 #include <versionsrv/versionsrv.h>
 
@@ -70,8 +72,13 @@ static char versionstr[10] = "0";
 /* pinging */
 static int64 ping_start_time = 0;
 
+/* */
+static char current_map[256] = {0};
+static int current_map_crc = 0;
+
 /* map download */
 static char mapdownload_filename[256] = {0};
+static char mapdownload_name[256] = {0};
 static IOHANDLE mapdownload_file = 0;
 static int mapdownload_chunk = 0;
 static int mapdownload_crc = 0;
@@ -85,7 +92,6 @@ static SERVER_INFO current_server_info = {0};
 static int current_tick = 0;
 static float intratick = 0;
 static float ticktime = 0;
-
 static int prev_tick = 0;
 
 /* predicted time */
@@ -231,6 +237,9 @@ static SNAPSTORAGE_HOLDER *snapshots[NUM_SNAPSHOT_TYPES];
 static int recived_snapshots;
 static char snapshot_incomming_data[MAX_SNAPSHOT_SIZE];
 
+static SNAPSTORAGE_HOLDER demorec_snapshotholders[NUM_SNAPSHOT_TYPES];
+static char *demorec_snapshotdata[NUM_SNAPSHOT_TYPES][2][MAX_SNAPSHOT_SIZE];
+
 /* --- */
 
 void *snap_get_item(int snapid, int index, SNAP_ITEM *item)
@@ -310,8 +319,15 @@ int client_send_msg()
 		packet.flags = NETSENDFLAG_VITAL;
 	if(info->flags&MSGFLAG_FLUSH)
 		packet.flags = NETSENDFLAG_FLUSH;
+		
+	if(info->flags&MSGFLAG_RECORD)
+	{
+		if(demorec_isrecording())
+			demorec_record_write("MESG", packet.data_size, packet.data);
+	}
 
-	netclient_send(net, &packet);
+	if(!(info->flags&MSGFLAG_NOSEND))
+		netclient_send(net, &packet);
 	return 0;
 }
 
@@ -525,6 +541,10 @@ void client_connect(const char *server_address_str)
 
 void client_disconnect_with_reason(const char *reason)
 {
+	/* stop demo playback */
+	demorec_playback_stop();
+	
+	/* */
 	rcon_authed = 0;
 	netclient_disconnect(net, reason);
 	client_set_state(CLIENTSTATE_OFFLINE);
@@ -659,7 +679,7 @@ static void client_render()
 	client_debug_render();
 }
 
-static const char *client_load_map(const char *filename, int wanted_crc)
+static const char *client_load_map(const char *name, const char *filename, int wanted_crc)
 {
 	static char errormsg[128];
 	DATAFILE *df;
@@ -676,7 +696,7 @@ static const char *client_load_map(const char *filename, int wanted_crc)
 	
 	/* get the crc of the map */
 	crc = datafile_crc(filename);
-	if(crc != wanted_crc)
+	if(0 && crc != wanted_crc) /* TODO: FIX ME!!! */
 	{
 		datafile_unload(df);
 		str_format(errormsg, sizeof(errormsg), "map differs from the server. %08x != %08x", crc, wanted_crc);
@@ -686,6 +706,10 @@ static const char *client_load_map(const char *filename, int wanted_crc)
 	dbg_msg("client", "loaded map '%s'", filename);
 	recived_snapshots = 0;
 	map_set(df);
+	
+	str_copy(current_map, name, sizeof(current_map));
+	current_map_crc = crc;
+	
 	return NULL;
 }
 
@@ -699,14 +723,14 @@ static const char *client_load_map_search(const char *mapname, int wanted_crc)
 	
 	/* try the normal maps folder */
 	str_format(buf, sizeof(buf), "maps/%s.map", mapname);
-	error = client_load_map(buf, wanted_crc);
+	error = client_load_map(mapname, buf, wanted_crc);
 	if(!error)
 		return error;
 
 	/* try the downloaded maps */
 	str_format(buf2, sizeof(buf2), "maps/%s_%8x.map", mapname, wanted_crc);
 	engine_savepath(buf2, buf, sizeof(buf));
-	error = client_load_map(buf, wanted_crc);
+	error = client_load_map(mapname, buf, wanted_crc);
 	return error;
 }
 
@@ -862,6 +886,7 @@ static void client_process_packet(NETCHUNK *packet)
 						dbg_msg("client/network", "starting to download map to '%s'", mapdownload_filename);
 						
 						mapdownload_chunk = 0;
+						str_copy(mapdownload_name, map, sizeof(mapdownload_name));
 						mapdownload_file = io_open(mapdownload_filename, IOFLAG_WRITE);
 						mapdownload_crc = map_crc;
 						mapdownload_totalsize = -1;
@@ -904,7 +929,7 @@ static void client_process_packet(NETCHUNK *packet)
 					mapdownload_totalsize = -1;
 					
 					/* load map */
-					error = client_load_map(mapdownload_filename, mapdownload_crc);
+					error = client_load_map(mapdownload_name, mapdownload_filename, mapdownload_crc);
 					if(!error)
 					{
 						dbg_msg("client/network", "loading done");
@@ -1107,6 +1132,28 @@ static void client_process_packet(NETCHUNK *packet)
 						/* add new */
 						snapstorage_add(&snapshot_storage, game_tick, time_get(), snapsize, (SNAPSHOT*)tmpbuffer3, 1);
 						
+						/* add snapshot to demo */
+						if(demorec_isrecording())
+						{
+							DEMOREC_TICKMARKER marker;
+
+							/* write tick marker */
+							marker.tick = game_tick;
+							swap_endian(&marker, sizeof(int), sizeof(marker)/sizeof(int));
+							demorec_record_write("TICK", sizeof(marker), &marker);
+							
+							/* build snap and possibly add some messages */
+							modc_recordkeyframe();
+							
+							/*
+							snapbuild_init(&builder);
+							mods_snap(-1);
+							snapshot_size = snapbuild_finish(&builder, data);*/
+							
+							/* write snapshot */
+							demorec_record_write("SNAP", snapsize, tmpbuffer3);							
+						}
+						
 						/* apply snapshot, cycle pointers */
 						recived_snapshots++;
 
@@ -1147,6 +1194,9 @@ static void client_process_packet(NETCHUNK *packet)
 		else
 		{
 			/* game message */
+			if(demorec_isrecording())
+				demorec_record_write("MESG", packet->data_size, packet->data);
+
 			modc_message(msg);
 		}
 	}
@@ -1161,20 +1211,23 @@ static void client_pump_network()
 
 	netclient_update(net);
 
-	/* check for errors */
-	if(client_state() != CLIENTSTATE_OFFLINE && netclient_state(net) == NETSTATE_OFFLINE)
+	if(client_state() != CLIENTSTATE_DEMOPLAYBACK)
 	{
-		client_set_state(CLIENTSTATE_OFFLINE);
-		dbg_msg("client", "offline error='%s'", netclient_error_string(net));
-	}
+		/* check for errors */
+		if(client_state() != CLIENTSTATE_OFFLINE && netclient_state(net) == NETSTATE_OFFLINE)
+		{
+			client_set_state(CLIENTSTATE_OFFLINE);
+			dbg_msg("client", "offline error='%s'", netclient_error_string(net));
+		}
 
-	/* */
-	if(client_state() == CLIENTSTATE_CONNECTING && netclient_state(net) == NETSTATE_ONLINE)
-	{
-		/* we switched to online */
-		dbg_msg("client", "connected, sending info");
-		client_set_state(CLIENTSTATE_LOADING);
-		client_send_info();
+		/* */
+		if(client_state() == CLIENTSTATE_CONNECTING && netclient_state(net) == NETSTATE_ONLINE)
+		{
+			/* we switched to online */
+			dbg_msg("client", "connected, sending info");
+			client_set_state(CLIENTSTATE_LOADING);
+			client_send_info();
+		}
 	}
 	
 	/* process packets */
@@ -1182,11 +1235,89 @@ static void client_pump_network()
 		client_process_packet(&packet);
 }
 
+static void client_democallback(DEMOREC_CHUNK chunk, void *data)
+{
+	/* dbg_msg("client/playback", "got %c%c%c%c", chunk.type[0], chunk.type[1], chunk.type[2], chunk.type[3]); */
+	
+	if(mem_comp(chunk.type, "SNAP", 4) == 0)
+	{
+		/* handle snapshots */
+		SNAPSTORAGE_HOLDER *temp = snapshots[SNAP_PREV];
+		snapshots[SNAP_PREV] = snapshots[SNAP_CURRENT];
+		snapshots[SNAP_CURRENT] = temp;
+		
+		mem_copy(snapshots[SNAP_CURRENT]->snap, data, chunk.size);
+		mem_copy(snapshots[SNAP_CURRENT]->alt_snap, data, chunk.size);
+		
+		modc_newsnapshot();
+		modc_predict();
+	}
+	else if(mem_comp(chunk.type, "MESG", 4) == 0)
+	{
+		/* handle messages */
+		int sys = 0;
+		int msg = msg_unpack_start(data, chunk.size, &sys);
+		if(!sys)
+			modc_message(msg);
+	}
+	
+}
+
+const DEMOPLAYBACK_INFO *client_demoplayer_getinfo()
+{
+	static DEMOPLAYBACK_INFO ret;
+	const DEMOREC_PLAYBACKINFO *info = demorec_playback_info();
+	ret.first_tick = info->first_tick;
+	ret.last_tick = info->last_tick;
+	ret.current_tick = info->current_tick;
+	ret.paused = info->paused;
+	ret.speed = info->speed;
+	return &ret;
+}
+
+void client_demoplayer_setpos(float percent)
+{
+	const DEMOREC_PLAYBACKINFO *info = demorec_playback_info();
+	int point = (int)((info->seekable_points-1)*percent);
+	demorec_playback_set(point);
+}
+
+void client_demoplayer_setspeed(float speed)
+{
+	demorec_playback_setspeed(speed);
+}
+
+void client_demoplayer_setpause(int paused)
+{
+	if(paused)
+		demorec_playback_pause();
+	else
+		demorec_playback_unpause();
+}
+
 static void client_update()
 {
-	/* switch snapshot */
-	if(client_state() != CLIENTSTATE_OFFLINE && recived_snapshots >= 3)
+	if(client_state() == CLIENTSTATE_DEMOPLAYBACK)
+	{
+		demorec_playback_update();
+		if(demorec_isplaying())
+		{
+			/* update timers */
+			const DEMOREC_PLAYBACKINFO *info = demorec_playback_info();			
+			current_tick = info->current_tick;
+			prev_tick = info->previous_tick;
+			intratick = info->intratick;
+			ticktime = info->ticktime;
+		}
+		else
+		{
+			/* disconnect on error */
+			client_disconnect();
+		}
+	}
+	else if(client_state() != CLIENTSTATE_OFFLINE && recived_snapshots >= 3)
 	{
+		/* switch snapshot */
 		int repredict = 0;
 		int64 freq = time_freq();
 		int64 now = st_get(&game_time, time_get());
@@ -1393,7 +1524,6 @@ static void client_run()
 		int64 frame_start_time = time_get();
 		frames++;
 		
-		
 		perf_start(&rootscope);
 
 		/* */
@@ -1582,6 +1712,67 @@ static void con_addfavorite(void *result, void *user_data)
 		client_serverbrowse_addfavorite(addr);
 }
 
+void client_demoplayer_play(const char *filename)
+{
+	int crc;
+	client_disconnect();
+	
+	/* try to start playback */
+	demorec_playback_registercallback(client_democallback);
+	
+	if(demorec_playback_load(filename))
+		return;
+	
+	/* load map */
+	crc = (demorec_playback_info()->header.crc[0]<<24)|
+		(demorec_playback_info()->header.crc[1]<<16)|
+		(demorec_playback_info()->header.crc[2]<<8)|
+		(demorec_playback_info()->header.crc[3]);
+	client_load_map_search(demorec_playback_info()->header.map, crc);
+	modc_connected();
+	
+	/* setup buffers */	
+	mem_zero(demorec_snapshotdata, sizeof(demorec_snapshotdata));
+
+	snapshots[SNAP_CURRENT] = &demorec_snapshotholders[SNAP_CURRENT];
+	snapshots[SNAP_PREV] = &demorec_snapshotholders[SNAP_PREV];
+	
+	snapshots[SNAP_CURRENT]->snap = (SNAPSHOT *)demorec_snapshotdata[SNAP_CURRENT][0];
+	snapshots[SNAP_CURRENT]->alt_snap = (SNAPSHOT *)demorec_snapshotdata[SNAP_CURRENT][1];
+	snapshots[SNAP_CURRENT]->snap_size = 0;
+	snapshots[SNAP_CURRENT]->tick = -1;
+	
+	snapshots[SNAP_PREV]->snap = (SNAPSHOT *)demorec_snapshotdata[SNAP_PREV][0];
+	snapshots[SNAP_PREV]->alt_snap = (SNAPSHOT *)demorec_snapshotdata[SNAP_PREV][1];
+	snapshots[SNAP_PREV]->snap_size = 0;
+	snapshots[SNAP_PREV]->tick = -1;
+
+	/* enter demo playback state */
+	client_set_state(CLIENTSTATE_DEMOPLAYBACK);
+	
+	demorec_playback_play();
+	modc_entergame();
+}
+
+static void con_play(void *result, void *user_data)
+{
+	client_demoplayer_play(console_arg_string(result, 0));
+}
+
+static void con_record(void *result, void *user_data)
+{
+	char filename[512];
+	char path[512];
+	str_format(filename, sizeof(filename), "demos/%s.demo", console_arg_string(result, 0));
+	engine_savepath(filename, path, sizeof(path));
+	demorec_record_start(path, modc_net_version(), current_map, current_map_crc, "client");
+}
+
+static void con_stoprecord(void *result, void *user_data)
+{
+	demorec_record_stop();
+}
+
 static void client_register_commands()
 {
 	MACRO_REGISTER_COMMAND("quit", "", con_quit, 0x0);
@@ -1591,6 +1782,10 @@ static void client_register_commands()
 	MACRO_REGISTER_COMMAND("screenshot", "", con_screenshot, 0x0);
 	MACRO_REGISTER_COMMAND("rcon", "r", con_rcon, 0x0);
 
+	MACRO_REGISTER_COMMAND("play", "r", con_play, 0x0);
+	MACRO_REGISTER_COMMAND("record", "s", con_record, 0);
+	MACRO_REGISTER_COMMAND("stoprecord", "", con_stoprecord, 0);
+
 	MACRO_REGISTER_COMMAND("add_favorite", "s", con_addfavorite, 0x0);
 }
 
@@ -1599,6 +1794,13 @@ void client_save_line(const char *line)
 	engine_config_write_line(line);	
 }
 
+const char *client_user_directory()
+{
+	static char path[1024] = {0};
+	fs_storage_path("Teeworlds", path, sizeof(path));
+	return path;
+}
+
 int main(int argc, char **argv)
 {
 	/* init the engine */
diff --git a/src/engine/e_demorec.c b/src/engine/e_demorec.c
new file mode 100644
index 00000000..67f7f237
--- /dev/null
+++ b/src/engine/e_demorec.c
@@ -0,0 +1,354 @@
+
+#include <base/system.h>
+#include "e_demorec.h"
+#include "e_memheap.h"
+#include "e_if_other.h"
+
+static IOHANDLE record_file = 0;
+static const unsigned char header_marker[8] = {'T', 'W', 'D', 'E', 'M', 'O', 0, 1};
+
+/* Record */
+
+int demorec_isrecording() { return record_file != 0; }
+
+int demorec_record_start(const char *filename, const char *netversion, const char *map, int crc, const char *type)
+{
+	DEMOREC_HEADER header;
+	if(record_file)
+		return -1;
+
+	record_file = io_open(filename, IOFLAG_WRITE);
+	
+	if(!record_file)
+	{
+		dbg_msg("demorec/record", "Unable to open '%s' for recording", filename);
+		return -1;
+	}
+	
+	/* write header */
+	mem_zero(&header, sizeof(header));
+	mem_copy(header.marker, header_marker, sizeof(header.marker));
+	str_copy(header.netversion, netversion, sizeof(header.netversion));
+	str_copy(header.map, map, sizeof(header.map));
+	str_copy(header.type, type, sizeof(header.type));
+	header.crc[0] = (crc>>24)&0xff;
+	header.crc[1] = (crc>>16)&0xff;
+	header.crc[2] = (crc>>8)&0xff;
+	header.crc[3] = (crc)&0xff;
+	io_write(record_file, &header, sizeof(header));
+	
+	dbg_msg("demorec/record", "Recording to '%s'", filename);
+	return 0;
+}
+
+void demorec_record_write(const char *type, int size, const void *data)
+{
+	DEMOREC_CHUNK chunk;
+	if(!record_file)
+		return;
+	
+	chunk.type[0] = type[0];
+	chunk.type[1] = type[1];
+	chunk.type[2] = type[2];
+	chunk.type[3] = type[3];
+	chunk.size = size;
+	swap_endian(&chunk.size, sizeof(int), 1);
+	io_write(record_file, &chunk, sizeof(chunk));
+	io_write(record_file, data, size);
+}
+
+int demorec_record_stop()
+{
+	if(!record_file)
+		return -1;
+		
+	dbg_msg("demorec/record", "Stopped recording");
+	io_close(record_file);
+	record_file = 0;
+	return 0;
+}
+
+/* Playback */
+
+typedef struct KEYFRAME
+{
+	long filepos;
+	int tick;
+} KEYFRAME;
+
+typedef struct KEYFRAME_SEARCH
+{
+	KEYFRAME frame;
+	struct KEYFRAME_SEARCH *next;
+} KEYFRAME_SEARCH;
+
+static IOHANDLE play_file = 0;
+static DEMOREC_PLAYCALLBACK play_callback = 0;
+static KEYFRAME *keyframes = 0;
+
+static DEMOREC_PLAYBACKINFO playbackinfo;
+const DEMOREC_PLAYBACKINFO *demorec_playback_info() { return &playbackinfo; }
+
+int demorec_isplaying() { return play_file != 0; }
+
+int demorec_playback_registercallback(DEMOREC_PLAYCALLBACK cb)
+{
+	play_callback = cb;
+	return 0;
+}
+
+static int read_chunk_header(DEMOREC_CHUNK *chunk)
+{
+	if(io_read(play_file, chunk, sizeof(*chunk)) != sizeof(*chunk))
+		return -1;
+	swap_endian(&chunk->size, sizeof(int), 1);
+	return 0;
+}
+
+static void scan_file()
+{
+	long start_pos;
+	HEAP *heap = 0;
+	KEYFRAME_SEARCH *first_key = 0;
+	KEYFRAME_SEARCH *current_key = 0;
+	DEMOREC_CHUNK chunk;
+	int i;
+	
+	heap = memheap_create();
+
+	start_pos = io_tell(play_file);
+	playbackinfo.seekable_points = 0;
+
+	while(1)
+	{
+		long current_pos = io_tell(play_file);
+
+		if(read_chunk_header(&chunk))
+			break;
+		
+		/* read the chunk */
+			
+		if(mem_comp(chunk.type, "TICK", 4) == 0)
+		{
+			KEYFRAME_SEARCH *key;
+			DEMOREC_TICKMARKER marker;
+			io_read(play_file, &marker, chunk.size);
+			swap_endian(&marker.tick, sizeof(int), 1);
+			
+			/* save the position */
+			key = memheap_allocate(heap, sizeof(KEYFRAME_SEARCH));
+			key->frame.filepos = current_pos;
+			key->frame.tick = marker.tick;
+			key->next = 0;
+			if(current_key)
+				current_key->next = key;
+			if(!first_key)
+				first_key = key;
+			current_key = key;
+			
+			if(playbackinfo.first_tick == -1)
+				playbackinfo.first_tick = marker.tick;
+			playbackinfo.last_tick = marker.tick;
+			playbackinfo.seekable_points++;
+		}
+		else
+			io_skip(play_file, chunk.size);
+	}
+
+	/* copy all the frames to an array instead for fast access */
+	keyframes = (KEYFRAME*)mem_alloc(playbackinfo.seekable_points*sizeof(KEYFRAME), 1);
+	for(current_key = first_key, i = 0; current_key; current_key = current_key->next, i++)
+		keyframes[i] = current_key->frame;
+		
+	/* destroy the temporary heap and seek back to the start */
+	memheap_destroy(heap);
+	io_seek(play_file, start_pos, IOSEEK_START);
+}
+
+static void do_tick()
+{
+	static char buffer[64*1024];
+	DEMOREC_CHUNK chunk;
+
+	/* update ticks */
+	playbackinfo.previous_tick = playbackinfo.current_tick;
+	playbackinfo.current_tick = playbackinfo.next_tick;
+
+	while(1)
+	{
+		int r = read_chunk_header(&chunk);
+		if(chunk.size > sizeof(buffer))
+		{
+			dbg_msg("demorec/playback", "chunk is too big %d", chunk.size);
+			r = 1;
+		}
+		
+		if(r)
+		{
+			/* stop on error or eof */
+			demorec_playback_stop();
+			break;
+		}
+		
+		/* read the chunk */
+		io_read(play_file, buffer, chunk.size);
+			
+		if(mem_comp(chunk.type, "TICK", 4) == 0)
+		{
+			DEMOREC_TICKMARKER marker = *(DEMOREC_TICKMARKER *)buffer;
+			swap_endian(&marker.tick, sizeof(int), 1);
+			playbackinfo.next_tick = marker.tick;
+			break;
+		}
+		else if(play_callback)
+			play_callback(chunk, buffer);
+	}
+}
+
+void demorec_playback_pause()
+{
+	playbackinfo.paused = 1;
+}
+
+void demorec_playback_unpause()
+{
+	if(playbackinfo.paused)
+	{
+		/*playbackinfo.start_tick = playbackinfo.current_tick;
+		playbackinfo.start_time = time_get();*/
+		playbackinfo.paused = 0;
+	}
+}
+
+int demorec_playback_load(const char *filename)
+{
+	play_file = io_open(filename, IOFLAG_READ);
+	if(!play_file)
+	{
+		dbg_msg("demorec/playback", "could not open '%s'", filename);
+		return -1;
+	}
+	
+	/* clear the playback info */
+	mem_zero(&playbackinfo, sizeof(playbackinfo));
+	playbackinfo.first_tick = -1;
+	playbackinfo.last_tick = -1;
+	/*playbackinfo.start_tick = -1;*/
+	playbackinfo.next_tick = -1;
+	playbackinfo.current_tick = -1;
+	playbackinfo.previous_tick = -1;
+	playbackinfo.speed = 1;
+
+	/* read the header */	
+	io_read(play_file, &playbackinfo.header, sizeof(playbackinfo.header));
+	if(mem_comp(playbackinfo.header.marker, header_marker, sizeof(header_marker)) != 0)
+	{
+		dbg_msg("demorec/playback", "'%s' is not a demo file", filename);
+		io_close(play_file);
+		play_file = 0;
+		return -1;
+	}
+	
+	/* scan the file for interessting points */
+	scan_file();
+	
+	/* ready for playback */	
+	return 0;
+}
+
+int demorec_playback_play()
+{
+	/* fill in previous and next tick */
+	while(playbackinfo.previous_tick == -1)
+		do_tick();
+
+	/* set start info */
+	/*playbackinfo.start_tick = playbackinfo.previous_tick;
+	playbackinfo.start_time = time_get();*/
+	playbackinfo.current_time = playbackinfo.previous_tick*time_freq()/SERVER_TICK_SPEED;
+	playbackinfo.last_update = time_get();
+	return 0;
+}
+
+int demorec_playback_set(int keyframe)
+{
+	if(!play_file)
+		return -1;
+	if(keyframe < 0 || keyframe >= playbackinfo.seekable_points)
+		return -1;
+	
+	io_seek(play_file, keyframes[keyframe].filepos, IOSEEK_START);
+
+	/*playbackinfo.start_tick = -1;*/
+	playbackinfo.next_tick = -1;
+	playbackinfo.current_tick = -1;
+	playbackinfo.previous_tick = -1;
+	
+	demorec_playback_play();
+	
+	return 0;
+}
+
+void demorec_playback_setspeed(float speed)
+{
+	playbackinfo.speed = speed;
+}
+
+int demorec_playback_update()
+{
+	int64 now = time_get();
+	int64 deltatime = now-playbackinfo.last_update;
+	playbackinfo.last_update = now;
+	
+	if(playbackinfo.paused)
+	{
+		
+	}
+	else
+	{
+		int64 freq = time_freq();
+		playbackinfo.current_time += (int64)(deltatime*(double)playbackinfo.speed);
+		
+		while(1)
+		{
+			int64 curtick_start = (playbackinfo.current_tick)*freq/SERVER_TICK_SPEED;
+
+			/* break if we are ready */		
+			if(curtick_start > playbackinfo.current_time)
+				break;
+			
+			/* do one more tick */
+			do_tick();
+		}
+
+		/* update intratick */
+		{	
+			int64 curtick_start = (playbackinfo.current_tick)*freq/SERVER_TICK_SPEED;
+			int64 prevtick_start = (playbackinfo.previous_tick)*freq/SERVER_TICK_SPEED;
+			playbackinfo.intratick = (playbackinfo.current_time - prevtick_start) / (float)(curtick_start-prevtick_start);
+			playbackinfo.ticktime = (playbackinfo.current_time - prevtick_start) / (float)freq;
+		}
+		
+		if(playbackinfo.current_tick == playbackinfo.previous_tick ||
+			playbackinfo.current_tick == playbackinfo.next_tick)
+		{
+			dbg_msg("demorec/playback", "tick error prev=%d cur=%d next=%d",
+				playbackinfo.previous_tick, playbackinfo.current_tick, playbackinfo.next_tick);
+		}
+	}
+	
+	return 0;
+}
+
+int demorec_playback_stop(const char *filename)
+{
+	if(!play_file)
+		return -1;
+		
+	dbg_msg("demorec/playback", "Stopped playback");
+	io_close(play_file);
+	play_file = 0;
+	mem_free(keyframes);
+	keyframes = 0;
+	return 0;
+}
diff --git a/src/engine/e_demorec.h b/src/engine/e_demorec.h
new file mode 100644
index 00000000..f6ceb382
--- /dev/null
+++ b/src/engine/e_demorec.h
@@ -0,0 +1,63 @@
+
+typedef struct DEMOREC_HEADER
+{
+	char marker[8];
+	char netversion[64];
+	char map[64];
+	unsigned char crc[4];
+	char type[8];
+} DEMOREC_HEADER;
+
+typedef struct DEMOREC_CHUNK
+{
+	char type[4];
+	int size;
+} DEMOREC_CHUNK;
+
+typedef struct DEMOREC_TICKMARKER
+{
+	int tick;
+} DEMOREC_TICKMARKER;
+
+typedef struct DEMOREC_PLAYBACKINFO
+{
+	DEMOREC_HEADER header;
+	
+	int paused;
+	float speed;
+	
+	int64 last_update;
+	int64 current_time;
+	
+	int first_tick;
+	int last_tick;
+	
+	int seekable_points;
+	
+	int next_tick;
+	int current_tick;
+	int previous_tick;
+	
+	float intratick;
+	float ticktime;
+} DEMOREC_PLAYBACKINFO;
+
+int demorec_record_start(const char *filename, const char *netversion, const char *map, int map_crc, const char *type);
+int demorec_isrecording();
+void demorec_record_write(const char *type, int size, const void *data);
+int demorec_record_stop();
+
+typedef void (*DEMOREC_PLAYCALLBACK)(DEMOREC_CHUNK chunk, void *data);
+
+int demorec_playback_registercallback(DEMOREC_PLAYCALLBACK cb);
+int demorec_playback_load(const char *filename);
+int demorec_playback_play();
+void demorec_playback_pause();
+void demorec_playback_unpause();
+void demorec_playback_setspeed(float speed);
+int demorec_playback_set(int keyframe);
+int demorec_playback_update();
+const DEMOREC_PLAYBACKINFO *demorec_playback_info();
+int demorec_isplaying();
+int demorec_playback_stop();
+
diff --git a/src/engine/e_engine.c b/src/engine/e_engine.c
index c8a1b07b..d739a589 100644
--- a/src/engine/e_engine.c
+++ b/src/engine/e_engine.c
@@ -63,6 +63,9 @@ void engine_init(const char *appname)
 
 			str_format(path, sizeof(path), "%s/maps", application_save_path);
 			fs_makedir(path);
+
+			str_format(path, sizeof(path), "%s/demos", application_save_path);
+			fs_makedir(path);
 		}
 	}
 
diff --git a/src/engine/e_if_client.h b/src/engine/e_if_client.h
index 08402ad1..7aef86e9 100644
--- a/src/engine/e_if_client.h
+++ b/src/engine/e_if_client.h
@@ -17,12 +17,14 @@ enum
 		CLIENTSTATE_CONNECTING - The client is trying to connect to a server.
 		CLIENTSTATE_LOADING - The client has connected to a server and is loading resources.
 		CLIENTSTATE_ONLINE - The client is connected to a server and running the game.
+		CLIENTSTATE_DEMOPLAYBACK - The client is playing a demo
 		CLIENTSTATE_QUITING - The client is quiting.
 	*/
 	CLIENTSTATE_OFFLINE=0,
 	CLIENTSTATE_CONNECTING,
 	CLIENTSTATE_LOADING,
 	CLIENTSTATE_ONLINE,
+	CLIENTSTATE_DEMOPLAYBACK,
 	CLIENTSTATE_QUITING,
 
 	/* Constants: Image Formats
@@ -541,6 +543,23 @@ enum
 
 void client_serverbrowse_set(NETADDR *addr, int type, int token, SERVER_INFO *info);
 
-
 int client_serverbrowse_refreshingmasters();
+
+
+typedef struct DEMOPLAYBACK_INFO
+{
+	int first_tick;
+	int last_tick;
+	int current_tick;
+	int paused;
+	float speed;
+} DEMOPLAYBACK_INFO;
+
+void client_demoplayer_play(const char *filename);
+const DEMOPLAYBACK_INFO *client_demoplayer_getinfo();
+void client_demoplayer_setpos(float percent);
+void client_demoplayer_setpause(int paused);
+void client_demoplayer_setspeed(float speed);
+const char *client_user_directory();
+
 #endif
diff --git a/src/engine/e_if_modc.h b/src/engine/e_if_modc.h
index 8839d5f1..14ab9ded 100644
--- a/src/engine/e_if_modc.h
+++ b/src/engine/e_if_modc.h
@@ -142,4 +142,6 @@ int modc_snap_input(int *data);
 */
 const char *modc_net_version();
 
+
+void modc_recordkeyframe();
 #endif
diff --git a/src/engine/e_if_other.h b/src/engine/e_if_other.h
index 85148d85..ca09f48b 100644
--- a/src/engine/e_if_other.h
+++ b/src/engine/e_if_other.h
@@ -16,7 +16,6 @@ enum
 	
 	SNAP_CURRENT=0,
 	SNAP_PREV=1,
-	
 
 	MASK_NONE=0,
 	MASK_SET,
@@ -306,7 +305,10 @@ void snap_set_staticsize(int type, int size);
 enum
 {
 	MSGFLAG_VITAL=1,
-	MSGFLAG_FLUSH=2
+	MSGFLAG_FLUSH=2,
+	MSGFLAG_NORECORD=4,
+	MSGFLAG_RECORD=8,
+	MSGFLAG_NOSEND=16
 };
 
 /* message sending */
diff --git a/src/engine/e_if_server.h b/src/engine/e_if_server.h
index 98e2b452..b165ae3c 100644
--- a/src/engine/e_if_server.h
+++ b/src/engine/e_if_server.h
@@ -135,4 +135,6 @@ int server_tick();
 */
 int server_tickspeed();
 
+int server_ban_add(NETADDR addr, int type, int seconds);
+int server_ban_remove(NETADDR addr);
 #endif
diff --git a/src/engine/server/es_server.c b/src/engine/server/es_server.c
index d761e81e..306227b8 100644
--- a/src/engine/server/es_server.c
+++ b/src/engine/server/es_server.c
@@ -18,6 +18,7 @@
 #include <engine/e_config.h>
 #include <engine/e_packer.h>
 #include <engine/e_datafile.h>
+#include <engine/e_demorec.h>
 
 #include <mastersrv/mastersrv.h>
 
@@ -38,6 +39,8 @@ static int browseinfo_progression = -1;
 static int64 lastheartbeat;
 /*static NETADDR4 master_server;*/
 
+static IOHANDLE demorec_file = 0;
+
 static char current_map[64];
 static int current_map_crc;
 static unsigned char *current_map_data = 0;
@@ -66,7 +69,6 @@ static int snap_id_usage;
 static int snap_id_inusage;
 static int snap_id_inited = 0;
 
-
 enum
 {
 	SRVCLIENT_STATE_EMPTY = 0,
@@ -338,19 +340,26 @@ int server_send_msg(int client_id)
 	if(info->flags&MSGFLAG_FLUSH)
 		packet.flags |= NETSENDFLAG_FLUSH;
 	
-	if(client_id == -1)
+	/* write message to demo recorder */
+	if(!(info->flags&MSGFLAG_NORECORD))
+		demorec_record_write("MESG", info->size, info->data);
+
+	if(!(info->flags&MSGFLAG_NOSEND))
 	{
-		/* broadcast */
-		int i;
-		for(i = 0; i < MAX_CLIENTS; i++)
-			if(clients[i].state == SRVCLIENT_STATE_INGAME)
-			{
-				packet.client_id = i;
-				netserver_send(net, &packet);
-			}
+		if(client_id == -1)
+		{
+			/* broadcast */
+			int i;
+			for(i = 0; i < MAX_CLIENTS; i++)
+				if(clients[i].state == SRVCLIENT_STATE_INGAME)
+				{
+					packet.client_id = i;
+					netserver_send(net, &packet);
+				}
+		}
+		else
+			netserver_send(net, &packet);
 	}
-	else
-		netserver_send(net, &packet);
 	return 0;
 }
 
@@ -364,7 +373,29 @@ static void server_do_snap()
 		mods_presnap();
 		perf_end();
 	}
+	
+	/* create snapshot for demo recording */
+	if(demorec_file)
+	{
+		char data[MAX_SNAPSHOT_SIZE];
+		int snapshot_size;
+		DEMOREC_TICKMARKER marker;
+
+		/* write tick marker */
+		marker.tick = server_tick();
+		swap_endian(&marker, sizeof(int), sizeof(marker)/sizeof(int));
+		demorec_record_write("TICK", sizeof(marker), &marker);
+		
+		/* build snap and possibly add some messages */
+		snapbuild_init(&builder);
+		mods_snap(-1);
+		snapshot_size = snapbuild_finish(&builder, data);
+		
+		/* write snapshot */
+		demorec_record_write("SNAP", snapshot_size, data);
+	}
 
+	/* create snapshots for all clients */
 	for(i = 0; i < MAX_CLIENTS; i++)
 	{
 		/* client must be ingame to recive snapshots */
@@ -788,6 +819,17 @@ static void server_process_client_packet(NETCHUNK *packet)
 	}
 }
 
+
+int server_ban_add(NETADDR addr, int type, int seconds)
+{
+	return netserver_ban_add(net, addr, type, seconds);	
+}
+
+int server_ban_remove(NETADDR addr)
+{
+	return netserver_ban_remove(net, addr);
+}
+
 static void server_send_serverinfo(NETADDR *addr, int token)
 {
 	NETCHUNK packet;
@@ -1116,6 +1158,15 @@ static void con_kick(void *result, void *user_data)
 	server_kick(console_arg_int(result, 0), "kicked by console");
 }
 
+static void con_ban(void *result, void *user_data)
+{
+	NETADDR addr;
+	const char *str = console_arg_string(result, 0);
+	
+	if(net_addr_from_str(&addr, str) == 0)
+		server_ban_add(addr, 1, 60);
+}
+
 static void con_status(void *result, void *user_data)
 {
 	int i;
@@ -1135,14 +1186,27 @@ static void con_status(void *result, void *user_data)
 static void con_shutdown(void *result, void *user_data)
 {
 	run_server = 0;
-	/*server_kick(console_arg_int(result, 0), "kicked by console");*/
+}
+
+static void con_record(void *result, void *user_data)
+{
+	demorec_record_start(console_arg_string(result, 0), mods_net_version(), current_map, current_map_crc, "server");
+}
+
+static void con_stoprecord(void *result, void *user_data)
+{
+	demorec_record_stop();
 }
 
 static void server_register_commands()
 {
 	MACRO_REGISTER_COMMAND("kick", "i", con_kick, 0);
+	MACRO_REGISTER_COMMAND("ban", "r", con_ban, 0);
 	MACRO_REGISTER_COMMAND("status", "", con_status, 0);
 	MACRO_REGISTER_COMMAND("shutdown", "", con_shutdown, 0);
+
+	MACRO_REGISTER_COMMAND("record", "s", con_record, 0);
+	MACRO_REGISTER_COMMAND("stoprecord", "", con_stoprecord, 0);
 }
 
 int main(int argc, char **argv)
diff --git a/src/game/client/clienthooks.cpp b/src/game/client/clienthooks.cpp
index 88a7722a..1611b00d 100644
--- a/src/game/client/clienthooks.cpp
+++ b/src/game/client/clienthooks.cpp
@@ -17,6 +17,7 @@ extern "C" void modc_init() { gameclient.on_init(); }
 extern "C" void modc_connected() { gameclient.on_connected(); }
 extern "C" void modc_predict() { gameclient.on_predict(); }
 extern "C" void modc_newsnapshot() { gameclient.on_snapshot(); }
+extern "C" void modc_recordkeyframe() { gameclient.on_recordkeyframe(); }
 extern "C" int modc_snap_input(int *data) { return gameclient.on_snapinput(data); }
 extern "C" void modc_statechange(int state, int old) { gameclient.on_statechange(state, old); }
 extern "C" void modc_render() { gameclient.on_render(); }
diff --git a/src/game/client/component.hpp b/src/game/client/component.hpp
index f03165d2..3d5edb86 100644
--- a/src/game/client/component.hpp
+++ b/src/game/client/component.hpp
@@ -18,6 +18,7 @@ public:
 	virtual void on_save() {};
 	virtual void on_reset() {};
 	virtual void on_render() {};
+	virtual void on_mapload() {};
 	virtual void on_message(int msg, void *rawmsg) {}
 	virtual bool on_mousemove(float x, float y) { return false; }
 	virtual bool on_input(INPUT_EVENT e) { return false; }
diff --git a/src/game/client/components/hud.cpp b/src/game/client/components/hud.cpp
index 86ce6257..2b1c1663 100644
--- a/src/game/client/components/hud.cpp
+++ b/src/game/client/components/hud.cpp
@@ -305,7 +305,8 @@ void HUD::on_render()
 
 	render_goals();
 	render_fps();
-	render_connectionwarning();
+	if(client_state() != CLIENTSTATE_DEMOPLAYBACK)
+		render_connectionwarning();
 	render_tunewarning();
 	render_teambalancewarning();
 	render_voting();
diff --git a/src/game/client/components/mapimages.cpp b/src/game/client/components/mapimages.cpp
index 9dc2447a..7f839da0 100644
--- a/src/game/client/components/mapimages.cpp
+++ b/src/game/client/components/mapimages.cpp
@@ -8,7 +8,7 @@ MAPIMAGES::MAPIMAGES()
 	count = 0;
 }
 
-void MAPIMAGES::on_reset()
+void MAPIMAGES::on_mapload()
 {
 	// unload all textures
 	for(int i = 0; i < count; i++)
diff --git a/src/game/client/components/mapimages.hpp b/src/game/client/components/mapimages.hpp
index e1e0063d..cba46033 100644
--- a/src/game/client/components/mapimages.hpp
+++ b/src/game/client/components/mapimages.hpp
@@ -9,7 +9,7 @@ public:
 	
 	int get(int index) const { return textures[index]; }
 	int num() const { return count; }
-	
-	virtual void on_reset();
+
+	virtual void on_mapload();
 };
 
diff --git a/src/game/client/components/maplayers.cpp b/src/game/client/components/maplayers.cpp
index e1518036..c6fea413 100644
--- a/src/game/client/components/maplayers.cpp
+++ b/src/game/client/components/maplayers.cpp
@@ -50,7 +50,7 @@ static void envelope_eval(float time_offset, int env, float *channels)
 
 void MAPLAYERS::on_render()
 {
-	if(client_state() != CLIENTSTATE_ONLINE)
+	if(client_state() != CLIENTSTATE_ONLINE && client_state() != CLIENTSTATE_DEMOPLAYBACK)
 		return;
 	
 	vec2 center = gameclient.camera->center;
diff --git a/src/game/client/components/menus.cpp b/src/game/client/components/menus.cpp
index b1043870..f71f0d96 100644
--- a/src/game/client/components/menus.cpp
+++ b/src/game/client/components/menus.cpp
@@ -32,6 +32,11 @@ vec4 MENUS::color_tabbar_active;
 vec4 MENUS::color_tabbar_inactive_ingame;
 vec4 MENUS::color_tabbar_active_ingame;
 
+
+float MENUS::button_height = 25.0f;
+float MENUS::listheader_height = 16.0f;
+float MENUS::fontmod_height = 0.8f;
+
 INPUT_EVENT MENUS::inputevents[MAX_INPUTEVENTS];
 int MENUS::num_inputevents;
 
@@ -84,9 +89,10 @@ MENUS::MENUS()
 	menu_active = true;
 	num_inputevents = 0;
 	
-	last_input = time_get();
+	demos = 0;
+	num_demos = 0;
 	
-	button_height = 25.0f;
+	last_input = time_get();
 }
 
 vec4 MENUS::button_color_mul(const void *id)
@@ -111,22 +117,27 @@ void MENUS::ui_draw_browse_icon(int what, const RECT *r)
 void MENUS::ui_draw_menu_button(const void *id, const char *text, int checked, const RECT *r, const void *extra)
 {
 	ui_draw_rect(r, vec4(1,1,1,0.5f)*button_color_mul(id), CORNER_ALL, 5.0f);
-	ui_do_label(r, text, 18.0f, 0);
+	ui_do_label(r, text, r->h*fontmod_height, 0);
 }
 
 void MENUS::ui_draw_keyselect_button(const void *id, const char *text, int checked, const RECT *r, const void *extra)
 {
 	ui_draw_rect(r, vec4(1,1,1,0.5f)*button_color_mul(id), CORNER_ALL, 5.0f);
-	ui_do_label(r, text, 14.0f, 0);
+	ui_do_label(r, text, r->h*fontmod_height, 0);
 }
 
 void MENUS::ui_draw_menu_tab_button(const void *id, const char *text, int checked, const RECT *r, const void *extra)
 {
+	int corners = CORNER_T;
+	vec4 colormod(1,1,1,1);
+	if(extra)
+		corners = *(int *)extra;
+	
 	if(checked)
-		ui_draw_rect(r, color_tabbar_active, CORNER_T, 10.0f);
+		ui_draw_rect(r, color_tabbar_active, corners, 10.0f);
 	else
-		ui_draw_rect(r, color_tabbar_inactive, CORNER_T, 10.0f);
-	ui_do_label(r, text, 22.0f, 0);
+		ui_draw_rect(r, color_tabbar_inactive, corners, 10.0f);
+	ui_do_label(r, text, r->h*fontmod_height, 0);
 }
 
 
@@ -136,7 +147,7 @@ void MENUS::ui_draw_settings_tab_button(const void *id, const char *text, int ch
 		ui_draw_rect(r, color_tabbar_active, CORNER_R, 10.0f);
 	else
 		ui_draw_rect(r, color_tabbar_inactive, CORNER_R, 10.0f);
-	ui_do_label(r, text, 20.0f, 0);
+	ui_do_label(r, text, r->h*fontmod_height, 0);
 }
 
 void MENUS::ui_draw_grid_header(const void *id, const char *text, int checked, const RECT *r, const void *extra)
@@ -145,7 +156,7 @@ void MENUS::ui_draw_grid_header(const void *id, const char *text, int checked, c
 		ui_draw_rect(r, vec4(1,1,1,0.5f), CORNER_T, 5.0f);
 	RECT t;
 	ui_vsplit_l(r, 5.0f, 0, &t);
-	ui_do_label(&t, text, 14.0f, -1);
+	ui_do_label(&t, text, r->h*fontmod_height, -1);
 }
 
 void MENUS::ui_draw_list_row(const void *id, const char *text, int checked, const RECT *r, const void *extra)
@@ -156,7 +167,7 @@ void MENUS::ui_draw_list_row(const void *id, const char *text, int checked, cons
 		ui_margin(&sr, 1.5f, &sr);
 		ui_draw_rect(&sr, vec4(1,1,1,0.5f), CORNER_ALL, 4.0f);
 	}
-	ui_do_label(r, text, 14.0f, -1);
+	ui_do_label(r, text, r->h*fontmod_height, -1);
 }
 
 void MENUS::ui_draw_checkbox_common(const void *id, const char *text, const char *boxtext, const RECT *r)
@@ -171,8 +182,8 @@ void MENUS::ui_draw_checkbox_common(const void *id, const char *text, const char
 	ui_margin(&c, 2.0f, &c);
 	ui_draw_rect(&c, vec4(1,1,1,0.25f)*button_color_mul(id), CORNER_ALL, 3.0f);
 	c.y += 2;
-	ui_do_label(&c, boxtext, 12.0f, 0);
-	ui_do_label(&t, text, 14.0f, -1);
+	ui_do_label(&c, boxtext, r->h*fontmod_height*0.75f, 0);
+	ui_do_label(&t, text, r->h*fontmod_height*0.8f, -1);
 }
 
 void MENUS::ui_draw_checkbox(const void *id, const char *text, int checked, const RECT *r, const void *extra)
@@ -489,31 +500,43 @@ int MENUS::render_menubar(RECT r)
 			ui_vsplit_l(&box, 30.0f, 0, &box); 
 		}
 
-		ui_vsplit_l(&box, 110.0f, &button, &box);
+		ui_vsplit_l(&box, 100.0f, &button, &box);
 		static int internet_button=0;
-		if (ui_do_button(&internet_button, "Internet", active_page==PAGE_INTERNET, &button, ui_draw_menu_tab_button, 0))
+		int corners = CORNER_TL;
+		if (ui_do_button(&internet_button, "Internet", active_page==PAGE_INTERNET, &button, ui_draw_menu_tab_button, &corners))
 		{
 			client_serverbrowse_refresh(BROWSETYPE_INTERNET);
 			new_page = PAGE_INTERNET;
 		}
 
-		ui_vsplit_l(&box, 4.0f, 0, &box);
-		ui_vsplit_l(&box, 90.0f, &button, &box);
+		//ui_vsplit_l(&box, 4.0f, 0, &box);
+		ui_vsplit_l(&box, 80.0f, &button, &box);
 		static int lan_button=0;
-		if (ui_do_button(&lan_button, "LAN", active_page==PAGE_LAN, &button, ui_draw_menu_tab_button, 0))
+		corners = 0;
+		if (ui_do_button(&lan_button, "LAN", active_page==PAGE_LAN, &button, ui_draw_menu_tab_button, &corners))
 		{
 			client_serverbrowse_refresh(BROWSETYPE_LAN);
 			new_page = PAGE_LAN;
 		}
 
-		ui_vsplit_l(&box, 4.0f, 0, &box);
-		ui_vsplit_l(&box, 120.0f, &button, &box);
+		//ui_vsplit_l(&box, 4.0f, 0, &box);
+		ui_vsplit_l(&box, 110.0f, &button, &box);
 		static int favorites_button=0;
-		if (ui_do_button(&favorites_button, "Favorites", active_page==PAGE_FAVORITES, &button, ui_draw_menu_tab_button, 0))
+		corners = CORNER_TR;
+		if (ui_do_button(&favorites_button, "Favorites", active_page==PAGE_FAVORITES, &button, ui_draw_menu_tab_button, &corners))
 		{
 			client_serverbrowse_refresh(BROWSETYPE_FAVORITES);
 			new_page  = PAGE_FAVORITES;
 		}
+		
+		ui_vsplit_l(&box, 4.0f*5, 0, &box);
+		ui_vsplit_l(&box, 100.0f, &button, &box);
+		static int demos_button=0;
+		if (ui_do_button(&demos_button, "Demos", active_page==PAGE_DEMOS, &button, ui_draw_menu_tab_button, 0))
+		{
+			//client_serverbrowse_refresh(BROWSETYPE_FAVORITES);
+			new_page  = PAGE_DEMOS;
+		}		
 	}
 	else
 	{
@@ -547,13 +570,13 @@ int MENUS::render_menubar(RECT r)
 	ui_vsplit_r(&box, 30.0f, &box, 0);
 	*/
 	
-	ui_vsplit_r(&box, 110.0f, &box, &button);
+	ui_vsplit_r(&box, 90.0f, &box, &button);
 	static int quit_button=0;
 	if (ui_do_button(&quit_button, "Quit", 0, &button, ui_draw_menu_tab_button, 0))
 		popup = POPUP_QUIT;
 
 	ui_vsplit_r(&box, 10.0f, &box, &button);
-	ui_vsplit_r(&box, 110.0f, &box, &button);
+	ui_vsplit_r(&box, 120.0f, &box, &button);
 	static int settings_button=0;
 	if (ui_do_button(&settings_button, "Settings", active_page==PAGE_SETTINGS, &button, ui_draw_menu_tab_button, 0))
 		new_page = PAGE_SETTINGS;
@@ -663,7 +686,7 @@ int MENUS::render()
 	if(popup == POPUP_NONE)
 	{
 		// do tab bar
-		ui_hsplit_t(&screen, 26.0f, &tab_bar, &main_view);
+		ui_hsplit_t(&screen, 24.0f, &tab_bar, &main_view);
 		ui_vmargin(&tab_bar, 20.0f, &tab_bar);
 		render_menubar(tab_bar);
 		
@@ -691,6 +714,8 @@ int MENUS::render()
 			render_serverbrowser(main_view);
 		else if(config.ui_page == PAGE_LAN)
 			render_serverbrowser(main_view);
+		else if(config.ui_page == PAGE_DEMOS)
+			render_demolist(main_view);
 		else if(config.ui_page == PAGE_FAVORITES)
 			render_serverbrowser(main_view);
 		else if(config.ui_page == PAGE_SETTINGS)
@@ -922,7 +947,7 @@ void MENUS::on_statechange(int new_state, int old_state)
 		popup = POPUP_CONNECTING;
 	else if(new_state == CLIENTSTATE_CONNECTING)
 		popup = POPUP_CONNECTING;
-	else if (new_state == CLIENTSTATE_ONLINE)
+	else if (new_state == CLIENTSTATE_ONLINE || new_state == CLIENTSTATE_DEMOPLAYBACK)
 	{
 		popup = POPUP_NONE;
 		menu_active = false;
@@ -931,17 +956,19 @@ void MENUS::on_statechange(int new_state, int old_state)
 
 void MENUS::on_render()
 {
-	if(client_state() != CLIENTSTATE_ONLINE)
+	if(client_state() != CLIENTSTATE_ONLINE && client_state() != CLIENTSTATE_DEMOPLAYBACK)
 		menu_active = true;
+
+	if(client_state() == CLIENTSTATE_DEMOPLAYBACK)
+	{
+		RECT screen = *ui_screen();
+		gfx_mapscreen(screen.x, screen.y, screen.w, screen.h);
+		render_demoplayer(screen);
+	}
 	
 	if(!menu_active)
 		return;
 		
-
-
-	if(inp_key_down('M')) button_height += 1.0f;
-	if(inp_key_down('N')) button_height -= 1.0f;
-		
 	// update colors
 	vec3 rgb = hsl_to_rgb(vec3(config.ui_color_hue/255.0f, config.ui_color_sat/255.0f, config.ui_color_lht/255.0f));
 	gui_color = vec4(rgb.r, rgb.g, rgb.b, config.ui_color_alpha/255.0f);
@@ -1002,8 +1029,8 @@ void MENUS::on_render()
 	}
 	else
 	{
-		//render_background();
-		render();
+		if(client_state() != CLIENTSTATE_DEMOPLAYBACK)
+			render();
 
 		// render cursor
 		gfx_texture_set(data->images[IMAGE_CURSOR].id);
@@ -1024,6 +1051,7 @@ void MENUS::on_render()
 			gfx_text_set_cursor(&cursor, 10, 10, 10, TEXTFLAG_RENDER);
 			gfx_text_ex(&cursor, buf, -1);
 		}
+		
 	}
 
 	num_inputevents = 0;
diff --git a/src/game/client/components/menus.hpp b/src/game/client/components/menus.hpp
index 8aae925f..51090b93 100644
--- a/src/game/client/components/menus.hpp
+++ b/src/game/client/components/menus.hpp
@@ -15,6 +15,9 @@ class MENUS : public COMPONENT
 	
 	static vec4 button_color_mul(const void *id);
 
+
+	static void ui_draw_demoplayer_button(const void *id, const char *text, int checked, const RECT *r, const void *extra);
+
 	static void ui_draw_browse_icon(int what, const RECT *r);
 	static void ui_draw_menu_button(const void *id, const char *text, int checked, const RECT *r, const void *extra);
 	static void ui_draw_keyselect_button(const void *id, const char *text, int checked, const RECT *r, const void *extra);
@@ -33,6 +36,19 @@ class MENUS : public COMPONENT
 	static int ui_do_key_reader(void *id, const RECT *rect, int key);
 	static void ui_do_getbuttons(int start, int stop, RECT view);
 
+	struct LISTBOXITEM
+	{
+		int visible;
+		int selected;
+		RECT rect;
+	};
+	
+	static void ui_do_listbox_start(void *id, const RECT *rect, float row_height, const char *title, int num_items, int selected_index);
+	static LISTBOXITEM ui_do_listbox_nextitem(void *id);
+	static int ui_do_listbox_end();
+	
+	//static void demolist_listdir_callback(const char *name, int is_dir, void *user);
+	//static void demolist_list_callback(const RECT *rect, int index, void *user);
 
 	enum
 	{
@@ -53,6 +69,7 @@ class MENUS : public COMPONENT
 		PAGE_INTERNET,
 		PAGE_LAN,
 		PAGE_FAVORITES,
+		PAGE_DEMOS,
 		PAGE_SETTINGS,
 		PAGE_SYSTEM,
 	};
@@ -71,7 +88,9 @@ class MENUS : public COMPONENT
 	static int num_inputevents;
 	
 	// some settings
-	float button_height;
+	static float button_height;
+	static float listheader_height;
+	static float fontmod_height;
 	
 	// for graphic settings
 	bool need_restart;
@@ -79,6 +98,20 @@ class MENUS : public COMPONENT
 	// for call vote
 	int callvote_selectedplayer;
 	int callvote_selectedmap;
+	
+	// demo
+	struct DEMOITEM
+	{
+		char filename[512];
+		char name[256];
+	};
+	
+	DEMOITEM *demos;
+	int num_demos;
+		
+	void demolist_populate();
+	static void demolist_count_callback(const char *name, int is_dir, void *user);
+	static void demolist_fetch_callback(const char *name, int is_dir, void *user);
 
 	// found in menus.cpp
 	int render();
@@ -87,6 +120,10 @@ class MENUS : public COMPONENT
 	int render_menubar(RECT r);
 	void render_news(RECT main_view);
 	
+	// found in menus_demo.cpp
+	void render_demoplayer(RECT main_view);
+	void render_demolist(RECT main_view);
+	
 	// found in menus_ingame.cpp
 	void render_game(RECT main_view);
 	void render_serverinfo(RECT main_view);
diff --git a/src/game/client/components/menus_browser.cpp b/src/game/client/components/menus_browser.cpp
index a4e730e6..3cba5311 100644
--- a/src/game/client/components/menus_browser.cpp
+++ b/src/game/client/components/menus_browser.cpp
@@ -21,7 +21,7 @@ void MENUS::render_serverbrowser_serverlist(RECT view)
 	RECT headers;
 	RECT status;
 	
-	ui_hsplit_t(&view, 16.0f, &headers, &view);
+	ui_hsplit_t(&view, listheader_height, &headers, &view);
 	ui_hsplit_b(&view, 20.0f, &view, &status);
 	
 	// split of the scrollbar
@@ -634,7 +634,7 @@ void MENUS::render_serverbrowser(RECT main_view)
 		ui_vmargin(&button, 2.0f, &button);
 		//ui_vmargin(&button, 2.0f, &button);
 		static int join_button = 0;
-		if(ui_do_button(&join_button, "Connect", 0, &button, ui_draw_menu_button, 0) || inp_key_down(KEY_ENTER))
+		if(ui_do_button(&join_button, "Connect", 0, &button, ui_draw_menu_button, 0)) // || inp_key_down(KEY_ENTER))
 			client_connect(config.ui_server_address);
 					
 		ui_hsplit_b(&button_box, 5.0f, &button_box, &button);
diff --git a/src/game/client/components/menus_demo.cpp b/src/game/client/components/menus_demo.cpp
new file mode 100644
index 00000000..81717bf7
--- /dev/null
+++ b/src/game/client/components/menus_demo.cpp
@@ -0,0 +1,390 @@
+
+#include <base/math.hpp>
+
+//#include <string.h> // strcmp, strlen, strncpy
+//#include <stdlib.h> // atoi
+
+#include <engine/e_client_interface.h>
+#include <game/client/gc_render.hpp>
+#include <game/client/gameclient.hpp>
+
+//#include <game/generated/g_protocol.hpp>
+//#include <game/generated/gc_data.hpp>
+
+#include <game/client/ui.hpp>
+//#include <game/client/gameclient.hpp>
+//#include <game/client/animstate.hpp>
+
+#include "menus.hpp"
+
+void MENUS::ui_draw_demoplayer_button(const void *id, const char *text, int checked, const RECT *r, const void *extra)
+{
+	ui_draw_rect(r, vec4(1,1,1, checked ? 0.10f : 0.5f)*button_color_mul(id), CORNER_ALL, 5.0f);
+	ui_do_label(r, text, 14.0f, 0);
+}
+
+void MENUS::render_demoplayer(RECT main_view)
+{
+	const DEMOPLAYBACK_INFO *info = client_demoplayer_getinfo();
+	
+	const float seekbar_height = 15.0f;
+	const float buttonbar_height = 20.0f;
+	const float margins = 5.0f;
+	float total_height;
+	
+	if(menu_active)
+		total_height = seekbar_height+buttonbar_height+margins*3;
+	else
+		total_height = seekbar_height+margins*2;
+	
+	ui_hsplit_b(&main_view, total_height, 0, &main_view);
+	ui_vsplit_l(&main_view, 250.0f, 0, &main_view);
+	ui_vsplit_r(&main_view, 250.0f, &main_view, 0);
+	
+	ui_draw_rect(&main_view, color_tabbar_active, CORNER_T, 10.0f);
+		
+	ui_margin(&main_view, 5.0f, &main_view);
+	
+	RECT seekbar, buttonbar;
+	
+	if(menu_active)
+	{
+		ui_hsplit_t(&main_view, seekbar_height, &seekbar, &buttonbar);
+		ui_hsplit_t(&buttonbar, margins, 0, &buttonbar);
+	}
+	else
+		seekbar = main_view;
+
+	// do seekbar
+	{
+		static int seekbar_id = 0;
+		void *id = &seekbar_id;
+		char buffer[128];
+		
+		ui_draw_rect(&seekbar, vec4(0,0,0,0.5f), CORNER_ALL, 5.0f);
+		
+		int current_tick = info->current_tick - info->first_tick;
+		int total_ticks = info->last_tick - info->first_tick;
+		
+		float amount = current_tick/(float)total_ticks;
+		
+		RECT filledbar = seekbar;
+		filledbar.w = 10.0f + (filledbar.w-10.0f)*amount;
+		
+		ui_draw_rect(&filledbar, vec4(1,1,1,0.5f), CORNER_ALL, 5.0f);
+		
+		str_format(buffer, sizeof(buffer), "%d:%02d / %d:%02d",
+			current_tick/SERVER_TICK_SPEED/60, (current_tick/SERVER_TICK_SPEED)%60,
+			total_ticks/SERVER_TICK_SPEED/60, (total_ticks/SERVER_TICK_SPEED)%60);
+		ui_do_label(&seekbar, buffer, seekbar.h*0.70f, 0);
+
+		// do the logic
+	    int inside = ui_mouse_inside(&seekbar);
+			
+		if(ui_active_item() == id)
+		{
+			if(!ui_mouse_button(0))
+				ui_set_active_item(0);
+			else
+			{
+				float amount = (ui_mouse_x()-seekbar.x)/(float)seekbar.w;
+				if(amount > 0 && amount < 1.0f)
+				{
+					gameclient.on_reset();
+					client_demoplayer_setpos(amount);
+				}
+			}
+		}
+		else if(ui_hot_item() == id)
+		{
+			if(ui_mouse_button(0))
+				ui_set_active_item(id);
+		}		
+		
+		if(inside)
+			ui_set_hot_item(id);
+	}	
+	
+
+	if(menu_active)
+	{
+		// do buttons
+		RECT button;
+
+		// pause button
+		ui_vsplit_l(&buttonbar, buttonbar_height, &button, &buttonbar);
+		static int pause_button = 0;
+		if(ui_do_button(&pause_button, "| |", info->paused, &button, ui_draw_demoplayer_button, 0))
+			client_demoplayer_setpause(!info->paused);
+		
+		// play button
+		ui_vsplit_l(&buttonbar, margins, 0, &buttonbar);
+		ui_vsplit_l(&buttonbar, buttonbar_height, &button, &buttonbar);
+		static int play_button = 0;
+		if(ui_do_button(&play_button, ">", !info->paused, &button, ui_draw_demoplayer_button, 0))
+		{
+			client_demoplayer_setpause(0);
+			client_demoplayer_setspeed(1.0f);
+		}
+
+		// slowdown
+		ui_vsplit_l(&buttonbar, margins, 0, &buttonbar);
+		ui_vsplit_l(&buttonbar, buttonbar_height, &button, &buttonbar);
+		static int slowdown_button = 0;
+		if(ui_do_button(&slowdown_button, "<<", 0, &button, ui_draw_demoplayer_button, 0))
+		{
+			if(info->speed > 4.0f) client_demoplayer_setspeed(4.0f);
+			else if(info->speed > 2.0f) client_demoplayer_setspeed(2.0f);
+			else if(info->speed > 1.0f) client_demoplayer_setspeed(1.0f);
+			else if(info->speed > 0.5f) client_demoplayer_setspeed(0.5f);
+			else client_demoplayer_setspeed(0.05f);
+		}
+		
+		// fastforward
+		ui_vsplit_l(&buttonbar, margins, 0, &buttonbar);
+		ui_vsplit_l(&buttonbar, buttonbar_height, &button, &buttonbar);
+		static int fastforward_button = 0;
+		if(ui_do_button(&fastforward_button, ">>", 0, &button, ui_draw_demoplayer_button, 0))
+		{
+			if(info->speed < 0.5f) client_demoplayer_setspeed(0.5f);
+			else if(info->speed < 1.0f) client_demoplayer_setspeed(1.0f);
+			else if(info->speed < 2.0f) client_demoplayer_setspeed(2.0f);
+			else if(info->speed < 4.0f) client_demoplayer_setspeed(4.0f);
+			else client_demoplayer_setspeed(8.0f);
+		}
+
+		// speed meter
+		ui_vsplit_l(&buttonbar, margins*3, 0, &buttonbar);
+		char buffer[64];
+		if(info->speed >= 1.0f)
+			str_format(buffer, sizeof(buffer), "x%.0f", info->speed);
+		else
+			str_format(buffer, sizeof(buffer), "x%.1f", info->speed);
+		ui_do_label(&buttonbar, buffer, button.h*0.7f, -1);
+
+		// exit button
+		ui_vsplit_r(&buttonbar, buttonbar_height*3, &buttonbar, &button);
+		static int exit_button = 0;
+		if(ui_do_button(&exit_button, "Exit", 0, &button, ui_draw_demoplayer_button, 0))
+			client_disconnect();
+	}
+}
+
+static RECT listbox_originalview;
+static RECT listbox_view;
+static float listbox_rowheight;
+static int listbox_itemindex;
+static int listbox_selected_index;
+static int listbox_new_selected;
+
+void MENUS::ui_do_listbox_start(void *id, const RECT *rect, float row_height, const char *title, int num_items, int selected_index)
+{
+	RECT scroll, row;
+	RECT view = *rect;
+	RECT header, footer;
+	
+	// draw header
+	ui_hsplit_t(&view, listheader_height, &header, &view);
+	ui_draw_rect(&header, vec4(1,1,1,0.25f), CORNER_T, 5.0f); 
+	ui_do_label(&header, title, header.h*fontmod_height, 0);
+
+	// draw footers
+	ui_hsplit_b(&view, listheader_height, &view, &footer);
+	ui_draw_rect(&footer, vec4(1,1,1,0.25f), CORNER_B, 5.0f); 
+	ui_vsplit_l(&footer, 10.0f, 0, &footer);
+
+	// background
+	ui_draw_rect(&view, vec4(0,0,0,0.15f), 0, 0);
+
+	// prepare the scroll
+	ui_vsplit_r(&view, 15, &view, &scroll);
+
+	// setup the variables	
+	listbox_originalview = view;
+	listbox_selected_index = selected_index;
+	listbox_new_selected = selected_index;
+	listbox_itemindex = 0;
+	listbox_rowheight = row_height;
+	//int num_servers = client_serverbrowse_sorted_num();
+
+
+	// do the scrollbar
+	ui_hsplit_t(&view, listbox_rowheight, &row, 0);
+
+	int num = (int)(listbox_originalview.h/row.h);
+	static float scrollvalue = 0;
+	ui_hmargin(&scroll, 5.0f, &scroll);
+	scrollvalue = ui_do_scrollbar_v(id, &scroll, scrollvalue);
+
+	int start = (int)(num*scrollvalue);
+	if(start < 0)
+		start = 0;
+	
+	// the list
+	listbox_view = listbox_originalview;
+	ui_vmargin(&listbox_view, 5.0f, &listbox_view);
+	ui_clip_enable(&listbox_view);
+	listbox_view.y -= scrollvalue*num*row.h;	
+}
+
+MENUS::LISTBOXITEM MENUS::ui_do_listbox_nextitem(void *id)
+{
+	RECT row;
+	LISTBOXITEM item = {0};
+	ui_hsplit_t(&listbox_view, listbox_rowheight-2.0f, &row, &listbox_view);
+	ui_hsplit_t(&listbox_view, 2.0f, 0, &listbox_view);
+
+	RECT select_hit_box = row;
+
+	item.visible = 1;
+	if(listbox_selected_index == listbox_itemindex)
+		item.selected = 1;
+	
+	// make sure that only those in view can be selected
+	if(row.y+row.h > listbox_originalview.y)
+	{
+		
+		if(select_hit_box.y < listbox_originalview.y) // clip the selection
+		{
+			select_hit_box.h -= listbox_originalview.y-select_hit_box.y;
+			select_hit_box.y = listbox_originalview.y;
+		}
+		
+		if(ui_do_button(id, "", listbox_selected_index==listbox_itemindex, &select_hit_box, 0, 0))
+			listbox_new_selected = listbox_itemindex;
+	}
+	else
+		item.visible = 0;
+	
+	item.rect = row;
+	
+	// check if we need to do more
+	if(row.y > listbox_originalview.y+listbox_originalview.h)
+		item.visible = 0;
+
+	if(listbox_selected_index==listbox_itemindex)
+	{
+		//selected_index = i;
+		RECT r = row;
+		ui_margin(&r, 1.5f, &r);
+		ui_draw_rect(&r, vec4(1,1,1,0.5f), CORNER_ALL, 4.0f);
+	}	
+
+	listbox_itemindex++;
+
+	ui_vmargin(&item.rect, 5.0f, &item.rect);
+
+	return item;
+}
+
+int MENUS::ui_do_listbox_end()
+{
+	ui_clip_disable();
+	return listbox_new_selected;
+}
+
+/*
+void MENUS::demolist_listdir_callback(const char *name, int is_dir, void *user)
+{
+
+	(*count)++;
+	LISTBOXITEM item = ui_do_listbox_nextitem((void*)(10+*count));
+	if(item.visible)
+		ui_do_label(&item.rect, name, item.rect.h*fontmod_height, -1);
+}
+
+
+	DEMOITEM *demos;
+	int num_demos;
+	*/
+	
+void MENUS::demolist_count_callback(const char *name, int is_dir, void *user)
+{
+	if(is_dir || name[0] == '.')
+		return;
+	(*(int *)user)++;
+}
+
+struct FETCH_CALLBACKINFO
+{
+	MENUS *self;
+	const char *prefix;
+	int count;
+};
+
+void MENUS::demolist_fetch_callback(const char *name, int is_dir, void *user)
+{
+	if(is_dir || name[0] == '.')
+		return;
+			
+	FETCH_CALLBACKINFO *info = (FETCH_CALLBACKINFO *)user;
+	
+	if(info->count == info->self->num_demos)
+		return;
+	
+	str_format(info->self->demos[info->count].filename, sizeof(info->self->demos[info->count].filename), "%s/%s", info->prefix, name);
+	str_copy(info->self->demos[info->count].name, name, sizeof(info->self->demos[info->count].name));
+	info->count++;
+}
+
+
+void MENUS::demolist_populate()
+{
+	if(demos)
+		mem_free(demos);
+	demos = 0;
+	num_demos = 0;
+	
+	char buf[512];
+	str_format(buf, sizeof(buf), "%s/demos", client_user_directory());
+	fs_listdir(buf, demolist_count_callback, &num_demos);
+	fs_listdir("demos", demolist_count_callback, &num_demos);
+	
+	demos = (DEMOITEM *)mem_alloc(sizeof(DEMOITEM)*num_demos, 1);
+	mem_zero(demos, sizeof(DEMOITEM)*num_demos);
+
+	FETCH_CALLBACKINFO info = {this, buf, 0};
+	fs_listdir(buf, demolist_fetch_callback, &info);
+	info.prefix = "demos";
+	fs_listdir("demos", demolist_fetch_callback, &info);
+}
+
+
+void MENUS::render_demolist(RECT main_view)
+{
+	static int inited = 0;
+	if(!inited)
+		demolist_populate();
+	inited = 1;
+	
+	// render background
+	ui_draw_rect(&main_view, color_tabbar_active, CORNER_ALL, 10.0f);
+	ui_margin(&main_view, 10.0f, &main_view);
+	
+	RECT buttonbar;
+	ui_hsplit_b(&main_view, button_height+5.0f, &main_view, &buttonbar);
+	ui_hsplit_t(&buttonbar, 5.0f, 0, &buttonbar);
+	
+	static int selected_item = -1;
+	static int num_items = 0;
+	static int demolist_id = 0;
+	
+	ui_do_listbox_start(&demolist_id, &main_view, 17.0f, "Demos", num_items, selected_item);
+	for(int i = 0; i < num_demos; i++)
+	{
+		LISTBOXITEM item = ui_do_listbox_nextitem((void*)(10+i));
+		if(item.visible)
+			ui_do_label(&item.rect, demos[i].name, item.rect.h*fontmod_height, -1);
+	}
+	selected_item = ui_do_listbox_end();
+	
+	RECT button;
+	ui_vsplit_r(&buttonbar, 120.0f, &buttonbar, &button);
+	static int play_button = 0;
+	if(ui_do_button(&play_button, "Play", 0, &button, ui_draw_menu_button, 0))
+	{
+		if(selected_item >= 0 && selected_item < num_demos)
+			client_demoplayer_play(demos[selected_item].filename);
+	}
+}
+
diff --git a/src/game/client/components/menus_ingame.cpp b/src/game/client/components/menus_ingame.cpp
index 33b4ffca..cfd92daa 100644
--- a/src/game/client/components/menus_ingame.cpp
+++ b/src/game/client/components/menus_ingame.cpp
@@ -283,7 +283,7 @@ void MENUS::render_servercontrol_map(RECT main_view)
 
 		ui_vmargin(&button, 5.0f, &button);
 		ui_do_label(&button, gameclient.maplist->name(i), 18.0f, -1);
-	}	
+	}
 }
 
 void MENUS::render_servercontrol_kick(RECT main_view)
diff --git a/src/game/client/components/players.cpp b/src/game/client/components/players.cpp
index 6bf4221e..02977632 100644
--- a/src/game/client/components/players.cpp
+++ b/src/game/client/components/players.cpp
@@ -132,7 +132,7 @@ void PLAYERS::render_player(
 	gameclient.clients[info.cid].angle = angle;
 	vec2 direction = get_direction((int)(angle*256.0f));
 	
-	if(info.local && config.cl_predict)
+	if(info.local && config.cl_predict && client_state() != CLIENTSTATE_DEMOPLAYBACK)
 	{
 		if(!gameclient.snap.local_character || (gameclient.snap.local_character->health < 0) || (gameclient.snap.gameobj && gameclient.snap.gameobj->game_over))
 		{
@@ -149,6 +149,8 @@ void PLAYERS::render_player(
 	vec2 position = mix(vec2(prev.x, prev.y), vec2(player.x, player.y), intratick);
 	vec2 vel = mix(vec2(prev.vx/256.0f, prev.vy/256.0f), vec2(player.vx/256.0f, player.vy/256.0f), intratick);
 	
+	//dbg_msg("", "%d %d %d %d %f", prev.x, prev.y, player.x, player.y, intratick);
+	
 	gameclient.flow->add(position, vel*100.0f, 10.0f);
 	
 	render_info.got_airjump = player.jumped&2?0:1;
diff --git a/src/game/client/gameclient.cpp b/src/game/client/gameclient.cpp
index 3aed1cd1..fee12eb0 100644
--- a/src/game/client/gameclient.cpp
+++ b/src/game/client/gameclient.cpp
@@ -262,8 +262,9 @@ void GAMECLIENT::on_connected()
 	layers_init();
 	col_init();
 	render_tilemap_generate_skip();
-		
-	on_reset();	
+
+	for(int i = 0; i < all.num; i++)
+		all.components[i]->on_mapload();
 	
 	// send the inital info
 	send_info(true);
@@ -313,8 +314,44 @@ void GAMECLIENT::update_local_character_pos()
 	}
 }
 
+
+static void evolve(NETOBJ_CHARACTER *character, int tick)
+{
+	WORLD_CORE tempworld;
+	CHARACTER_CORE tempcore;
+	mem_zero(&tempcore, sizeof(tempcore));
+	tempcore.world = &tempworld;
+	tempcore.read(character);
+	//tempcore.input.direction = character->wanted_direction;
+	while(character->tick < tick)
+	{
+		character->tick++;
+		tempcore.tick(false);
+		tempcore.move();
+		tempcore.quantize();
+	}
+	
+	tempcore.write(character);
+}
+
+
 void GAMECLIENT::on_render()
 {
+	// perform dead reckoning
+	// TODO: move this to a betterlocation
+	/*
+	for(int i = 0; i < MAX_CLIENTS; i++)
+	{
+		if(!snap.characters[i].active)
+			continue;
+					
+		// perform dead reckoning
+		if(snap.characters[i].prev.tick)
+			evolve(&snap.characters[i].prev, client_prevtick());
+		if(snap.characters[i].cur.tick)
+			evolve(&snap.characters[i].cur, client_tick());
+	}*/
+	
 	// update the local character position
 	update_local_character_pos();
 	
@@ -393,6 +430,9 @@ void GAMECLIENT::on_message(int msgtype)
 		if(clients[msg->cid].skin_name[0] == 'x' || clients[msg->cid].skin_name[1] == '_')
 			str_copy(clients[msg->cid].skin_name, "default", 64);
 		
+		clients[msg->cid].color_body = msg->color_body;
+		clients[msg->cid].color_feet = msg->color_feet;
+		
 		clients[msg->cid].skin_info.color_body = skins->get_color(msg->color_body);
 		clients[msg->cid].skin_info.color_feet = skins->get_color(msg->color_feet);
 		clients[msg->cid].skin_info.size = 64;
@@ -402,6 +442,8 @@ void GAMECLIENT::on_message(int msgtype)
 		if(clients[msg->cid].skin_id < 0)
 			clients[msg->cid].skin_id = 0;
 		
+		clients[msg->cid].use_custom_color = msg->use_custom_color;
+		
 		if(msg->use_custom_color)
 			clients[msg->cid].skin_info.texture = gameclient.skins->get(clients[msg->cid].skin_id)->color_texture;
 		else
@@ -485,27 +527,6 @@ void GAMECLIENT::process_events()
 	}
 }
 
-static void evolve(NETOBJ_CHARACTER *character, int tick)
-{
-	WORLD_CORE tempworld;
-	CHARACTER_CORE tempcore;
-	mem_zero(&tempcore, sizeof(tempcore));
-	tempcore.world = &tempworld;
-	tempcore.read(character);
-	//tempcore.input.direction = character->wanted_direction;
-	if(tick-character->tick > 50*3)
-		dbg_msg("", "%d -> %d = %d", character->tick, tick, tick-character->tick);
-	while(character->tick < tick)
-	{
-		character->tick++;
-		tempcore.tick(false);
-		tempcore.move();
-		tempcore.quantize();
-	}
-	
-	tempcore.write(character);
-}
-
 void GAMECLIENT::on_snapshot()
 {
 	// clear out the invalid pointers
@@ -582,7 +603,6 @@ void GAMECLIENT::on_snapshot()
 					snap.characters[item.id].prev = *((const NETOBJ_CHARACTER *)old);
 					snap.characters[item.id].cur = *((const NETOBJ_CHARACTER *)data);
 					
-					// perform dead reckoning
 					if(snap.characters[item.id].prev.tick)
 						evolve(&snap.characters[item.id].prev, client_prevtick());
 					if(snap.characters[item.id].cur.tick)
@@ -596,6 +616,9 @@ void GAMECLIENT::on_snapshot()
 		}
 	}
 	
+	if(client_state() == CLIENTSTATE_DEMOPLAYBACK)
+		gameclient.snap.spectate = true;
+	
 	// setup local pointers
 	if(snap.local_cid >= 0)
 	{
@@ -779,6 +802,25 @@ void GAMECLIENT::send_kill(int client_id)
 	client_send_msg();
 }
 
+void GAMECLIENT::on_recordkeyframe()
+{
+	for(int i = 0; i < MAX_CLIENTS; i++)
+	{
+		if(!snap.player_infos[i])
+			continue;
+			
+		NETMSG_SV_SETINFO msg;
+		msg.cid = i;
+		msg.name = clients[i].name;
+		msg.skin = clients[i].skin_name;
+		msg.use_custom_color = clients[i].use_custom_color;
+		msg.color_body = clients[i].color_body;
+		msg.color_feet = clients[i].color_feet;
+		msg.pack(MSGFLAG_NOSEND|MSGFLAG_RECORD);
+		client_send_msg();
+	}
+}
+
 void GAMECLIENT::con_team(void *result, void *user_data)
 {
 	((GAMECLIENT*)user_data)->send_switch_team(console_arg_int(result, 0));
diff --git a/src/game/client/gameclient.hpp b/src/game/client/gameclient.hpp
index 3ced19ce..b9ee325e 100644
--- a/src/game/client/gameclient.hpp
+++ b/src/game/client/gameclient.hpp
@@ -83,6 +83,10 @@ public:
 	// client data
 	struct CLIENT_DATA
 	{
+		int use_custom_color;
+		int color_body;
+		int color_feet;
+		
 		char name[64];
 		char skin_name[64];
 		int skin_id;
@@ -115,6 +119,7 @@ public:
 	void on_snapshot();
 	void on_predict();
 	int on_snapinput(int *data);
+	void on_recordkeyframe();
 
 	// actions
 	// TODO: move these
diff --git a/src/game/server/entities/character.cpp b/src/game/server/entities/character.cpp
index 071407b1..0516ddc5 100644
--- a/src/game/server/entities/character.cpp
+++ b/src/game/server/entities/character.cpp
@@ -828,7 +828,7 @@ bool CHARACTER::take_damage(vec2 force, int dmg, int from, int weapon)
 
 void CHARACTER::snap(int snaping_client)
 {
-	if(distance(game.players[snaping_client]->view_pos, pos) > 1000.0f)
+	if(networkclipped(snaping_client))
 		return;
 	
 	NETOBJ_CHARACTER *character = (NETOBJ_CHARACTER *)snap_new_item(NETOBJTYPE_CHARACTER, player->client_id, sizeof(NETOBJ_CHARACTER));
diff --git a/src/game/server/entities/laser.cpp b/src/game/server/entities/laser.cpp
index 4e9909ba..8b512d82 100644
--- a/src/game/server/entities/laser.cpp
+++ b/src/game/server/entities/laser.cpp
@@ -100,7 +100,7 @@ void LASER::tick()
 
 void LASER::snap(int snapping_client)
 {
-	if(distance(game.players[snapping_client]->view_pos, pos) > 1000.0f)
+	if(networkclipped(snapping_client))
 		return;
 
 	NETOBJ_LASER *obj = (NETOBJ_LASER *)snap_new_item(NETOBJTYPE_LASER, id, sizeof(NETOBJ_LASER));
diff --git a/src/game/server/entities/projectile.cpp b/src/game/server/entities/projectile.cpp
index a2e10437..cd15ba10 100644
--- a/src/game/server/entities/projectile.cpp
+++ b/src/game/server/entities/projectile.cpp
@@ -78,9 +78,7 @@ void PROJECTILE::tick()
 		if(flags & PROJECTILE_FLAGS_EXPLODE)
 			game.create_explosion(curpos, owner, weapon, false);
 		else if(targetchr)
-		{
 			targetchr->take_damage(direction * max(0.001f, force), damage, owner, weapon);
-		}
 
 		game.world.destroy_entity(this);
 	}
@@ -100,7 +98,7 @@ void PROJECTILE::snap(int snapping_client)
 {
 	float ct = (server_tick()-start_tick)/(float)server_tickspeed();
 	
-	if(distance(game.players[snapping_client]->view_pos, get_pos(ct)) > 1000.0f)
+	if(networkclipped(snapping_client, get_pos(ct)))
 		return;
 
 	NETOBJ_PROJECTILE *proj = (NETOBJ_PROJECTILE *)snap_new_item(NETOBJTYPE_PROJECTILE, id, sizeof(NETOBJ_PROJECTILE));
diff --git a/src/game/server/entity.cpp b/src/game/server/entity.cpp
index 2cc7c8f7..1af5f60a 100644
--- a/src/game/server/entity.cpp
+++ b/src/game/server/entity.cpp
@@ -26,3 +26,17 @@ ENTITY::~ENTITY()
 	game.world.remove_entity(this);
 	snap_free_id(id);
 }
+
+int ENTITY::networkclipped(int snapping_client)
+{
+	return networkclipped(snapping_client, pos);
+}
+
+int ENTITY::networkclipped(int snapping_client, vec2 check_pos)
+{
+	if(snapping_client == -1)
+		return 0;
+	if(distance(game.players[snapping_client]->view_pos, check_pos) > 1000.0f)
+		return 1;
+	return 0;
+}
diff --git a/src/game/server/entity.hpp b/src/game/server/entity.hpp
index 8ccb2d9a..debe57b6 100644
--- a/src/game/server/entity.hpp
+++ b/src/game/server/entity.hpp
@@ -74,34 +74,34 @@ public:
 
 	/*
 		Function: destroy
-		Destorys the entity.
+			Destorys the entity.
 	*/
 	virtual void destroy() { delete this; }
 		
 	/*
 		Function: reset
-		Called when the game resets the map. Puts the entity
-		back to it's starting state or perhaps destroys it.
+			Called when the game resets the map. Puts the entity
+			back to it's starting state or perhaps destroys it.
 	*/
 	virtual void reset() {}
 	
 	/*
 		Function: tick
-		Called progress the entity to the next tick. Updates
-		and moves the entity to it's new state and position.
+			Called progress the entity to the next tick. Updates
+			and moves the entity to it's new state and position.
 	*/
 	virtual void tick() {}
 
 	/*
 		Function: tick_defered
-		Called after all entities tick() function has been called.
+			Called after all entities tick() function has been called.
 	*/
 	virtual void tick_defered() {}
 	
 	/*
 		Function: snap
-		Called when a new snapshot is being generated for a specific
-		client.
+			Called when a new snapshot is being generated for a specific
+			client.
 		
 		Arguments:
 			snapping_client - ID of the client which snapshot is
@@ -110,16 +110,34 @@ public:
 				recording.
 	*/
 	virtual void snap(int snapping_client) {}
+	
+	/*
+		Function: networkclipped(int snapping_client)
+			Performs a series of test to see if a client can see the
+			entity.
+
+		Arguments:
+			snapping_client - ID of the client which snapshot is
+				being generated. Could be -1 to create a complete
+				snapshot of everything in the game for demo
+				recording.
+			
+		Returns:
+			Non-zero if the entity doesn't have to be in the snapshot.
+	*/
+	int networkclipped(int snapping_client);
+	int networkclipped(int snapping_client, vec2 check_pos);
+		
 
 	/*
 		Variable: proximity_radius
-		Contains the physical size of the entity.
+			Contains the physical size of the entity.
 	*/
 	float proximity_radius;
 	
 	/*
 		Variable: pos
-		Contains the current posititon of the entity.
+			Contains the current posititon of the entity.
 	*/
 	vec2 pos;
 };
diff --git a/src/game/server/eventhandler.cpp b/src/game/server/eventhandler.cpp
index ce6a3b71..761eaf2c 100644
--- a/src/game/server/eventhandler.cpp
+++ b/src/game/server/eventhandler.cpp
@@ -36,10 +36,10 @@ void EVENTHANDLER::snap(int snapping_client)
 {
 	for(int i = 0; i < num_events; i++)
 	{
-		if(cmask_is_set(client_masks[i], snapping_client))
+		if(snapping_client == -1 || cmask_is_set(client_masks[i], snapping_client))
 		{
 			NETEVENT_COMMON *ev = (NETEVENT_COMMON *)&data[offsets[i]];
-			if(distance(game.players[snapping_client]->view_pos, vec2(ev->x, ev->y)) < 1500.0f)
+			if(snapping_client == -1 || distance(game.players[snapping_client]->view_pos, vec2(ev->x, ev->y)) < 1500.0f)
 			{
 				void *d = snap_new_item(types[i], i, sizes[i]);
 				mem_copy(d, &data[offsets[i]], sizes[i]);
diff --git a/src/game/server/gamecontext.cpp b/src/game/server/gamecontext.cpp
index fb426ad6..0cdd4227 100644
--- a/src/game/server/gamecontext.cpp
+++ b/src/game/server/gamecontext.cpp
@@ -171,7 +171,7 @@ void GAMECONTEXT::send_chat(int chatter_cid, int team, const char *text)
 }
 
 
-void GAMECONTEXT::send_info(int who, int to_who)
+void GAMECONTEXT::send_info(int who, int to_who, bool recordonly)
 {
 	NETMSG_SV_SETINFO msg;
 	msg.cid = who;
@@ -180,9 +180,17 @@ void GAMECONTEXT::send_info(int who, int to_who)
 	msg.use_custom_color = players[who]->use_custom_color;
 	msg.color_body = players[who]->color_body;
 	msg.color_feet = players[who]->color_feet;
-	msg.pack(MSGFLAG_VITAL);
 	
-	server_send_msg(to_who);
+	if(recordonly)
+	{
+		msg.pack(MSGFLAG_NOSEND);
+		server_send_msg(to_who);
+	}
+	else
+	{
+		msg.pack(MSGFLAG_VITAL);
+		server_send_msg(to_who);
+	}
 }
 
 void GAMECONTEXT::send_emoticon(int cid, int emoticon)
@@ -333,6 +341,18 @@ void GAMECONTEXT::tick()
 
 void GAMECONTEXT::snap(int client_id)
 {
+	// check if we are recording a demo
+	if(client_id == -1)
+	{
+		// we are recording, make sure that we set
+		// the info for all players all the time
+		for(int i = 0; i < MAX_CLIENTS; i++)
+		{
+			if(game.players[i])
+				send_info(i, -1, true);
+		}
+	}
+	
 	world.snap(client_id);
 	controller->snap(client_id);
 	events.snap(client_id);
diff --git a/src/game/server/gamecontext.hpp b/src/game/server/gamecontext.hpp
index 124df645..8a1ff918 100644
--- a/src/game/server/gamecontext.hpp
+++ b/src/game/server/gamecontext.hpp
@@ -77,7 +77,7 @@ public:
 	void send_emoticon(int cid, int emoticon);
 	void send_weapon_pickup(int cid, int weapon);
 	void send_broadcast(const char *text, int cid);
-	void send_info(int who, int to_who);
+	void send_info(int who, int to_who, bool recordonly = false);
 
 };
 
diff --git a/src/game/server/gamecontroller.cpp b/src/game/server/gamecontroller.cpp
index 7329240b..aa8c09b7 100644
--- a/src/game/server/gamecontroller.cpp
+++ b/src/game/server/gamecontroller.cpp
@@ -457,8 +457,19 @@ void GAMECONTROLLER::snap(int snapping_client)
 	gameobj->round_num = (strlen(config.sv_maprotation) || config.sv_rounds_per_map > 1) ? config.sv_rounds_per_map : 0;
 	gameobj->round_current = round_count+1;
 	
-	gameobj->teamscore_red = is_teamplay() ? teamscore[0] : game.players[snapping_client]->score;
-	gameobj->teamscore_blue = teamscore[1];
+	
+	if(snapping_client == -1)
+	{
+		// we are recording a demo, just set the scores
+		gameobj->teamscore_red = teamscore[0];
+		gameobj->teamscore_blue = teamscore[1];
+	}
+	else
+	{
+		// TODO: this little hack should be removed
+		gameobj->teamscore_red = is_teamplay() ? teamscore[0] : game.players[snapping_client]->score;
+		gameobj->teamscore_blue = teamscore[1];
+	}
 }
 
 int GAMECONTROLLER::get_auto_team(int notthisid)