From b4cef60d62e24d3c0c0451e94adf99254a259a3d Mon Sep 17 00:00:00 2001 From: Magnus Auvinen Date: Sat, 30 Aug 2008 08:01:29 +0000 Subject: fixed the remote console --- src/game/client/components/console.cpp | 14 ++++++++-- src/game/client/components/console.hpp | 3 ++ src/game/client/components/sounds.cpp | 2 ++ src/game/client/gc_hooks.cpp | 51 +++++++++------------------------- src/game/client/gc_render.hpp | 3 -- src/game/client/lineinput.hpp | 4 +++ 6 files changed, 34 insertions(+), 43 deletions(-) diff --git a/src/game/client/components/console.cpp b/src/game/client/components/console.cpp index f9ec4ae3..66a2249a 100644 --- a/src/game/client/components/console.cpp +++ b/src/game/client/components/console.cpp @@ -349,6 +349,14 @@ void CONSOLE::client_console_print_callback(const char *str, void *user_data) ((CONSOLE *)user_data)->local_console.print_line(str); } +void CONSOLE::print_line(int type, const char *line) +{ + if(type == 0) + local_console.print_line(line); + else if(type == 1) + remote_console.print_line(line); +} + void CONSOLE::on_init() { // @@ -372,13 +380,15 @@ static void con_team(void *result, void *user_data) send_switch_team(console_arg_int(result, 0)); } -void send_kill(int client_id); - static void con_kill(void *result, void *user_data) { send_kill(-1); } +void send_kill(int client_id); + + + static void con_key_input_state(void *result, void *user_data) { ((int *)user_data)[0] = console_arg_int(result, 0); diff --git a/src/game/client/components/console.hpp b/src/game/client/components/console.hpp index 9b60185c..a13a1d65 100644 --- a/src/game/client/components/console.hpp +++ b/src/game/client/components/console.hpp @@ -1,5 +1,6 @@ #include #include +#include class CONSOLE : public COMPONENT { @@ -47,6 +48,8 @@ class CONSOLE : public COMPONENT public: CONSOLE(); + void print_line(int type, const char *line); + virtual void on_init(); virtual void on_reset(); virtual void on_render(); diff --git a/src/game/client/components/sounds.cpp b/src/game/client/components/sounds.cpp index 569bbf01..024d07d4 100644 --- a/src/game/client/components/sounds.cpp +++ b/src/game/client/components/sounds.cpp @@ -11,6 +11,8 @@ void SOUNDS::on_init() snd_set_channel(SOUNDS::CHN_MUSIC, 1.0f, 0.0f); snd_set_channel(SOUNDS::CHN_WORLD, 0.9f, 1.0f); snd_set_channel(SOUNDS::CHN_GLOBAL, 1.0f, 0.0f); + + snd_set_listener_pos(0.0f, 0.0f); } void SOUNDS::on_render() diff --git a/src/game/client/gc_hooks.cpp b/src/game/client/gc_hooks.cpp index 2126f965..19bc3ae2 100644 --- a/src/game/client/gc_hooks.cpp +++ b/src/game/client/gc_hooks.cpp @@ -12,9 +12,9 @@ extern "C" { #include - #include "gameclient.hpp" #include "components/skins.hpp" +#include "components/console.hpp" #include "gc_client.hpp" #include "gc_render.hpp" @@ -22,10 +22,6 @@ extern "C" { extern unsigned char internal_data[]; -extern void menu_init(); -extern bool menu_active; -extern bool menu_game_active; - static float load_total; static float load_current; @@ -34,8 +30,6 @@ extern "C" void modc_console_init() //client_console_init(); } -//binds_save() - static void load_sounds_thread(void *do_render) { // load sounds @@ -70,15 +64,9 @@ extern "C" void modc_init() gfx_text_set_default_font(&default_font); - //particle_reset(); - //menu_init(); - // load the data container //data = load_data_from_memory(internal_data); - // TODO: should be removed - snd_set_listener_pos(0.0f, 0.0f); - // setup load amount load_total = data->num_images; load_current = 0; @@ -95,7 +83,6 @@ extern "C" void modc_init() } gameclient.skins->init(); - //skin_init(); if(config.cl_threadsoundloading) thread_create(load_sounds_thread, 0); @@ -111,22 +98,9 @@ extern "C" void modc_save_config() //binds_save(); } - CHARACTER_CORE predicted_prev_char; CHARACTER_CORE predicted_char; -extern "C" void modc_entergame() {} -extern "C" void modc_shutdown() {} -extern "C" void modc_predict() { gameclient.on_predict(); } -extern "C" void modc_newsnapshot() { gameclient.on_snapshot(); } -extern "C" int modc_snap_input(int *data) { return gameclient.on_snapinput(data); } -extern "C" void modc_statechange(int state, int old) { gameclient.on_statechange(state, old); } -extern "C" void modc_render() { gameclient.on_render(); } - -extern "C" void modc_rcon_line(const char *line) -{ - //console_rcon_print(line); -} /* NETOBJ_PROJECTILE extraproj_projectiles[MAX_EXTRA_PROJECTILES]; @@ -137,28 +111,29 @@ void extraproj_reset() extraproj_num = 0; }*/ -extern "C" void modc_message(int msgtype) -{ - gameclient.on_message(msgtype); -} extern "C" void modc_connected() { - // init some stuff layers_init(); col_init(); img_init(); - //flow_init(); render_tilemap_generate_skip(); gameclient.on_connected(); - //tilemap_init(); - //particle_reset(); - //extraproj_reset(); - - //last_new_predicted_tick = -1; } +// clean hooks +extern "C" void modc_entergame() {} +extern "C" void modc_shutdown() {} +extern "C" void modc_predict() { gameclient.on_predict(); } +extern "C" void modc_newsnapshot() { gameclient.on_snapshot(); } +extern "C" int modc_snap_input(int *data) { return gameclient.on_snapinput(data); } +extern "C" void modc_statechange(int state, int old) { gameclient.on_statechange(state, old); } +extern "C" void modc_render() { gameclient.on_render(); } +extern "C" void modc_message(int msgtype) { gameclient.on_message(msgtype); } +extern "C" void modc_rcon_line(const char *line) { gameclient.console->print_line(1, line); } + extern "C" const char *modc_net_version() { return GAME_NETVERSION; } extern "C" const char *modc_getitemname(int type) { return netobj_get_name(type); } + diff --git a/src/game/client/gc_render.hpp b/src/game/client/gc_render.hpp index 088ff78a..ae2b7097 100644 --- a/src/game/client/gc_render.hpp +++ b/src/game/client/gc_render.hpp @@ -52,9 +52,6 @@ void ui_draw_rect(const RECT *r, vec4 color, int corners, float rounding); // larger rendering methods void render_loading(float percent); -void render_damage_indicators(); -void render_particles(); - void render_tilemap_generate_skip(); // object render methods (gc_render_obj.cpp) diff --git a/src/game/client/lineinput.hpp b/src/game/client/lineinput.hpp index cf42a7a5..80ef3c52 100644 --- a/src/game/client/lineinput.hpp +++ b/src/game/client/lineinput.hpp @@ -1,3 +1,5 @@ +#ifndef GAME_CLIENT_LINEINPUT_H +#define GAME_CLIENT_LINEINPUT_H // line input helter class LINEINPUT @@ -21,3 +23,5 @@ public: int get_length() const { return len; } unsigned cursor_offset() const { return cursor_pos; } }; + +#endif -- cgit 1.4.1