From 0fceb1cf1ab9887040f08f0abf646ef318a65ae3 Mon Sep 17 00:00:00 2001 From: Magnus Auvinen Date: Tue, 5 Aug 2008 21:37:33 +0000 Subject: added documentation --- docs/conf/Data/ClassHierarchy.nd | Bin 433 -> 772 bytes docs/conf/Data/ConfigFileInfo.nd | Bin 23 -> 26 bytes docs/conf/Data/FileInfo.nd | 169 ++++-- docs/conf/Data/ImageFileInfo.nd | Bin 0 -> 8 bytes docs/conf/Data/ImageReferenceTable.nd | Bin 0 -> 8 bytes docs/conf/Data/IndexInfo.nd | Bin 0 -> 192 bytes docs/conf/Data/PreviousMenuState.nd | Bin 1059 -> 1291 bytes docs/conf/Data/PreviousSettings.nd | Bin 102 -> 154 bytes docs/conf/Data/SymbolTable.nd | Bin 35645 -> 51409 bytes docs/conf/Menu.txt | 37 +- docs/conf/Menu_Backup.txt | 66 --- docs/output/files/server/gs_common-hpp.html | 87 +++ docs/output/files2/docs/client_time-txt.html | 39 ++ docs/output/files2/docs/prediction-txt.html | 51 ++ docs/output/files2/docs/server_op-txt.html | 69 +++ docs/output/files2/docs/snapshots-txt.html | 63 ++ docs/output/files2/e_if_client-h.html | 127 ++++ docs/output/files2/e_if_gfx-h.html | 139 +++++ docs/output/files2/e_if_inp-h.html | 73 +++ docs/output/files2/e_if_modc-h.html | 69 +++ docs/output/files2/e_if_mods-h.html | 71 +++ docs/output/files2/e_if_msg-h.html | 59 ++ docs/output/files2/e_if_other-h.html | 89 +++ docs/output/files2/e_if_server-h.html | 59 ++ docs/output/files2/e_if_snd-h.html | 53 ++ docs/output/files2/e_system-h.html | 183 ++++++ docs/output/index.html | 1 + docs/output/index/Classes.html | 54 ++ docs/output/index/Constants.html | 50 ++ docs/output/index/Functions.html | 42 ++ docs/output/index/Functions2.html | 38 ++ docs/output/index/Functions3.html | 34 ++ docs/output/index/Functions4.html | 46 ++ docs/output/index/Functions5.html | 34 ++ docs/output/index/General.html | 54 ++ docs/output/index/General2.html | 38 ++ docs/output/index/General3.html | 38 ++ docs/output/index/General4.html | 34 ++ docs/output/index/General5.html | 50 ++ docs/output/index/General6.html | 50 ++ docs/output/index/Variables.html | 50 ++ docs/output/javascript/main.js | 836 +++++++++++++++++++++++++++ docs/output/javascript/searchdata.js | 152 +++++ docs/output/search/ClassesC.html | 20 + docs/output/search/ClassesE.html | 20 + docs/output/search/ClassesG.html | 20 + docs/output/search/ClassesI.html | 20 + docs/output/search/ClassesS.html | 20 + docs/output/search/ClassesV.html | 20 + docs/output/search/ConstantsB.html | 20 + docs/output/search/ConstantsC.html | 20 + docs/output/search/ConstantsI.html | 20 + docs/output/search/ConstantsS.html | 20 + docs/output/search/ConstantsT.html | 20 + docs/output/search/FunctionsC.html | 20 + docs/output/search/FunctionsD.html | 20 + docs/output/search/FunctionsF.html | 20 + docs/output/search/FunctionsG.html | 20 + docs/output/search/FunctionsI.html | 20 + docs/output/search/FunctionsM.html | 20 + docs/output/search/FunctionsN.html | 20 + docs/output/search/FunctionsO.html | 20 + docs/output/search/FunctionsR.html | 20 + docs/output/search/FunctionsS.html | 20 + docs/output/search/FunctionsT.html | 20 + docs/output/search/GeneralA.html | 20 + docs/output/search/GeneralB.html | 20 + docs/output/search/GeneralC.html | 20 + docs/output/search/GeneralD.html | 20 + docs/output/search/GeneralE.html | 20 + docs/output/search/GeneralF.html | 20 + docs/output/search/GeneralG.html | 20 + docs/output/search/GeneralH.html | 20 + docs/output/search/GeneralI.html | 20 + docs/output/search/GeneralL.html | 20 + docs/output/search/GeneralM.html | 20 + docs/output/search/GeneralN.html | 20 + docs/output/search/GeneralO.html | 20 + docs/output/search/GeneralP.html | 20 + docs/output/search/GeneralQ.html | 20 + docs/output/search/GeneralR.html | 20 + docs/output/search/GeneralS.html | 20 + docs/output/search/GeneralT.html | 20 + docs/output/search/GeneralU.html | 20 + docs/output/search/GeneralV.html | 20 + docs/output/search/GeneralW.html | 20 + docs/output/search/NoResults.html | 15 + docs/output/search/VariablesD.html | 20 + docs/output/search/VariablesF.html | 20 + docs/output/search/VariablesH.html | 20 + docs/output/search/VariablesP.html | 20 + docs/output/search/VariablesW.html | 20 + docs/output/styles/main.css | 767 ++++++++++++++++++++++++ 93 files changed, 4713 insertions(+), 133 deletions(-) create mode 100644 docs/conf/Data/ImageFileInfo.nd create mode 100644 docs/conf/Data/ImageReferenceTable.nd create mode 100644 docs/conf/Data/IndexInfo.nd delete mode 100644 docs/conf/Menu_Backup.txt create mode 100644 docs/output/files/server/gs_common-hpp.html create mode 100644 docs/output/files2/docs/client_time-txt.html create mode 100644 docs/output/files2/docs/prediction-txt.html create mode 100644 docs/output/files2/docs/server_op-txt.html create mode 100644 docs/output/files2/docs/snapshots-txt.html create mode 100644 docs/output/files2/e_if_client-h.html create mode 100644 docs/output/files2/e_if_gfx-h.html create mode 100644 docs/output/files2/e_if_inp-h.html create mode 100644 docs/output/files2/e_if_modc-h.html create mode 100644 docs/output/files2/e_if_mods-h.html create mode 100644 docs/output/files2/e_if_msg-h.html create mode 100644 docs/output/files2/e_if_other-h.html create mode 100644 docs/output/files2/e_if_server-h.html create mode 100644 docs/output/files2/e_if_snd-h.html create mode 100644 docs/output/files2/e_system-h.html create mode 100644 docs/output/index.html create mode 100644 docs/output/index/Classes.html create mode 100644 docs/output/index/Constants.html create mode 100644 docs/output/index/Functions.html create mode 100644 docs/output/index/Functions2.html create mode 100644 docs/output/index/Functions3.html create mode 100644 docs/output/index/Functions4.html create mode 100644 docs/output/index/Functions5.html create mode 100644 docs/output/index/General.html create mode 100644 docs/output/index/General2.html create mode 100644 docs/output/index/General3.html create mode 100644 docs/output/index/General4.html create mode 100644 docs/output/index/General5.html create mode 100644 docs/output/index/General6.html create mode 100644 docs/output/index/Variables.html create mode 100644 docs/output/javascript/main.js create mode 100644 docs/output/javascript/searchdata.js create mode 100644 docs/output/search/ClassesC.html create mode 100644 docs/output/search/ClassesE.html create mode 100644 docs/output/search/ClassesG.html create mode 100644 docs/output/search/ClassesI.html create mode 100644 docs/output/search/ClassesS.html create mode 100644 docs/output/search/ClassesV.html create mode 100644 docs/output/search/ConstantsB.html create mode 100644 docs/output/search/ConstantsC.html create mode 100644 docs/output/search/ConstantsI.html create mode 100644 docs/output/search/ConstantsS.html create mode 100644 docs/output/search/ConstantsT.html create mode 100644 docs/output/search/FunctionsC.html create mode 100644 docs/output/search/FunctionsD.html create mode 100644 docs/output/search/FunctionsF.html create mode 100644 docs/output/search/FunctionsG.html create mode 100644 docs/output/search/FunctionsI.html create mode 100644 docs/output/search/FunctionsM.html create mode 100644 docs/output/search/FunctionsN.html create mode 100644 docs/output/search/FunctionsO.html create mode 100644 docs/output/search/FunctionsR.html create mode 100644 docs/output/search/FunctionsS.html create mode 100644 docs/output/search/FunctionsT.html create mode 100644 docs/output/search/GeneralA.html create mode 100644 docs/output/search/GeneralB.html create mode 100644 docs/output/search/GeneralC.html create mode 100644 docs/output/search/GeneralD.html create mode 100644 docs/output/search/GeneralE.html create mode 100644 docs/output/search/GeneralF.html create mode 100644 docs/output/search/GeneralG.html create mode 100644 docs/output/search/GeneralH.html create mode 100644 docs/output/search/GeneralI.html create mode 100644 docs/output/search/GeneralL.html create mode 100644 docs/output/search/GeneralM.html create mode 100644 docs/output/search/GeneralN.html create mode 100644 docs/output/search/GeneralO.html create mode 100644 docs/output/search/GeneralP.html create mode 100644 docs/output/search/GeneralQ.html create mode 100644 docs/output/search/GeneralR.html create mode 100644 docs/output/search/GeneralS.html create mode 100644 docs/output/search/GeneralT.html create mode 100644 docs/output/search/GeneralU.html create mode 100644 docs/output/search/GeneralV.html create mode 100644 docs/output/search/GeneralW.html create mode 100644 docs/output/search/NoResults.html create mode 100644 docs/output/search/VariablesD.html create mode 100644 docs/output/search/VariablesF.html create mode 100644 docs/output/search/VariablesH.html create mode 100644 docs/output/search/VariablesP.html create mode 100644 docs/output/search/VariablesW.html create mode 100644 docs/output/styles/main.css (limited to 'docs') diff --git a/docs/conf/Data/ClassHierarchy.nd b/docs/conf/Data/ClassHierarchy.nd index c541d655..94b7ace1 100644 Binary files a/docs/conf/Data/ClassHierarchy.nd and b/docs/conf/Data/ClassHierarchy.nd differ diff --git a/docs/conf/Data/ConfigFileInfo.nd b/docs/conf/Data/ConfigFileInfo.nd index 108a0142..cdec66fb 100644 Binary files a/docs/conf/Data/ConfigFileInfo.nd and b/docs/conf/Data/ConfigFileInfo.nd differ diff --git a/docs/conf/Data/FileInfo.nd b/docs/conf/Data/FileInfo.nd index 119e6c07..54b8834a 100644 --- a/docs/conf/Data/FileInfo.nd +++ b/docs/conf/Data/FileInfo.nd @@ -1,51 +1,120 @@ -1.35 +1.4 C/C++ -/home/kma/code/teewars/trunk/src/engine/e_memheap.h 1197706562 0 /home/kma/code/teewars/trunk/src/engine/e_memheap.h -/home/kma/code/teewars/trunk/src/engine/client/ec_font.h 1200146774 0 /home/kma/code/teewars/trunk/src/engine/client/ec_font.h -/home/kma/code/teewars/trunk/src/engine/e_console.c 1200611479 0 /home/kma/code/teewars/trunk/src/engine/e_console.c -/home/kma/code/teewars/trunk/src/engine/e_if_modc.h 1200740313 1 Client Hooks -/home/kma/code/teewars/trunk/src/engine/e_protocol.h 1197711693 0 /home/kma/code/teewars/trunk/src/engine/e_protocol.h -/home/kma/code/teewars/trunk/src/engine/client/ec_inp.c 1200740188 0 /home/kma/code/teewars/trunk/src/engine/client/ec_inp.c -/home/kma/code/teewars/trunk/src/engine/e_memheap.c 1197707815 0 /home/kma/code/teewars/trunk/src/engine/e_memheap.c -/home/kma/code/teewars/trunk/src/engine/e_if_snd.h 1200736177 1 Sound -/home/kma/code/teewars/trunk/src/engine/e_keynames.c 1197706547 0 /home/kma/code/teewars/trunk/src/engine/e_keynames.c -/home/kma/code/teewars/trunk/src/engine/e_system.h 1197707754 1 /home/kma/code/teewars/trunk/src/engine/e_system.h -/home/kma/code/teewars/trunk/src/engine/e_if_client.h 1200739934 1 Constants -/home/kma/code/teewars/trunk/src/engine/e_if_gfx.h 1200736418 1 Structures -/home/kma/code/teewars/trunk/src/engine/e_server_interface.h 1200739892 0 /home/kma/code/teewars/trunk/src/engine/e_server_interface.h -/home/kma/code/teewars/trunk/src/engine/e_if_msg.h 1200736131 1 Messaging -/home/kma/code/teewars/trunk/src/engine/e_msg.c 1200708999 0 /home/kma/code/teewars/trunk/src/engine/e_msg.c -/home/kma/code/teewars/trunk/src/engine/server/es_server.c 1200709433 0 /home/kma/code/teewars/trunk/src/engine/server/es_server.c -/home/kma/code/teewars/trunk/src/engine/client/ec_font.c 1200146774 0 /home/kma/code/teewars/trunk/src/engine/client/ec_font.c -/home/kma/code/teewars/trunk/src/engine/docs/client_time.txt 1200739319 1 Time on the client -/home/kma/code/teewars/trunk/src/engine/e_engine.c 1200708926 0 /home/kma/code/teewars/trunk/src/engine/e_engine.c -/home/kma/code/teewars/trunk/src/engine/e_system.c 1200521738 0 /home/kma/code/teewars/trunk/src/engine/e_system.c -/home/kma/code/teewars/trunk/src/engine/e_snapshot.h 1197707840 0 /home/kma/code/teewars/trunk/src/engine/e_snapshot.h -/home/kma/code/teewars/trunk/src/engine/e_client_interface.h 1200739926 0 /home/kma/code/teewars/trunk/src/engine/e_client_interface.h -/home/kma/code/teewars/trunk/src/engine/e_if_mods.h 1200736122 1 Server Hooks -/home/kma/code/teewars/trunk/src/engine/client/ec_client.c 1200740188 0 /home/kma/code/teewars/trunk/src/engine/client/ec_client.c -/home/kma/code/teewars/trunk/src/engine/client/ec_srvbrowse.c 1200709484 0 /home/kma/code/teewars/trunk/src/engine/client/ec_srvbrowse.c -/home/kma/code/teewars/trunk/src/engine/e_detect.h 1197706565 0 /home/kma/code/teewars/trunk/src/engine/e_detect.h -/home/kma/code/teewars/trunk/src/engine/e_compression.c 1197707819 0 /home/kma/code/teewars/trunk/src/engine/e_compression.c -/home/kma/code/teewars/trunk/src/engine/e_config.c 1200521738 0 /home/kma/code/teewars/trunk/src/engine/e_config.c -/home/kma/code/teewars/trunk/src/engine/e_packer.h 1197706544 0 /home/kma/code/teewars/trunk/src/engine/e_packer.h -/home/kma/code/teewars/trunk/src/engine/e_config_variables.h 1200222141 0 /home/kma/code/teewars/trunk/src/engine/e_config_variables.h -/home/kma/code/teewars/trunk/src/engine/e_map.c 1200169662 0 /home/kma/code/teewars/trunk/src/engine/e_map.c -/home/kma/code/teewars/trunk/src/engine/e_if_server.h 1200736134 1 Server Hooks -/home/kma/code/teewars/trunk/src/engine/e_network.h 1198020654 0 /home/kma/code/teewars/trunk/src/engine/e_network.h -/home/kma/code/teewars/trunk/src/engine/e_packer.c 1197707860 0 /home/kma/code/teewars/trunk/src/engine/e_packer.c -/home/kma/code/teewars/trunk/src/engine/e_config.h 1200521738 0 /home/kma/code/teewars/trunk/src/engine/e_config.h -/home/kma/code/teewars/trunk/src/engine/e_keys.h 1197706560 0 /home/kma/code/teewars/trunk/src/engine/e_keys.h -/home/kma/code/teewars/trunk/src/engine/docs/prediction.txt 1200739838 1 Prediction -/home/kma/code/teewars/trunk/src/engine/e_datafile.h 1200146774 0 /home/kma/code/teewars/trunk/src/engine/e_datafile.h -/home/kma/code/teewars/trunk/src/engine/e_engine.h 1197706566 0 /home/kma/code/teewars/trunk/src/engine/e_engine.h -/home/kma/code/teewars/trunk/src/engine/e_snapshot.c 1200708962 0 /home/kma/code/teewars/trunk/src/engine/e_snapshot.c -/home/kma/code/teewars/trunk/src/engine/e_compression.h 1197706556 0 /home/kma/code/teewars/trunk/src/engine/e_compression.h -/home/kma/code/teewars/trunk/src/engine/e_console.h 1200611479 0 /home/kma/code/teewars/trunk/src/engine/e_console.h -/home/kma/code/teewars/trunk/src/engine/client/ec_snd.c 1200709488 0 /home/kma/code/teewars/trunk/src/engine/client/ec_snd.c -/home/kma/code/teewars/trunk/src/engine/e_common_interface.h 1200739880 0 /home/kma/code/teewars/trunk/src/engine/e_common_interface.h -/home/kma/code/teewars/trunk/src/engine/e_network.c 1198110343 0 /home/kma/code/teewars/trunk/src/engine/e_network.c -/home/kma/code/teewars/trunk/src/engine/e_if_inp.h 1200740278 1 Input -/home/kma/code/teewars/trunk/src/engine/e_if_other.h 1200739887 1 Engine Interface -/home/kma/code/teewars/trunk/src/engine/e_datafile.c 1200747775 0 /home/kma/code/teewars/trunk/src/engine/e_datafile.c -/home/kma/code/teewars/trunk/src/engine/client/ec_gfx.c 1200709490 0 /home/kma/code/teewars/trunk/src/engine/client/ec_gfx.c +/home/kma/code/teeworlds/trunk/src/engine/e_if_client.h 1217537461 1 Client Interface +/home/kma/code/teeworlds/trunk/src/engine/e_keys.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_keys.h +/home/kma/code/teeworlds/trunk/src/game/g_collision.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/g_collision.cpp +/home/kma/code/teeworlds/trunk/src/game/g_version.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/g_version.hpp +/home/kma/code/teeworlds/trunk/src/engine/e_engine.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_engine.c +/home/kma/code/teeworlds/trunk/src/engine/e_huffman.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_huffman.h +/home/kma/code/teeworlds/trunk/src/game/generated/gs_data.hpp 1217543202 0 /home/kma/code/teeworlds/trunk/src/game/generated/gs_data.hpp +/home/kma/code/teeworlds/trunk/src/engine/e_if_modc.h 1217537461 1 Client Hooks +/home/kma/code/teeworlds/trunk/src/game/g_collision.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/g_collision.hpp +/home/kma/code/teeworlds/trunk/src/engine/client/ec_srvbrowse.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/client/ec_srvbrowse.c +/home/kma/code/teeworlds/trunk/src/engine/e_ringbuffer.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_ringbuffer.c +/home/kma/code/teeworlds/trunk/src/game/client/gc_map_image.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_map_image.hpp +/home/kma/code/teeworlds/trunk/src/game/editor/ed_editor.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/editor/ed_editor.hpp +/home/kma/code/teeworlds/trunk/src/engine/e_server_interface.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_server_interface.h +/home/kma/code/teeworlds/trunk/src/game/client/gc_ui.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_ui.cpp +/home/kma/code/teeworlds/trunk/src/engine/e_compression.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_compression.c +/home/kma/code/teeworlds/trunk/src/game/g_math.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/g_math.hpp +/home/kma/code/teeworlds/trunk/src/game/editor/array.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/editor/array.hpp +/home/kma/code/teeworlds/trunk/src/engine/e_if_msg.h 1217537461 1 Messaging +/home/kma/code/teeworlds/trunk/src/engine/e_packer.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_packer.c +/home/kma/code/teeworlds/trunk/src/engine/e_packer.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_packer.h +/home/kma/code/teeworlds/trunk/src/game/g_mapitems.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/g_mapitems.hpp +/home/kma/code/teeworlds/trunk/src/engine/e_config.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_config.h +/home/kma/code/teeworlds/trunk/src/game/editor/ed_io.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/editor/ed_io.cpp +/home/kma/code/teeworlds/trunk/src/game/client/gc_particles.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_particles.cpp +/home/kma/code/teeworlds/trunk/src/engine/client/ec_font.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/client/ec_font.h +/home/kma/code/teeworlds/trunk/src/engine/e_msg.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_msg.c +/home/kma/code/teeworlds/trunk/src/engine/e_memheap.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_memheap.c +/home/kma/code/teeworlds/trunk/src/engine/e_compression.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_compression.h +/home/kma/code/teeworlds/trunk/src/game/generated/createdir.txt 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/generated/createdir.txt +/home/kma/code/teeworlds/trunk/src/game/server/gs_ent_pickup.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/server/gs_ent_pickup.cpp +/home/kma/code/teeworlds/trunk/src/engine/e_engine.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_engine.h +/home/kma/code/teeworlds/trunk/src/game/server/gs_game_tdm.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/server/gs_game_tdm.cpp +/home/kma/code/teeworlds/trunk/src/game/generated/gc_data.cpp 1217543361 0 /home/kma/code/teeworlds/trunk/src/game/generated/gc_data.cpp +/home/kma/code/teeworlds/trunk/src/game/client/gc_client.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_client.hpp +/home/kma/code/teeworlds/trunk/src/engine/docs/client_time.txt 1217537458 1 Time on the client +/home/kma/code/teeworlds/trunk/src/engine/e_detect.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_detect.h +/home/kma/code/teeworlds/trunk/src/game/client/gc_client.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_client.cpp +/home/kma/code/teeworlds/trunk/src/game/generated/g_protocol.cpp 1217543206 0 /home/kma/code/teeworlds/trunk/src/game/generated/g_protocol.cpp +/home/kma/code/teeworlds/trunk/src/engine/client/ec_client.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/client/ec_client.c +/home/kma/code/teeworlds/trunk/src/engine/e_datafile.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_datafile.h +/home/kma/code/teeworlds/trunk/src/game/g_game.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/g_game.cpp +/home/kma/code/teeworlds/trunk/src/engine/e_linereader.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_linereader.h +/home/kma/code/teeworlds/trunk/src/game/g_layers.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/g_layers.hpp +/home/kma/code/teeworlds/trunk/src/engine/e_if_snd.h 1217537461 1 Sound +/home/kma/code/teeworlds/trunk/src/game/client/gc_anim.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_anim.hpp +/home/kma/code/teeworlds/trunk/src/game/generated/gs_data.cpp 1217543202 0 /home/kma/code/teeworlds/trunk/src/game/generated/gs_data.cpp +/home/kma/code/teeworlds/trunk/src/game/server/gs_game.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/server/gs_game.cpp +/home/kma/code/teeworlds/trunk/src/engine/e_snapshot.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_snapshot.h +/home/kma/code/teeworlds/trunk/src/engine/e_client_interface.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_client_interface.h +/home/kma/code/teeworlds/trunk/src/game/editor/ed_layer_tiles.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/editor/ed_layer_tiles.cpp +/home/kma/code/teeworlds/trunk/src/engine/e_network.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_network.h +/home/kma/code/teeworlds/trunk/src/engine/e_if_other.h 1217765015 1 Engine Interface +/home/kma/code/teeworlds/trunk/src/engine/e_config.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_config.c +/home/kma/code/teeworlds/trunk/src/game/client/gc_console.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_console.hpp +/home/kma/code/teeworlds/trunk/src/game/server/gs_ent_player.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/server/gs_ent_player.cpp +/home/kma/code/teeworlds/trunk/src/game/g_variables.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/g_variables.hpp +/home/kma/code/teeworlds/trunk/src/engine/e_config_variables.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_config_variables.h +/home/kma/code/teeworlds/trunk/src/game/client/gc_flow.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_flow.cpp +/home/kma/code/teeworlds/trunk/src/game/editor/ed_layer_game.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/editor/ed_layer_game.cpp +/home/kma/code/teeworlds/trunk/src/engine/e_keynames.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_keynames.c +/home/kma/code/teeworlds/trunk/src/game/server/gs_game_ctf.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/server/gs_game_ctf.cpp +/home/kma/code/teeworlds/trunk/src/engine/docs/prediction.txt 1217537458 1 Prediction +/home/kma/code/teeworlds/trunk/src/game/editor/ed_popups.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/editor/ed_popups.cpp +/home/kma/code/teeworlds/trunk/src/engine/client/ec_font.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/client/ec_font.c +/home/kma/code/teeworlds/trunk/src/game/client/gc_menu.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_menu.cpp +/home/kma/code/teeworlds/trunk/src/engine/e_map.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_map.c +/home/kma/code/teeworlds/trunk/src/game/server/gs_common.hpp 1217671618 1 Entity +/home/kma/code/teeworlds/trunk/src/engine/e_common_interface.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_common_interface.h +/home/kma/code/teeworlds/trunk/src/game/client/gc_render_obj.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_render_obj.cpp +/home/kma/code/teeworlds/trunk/src/engine/e_if_mods.h 1217537461 1 Server Hooks +/home/kma/code/teeworlds/trunk/src/engine/e_console.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_console.c +/home/kma/code/teeworlds/trunk/src/game/client/gc_map_image.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_map_image.cpp +/home/kma/code/teeworlds/trunk/src/game/client/gc_render_map.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_render_map.cpp +/home/kma/code/teeworlds/trunk/src/game/server/gs_game_dm.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/server/gs_game_dm.hpp +/home/kma/code/teeworlds/trunk/src/game/server/gs_server.cpp 1217593600 0 /home/kma/code/teeworlds/trunk/src/game/server/gs_server.cpp +/home/kma/code/teeworlds/trunk/src/engine/client/ec_inp.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/client/ec_inp.c +/home/kma/code/teeworlds/trunk/src/game/server/gs_game_ctf.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/server/gs_game_ctf.hpp +/home/kma/code/teeworlds/trunk/src/engine/client/ec_snd.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/client/ec_snd.c +/home/kma/code/teeworlds/trunk/src/engine/e_if_inp.h 1217537461 1 Input +/home/kma/code/teeworlds/trunk/src/engine/e_system.c 1217588360 0 /home/kma/code/teeworlds/trunk/src/engine/e_system.c +/home/kma/code/teeworlds/trunk/src/engine/client/ec_gfx.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/client/ec_gfx.c +/home/kma/code/teeworlds/trunk/src/engine/server/es_server.c 1217537458 0 /home/kma/code/teeworlds/trunk/src/engine/server/es_server.c +/home/kma/code/teeworlds/trunk/src/game/g_vmath.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/g_vmath.hpp +/home/kma/code/teeworlds/trunk/src/game/g_game.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/g_game.hpp +/home/kma/code/teeworlds/trunk/src/game/g_layers.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/g_layers.cpp +/home/kma/code/teeworlds/trunk/src/engine/e_snapshot.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_snapshot.c +/home/kma/code/teeworlds/trunk/src/engine/e_system.h 1217671429 1 OS Abstraction +/home/kma/code/teeworlds/trunk/src/game/client/gc_skin.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_skin.cpp +/home/kma/code/teeworlds/trunk/src/engine/e_linereader.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_linereader.c +/home/kma/code/teeworlds/trunk/src/engine/docs/snapshots.txt 1217768350 1 Snapshots +/home/kma/code/teeworlds/trunk/src/game/generated/gc_data.hpp 1217543357 0 /home/kma/code/teeworlds/trunk/src/game/generated/gc_data.hpp +/home/kma/code/teeworlds/trunk/src/game/generated/nethash.c 1217543205 0 /home/kma/code/teeworlds/trunk/src/game/generated/nethash.c +/home/kma/code/teeworlds/trunk/src/engine/e_memheap.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_memheap.h +/home/kma/code/teeworlds/trunk/src/engine/e_console.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_console.h +/home/kma/code/teeworlds/trunk/src/engine/e_ringbuffer.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_ringbuffer.h +/home/kma/code/teeworlds/trunk/src/engine/e_network.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_network.c +/home/kma/code/teeworlds/trunk/src/game/g_tuning.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/g_tuning.hpp +/home/kma/code/teeworlds/trunk/src/engine/e_if_server.h 1217537461 1 Server Interface +/home/kma/code/teeworlds/trunk/src/game/client/gc_skin.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_skin.hpp +/home/kma/code/teeworlds/trunk/src/game/client/gc_ui.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_ui.hpp +/home/kma/code/teeworlds/trunk/src/engine/e_if_gfx.h 1217537461 1 Graphics +/home/kma/code/teeworlds/trunk/src/game/editor/ed_layer_quads.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/editor/ed_layer_quads.cpp +/home/kma/code/teeworlds/trunk/src/game/server/gs_game_dm.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/server/gs_game_dm.cpp +/home/kma/code/teeworlds/trunk/src/game/client/gc_effects.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_effects.cpp +/home/kma/code/teeworlds/trunk/src/game/generated/g_protocol.hpp 1217543202 0 /home/kma/code/teeworlds/trunk/src/game/generated/g_protocol.hpp +/home/kma/code/teeworlds/trunk/src/engine/e_protocol.h 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_protocol.h +/home/kma/code/teeworlds/trunk/src/game/client/gc_render.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_render.hpp +/home/kma/code/teeworlds/trunk/src/game/client/gc_console.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_console.cpp +/home/kma/code/teeworlds/trunk/src/engine/e_datafile.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_datafile.c +/home/kma/code/teeworlds/trunk/src/game/client/gc_menu.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_menu.hpp +/home/kma/code/teeworlds/trunk/src/engine/server/es_register.c 1217537458 0 /home/kma/code/teeworlds/trunk/src/engine/server/es_register.c +/home/kma/code/teeworlds/trunk/src/engine/e_huffman.c 1217537461 0 /home/kma/code/teeworlds/trunk/src/engine/e_huffman.c +/home/kma/code/teeworlds/trunk/src/engine/docs/server_op.txt 1217768956 1 Server Operation +/home/kma/code/teeworlds/trunk/src/game/client/gc_hooks.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_hooks.cpp +/home/kma/code/teeworlds/trunk/src/game/editor/ed_editor.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/editor/ed_editor.cpp +/home/kma/code/teeworlds/trunk/src/game/client/gc_render.cpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/client/gc_render.cpp +/home/kma/code/teeworlds/trunk/src/game/server/gs_game_tdm.hpp 1217537461 0 /home/kma/code/teeworlds/trunk/src/game/server/gs_game_tdm.hpp diff --git a/docs/conf/Data/ImageFileInfo.nd b/docs/conf/Data/ImageFileInfo.nd new file mode 100644 index 00000000..e6ccf0d8 Binary files /dev/null and b/docs/conf/Data/ImageFileInfo.nd differ diff --git a/docs/conf/Data/ImageReferenceTable.nd b/docs/conf/Data/ImageReferenceTable.nd new file mode 100644 index 00000000..e6ccf0d8 Binary files /dev/null and b/docs/conf/Data/ImageReferenceTable.nd differ diff --git a/docs/conf/Data/IndexInfo.nd b/docs/conf/Data/IndexInfo.nd new file mode 100644 index 00000000..e4459989 Binary files /dev/null and b/docs/conf/Data/IndexInfo.nd differ diff --git a/docs/conf/Data/PreviousMenuState.nd b/docs/conf/Data/PreviousMenuState.nd index 1380d18b..1fd599ce 100644 Binary files a/docs/conf/Data/PreviousMenuState.nd and b/docs/conf/Data/PreviousMenuState.nd differ diff --git a/docs/conf/Data/PreviousSettings.nd b/docs/conf/Data/PreviousSettings.nd index b397c128..7f5fdf3d 100644 Binary files a/docs/conf/Data/PreviousSettings.nd and b/docs/conf/Data/PreviousSettings.nd differ diff --git a/docs/conf/Data/SymbolTable.nd b/docs/conf/Data/SymbolTable.nd index cc350ee0..eb1b15ba 100644 Binary files a/docs/conf/Data/SymbolTable.nd and b/docs/conf/Data/SymbolTable.nd differ diff --git a/docs/conf/Menu.txt b/docs/conf/Menu.txt index cce70808..b611b0d8 100644 --- a/docs/conf/Menu.txt +++ b/docs/conf/Menu.txt @@ -54,43 +54,46 @@ File: OS Abstraction (/home/kma/code/teeworlds/trunk/src/engine/e_system.h) Group: Engine { - Group: Overview { + File: Messaging (/home/kma/code/teeworlds/trunk/src/engine/e_if_msg.h) - File: Time on the client (/home/kma/code/teeworlds/trunk/src/engine/docs/client_time.txt) - File: Prediction (/home/kma/code/teeworlds/trunk/src/engine/docs/prediction.txt) - } # Group: Overview + Group: Client { - Group: Reference { + Group: Overview { - Group: Common { + File: Time on the client (/home/kma/code/teeworlds/trunk/src/engine/docs/client_time.txt) + File: Prediction (/home/kma/code/teeworlds/trunk/src/engine/docs/prediction.txt) + File: Snapshots (/home/kma/code/teeworlds/trunk/src/engine/docs/snapshots.txt) + File: Server Operation (/home/kma/code/teeworlds/trunk/src/engine/docs/server_op.txt) + } # Group: Overview - File: Engine Interface (/home/kma/code/teeworlds/trunk/src/engine/e_if_other.h) - File: Messaging (/home/kma/code/teeworlds/trunk/src/engine/e_if_msg.h) - } # Group: Common - - Group: Client { + Group: Reference { File: Client Hooks (/home/kma/code/teeworlds/trunk/src/engine/e_if_modc.h) File: Client Interface (/home/kma/code/teeworlds/trunk/src/engine/e_if_client.h) + File: Engine Interface (/home/kma/code/teeworlds/trunk/src/engine/e_if_other.h) File: Graphics (/home/kma/code/teeworlds/trunk/src/engine/e_if_gfx.h) File: Input (/home/kma/code/teeworlds/trunk/src/engine/e_if_inp.h) File: Sound (/home/kma/code/teeworlds/trunk/src/engine/e_if_snd.h) - } # Group: Client + } # Group: Reference + + } # Group: Client + + Group: Server { - Group: Server { + Group: Reference { File: Server Hooks (/home/kma/code/teeworlds/trunk/src/engine/e_if_mods.h) File: Server Interface (/home/kma/code/teeworlds/trunk/src/engine/e_if_server.h) - } # Group: Server + } # Group: Reference - } # Group: Reference + } # Group: Server } # Group: Engine -Group: Game Implementation { +Group: Game { File: Entity (/home/kma/code/teeworlds/trunk/src/game/server/gs_common.hpp) - } # Group: Game Implementation + } # Group: Game Group: Index { diff --git a/docs/conf/Menu_Backup.txt b/docs/conf/Menu_Backup.txt deleted file mode 100644 index bbd7f561..00000000 --- a/docs/conf/Menu_Backup.txt +++ /dev/null @@ -1,66 +0,0 @@ -Format: 1.35 - - -# You can add a title and sub-title to your menu like this: -# Title: [project name] -# SubTitle: [subtitle] - -# You can add a footer to your documentation like this: -# Footer: [text] -# If you want to add a copyright notice, this would be the place to do it. - - -# -------------------------------------------------------------------------- -# -# Cut and paste the lines below to change the order in which your files -# appear on the menu. Don't worry about adding or removing files, Natural -# Docs will take care of that. -# -# You can further organize the menu by grouping the entries. Add a -# "Group: [name] {" line to start a group, and add a "}" to end it. -# -# You can add text and web links to the menu by adding "Text: [text]" and -# "Link: [name] ([URL])" lines, respectively. -# -# The formatting and comments are auto-generated, so don't worry about -# neatness when editing the file. Natural Docs will clean it up the next -# time it is run. When working with groups, just deal with the braces and -# forget about the indentation and comments. -# -# -------------------------------------------------------------------------- - - -File: e_system.h (e_system.h) -File: Engine Interface (e_interface.h) - -Group: External { - - Group: Glfw { - - File: Does this work? (external/glfw/lib/x11/x11_window.c) - File: glfw.h (external/glfw/include/GL/glfw.h) - File: lib/win32/win32_window.c (external/glfw/lib/win32/win32_window.c) - File: Only Linux joystick input is supported at the moment. Other (external/glfw/lib/x11/x11_joystick.c) - File: Some compilers complains about hinst and x never being used - (external/glfw/lib/win32/win32_dllmain.c) - } # Group: Glfw - - File: pnglite/pnglite.h (external/pnglite/pnglite.h) - - Group: Portaudio { - - File: for the default AudioUnit, we could use the (external/portaudio/pa_mac_core.c) - File: make sure this validation list is kept syncronised with the one in (external/portaudio/pa_front.c) - File: this code depends on the sample format constants being in (external/portaudio/pa_converters.c) - } # Group: Portaudio - - File: the deflate() code requires max_lazy >= MIN_MATCH and max_chain >= 4 (external/zlib/deflate.c) - } # Group: External - -Group: Index { - - Index: Everything - File Index: Files - Function Index: Functions - Variable Index: Variables - } # Group: Index - diff --git a/docs/output/files/server/gs_common-hpp.html b/docs/output/files/server/gs_common-hpp.html new file mode 100644 index 00000000..d633ad4f --- /dev/null +++ b/docs/output/files/server/gs_common-hpp.html @@ -0,0 +1,87 @@ + + +Entity + + + + + + + + + +

Entity

Basic entity class.

Summary
EntityBasic entity class.
Functions
destroyDestorys the entity.
resetCalled when the game resets the map.
tickCalled progress the entity to the next tick.
tick_deferedCalled after all entities tick() function has been called.
snapCalled when a new snapshot is being generated for a specific client.
Variables
proximity_radiusContains the physical size of the entity.
posContains the current posititon of the entity.
Game WorldTracks all entities in the game.
Functions
find_entitiesFinds entities close to a position and returns them in a list.
interserct_characterFinds the closest character that intersects the line.
closest_characterFinds the closest character to a specific point.
insert_entityAdds an entity to the world.
remove_entityRemoves an entity from the world.
destroy_entityDestroys an entity in the world.
snapCalls snap on all the entities in the world to create the snapshot.
tickCalls tick on all the entities in the world to progress the world to the next tick.
Game ControllerControls the main game logic.
Functions
on_entityCalled when the map is loaded to process an entity in the map.
on_character_spawnCalled when a character spawns into the game world.
on_character_deathCalled when a character in the world dies.
+ +

Functions

+ +

destroy

virtual void destroy()

Destorys the entity.

+ +

reset

virtual void reset()

Called when the game resets the map.  Puts the entity back to it’s starting state or perhaps destroys it.

+ +

tick

virtual void tick()

Called progress the entity to the next tick.  Updates and moves the entity to it’s new state and position.

+ +

tick_defered

virtual void tick_defered()

Called after all entities tick() function has been called.

+ +

snap

virtual void snap(int snapping_client)

Called when a new snapshot is being generated for a specific client.

Arguments

snapping_clientID of the client which snapshot is being generated.  Could be -1 to create a complete snapshot of everything in the game for demo recording.
+ +

Variables

+ +

proximity_radius

float proximity_radius

Contains the physical size of the entity.

+ +

pos

vec2 pos

Contains the current posititon of the entity.

+ +

Game World

Tracks all entities in the game.  Propagates tick and snap calls to all entities.

Summary
Functions
find_entitiesFinds entities close to a position and returns them in a list.
interserct_characterFinds the closest character that intersects the line.
closest_characterFinds the closest character to a specific point.
insert_entityAdds an entity to the world.
remove_entityRemoves an entity from the world.
destroy_entityDestroys an entity in the world.
snapCalls snap on all the entities in the world to create the snapshot.
tickCalls tick on all the entities in the world to progress the world to the next tick.
+ +

Functions

+ +

find_entities

int find_entities(vec2 pos,  
float radius,  
ENTITY **ents,  
int max,  
int type =  -1)

Finds entities close to a position and returns them in a list.

Arguments

posPosition.
radiusHow close the entities have to be.
entsPointer to a list that should be filled with the pointers to the entities.
maxNumber of entities that fits into the ents array.
typeType of the entities to find.  -1 for all types.

Returns

Number of entities found and added to the ents array.

+ +

interserct_character

Finds the closest character that intersects the line.

Arguments

pos0Start position
pos2End position
radiusHow for from the line the character is allowed to be.
new_posIntersection position
notthisEntity to ignore intersecting with

Returns

Returns a pointer to the closest hit or NULL of there is no intersection.

+ +

closest_character

class CHARACTER *closest_character(vec2 pos,
float radius,
ENTITY *notthis)

Finds the closest character to a specific point.

Arguments

posThe center position.
radiusHow far off the character is allowed to be
notthisEntity to ignore

Returns

Returns a pointer to the closest character or NULL if no character is close enough.

+ +

insert_entity

void insert_entity(ENTITY *entity)

Adds an entity to the world.

Arguments

entityEntity to add
+ +

remove_entity

void remove_entity(ENTITY *entity)

Removes an entity from the world.

Arguments

entityEntity to remove
+ +

destroy_entity

void destroy_entity(ENTITY *entity)

Destroys an entity in the world.

Arguments

entityEntity to destroy
+ +

snap

void snap(int snapping_client)

Calls snap on all the entities in the world to create the snapshot.

Arguments

snapping_clientID of the client which snapshot is being created.
+ +

tick

void tick()

Calls tick on all the entities in the world to progress the world to the next tick.

+ +

Game Controller

Controls the main game logic.  Keeping track of team and player score, winning conditions and specific game logic.

Summary
Functions
on_entityCalled when the map is loaded to process an entity in the map.
on_character_spawnCalled when a character spawns into the game world.
on_character_deathCalled when a character in the world dies.
+ +

Functions

+ +

on_entity

virtual bool on_entity(int index,
vec2 pos)

Called when the map is loaded to process an entity in the map.

Arguments

indexEntity index.
posWhere the entity is located in the world.

Returns

bool?

+ +

on_character_spawn

virtual void on_character_spawn(class CHARACTER *chr)

Called when a character spawns into the game world.

Arguments

chrThe character that was spawned.
+ +

on_character_death

virtual int on_character_death(class CHARACTER *victim,
class PLAYER *killer,
int weapon)

Called when a character in the world dies.

Arguments

victimThe character that died.
killerThe player that killed it.
weaponWhat weapon that killed it.  Can be -1 for undefined weapon when switching team or player suicides.
+ +
+ + + + + + + + + + +
virtual void destroy()
Destorys the entity.
virtual void reset()
Called when the game resets the map.
virtual void tick()
Called progress the entity to the next tick.
virtual void tick_defered()
Called after all entities tick() function has been called.
virtual void snap(int snapping_client)
Called when a new snapshot is being generated for a specific client.
float proximity_radius
Contains the physical size of the entity.
vec2 pos
Contains the current posititon of the entity.
int find_entities(vec2 pos,  
float radius,  
ENTITY **ents,  
int max,  
int type =  -1)
Finds entities close to a position and returns them in a list.
class CHARACTER *closest_character(vec2 pos,
float radius,
ENTITY *notthis)
Finds the closest character to a specific point.
void insert_entity(ENTITY *entity)
Adds an entity to the world.
void remove_entity(ENTITY *entity)
Removes an entity from the world.
void destroy_entity(ENTITY *entity)
Destroys an entity in the world.
void snap(int snapping_client)
Calls snap on all the entities in the world to create the snapshot.
void tick()
Calls tick on all the entities in the world to progress the world to the next tick.
virtual bool on_entity(int index,
vec2 pos)
Called when the map is loaded to process an entity in the map.
virtual void on_character_spawn(class CHARACTER *chr)
Called when a character spawns into the game world.
virtual int on_character_death(class CHARACTER *victim,
class PLAYER *killer,
int weapon)
Called when a character in the world dies.
+ + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/files2/docs/client_time-txt.html b/docs/output/files2/docs/client_time-txt.html new file mode 100644 index 00000000..ff97b67e --- /dev/null +++ b/docs/output/files2/docs/client_time-txt.html @@ -0,0 +1,39 @@ + + +Time on the client + + + + + + + + + +

Time on the client

tick, intratick predtick, predintratick

+ +
+ + + + + + + + + + + + + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/files2/docs/prediction-txt.html b/docs/output/files2/docs/prediction-txt.html new file mode 100644 index 00000000..893064fa --- /dev/null +++ b/docs/output/files2/docs/prediction-txt.html @@ -0,0 +1,51 @@ + + +Prediction + + + + + + + + + +

Prediction

The engine calls modc_predict when reprediction is required.  This happens usally when new data has arrived from the server.  modc_predict should to prediction from the current snapshot and current snapshot tick (client_tick + 1) upto and including the tick returned by client_predtick.

Predicted input sent to the server can be retrived by calling client_get_input with the corresponding tick that you want the input for.  Here is a simple example of how it might look.

void modc_predict()
+{
+  int tick;
+  prediction_reset();
+
+  for(tick = client_tick()+1; tick <= client_predtick(); tick++)
+  {
+      MY_INPUT *input = (MY_INPUT *)client_get_input();
+      if(input)
+          prediction_apply_input(input);
+      prediction_tick();
+  }
+}
+ +
+ + + + + + + + + + +
void modc_predict()
TODO
int client_tick()
Returns the tick of the current snapshot.
int client_predtick()
Returns the current predicted tick.
int *client_get_input(int tick)
TODO
+ + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/files2/docs/server_op-txt.html b/docs/output/files2/docs/server_op-txt.html new file mode 100644 index 00000000..aa25fe67 --- /dev/null +++ b/docs/output/files2/docs/server_op-txt.html @@ -0,0 +1,69 @@ + + +Server Operation + + + + + + + + + +

Server Operation

Summary
Server Operation
Init
RunningHere is an graph over how the server operates on each refresh.
Reinit
Shutdown
+ +

Init

+ +

Running

Here is an graph over how the server operates on each refresh.

load map
+init mod
+
+while running
+    if map change then
+        load new map
+        shutdown mod <mods_shutdown>
+        reset clients to init state
+        init mod <mods_init>
+    end if
+
+    if new tick then
+        call <mods_tick>
+        for each client do
+            create snapshot <mods_snap>
+            send snapshot
+        end for
+    end
+
+    process new network messages
+end while
+
+unload map
+ +

Reinit

+ +

Shutdown

+ +
+ + + + + + + + + + + + + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/files2/docs/snapshots-txt.html b/docs/output/files2/docs/snapshots-txt.html new file mode 100644 index 00000000..9654118a --- /dev/null +++ b/docs/output/files2/docs/snapshots-txt.html @@ -0,0 +1,63 @@ + + +Snapshots + + + + + + + + + +

Snapshots

Summary
Snapshots
Overview
Definitions
StructureA snapshot contains a series of items.
Server Side
CreatingItems can be added when mods_snap is called using the snap_new_item function to insert an item to the snapshot.
Client Side
Inspectionmodc_newsnapshot is called when a new snapshot has arrived for processing.
RenderingDOCTODO
In depth
CompressionAfter a snapshot have been created, compression is applyed to reduce the bandwidth.
IntervalThe interval for how often a client recives a snapshot changes during the course of the connection.
+ +

Overview

Summary
Definitions
StructureA snapshot contains a series of items.
+ +

Definitions

  • Snapshot.  A is a serialized game state from which a client can render the game from.  They are sent from the server at a regular interval and is created specificly for each client in order to reduce bandwidth.
  • Delta Snapshot.  A set of data that can be applied to a snapshot in order to create a new snapshot with the updated game state.
+ +

Structure

A snapshot contains a series of items.  Each item have a type, id and data.

  • Type.  Type of item.  Could be projectile or character for example.
  • Id.  A unique id so the client can identify the item between two snapshots.
  • Data.  A series of 32-bit integers that contains the per item type specific data.
+ +

Server Side

Summary
CreatingItems can be added when mods_snap is called using the snap_new_item function to insert an item to the snapshot.
+ +

Creating

Items can be added when mods_snap is called using the snap_new_item function to insert an item to the snapshot.  The server can not inspect the snapshot that is in progress of being created.

+ +

Client Side

Summary
Inspectionmodc_newsnapshot is called when a new snapshot has arrived for processing.
RenderingDOCTODO
+ +

Inspection

modc_newsnapshot is called when a new snapshot has arrived for processing.  snap_num_items, snap_get_item and snap_find_item can be used to inspect the current and previous snapshot.  This can be done anywhere while the client is running and not just in the modc_newsnapshot function.  The client can also call snap_invalidate_item if an item contains improper information that could harm the operation of the client.  This should however be done in modc_newsnapshot to assure that no bad data propagates into the rest of the client.

+ +

Rendering

DOCTODO

+ +

In depth

Summary
CompressionAfter a snapshot have been created, compression is applyed to reduce the bandwidth.
IntervalThe interval for how often a client recives a snapshot changes during the course of the connection.
+ +

Compression

After a snapshot have been created, compression is applyed to reduce the bandwidth.  There are several steps taken inorder to reduce the size of the size of the snapshot.

  • Delta.  The server looks in a clients backlog of snapshots to find a previous acked snapshot.  It then compares the two snapshots and creates a delta snapshot containing the changes from the previous acked snapshot to the new one.
  • Variable Integers.  The delta snapshot which is only consisting of 32-bit integers is then encoded into variable integers similar to UTF-8.  Each byte has a bit that tells the decoder that it needs one more byte to decode the 32-bit integer.  The first byte also contains a bit for telling the sign of the integer.
ESDDDDDD EDDDDDDD EDDDDDDD EDDDDDDD
E = extend
+S = sign
+D = data bit
  • Huffman.  The last step is to compress the buffer with a huffman encoder.  It uses a static tree that is weighted towards 0 because it’s where most of the data will be because of the delta compression.
+ +

Interval

The interval for how often a client recives a snapshot changes during the course of the connection.  There are three different snapshot rates.

  • Init.  5 snapshots per second.  Used when a client is connecting and used until the client has acknowlaged a snapshot.  This mechanism is used because the first snapshot because no delta compression can be done.
  • Full.  Snapshot for every tick or every even tick depending on server configuration.  This is used during normal gameplay and everything is running smooth.
  • Recovery.  1 snapshot each second.  A client enters recovery rate when it havn’t acknowlaged a snapshot over 1 second.  This is to let the client to beable to recover if it has a slow connection.
+ +
+ + + + + + + + + + +
void mods_snap(int cid)
Called to create the snapshot for a client.
void *snap_new_item(int type,
int id,
int size)
Creates a new item that should be sent.
void modc_newsnapshot()
Called when the client progressed to a new snapshot.
int snap_num_items(int snapid)
Check the number of items in a snapshot.
void *snap_get_item(int snapid,
int index,
SNAP_ITEM *item)
Gets an item from a snapshot.
void *snap_find_item(int snapid,
int type,
int id)
Searches a snapshot for an item.
void snap_invalidate_item(int snapid,
int index)
Marks an item as invalid byt setting type and id to 0xffffffff.
+ + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/files2/e_if_client-h.html b/docs/output/files2/e_if_client-h.html new file mode 100644 index 00000000..dae39f94 --- /dev/null +++ b/docs/output/files2/e_if_client-h.html @@ -0,0 +1,127 @@ + + +Client Interface + + + + + + + + + +

Client Interface

Summary
Client Interface
Constants
Constants
Client States
Image Formats
Texture Loading Flags
Server Browser Sorting
Structures
SERVER_INFO_PLAYER
SERVER_INFO
Functions
Time
client_tickReturns the tick of the current snapshot.
client_intratickReturns the current intratick.
client_predtickReturns the current predicted tick.
client_predintratickReturns the current preticted intra tick.
client_ticktimeTODO
client_tickspeedReturns how many ticks per second the client is doing.
client_frametimeReturns how long time the last frame took to process.
client_localtimeReturns the clients local time.
Server Browser
client_serverbrowse_refreshIssues a refresh of the server browser.
client_serverbrowse_sorted_getReturns server info from the sorted list.
client_serverbrowse_sorted_numReturns how many servers there are in the sorted list.
client_serverbrowse_getTODO
client_serverbrowse_numTODO
client_serverbrowse_num_requestsTODO
client_serverbrowse_updateTODO
client_serverbrowse_lanTODO
Actions
client_connectConnects to a server at the specified address.
client_disconnectDisconnects from the current server.
client_quitTells to client to shutdown.
client_rconSends a command to the server to execute on it’s console.
client_rcon_authTODO
client_rcon_authedTODO
Other
client_get_inputTODO
client_direct_inputTODO
client_error_stringTODO
client_connection_problemsReturns 1 if the client is connection problems.
client_stateReturns the state of the client.
client_mapdownload_amountTODO
client_mapdownload_totalsizeTODO
client_save_lineTODO
+ + + +

Constants

+ +

Client States

CLIENTSTATE_OFFLINEThe client is offline.
CLIENTSTATE_CONNECTINGThe client is trying to connect to a server.
CLIENTSTATE_LOADINGThe client has connected to a server and is loading resources.
CLIENTSTATE_ONLINEThe client is connected to a server and running the game.
CLIENTSTATE_QUITINGThe client is quiting.
+ +

Image Formats

IMG_AUTOLets the engine choose the format.
IMG_RGB8-Bit uncompressed RGB
IMG_RGBA8-Bit uncompressed RGBA
IMG_ALPHA8-Bit uncompressed alpha
+ +

Texture Loading Flags

TEXLOAD_NORESAMPLEPrevents the texture from any resampling
+ +

Server Browser Sorting

BROWSESORT_NAMESort by name.
BROWSESORT_PINGSort by ping.
BROWSESORT_MAPSort by map
BROWSESORT_GAMETYPESort by game type.  DM, TDM etc.
BROWSESORT_PROGRESSIONSort by progression.
BROWSESORT_NUMPLAYERSSort after how many players there are on the server.
+ +

Structures

+ +

SERVER_INFO_PLAYER

+ +

SERVER_INFO

+ +

Functions

Summary
Time
client_tickReturns the tick of the current snapshot.
client_intratickReturns the current intratick.
client_predtickReturns the current predicted tick.
client_predintratickReturns the current preticted intra tick.
client_ticktimeTODO
client_tickspeedReturns how many ticks per second the client is doing.
client_frametimeReturns how long time the last frame took to process.
client_localtimeReturns the clients local time.
Server Browser
client_serverbrowse_refreshIssues a refresh of the server browser.
client_serverbrowse_sorted_getReturns server info from the sorted list.
client_serverbrowse_sorted_numReturns how many servers there are in the sorted list.
client_serverbrowse_getTODO
client_serverbrowse_numTODO
client_serverbrowse_num_requestsTODO
client_serverbrowse_updateTODO
client_serverbrowse_lanTODO
Actions
client_connectConnects to a server at the specified address.
client_disconnectDisconnects from the current server.
client_quitTells to client to shutdown.
client_rconSends a command to the server to execute on it’s console.
client_rcon_authTODO
client_rcon_authedTODO
Other
client_get_inputTODO
client_direct_inputTODO
client_error_stringTODO
client_connection_problemsReturns 1 if the client is connection problems.
client_stateReturns the state of the client.
client_mapdownload_amountTODO
client_mapdownload_totalsizeTODO
client_save_lineTODO
+ +

Time

+ +

client_tick

int client_tick()

Returns the tick of the current snapshot.

+ +

client_intratick

float client_intratick()

Returns the current intratick.

Remarks

The intratick is how far gone the time is from the previous snapshot to the current.  0.0 means that it on the previous snapshot.  0.5 means that it’s halfway to the current, and 1.0 means that it is on the current snapshot.  It can go beyond 1.0 which means that the client has started to extrapolate due to lack of data from the server.

See Also

client_tick

+ +

client_predtick

int client_predtick()

Returns the current predicted tick.

+ +

client_predintratick

float client_predintratick()

Returns the current preticted intra tick.

Remarks

This is the same as client_intratick but for the current predicted tick and previous predicted tick.

See Also

client_intratick

+ +

client_ticktime

float client_ticktime()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

client_tickspeed

int client_tickspeed()

Returns how many ticks per second the client is doing.

Remarks

This will be the same as the server tick speed.

+ +

client_frametime

float client_frametime()

Returns how long time the last frame took to process.

+ +

client_localtime

float client_localtime()

Returns the clients local time.

Remarks

The local time is set to 0 when the client starts and when it connects to a server.  Can be used for client side effects.

+ +

Server Browser

+ +

client_serverbrowse_refresh

void client_serverbrowse_refresh(int lan)

Issues a refresh of the server browser.

Arguments

lanTells the function if it should do a LAN listing or an Internet listing.

Remarks

This will cause a broadcast on the local network if the lan argument is set.  Otherwise it call ask all the master servers for their servers lists.

+ +

client_serverbrowse_sorted_get

SERVER_INFO *client_serverbrowse_sorted_get(int index)

Returns server info from the sorted list.

Arguments

indexZero based index into the sorted list.

See Also

client_serverbrowse_sorted_num

+ +

client_serverbrowse_sorted_num

int client_serverbrowse_sorted_num()

Returns how many servers there are in the sorted list.

See Also

client_serverbrowse_sorted_get

+ +

client_serverbrowse_get

SERVER_INFO *client_serverbrowse_get(int index)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

client_serverbrowse_num

int client_serverbrowse_num()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

client_serverbrowse_num_requests

int client_serverbrowse_num_requests()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

client_serverbrowse_update

void client_serverbrowse_update()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

client_serverbrowse_lan

int client_serverbrowse_lan()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

Actions

+ +

client_connect

void client_connect(const char *address)

Connects to a server at the specified address.

Arguments

addressAddress of the server to connect to.

See Also

client_disconnect

+ +

client_disconnect

void client_disconnect()

Disconnects from the current server.

Remarks

Does nothing if not connected to a server.

See Also

<client_connect, client_quit>

+ +

client_quit

void client_quit()

Tells to client to shutdown.

See Also

client_disconnect

+ +

client_rcon

void client_rcon(const char *cmd)

Sends a command to the server to execute on it’s console.

Arguments

cmdThe command to send.

Remarks

The client must have the correct rcon password to connect.

See Also

<client_rcon_auth, client_rcon_authed>

+ +

client_rcon_auth

void client_rcon_auth(const char *name,
const char *password)

TODO

Arguments

arg1desc

Returns

See Also

<client_rcon, client_rcon_authed>

+ +

client_rcon_authed

int client_rcon_authed()

TODO

Arguments

arg1desc

Returns

See Also

<client_rcon, client_rcon_auth>

+ +

Other

+ +

client_get_input

int *client_get_input(int tick)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

client_direct_input

void client_direct_input(int *input,
int size)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

client_error_string

const char *client_error_string()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

client_connection_problems

int client_connection_problems()

Returns 1 if the client is connection problems.

Remarks

Connections problems usually means that the client havn’t recvived any data from the server in a while.

+ +

client_state

int client_state()

Returns the state of the client.

See Also

Client States

+ +

client_mapdownload_amount

int client_mapdownload_amount()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

client_mapdownload_totalsize

int client_mapdownload_totalsize()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

client_save_line

void client_save_line(const char *line)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +
+ + + + + + + + + + +
int client_tick()
Returns the tick of the current snapshot.
float client_intratick()
Returns the current intratick.
int client_predtick()
Returns the current predicted tick.
float client_predintratick()
Returns the current preticted intra tick.
float client_ticktime()
TODO
int client_tickspeed()
Returns how many ticks per second the client is doing.
float client_frametime()
Returns how long time the last frame took to process.
float client_localtime()
Returns the clients local time.
void client_serverbrowse_refresh(int lan)
Issues a refresh of the server browser.
SERVER_INFO *client_serverbrowse_sorted_get(int index)
Returns server info from the sorted list.
int client_serverbrowse_sorted_num()
Returns how many servers there are in the sorted list.
SERVER_INFO *client_serverbrowse_get(int index)
TODO
int client_serverbrowse_num()
TODO
int client_serverbrowse_num_requests()
TODO
void client_serverbrowse_update()
TODO
int client_serverbrowse_lan()
TODO
void client_connect(const char *address)
Connects to a server at the specified address.
void client_disconnect()
Disconnects from the current server.
void client_quit()
Tells to client to shutdown.
void client_rcon(const char *cmd)
Sends a command to the server to execute on it’s console.
void client_rcon_auth(const char *name,
const char *password)
TODO
int client_rcon_authed()
TODO
int *client_get_input(int tick)
TODO
void client_direct_input(int *input,
int size)
TODO
const char *client_error_string()
TODO
int client_connection_problems()
Returns 1 if the client is connection problems.
int client_state()
Returns the state of the client.
int client_mapdownload_amount()
TODO
int client_mapdownload_totalsize()
TODO
void client_save_line(const char *line)
TODO
+ + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/files2/e_if_gfx-h.html b/docs/output/files2/e_if_gfx-h.html new file mode 100644 index 00000000..70842f57 --- /dev/null +++ b/docs/output/files2/e_if_gfx-h.html @@ -0,0 +1,139 @@ + + +Graphics + + + + + + + + + +

Graphics

Summary
Graphics
Structures
IMAGE_INFO
Variables
widthContains the width of the image
heightContains the height of the image
formatContains the format of the image.
dataPointer to the image data.
VIDEO_MODE
Functions
Quads
gfx_quads_beginBegins a quad drawing session.
gfx_quads_endEnds a quad session.
gfx_quads_setrotationSets the rotation to use when drawing a quad.
gfx_quads_setsubsetSets the uv coordinates to use.
gfx_quads_setsubset_freeTODO
gfx_quads_drawTLDraws a quad by specifying the top-left point.
gfx_quads_drawDraws a quad by specifying the center point.
gfx_quads_draw_freeformDraws a quad by specifying the corner points.
gfx_quads_textTODO
Lines
gfx_lines_beginTODO
gfx_lines_drawTODO
gfx_lines_endTODO
Text
gfx_textTODO
gfx_text_widthTODO
gfx_text_colorTODO
gfx_text_set_default_fontTODO
Other
gfx_get_video_modesFetches a list of all the available video modes.
gfx_load_pngLoads a PNG image from disk.
gfx_load_textureLoads a texture from a file.
gfx_load_texture_rawLoads a texture from memory.
gfx_texture_setSets the active texture.
gfx_unload_textureUnloads a texture.
gfx_clearClears the screen with the specified color.
gfx_screenaspectReturns the aspect ratio between width and height.
gfx_screenwidthReturns the screen width.
gfx_screenheightReturns the screen height.
gfx_mapscreenSpecifies the coordinate system for the screen.
gfx_blend_normalSet the active blending mode to normal (src, 1-src).
gfx_blend_additiveSet the active blending mode to additive (src, one).
gfx_blend_noneDisables blending
gfx_setcolorvertexSets the color of a vertex.
gfx_setcolorSets the color of all the vertices.
gfx_getscreenTODO
gfx_memory_usageTODO
gfx_screenshotTODO
gfx_clip_enableTODO
gfx_clip_disableTODO
+ +

Structures

+ +

IMAGE_INFO

Summary
Variables
widthContains the width of the image
heightContains the height of the image
formatContains the format of the image.
dataPointer to the image data.
+ +

Variables

+ +

width

int width

Contains the width of the image

+ +

height

int height

Contains the height of the image

+ +

format

int format

Contains the format of the image.  See Image Formats for more information.

+ +

data

void *data

Pointer to the image data.

+ +

VIDEO_MODE

+ +

Functions

Summary
Quads
gfx_quads_beginBegins a quad drawing session.
gfx_quads_endEnds a quad session.
gfx_quads_setrotationSets the rotation to use when drawing a quad.
gfx_quads_setsubsetSets the uv coordinates to use.
gfx_quads_setsubset_freeTODO
gfx_quads_drawTLDraws a quad by specifying the top-left point.
gfx_quads_drawDraws a quad by specifying the center point.
gfx_quads_draw_freeformDraws a quad by specifying the corner points.
gfx_quads_textTODO
Lines
gfx_lines_beginTODO
gfx_lines_drawTODO
gfx_lines_endTODO
Text
gfx_textTODO
gfx_text_widthTODO
gfx_text_colorTODO
gfx_text_set_default_fontTODO
Other
gfx_get_video_modesFetches a list of all the available video modes.
gfx_load_pngLoads a PNG image from disk.
gfx_load_textureLoads a texture from a file.
gfx_load_texture_rawLoads a texture from memory.
gfx_texture_setSets the active texture.
gfx_unload_textureUnloads a texture.
gfx_clearClears the screen with the specified color.
gfx_screenaspectReturns the aspect ratio between width and height.
gfx_screenwidthReturns the screen width.
gfx_screenheightReturns the screen height.
gfx_mapscreenSpecifies the coordinate system for the screen.
gfx_blend_normalSet the active blending mode to normal (src, 1-src).
gfx_blend_additiveSet the active blending mode to additive (src, one).
gfx_blend_noneDisables blending
gfx_setcolorvertexSets the color of a vertex.
gfx_setcolorSets the color of all the vertices.
gfx_getscreenTODO
gfx_memory_usageTODO
gfx_screenshotTODO
gfx_clip_enableTODO
gfx_clip_disableTODO
+ +

Quads

+ +

gfx_quads_begin

void gfx_quads_begin()

Begins a quad drawing session.

Remarks

This functions resets the rotation, color and subset.  End the session by using gfx_quads_end.  You can’t change texture or blending mode during a session.

See Also

gfx_quads_end

+ +

gfx_quads_end

void gfx_quads_end()

Ends a quad session.

See Also

gfx_quads_begin

+ +

gfx_quads_setrotation

void gfx_quads_setrotation(float angle)

Sets the rotation to use when drawing a quad.

Arguments

angleAngle in radians.

Remarks

The angle is reset when gfx_quads_begin is called.

+ +

gfx_quads_setsubset

void gfx_quads_setsubset(float tl_u,
float tl_v,
float br_u,
float br_v)

Sets the uv coordinates to use.

Arguments

tl_uTop-left U value.
tl_vTop-left V value.
br_uBottom-right U value.
br_vBottom-right V value.

Remarks

O,0 is top-left of the texture and 1,1 is bottom-right.  The color is reset when gfx_quads_begin is called.

+ +

gfx_quads_setsubset_free

void gfx_quads_setsubset_free(float x0,
float y0,
float x1,
float y1,
float x2,
float y2,
float x3,
float y3)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

gfx_quads_drawTL

void gfx_quads_drawTL(float x,
float y,
float width,
float height)

Draws a quad by specifying the top-left point.

Arguments

xX coordinate of the top-left corner.
yY coordinate of the top-left corner.
widthWidth of the quad.
heightHeight of the quad.

Remarks

Rotation still occurs from the center of the quad.  You must call gfx_quads_begin before calling this function.

See Also

<gfx_quads_draw, gfx_quads_draw_freeform>

+ +

gfx_quads_draw

void gfx_quads_draw(float x,
float y,
float w,
float h)

Draws a quad by specifying the center point.

Arguments

xX coordinate of the center.
yY coordinate of the center.
widthWidth of the quad.
heightHeight of the quad.

Remarks

You must call gfx_quads_begin before calling this function.

See Also

<gfx_quads_drawTL, gfx_quads_draw_freeform>

+ +

gfx_quads_draw_freeform

void gfx_quads_draw_freeform(float x0,
float y0,
float x1,
float y1,
float x2,
float y2,
float x3,
float y3)

Draws a quad by specifying the corner points.

Arguments

x0, y0Coordinates of the upper left corner.
x1, y1Coordinates of the upper right corner.
x2, y2Coordinates of the lower left corner.  // TODO: DOUBLE CHECK!!!
x3, y3Coordinates of the lower right corner.  // TODO: DOUBLE CHECK!!!

See Also

<gfx_quads_draw, gfx_quads_drawTL>

+ +

gfx_quads_text

void gfx_quads_text(float x,
float y,
float size,
const char *text)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

Lines

+ +

gfx_lines_begin

void gfx_lines_begin()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

gfx_lines_draw

void gfx_lines_draw(float x0,
float y0,
float x1,
float y1)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

gfx_lines_end

void gfx_lines_end()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

Text

+ +

gfx_text

void gfx_text(void *font,
float x,
float y,
float size,
const char *text,
int max_width)

TODO

Arguments

arg1desc

Returns

returns the number of lines written See Also: <other_func>

+ +

gfx_text_width

float gfx_text_width(void *font,
float size,
const char *text,
int length)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

gfx_text_color

void gfx_text_color(float r,
float g,
float b,
float a)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

gfx_text_set_default_font

void gfx_text_set_default_font(void *font)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

Other

+ +

gfx_get_video_modes

int gfx_get_video_modes(VIDEO_MODE *list,
int maxcount)

Fetches a list of all the available video modes.

Arguments

listAn array to recive the modes.  Must be able to contain maxcount number of modes.
maxcountThe maximum number of modes to fetch.

Returns

The number of video modes that was fetched.

+ +

gfx_load_png

int gfx_load_png(IMAGE_INFO *img,
const char *filename)

Loads a PNG image from disk.

Arguments

imgPointer to an structure to be filled out with the image information.
filenameFilename of the image to load.

Returns

Returns non-zero on success and zero on error.

Remarks

The caller are responsible for cleaning up the allocated memory in the IMAGE_INFO structure.

See Also

gfx_load_texture

+ +

gfx_load_texture

int gfx_load_texture(const char *filename,
int store_format,
int flags)

Loads a texture from a file.  TGA and PNG supported.

Arguments

filenameNull terminated string to the file to load.
store_formatWhat format to store on gfx card as.
flagscontrols how the texture is uploaded

Returns

An ID to the texture.  -1 on failure.

See Also

<gfx_unload_texture, gfx_load_png>

+ +

gfx_load_texture_raw

int gfx_load_texture_raw(int w,
int h,
int format,
const void *data,
int store_format,
int flags)

Loads a texture from memory.

Arguments

wWidth of the texture.
hHeight of the texture.
dataPointer to the pixel data.
formatFormat of the pixel data.
store_formatThe format to store the texture on the graphics card.
flagscontrols how the texture is uploaded

Returns

An ID to the texture.  -1 on failure.

Remarks

The pixel data should be in RGBA format with 8 bit per component.  So the total size of the data should be w*h*4.

See Also

gfx_unload_texture

+ +

gfx_texture_set

void gfx_texture_set(int id)

Sets the active texture.

Arguments

idID to the texture to set.
+ +

gfx_unload_texture

int gfx_unload_texture(int id)

Unloads a texture.

Arguments

idID to the texture to unload.

See Also

<gfx_load_texture_tga>, gfx_load_texture_raw

Remarks

NOT IMPLEMENTED

+ +

gfx_clear

void gfx_clear(float r,
float g,
float b)

Clears the screen with the specified color.

Arguments

rRed component.
gGreen component.
bRed component.

Remarks

The value of the components are given in 0.01.0 ranges.
+ +

gfx_screenaspect

float gfx_screenaspect()

Returns the aspect ratio between width and height.

See Also

gfx_screenwidth, gfx_screenheight

+ +

gfx_screenwidth

int gfx_screenwidth()

Returns the screen width.

See Also

gfx_screenheight

+ +

gfx_screenheight

int gfx_screenheight()

Returns the screen height.

See Also

gfx_screenwidth

+ +

gfx_mapscreen

void gfx_mapscreen(float tl_x,
float tl_y,
float br_x,
float br_y)

Specifies the coordinate system for the screen.

Arguments

tl_xTop-left X
tl_yTop-left Y
br_xBottom-right X
br_yBottom-right y
+ +

gfx_blend_normal

void gfx_blend_normal()

Set the active blending mode to normal (src, 1-src).

Remarks

This must be used before calling gfx_quads_begin.  This is equal to glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA).

See Also

<gfx_blend_additive,gfx_blend_none>

+ +

gfx_blend_additive

void gfx_blend_additive()

Set the active blending mode to additive (src, one).

Remarks

This must be used before calling gfx_quads_begin.  This is equal to glBlendFunc(GL_SRC_ALPHA, GL_ONE).

See Also

<gfx_blend_normal,gfx_blend_none>

+ +

gfx_blend_none

void gfx_blend_none()

Disables blending

Remarks

This must be used before calling gfx_quads_begin.

See Also

<gfx_blend_normal,gfx_blend_additive>

+ +

gfx_setcolorvertex

void gfx_setcolorvertex(int i,
float r,
float g,
float b,
float a)

Sets the color of a vertex.

Arguments

iIndex to the vertex.
rRed value.
gGreen value.
bBlue value.
aAlpha value.

Remarks

The color values are from 0.0 to 1.0.  The color is reset when gfx_quads_begin is called.

+ +

gfx_setcolor

void gfx_setcolor(float r,
float g,
float b,
float a)

Sets the color of all the vertices.

Arguments

rRed value.
gGreen value.
bBlue value.
aAlpha value.

Remarks

The color values are from 0.0 to 1.0.  The color is reset when gfx_quads_begin is called.

+ +

gfx_getscreen

void gfx_getscreen(float *tl_x,
float *tl_y,
float *br_x,
float *br_y)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

gfx_memory_usage

int gfx_memory_usage()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

gfx_screenshot

void gfx_screenshot()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

gfx_clip_enable

void gfx_clip_enable(int x,
int y,
int w,
int h)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

gfx_clip_disable

void gfx_clip_disable()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +
+ + + + + + + + + + +
int width
Contains the width of the image
int height
Contains the height of the image
int format
Contains the format of the image.
void *data
Pointer to the image data.
void gfx_quads_begin()
Begins a quad drawing session.
void gfx_quads_end()
Ends a quad session.
void gfx_quads_setrotation(float angle)
Sets the rotation to use when drawing a quad.
void gfx_quads_setsubset(float tl_u,
float tl_v,
float br_u,
float br_v)
Sets the uv coordinates to use.
void gfx_quads_setsubset_free(float x0,
float y0,
float x1,
float y1,
float x2,
float y2,
float x3,
float y3)
TODO
void gfx_quads_drawTL(float x,
float y,
float width,
float height)
Draws a quad by specifying the top-left point.
void gfx_quads_draw(float x,
float y,
float w,
float h)
Draws a quad by specifying the center point.
void gfx_quads_draw_freeform(float x0,
float y0,
float x1,
float y1,
float x2,
float y2,
float x3,
float y3)
Draws a quad by specifying the corner points.
void gfx_quads_text(float x,
float y,
float size,
const char *text)
TODO
void gfx_lines_begin()
TODO
void gfx_lines_draw(float x0,
float y0,
float x1,
float y1)
TODO
void gfx_lines_end()
TODO
void gfx_text(void *font,
float x,
float y,
float size,
const char *text,
int max_width)
TODO
float gfx_text_width(void *font,
float size,
const char *text,
int length)
TODO
void gfx_text_color(float r,
float g,
float b,
float a)
TODO
void gfx_text_set_default_font(void *font)
TODO
int gfx_get_video_modes(VIDEO_MODE *list,
int maxcount)
Fetches a list of all the available video modes.
int gfx_load_png(IMAGE_INFO *img,
const char *filename)
Loads a PNG image from disk.
int gfx_load_texture(const char *filename,
int store_format,
int flags)
Loads a texture from a file.
int gfx_load_texture_raw(int w,
int h,
int format,
const void *data,
int store_format,
int flags)
Loads a texture from memory.
void gfx_texture_set(int id)
Sets the active texture.
int gfx_unload_texture(int id)
Unloads a texture.
void gfx_clear(float r,
float g,
float b)
Clears the screen with the specified color.
float gfx_screenaspect()
Returns the aspect ratio between width and height.
int gfx_screenwidth()
Returns the screen width.
int gfx_screenheight()
Returns the screen height.
void gfx_mapscreen(float tl_x,
float tl_y,
float br_x,
float br_y)
Specifies the coordinate system for the screen.
void gfx_blend_normal()
Set the active blending mode to normal (src, 1-src).
void gfx_blend_additive()
Set the active blending mode to additive (src, one).
void gfx_blend_none()
Disables blending
void gfx_setcolorvertex(int i,
float r,
float g,
float b,
float a)
Sets the color of a vertex.
void gfx_setcolor(float r,
float g,
float b,
float a)
Sets the color of all the vertices.
void gfx_getscreen(float *tl_x,
float *tl_y,
float *br_x,
float *br_y)
TODO
int gfx_memory_usage()
TODO
void gfx_screenshot()
TODO
void gfx_clip_enable(int x,
int y,
int w,
int h)
TODO
void gfx_clip_disable()
TODO
+ + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/files2/e_if_inp-h.html b/docs/output/files2/e_if_inp-h.html new file mode 100644 index 00000000..91ac5b99 --- /dev/null +++ b/docs/output/files2/e_if_inp-h.html @@ -0,0 +1,73 @@ + + +Input + + + + + + + + + +
+ + + +

Functions

+ +

inp_mouse_relative

void inp_mouse_relative(int *x,
int *y)

Fetches the mouse movements.

Arguments

xPointer to the variable that should get the X movement.
yPointer to the variable that should get the Y movement.
+ +

inp_mouse_scroll

int inp_mouse_scroll()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

inp_key_pressed

int inp_key_pressed(int key)

Checks if a key is pressed.

Arguments

keyIndex to the key to check

Returns

Returns 1 if the button is pressed, otherwise 0.

Remarks

Check keys.h for the keys.

+ +

inp_key_was_pressed

int inp_key_was_pressed(int key)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

inp_key_down

int inp_key_down(int key)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

inp_num_events

int inp_num_events()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

inp_get_event

INPUT_EVENT inp_get_event(int index)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

inp_clear_events

void inp_clear_events()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

inp_mouse_doubleclick

int inp_mouse_doubleclick()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

inp_key_presses

int inp_key_presses(int key)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

inp_key_releases

int inp_key_releases(int key)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

inp_key_state

int inp_key_state(int key)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

inp_key_name

const char *inp_key_name(int k)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

inp_key_code

int inp_key_code(const char *key_name)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

inp_clear_key_states

void inp_clear_key_states()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +
+ + + + + + + + + + +
void inp_mouse_relative(int *x,
int *y)
Fetches the mouse movements.
int inp_mouse_scroll()
TODO
int inp_key_pressed(int key)
Checks if a key is pressed.
int inp_key_was_pressed(int key)
TODO
int inp_key_down(int key)
TODO
int inp_num_events()
TODO
INPUT_EVENT inp_get_event(int index)
TODO
void inp_clear_events()
TODO
int inp_mouse_doubleclick()
TODO
int inp_key_presses(int key)
TODO
int inp_key_releases(int key)
TODO
int inp_key_state(int key)
TODO
const char *inp_key_name(int k)
TODO
int inp_key_code(const char *key_name)
TODO
void inp_clear_key_states()
TODO
+ + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/files2/e_if_modc-h.html b/docs/output/files2/e_if_modc-h.html new file mode 100644 index 00000000..f75e3aee --- /dev/null +++ b/docs/output/files2/e_if_modc-h.html @@ -0,0 +1,69 @@ + + +Client Hooks + + + + + + + + + +

Client Hooks

Summary
Client Hooks
Functions
modc_console_initTODO
modc_rcon_lineTODO
modc_save_configTODO
modc_initCalled when the client starts.
modc_newsnapshotCalled when the client progressed to a new snapshot.
modc_entergameCalled when the client has successfully connect to a server and loaded a map.
modc_shutdownCalled when the client closes down.
modc_renderCalled every frame to let the game render it self.
modc_statechangeCalled every time client changes state.
modc_connectedTODO
modc_messageTODO
modc_predictTODO
modc_snap_inputTODO
modc_net_versionTODO
+ +

Functions

+ +

modc_console_init

void modc_console_init()

TODO

+ +

modc_rcon_line

void modc_rcon_line(const char *line)

TODO

+ +

modc_save_config

void modc_save_config()

TODO

+ +

modc_init

void modc_init()

Called when the client starts.

Remarks

The game should load resources that are used during the entire time of the game.  No map is loaded.

+ +

modc_newsnapshot

void modc_newsnapshot()

Called when the client progressed to a new snapshot.

Remarks

The client can check for items in the snapshot and perform one time events like playing sounds, spawning client side effects etc.

+ +

modc_entergame

void modc_entergame()

Called when the client has successfully connect to a server and loaded a map.

Remarks

The client can check for items in the map and load them.

+ +

modc_shutdown

void modc_shutdown()

Called when the client closes down.

+ +

modc_render

void modc_render()

Called every frame to let the game render it self.

+ +

modc_statechange

void modc_statechange(int new_state,
int old_state)

Called every time client changes state.

+ +

modc_connected

void modc_connected()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

modc_message

void modc_message(int msg)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

modc_predict

void modc_predict()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

modc_snap_input

int modc_snap_input(int *data)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

modc_net_version

const char *modc_net_version()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +
+ + + + + + + + + + +
void modc_console_init()
TODO
void modc_rcon_line(const char *line)
TODO
void modc_save_config()
TODO
void modc_init()
Called when the client starts.
void modc_newsnapshot()
Called when the client progressed to a new snapshot.
void modc_entergame()
Called when the client has successfully connect to a server and loaded a map.
void modc_shutdown()
Called when the client closes down.
void modc_render()
Called every frame to let the game render it self.
void modc_statechange(int new_state,
int old_state)
Called every time client changes state.
void modc_connected()
TODO
void modc_message(int msg)
TODO
void modc_predict()
TODO
int modc_snap_input(int *data)
TODO
const char *modc_net_version()
TODO
+ + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/files2/e_if_mods-h.html b/docs/output/files2/e_if_mods-h.html new file mode 100644 index 00000000..3929a2d8 --- /dev/null +++ b/docs/output/files2/e_if_mods-h.html @@ -0,0 +1,71 @@ + + +Server Hooks + + + + + + + + + +

Server Hooks

Summary
Server Hooks
Functions
mods_console_initTODO
mods_initCalled when the server is started.
mods_shutdownCalled when the server quits.
mods_client_enterCalled when a client has joined the game.
mods_client_dropCalled when a client drops from the server.
mods_client_direct_inputCalled when the server recives new input from a client.
mods_client_predicted_inputCalled when the server applys the predicted input on the client.
mods_tickCalled with a regular interval to progress the gameplay.
mods_presnapCalled before the server starts to construct snapshots for the clients.
mods_snapCalled to create the snapshot for a client.
mods_postsnapCalled after the server is done sending the snapshots.
mods_connectedTODO
mods_net_versionTODO
mods_versionTODO
mods_messageTODO
+ +

Functions

+ +

mods_console_init

void mods_console_init()

TODO

+ +

mods_init

void mods_init()

Called when the server is started.

Remarks

It’s called after the map is loaded so all map items are available.

+ +

mods_shutdown

void mods_shutdown()

Called when the server quits.

Remarks

Should be used to clean up all resources used.

+ +

mods_client_enter

void mods_client_enter(int cid)

Called when a client has joined the game.

Arguments

cidClient ID.  Is 0 - MAX_CLIENTS.

Remarks

It’s called when the client is finished loading and should enter gameplay.

+ +

mods_client_drop

void mods_client_drop(int cid)

Called when a client drops from the server.

Arguments

cidClient ID.  Is 0 - MAX_CLIENTS
+ +

mods_client_direct_input

void mods_client_direct_input(int cid,
void *input)

Called when the server recives new input from a client.

Arguments

cidClient ID.  Is 0 - MAX_CLIENTS.
inputPointer to the input data.
sizeSize of the data.  (NOT IMPLEMENTED YET)
+ +

mods_client_predicted_input

void mods_client_predicted_input(int cid,
void *input)

Called when the server applys the predicted input on the client.

Arguments

cidClient ID.  Is 0 - MAX_CLIENTS.
inputPointer to the input data.
sizeSize of the data.  (NOT IMPLEMENTED YET)
+ +

mods_tick

void mods_tick()

Called with a regular interval to progress the gameplay.

Remarks

The SERVER_TICK_SPEED tells the number of ticks per second.

+ +

mods_presnap

void mods_presnap()

Called before the server starts to construct snapshots for the clients.

+ +

mods_snap

void mods_snap(int cid)

Called to create the snapshot for a client.

Arguments

cidClient ID.  Is 0 - MAX_CLIENTS.

Remarks

The game should make a series of calls to snap_new_item to construct the snapshot for the client.

+ +

mods_postsnap

void mods_postsnap()

Called after the server is done sending the snapshots.

+ +

mods_connected

void mods_connected(int client_id)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

mods_net_version

const char *mods_net_version()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

mods_version

const char *mods_version()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

mods_message

void mods_message(int msg,
int client_id)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +
+ + + + + + + + + + +
void mods_console_init()
TODO
void mods_init()
Called when the server is started.
void mods_shutdown()
Called when the server quits.
void mods_client_enter(int cid)
Called when a client has joined the game.
void mods_client_drop(int cid)
Called when a client drops from the server.
void mods_client_direct_input(int cid,
void *input)
Called when the server recives new input from a client.
void mods_client_predicted_input(int cid,
void *input)
Called when the server applys the predicted input on the client.
void mods_tick()
Called with a regular interval to progress the gameplay.
void mods_presnap()
Called before the server starts to construct snapshots for the clients.
void mods_snap(int cid)
Called to create the snapshot for a client.
void mods_postsnap()
Called after the server is done sending the snapshots.
void mods_connected(int client_id)
TODO
const char *mods_net_version()
TODO
const char *mods_version()
TODO
void mods_message(int msg,
int client_id)
TODO
void *snap_new_item(int type,
int id,
int size)
Creates a new item that should be sent.
+ + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/files2/e_if_msg-h.html b/docs/output/files2/e_if_msg-h.html new file mode 100644 index 00000000..f46cc24e --- /dev/null +++ b/docs/output/files2/e_if_msg-h.html @@ -0,0 +1,59 @@ + + +Messaging + + + + + + + + + +
+ +

Functions

+ +

msg_pack_start

void msg_pack_start(int msg,
int flags)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

msg_pack_int

void msg_pack_int(int i)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

msg_pack_string

void msg_pack_string(const char *p,
int limit)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

msg_pack_raw

void msg_pack_raw(const void *data,
int size)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

msg_pack_end

void msg_pack_end()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

msg_unpack_int

int msg_unpack_int()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

msg_unpack_string

const char *msg_unpack_string()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

msg_unpack_raw

const unsigned char *msg_unpack_raw(int size)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

msg_unpack_error

int msg_unpack_error()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +
+ + + + + + + + + + +
void msg_pack_start(int msg,
int flags)
TODO
void msg_pack_int(int i)
TODO
void msg_pack_string(const char *p,
int limit)
TODO
void msg_pack_raw(const void *data,
int size)
TODO
void msg_pack_end()
TODO
int msg_unpack_int()
TODO
const char *msg_unpack_string()
TODO
const unsigned char *msg_unpack_raw(int size)
TODO
int msg_unpack_error()
TODO
+ + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/files2/e_if_other-h.html b/docs/output/files2/e_if_other-h.html new file mode 100644 index 00000000..23d4a2c0 --- /dev/null +++ b/docs/output/files2/e_if_other-h.html @@ -0,0 +1,89 @@ + + +Engine Interface + + + + + + + + + +

Engine Interface

Summary
Engine Interface
SNAP_ITEM
CLIENT_INFO
Map
Functions
map_is_loadedChecks if a map is loaded.
map_num_itemsChecks the number of items in the loaded map.
map_find_itemSearches the map for an item.
map_get_itemGets an item from the loaded map from index.
map_get_typeGets the index range of an item type.
map_get_dataFetches a pointer to a raw data chunk in the map.
map_get_data_swappedTODO
Network (Server)
Functions
snap_new_itemCreates a new item that should be sent.
snap_num_itemsCheck the number of items in a snapshot.
snap_get_itemGets an item from a snapshot.
snap_find_itemSearches a snapshot for an item.
snap_invalidate_itemMarks an item as invalid byt setting type and id to 0xffffffff.
snap_inputSets the input data to send to the server.
snap_set_staticsizeTells the engine how big a specific item always will be.
server_send_msgTODO
client_send_msgTODO
snap_new_idTODO
snap_free_idTODO
map_unload_dataTODO
+ +

SNAP_ITEM

+ +

CLIENT_INFO

+ +

Map

Summary
Functions
map_is_loadedChecks if a map is loaded.
map_num_itemsChecks the number of items in the loaded map.
map_find_itemSearches the map for an item.
map_get_itemGets an item from the loaded map from index.
map_get_typeGets the index range of an item type.
map_get_dataFetches a pointer to a raw data chunk in the map.
map_get_data_swappedTODO
+ +

Functions

+ +

map_is_loaded

int map_is_loaded()

Checks if a map is loaded.

Returns

Returns 1 if the button is pressed, otherwise 0.

+ +

map_num_items

int map_num_items()

Checks the number of items in the loaded map.

Returns

Returns the number of items.  0 if no map is loaded.

+ +

map_find_item

void *map_find_item(int type,
int id)

Searches the map for an item.

Arguments

typeItem type.
idItem ID.

Returns

Returns a pointer to the item if it exists, otherwise it returns NULL.

+ +

map_get_item

void *map_get_item(int index,
int *type,
int *id)

Gets an item from the loaded map from index.

Arguments

indexItem index.
typePointer that recives the item type (can be NULL).
idPointer that recives the item id (can be NULL).

Returns

Returns a pointer to the item if it exists, otherwise it returns NULL.

+ +

map_get_type

void map_get_type(int type,
int *start,
int *num)

Gets the index range of an item type.

Arguments

typeItem type to search for.
startPointer that recives the starting index.
numPointer that recives the number of items.

Returns

If the item type is not in the map, start and num will be set to 0.

+ +

map_get_data

void *map_get_data(int index)

Fetches a pointer to a raw data chunk in the map.

Arguments

indexIndex to the data to fetch.

Returns

A pointer to the raw data, otherwise 0.

+ +

map_get_data_swapped

void *map_get_data_swapped(int index)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

Network (Server)

Summary
Functions
snap_new_itemCreates a new item that should be sent.
snap_num_itemsCheck the number of items in a snapshot.
snap_get_itemGets an item from a snapshot.
snap_find_itemSearches a snapshot for an item.
snap_invalidate_itemMarks an item as invalid byt setting type and id to 0xffffffff.
snap_inputSets the input data to send to the server.
snap_set_staticsizeTells the engine how big a specific item always will be.
server_send_msgTODO
client_send_msgTODO
snap_new_idTODO
snap_free_idTODO
map_unload_dataTODO
+ +

Functions

+ +

snap_new_item

void *snap_new_item(int type,
int id,
int size)

Creates a new item that should be sent.

Arguments

typeType of the item.
idID of the item.
sizeSize of the item.

Returns

A pointer to the item data, otherwise 0.

Remarks

The item data should only consist pf 4 byte integers as they are subject to byte swapping.  This means that the size argument should be dividable by 4.

+ +

snap_num_items

int snap_num_items(int snapid)

Check the number of items in a snapshot.

Arguments

snapidSnapshot ID to the data to fetch.
  • SNAP_PREV for previous snapshot.
  • SNAP_CUR for current snapshot.

Returns

The number of items in the snapshot.

+ +

snap_get_item

void *snap_get_item(int snapid,
int index,
SNAP_ITEM *item)

Gets an item from a snapshot.

Arguments

snapidSnapshot ID to the data to fetch.
  • SNAP_PREV for previous snapshot.
  • SNAP_CUR for current snapshot.
indexIndex of the item.
itemPointer that recives the item info.

Returns

Returns a pointer to the item if it exists, otherwise NULL.

+ +

snap_find_item

void *snap_find_item(int snapid,
int type,
int id)

Searches a snapshot for an item.

Arguments

snapidSnapshot ID to the data to fetch.
  • SNAP_PREV for previous snapshot.
  • SNAP_CUR for current snapshot.
typeType of the item.
idID of the item.

Returns

Returns a pointer to the item if it exists, otherwise NULL.

+ +

snap_invalidate_item

void snap_invalidate_item(int snapid,
int index)

Marks an item as invalid byt setting type and id to 0xffffffff.

Arguments

snapidSnapshot ID to the data to fetch.
  • SNAP_PREV for previous snapshot.
  • SNAP_CUR for current snapshot.
indexIndex of the item.
+ +

snap_input

void snap_input(void *data,
int size)

Sets the input data to send to the server.

Arguments

dataPointer to the data.
sizeSize of the data.

Remarks

The data should only consist of 4 bytes integer as they are subject to byte swapping.

+ +

snap_set_staticsize

void snap_set_staticsize(int type,
int size)

Tells the engine how big a specific item always will be.  This helps the engine to compress snapshots better.

Arguments

typeItem type
sizeSize of the data.

Remarks

Size must be in a multiple of 4.

+ +

server_send_msg

int server_send_msg(int client_id)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

client_send_msg

int client_send_msg()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

snap_new_id

int snap_new_id()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

snap_free_id

void snap_free_id(int id)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

map_unload_data

void map_unload_data(int index)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +
+ + + + + + + + + + +
int map_is_loaded()
Checks if a map is loaded.
int map_num_items()
Checks the number of items in the loaded map.
void *map_find_item(int type,
int id)
Searches the map for an item.
void *map_get_item(int index,
int *type,
int *id)
Gets an item from the loaded map from index.
void map_get_type(int type,
int *start,
int *num)
Gets the index range of an item type.
void *map_get_data(int index)
Fetches a pointer to a raw data chunk in the map.
void *map_get_data_swapped(int index)
TODO
void *snap_new_item(int type,
int id,
int size)
Creates a new item that should be sent.
int snap_num_items(int snapid)
Check the number of items in a snapshot.
void *snap_get_item(int snapid,
int index,
SNAP_ITEM *item)
Gets an item from a snapshot.
void *snap_find_item(int snapid,
int type,
int id)
Searches a snapshot for an item.
void snap_invalidate_item(int snapid,
int index)
Marks an item as invalid byt setting type and id to 0xffffffff.
void snap_input(void *data,
int size)
Sets the input data to send to the server.
void snap_set_staticsize(int type,
int size)
Tells the engine how big a specific item always will be.
int server_send_msg(int client_id)
TODO
int client_send_msg()
TODO
int snap_new_id()
TODO
void snap_free_id(int id)
TODO
void map_unload_data(int index)
TODO
+ + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/files2/e_if_server-h.html b/docs/output/files2/e_if_server-h.html new file mode 100644 index 00000000..b4fa723b --- /dev/null +++ b/docs/output/files2/e_if_server-h.html @@ -0,0 +1,59 @@ + + +Server Interface + + + + + + + + + +
+ +

Functions

+ +

server_getclientinfo

int server_getclientinfo(int client_id,
CLIENT_INFO *info)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

server_clientname

const char *server_clientname(int client_id)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

server_latestinput

int *server_latestinput(int client_id,
int *size)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

server_setclientname

void server_setclientname(int client_id,
const char *name)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

server_setclientscore

void server_setclientscore(int client_id,
int score)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

server_setbrowseinfo

void server_setbrowseinfo(int game_type,
int progression)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

server_kick

void server_kick(int client_id,
const char *reason)

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

server_tick

int server_tick()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +

server_tickspeed

int server_tickspeed()

TODO

Arguments

arg1desc

Returns

See Also

<other_func>

+ +
+ + + + + + + + + + +
int server_getclientinfo(int client_id,
CLIENT_INFO *info)
TODO
const char *server_clientname(int client_id)
TODO
int *server_latestinput(int client_id,
int *size)
TODO
void server_setclientname(int client_id,
const char *name)
TODO
void server_setclientscore(int client_id,
int score)
TODO
void server_setbrowseinfo(int game_type,
int progression)
TODO
void server_kick(int client_id,
const char *reason)
TODO
int server_tick()
TODO
int server_tickspeed()
TODO
+ + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/files2/e_if_snd-h.html b/docs/output/files2/e_if_snd-h.html new file mode 100644 index 00000000..5cc729f7 --- /dev/null +++ b/docs/output/files2/e_if_snd-h.html @@ -0,0 +1,53 @@ + + +Sound + + + + + + + + + +

Sound

Summary
Sound
Functions
snd_set_channelSets the parameters for a sound channel.
snd_load_wvLoads a wavpack compressed sound.
snd_play_atPlays a sound at a specified postition.
snd_playPlays a sound.
snd_stopStops a currenly playing sound.
snd_set_listener_posSets the listener posititon.
+ +

Functions

+ +

snd_set_channel

void snd_set_channel(int cid,
float vol,
float pan)

Sets the parameters for a sound channel.

Arguments

cidChannel ID
volVolume for the channel.  0.0 to 1.0.
panPanning for the channel.  -1.0 is all left.  0.0 is equal distribution.  1.0 is all right.
+ +

snd_load_wv

int snd_load_wv(const char *filename)

Loads a wavpack compressed sound.

Arguments

filenameFilename of the file to load

Returns

The id of the loaded sound.  -1 on failure.

+ +

snd_play_at

int snd_play_at(int cid,
int sid,
int flags,
float x,
float y)

Plays a sound at a specified postition.

Arguments

cidChannel id of the channel to use.
sidSound id of the sound to play.
flagsTODO
xTODO
yTODO

Returns

An id to the voice.  -1 on failure.

See Also

<snd_play, snd_stop>

+ +

snd_play

int snd_play(int cid,
int sid,
int flags)

Plays a sound.

Arguments

Arguments: cid - Channel id of the channel to use. sid - Sound id of the sound to play. flags - TODO

Returns

An id to the voice.  -1 on failure.

See Also

<snd_play_at, snd_stop>

+ +

snd_stop

void snd_stop(int id)

Stops a currenly playing sound.

Arguments

idThe ID of the voice to stop.

See Also

<snd_play, snd_play_at>

+ +

snd_set_listener_pos

void snd_set_listener_pos(float x,
float y)

Sets the listener posititon.

Arguments

xTODO
yTODO
+ +
+ + + + + + + + + + +
void snd_set_channel(int cid,
float vol,
float pan)
Sets the parameters for a sound channel.
int snd_load_wv(const char *filename)
Loads a wavpack compressed sound.
int snd_play_at(int cid,
int sid,
int flags,
float x,
float y)
Plays a sound at a specified postition.
int snd_play(int cid,
int sid,
int flags)
Plays a sound.
void snd_stop(int id)
Stops a currenly playing sound.
void snd_set_listener_pos(float x,
float y)
Sets the listener posititon.
+ + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/files2/e_system-h.html b/docs/output/files2/e_system-h.html new file mode 100644 index 00000000..9333e410 --- /dev/null +++ b/docs/output/files2/e_system-h.html @@ -0,0 +1,183 @@ + + +OS Abstraction + + + + + + + + + +

OS Abstraction

Summary
OS Abstraction
Debug
dbg_assertBreaks into the debugger based on a test.
dbg_breakBreaks into the debugger.
dbg_msgPrints a debug message.
Memory
mem_allocAllocates memory.
mem_freeFrees a block allocated through mem_alloc.
mem_copyCopies a a memory block.
mem_moveCopies a a memory block
mem_zeroSets a complete memory block to 0
mem_compCompares two blocks of memory
File IO
io_openOpens a file.
io_readReads data into a buffer from a file.
io_skipSkips data in a file.
io_writeWrites data from a buffer to file.
io_seekSeeks to a specified offset in the file.
io_tellGets the current position in the file.
io_lengthGets the total length of the file.
io_closeCloses a file.
io_flushEmpties all buffers and writes all pending data.
io_stdinReturns an <IOHANDLE> to the standard input.
io_stdoutReturns an <IOHANDLE> to the standard output.
io_stderrReturns an <IOHANDLE> to the standard error.
Threads
thread_sleepSuspends the current thread for a given period.
thread_createCreates a new thread.
thread_waitWaits for a thread to be done or destroyed.
thread_destoyDestroys a thread.
thread_yeildYeild the current threads execution slice.
Locks
Timer
time_getFetches a sample from a high resolution timer.
time_freqReturns the frequency of the high resolution timer.
time_timestampRetrives the current time as a UNIX timestamp
Network General
net_initInitiates network functionallity.
net_host_lookupDoes a hostname lookup by name and fills out the passed NETADDR struct with the recieved details.
net_addr_compCompares two network addresses.
net_addr_strTurns a network address into a representive string.
Network UDP
net_udp_createCreates a UDP socket and binds it to a port.
net_udp_sendSends a packet over an UDP socket.
net_udp_recvRecives a packet over an UDP socket.
net_udp_closeCloses an UDP socket.
Network TCP
net_tcp_createCreates a TCP socket.
net_tcp_listenMakes the socket start listening for new connections.
net_tcp_acceptPolls a listning socket for a new connection.
net_tcp_connectConnects one socket to another.
net_tcp_sendSends data to a TCP stream.
net_tcp_recvRecvives data from a TCP stream.
net_tcp_closeCloses a TCP socket.
Strings
str_appendAppends a string to another.
str_copyCopies a string to another.
str_formatPerforms printf formating into a buffer.
str_sanitize_strongReplaces all characters below 32 and above 127 with whitespace.
str_sanitizeReplaces all characters below 32 and above 127 with whitespace with exception to \r, \n and \r.
str_comp_nocaseCompares to strings case insensitive.
str_find_nocaseFinds a string inside another string case insensitive.
str_hexTakes a datablock and generates a hexstring of it.
Filesystem
fs_listdirLists the files in a directory
fs_makedirCreates a directory
fs_storage_pathFetches per user configuration directory.
Undocumented
net_tcp_connect_non_blockingDOCTODO: serp
net_tcp_set_non_blockingDOCTODO: serp
net_tcp_set_non_blockingDOCTODO: serp
net_errnoDOCTODO: serp
net_would_blockDOCTODO: serp
+ +

Debug

+ +

dbg_assert

void dbg_assert(int test,
const char *msg)

Breaks into the debugger based on a test.

Parameters

testResult of the test.
msgMessage that should be printed if the test fails.

Remarks

Does nothing in release version of the library.

See Also

dbg_break

+ +

dbg_break

void dbg_break()

Breaks into the debugger.

Remarks

Does nothing in release version of the library.

See Also

dbg_assert

+ +

dbg_msg

void dbg_msg(const char *sys,
const char *fmt,
 ...)

Prints a debug message.

Parameters

sysA string that describes what system the message belongs to
fmtA printf styled format string.

Remarks

Does nothing in relase version of the library.

See Also

dbg_assert

+ +

Memory

+ +

mem_alloc

void *mem_alloc_debug(const char *filename,
int line,
unsigned size,
unsigned alignment)

Allocates memory.

Parameters

sizeSize of the needed block.
alignmentAlignment for the block.

Returns

Returns a pointer to the newly allocated block.  Returns a null pointer if the memory couldn’t be allocated.

Remarks

  • Passing 0 to size will allocated the smallest amount possible and return a unique pointer.

See Also

mem_free

+ +

mem_free

void mem_free(void *block)

Frees a block allocated through mem_alloc.

Remarks

  • In the debug version of the library the function will assert if a non-valid block is passed, like a null pointer or a block that isn’t allocated.

See Also

mem_alloc

+ +

mem_copy

void mem_copy(void *dest,
const void *source,
unsigned size)

Copies a a memory block.

Parameters

destDestination.
sourceSource to copy.
sizeSize of the block to copy.

Remarks

  • This functions DOES NOT handles cases where source and destination is overlapping.

See Also

mem_move

+ +

mem_move

void mem_move(void *dest,
const void *source,
unsigned size)

Copies a a memory block

Parameters

destDestination
sourceSource to copy
sizeSize of the block to copy

Remarks

  • This functions handles cases where source and destination is overlapping

See Also

mem_copy

+ +

mem_zero

void mem_zero(void *block,
unsigned size)

Sets a complete memory block to 0

Parameters

blockPointer to the block to zero out
sizeSize of the block
+ +

mem_comp

int mem_comp(const void *a,
const void *b,
int size)

Compares two blocks of memory

Parameters

aFirst block of data
bSecond block of data
sizeSize of the data to compare

Returns

<0Block a is lesser then block b
0Block a is equal to block b
0 - Block a is greater then block b
+ +

File IO

+ +

io_open

IOHANDLE io_open(const char *filename,
int flags)

Opens a file.

Parameters

filenameFile to open.
flagsA set of flags.  IOFLAG_READ, IOFLAG_WRITE, IOFLAG_RANDOM.

Returns

Returns a handle to the file on success and 0 on failure.

+ +

io_read

unsigned io_read(IOHANDLE io,
void *buffer,
unsigned size)

Reads data into a buffer from a file.

Parameters

ioHandle to the file to read data from.
bufferPointer to the buffer that will recive the data.
sizeNumber of bytes to read from the file.

Returns

Number of bytes read.

+ +

io_skip

unsigned io_skip(IOHANDLE io,
unsigned size)

Skips data in a file.

Parameters

ioHandle to the file.
sizeNumber of bytes to skip.

Returns

Number of bytes skipped.

+ +

io_write

unsigned io_write(IOHANDLE io,
const void *buffer,
unsigned size)

Writes data from a buffer to file.

Parameters

ioHandle to the file.
bufferPointer to the data that should be written.
sizeNumber of bytes to write.

Returns

Number of bytes written.

+ +

io_seek

int io_seek(IOHANDLE io,
int offset,
int origin)

Seeks to a specified offset in the file.

Parameters

ioHandle to the file.
offsetOffset from pos to stop.
originPosition to start searching from.

Returns

Returns 0 on success.

+ +

io_tell

long int io_tell(IOHANDLE io)

Gets the current position in the file.

Parameters

ioHandle to the file.

Returns

Returns the current position.  -1L if an error occured.

+ +

io_length

long int io_length(IOHANDLE io)

Gets the total length of the file.  Resetting cursor to the beginning

Parameters

ioHandle to the file.

Returns

Returns the total size.  -1L if an error occured.

+ +

io_close

int io_close(IOHANDLE io)

Closes a file.

Parameters

ioHandle to the file.

Returns

Returns 0 on success.

+ +

io_flush

int io_flush(IOHANDLE io)

Empties all buffers and writes all pending data.

Parameters

ioHandle to the file.

Returns

Returns 0 on success.

+ +

io_stdin

IOHANDLE io_stdin()

Returns an <IOHANDLE> to the standard input.

+ +

io_stdout

IOHANDLE io_stdout()

Returns an <IOHANDLE> to the standard output.

+ +

io_stderr

IOHANDLE io_stderr()

Returns an <IOHANDLE> to the standard error.

+ +

Threads

+ +

thread_sleep

void thread_sleep(int milliseconds)

Suspends the current thread for a given period.

Parameters

millisecondsNumber of milliseconds to sleep.
+ +

thread_create

void *thread_create(void (*threadfunc)(void *),
void *user)

Creates a new thread.

Parameters

threadfuncEntry point for the new thread.
userPointer to pass to the thread.
+ +

thread_wait

void thread_wait(void *thread)

Waits for a thread to be done or destroyed.

Parameters

threadThread to wait for.
+ +

thread_destoy

Destroys a thread.

Parameters

threadThread to destroy.
+ +

thread_yeild

Yeild the current threads execution slice.

+ +

Locks

+ +

Timer

+ +

time_get

int64 time_get()

Fetches a sample from a high resolution timer.

Returns

Current value of the timer.

Remarks

To know how fast the timer is ticking, see time_freq.

+ +

time_freq

int64 time_freq()

Returns the frequency of the high resolution timer.

Returns

Returns the frequency of the high resolution timer.

+ +

time_timestamp

unsigned time_timestamp()

Retrives the current time as a UNIX timestamp

Returns

The time as a UNIX timestamp

+ +

Network General

+ +

net_init

int net_init()

Initiates network functionallity.

Returns

Returns 0 on success,

Remarks

You must call this function before using any other network functions.

+ +

net_host_lookup

int net_host_lookup(const char *hostname,
NETADDR *addr,
int types)

Does a hostname lookup by name and fills out the passed NETADDR struct with the recieved details.

Returns

0 on success.

+ +

net_addr_comp

int net_addr_comp(const NETADDR *a,
const NETADDR *b)

Compares two network addresses.

Parameters

aAddress to compare
bAddress to compare to.

Returns

<0Address a is lesser then address b
0Address a is equal to address b
0 - Address a is greater then address b
+ +

net_addr_str

int net_addr_str(const NETADDR *addr,
char *string,
int max_length)

Turns a network address into a representive string.

Parameters

addrAddress to turn into a string.
stringBuffer to fill with the string.
max_lengthMaximum size of the string.

Remarks

  • The string will always be zero terminated
+ +

Network UDP

+ +

net_udp_create

NETSOCKET net_udp_create(NETADDR bindaddr)

Creates a UDP socket and binds it to a port.

Parameters

bindaddrAddress to bind the socket to.

Returns

On success it returns an handle to the socket.  On failure it returns NETSOCKET_INVALID.

+ +

net_udp_send

int net_udp_send(NETSOCKET sock,
const NETADDR *addr,
const void *data,
int size)

Sends a packet over an UDP socket.

Parameters

sockSocket to use.
addrWhere to send the packet.
dataPointer to the packet data to send.
sizeSize of the packet.

Returns

On success it returns the number of bytes sent.  Returns -1 on error.

+ +

net_udp_recv

int net_udp_recv(NETSOCKET sock,
NETADDR *addr,
void *data,
int maxsize)

Recives a packet over an UDP socket.

Parameters

sockSocket to use.
addrPointer to an NETADDR that will recive the address.
dataPointer to a buffer that will recive the data.
maxsizeMaximum size to recive.

Returns

On success it returns the number of bytes recived.  Returns -1 on error.

+ +

net_udp_close

int net_udp_close(NETSOCKET sock)

Closes an UDP socket.

Parameters

sockSocket to close.

Returns

Returns 0 on success.  -1 on error.

+ +

Network TCP

+ +

net_tcp_create

NETSOCKET net_tcp_create(const NETADDR *a)

Creates a TCP socket.

Parameters

bindaddrAddress to bind the socket to.

Returns

On success it returns an handle to the socket.  On failure it returns NETSOCKET_INVALID.

+ +

net_tcp_listen

int net_tcp_listen(NETSOCKET sock,
int backlog)

Makes the socket start listening for new connections.

Parameters

sockSocket to start listen to.
backlogSize of the queue of incomming connections to keep.

Returns

Returns 0 on success.

+ +

net_tcp_accept

int net_tcp_accept(NETSOCKET sock,
NETSOCKET *new_sock,
NETADDR *addr)

Polls a listning socket for a new connection.

Parameters

sockListning socket to poll.
new_sockPointer to a socket to fill in with the new socket.
addrPointer to an address that will be filled in the remote address (optional, can be NULL).

Returns

Returns a non-negative integer on success.  Negative integer on failure.

+ +

net_tcp_connect

int net_tcp_connect(NETSOCKET sock,
const NETADDR *addr)

Connects one socket to another.

Parameters

sockSocket to connect.
addrAddress to connect to.

Returns

Returns 0 on success.

+ +

net_tcp_send

int net_tcp_send(NETSOCKET sock,
const void *data,
int size)

Sends data to a TCP stream.

Parameters

sockSocket to send data to.
dataPointer to the data to send.
sizeSize of the data to send.

Returns

Number of bytes sent.  Negative value on failure.

+ +

net_tcp_recv

int net_tcp_recv(NETSOCKET sock,
void *data,
int maxsize)

Recvives data from a TCP stream.

Parameters

sockSocket to recvive data from.
dataPointer to a buffer to write the data to
max_sizeMaximum of data to write to the buffer.

Returns

Number of bytes recvived.  Negative value on failure.

+ +

net_tcp_close

int net_tcp_close(NETSOCKET sock)

Closes a TCP socket.

Parameters

sockSocket to close.

Returns

Returns 0 on success.  Negative value on failure.

+ +

Strings

+ +

str_append

void str_append(char *dst,
const char *src,
int dst_size)

Appends a string to another.

Parameters

dstPointer to a buffer that contains a string.
srcString to append.
dst_sizeSize of the buffer of the dst string.

Remarks

  • The strings are treated as zero-termineted strings.
  • Garantees that dst string will contain zero-termination.
+ +

str_copy

void str_copy(char *dst,
const char *src,
int dst_size)

Copies a string to another.

Parameters

dstPointer to a buffer that shall recive the string.
srcString to be copied.
dst_sizeSize of the buffer dst.

Remarks

  • The strings are treated as zero-termineted strings.
  • Garantees that dst string will contain zero-termination.
+ +

str_format

void str_format(char *buffer,
int buffer_size,
const char *format,
 ...)

Performs printf formating into a buffer.

Parameters

bufferPointer to the buffer to recive the formated string.
buffer_sizeSize of the buffer.
formatprintf formating string.
...Parameters for the formating.

Remarks

  • See the C manual for syntax for the printf formating string.
  • The strings are treated as zero-termineted strings.
  • Garantees that dst string will contain zero-termination.
+ +

str_sanitize_strong

void str_sanitize_strong(char *str)

Replaces all characters below 32 and above 127 with whitespace.

Parameters

strString to sanitize.

Remarks

  • The strings are treated as zero-termineted strings.
+ +

str_sanitize

void str_sanitize(char *str)

Replaces all characters below 32 and above 127 with whitespace with exception to \r, \n and \r.

Parameters

strString to sanitize.

Remarks

  • The strings are treated as zero-termineted strings.
+ +

str_comp_nocase

int str_comp_nocase(const char *a,
const char *b)

Compares to strings case insensitive.

Parameters

aString to compare.
bString to compare.

Returns

<0String a is lesser then string b
0String a is equal to string b
0 - String a is greater then string b

Remarks

  • Only garanted to work with a-z/A-Z.
  • The strings are treated as zero-termineted strings.
+ +

str_find_nocase

const char *str_find_nocase(const char *haystack,
const char *needle)

Finds a string inside another string case insensitive.

Parameters

haystackString to search in
needleString to search for

Returns

A pointer into haystack where the needle was found.  Returns NULL of needle could not be found.

Remarks

  • Only garanted to work with a-z/A-Z.
  • The strings are treated as zero-termineted strings.
+ +

str_hex

void str_hex(char *dst,
int dst_size,
const void *data,
int data_size)

Takes a datablock and generates a hexstring of it.

Parameters

dstBuffer to fill with hex data
dst_sizesize of the buffer
dataData to turn into hex
dataSize of the data

Remarks

  • The desination buffer will be zero-terminated
+ +

Filesystem

+ +

fs_listdir

typedef void (*fs_listdir_callback)(const char *name, int is_dir, void *user)

Lists the files in a directory

Parameters

dirDirectory to list
cbCallback function to call for each entry
userPointer to give to the callback

Returns

Always returns 0.

+ +

fs_makedir

int fs_makedir(const char *path)

Creates a directory

Parameters

pathDirectory to create

Returns

Returns 0 on success.  Negative value on failure.

Remarks

Does not create several directories if needed.  “a/b/c” will result in a failure if b or a does not exist.

+ +

fs_storage_path

int fs_storage_path(const char *appname,
char *path,
int max)

Fetches per user configuration directory.

Returns

Returns 0 on success.  Negative value on failure.

Remarks

  • Returns ~/.appname on UNIX based systems
  • Returns ~/Library/Applications Support/appname on Mac OS X
  • Returns %APPDATA%/Appname on Windows based systems
+ +

Undocumented

+ +

net_tcp_connect_non_blocking

int net_tcp_connect_non_blocking(NETSOCKET sock,
const NETADDR *a)

DOCTODO: serp

+ +

net_tcp_set_non_blocking

int net_tcp_set_non_blocking(NETSOCKET sock)

DOCTODO: serp

+ +

net_tcp_set_non_blocking

DOCTODO: serp

+ +

net_errno

int net_errno()

DOCTODO: serp

+ +

net_would_block

int net_would_block()

DOCTODO: serp

+ +
+ + + + + + + + + + +
void dbg_assert(int test,
const char *msg)
Breaks into the debugger based on a test.
void dbg_break()
Breaks into the debugger.
void dbg_msg(const char *sys,
const char *fmt,
 ...)
Prints a debug message.
void *mem_alloc_debug(const char *filename,
int line,
unsigned size,
unsigned alignment)
Allocates memory.
void mem_free(void *block)
Frees a block allocated through mem_alloc.
void mem_copy(void *dest,
const void *source,
unsigned size)
Copies a a memory block.
void mem_move(void *dest,
const void *source,
unsigned size)
Copies a a memory block
void mem_zero(void *block,
unsigned size)
Sets a complete memory block to 0
int mem_comp(const void *a,
const void *b,
int size)
Compares two blocks of memory
IOHANDLE io_open(const char *filename,
int flags)
Opens a file.
unsigned io_read(IOHANDLE io,
void *buffer,
unsigned size)
Reads data into a buffer from a file.
unsigned io_skip(IOHANDLE io,
unsigned size)
Skips data in a file.
unsigned io_write(IOHANDLE io,
const void *buffer,
unsigned size)
Writes data from a buffer to file.
int io_seek(IOHANDLE io,
int offset,
int origin)
Seeks to a specified offset in the file.
long int io_tell(IOHANDLE io)
Gets the current position in the file.
long int io_length(IOHANDLE io)
Gets the total length of the file.
int io_close(IOHANDLE io)
Closes a file.
int io_flush(IOHANDLE io)
Empties all buffers and writes all pending data.
IOHANDLE io_stdin()
Returns an IOHANDLE to the standard input.
IOHANDLE io_stdout()
Returns an IOHANDLE to the standard output.
IOHANDLE io_stderr()
Returns an IOHANDLE to the standard error.
void thread_sleep(int milliseconds)
Suspends the current thread for a given period.
void *thread_create(void (*threadfunc)(void *),
void *user)
Creates a new thread.
void thread_wait(void *thread)
Waits for a thread to be done or destroyed.
int64 time_get()
Fetches a sample from a high resolution timer.
int64 time_freq()
Returns the frequency of the high resolution timer.
unsigned time_timestamp()
Retrives the current time as a UNIX timestamp
int net_init()
Initiates network functionallity.
int net_host_lookup(const char *hostname,
NETADDR *addr,
int types)
Does a hostname lookup by name and fills out the passed NETADDR struct with the recieved details.
int net_addr_comp(const NETADDR *a,
const NETADDR *b)
Compares two network addresses.
int net_addr_str(const NETADDR *addr,
char *string,
int max_length)
Turns a network address into a representive string.
NETSOCKET net_udp_create(NETADDR bindaddr)
Creates a UDP socket and binds it to a port.
int net_udp_send(NETSOCKET sock,
const NETADDR *addr,
const void *data,
int size)
Sends a packet over an UDP socket.
int net_udp_recv(NETSOCKET sock,
NETADDR *addr,
void *data,
int maxsize)
Recives a packet over an UDP socket.
int net_udp_close(NETSOCKET sock)
Closes an UDP socket.
NETSOCKET net_tcp_create(const NETADDR *a)
Creates a TCP socket.
int net_tcp_listen(NETSOCKET sock,
int backlog)
Makes the socket start listening for new connections.
int net_tcp_accept(NETSOCKET sock,
NETSOCKET *new_sock,
NETADDR *addr)
Polls a listning socket for a new connection.
int net_tcp_connect(NETSOCKET sock,
const NETADDR *addr)
Connects one socket to another.
int net_tcp_send(NETSOCKET sock,
const void *data,
int size)
Sends data to a TCP stream.
int net_tcp_recv(NETSOCKET sock,
void *data,
int maxsize)
Recvives data from a TCP stream.
int net_tcp_close(NETSOCKET sock)
Closes a TCP socket.
void str_append(char *dst,
const char *src,
int dst_size)
Appends a string to another.
void str_copy(char *dst,
const char *src,
int dst_size)
Copies a string to another.
void str_format(char *buffer,
int buffer_size,
const char *format,
 ...)
Performs printf formating into a buffer.
void str_sanitize_strong(char *str)
Replaces all characters below 32 and above 127 with whitespace.
void str_sanitize(char *str)
Replaces all characters below 32 and above 127 with whitespace with exception to \r, \n and \r.
int str_comp_nocase(const char *a,
const char *b)
Compares to strings case insensitive.
const char *str_find_nocase(const char *haystack,
const char *needle)
Finds a string inside another string case insensitive.
void str_hex(char *dst,
int dst_size,
const void *data,
int data_size)
Takes a datablock and generates a hexstring of it.
typedef void (*fs_listdir_callback)(const char *name, int is_dir, void *user)
Lists the files in a directory
int fs_makedir(const char *path)
Creates a directory
int fs_storage_path(const char *appname,
char *path,
int max)
Fetches per user configuration directory.
int net_tcp_connect_non_blocking(NETSOCKET sock,
const NETADDR *a)
DOCTODO: serp
int net_tcp_set_non_blocking(NETSOCKET sock)
DOCTODO: serp
int net_errno()
DOCTODO: serp
int net_would_block()
DOCTODO: serp
+ + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/index.html b/docs/output/index.html new file mode 100644 index 00000000..98fa8d05 --- /dev/null +++ b/docs/output/index.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/output/index/Classes.html b/docs/output/index/Classes.html new file mode 100644 index 00000000..da6b2a74 --- /dev/null +++ b/docs/output/index/Classes.html @@ -0,0 +1,54 @@ + + +Class Index + + + + + + + + + +
Class Index
$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z
C
 CLIENT_INFO
E
 Entity
G
 Game Controller
 Game World
I
 IMAGE_INFO
 INPUT_EVENT
S
 SERVER_INFO
 SERVER_INFO_PLAYER
 SNAP_ITEM
V
 VIDEO_MODE
+ + + + + +
Basic entity class.
+ + + +
Controls the main game logic.
Tracks all entities in the game.
+ + + + + + + + + + + + + +
+ + + + + + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/index/Constants.html b/docs/output/index/Constants.html new file mode 100644 index 00000000..b9e6938f --- /dev/null +++ b/docs/output/index/Constants.html @@ -0,0 +1,50 @@ + + +Constant Index + + + + + + + + + +
Constant Index
$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z
B
 BROWSESORT_GAMETYPE
 BROWSESORT_MAP
 BROWSESORT_NAME
 BROWSESORT_NUMPLAYERS
 BROWSESORT_PING
 BROWSESORT_PROGRESSION
C
 Client States
 CLIENTSTATE_CONNECTING
 CLIENTSTATE_LOADING
 CLIENTSTATE_OFFLINE
 CLIENTSTATE_ONLINE
 CLIENTSTATE_QUITING
I
 Image Formats
 IMG_ALPHA
 IMG_AUTO
 IMG_RGB
 IMG_RGBA
S
 Server Browser Sorting
T
 TEXLOAD_NORESAMPLE
 Texture Loading Flags
+ +
Sort by game type.
Sort by map
Sort by name.
Sort after how many players there are on the server.
Sort by ping.
Sort by progression.
+ + + +
The client is trying to connect to a server.
The client has connected to a server and is loading resources.
The client is offline.
The client is connected to a server and running the game.
The client is quiting.
+ + + +
8-Bit uncompressed alpha
Lets the engine choose the format.
8-Bit uncompressed RGB
8-Bit uncompressed RGBA
+ + + + + + + +
Prevents the texture from any resampling
+ +
+ + + + + + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/index/Functions.html b/docs/output/index/Functions.html new file mode 100644 index 00000000..7c450f8a --- /dev/null +++ b/docs/output/index/Functions.html @@ -0,0 +1,42 @@ + + +Function Index + + + + + + + + + +
Function Index
$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z
C
 client_connect
 client_connection_problems
 client_direct_input
 client_disconnect
 client_error_string
 client_frametime
 client_get_input
 client_intratick
 client_localtime
 client_mapdownload_amount
 client_mapdownload_totalsize
 client_predintratick
 client_predtick
 client_quit
 client_rcon
 client_rcon_auth
 client_rcon_authed
 client_save_line
 client_send_msg
 client_serverbrowse_get
 client_serverbrowse_lan
 client_serverbrowse_num
 client_serverbrowse_num_requests
 client_serverbrowse_refresh
 client_serverbrowse_sorted_get
 client_serverbrowse_sorted_num
 client_serverbrowse_update
 client_state
 client_tick
 client_tickspeed
 client_ticktime
 closest_character, Game World
D
 dbg_assert
 dbg_break
 dbg_msg
 destroy, Entity
 destroy_entity, Game World
F
 find_entities, Game World
 fs_listdir
 fs_makedir
 fs_storage_path
+ +
void client_connect(const char *address)
Connects to a server at the specified address.
int client_connection_problems()
Returns 1 if the client is connection problems.
void client_direct_input(int *input,
int size)
TODO
void client_disconnect()
Disconnects from the current server.
const char *client_error_string()
TODO
float client_frametime()
Returns how long time the last frame took to process.
int *client_get_input(int tick)
TODO
float client_intratick()
Returns the current intratick.
float client_localtime()
Returns the clients local time.
int client_mapdownload_amount()
TODO
int client_mapdownload_totalsize()
TODO
float client_predintratick()
Returns the current preticted intra tick.
int client_predtick()
Returns the current predicted tick.
void client_quit()
Tells to client to shutdown.
void client_rcon(const char *cmd)
Sends a command to the server to execute on it’s console.
void client_rcon_auth(const char *name,
const char *password)
TODO
int client_rcon_authed()
TODO
void client_save_line(const char *line)
TODO
int client_send_msg()
TODO
SERVER_INFO *client_serverbrowse_get(int index)
TODO
int client_serverbrowse_lan()
TODO
int client_serverbrowse_num()
TODO
int client_serverbrowse_num_requests()
TODO
void client_serverbrowse_refresh(int lan)
Issues a refresh of the server browser.
SERVER_INFO *client_serverbrowse_sorted_get(int index)
Returns server info from the sorted list.
int client_serverbrowse_sorted_num()
Returns how many servers there are in the sorted list.
void client_serverbrowse_update()
TODO
int client_state()
Returns the state of the client.
int client_tick()
Returns the tick of the current snapshot.
int client_tickspeed()
Returns how many ticks per second the client is doing.
float client_ticktime()
TODO
class CHARACTER *closest_character(vec2 pos,
float radius,
ENTITY *notthis)
Finds the closest character to a specific point.
+ + + +
void dbg_assert(int test,
const char *msg)
Breaks into the debugger based on a test.
void dbg_break()
Breaks into the debugger.
void dbg_msg(const char *sys,
const char *fmt,
 ...)
Prints a debug message.
virtual void destroy()
Destorys the entity.
void destroy_entity(ENTITY *entity)
Destroys an entity in the world.
+ + + +
int find_entities(vec2 pos,  
float radius,  
ENTITY **ents,  
int max,  
int type =  -1)
Finds entities close to a position and returns them in a list.
typedef void (*fs_listdir_callback)(const char *name, int is_dir, void *user)
Lists the files in a directory
int fs_makedir(const char *path)
Creates a directory
int fs_storage_path(const char *appname,
char *path,
int max)
Fetches per user configuration directory.
+ +
+ + + + + + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/index/Functions2.html b/docs/output/index/Functions2.html new file mode 100644 index 00000000..34b8d01a --- /dev/null +++ b/docs/output/index/Functions2.html @@ -0,0 +1,38 @@ + + +Function Index + + + + + + + + + +
Function Index
$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z
G
 gfx_blend_additive
 gfx_blend_none
 gfx_blend_normal
 gfx_clear
 gfx_clip_disable
 gfx_clip_enable
 gfx_get_video_modes
 gfx_getscreen
 gfx_lines_begin
 gfx_lines_draw
 gfx_lines_end
 gfx_load_png
 gfx_load_texture
 gfx_load_texture_raw
 gfx_mapscreen
 gfx_memory_usage
 gfx_quads_begin
 gfx_quads_draw
 gfx_quads_draw_freeform
 gfx_quads_drawTL
 gfx_quads_end
 gfx_quads_setrotation
 gfx_quads_setsubset
 gfx_quads_setsubset_free
 gfx_quads_text
 gfx_screenaspect
 gfx_screenheight
 gfx_screenshot
 gfx_screenwidth
 gfx_setcolor
 gfx_setcolorvertex
 gfx_text
 gfx_text_color
 gfx_text_set_default_font
 gfx_text_width
 gfx_texture_set
 gfx_unload_texture
I
 inp_clear_events, INPUT_EVENT
 inp_clear_key_states, INPUT_EVENT
 inp_get_event, INPUT_EVENT
 inp_key_code, INPUT_EVENT
 inp_key_down, INPUT_EVENT
 inp_key_name, INPUT_EVENT
 inp_key_pressed, INPUT_EVENT
 inp_key_presses, INPUT_EVENT
 inp_key_releases, INPUT_EVENT
 inp_key_state, INPUT_EVENT
 inp_key_was_pressed, INPUT_EVENT
 inp_mouse_doubleclick, INPUT_EVENT
 inp_mouse_relative, INPUT_EVENT
 inp_mouse_scroll, INPUT_EVENT
 inp_num_events, INPUT_EVENT
 insert_entity, Game World
 interserct_character, Game World
 io_close
 io_flush
 io_length
 io_open
 io_read
 io_seek
 io_skip
 io_stderr
 io_stdin
 io_stdout
 io_tell
 io_write
+ +
void gfx_blend_additive()
Set the active blending mode to additive (src, one).
void gfx_blend_none()
Disables blending
void gfx_blend_normal()
Set the active blending mode to normal (src, 1-src).
void gfx_clear(float r,
float g,
float b)
Clears the screen with the specified color.
void gfx_clip_disable()
TODO
void gfx_clip_enable(int x,
int y,
int w,
int h)
TODO
int gfx_get_video_modes(VIDEO_MODE *list,
int maxcount)
Fetches a list of all the available video modes.
void gfx_getscreen(float *tl_x,
float *tl_y,
float *br_x,
float *br_y)
TODO
void gfx_lines_begin()
TODO
void gfx_lines_draw(float x0,
float y0,
float x1,
float y1)
TODO
void gfx_lines_end()
TODO
int gfx_load_png(IMAGE_INFO *img,
const char *filename)
Loads a PNG image from disk.
int gfx_load_texture(const char *filename,
int store_format,
int flags)
Loads a texture from a file.
int gfx_load_texture_raw(int w,
int h,
int format,
const void *data,
int store_format,
int flags)
Loads a texture from memory.
void gfx_mapscreen(float tl_x,
float tl_y,
float br_x,
float br_y)
Specifies the coordinate system for the screen.
int gfx_memory_usage()
TODO
void gfx_quads_begin()
Begins a quad drawing session.
void gfx_quads_draw(float x,
float y,
float w,
float h)
Draws a quad by specifying the center point.
void gfx_quads_draw_freeform(float x0,
float y0,
float x1,
float y1,
float x2,
float y2,
float x3,
float y3)
Draws a quad by specifying the corner points.
void gfx_quads_drawTL(float x,
float y,
float width,
float height)
Draws a quad by specifying the top-left point.
void gfx_quads_end()
Ends a quad session.
void gfx_quads_setrotation(float angle)
Sets the rotation to use when drawing a quad.
void gfx_quads_setsubset(float tl_u,
float tl_v,
float br_u,
float br_v)
Sets the uv coordinates to use.
void gfx_quads_setsubset_free(float x0,
float y0,
float x1,
float y1,
float x2,
float y2,
float x3,
float y3)
TODO
void gfx_quads_text(float x,
float y,
float size,
const char *text)
TODO
float gfx_screenaspect()
Returns the aspect ratio between width and height.
int gfx_screenheight()
Returns the screen height.
void gfx_screenshot()
TODO
int gfx_screenwidth()
Returns the screen width.
void gfx_setcolor(float r,
float g,
float b,
float a)
Sets the color of all the vertices.
void gfx_setcolorvertex(int i,
float r,
float g,
float b,
float a)
Sets the color of a vertex.
void gfx_text(void *font,
float x,
float y,
float size,
const char *text,
int max_width)
TODO
void gfx_text_color(float r,
float g,
float b,
float a)
TODO
void gfx_text_set_default_font(void *font)
TODO
float gfx_text_width(void *font,
float size,
const char *text,
int length)
TODO
void gfx_texture_set(int id)
Sets the active texture.
int gfx_unload_texture(int id)
Unloads a texture.
+ + + +
void inp_clear_events()
TODO
void inp_clear_key_states()
TODO
INPUT_EVENT inp_get_event(int index)
TODO
int inp_key_code(const char *key_name)
TODO
int inp_key_down(int key)
TODO
const char *inp_key_name(int k)
TODO
int inp_key_pressed(int key)
Checks if a key is pressed.
int inp_key_presses(int key)
TODO
int inp_key_releases(int key)
TODO
int inp_key_state(int key)
TODO
int inp_key_was_pressed(int key)
TODO
int inp_mouse_doubleclick()
TODO
void inp_mouse_relative(int *x,
int *y)
Fetches the mouse movements.
int inp_mouse_scroll()
TODO
int inp_num_events()
TODO
void insert_entity(ENTITY *entity)
Adds an entity to the world.
Finds the closest character that intersects the line.
int io_close(IOHANDLE io)
Closes a file.
int io_flush(IOHANDLE io)
Empties all buffers and writes all pending data.
long int io_length(IOHANDLE io)
Gets the total length of the file.
IOHANDLE io_open(const char *filename,
int flags)
Opens a file.
unsigned io_read(IOHANDLE io,
void *buffer,
unsigned size)
Reads data into a buffer from a file.
int io_seek(IOHANDLE io,
int offset,
int origin)
Seeks to a specified offset in the file.
unsigned io_skip(IOHANDLE io,
unsigned size)
Skips data in a file.
IOHANDLE io_stderr()
Returns an IOHANDLE to the standard error.
IOHANDLE io_stdin()
Returns an IOHANDLE to the standard input.
IOHANDLE io_stdout()
Returns an IOHANDLE to the standard output.
long int io_tell(IOHANDLE io)
Gets the current position in the file.
unsigned io_write(IOHANDLE io,
const void *buffer,
unsigned size)
Writes data from a buffer to file.
+ +
+ + + + + + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/index/Functions3.html b/docs/output/index/Functions3.html new file mode 100644 index 00000000..79367ec7 --- /dev/null +++ b/docs/output/index/Functions3.html @@ -0,0 +1,34 @@ + + +Function Index + + + + + + + + + +
Function Index
$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z
M
 map_find_item
 map_get_data
 map_get_data_swapped
 map_get_item
 map_get_type
 map_is_loaded
 map_num_items
 map_unload_data
 mem_alloc
 mem_comp
 mem_copy
 mem_free
 mem_move
 mem_zero
 modc_connected
 modc_console_init
 modc_entergame
 modc_init
 modc_message
 modc_net_version
 modc_newsnapshot
 modc_predict
 modc_rcon_line
 modc_render
 modc_save_config
 modc_shutdown
 modc_snap_input
 modc_statechange
 mods_client_direct_input
 mods_client_drop
 mods_client_enter
 mods_client_predicted_input
 mods_connected
 mods_console_init
 mods_init
 mods_message
 mods_net_version
 mods_postsnap
 mods_presnap
 mods_shutdown
 mods_snap
 mods_tick
 mods_version
 msg_pack_end
 msg_pack_int
 msg_pack_raw
 msg_pack_start
 msg_pack_string
 msg_unpack_error
 msg_unpack_int
 msg_unpack_raw
 msg_unpack_string
+ +
void *map_find_item(int type,
int id)
Searches the map for an item.
void *map_get_data(int index)
Fetches a pointer to a raw data chunk in the map.
void *map_get_data_swapped(int index)
TODO
void *map_get_item(int index,
int *type,
int *id)
Gets an item from the loaded map from index.
void map_get_type(int type,
int *start,
int *num)
Gets the index range of an item type.
int map_is_loaded()
Checks if a map is loaded.
int map_num_items()
Checks the number of items in the loaded map.
void map_unload_data(int index)
TODO
void *mem_alloc_debug(const char *filename,
int line,
unsigned size,
unsigned alignment)
Allocates memory.
int mem_comp(const void *a,
const void *b,
int size)
Compares two blocks of memory
void mem_copy(void *dest,
const void *source,
unsigned size)
Copies a a memory block.
void mem_free(void *block)
Frees a block allocated through mem_alloc.
void mem_move(void *dest,
const void *source,
unsigned size)
Copies a a memory block
void mem_zero(void *block,
unsigned size)
Sets a complete memory block to 0
void modc_connected()
TODO
void modc_console_init()
TODO
void modc_entergame()
Called when the client has successfully connect to a server and loaded a map.
void modc_init()
Called when the client starts.
void modc_message(int msg)
TODO
const char *modc_net_version()
TODO
void modc_newsnapshot()
Called when the client progressed to a new snapshot.
void modc_predict()
TODO
void modc_rcon_line(const char *line)
TODO
void modc_render()
Called every frame to let the game render it self.
void modc_save_config()
TODO
void modc_shutdown()
Called when the client closes down.
int modc_snap_input(int *data)
TODO
void modc_statechange(int new_state,
int old_state)
Called every time client changes state.
void mods_client_direct_input(int cid,
void *input)
Called when the server recives new input from a client.
void mods_client_drop(int cid)
Called when a client drops from the server.
void mods_client_enter(int cid)
Called when a client has joined the game.
void mods_client_predicted_input(int cid,
void *input)
Called when the server applys the predicted input on the client.
void mods_connected(int client_id)
TODO
void mods_console_init()
TODO
void mods_init()
Called when the server is started.
void mods_message(int msg,
int client_id)
TODO
const char *mods_net_version()
TODO
void mods_postsnap()
Called after the server is done sending the snapshots.
void mods_presnap()
Called before the server starts to construct snapshots for the clients.
void mods_shutdown()
Called when the server quits.
void mods_snap(int cid)
Called to create the snapshot for a client.
void mods_tick()
Called with a regular interval to progress the gameplay.
const char *mods_version()
TODO
void msg_pack_end()
TODO
void msg_pack_int(int i)
TODO
void msg_pack_raw(const void *data,
int size)
TODO
void msg_pack_start(int msg,
int flags)
TODO
void msg_pack_string(const char *p,
int limit)
TODO
int msg_unpack_error()
TODO
int msg_unpack_int()
TODO
const unsigned char *msg_unpack_raw(int size)
TODO
const char *msg_unpack_string()
TODO
+ +
+ + + + + + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/index/Functions4.html b/docs/output/index/Functions4.html new file mode 100644 index 00000000..604872de --- /dev/null +++ b/docs/output/index/Functions4.html @@ -0,0 +1,46 @@ + + +Function Index + + + + + + + + + +
Function Index
$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z
N
 net_addr_comp
 net_addr_str
 net_errno
 net_host_lookup
 net_init
 net_tcp_accept
 net_tcp_close
 net_tcp_connect
 net_tcp_connect_non_blocking
 net_tcp_create
 net_tcp_listen
 net_tcp_recv
 net_tcp_send
 net_tcp_set_non_blocking
 net_udp_close
 net_udp_create
 net_udp_recv
 net_udp_send
 net_would_block
O
 on_character_death, Game Controller
 on_character_spawn, Game Controller
 on_entity, Game Controller
R
 remove_entity, Game World
 reset, Entity
S
 server_clientname
 server_getclientinfo
 server_kick
 server_latestinput
 server_send_msg
 server_setbrowseinfo
 server_setclientname
 server_setclientscore
 server_tick
 server_tickspeed
 snap
 snap_find_item
 snap_free_id
 snap_get_item
 snap_input
 snap_invalidate_item
 snap_new_id
 snap_new_item
 snap_num_items
 snap_set_staticsize
 snd_load_wv
 snd_play
 snd_play_at
 snd_set_channel
 snd_set_listener_pos
 snd_stop
 str_append
 str_comp_nocase
 str_copy
 str_find_nocase
 str_format
 str_hex
 str_sanitize
 str_sanitize_strong
+ +
int net_addr_comp(const NETADDR *a,
const NETADDR *b)
Compares two network addresses.
int net_addr_str(const NETADDR *addr,
char *string,
int max_length)
Turns a network address into a representive string.
int net_errno()
DOCTODO: serp
int net_host_lookup(const char *hostname,
NETADDR *addr,
int types)
Does a hostname lookup by name and fills out the passed NETADDR struct with the recieved details.
int net_init()
Initiates network functionallity.
int net_tcp_accept(NETSOCKET sock,
NETSOCKET *new_sock,
NETADDR *addr)
Polls a listning socket for a new connection.
int net_tcp_close(NETSOCKET sock)
Closes a TCP socket.
int net_tcp_connect(NETSOCKET sock,
const NETADDR *addr)
Connects one socket to another.
int net_tcp_connect_non_blocking(NETSOCKET sock,
const NETADDR *a)
DOCTODO: serp
NETSOCKET net_tcp_create(const NETADDR *a)
Creates a TCP socket.
int net_tcp_listen(NETSOCKET sock,
int backlog)
Makes the socket start listening for new connections.
int net_tcp_recv(NETSOCKET sock,
void *data,
int maxsize)
Recvives data from a TCP stream.
int net_tcp_send(NETSOCKET sock,
const void *data,
int size)
Sends data to a TCP stream.
int net_tcp_set_non_blocking(NETSOCKET sock)
DOCTODO: serp
int net_udp_close(NETSOCKET sock)
Closes an UDP socket.
NETSOCKET net_udp_create(NETADDR bindaddr)
Creates a UDP socket and binds it to a port.
int net_udp_recv(NETSOCKET sock,
NETADDR *addr,
void *data,
int maxsize)
Recives a packet over an UDP socket.
int net_udp_send(NETSOCKET sock,
const NETADDR *addr,
const void *data,
int size)
Sends a packet over an UDP socket.
int net_would_block()
DOCTODO: serp
+ + + +
virtual int on_character_death(class CHARACTER *victim,
class PLAYER *killer,
int weapon)
Called when a character in the world dies.
virtual void on_character_spawn(class CHARACTER *chr)
Called when a character spawns into the game world.
virtual bool on_entity(int index,
vec2 pos)
Called when the map is loaded to process an entity in the map.
+ + + +
void remove_entity(ENTITY *entity)
Removes an entity from the world.
virtual void reset()
Called when the game resets the map.
+ + + +
const char *server_clientname(int client_id)
TODO
int server_getclientinfo(int client_id,
CLIENT_INFO *info)
TODO
void server_kick(int client_id,
const char *reason)
TODO
int *server_latestinput(int client_id,
int *size)
TODO
int server_send_msg(int client_id)
TODO
void server_setbrowseinfo(int game_type,
int progression)
TODO
void server_setclientname(int client_id,
const char *name)
TODO
void server_setclientscore(int client_id,
int score)
TODO
int server_tick()
TODO
int server_tickspeed()
TODO
virtual void snap(int snapping_client)
Called when a new snapshot is being generated for a specific client.
void snap(int snapping_client)
Calls snap on all the entities in the world to create the snapshot.
void *snap_find_item(int snapid,
int type,
int id)
Searches a snapshot for an item.
void snap_free_id(int id)
TODO
void *snap_get_item(int snapid,
int index,
SNAP_ITEM *item)
Gets an item from a snapshot.
void snap_input(void *data,
int size)
Sets the input data to send to the server.
void snap_invalidate_item(int snapid,
int index)
Marks an item as invalid byt setting type and id to 0xffffffff.
int snap_new_id()
TODO
void *snap_new_item(int type,
int id,
int size)
Creates a new item that should be sent.
int snap_num_items(int snapid)
Check the number of items in a snapshot.
void snap_set_staticsize(int type,
int size)
Tells the engine how big a specific item always will be.
int snd_load_wv(const char *filename)
Loads a wavpack compressed sound.
int snd_play(int cid,
int sid,
int flags)
Plays a sound.
int snd_play_at(int cid,
int sid,
int flags,
float x,
float y)
Plays a sound at a specified postition.
void snd_set_channel(int cid,
float vol,
float pan)
Sets the parameters for a sound channel.
void snd_set_listener_pos(float x,
float y)
Sets the listener posititon.
void snd_stop(int id)
Stops a currenly playing sound.
void str_append(char *dst,
const char *src,
int dst_size)
Appends a string to another.
int str_comp_nocase(const char *a,
const char *b)
Compares to strings case insensitive.
void str_copy(char *dst,
const char *src,
int dst_size)
Copies a string to another.
const char *str_find_nocase(const char *haystack,
const char *needle)
Finds a string inside another string case insensitive.
void str_format(char *buffer,
int buffer_size,
const char *format,
 ...)
Performs printf formating into a buffer.
void str_hex(char *dst,
int dst_size,
const void *data,
int data_size)
Takes a datablock and generates a hexstring of it.
void str_sanitize(char *str)
Replaces all characters below 32 and above 127 with whitespace with exception to \r, \n and \r.
void str_sanitize_strong(char *str)
Replaces all characters below 32 and above 127 with whitespace.
+ +
+ + + + + + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/index/Functions5.html b/docs/output/index/Functions5.html new file mode 100644 index 00000000..4200ebe5 --- /dev/null +++ b/docs/output/index/Functions5.html @@ -0,0 +1,34 @@ + + +Function Index + + + + + + + + + +
Function Index
$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z
T
 thread_create
 thread_destoy
 thread_sleep
 thread_wait
 thread_yeild
 tick
 tick_defered, Entity
 time_freq
 time_get
 time_timestamp
+ +
void *thread_create(void (*threadfunc)(void *),
void *user)
Creates a new thread.
Destroys a thread.
void thread_sleep(int milliseconds)
Suspends the current thread for a given period.
void thread_wait(void *thread)
Waits for a thread to be done or destroyed.
Yeild the current threads execution slice.
virtual void tick()
Called progress the entity to the next tick.
void tick()
Calls tick on all the entities in the world to progress the world to the next tick.
virtual void tick_defered()
Called after all entities tick() function has been called.
int64 time_freq()
Returns the frequency of the high resolution timer.
int64 time_get()
Fetches a sample from a high resolution timer.
unsigned time_timestamp()
Retrives the current time as a UNIX timestamp
+ +
+ + + + + + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/index/General.html b/docs/output/index/General.html new file mode 100644 index 00000000..68e24be3 --- /dev/null +++ b/docs/output/index/General.html @@ -0,0 +1,54 @@ + + +Index + + + + + + + + + +
Index
$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z
A
 Actions
B
 BROWSESORT_GAMETYPE
 BROWSESORT_MAP
 BROWSESORT_NAME
 BROWSESORT_NUMPLAYERS
 BROWSESORT_PING
 BROWSESORT_PROGRESSION
C
 Client Hooks
 Client Interface
 Client Side
 Client States
 client_connect
 client_connection_problems
 client_direct_input
 client_disconnect
 client_error_string
 client_frametime
 client_get_input
 CLIENT_INFO
 client_intratick
 client_localtime
 client_mapdownload_amount
 client_mapdownload_totalsize
 client_predintratick
 client_predtick
 client_quit
 client_rcon
 client_rcon_auth
 client_rcon_authed
 client_save_line
 client_send_msg
 client_serverbrowse_get
 client_serverbrowse_lan
 client_serverbrowse_num
 client_serverbrowse_num_requests
 client_serverbrowse_refresh
 client_serverbrowse_sorted_get
 client_serverbrowse_sorted_num
 client_serverbrowse_update
 client_state
 client_tick
 client_tickspeed
 client_ticktime
 CLIENTSTATE_CONNECTING
 CLIENTSTATE_LOADING
 CLIENTSTATE_OFFLINE
 CLIENTSTATE_ONLINE
 CLIENTSTATE_QUITING
 closest_character, Game World
 Compression
 Constants
 Creating
D
 data, IMAGE_INFO
 dbg_assert
 dbg_break
 dbg_msg
 Debug
 Definitions
 destroy, Entity
 destroy_entity, Game World
E
 Engine Interface
 Entity
F
 File IO
 Filesystem
 find_entities, Game World
 format, IMAGE_INFO
 fs_listdir
 fs_makedir
 fs_storage_path
 Functions
+ + + + + +
Sort by game type.
Sort by map
Sort by name.
Sort after how many players there are on the server.
Sort by ping.
Sort by progression.
+ + + +
void client_connect(const char *address)
Connects to a server at the specified address.
int client_connection_problems()
Returns 1 if the client is connection problems.
void client_direct_input(int *input,
int size)
TODO
void client_disconnect()
Disconnects from the current server.
const char *client_error_string()
TODO
float client_frametime()
Returns how long time the last frame took to process.
int *client_get_input(int tick)
TODO
float client_intratick()
Returns the current intratick.
float client_localtime()
Returns the clients local time.
int client_mapdownload_amount()
TODO
int client_mapdownload_totalsize()
TODO
float client_predintratick()
Returns the current preticted intra tick.
int client_predtick()
Returns the current predicted tick.
void client_quit()
Tells to client to shutdown.
void client_rcon(const char *cmd)
Sends a command to the server to execute on it’s console.
void client_rcon_auth(const char *name,
const char *password)
TODO
int client_rcon_authed()
TODO
void client_save_line(const char *line)
TODO
int client_send_msg()
TODO
SERVER_INFO *client_serverbrowse_get(int index)
TODO
int client_serverbrowse_lan()
TODO
int client_serverbrowse_num()
TODO
int client_serverbrowse_num_requests()
TODO
void client_serverbrowse_refresh(int lan)
Issues a refresh of the server browser.
SERVER_INFO *client_serverbrowse_sorted_get(int index)
Returns server info from the sorted list.
int client_serverbrowse_sorted_num()
Returns how many servers there are in the sorted list.
void client_serverbrowse_update()
TODO
int client_state()
Returns the state of the client.
int client_tick()
Returns the tick of the current snapshot.
int client_tickspeed()
Returns how many ticks per second the client is doing.
float client_ticktime()
TODO
The client is trying to connect to a server.
The client has connected to a server and is loading resources.
The client is offline.
The client is connected to a server and running the game.
The client is quiting.
class CHARACTER *closest_character(vec2 pos,
float radius,
ENTITY *notthis)
Finds the closest character to a specific point.
After a snapshot have been created, compression is applyed to reduce the bandwidth.
Items can be added when mods_snap is called using the snap_new_item function to insert an item to the snapshot.
+ + + +
void *data
Pointer to the image data.
void dbg_assert(int test,
const char *msg)
Breaks into the debugger based on a test.
void dbg_break()
Breaks into the debugger.
void dbg_msg(const char *sys,
const char *fmt,
 ...)
Prints a debug message.
virtual void destroy()
Destorys the entity.
void destroy_entity(ENTITY *entity)
Destroys an entity in the world.
+ + + +
Basic entity class.
+ + + +
int find_entities(vec2 pos,  
float radius,  
ENTITY **ents,  
int max,  
int type =  -1)
Finds entities close to a position and returns them in a list.
int format
Contains the format of the image.
typedef void (*fs_listdir_callback)(const char *name, int is_dir, void *user)
Lists the files in a directory
int fs_makedir(const char *path)
Creates a directory
int fs_storage_path(const char *appname,
char *path,
int max)
Fetches per user configuration directory.
+ +
+ + + + + + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/index/General2.html b/docs/output/index/General2.html new file mode 100644 index 00000000..7a54a775 --- /dev/null +++ b/docs/output/index/General2.html @@ -0,0 +1,38 @@ + + +Index + + + + + + + + + +
Index
$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z
G
 Game Controller
 Game World
 gfx_blend_additive
 gfx_blend_none
 gfx_blend_normal
 gfx_clear
 gfx_clip_disable
 gfx_clip_enable
 gfx_get_video_modes
 gfx_getscreen
 gfx_lines_begin
 gfx_lines_draw
 gfx_lines_end
 gfx_load_png
 gfx_load_texture
 gfx_load_texture_raw
 gfx_mapscreen
 gfx_memory_usage
 gfx_quads_begin
 gfx_quads_draw
 gfx_quads_draw_freeform
 gfx_quads_drawTL
 gfx_quads_end
 gfx_quads_setrotation
 gfx_quads_setsubset
 gfx_quads_setsubset_free
 gfx_quads_text
 gfx_screenaspect
 gfx_screenheight
 gfx_screenshot
 gfx_screenwidth
 gfx_setcolor
 gfx_setcolorvertex
 gfx_text
 gfx_text_color
 gfx_text_set_default_font
 gfx_text_width
 gfx_texture_set
 gfx_unload_texture
 Graphics
H
 height, IMAGE_INFO
+ +
Controls the main game logic.
Tracks all entities in the game.
void gfx_blend_additive()
Set the active blending mode to additive (src, one).
void gfx_blend_none()
Disables blending
void gfx_blend_normal()
Set the active blending mode to normal (src, 1-src).
void gfx_clear(float r,
float g,
float b)
Clears the screen with the specified color.
void gfx_clip_disable()
TODO
void gfx_clip_enable(int x,
int y,
int w,
int h)
TODO
int gfx_get_video_modes(VIDEO_MODE *list,
int maxcount)
Fetches a list of all the available video modes.
void gfx_getscreen(float *tl_x,
float *tl_y,
float *br_x,
float *br_y)
TODO
void gfx_lines_begin()
TODO
void gfx_lines_draw(float x0,
float y0,
float x1,
float y1)
TODO
void gfx_lines_end()
TODO
int gfx_load_png(IMAGE_INFO *img,
const char *filename)
Loads a PNG image from disk.
int gfx_load_texture(const char *filename,
int store_format,
int flags)
Loads a texture from a file.
int gfx_load_texture_raw(int w,
int h,
int format,
const void *data,
int store_format,
int flags)
Loads a texture from memory.
void gfx_mapscreen(float tl_x,
float tl_y,
float br_x,
float br_y)
Specifies the coordinate system for the screen.
int gfx_memory_usage()
TODO
void gfx_quads_begin()
Begins a quad drawing session.
void gfx_quads_draw(float x,
float y,
float w,
float h)
Draws a quad by specifying the center point.
void gfx_quads_draw_freeform(float x0,
float y0,
float x1,
float y1,
float x2,
float y2,
float x3,
float y3)
Draws a quad by specifying the corner points.
void gfx_quads_drawTL(float x,
float y,
float width,
float height)
Draws a quad by specifying the top-left point.
void gfx_quads_end()
Ends a quad session.
void gfx_quads_setrotation(float angle)
Sets the rotation to use when drawing a quad.
void gfx_quads_setsubset(float tl_u,
float tl_v,
float br_u,
float br_v)
Sets the uv coordinates to use.
void gfx_quads_setsubset_free(float x0,
float y0,
float x1,
float y1,
float x2,
float y2,
float x3,
float y3)
TODO
void gfx_quads_text(float x,
float y,
float size,
const char *text)
TODO
float gfx_screenaspect()
Returns the aspect ratio between width and height.
int gfx_screenheight()
Returns the screen height.
void gfx_screenshot()
TODO
int gfx_screenwidth()
Returns the screen width.
void gfx_setcolor(float r,
float g,
float b,
float a)
Sets the color of all the vertices.
void gfx_setcolorvertex(int i,
float r,
float g,
float b,
float a)
Sets the color of a vertex.
void gfx_text(void *font,
float x,
float y,
float size,
const char *text,
int max_width)
TODO
void gfx_text_color(float r,
float g,
float b,
float a)
TODO
void gfx_text_set_default_font(void *font)
TODO
float gfx_text_width(void *font,
float size,
const char *text,
int length)
TODO
void gfx_texture_set(int id)
Sets the active texture.
int gfx_unload_texture(int id)
Unloads a texture.
+ + + +
int height
Contains the height of the image
+ +
+ + + + + + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/index/General3.html b/docs/output/index/General3.html new file mode 100644 index 00000000..5d71bfa1 --- /dev/null +++ b/docs/output/index/General3.html @@ -0,0 +1,38 @@ + + +Index + + + + + + + + + +
Index
$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z
I
 Image Formats
 IMAGE_INFO
 IMG_ALPHA
 IMG_AUTO
 IMG_RGB
 IMG_RGBA
 In depth
 Init
 inp_clear_events, INPUT_EVENT
 inp_clear_key_states, INPUT_EVENT
 inp_get_event, INPUT_EVENT
 inp_key_code, INPUT_EVENT
 inp_key_down, INPUT_EVENT
 inp_key_name, INPUT_EVENT
 inp_key_pressed, INPUT_EVENT
 inp_key_presses, INPUT_EVENT
 inp_key_releases, INPUT_EVENT
 inp_key_state, INPUT_EVENT
 inp_key_was_pressed, INPUT_EVENT
 inp_mouse_doubleclick, INPUT_EVENT
 inp_mouse_relative, INPUT_EVENT
 inp_mouse_scroll, INPUT_EVENT
 inp_num_events, INPUT_EVENT
 Input
 INPUT_EVENT
 insert_entity, Game World
 Inspection
 interserct_character, Game World
 Interval
 io_close
 io_flush
 io_length
 io_open
 io_read
 io_seek
 io_skip
 io_stderr
 io_stdin
 io_stdout
 io_tell
 io_write
L
 Lines
 Locks
+ +
8-Bit uncompressed alpha
Lets the engine choose the format.
8-Bit uncompressed RGB
8-Bit uncompressed RGBA
void inp_clear_events()
TODO
void inp_clear_key_states()
TODO
INPUT_EVENT inp_get_event(int index)
TODO
int inp_key_code(const char *key_name)
TODO
int inp_key_down(int key)
TODO
const char *inp_key_name(int k)
TODO
int inp_key_pressed(int key)
Checks if a key is pressed.
int inp_key_presses(int key)
TODO
int inp_key_releases(int key)
TODO
int inp_key_state(int key)
TODO
int inp_key_was_pressed(int key)
TODO
int inp_mouse_doubleclick()
TODO
void inp_mouse_relative(int *x,
int *y)
Fetches the mouse movements.
int inp_mouse_scroll()
TODO
int inp_num_events()
TODO
void insert_entity(ENTITY *entity)
Adds an entity to the world.
modc_newsnapshot is called when a new snapshot has arrived for processing.
Finds the closest character that intersects the line.
The interval for how often a client recives a snapshot changes during the course of the connection.
int io_close(IOHANDLE io)
Closes a file.
int io_flush(IOHANDLE io)
Empties all buffers and writes all pending data.
long int io_length(IOHANDLE io)
Gets the total length of the file.
IOHANDLE io_open(const char *filename,
int flags)
Opens a file.
unsigned io_read(IOHANDLE io,
void *buffer,
unsigned size)
Reads data into a buffer from a file.
int io_seek(IOHANDLE io,
int offset,
int origin)
Seeks to a specified offset in the file.
unsigned io_skip(IOHANDLE io,
unsigned size)
Skips data in a file.
IOHANDLE io_stderr()
Returns an IOHANDLE to the standard error.
IOHANDLE io_stdin()
Returns an IOHANDLE to the standard input.
IOHANDLE io_stdout()
Returns an IOHANDLE to the standard output.
long int io_tell(IOHANDLE io)
Gets the current position in the file.
unsigned io_write(IOHANDLE io,
const void *buffer,
unsigned size)
Writes data from a buffer to file.
+ + + + + +
+ + + + + + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/index/General4.html b/docs/output/index/General4.html new file mode 100644 index 00000000..2ea0db43 --- /dev/null +++ b/docs/output/index/General4.html @@ -0,0 +1,34 @@ + + +Index + + + + + + + + + +
Index
$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z
M
 Map
 map_find_item
 map_get_data
 map_get_data_swapped
 map_get_item
 map_get_type
 map_is_loaded
 map_num_items
 map_unload_data
 mem_alloc
 mem_comp
 mem_copy
 mem_free
 mem_move
 mem_zero
 Memory
 Messaging
 modc_connected
 modc_console_init
 modc_entergame
 modc_init
 modc_message
 modc_net_version
 modc_newsnapshot
 modc_predict
 modc_rcon_line
 modc_render
 modc_save_config
 modc_shutdown
 modc_snap_input
 modc_statechange
 mods_client_direct_input
 mods_client_drop
 mods_client_enter
 mods_client_predicted_input
 mods_connected
 mods_console_init
 mods_init
 mods_message
 mods_net_version
 mods_postsnap
 mods_presnap
 mods_shutdown
 mods_snap
 mods_tick
 mods_version
 msg_pack_end
 msg_pack_int
 msg_pack_raw
 msg_pack_start
 msg_pack_string
 msg_unpack_error
 msg_unpack_int
 msg_unpack_raw
 msg_unpack_string
+ +
void *map_find_item(int type,
int id)
Searches the map for an item.
void *map_get_data(int index)
Fetches a pointer to a raw data chunk in the map.
void *map_get_data_swapped(int index)
TODO
void *map_get_item(int index,
int *type,
int *id)
Gets an item from the loaded map from index.
void map_get_type(int type,
int *start,
int *num)
Gets the index range of an item type.
int map_is_loaded()
Checks if a map is loaded.
int map_num_items()
Checks the number of items in the loaded map.
void map_unload_data(int index)
TODO
void *mem_alloc_debug(const char *filename,
int line,
unsigned size,
unsigned alignment)
Allocates memory.
int mem_comp(const void *a,
const void *b,
int size)
Compares two blocks of memory
void mem_copy(void *dest,
const void *source,
unsigned size)
Copies a a memory block.
void mem_free(void *block)
Frees a block allocated through mem_alloc.
void mem_move(void *dest,
const void *source,
unsigned size)
Copies a a memory block
void mem_zero(void *block,
unsigned size)
Sets a complete memory block to 0
void modc_connected()
TODO
void modc_console_init()
TODO
void modc_entergame()
Called when the client has successfully connect to a server and loaded a map.
void modc_init()
Called when the client starts.
void modc_message(int msg)
TODO
const char *modc_net_version()
TODO
void modc_newsnapshot()
Called when the client progressed to a new snapshot.
void modc_predict()
TODO
void modc_rcon_line(const char *line)
TODO
void modc_render()
Called every frame to let the game render it self.
void modc_save_config()
TODO
void modc_shutdown()
Called when the client closes down.
int modc_snap_input(int *data)
TODO
void modc_statechange(int new_state,
int old_state)
Called every time client changes state.
void mods_client_direct_input(int cid,
void *input)
Called when the server recives new input from a client.
void mods_client_drop(int cid)
Called when a client drops from the server.
void mods_client_enter(int cid)
Called when a client has joined the game.
void mods_client_predicted_input(int cid,
void *input)
Called when the server applys the predicted input on the client.
void mods_connected(int client_id)
TODO
void mods_console_init()
TODO
void mods_init()
Called when the server is started.
void mods_message(int msg,
int client_id)
TODO
const char *mods_net_version()
TODO
void mods_postsnap()
Called after the server is done sending the snapshots.
void mods_presnap()
Called before the server starts to construct snapshots for the clients.
void mods_shutdown()
Called when the server quits.
void mods_snap(int cid)
Called to create the snapshot for a client.
void mods_tick()
Called with a regular interval to progress the gameplay.
const char *mods_version()
TODO
void msg_pack_end()
TODO
void msg_pack_int(int i)
TODO
void msg_pack_raw(const void *data,
int size)
TODO
void msg_pack_start(int msg,
int flags)
TODO
void msg_pack_string(const char *p,
int limit)
TODO
int msg_unpack_error()
TODO
int msg_unpack_int()
TODO
const unsigned char *msg_unpack_raw(int size)
TODO
const char *msg_unpack_string()
TODO
+ +
+ + + + + + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/index/General5.html b/docs/output/index/General5.html new file mode 100644 index 00000000..7c356e9e --- /dev/null +++ b/docs/output/index/General5.html @@ -0,0 +1,50 @@ + + +Index + + + + + + + + + +
Index
$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z
N
 net_addr_comp
 net_addr_str
 net_errno
 net_host_lookup
 net_init
 net_tcp_accept
 net_tcp_close
 net_tcp_connect
 net_tcp_connect_non_blocking
 net_tcp_create
 net_tcp_listen
 net_tcp_recv
 net_tcp_send
 net_tcp_set_non_blocking
 net_udp_close
 net_udp_create
 net_udp_recv
 net_udp_send
 net_would_block
 Network General
 Network TCP
 Network UDP
 Network(Server)
O
 on_character_death, Game Controller
 on_character_spawn, Game Controller
 on_entity, Game Controller
 OS Abstraction
 Other
 Overview
P
 pos, Entity
 Prediction
 proximity_radius, Entity
Q
 Quads
R
 Reinit
 remove_entity, Game World
 Rendering
 reset, Entity
 Running
+ +
int net_addr_comp(const NETADDR *a,
const NETADDR *b)
Compares two network addresses.
int net_addr_str(const NETADDR *addr,
char *string,
int max_length)
Turns a network address into a representive string.
int net_errno()
DOCTODO: serp
int net_host_lookup(const char *hostname,
NETADDR *addr,
int types)
Does a hostname lookup by name and fills out the passed NETADDR struct with the recieved details.
int net_init()
Initiates network functionallity.
int net_tcp_accept(NETSOCKET sock,
NETSOCKET *new_sock,
NETADDR *addr)
Polls a listning socket for a new connection.
int net_tcp_close(NETSOCKET sock)
Closes a TCP socket.
int net_tcp_connect(NETSOCKET sock,
const NETADDR *addr)
Connects one socket to another.
int net_tcp_connect_non_blocking(NETSOCKET sock,
const NETADDR *a)
DOCTODO: serp
NETSOCKET net_tcp_create(const NETADDR *a)
Creates a TCP socket.
int net_tcp_listen(NETSOCKET sock,
int backlog)
Makes the socket start listening for new connections.
int net_tcp_recv(NETSOCKET sock,
void *data,
int maxsize)
Recvives data from a TCP stream.
int net_tcp_send(NETSOCKET sock,
const void *data,
int size)
Sends data to a TCP stream.
int net_tcp_set_non_blocking(NETSOCKET sock)
DOCTODO: serp
int net_udp_close(NETSOCKET sock)
Closes an UDP socket.
NETSOCKET net_udp_create(NETADDR bindaddr)
Creates a UDP socket and binds it to a port.
int net_udp_recv(NETSOCKET sock,
NETADDR *addr,
void *data,
int maxsize)
Recives a packet over an UDP socket.
int net_udp_send(NETSOCKET sock,
const NETADDR *addr,
const void *data,
int size)
Sends a packet over an UDP socket.
int net_would_block()
DOCTODO: serp
+ + + +
virtual int on_character_death(class CHARACTER *victim,
class PLAYER *killer,
int weapon)
Called when a character in the world dies.
virtual void on_character_spawn(class CHARACTER *chr)
Called when a character spawns into the game world.
virtual bool on_entity(int index,
vec2 pos)
Called when the map is loaded to process an entity in the map.
+ + + +
vec2 pos
Contains the current posititon of the entity.
The engine calls modc_predict when reprediction is required.
float proximity_radius
Contains the physical size of the entity.
+ + + + + + + +
void remove_entity(ENTITY *entity)
Removes an entity from the world.
DOCTODO
virtual void reset()
Called when the game resets the map.
Here is an graph over how the server operates on each refresh.
+ +
+ + + + + + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/index/General6.html b/docs/output/index/General6.html new file mode 100644 index 00000000..8349d76a --- /dev/null +++ b/docs/output/index/General6.html @@ -0,0 +1,50 @@ + + +Index + + + + + + + + + +
Index
$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z
S
 Server Browser
 Server Browser Sorting
 Server Hooks
 Server Interface
 Server Operation
 Server Side
 server_clientname
 server_getclientinfo
 SERVER_INFO
 SERVER_INFO_PLAYER
 server_kick
 server_latestinput
 server_send_msg
 server_setbrowseinfo
 server_setclientname
 server_setclientscore
 server_tick
 server_tickspeed
 Shutdown
 snap
 snap_find_item
 snap_free_id
 snap_get_item
 snap_input
 snap_invalidate_item
 SNAP_ITEM
 snap_new_id
 snap_new_item
 snap_num_items
 snap_set_staticsize
 Snapshots
 snd_load_wv
 snd_play
 snd_play_at
 snd_set_channel
 snd_set_listener_pos
 snd_stop
 Sound
 str_append
 str_comp_nocase
 str_copy
 str_find_nocase
 str_format
 str_hex
 str_sanitize
 str_sanitize_strong
 Strings
 Structure
 Structures
T
 TEXLOAD_NORESAMPLE
 Text
 Texture Loading Flags
 thread_create
 thread_destoy
 thread_sleep
 thread_wait
 thread_yeild
 Threads
 tick
 tick_defered, Entity
 Time
 Time on the client
 time_freq
 time_get
 time_timestamp
 Timer
U
 Undocumented
V
 Variables
 VIDEO_MODE
W
 width, IMAGE_INFO
+ +
const char *server_clientname(int client_id)
TODO
int server_getclientinfo(int client_id,
CLIENT_INFO *info)
TODO
void server_kick(int client_id,
const char *reason)
TODO
int *server_latestinput(int client_id,
int *size)
TODO
int server_send_msg(int client_id)
TODO
void server_setbrowseinfo(int game_type,
int progression)
TODO
void server_setclientname(int client_id,
const char *name)
TODO
void server_setclientscore(int client_id,
int score)
TODO
int server_tick()
TODO
int server_tickspeed()
TODO
virtual void snap(int snapping_client)
Called when a new snapshot is being generated for a specific client.
void snap(int snapping_client)
Calls snap on all the entities in the world to create the snapshot.
void *snap_find_item(int snapid,
int type,
int id)
Searches a snapshot for an item.
void snap_free_id(int id)
TODO
void *snap_get_item(int snapid,
int index,
SNAP_ITEM *item)
Gets an item from a snapshot.
void snap_input(void *data,
int size)
Sets the input data to send to the server.
void snap_invalidate_item(int snapid,
int index)
Marks an item as invalid byt setting type and id to 0xffffffff.
int snap_new_id()
TODO
void *snap_new_item(int type,
int id,
int size)
Creates a new item that should be sent.
int snap_num_items(int snapid)
Check the number of items in a snapshot.
void snap_set_staticsize(int type,
int size)
Tells the engine how big a specific item always will be.
int snd_load_wv(const char *filename)
Loads a wavpack compressed sound.
int snd_play(int cid,
int sid,
int flags)
Plays a sound.
int snd_play_at(int cid,
int sid,
int flags,
float x,
float y)
Plays a sound at a specified postition.
void snd_set_channel(int cid,
float vol,
float pan)
Sets the parameters for a sound channel.
void snd_set_listener_pos(float x,
float y)
Sets the listener posititon.
void snd_stop(int id)
Stops a currenly playing sound.
void str_append(char *dst,
const char *src,
int dst_size)
Appends a string to another.
int str_comp_nocase(const char *a,
const char *b)
Compares to strings case insensitive.
void str_copy(char *dst,
const char *src,
int dst_size)
Copies a string to another.
const char *str_find_nocase(const char *haystack,
const char *needle)
Finds a string inside another string case insensitive.
void str_format(char *buffer,
int buffer_size,
const char *format,
 ...)
Performs printf formating into a buffer.
void str_hex(char *dst,
int dst_size,
const void *data,
int data_size)
Takes a datablock and generates a hexstring of it.
void str_sanitize(char *str)
Replaces all characters below 32 and above 127 with whitespace with exception to \r, \n and \r.
void str_sanitize_strong(char *str)
Replaces all characters below 32 and above 127 with whitespace.
A snapshot contains a series of items.
+ + + +
Prevents the texture from any resampling
void *thread_create(void (*threadfunc)(void *),
void *user)
Creates a new thread.
Destroys a thread.
void thread_sleep(int milliseconds)
Suspends the current thread for a given period.
void thread_wait(void *thread)
Waits for a thread to be done or destroyed.
Yeild the current threads execution slice.
virtual void tick()
Called progress the entity to the next tick.
void tick()
Calls tick on all the entities in the world to progress the world to the next tick.
virtual void tick_defered()
Called after all entities tick() function has been called.
tick, intratick predtick, predintratick
int64 time_freq()
Returns the frequency of the high resolution timer.
int64 time_get()
Fetches a sample from a high resolution timer.
unsigned time_timestamp()
Retrives the current time as a UNIX timestamp
+ + + + + + + + + + + +
int width
Contains the width of the image
+ +
+ + + + + + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/index/Variables.html b/docs/output/index/Variables.html new file mode 100644 index 00000000..91528a38 --- /dev/null +++ b/docs/output/index/Variables.html @@ -0,0 +1,50 @@ + + +Variable Index + + + + + + + + + +
Variable Index
$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z
D
 data, IMAGE_INFO
F
 format, IMAGE_INFO
H
 height, IMAGE_INFO
P
 pos, Entity
 proximity_radius, Entity
W
 width, IMAGE_INFO
+ +
void *data
Pointer to the image data.
+ + + +
int format
Contains the format of the image.
+ + + +
int height
Contains the height of the image
+ + + +
vec2 pos
Contains the current posititon of the entity.
float proximity_radius
Contains the physical size of the entity.
+ + + +
int width
Contains the width of the image
+ +
+ + + + + + + + +
Close
+ + + \ No newline at end of file diff --git a/docs/output/javascript/main.js b/docs/output/javascript/main.js new file mode 100644 index 00000000..efcdca96 --- /dev/null +++ b/docs/output/javascript/main.js @@ -0,0 +1,836 @@ +// This file is part of Natural Docs, which is Copyright (C) 2003-2008 Greg Valure +// Natural Docs is licensed under the GPL + + +// +// Browser Styles +// ____________________________________________________________________________ + +var agt=navigator.userAgent.toLowerCase(); +var browserType; +var browserVer; + +if (agt.indexOf("opera") != -1) + { + browserType = "Opera"; + + if (agt.indexOf("opera 7") != -1 || agt.indexOf("opera/7") != -1) + { browserVer = "Opera7"; } + else if (agt.indexOf("opera 8") != -1 || agt.indexOf("opera/8") != -1) + { browserVer = "Opera8"; } + else if (agt.indexOf("opera 9") != -1 || agt.indexOf("opera/9") != -1) + { browserVer = "Opera9"; } + } + +else if (agt.indexOf("applewebkit") != -1) + { + browserType = "Safari"; + + if (agt.indexOf("version/3") != -1) + { browserVer = "Safari3"; } + else if (agt.indexOf("safari/4") != -1) + { browserVer = "Safari2"; } + } + +else if (agt.indexOf("khtml") != -1) + { + browserType = "Konqueror"; + } + +else if (agt.indexOf("msie") != -1) + { + browserType = "IE"; + + if (agt.indexOf("msie 6") != -1) + { browserVer = "IE6"; } + else if (agt.indexOf("msie 7") != -1) + { browserVer = "IE7"; } + } + +else if (agt.indexOf("gecko") != -1) + { + browserType = "Firefox"; + + if (agt.indexOf("rv:1.7") != -1) + { browserVer = "Firefox1"; } + else if (agt.indexOf("rv:1.8)") != -1 || agt.indexOf("rv:1.8.0") != -1) + { browserVer = "Firefox15"; } + else if (agt.indexOf("rv:1.8.1") != -1) + { browserVer = "Firefox2"; } + } + + +// +// Support Functions +// ____________________________________________________________________________ + + +function GetXPosition(item) + { + var position = 0; + + if (item.offsetWidth != null) + { + while (item != document.body && item != null) + { + position += item.offsetLeft; + item = item.offsetParent; + }; + }; + + return position; + }; + + +function GetYPosition(item) + { + var position = 0; + + if (item.offsetWidth != null) + { + while (item != document.body && item != null) + { + position += item.offsetTop; + item = item.offsetParent; + }; + }; + + return position; + }; + + +function MoveToPosition(item, x, y) + { + // Opera 5 chokes on the px extension, so it can use the Microsoft one instead. + + if (item.style.left != null) + { + item.style.left = x + "px"; + item.style.top = y + "px"; + } + else if (item.style.pixelLeft != null) + { + item.style.pixelLeft = x; + item.style.pixelTop = y; + }; + }; + + +// +// Menu +// ____________________________________________________________________________ + + +function ToggleMenu(id) + { + if (!window.document.getElementById) + { return; }; + + var display = window.document.getElementById(id).style.display; + + if (display == "none") + { display = "block"; } + else + { display = "none"; } + + window.document.getElementById(id).style.display = display; + } + +function HideAllBut(ids, max) + { + if (document.getElementById) + { + ids.sort( function(a,b) { return a - b; } ); + var number = 1; + + while (number < max) + { + if (ids.length > 0 && number == ids[0]) + { ids.shift(); } + else + { + document.getElementById("MGroupContent" + number).style.display = "none"; + }; + + number++; + }; + }; + } + + +// +// Tooltips +// ____________________________________________________________________________ + + +var tooltipTimer = 0; + +function ShowTip(event, tooltipID, linkID) + { + if (tooltipTimer) + { clearTimeout(tooltipTimer); }; + + var docX = event.clientX + window.pageXOffset; + var docY = event.clientY + window.pageYOffset; + + var showCommand = "ReallyShowTip('" + tooltipID + "', '" + linkID + "', " + docX + ", " + docY + ")"; + + tooltipTimer = setTimeout(showCommand, 1000); + } + +function ReallyShowTip(tooltipID, linkID, docX, docY) + { + tooltipTimer = 0; + + var tooltip; + var link; + + if (document.getElementById) + { + tooltip = document.getElementById(tooltipID); + link = document.getElementById(linkID); + } +/* else if (document.all) + { + tooltip = eval("document.all['" + tooltipID + "']"); + link = eval("document.all['" + linkID + "']"); + } +*/ + if (tooltip) + { + var left = GetXPosition(link); + var top = GetYPosition(link); + top += link.offsetHeight; + + + // The fallback method is to use the mouse X and Y relative to the document. We use a separate if and test if its a number + // in case some browser snuck through the above if statement but didn't support everything. + + if (!isFinite(top) || top == 0) + { + left = docX; + top = docY; + } + + // Some spacing to get it out from under the cursor. + + top += 10; + + // Make sure the tooltip doesnt get smushed by being too close to the edge, or in some browsers, go off the edge of the + // page. We do it here because Konqueror does get offsetWidth right even if it doesnt get the positioning right. + + if (tooltip.offsetWidth != null) + { + var width = tooltip.offsetWidth; + var docWidth = document.body.clientWidth; + + if (left + width > docWidth) + { left = docWidth - width - 1; } + + // If there's a horizontal scroll bar we could go past zero because it's using the page width, not the window width. + if (left < 0) + { left = 0; }; + } + + MoveToPosition(tooltip, left, top); + tooltip.style.visibility = "visible"; + } + } + +function HideTip(tooltipID) + { + if (tooltipTimer) + { + clearTimeout(tooltipTimer); + tooltipTimer = 0; + } + + var tooltip; + + if (document.getElementById) + { tooltip = document.getElementById(tooltipID); } + else if (document.all) + { tooltip = eval("document.all['" + tooltipID + "']"); } + + if (tooltip) + { tooltip.style.visibility = "hidden"; } + } + + +// +// Blockquote fix for IE +// ____________________________________________________________________________ + + +function NDOnLoad() + { + if (browserVer == "IE6") + { + var scrollboxes = document.getElementsByTagName('blockquote'); + + if (scrollboxes.item(0)) + { + NDDoResize(); + window.onresize=NDOnResize; + }; + }; + }; + + +var resizeTimer = 0; + +function NDOnResize() + { + if (resizeTimer != 0) + { clearTimeout(resizeTimer); }; + + resizeTimer = setTimeout(NDDoResize, 250); + }; + + +function NDDoResize() + { + var scrollboxes = document.getElementsByTagName('blockquote'); + + var i; + var item; + + i = 0; + while (item = scrollboxes.item(i)) + { + item.style.width = 100; + i++; + }; + + i = 0; + while (item = scrollboxes.item(i)) + { + item.style.width = item.parentNode.offsetWidth; + i++; + }; + + clearTimeout(resizeTimer); + resizeTimer = 0; + } + + + +/* ________________________________________________________________________________________________________ + + Class: SearchPanel + ________________________________________________________________________________________________________ + + A class handling everything associated with the search panel. + + Parameters: + + name - The name of the global variable that will be storing this instance. Is needed to be able to set timeouts. + mode - The mode the search is going to work in. Pass CommandLineOption()>, so the + value will be something like "HTML" or "FramedHTML". + + ________________________________________________________________________________________________________ +*/ + + +function SearchPanel(name, mode, resultsPath) + { + if (!name || !mode || !resultsPath) + { alert("Incorrect parameters to SearchPanel."); }; + + + // Group: Variables + // ________________________________________________________________________ + + /* + var: name + The name of the global variable that will be storing this instance of the class. + */ + this.name = name; + + /* + var: mode + The mode the search is going to work in, such as "HTML" or "FramedHTML". + */ + this.mode = mode; + + /* + var: resultsPath + The relative path from the current HTML page to the results page directory. + */ + this.resultsPath = resultsPath; + + /* + var: keyTimeout + The timeout used between a keystroke and when a search is performed. + */ + this.keyTimeout = 0; + + /* + var: keyTimeoutLength + The length of in thousandths of a second. + */ + this.keyTimeoutLength = 500; + + /* + var: lastSearchValue + The last search string executed, or an empty string if none. + */ + this.lastSearchValue = ""; + + /* + var: lastResultsPage + The last results page. The value is only relevant if is set. + */ + this.lastResultsPage = ""; + + /* + var: deactivateTimeout + + The timeout used between when a control is deactivated and when the entire panel is deactivated. Is necessary + because a control may be deactivated in favor of another control in the same panel, in which case it should stay + active. + */ + this.deactivateTimout = 0; + + /* + var: deactivateTimeoutLength + The length of in thousandths of a second. + */ + this.deactivateTimeoutLength = 200; + + + + + // Group: DOM Elements + // ________________________________________________________________________ + + + // Function: DOMSearchField + this.DOMSearchField = function() + { return document.getElementById("MSearchField"); }; + + // Function: DOMSearchType + this.DOMSearchType = function() + { return document.getElementById("MSearchType"); }; + + // Function: DOMPopupSearchResults + this.DOMPopupSearchResults = function() + { return document.getElementById("MSearchResults"); }; + + // Function: DOMPopupSearchResultsWindow + this.DOMPopupSearchResultsWindow = function() + { return document.getElementById("MSearchResultsWindow"); }; + + // Function: DOMSearchPanel + this.DOMSearchPanel = function() + { return document.getElementById("MSearchPanel"); }; + + + + + // Group: Event Handlers + // ________________________________________________________________________ + + + /* + Function: OnSearchFieldFocus + Called when focus is added or removed from the search field. + */ + this.OnSearchFieldFocus = function(isActive) + { + this.Activate(isActive); + }; + + + /* + Function: OnSearchFieldChange + Called when the content of the search field is changed. + */ + this.OnSearchFieldChange = function() + { + if (this.keyTimeout) + { + clearTimeout(this.keyTimeout); + this.keyTimeout = 0; + }; + + var searchValue = this.DOMSearchField().value.replace(/ +/g, ""); + + if (searchValue != this.lastSearchValue) + { + if (searchValue != "") + { + this.keyTimeout = setTimeout(this.name + ".Search()", this.keyTimeoutLength); + } + else + { + if (this.mode == "HTML") + { this.DOMPopupSearchResultsWindow().style.display = "none"; }; + this.lastSearchValue = ""; + }; + }; + }; + + + /* + Function: OnSearchTypeFocus + Called when focus is added or removed from the search type. + */ + this.OnSearchTypeFocus = function(isActive) + { + this.Activate(isActive); + }; + + + /* + Function: OnSearchTypeChange + Called when the search type is changed. + */ + this.OnSearchTypeChange = function() + { + var searchValue = this.DOMSearchField().value.replace(/ +/g, ""); + + if (searchValue != "") + { + this.Search(); + }; + }; + + + + // Group: Action Functions + // ________________________________________________________________________ + + + /* + Function: CloseResultsWindow + Closes the results window. + */ + this.CloseResultsWindow = function() + { + this.DOMPopupSearchResultsWindow().style.display = "none"; + this.Activate(false, true); + }; + + + /* + Function: Search + Performs a search. + */ + this.Search = function() + { + this.keyTimeout = 0; + + var searchValue = this.DOMSearchField().value.replace(/^ +/, ""); + var searchTopic = this.DOMSearchType().value; + + var pageExtension = searchValue.substr(0,1); + + if (pageExtension.match(/^[a-z]/i)) + { pageExtension = pageExtension.toUpperCase(); } + else if (pageExtension.match(/^[0-9]/)) + { pageExtension = 'Numbers'; } + else + { pageExtension = "Symbols"; }; + + var resultsPage; + var resultsPageWithSearch; + var hasResultsPage; + + // indexSectionsWithContent is defined in searchdata.js + if (indexSectionsWithContent[searchTopic][pageExtension] == true) + { + resultsPage = this.resultsPath + '/' + searchTopic + pageExtension + '.html'; + resultsPageWithSearch = resultsPage+'?'+escape(searchValue); + hasResultsPage = true; + } + else + { + resultsPage = this.resultsPath + '/NoResults.html'; + resultsPageWithSearch = resultsPage; + hasResultsPage = false; + }; + + var resultsFrame; + if (this.mode == "HTML") + { resultsFrame = window.frames.MSearchResults; } + else if (this.mode == "FramedHTML") + { resultsFrame = window.top.frames['Content']; }; + + + if (resultsPage != this.lastResultsPage || + + // Bug in IE. If everything becomes hidden in a run, none of them will be able to be reshown in the next for some + // reason. It counts the right number of results, and you can even read the display as "block" after setting it, but it + // just doesn't work in IE 6 or IE 7. So if we're on the right page but the previous search had no results, reload the + // page anyway to get around the bug. + (browserType == "IE" && hasResultsPage && + (!resultsFrame.searchResults || resultsFrame.searchResults.lastMatchCount == 0)) ) + + { + resultsFrame.location.href = resultsPageWithSearch; + } + + // So if the results page is right and there's no IE bug, reperform the search on the existing page. We have to check if there + // are results because NoResults.html doesn't have any JavaScript, and it would be useless to do anything on that page even + // if it did. + else if (hasResultsPage) + { + // We need to check if this exists in case the frame is present but didn't finish loading. + if (resultsFrame.searchResults) + { resultsFrame.searchResults.Search(searchValue); } + + // Otherwise just reload instead of waiting. + else + { resultsFrame.location.href = resultsPageWithSearch; }; + }; + + + var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow(); + + if (this.mode == "HTML" && domPopupSearchResultsWindow.style.display != "block") + { + var domSearchType = this.DOMSearchType(); + + var left = GetXPosition(domSearchType); + var top = GetYPosition(domSearchType) + domSearchType.offsetHeight; + + MoveToPosition(domPopupSearchResultsWindow, left, top); + domPopupSearchResultsWindow.style.display = 'block'; + }; + + + this.lastSearchValue = searchValue; + this.lastResultsPage = resultsPage; + }; + + + + // Group: Activation Functions + // Functions that handle whether the entire panel is active or not. + // ________________________________________________________________________ + + + /* + Function: Activate + + Activates or deactivates the search panel, resetting things to their default values if necessary. You can call this on every + control's OnBlur() and it will handle not deactivating the entire panel when focus is just switching between them transparently. + + Parameters: + + isActive - Whether you're activating or deactivating the panel. + ignoreDeactivateDelay - Set if you're positive the action will deactivate the panel and thus want to skip the delay. + */ + this.Activate = function(isActive, ignoreDeactivateDelay) + { + // We want to ignore isActive being false while the results window is open. + if (isActive || (this.mode == "HTML" && this.DOMPopupSearchResultsWindow().style.display == "block")) + { + if (this.inactivateTimeout) + { + clearTimeout(this.inactivateTimeout); + this.inactivateTimeout = 0; + }; + + this.DOMSearchPanel().className = 'MSearchPanelActive'; + + var searchField = this.DOMSearchField(); + + if (searchField.value == 'Search') + { searchField.value = ""; } + } + else if (!ignoreDeactivateDelay) + { + this.inactivateTimeout = setTimeout(this.name + ".InactivateAfterTimeout()", this.inactivateTimeoutLength); + } + else + { + this.InactivateAfterTimeout(); + }; + }; + + + /* + Function: InactivateAfterTimeout + + Called by , which is set by . Inactivation occurs on a timeout because a control may + receive OnBlur() when focus is really transferring to another control in the search panel. In this case we don't want to + actually deactivate the panel because not only would that cause a visible flicker but it could also reset the search value. + So by doing it on a timeout instead, there's a short period where the second control's OnFocus() can cancel the deactivation. + */ + this.InactivateAfterTimeout = function() + { + this.inactivateTimeout = 0; + + this.DOMSearchPanel().className = 'MSearchPanelInactive'; + this.DOMSearchField().value = "Search"; + + this.lastSearchValue = ""; + this.lastResultsPage = ""; + }; + }; + + + + +/* ________________________________________________________________________________________________________ + + Class: SearchResults + _________________________________________________________________________________________________________ + + The class that handles everything on the search results page. + _________________________________________________________________________________________________________ +*/ + + +function SearchResults(name, mode) + { + /* + var: mode + The mode the search is going to work in, such as "HTML" or "FramedHTML". + */ + this.mode = mode; + + /* + var: lastMatchCount + The number of matches from the last run of . + */ + this.lastMatchCount = 0; + + + /* + Function: Toggle + Toggles the visibility of the passed element ID. + */ + this.Toggle = function(id) + { + if (this.mode == "FramedHTML") + { return; }; + + var parentElement = document.getElementById(id); + + var element = parentElement.firstChild; + + while (element && element != parentElement) + { + if (element.nodeName == 'DIV' && element.className == 'ISubIndex') + { + if (element.style.display == 'block') + { element.style.display = "none"; } + else + { element.style.display = 'block'; } + }; + + if (element.nodeName == 'DIV' && element.hasChildNodes()) + { element = element.firstChild; } + else if (element.nextSibling) + { element = element.nextSibling; } + else + { + do + { + element = element.parentNode; + } + while (element && element != parentElement && !element.nextSibling); + + if (element && element != parentElement) + { element = element.nextSibling; }; + }; + }; + }; + + + /* + Function: Search + + Searches for the passed string. If there is no parameter, it takes it from the URL query. + + Always returns true, since other documents may try to call it and that may or may not be possible. + */ + this.Search = function(search) + { + if (!search) + { + search = window.location.search; + search = search.substring(1); // Remove the leading ? + search = unescape(search); + }; + + search = search.replace(/^ +/, ""); + search = search.replace(/ +$/, ""); + search = search.toLowerCase(); + + if (search.match(/[^a-z0-9]/)) // Just a little speedup so it doesn't have to go through the below unnecessarily. + { + search = search.replace(/\_/g, "_und"); + search = search.replace(/\ +/gi, "_spc"); + search = search.replace(/\~/g, "_til"); + search = search.replace(/\!/g, "_exc"); + search = search.replace(/\@/g, "_att"); + search = search.replace(/\#/g, "_num"); + search = search.replace(/\$/g, "_dol"); + search = search.replace(/\%/g, "_pct"); + search = search.replace(/\^/g, "_car"); + search = search.replace(/\&/g, "_amp"); + search = search.replace(/\*/g, "_ast"); + search = search.replace(/\(/g, "_lpa"); + search = search.replace(/\)/g, "_rpa"); + search = search.replace(/\-/g, "_min"); + search = search.replace(/\+/g, "_plu"); + search = search.replace(/\=/g, "_equ"); + search = search.replace(/\{/g, "_lbc"); + search = search.replace(/\}/g, "_rbc"); + search = search.replace(/\[/g, "_lbk"); + search = search.replace(/\]/g, "_rbk"); + search = search.replace(/\:/g, "_col"); + search = search.replace(/\;/g, "_sco"); + search = search.replace(/\"/g, "_quo"); + search = search.replace(/\'/g, "_apo"); + search = search.replace(/\/g, "_ran"); + search = search.replace(/\,/g, "_com"); + search = search.replace(/\./g, "_per"); + search = search.replace(/\?/g, "_que"); + search = search.replace(/\//g, "_sla"); + search = search.replace(/[^a-z0-9\_]i/gi, "_zzz"); + }; + + var resultRows = document.getElementsByTagName("div"); + var matches = 0; + + var i = 0; + while (i < resultRows.length) + { + var row = resultRows.item(i); + + if (row.className == "SRResult") + { + var rowMatchName = row.id.toLowerCase(); + rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); + + if (search.length <= rowMatchName.length && rowMatchName.substr(0, search.length) == search) + { + row.style.display = "block"; + matches++; + } + else + { row.style.display = "none"; }; + }; + + i++; + }; + + document.getElementById("Searching").style.display="none"; + + if (matches == 0) + { document.getElementById("NoMatches").style.display="block"; } + else + { document.getElementById("NoMatches").style.display="none"; } + + this.lastMatchCount = matches; + + return true; + }; + }; + diff --git a/docs/output/javascript/searchdata.js b/docs/output/javascript/searchdata.js new file mode 100644 index 00000000..26acc090 --- /dev/null +++ b/docs/output/javascript/searchdata.js @@ -0,0 +1,152 @@ +var indexSectionsWithContent = { + "General": { + "Symbols": false, + "Numbers": false, + "A": true, + "B": true, + "C": true, + "D": true, + "E": true, + "F": true, + "G": true, + "H": true, + "I": true, + "J": false, + "K": false, + "L": true, + "M": true, + "N": true, + "O": true, + "P": true, + "Q": true, + "R": true, + "S": true, + "T": true, + "U": true, + "V": true, + "W": true, + "X": false, + "Y": false, + "Z": false + }, + "Variables": { + "Symbols": false, + "Numbers": false, + "A": false, + "B": false, + "C": false, + "D": true, + "E": false, + "F": true, + "G": false, + "H": true, + "I": false, + "J": false, + "K": false, + "L": false, + "M": false, + "N": false, + "O": false, + "P": true, + "Q": false, + "R": false, + "S": false, + "T": false, + "U": false, + "V": false, + "W": true, + "X": false, + "Y": false, + "Z": false + }, + "Functions": { + "Symbols": false, + "Numbers": false, + "A": false, + "B": false, + "C": true, + "D": true, + "E": false, + "F": true, + "G": true, + "H": false, + "I": true, + "J": false, + "K": false, + "L": false, + "M": true, + "N": true, + "O": true, + "P": false, + "Q": false, + "R": true, + "S": true, + "T": true, + "U": false, + "V": false, + "W": false, + "X": false, + "Y": false, + "Z": false + }, + "Constants": { + "Symbols": false, + "Numbers": false, + "A": false, + "B": true, + "C": true, + "D": false, + "E": false, + "F": false, + "G": false, + "H": false, + "I": true, + "J": false, + "K": false, + "L": false, + "M": false, + "N": false, + "O": false, + "P": false, + "Q": false, + "R": false, + "S": true, + "T": true, + "U": false, + "V": false, + "W": false, + "X": false, + "Y": false, + "Z": false + }, + "Classes": { + "Symbols": false, + "Numbers": false, + "A": false, + "B": false, + "C": true, + "D": false, + "E": true, + "F": false, + "G": true, + "H": false, + "I": true, + "J": false, + "K": false, + "L": false, + "M": false, + "N": false, + "O": false, + "P": false, + "Q": false, + "R": false, + "S": true, + "T": false, + "U": false, + "V": true, + "W": false, + "X": false, + "Y": false, + "Z": false + } + } \ No newline at end of file diff --git a/docs/output/search/ClassesC.html b/docs/output/search/ClassesC.html new file mode 100644 index 00000000..34488963 --- /dev/null +++ b/docs/output/search/ClassesC.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/ClassesE.html b/docs/output/search/ClassesE.html new file mode 100644 index 00000000..5c3d1843 --- /dev/null +++ b/docs/output/search/ClassesE.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/ClassesG.html b/docs/output/search/ClassesG.html new file mode 100644 index 00000000..e9ca4016 --- /dev/null +++ b/docs/output/search/ClassesG.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/ClassesI.html b/docs/output/search/ClassesI.html new file mode 100644 index 00000000..90d97fd5 --- /dev/null +++ b/docs/output/search/ClassesI.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/ClassesS.html b/docs/output/search/ClassesS.html new file mode 100644 index 00000000..1d0ddb03 --- /dev/null +++ b/docs/output/search/ClassesS.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/ClassesV.html b/docs/output/search/ClassesV.html new file mode 100644 index 00000000..c37fec12 --- /dev/null +++ b/docs/output/search/ClassesV.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/ConstantsB.html b/docs/output/search/ConstantsB.html new file mode 100644 index 00000000..dfc89fcb --- /dev/null +++ b/docs/output/search/ConstantsB.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/ConstantsC.html b/docs/output/search/ConstantsC.html new file mode 100644 index 00000000..bc306835 --- /dev/null +++ b/docs/output/search/ConstantsC.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/ConstantsI.html b/docs/output/search/ConstantsI.html new file mode 100644 index 00000000..73c23679 --- /dev/null +++ b/docs/output/search/ConstantsI.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/ConstantsS.html b/docs/output/search/ConstantsS.html new file mode 100644 index 00000000..ed2e206c --- /dev/null +++ b/docs/output/search/ConstantsS.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/ConstantsT.html b/docs/output/search/ConstantsT.html new file mode 100644 index 00000000..6b5c377c --- /dev/null +++ b/docs/output/search/ConstantsT.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/FunctionsC.html b/docs/output/search/FunctionsC.html new file mode 100644 index 00000000..1d715ef0 --- /dev/null +++ b/docs/output/search/FunctionsC.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/output/search/FunctionsD.html b/docs/output/search/FunctionsD.html new file mode 100644 index 00000000..3e2d841f --- /dev/null +++ b/docs/output/search/FunctionsD.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
destroy, Entity
destroy_entity, Game World
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/FunctionsF.html b/docs/output/search/FunctionsF.html new file mode 100644 index 00000000..383f14f2 --- /dev/null +++ b/docs/output/search/FunctionsF.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
find_entities, Game World
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/FunctionsG.html b/docs/output/search/FunctionsG.html new file mode 100644 index 00000000..35158007 --- /dev/null +++ b/docs/output/search/FunctionsG.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/output/search/FunctionsI.html b/docs/output/search/FunctionsI.html new file mode 100644 index 00000000..08a41fd9 --- /dev/null +++ b/docs/output/search/FunctionsI.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
inp_clear_events, INPUT_EVENT
inp_get_event, INPUT_EVENT
inp_key_code, INPUT_EVENT
inp_key_down, INPUT_EVENT
inp_key_name, INPUT_EVENT
inp_key_pressed, INPUT_EVENT
inp_key_presses, INPUT_EVENT
inp_key_releases, INPUT_EVENT
inp_key_state, INPUT_EVENT
inp_key_was_pressed, INPUT_EVENT
inp_mouse_relative, INPUT_EVENT
inp_mouse_scroll, INPUT_EVENT
inp_num_events, INPUT_EVENT
insert_entity, Game World
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/FunctionsM.html b/docs/output/search/FunctionsM.html new file mode 100644 index 00000000..676f5c96 --- /dev/null +++ b/docs/output/search/FunctionsM.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/output/search/FunctionsN.html b/docs/output/search/FunctionsN.html new file mode 100644 index 00000000..aaeeaf70 --- /dev/null +++ b/docs/output/search/FunctionsN.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/FunctionsO.html b/docs/output/search/FunctionsO.html new file mode 100644 index 00000000..a5ceefd6 --- /dev/null +++ b/docs/output/search/FunctionsO.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
on_character_death, Game Controller
on_character_spawn, Game Controller
on_entity, Game Controller
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/FunctionsR.html b/docs/output/search/FunctionsR.html new file mode 100644 index 00000000..844d9743 --- /dev/null +++ b/docs/output/search/FunctionsR.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
remove_entity, Game World
reset, Entity
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/FunctionsS.html b/docs/output/search/FunctionsS.html new file mode 100644 index 00000000..c515d28a --- /dev/null +++ b/docs/output/search/FunctionsS.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/output/search/FunctionsT.html b/docs/output/search/FunctionsT.html new file mode 100644 index 00000000..44b7d83d --- /dev/null +++ b/docs/output/search/FunctionsT.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
tick_defered, Entity
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/GeneralA.html b/docs/output/search/GeneralA.html new file mode 100644 index 00000000..5fec3a82 --- /dev/null +++ b/docs/output/search/GeneralA.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/GeneralB.html b/docs/output/search/GeneralB.html new file mode 100644 index 00000000..dfc89fcb --- /dev/null +++ b/docs/output/search/GeneralB.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/GeneralC.html b/docs/output/search/GeneralC.html new file mode 100644 index 00000000..fb1aeb7a --- /dev/null +++ b/docs/output/search/GeneralC.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/output/search/GeneralD.html b/docs/output/search/GeneralD.html new file mode 100644 index 00000000..11e12e8f --- /dev/null +++ b/docs/output/search/GeneralD.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
data, IMAGE_INFO
destroy, Entity
destroy_entity, Game World
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/GeneralE.html b/docs/output/search/GeneralE.html new file mode 100644 index 00000000..795ac26b --- /dev/null +++ b/docs/output/search/GeneralE.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/GeneralF.html b/docs/output/search/GeneralF.html new file mode 100644 index 00000000..b6237330 --- /dev/null +++ b/docs/output/search/GeneralF.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
find_entities, Game World
format, IMAGE_INFO
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/GeneralG.html b/docs/output/search/GeneralG.html new file mode 100644 index 00000000..b3a01405 --- /dev/null +++ b/docs/output/search/GeneralG.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/output/search/GeneralH.html b/docs/output/search/GeneralH.html new file mode 100644 index 00000000..040aae73 --- /dev/null +++ b/docs/output/search/GeneralH.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
height, IMAGE_INFO
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/GeneralI.html b/docs/output/search/GeneralI.html new file mode 100644 index 00000000..b421abe4 --- /dev/null +++ b/docs/output/search/GeneralI.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
inp_clear_events, INPUT_EVENT
inp_get_event, INPUT_EVENT
inp_key_code, INPUT_EVENT
inp_key_down, INPUT_EVENT
inp_key_name, INPUT_EVENT
inp_key_pressed, INPUT_EVENT
inp_key_presses, INPUT_EVENT
inp_key_releases, INPUT_EVENT
inp_key_state, INPUT_EVENT
inp_key_was_pressed, INPUT_EVENT
inp_mouse_relative, INPUT_EVENT
inp_mouse_scroll, INPUT_EVENT
inp_num_events, INPUT_EVENT
insert_entity, Game World
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/GeneralL.html b/docs/output/search/GeneralL.html new file mode 100644 index 00000000..2e699c98 --- /dev/null +++ b/docs/output/search/GeneralL.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/GeneralM.html b/docs/output/search/GeneralM.html new file mode 100644 index 00000000..014ae1d3 --- /dev/null +++ b/docs/output/search/GeneralM.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/output/search/GeneralN.html b/docs/output/search/GeneralN.html new file mode 100644 index 00000000..97c92b18 --- /dev/null +++ b/docs/output/search/GeneralN.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/GeneralO.html b/docs/output/search/GeneralO.html new file mode 100644 index 00000000..1e3cdf5f --- /dev/null +++ b/docs/output/search/GeneralO.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
on_character_death, Game Controller
on_character_spawn, Game Controller
on_entity, Game Controller
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/GeneralP.html b/docs/output/search/GeneralP.html new file mode 100644 index 00000000..9e1de0c6 --- /dev/null +++ b/docs/output/search/GeneralP.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
pos, Entity
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/GeneralQ.html b/docs/output/search/GeneralQ.html new file mode 100644 index 00000000..79021283 --- /dev/null +++ b/docs/output/search/GeneralQ.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/GeneralR.html b/docs/output/search/GeneralR.html new file mode 100644 index 00000000..c239c5ae --- /dev/null +++ b/docs/output/search/GeneralR.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
remove_entity, Game World
reset, Entity
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/GeneralS.html b/docs/output/search/GeneralS.html new file mode 100644 index 00000000..434ad929 --- /dev/null +++ b/docs/output/search/GeneralS.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/output/search/GeneralT.html b/docs/output/search/GeneralT.html new file mode 100644 index 00000000..17f46e89 --- /dev/null +++ b/docs/output/search/GeneralT.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
tick_defered, Entity
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/GeneralU.html b/docs/output/search/GeneralU.html new file mode 100644 index 00000000..0a5bfa84 --- /dev/null +++ b/docs/output/search/GeneralU.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/GeneralV.html b/docs/output/search/GeneralV.html new file mode 100644 index 00000000..23e0bb27 --- /dev/null +++ b/docs/output/search/GeneralV.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/GeneralW.html b/docs/output/search/GeneralW.html new file mode 100644 index 00000000..7904eab9 --- /dev/null +++ b/docs/output/search/GeneralW.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
width, IMAGE_INFO
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/NoResults.html b/docs/output/search/NoResults.html new file mode 100644 index 00000000..02ce8886 --- /dev/null +++ b/docs/output/search/NoResults.html @@ -0,0 +1,15 @@ + + + + + + + + + + + + +
No Matches
\ No newline at end of file diff --git a/docs/output/search/VariablesD.html b/docs/output/search/VariablesD.html new file mode 100644 index 00000000..3e8af920 --- /dev/null +++ b/docs/output/search/VariablesD.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
data, IMAGE_INFO
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/VariablesF.html b/docs/output/search/VariablesF.html new file mode 100644 index 00000000..712600ea --- /dev/null +++ b/docs/output/search/VariablesF.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
format, IMAGE_INFO
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/VariablesH.html b/docs/output/search/VariablesH.html new file mode 100644 index 00000000..040aae73 --- /dev/null +++ b/docs/output/search/VariablesH.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
height, IMAGE_INFO
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/VariablesP.html b/docs/output/search/VariablesP.html new file mode 100644 index 00000000..5ec61d40 --- /dev/null +++ b/docs/output/search/VariablesP.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
pos, Entity
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/search/VariablesW.html b/docs/output/search/VariablesW.html new file mode 100644 index 00000000..7904eab9 --- /dev/null +++ b/docs/output/search/VariablesW.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +
Loading...
width, IMAGE_INFO
Searching...
No Matches
\ No newline at end of file diff --git a/docs/output/styles/main.css b/docs/output/styles/main.css new file mode 100644 index 00000000..17e9cbc3 --- /dev/null +++ b/docs/output/styles/main.css @@ -0,0 +1,767 @@ +/* + IMPORTANT: If you're editing this file in the output directory of one of + your projects, your changes will be overwritten the next time you run + Natural Docs. Instead, copy this file to your project directory, make your + changes, and you can use it with -s. Even better would be to make a CSS + file in your project directory with only your changes, which you can then + use with -s [original style] [your changes]. + + On the other hand, if you're editing this file in the Natural Docs styles + directory, the changes will automatically be applied to all your projects + that use this style the next time Natural Docs is run on them. + + This file is part of Natural Docs, which is Copyright (C) 2003-2008 Greg Valure + Natural Docs is licensed under the GPL +*/ + +body { + font: 10pt Verdana, Arial, sans-serif; + color: #000000; + margin: 0; padding: 0; + } + +.ContentPage, +.IndexPage, +.FramedMenuPage { + background-color: #E8E8E8; + } +.FramedContentPage, +.FramedIndexPage, +.FramedSearchResultsPage, +.PopupSearchResultsPage { + background-color: #FFFFFF; + } + + +a:link, +a:visited { color: #900000; text-decoration: none } +a:hover { color: #900000; text-decoration: underline } +a:active { color: #FF0000; text-decoration: underline } + +td { + vertical-align: top } + +img { border: 0; } + + +/* + Comment out this line to use web-style paragraphs (blank line between + paragraphs, no indent) instead of print-style paragraphs (no blank line, + indented.) +*/ +p { + text-indent: 5ex; margin: 0 } + + +/* Opera doesn't break with just wbr, but will if you add this. */ +.Opera wbr:after { + content: "\00200B"; + } + + +/* Blockquotes are used as containers for things that may need to scroll. */ +blockquote { + padding: 0; + margin: 0; + overflow: auto; + } + + +.Firefox1 blockquote { + padding-bottom: .5em; + } + +/* Turn off scrolling when printing. */ +@media print { + blockquote { + overflow: visible; + } + .IE blockquote { + width: auto; + } + } + + + +#Menu { + font-size: 9pt; + padding: 10px 0 0 0; + } +.ContentPage #Menu, +.IndexPage #Menu { + position: absolute; + top: 0; + left: 0; + width: 31ex; + overflow: hidden; + } +.ContentPage .Firefox #Menu, +.IndexPage .Firefox #Menu { + width: 27ex; + } + + + .MTitle { + font-size: 16pt; font-weight: bold; font-variant: small-caps; + text-align: center; + padding: 5px 10px 15px 10px; + border-bottom: 1px dotted #000000; + margin-bottom: 15px } + + .MSubTitle { + font-size: 9pt; font-weight: normal; font-variant: normal; + margin-top: 1ex; margin-bottom: 5px } + + + .MEntry a:link, + .MEntry a:hover, + .MEntry a:visited { color: #606060; margin-right: 0 } + .MEntry a:active { color: #A00000; margin-right: 0 } + + + .MGroup { + font-variant: small-caps; font-weight: bold; + margin: 1em 0 1em 10px; + } + + .MGroupContent { + font-variant: normal; font-weight: normal } + + .MGroup a:link, + .MGroup a:hover, + .MGroup a:visited { color: #545454; margin-right: 10px } + .MGroup a:active { color: #A00000; margin-right: 10px } + + + .MFile, + .MText, + .MLink, + .MIndex { + padding: 1px 17px 2px 10px; + margin: .25em 0 .25em 0; + } + + .MText { + font-size: 8pt; font-style: italic } + + .MLink { + font-style: italic } + + #MSelected { + color: #000000; background-color: #FFFFFF; + /* Replace padding with border. */ + padding: 0 10px 0 10px; + border-width: 1px 2px 2px 0; border-style: solid; border-color: #000000; + margin-right: 5px; + } + + /* Close off the left side when its in a group. */ + .MGroup #MSelected { + padding-left: 9px; border-left-width: 1px } + + /* A treat for Mozilla users. Blatantly non-standard. Will be replaced with CSS 3 attributes when finalized/supported. */ + .Firefox #MSelected { + -moz-border-radius-topright: 10px; + -moz-border-radius-bottomright: 10px } + .Firefox .MGroup #MSelected { + -moz-border-radius-topleft: 10px; + -moz-border-radius-bottomleft: 10px } + + + #MSearchPanel { + padding: 0px 6px; + margin: .25em 0; + } + + + #MSearchField { + font: italic 9pt Verdana, sans-serif; + color: #606060; + background-color: #E8E8E8; + border: none; + padding: 2px 4px; + width: 100%; + } + /* Only Opera gets it right. */ + .Firefox #MSearchField, + .IE #MSearchField, + .Safari #MSearchField { + width: 94%; + } + .Opera9 #MSearchField, + .Konqueror #MSearchField { + width: 97%; + } + .FramedMenuPage .Firefox #MSearchField, + .FramedMenuPage .Safari #MSearchField, + .FramedMenuPage .Konqueror #MSearchField { + width: 98%; + } + + /* Firefox doesn't do this right in frames without #MSearchPanel added on. + It's presence doesn't hurt anything other browsers. */ + #MSearchPanel.MSearchPanelInactive:hover #MSearchField { + background-color: #FFFFFF; + border: 1px solid #C0C0C0; + padding: 1px 3px; + } + .MSearchPanelActive #MSearchField { + background-color: #FFFFFF; + border: 1px solid #C0C0C0; + font-style: normal; + padding: 1px 3px; + } + + #MSearchType { + visibility: hidden; + font: 8pt Verdana, sans-serif; + width: 98%; + padding: 0; + border: 1px solid #C0C0C0; + } + .MSearchPanelActive #MSearchType, + /* As mentioned above, Firefox doesn't do this right in frames without #MSearchPanel added on. */ + #MSearchPanel.MSearchPanelInactive:hover #MSearchType, + #MSearchType:focus { + visibility: visible; + color: #606060; + } + #MSearchType option#MSearchEverything { + font-weight: bold; + } + + .Opera8 .MSearchPanelInactive:hover, + .Opera8 .MSearchPanelActive { + margin-left: -1px; + } + + + iframe#MSearchResults { + width: 60ex; + height: 15em; + } + #MSearchResultsWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #000000; + background-color: #E8E8E8; + } + #MSearchResultsWindowClose { + font-weight: bold; + font-size: 8pt; + display: block; + padding: 2px 5px; + } + #MSearchResultsWindowClose:link, + #MSearchResultsWindowClose:visited { + color: #000000; + text-decoration: none; + } + #MSearchResultsWindowClose:active, + #MSearchResultsWindowClose:hover { + color: #800000; + text-decoration: none; + background-color: #F4F4F4; + } + + + + +#Content { + padding-bottom: 15px; + } + +.ContentPage #Content { + border-width: 0 0 1px 1px; + border-style: solid; + border-color: #000000; + background-color: #FFFFFF; + font-size: 9pt; /* To make 31ex match the menu's 31ex. */ + margin-left: 31ex; + } +.ContentPage .Firefox #Content { + margin-left: 27ex; + } + + + + .CTopic { + font-size: 10pt; + margin-bottom: 3em; + } + + + .CTitle { + font-size: 12pt; font-weight: bold; + border-width: 0 0 1px 0; border-style: solid; border-color: #A0A0A0; + margin: 0 15px .5em 15px } + + .CGroup .CTitle { + font-size: 16pt; font-variant: small-caps; + padding-left: 15px; padding-right: 15px; + border-width: 0 0 2px 0; border-color: #000000; + margin-left: 0; margin-right: 0 } + + .CClass .CTitle, + .CInterface .CTitle, + .CDatabase .CTitle, + .CDatabaseTable .CTitle, + .CSection .CTitle { + font-size: 18pt; + color: #FFFFFF; background-color: #A0A0A0; + padding: 10px 15px 10px 15px; + border-width: 2px 0; border-color: #000000; + margin-left: 0; margin-right: 0 } + + #MainTopic .CTitle { + font-size: 20pt; + color: #FFFFFF; background-color: #7070C0; + padding: 10px 15px 10px 15px; + border-width: 0 0 3px 0; border-color: #000000; + margin-left: 0; margin-right: 0 } + + .CBody { + margin-left: 15px; margin-right: 15px } + + + .CToolTip { + position: absolute; visibility: hidden; + left: 0; top: 0; + background-color: #FFFFE0; + padding: 5px; + border-width: 1px 2px 2px 1px; border-style: solid; border-color: #000000; + font-size: 8pt; + } + + .Opera .CToolTip { + max-width: 98%; + } + + /* Scrollbars would be useless. */ + .CToolTip blockquote { + overflow: hidden; + } + .IE6 .CToolTip blockquote { + overflow: visible; + } + + .CHeading { + font-weight: bold; font-size: 10pt; + margin: 1.5em 0 .5em 0; + } + + .CBody pre { + font: 10pt "Courier New", Courier, monospace; + margin: 1em 0; + } + + .CBody ul { + /* I don't know why CBody's margin doesn't apply, but it's consistent across browsers so whatever. + Reapply it here as padding. */ + padding-left: 15px; padding-right: 15px; + margin: .5em 5ex .5em 5ex; + } + + .CDescriptionList { + margin: .5em 5ex 0 5ex } + + .CDLEntry { + font: 10pt "Courier New", Courier, monospace; color: #808080; + padding-bottom: .25em; + white-space: nowrap } + + .CDLDescription { + font-size: 10pt; /* For browsers that don't inherit correctly, like Opera 5. */ + padding-bottom: .5em; padding-left: 5ex } + + + .CTopic img { + text-align: center; + display: block; + margin: 1em auto; + } + .CImageCaption { + font-variant: small-caps; + font-size: 8pt; + color: #808080; + text-align: center; + position: relative; + top: 1em; + } + + .CImageLink { + color: #808080; + font-style: italic; + } + a.CImageLink:link, + a.CImageLink:visited, + a.CImageLink:hover { color: #808080 } + + + + + +.Prototype { + font: 10pt "Courier New", Courier, monospace; + padding: 5px 3ex; + border-width: 1px; border-style: solid; + margin: 0 5ex 1.5em 5ex; + } + + .Prototype td { + font-size: 10pt; + } + + .PDefaultValue, + .PDefaultValuePrefix, + .PTypePrefix { + color: #8F8F8F; + } + .PTypePrefix { + text-align: right; + } + .PAfterParameters { + vertical-align: bottom; + } + + .IE .Prototype table { + padding: 0; + } + + .CFunction .Prototype { + background-color: #F4F4F4; border-color: #D0D0D0 } + .CProperty .Prototype { + background-color: #F4F4FF; border-color: #C0C0E8 } + .CVariable .Prototype { + background-color: #FFFFF0; border-color: #E0E0A0 } + + .CClass .Prototype { + border-width: 1px 2px 2px 1px; border-style: solid; border-color: #A0A0A0; + background-color: #F4F4F4; + } + .CInterface .Prototype { + border-width: 1px 2px 2px 1px; border-style: solid; border-color: #A0A0D0; + background-color: #F4F4FF; + } + + .CDatabaseIndex .Prototype, + .CConstant .Prototype { + background-color: #D0D0D0; border-color: #000000 } + .CType .Prototype, + .CEnumeration .Prototype { + background-color: #FAF0F0; border-color: #E0B0B0; + } + .CDatabaseTrigger .Prototype, + .CEvent .Prototype, + .CDelegate .Prototype { + background-color: #F0FCF0; border-color: #B8E4B8 } + + .CToolTip .Prototype { + margin: 0 0 .5em 0; + white-space: nowrap; + } + + + + + +.Summary { + margin: 1.5em 5ex 0 5ex } + + .STitle { + font-size: 12pt; font-weight: bold; + margin-bottom: .5em } + + + .SBorder { + background-color: #FFFFF0; + padding: 15px; + border: 1px solid #C0C060 } + + /* In a frame IE 6 will make them too long unless you set the width to 100%. Without frames it will be correct without a width + or slightly too long (but not enough to scroll) with a width. This arbitrary weirdness simply astounds me. IE 7 has the same + problem with frames, haven't tested it without. */ + .FramedContentPage .IE .SBorder { + width: 100% } + + /* A treat for Mozilla users. Blatantly non-standard. Will be replaced with CSS 3 attributes when finalized/supported. */ + .Firefox .SBorder { + -moz-border-radius: 20px } + + + .STable { + font-size: 9pt; width: 100% } + + .SEntry { + width: 30% } + .SDescription { + width: 70% } + + + .SMarked { + background-color: #F8F8D8 } + + .SDescription { padding-left: 2ex } + .SIndent1 .SEntry { padding-left: 1.5ex } .SIndent1 .SDescription { padding-left: 3.5ex } + .SIndent2 .SEntry { padding-left: 3.0ex } .SIndent2 .SDescription { padding-left: 5.0ex } + .SIndent3 .SEntry { padding-left: 4.5ex } .SIndent3 .SDescription { padding-left: 6.5ex } + .SIndent4 .SEntry { padding-left: 6.0ex } .SIndent4 .SDescription { padding-left: 8.0ex } + .SIndent5 .SEntry { padding-left: 7.5ex } .SIndent5 .SDescription { padding-left: 9.5ex } + + .SDescription a { color: #800000} + .SDescription a:active { color: #A00000 } + + .SGroup td { + padding-top: .5em; padding-bottom: .25em } + + .SGroup .SEntry { + font-weight: bold; font-variant: small-caps } + + .SGroup .SEntry a { color: #800000 } + .SGroup .SEntry a:active { color: #F00000 } + + + .SMain td, + .SClass td, + .SDatabase td, + .SDatabaseTable td, + .SSection td { + font-size: 10pt; + padding-bottom: .25em } + + .SClass td, + .SDatabase td, + .SDatabaseTable td, + .SSection td { + padding-top: 1em } + + .SMain .SEntry, + .SClass .SEntry, + .SDatabase .SEntry, + .SDatabaseTable .SEntry, + .SSection .SEntry { + font-weight: bold; + } + + .SMain .SEntry a, + .SClass .SEntry a, + .SDatabase .SEntry a, + .SDatabaseTable .SEntry a, + .SSection .SEntry a { color: #000000 } + + .SMain .SEntry a:active, + .SClass .SEntry a:active, + .SDatabase .SEntry a:active, + .SDatabaseTable .SEntry a:active, + .SSection .SEntry a:active { color: #A00000 } + + + + + +.ClassHierarchy { + margin: 0 15px 1em 15px } + + .CHEntry { + border-width: 1px 2px 2px 1px; border-style: solid; border-color: #A0A0A0; + margin-bottom: 3px; + padding: 2px 2ex; + font-size: 10pt; + background-color: #F4F4F4; color: #606060; + } + + .Firefox .CHEntry { + -moz-border-radius: 4px; + } + + .CHCurrent .CHEntry { + font-weight: bold; + border-color: #000000; + color: #000000; + } + + .CHChildNote .CHEntry { + font-style: italic; + font-size: 8pt; + } + + .CHIndent { + margin-left: 3ex; + } + + .CHEntry a:link, + .CHEntry a:visited, + .CHEntry a:hover { + color: #606060; + } + .CHEntry a:active { + color: #800000; + } + + + + + +#Index { + background-color: #FFFFFF; + } + +/* As opposed to .PopupSearchResultsPage #Index */ +.IndexPage #Index, +.FramedIndexPage #Index, +.FramedSearchResultsPage #Index { + padding: 15px; + } + +.IndexPage #Index { + border-width: 0 0 1px 1px; + border-style: solid; + border-color: #000000; + font-size: 9pt; /* To make 27ex match the menu's 27ex. */ + margin-left: 27ex; + } + + + .IPageTitle { + font-size: 20pt; font-weight: bold; + color: #FFFFFF; background-color: #7070C0; + padding: 10px 15px 10px 15px; + border-width: 0 0 3px 0; border-color: #000000; border-style: solid; + margin: -15px -15px 0 -15px } + + .FramedSearchResultsPage .IPageTitle { + margin-bottom: 15px; + } + + .INavigationBar { + font-size: 10pt; + text-align: center; + background-color: #FFFFF0; + padding: 5px; + border-bottom: solid 1px black; + margin: 0 -15px 15px -15px; + } + + .INavigationBar a { + font-weight: bold } + + .IHeading { + font-size: 16pt; font-weight: bold; + padding: 2.5em 0 .5em 0; + text-align: center; + width: 3.5ex; + } + #IFirstHeading { + padding-top: 0; + } + + .IEntry { + font-size: 10pt; + padding-left: 1ex; + } + .PopupSearchResultsPage .IEntry { + font-size: 8pt; + padding: 1px 5px; + } + .PopupSearchResultsPage .Opera9 .IEntry, + .FramedSearchResultsPage .Opera9 .IEntry { + text-align: left; + } + .FramedSearchResultsPage .IEntry { + padding: 0; + } + + .ISubIndex { + padding-left: 3ex; padding-bottom: .5em } + .PopupSearchResultsPage .ISubIndex { + display: none; + } + + /* While it may cause some entries to look like links when they aren't, I found it's much easier to read the + index if everything's the same color. */ + .ISymbol { + font-weight: bold; color: #900000 } + + .IndexPage .ISymbolPrefix, + .FramedIndexPage .ISymbolPrefix { + font-size: 10pt; + text-align: right; + color: #C47C7C; + background-color: #F8F8F8; + border-right: 3px solid #E0E0E0; + border-left: 1px solid #E0E0E0; + padding: 0 1px 0 2px; + } + .PopupSearchResultsPage .ISymbolPrefix, + .FramedSearchResultsPage .ISymbolPrefix { + color: #900000; + } + .PopupSearchResultsPage .ISymbolPrefix { + font-size: 8pt; + } + + .IndexPage #IFirstSymbolPrefix, + .FramedIndexPage #IFirstSymbolPrefix { + border-top: 1px solid #E0E0E0; + } + .IndexPage #ILastSymbolPrefix, + .FramedIndexPage #ILastSymbolPrefix { + border-bottom: 1px solid #E0E0E0; + } + .IndexPage #IOnlySymbolPrefix, + .FramedIndexPage #IOnlySymbolPrefix { + border-top: 1px solid #E0E0E0; + border-bottom: 1px solid #E0E0E0; + } + + a.IParent, + a.IFile { + display: block; + } + + .PopupSearchResultsPage .SRStatus { + padding: 2px 5px; + font-size: 8pt; + font-style: italic; + } + .FramedSearchResultsPage .SRStatus { + font-size: 10pt; + font-style: italic; + } + + .SRResult { + display: none; + } + + + +#Footer { + font-size: 8pt; + color: #989898; + text-align: right; + } + +#Footer p { + text-indent: 0; + margin-bottom: .5em; + } + +.ContentPage #Footer, +.IndexPage #Footer { + text-align: right; + margin: 2px; + } + +.FramedMenuPage #Footer { + text-align: center; + margin: 5em 10px 10px 10px; + padding-top: 1em; + border-top: 1px solid #C8C8C8; + } + + #Footer a:link, + #Footer a:hover, + #Footer a:visited { color: #989898 } + #Footer a:active { color: #A00000 } + -- cgit 1.4.1