Fix whitespace for #include
authorTimePath <andrew.hardaker1995@gmail.com>
Thu, 29 Jan 2015 23:29:58 +0000 (10:29 +1100)
committerTimePath <andrew.hardaker1995@gmail.com>
Thu, 29 Jan 2015 23:33:27 +0000 (10:33 +1100)
218 files changed:
qcsrc/client/autocvars.qh
qcsrc/client/bgmscript.qh
qcsrc/client/command/cl_cmd.qh
qcsrc/client/credit.txt
qcsrc/client/damage.qc
qcsrc/client/damage.qh
qcsrc/client/defs.qh
qcsrc/client/gibs.qh
qcsrc/client/hud.qc
qcsrc/client/mapvoting.qc
qcsrc/client/mapvoting.qh
qcsrc/client/miscfunctions.qh
qcsrc/client/modeleffects.qh
qcsrc/client/movetypes.qc
qcsrc/client/movetypes.qh
qcsrc/client/noise.qh
qcsrc/client/particles.qh
qcsrc/client/player_skeleton.qh
qcsrc/client/prandom.qh
qcsrc/client/progs.src
qcsrc/client/rubble.qh
qcsrc/client/scoreboard.qh
qcsrc/client/shownames.qh
qcsrc/client/sortlist.qh
qcsrc/client/sys-post.qh
qcsrc/client/sys-pre.qh
qcsrc/client/target_music.qh
qcsrc/client/teamradar.qh
qcsrc/client/tturrets.qh
qcsrc/client/tuba.qh
qcsrc/client/vehicles/vehicles.qh
qcsrc/client/view.qc
qcsrc/client/wall.qh
qcsrc/client/waypointsprites.qh
qcsrc/client/weapons/projectile.qh
qcsrc/common/animdecide.qh
qcsrc/common/buffs.qh
qcsrc/common/campaign_common.qh
qcsrc/common/command/generic.qc
qcsrc/common/command/generic.qh
qcsrc/common/command/markup.qh
qcsrc/common/command/rpn.qh
qcsrc/common/command/shared_defs.qh
qcsrc/common/constants.qh
qcsrc/common/counting.qh
qcsrc/common/csqcmodel_settings.qh
qcsrc/common/deathtypes.qh
qcsrc/common/monsters/all.qh
qcsrc/common/monsters/monsters.qh
qcsrc/common/monsters/spawn.qc
qcsrc/common/monsters/spawn.qh
qcsrc/common/monsters/sv_monsters.qc
qcsrc/common/monsters/sv_monsters.qh
qcsrc/common/nades.qc
qcsrc/common/nades.qh
qcsrc/common/net_notice.qh
qcsrc/common/notifications.qh
qcsrc/common/playerstats.qh
qcsrc/common/stats.qh
qcsrc/common/teams.qh
qcsrc/common/test.qh
qcsrc/common/urllib.qh
qcsrc/common/util-pre.qh
qcsrc/common/util.qh
qcsrc/common/weapons/all.qh
qcsrc/common/weapons/calculations.qc
qcsrc/common/weapons/calculations.qh
qcsrc/common/weapons/config.qc
qcsrc/common/weapons/config.qh
qcsrc/common/weapons/w_arc.qc
qcsrc/common/weapons/w_blaster.qc
qcsrc/common/weapons/w_crylink.qc
qcsrc/common/weapons/w_devastator.qc
qcsrc/common/weapons/w_electro.qc
qcsrc/common/weapons/w_fireball.qc
qcsrc/common/weapons/w_hagar.qc
qcsrc/common/weapons/w_hlac.qc
qcsrc/common/weapons/w_hmg.qc
qcsrc/common/weapons/w_hook.qc
qcsrc/common/weapons/w_machinegun.qc
qcsrc/common/weapons/w_minelayer.qc
qcsrc/common/weapons/w_mortar.qc
qcsrc/common/weapons/w_porto.qc
qcsrc/common/weapons/w_rifle.qc
qcsrc/common/weapons/w_shockwave.qc
qcsrc/common/weapons/w_shotgun.qc
qcsrc/common/weapons/w_tuba.qc
qcsrc/common/weapons/w_vaporizer.qc
qcsrc/common/weapons/w_vortex.qc
qcsrc/common/weapons/weapons.qc
qcsrc/common/weapons/weapons.qh
qcsrc/csqcmodellib/cl_model.qh
qcsrc/csqcmodellib/cl_player.qh
qcsrc/csqcmodellib/common.qh
qcsrc/csqcmodellib/interpolate.qh
qcsrc/csqcmodellib/settings.qh
qcsrc/csqcmodellib/sv_model.qh
qcsrc/dpdefs/csprogsdefs.qh
qcsrc/dpdefs/keycodes.qh
qcsrc/dpdefs/menudefs.qh
qcsrc/dpdefs/progsdefs.qh
qcsrc/menu/command/menu_cmd.qh
qcsrc/menu/draw.qh
qcsrc/menu/oo/base.qh
qcsrc/menu/oo/implementation.qh
qcsrc/menu/oo/interface.qh
qcsrc/menu/progs.src
qcsrc/menu/skin.qh
qcsrc/menu/sys-post.qh
qcsrc/menu/sys-pre.qh
qcsrc/menu/xonotic/dialog_multiplayer_create.qc
qcsrc/menu/xonotic/dialog_multiplayer_media.qc
qcsrc/menu/xonotic/dialog_multiplayer_media_screenshot.qc
qcsrc/menu/xonotic/dialog_multiplayer_profile.qc
qcsrc/menu/xonotic/dialog_settings_game.qc
qcsrc/menu/xonotic/dialog_settings_game_crosshair.qc
qcsrc/menu/xonotic/dialog_settings_game_messages.qc
qcsrc/menu/xonotic/dialog_settings_game_model.qc
qcsrc/menu/xonotic/dialog_settings_game_view.qc
qcsrc/menu/xonotic/gametypelist.qc
qcsrc/menu/xonotic/mainwindow.qc
qcsrc/menu/xonotic/serverlist.qc
qcsrc/menu/xonotic/slider_particles.qc
qcsrc/menu/xonotic/statslist.qc
qcsrc/server/anticheat.qh
qcsrc/server/antilag.qh
qcsrc/server/autocvars.qh
qcsrc/server/bot/aim.qh
qcsrc/server/bot/havocbot/havocbot.qh
qcsrc/server/bot/navigation.qh
qcsrc/server/campaign.qh
qcsrc/server/cheats.qh
qcsrc/server/cl_impulse.qh
qcsrc/server/command/banning.qh
qcsrc/server/command/cmd.qc
qcsrc/server/command/cmd.qh
qcsrc/server/command/common.qh
qcsrc/server/command/sv_cmd.qh
qcsrc/server/command/vote.qh
qcsrc/server/g_damage.qc
qcsrc/server/g_damage.qh
qcsrc/server/g_hook.qh
qcsrc/server/g_subs.qh
qcsrc/server/g_triggers.qh
qcsrc/server/g_violence.qh
qcsrc/server/g_world.qc
qcsrc/server/g_world.qh
qcsrc/server/ipban.qh
qcsrc/server/item_key.qh
qcsrc/server/mapvoting.qc
qcsrc/server/mapvoting.qh
qcsrc/server/movelib.qh
qcsrc/server/mutators/base.qh
qcsrc/server/mutators/gamemode_ca.qh
qcsrc/server/mutators/gamemode_ctf.qh
qcsrc/server/mutators/gamemode_cts.qc
qcsrc/server/mutators/gamemode_cts.qh
qcsrc/server/mutators/gamemode_domination.qc
qcsrc/server/mutators/gamemode_domination.qh
qcsrc/server/mutators/gamemode_invasion.qc
qcsrc/server/mutators/gamemode_invasion.qh
qcsrc/server/mutators/gamemode_keepaway.qh
qcsrc/server/mutators/gamemode_keyhunt.qh
qcsrc/server/mutators/gamemode_lms.qh
qcsrc/server/mutators/gamemode_nexball.qh
qcsrc/server/mutators/gamemode_onslaught.qc
qcsrc/server/mutators/gamemode_race.qc
qcsrc/server/mutators/gamemode_race.qh
qcsrc/server/mutators/mutator_buffs.qc
qcsrc/server/mutators/mutator_buffs.qh
qcsrc/server/mutators/mutator_dodging.qh
qcsrc/server/mutators/mutator_instagib.qc
qcsrc/server/mutators/mutator_nades.qc
qcsrc/server/mutators/mutator_nades.qh
qcsrc/server/mutators/mutator_nix.qc
qcsrc/server/mutators/mutator_overkill.qc
qcsrc/server/mutators/mutator_overkill.qh
qcsrc/server/mutators/mutators.qh
qcsrc/server/mutators/mutators_include.qh
qcsrc/server/mutators/sandbox.qc
qcsrc/server/pathlib/pathlib.qh
qcsrc/server/playerdemo.qh
qcsrc/server/portals.qh
qcsrc/server/progs.src
qcsrc/server/race.qh
qcsrc/server/round_handler.qh
qcsrc/server/scores.qh
qcsrc/server/secret.qh
qcsrc/server/spawnpoints.qh
qcsrc/server/t_items.qc
qcsrc/server/t_items.qh
qcsrc/server/t_jumppads.qh
qcsrc/server/t_plats.qc
qcsrc/server/t_teleporters.qh
qcsrc/server/teamplay.qh
qcsrc/server/tturrets/include/turrets.qh
qcsrc/server/tturrets/include/turrets_early.qh
qcsrc/server/vehicles/bumblebee.qh
qcsrc/server/vehicles/vehicles.qh
qcsrc/server/vehicles/vehicles_def.qh
qcsrc/server/waypointsprites.qh
qcsrc/server/weapons/accuracy.qh
qcsrc/server/weapons/common.qc
qcsrc/server/weapons/common.qh
qcsrc/server/weapons/csqcprojectile.qh
qcsrc/server/weapons/hitplot.qh
qcsrc/server/weapons/spawning.qh
qcsrc/server/weapons/throwing.qc
qcsrc/server/weapons/throwing.qh
qcsrc/server/weapons/weaponstats.qh
qcsrc/server/weapons/weaponsystem.qh
qcsrc/warpzonelib/anglestransform.qh
qcsrc/warpzonelib/client.qh
qcsrc/warpzonelib/common.qh
qcsrc/warpzonelib/mathlib.qh
qcsrc/warpzonelib/server.qh
qcsrc/warpzonelib/util_server.qh
qcsrc/whitespace.sh [new file with mode: 0755]

index 4ce4efe..e35bf82 100644 (file)
@@ -469,4 +469,4 @@ vector autocvar_crosshair_rpc_color = '0.2 1.0 0.2';
 float autocvar_crosshair_rpc_alpha = 1;
 float autocvar_crosshair_rpc_size = 1;
 int autocvar_cl_nade_timer;
-#endif
\ No newline at end of file
+#endif
index 1590e59..910ef6b 100644 (file)
@@ -11,4 +11,4 @@
 
 void BGMScript_InitEntity(entity e);
 float BGMScript(entity e);
-#endif
\ No newline at end of file
+#endif
index 31da5a2..da34310 100644 (file)
@@ -10,4 +10,4 @@ void Cmd_HUD_Help();
 
 // used by common/command/generic.qc:GenericCommand_dumpcommands to list all commands into a .txt file
 void LocalCommand_macro_write_aliases(int fh);
-#endif
\ No newline at end of file
+#endif
index 1b06bb8..b07ec4a 100644 (file)
@@ -1,3 +1,3 @@
 Credits go to Dresk for putting this CSQC scratch source together.
 
-and Urre :o
\ No newline at end of file
+and Urre :o
index 7d855e3..000ef8b 100644 (file)
@@ -102,7 +102,7 @@ void DamageEffect(vector hitorg, float dmg, int type, int specnum)
                {
                        specstr = species_prefix(specnum);
                        specstr = substring(specstr, 0, strlen(specstr) - 1);
-                       effectname = strreplace("BLOOD", specstr, effectname); 
+                       effectname = strreplace("BLOOD", specstr, effectname);
                }
                else { return; } // objects don't bleed
        }
index 2498e23..7c5c741 100644 (file)
@@ -2,4 +2,4 @@
 #define DAMAGE_H
 
 .float total_damages; // number of effects which currently are attached to a player
-#endif
\ No newline at end of file
+#endif
index 4ae2a06..82c43e2 100644 (file)
@@ -131,4 +131,4 @@ float uid2name_dialog;
 #define player_currententnum (spectatee_status > 0 ? spectatee_status : player_localnum + 1)
 
 float g_balance_porto_secondary;
-#endif
\ No newline at end of file
+#endif
index e863ddf..b33a1a5 100644 (file)
@@ -24,4 +24,4 @@ void TossGib (string mdlname, vector safeorg, vector org, vector vconst, vector
 void Ent_GibSplash(bool isNew);
 
 void GibSplash_Precache();
-#endif
\ No newline at end of file
+#endif
index e88c250..492b0d4 100644 (file)
@@ -846,12 +846,12 @@ void HUD_Weapons(void)
 // Ammo (#1)
 void DrawNadeScoreBar(vector myPos, vector mySize, vector color)
 {
-       
+
        HUD_Panel_DrawProgressBar(
                myPos + eX * autocvar_hud_panel_ammo_progressbar_xoffset * mySize.x,
                mySize - eX * autocvar_hud_panel_ammo_progressbar_xoffset * mySize.x,
-               autocvar_hud_panel_ammo_progressbar_name, 
-               getstatf(STAT_NADE_BONUS_SCORE), 0, 0, color, 
+               autocvar_hud_panel_ammo_progressbar_name,
+               getstatf(STAT_NADE_BONUS_SCORE), 0, 0, color,
                autocvar_hud_progressbar_alpha * panel_fg_alpha, DRAWFLAG_NORMAL);
 
 }
@@ -860,12 +860,12 @@ void DrawAmmoNades(vector myPos, vector mySize, float draw_expanding, float expa
 {
        float theAlpha = 1, a, b;
        vector nade_color, picpos, numpos;
-       
+
        nade_color = Nade_Color(getstati(STAT_NADE_BONUS_TYPE));
-       
+
        a = getstatf(STAT_NADE_BONUS);
        b = getstatf(STAT_NADE_BONUS_SCORE);
-       
+
        if(autocvar_hud_panel_ammo_iconalign)
        {
                numpos = myPos;
@@ -883,10 +883,10 @@ void DrawAmmoNades(vector myPos, vector mySize, float draw_expanding, float expa
        {
                if(autocvar_hud_panel_ammo_text)
                        drawstring_aspect(numpos, ftos(a), eX * (2/3) * mySize.x + eY * mySize.y, '1 1 1', panel_fg_alpha * theAlpha, DRAWFLAG_NORMAL);
-               
+
                if(draw_expanding)
                        drawpic_aspect_skin_expanding(picpos, "nade_nbg", '1 1 0' * mySize.y, '1 1 1', panel_fg_alpha * theAlpha, DRAWFLAG_NORMAL, expand_time);
-                       
+
                drawpic_aspect_skin(picpos, "nade_bg" , '1 1 0' * mySize.y, '1 1 1', panel_fg_alpha * theAlpha, DRAWFLAG_NORMAL);
                drawpic_aspect_skin(picpos, "nade_nbg" , '1 1 0' * mySize.y, nade_color, panel_fg_alpha * theAlpha, DRAWFLAG_NORMAL);
        }
@@ -1022,7 +1022,7 @@ void HUD_Ammo(void)
        columns = ceil((total_ammo_count)/rows);
 
        ammo_size = eX * mySize.x*(1/columns) + eY * mySize.y*(1/rows);
-       
+
 
        vector offset = '0 0 0'; // fteqcc sucks
        float newSize;
@@ -4417,7 +4417,7 @@ void HUD_Buffs(void)
        {
                buffs = Buff_Type_first.items; // force first buff
        }
-       
+
        float b = 0; // counter to tell other functions that we have buffs
        entity e;
        string s = "";
@@ -4450,7 +4450,7 @@ void HUD_Buffs(void)
        //float is_vertical = (panel_ar < 1);
        //float buff_iconalign = autocvar_hud_panel_buffs_iconalign;
        vector buff_offset = '0 0 0';
-       
+
        for(e = Buff_Type_first; e; e = e.enemy) if(buffs & e.items)
        {
                //DrawNumIcon(pos + buff_offset, mySize, shield, "shield", is_vertical, buff_iconalign, '1 1 1', 1);
index c40fae4..28b81fc 100644 (file)
@@ -50,14 +50,14 @@ void GameTypeVote_DrawGameTypeItem(vector pos, float maxh, float tsize, string g
        vector rgb = MapVote_RGB(id);
        vector offset = pos;
        float nlines = 0;
-       
+
        if(mv_avail_start[id] != GTV_AVAILABLE)
                alpha = 0.2;
        else if ( mv_avail[id] != GTV_AVAILABLE && mv_top2_alpha)
                alpha = mv_top2_alpha;
        else
                alpha = 1;
-       
+
        if(id == mv_selection && mv_avail[id] == GTV_AVAILABLE)
        {
                drawfill(rect_pos, rect_size, '1 1 1', 0.1, DRAWFLAG_NORMAL);
@@ -67,29 +67,29 @@ void GameTypeVote_DrawGameTypeItem(vector pos, float maxh, float tsize, string g
                drawfill(rect_pos, rect_size, rgb, 0.1*alpha, DRAWFLAG_NORMAL);
                drawborderlines(autocvar_scoreboard_border_thickness, rect_pos, rect_size, rgb, alpha, DRAWFLAG_NORMAL);
        }
-       
+
        entity title;
        title = spawn();
-       title.message = MapVote_FormatMapItem(id, MapInfo_Type_ToText(MapInfo_Type_FromString(gtype)), 
+       title.message = MapVote_FormatMapItem(id, MapInfo_Type_ToText(MapInfo_Type_FromString(gtype)),
                                                                                  _count, tsize, gtv_text_size);
        title.origin = pos-offset;
-       
+
        pos.y += gtv_text_size_small.y;
        pos.y += gtv_text_size.y/2;
-       
+
        maxh -= gtv_text_size.y;
-       
+
        entity picent = spawn();
        picent.origin = pos-offset;
        picent.maxs = '1 1 0 ' * min(maxh, desc_padding) * 0.8;
-       
+
        pos.x += desc_padding;
        tsize -= desc_padding;
-       
+
        string thelabel = GameTypeVote_DescriptionByID(id), ts;
        entity last = title;
        entity next = world;
-       if( thelabel != "") 
+       if( thelabel != "")
        {
                float i,n = tokenizebyseparator(thelabel, "\n");
                for(i = 0; i < n && maxh > (nlines+1)*gtv_text_size_small.y; ++i)
@@ -111,15 +111,15 @@ void GameTypeVote_DrawGameTypeItem(vector pos, float maxh, float tsize, string g
                        }
                }
        }
-       
+
        maxh -= max(nlines*gtv_text_size_small.y,picent.maxs.y);
        if ( maxh > 0 )
                offset.y += maxh/2;
-       drawstring(title.origin+offset, title.message, gtv_text_size, rgb, alpha, DRAWFLAG_NORMAL); 
-       
+       drawstring(title.origin+offset, title.message, gtv_text_size, rgb, alpha, DRAWFLAG_NORMAL);
+
        if(pic != "")
                drawpic(picent.origin+offset, pic, picent.maxs, '1 1 1', alpha, DRAWFLAG_NORMAL);
-       
+
        for ( last = title.chain; last ; )
        {
                drawstring(last.origin+offset, last.message, gtv_text_size_small, '1 1 1', alpha, DRAWFLAG_NORMAL);
@@ -127,7 +127,7 @@ void GameTypeVote_DrawGameTypeItem(vector pos, float maxh, float tsize, string g
                last = last.chain;
                remove(next);
        }
-       
+
        remove(picent);
        remove(title);
 }
@@ -242,7 +242,7 @@ float MapVote_Selection(vector topleft, vector cellsize, float rows, float colum
 
        if ( mv_selection_keyboard )
                return mv_selection;
-       
+
        return mv_mouse_selection;
 }
 
@@ -266,7 +266,7 @@ void MapVote_Draw()
                vector mpos = mv_mousepos + getmousepos();
                mpos.x = bound(0, mpos.x, vid_conwidth);
                mpos.y = bound(0, mpos.y, vid_conheight);
-               
+
                if ( mpos.x != mv_mousepos.x || mpos.y != mv_mousepos.y )
                        mv_selection_keyboard = 0;
                mv_mousepos = mpos;
@@ -456,7 +456,7 @@ void MapVote_ReadMask()
                        mask = ReadShort();
                else
                        mask = ReadLong();
-               
+
                for(i = 0, power = 1; i < mv_num_maps; ++i, power *= 2)
                        mv_avail[i] = (mask & power) ? GTV_AVAILABLE : GTV_FORBIDDEN;
        }
@@ -500,7 +500,7 @@ void MapVote_Init()
        mv_timeout = ReadCoord();
 
        gametypevote = ReadByte();
-       
+
        float mv_real_num_maps = mv_num_maps - mv_abstain;
 
        if(gametypevote)
@@ -511,7 +511,7 @@ void MapVote_Init()
 
                gtv_text_size = hud_fontsize*1.4;
                gtv_text_size_small = hud_fontsize*1.1;
-               
+
                if (mv_real_num_maps > 8 )
                        mv_columns = 3;
                else
@@ -581,7 +581,7 @@ void MapVote_SendChoice(float index)
 int MapVote_MoveLeft(int pos)
 {
        int imp;
-       if ( pos < 0 ) 
+       if ( pos < 0 )
                imp = mv_num_maps - 1;
        else
                imp = pos < 1 ? mv_num_maps - 1 : pos - 1;
@@ -592,7 +592,7 @@ int MapVote_MoveLeft(int pos)
 int MapVote_MoveRight(int pos)
 {
        int imp;
-       if ( pos < 0 ) 
+       if ( pos < 0 )
                imp = 0;
        else
                imp = pos >= mv_num_maps - 1 ? 0 : pos + 1;
@@ -603,7 +603,7 @@ int MapVote_MoveRight(int pos)
 int MapVote_MoveUp(int pos)
 {
        int imp;
-       if ( pos < 0 ) 
+       if ( pos < 0 )
                imp = mv_num_maps - 1;
        else
        {
@@ -622,7 +622,7 @@ int MapVote_MoveUp(int pos)
 int MapVote_MoveDown(int pos)
 {
        int imp;
-       if ( pos < 0 ) 
+       if ( pos < 0 )
                imp = 0;
        else
        {
index 94717a2..8a4133e 100644 (file)
@@ -78,4 +78,4 @@ void MapVote_UpdateVotes();
 void Ent_MapVote();
 
 void Net_MapVote_Picture();
-#endif
\ No newline at end of file
+#endif
index 323fbd0..6c64396 100644 (file)
@@ -162,4 +162,4 @@ void Accuracy_LoadColors();
 
 vector Accuracy_GetColor(float accuracy);
 
-#endif
\ No newline at end of file
+#endif
index df500b8..f40cfef 100644 (file)
@@ -9,4 +9,4 @@
 void ModelEffect_Draw();
 
 void Ent_ModelEffect(bool isNew);
-#endif
\ No newline at end of file
+#endif
index d58b1ce..2f62ae6 100644 (file)
@@ -61,7 +61,7 @@ float _Movetype_CheckWater(entity ent) // SV_CheckWater
 void _Movetype_CheckWaterTransition(entity ent) // SV_CheckWaterTransition
 {
        float contents = pointcontents(ent.move_origin);
-       
+
        if(!ent.move_watertype)
        {
                // just spawned here
index 0145f55..3294ce4 100644 (file)
@@ -41,4 +41,4 @@ const int MOVETYPE_FLY_WORLDONLY    = 33;
 
 const int FL_ITEM                   = 256;
 const int FL_ONGROUND                          = 512;
-#endif
\ No newline at end of file
+#endif
index d0196be..2b18ade 100644 (file)
@@ -6,4 +6,4 @@ float Noise_Brown(entity e, float dt);
 float Noise_Pink(entity e, float dt);
 float Noise_White(entity e, float dt);
 float Noise_Burst(entity e, float dt, float p); // +1 or -1
-#endif
\ No newline at end of file
+#endif
index ea9c5b6..12c999b 100644 (file)
@@ -29,4 +29,4 @@ void Draw_Snow();
 void Ent_RainOrSnow();
 
 void Net_ReadVortexBeamParticle();
-#endif
\ No newline at end of file
+#endif
index 65dec0a..6c95ce2 100644 (file)
@@ -10,4 +10,4 @@ void skeleton_loadinfo(entity e);
 .float bone_aim[MAX_AIM_BONES];
 .float bone_aimweight[MAX_AIM_BONES];
 .float fixbone;
-#endif
\ No newline at end of file
+#endif
index 3ba1c47..a7653a5 100644 (file)
@@ -21,4 +21,4 @@ void prandom_debug();
 #define psrandom(x)
 #define prandom_debug()
 #endif
-#endif
\ No newline at end of file
+#endif
index 650c16c..505a5cf 100644 (file)
@@ -72,4 +72,4 @@ weapons/projectile.qc // TODO
 ../warpzonelib/anglestransform.qc
 ../warpzonelib/client.qc
 ../warpzonelib/common.qc
-../warpzonelib/mathlib.qc
\ No newline at end of file
+../warpzonelib/mathlib.qc
index b907adc..5ff1b55 100644 (file)
@@ -3,4 +3,4 @@
 .float creationtime;
 void RubbleLimit(string cname, float limit, void() deleteproc);
 entity RubbleNew(string cname);
-#endif
\ No newline at end of file
+#endif
index f2b155f..c0326eb 100644 (file)
@@ -11,4 +11,4 @@ void HUD_InitScores();
 void HUD_UpdatePlayerPos(entity pl);
 void HUD_UpdateTeamPos(entity Team);
 float HUD_WouldDrawScoreboard(void);
-#endif
\ No newline at end of file
+#endif
index 4074f7a..f196f8f 100644 (file)
@@ -6,4 +6,4 @@
 .float sameteam;
 .float fadedelay;
 .float pointtime;
-#endif
\ No newline at end of file
+#endif
index 1751234..1b84287 100644 (file)
@@ -19,4 +19,4 @@ entity Sort_Spawn();
        a.sort_prev = b;                                                                        \
        b.sort_next = a
 
-#endif
\ No newline at end of file
+#endif
index c2b43cd..5dc83ef 100644 (file)
@@ -4,4 +4,4 @@
 #pragma noref 0
 
 #undef ATTEN_NORM
-#endif
\ No newline at end of file
+#endif
index c8e8c9d..9764040 100644 (file)
@@ -5,4 +5,4 @@
 
 #pragma noref 1
 
-#endif
\ No newline at end of file
+#endif
index 5a15389..c685214 100644 (file)
@@ -19,4 +19,4 @@ void Ent_TriggerMusic_Think();
 void Ent_TriggerMusic_Remove();
 
 void Ent_ReadTriggerMusic();
-#endif
\ No newline at end of file
+#endif
index 777098a..31defc8 100644 (file)
@@ -52,4 +52,4 @@ void teamradar_loadcvars();
 
 void Ent_RadarLink();
 
-#endif
\ No newline at end of file
+#endif
index 767e511..6316d79 100644 (file)
@@ -6,4 +6,4 @@
 void ent_turret();
 void turrets_precache();
 .entity tur_head;
-#endif
\ No newline at end of file
+#endif
index e843009..81517b4 100644 (file)
@@ -25,4 +25,4 @@ void Ent_TubaNote_StopSound();
 void Ent_TubaNote(float bIsNew);
 
 void Tuba_Precache();
-#endif
\ No newline at end of file
+#endif
index 19bce0c..7e509e9 100644 (file)
@@ -6,4 +6,4 @@ void RaptorCBShellfragToss(vector _org, vector _vel, vector _ang);
 void Vehicles_Precache();
 void Net_AuXair2(bool bIsNew);
 void Net_VehicleSetup();
-#endif
\ No newline at end of file
+#endif
index 6efd6c5..da621eb 100644 (file)
@@ -1491,7 +1491,7 @@ void CSQC_UpdateView(float w, float h)
 
                        if(zoomscript_caught)
                                f = 1;
-                       else 
+                       else
                                f = current_zoomfraction;
 
                        if(f)
index 4a3955e..984b54c 100644 (file)
@@ -12,4 +12,4 @@ void Ent_Wall_Draw();
 void Ent_Wall_Remove();
 
 void Ent_Wall();
-#endif
\ No newline at end of file
+#endif
index aff3963..3822793 100644 (file)
@@ -83,4 +83,4 @@ void WaypointSprite_Load_Frames(string ext);
 
 void WaypointSprite_Load();
 
-#endif
\ No newline at end of file
+#endif
index c6076f2..3a4cdcb 100644 (file)
@@ -32,4 +32,4 @@ void Ent_Projectile();
 
 void Projectile_Precache();
 
-#endif
\ No newline at end of file
+#endif
index 885a116..9dc7cf7 100644 (file)
@@ -48,4 +48,4 @@ const int ANIMACTION_PAIN2 = 3; // pain
 const int ANIMACTION_SHOOT = 4; // shoot
 const int ANIMACTION_TAUNT = 5; // taunt
 const int ANIMACTION_MELEE = 6; // melee
-#endif
\ No newline at end of file
+#endif
index a36ae3f..a629de6 100644 (file)
@@ -61,7 +61,7 @@ void buff_Init_Compat(entity ent, int replacement);
         BUFF_SPAWNFUNC(e##_team1,   b,  NUM_TEAM_1) \
         BUFF_SPAWNFUNC(e##_team2,   b,  NUM_TEAM_2) \
         BUFF_SPAWNFUNC(e##_team3,   b,  NUM_TEAM_3) \
-        BUFF_SPAWNFUNC(e##_team4,   b,  NUM_TEAM_4) 
+        BUFF_SPAWNFUNC(e##_team4,   b,  NUM_TEAM_4)
 
 BUFF_SPAWNFUNCS(resistance,            BUFF_RESISTANCE)
 BUFF_SPAWNFUNCS(ammo,                  BUFF_AMMO)
@@ -94,4 +94,4 @@ int Buff_Type_FromName(string buff_name);
 int Buff_Type_FromSprite(string buff_sprite);
 int Buff_Skin(int buff_id);
 string Buff_Sprite(int buff_id);
-#endif
\ No newline at end of file
+#endif
index 21af401..3f494a4 100644 (file)
@@ -31,4 +31,4 @@ void CampaignFile_Unload();
 // Sets up the campaign for the n-th array item (meaning: campaign_offset+nth
 // level) using localcmd()
 void CampaignSetup(float n);
-#endif
\ No newline at end of file
+#endif
index 931e2f6..7f302e0 100644 (file)
@@ -278,7 +278,7 @@ void GenericCommand_dumpweapons(float request) // WEAPONTODO: make this work wit
                        wep_config_file = -1;
                        wep_config_alsoprint = -1;
                        string filename = argv(1);
-                       
+
                        if(filename == "")
                        {
                                filename = "weapons_dump.cfg";
@@ -290,7 +290,7 @@ void GenericCommand_dumpweapons(float request) // WEAPONTODO: make this work wit
                                wep_config_alsoprint = true;
                        }
                        wep_config_file = fopen(filename, FILE_WRITE);
-                       
+
                        if(wep_config_file >= 0)
                        {
                                Dump_Weapon_Settings();
@@ -308,7 +308,7 @@ void GenericCommand_dumpweapons(float request) // WEAPONTODO: make this work wit
                        #endif
                        return;
                }
-                       
+
                default:
                case CMD_REQUEST_USAGE:
                {
index 8858ab7..0bb09b4 100644 (file)
@@ -34,4 +34,4 @@ void Curl_URI_Get_Callback(int id, float status, string data);
 int curl_uri_get_pos;
 float curl_uri_get_exec[URI_GET_CURL_END - URI_GET_CURL + 1];
 string curl_uri_get_cvar[URI_GET_CURL_END - URI_GET_CURL + 1];
-#endif
\ No newline at end of file
+#endif
index 5f85499..e6ac7cf 100644 (file)
@@ -12,4 +12,4 @@ string markup_from[NUM_MARKUPS];
 string markup_to[NUM_MARKUPS];
 
 string GenericCommand_markup(string s2);
-#endif
\ No newline at end of file
+#endif
index 44bd667..a28f294 100644 (file)
@@ -14,4 +14,4 @@ string rpn_stack[MAX_RPN_STACK];
 
 void GenericCommand_rpn(float request, float argc, string command);
 
-#endif
\ No newline at end of file
+#endif
index e7edd35..0056565 100644 (file)
@@ -9,4 +9,4 @@
 // identifiers for subfunction requests by the command code structure
 const int CMD_REQUEST_COMMAND = 1;
 const int CMD_REQUEST_USAGE = 2;
-#endif
\ No newline at end of file
+#endif
index 9e33205..45a65ab 100644 (file)
@@ -323,4 +323,4 @@ const int URI_GET_URLLIB_END = 191;
 const int GTV_AVAILABLE = 0;
 // for later use in per-map gametype filtering
 const int GTV_FORBIDDEN = 2;
-#endif
\ No newline at end of file
+#endif
index 77149f2..17c5f89 100644 (file)
@@ -218,4 +218,4 @@ string process_time(float outputtype, float seconds)
        }
        return "";
 }
-#endif
\ No newline at end of file
+#endif
index 983df24..5efbc17 100644 (file)
@@ -81,4 +81,4 @@ const float CSQCPLAYER_FORCE_UPDATES = 0.25;
 #endif
 
 #define CSQCMODEL_EF_RESPAWNGHOST EF_SELECTABLE
-#endif
\ No newline at end of file
+#endif
index 0bf3873..301d665 100644 (file)
@@ -136,4 +136,4 @@ const int HITTYPE_SPLASH = 0x200; // automatically set by RadiusDamage
 const int HITTYPE_BOUNCE = 0x400;
 const int HITTYPE_RESERVED2 = 0x800;
 const int HITTYPE_RESERVED = 0x1000; // unused yet
-#endif
\ No newline at end of file
+#endif
index fec3f63..c79a4e6 100644 (file)
@@ -8,4 +8,4 @@
 #include "monster/wyvern.qc"
 #include "monster/shambler.qc"
 
-//#endif
\ No newline at end of file
+//#endif
index c21b237..6fa9dfa 100644 (file)
@@ -68,4 +68,4 @@ int MON_LAST;
 
 #undef REGISTER_MONSTER
 ACCUMULATE_FUNCTION(RegisterMonsters, register_monsters_done);
-#endif
\ No newline at end of file
+#endif
index 85498f8..8aee54b 100644 (file)
@@ -75,7 +75,7 @@ entity spawnmonster (string monster, float monster_id, entity spawnedby, entity
        }
 
        //monster = strcat("$ spawnfunc_monster_", monster);
-       
+
        entity oldself = self;
        self = e;
        monster_initialize(monster_id);
index eff2754..2ebdcc5 100644 (file)
@@ -2,4 +2,4 @@
 #define SPAWN_H
 
 entity spawnmonster (string monster, float monster_id, entity spawnedby, entity own, vector orig, float respwn, float invincible, float moveflag);
-#endif
\ No newline at end of file
+#endif
index 59bcfa5..28430e9 100644 (file)
@@ -502,7 +502,7 @@ vector monster_pickmovetarget(entity targ)
                vector targ_origin = ((self.enemy.absmin + self.enemy.absmax) * 0.5);
                targ_origin = WarpZone_RefSys_TransformOrigin(self.enemy, self, targ_origin); // origin of target as seen by the monster (us)
                WarpZone_TraceLine(self.origin, targ_origin, MOVE_NOMONSTERS, self);
-               
+
                if((self.enemy == world)
                        || (self.enemy.deadflag != DEAD_NO || self.enemy.health < 1)
                        || (self.enemy.frozen)
@@ -516,19 +516,19 @@ vector monster_pickmovetarget(entity targ)
                        self.enemy = world;
                        self.pass_distance = 0;
                }
-               
+
                if(self.enemy)
                {
                        /*WarpZone_TrailParticles(world, particleeffectnum("red_pass"), self.origin, targ_origin);
                        print("Trace origin: ", vtos(targ_origin), "\n");
                        print("Target origin: ", vtos(self.enemy.origin), "\n");
                        print("My origin: ", vtos(self.origin), "\n"); */
-                       
+
                        self.monster_movestate = MONSTER_MOVE_ENEMY;
                        self.last_trace = time + 1.2;
                        return targ_origin;
                }
-       
+
                /*makevectors(self.angles);
                self.monster_movestate = MONSTER_MOVE_ENEMY;
                self.last_trace = time + 1.2;
@@ -753,7 +753,7 @@ void monster_move(float runspeed, float walkspeed, float stopspeed, float manim_
                                WarpZone_RefSys_Copy(self.enemy, self);
                                WarpZone_RefSys_AddInverse(self.enemy, self); // wz1^-1 ... wzn^-1 receiver
                                self.moveto = WarpZone_RefSys_TransformOrigin(self.enemy, self, (0.5 * (self.enemy.absmin + self.enemy.absmax)));
-                               
+
                                self.pass_distance = vlen((('1 0 0' * self.enemy.origin.x) + ('0 1 0' * self.enemy.origin.y)) - (('1 0 0' *  self.origin.x) + ('0 1 0' *  self.origin.y)));
                                MonsterSound(monstersound_sight, 0, false, CH_VOICE);
                        }
@@ -793,7 +793,7 @@ void monster_move(float runspeed, float walkspeed, float stopspeed, float manim_
        {
                if((self.flags & FL_ONGROUND) || ((self.flags & FL_FLY) || (self.flags & FL_SWIM)))
                        monster_CalculateVelocity(self, self.moveto, self.origin, true, ((self.enemy) ? runspeed : walkspeed));
-               
+
                /*&if(self.flags & FL_FLY || self.flags & FL_SWIM)
                        movelib_move_simple(v_forward, ((self.enemy) ? runspeed : walkspeed), 0.6);
                else
@@ -820,9 +820,9 @@ void monster_move(float runspeed, float walkspeed, float stopspeed, float manim_
                if (vlen(self.velocity) <= 30)
                        self.frame = manim_idle;
        }
-       
+
        self.steerto = steerlib_attract2(self.moveto, 0.5, 500, 0.95);
-       
+
        vector real_angle = vectoangles(self.steerto) - self.angles;
        float turny = 25;
        if(self.state == MONSTER_STATE_ATTACK_MELEE)
@@ -1078,11 +1078,11 @@ void monster_setupcolors(entity mon)
 void monster_changeteam(entity ent, float newteam)
 {
        if(!teamplay) { return; }
-       
+
        ent.team = newteam;
        ent.monster_attack = true; // new team, activate attacking
        monster_setupcolors(ent);
-       
+
        if(ent.sprite)
        {
                WaypointSprite_UpdateTeamRadar(ent.sprite, RADARICON_DANGER, ((newteam) ? Team_ColorRGB(newteam) : '1 0 0'));
@@ -1241,7 +1241,7 @@ float monster_initialize(float mon_id)
        if(mon.spawnflags & MONSTER_SIZE_BROKEN)
        if(!(self.spawnflags & MONSTERFLAG_RESPAWNED))
                self.scale *= 1.3;
-               
+
        setsize(self, mon.mins * self.scale, mon.maxs * self.scale);
 
        if(!self.ticrate)
index 2ec816f..f6b1498 100644 (file)
@@ -98,4 +98,4 @@ void monster_move(float runspeed, float walkspeed, float stopspeed, float manim_
 void monster_setupcolors(entity mon);
 float Monster_SkillModifier();
 void MonsterTouch ();
-#endif
\ No newline at end of file
+#endif
index 28a88b6..4225a19 100644 (file)
@@ -57,7 +57,7 @@ void healer_setup()
        setmodel(self, "models/ctf/shield.md3");
 
        setorigin(self, self.origin);
-       
+
        float model_radius = self.maxs.x;
        vector size = '1 1 1' * self.healer_radius / 2;
        setsize(self,-size,size);
@@ -93,4 +93,4 @@ void ent_healer()
                healer_setup();
        }
 }
-#endif // CSQC
\ No newline at end of file
+#endif // CSQC
index 5033a7d..d11e4ea 100644 (file)
@@ -99,7 +99,7 @@ string Nade_TrailEffect(float proj, float nade_team)
                case PROJECTILE_NADE_MONSTER: return "nade_red";
                case PROJECTILE_NADE_MONSTER_BURN: return "nade_red_burn";
        }
-       
+
        return "";
 }
 
@@ -111,4 +111,4 @@ float healer_send(entity to, float sf);
 // misc functions
 void ent_healer();
 #endif // CSQC
-#endif
\ No newline at end of file
+#endif
index 41820bf..ba3b981 100644 (file)
@@ -14,4 +14,4 @@ void sv_notice_join();
 void cl_notice_read();
 #endif
 
-#endif
\ No newline at end of file
+#endif
index 45d04f4..1cb1adf 100644 (file)
@@ -734,7 +734,7 @@ void Send_Notification_WOCOVA(
     MSG_CENTER_NOTIF(1, CENTER_TEAMCHANGE_SUICIDE,          0, 1, "",              CPID_TEAMCHANGE,       "1 f1", _("^K1Suicide in ^COUNT"), "") \
     MSG_CENTER_NOTIF(1, CENTER_TIMEOUT_BEGINNING,           0, 1, "",              CPID_TIMEOUT,          "1 f1", _("^F4Timeout begins in ^COUNT"), "") \
     MSG_CENTER_NOTIF(1, CENTER_TIMEOUT_ENDING,              0, 1, "",              CPID_TIMEOUT,          "1 f1", _("^F4Timeout ends in ^COUNT"), "") \
-    MSG_CENTER_NOTIF(1, CENTER_WEAPON_MINELAYER_LIMIT,      0, 1, "f1",            NO_CPID,               "0 0",  _("^BGYou cannot place more than ^F2%s^BG mines at a time"), "") 
+    MSG_CENTER_NOTIF(1, CENTER_WEAPON_MINELAYER_LIMIT,      0, 1, "f1",            NO_CPID,               "0 0",  _("^BGYou cannot place more than ^F2%s^BG mines at a time"), "")
 
 #define MULTITEAM_MULTI2(default,prefix,anncepre,infopre,centerpre) \
     MSG_MULTI_NOTIF(default, prefix##RED, anncepre##RED, infopre##RED, centerpre##RED) \
@@ -1649,4 +1649,4 @@ ACCUMULATE_FUNCTION(RegisterNotifications, RegisterNotifications_Done);
 #undef MSG_CHOICE_NOTIF
 
 #undef NOTIF_ADD_AUTOCVAR
-#endif
\ No newline at end of file
+#endif
index e7a187e..e77cdbf 100644 (file)
@@ -116,4 +116,4 @@ void PlayerStats_PlayerDetail(void);
 void PlayerStats_PlayerDetail_CheckUpdate(void);
 void PlayerStats_PlayerDetail_Handler(entity fh, entity p, float status);
 #endif
-#endif
\ No newline at end of file
+#endif
index a55b946..481713c 100644 (file)
@@ -291,4 +291,4 @@ const int STAT_MOVEVARS_MAXAIRSPEED                   = 252;
 const int STAT_MOVEVARS_STEPHEIGHT                    = 253;
 const int STAT_MOVEVARS_AIRACCEL_QW                   = 254;
 const int STAT_MOVEVARS_AIRACCEL_SIDEWAYS_FRICTION    = 255;
-#endif
\ No newline at end of file
+#endif
index 67fc37a..074835d 100644 (file)
@@ -168,4 +168,4 @@ float Team_TeamToNumber(float teamid)
 #define APP_TEAM_NUM_4(num,prefix) ((num == NUM_TEAM_1) ? prefix##RED : ((num == NUM_TEAM_2) ? prefix##BLUE : ((num == NUM_TEAM_3) ? prefix##YELLOW : prefix##PINK)))
 #define APP_TEAM_ENT_2(ent,prefix) ((ent.team == NUM_TEAM_1) ? prefix##RED : prefix##BLUE)
 #define APP_TEAM_ENT_4(ent,prefix) ((ent.team == NUM_TEAM_1) ? prefix##RED : ((ent.team == NUM_TEAM_2) ? prefix##BLUE : ((ent.team == NUM_TEAM_3) ? prefix##YELLOW : prefix##PINK)))
-#endif
\ No newline at end of file
+#endif
index 4ada66e..edc2f5b 100644 (file)
@@ -8,4 +8,4 @@ void TEST_Fail(string cond);
 
 float TEST_RunAll();
 float TEST_Run(string test);
-#endif
\ No newline at end of file
+#endif
index 87dcf8d..d58a0b1 100644 (file)
@@ -19,4 +19,4 @@ float url_URI_Get_Callback(int id, float status, string data);
 #define NUM_URL_ID (URI_GET_URLLIB_END - URI_GET_URLLIB + 1)
 
 void url_multi_fopen(string url, float mode, url_ready_func rdy, entity pass);
-#endif
\ No newline at end of file
+#endif
index b0327b4..1537c75 100644 (file)
@@ -31,4 +31,4 @@
     const bool true    = 1;
     const bool false   = 0;
 #endif
-#endif
\ No newline at end of file
+#endif
index 5656c96..4de610f 100644 (file)
@@ -445,4 +445,4 @@ vector bezier_quadratic_getderivative(vector a, vector p, vector b, float t);
 
 // Returns the correct difference between two always increasing numbers
 #define COMPARE_INCREASING(to,from) (to < from ? from + to + 2 : to - from)
-#endif
\ No newline at end of file
+#endif
index 62f3997..b4ee1e2 100644 (file)
@@ -39,4 +39,4 @@
 #include "w_hmg.qc"
 #include "w_rpc.qc"
 
-//#endif
\ No newline at end of file
+//#endif
index 82adfdb..46bb8a6 100644 (file)
@@ -152,7 +152,7 @@ vector W_CalculateSpread(vector forward, float spread, float spreadfactor, float
        if(spread <= 0)
                return forward;
        sstyle = spreadstyle; //autocvar_g_projectiles_spread_style;
-       
+
        if(sstyle == 0)
        {
                // this is the baseline for the spread value!
index 71cdc21..d91d22c 100644 (file)
@@ -2,4 +2,4 @@
 #define CALCULATIONS_H
 vector damage_explosion_calcpush(vector explosion_f, vector target_v, float speedfactor);
 vector W_CalculateSpread(vector forward, float spread, float spreadfactor, float spreadstyle);
-#endif
\ No newline at end of file
+#endif
index 885923e..a314f03 100644 (file)
@@ -39,7 +39,7 @@ void Dump_Weapon_Settings(void)
 
                // step 3: sort queue
                heapsort(WEP_CONFIG_COUNT, W_Config_Queue_Swap, W_Config_Queue_Compare, world);
-               
+
                // step 4: write queue
                WEP_CONFIG_WRITETOFILE(sprintf(
                        "// {{{ #%d: %s%s\n",
index bf9f083..4e968ec 100644 (file)
@@ -32,7 +32,7 @@ string wep_config_queue[MAX_WEP_CONFIG];
 #define WEP_CONFIG_WRITE_CVARS_BOTH(wepname,name) \
        WEP_CONFIG_WRITE_CVARS_PRI(wepname, name) \
        WEP_CONFIG_WRITE_CVARS_SEC(wepname, name)
-       
+
 #define WEP_CONFIG_WRITE_CVARS(wepid,wepname,mode,name) WEP_CONFIG_WRITE_CVARS_##mode(wepname, name)
 
 #define WEP_CONFIG_WRITE_PROPS_string(wepname,name) \
@@ -46,4 +46,4 @@ string wep_config_queue[MAX_WEP_CONFIG];
                cvar(sprintf("g_balance_%s_%s", #wepname, #name)))) }
 
 #define WEP_CONFIG_WRITE_PROPS(wepid,wepname,type,prop,name) WEP_CONFIG_WRITE_PROPS_##type(wepname,name)
-#endif
\ No newline at end of file
+#endif
index 3d2bdf4..d8faa7b 100644 (file)
@@ -187,22 +187,22 @@ void Reset_ArcBeam(entity player, vector forward)
 }
 
 float Arc_GetHeat_Percent(entity player)
-{      
+{
        if ( WEP_CVAR(arc, overheat_max) <= 0 ||  WEP_CVAR(arc, overheat_max) <= 0 )
        {
                player.arc_overheat = 0;
                return 0;
        }
-       
+
        if ( player.arc_beam )
                return player.arc_beam.beam_heat/WEP_CVAR(arc, overheat_max);
-       
+
        if ( player.arc_overheat > time )
        {
-               return (player.arc_overheat-time) / WEP_CVAR(arc, overheat_max) 
+               return (player.arc_overheat-time) / WEP_CVAR(arc, overheat_max)
                        * player.arc_cooldown;
        }
-       
+
        return 0;
 }
 void Arc_Player_SetHeat(entity player)
@@ -218,8 +218,8 @@ void W_Arc_Beam_Think(void)
                remove(self);
                return;
        }
-       
-       
+
+
        float burst = 0;
        if( self.owner.BUTTON_ATCK2 || self.beam_bursting)
        {
@@ -253,21 +253,21 @@ void W_Arc_Beam_Think(void)
                        {
                                cooldown_speed = self.beam_heat / WEP_CVAR(arc, beam_refire);
                        }
-                       
+
                        if ( cooldown_speed )
                        {
                                self.owner.arc_overheat = time + self.beam_heat / cooldown_speed;
                                self.owner.arc_cooldown = cooldown_speed;
                        }
-                       
+
                        if ( WEP_CVAR(arc, overheat_max) > 0 && self.beam_heat >= WEP_CVAR(arc, overheat_max) )
                        {
-                               pointparticles( particleeffectnum("arc_overheat"), 
+                               pointparticles( particleeffectnum("arc_overheat"),
                                        self.beam_start, self.beam_wantdir, 1 );
                                sound(self, CH_WEAPON_A, "weapons/arc_stop.wav", VOL_BASE, ATTN_NORM);
                        }
                }
-               
+
                if(self == self.owner.arc_beam) { self.owner.arc_beam = world; }
                entity oldself = self;
                self = self.owner;
@@ -280,7 +280,7 @@ void W_Arc_Beam_Think(void)
                remove(self);
                return;
        }
-       
+
        // decrease ammo
        float coefficient = frametime;
        if(!(self.owner.items & IT_UNLIMITED_WEAPON_AMMO))
@@ -341,7 +341,7 @@ void W_Arc_Beam_Think(void)
 
        // note that if we do this, it'll always be corrected to a maximum angle by beam_maxangle handling
 
-       float segments; 
+       float segments;
        if(self.beam_dir != w_shotdir)
        {
                // calculate how much we're going to move the end of the beam to the want position
@@ -390,7 +390,7 @@ void W_Arc_Beam_Think(void)
                if(WEP_CVAR(arc, beam_degreespersegment))
                {
                        segments = bound(
-                               1, 
+                               1,
                                (
                                        min(
                                                angle,
@@ -545,7 +545,7 @@ void W_Arc_Beam_Think(void)
 
                                new_beam_type = ARC_BT_HIT;
                        }
-                       break; 
+                       break;
                }
                else if(trace_fraction != 1)
                {
@@ -620,12 +620,12 @@ void Arc_Smoke()
        else if ( self.arc_beam && WEP_CVAR(arc, overheat_max) > 0 &&
                        self.arc_beam.beam_heat > WEP_CVAR(arc, overheat_min) )
        {
-               if ( random() < (self.arc_beam.beam_heat-WEP_CVAR(arc, overheat_min)) / 
+               if ( random() < (self.arc_beam.beam_heat-WEP_CVAR(arc, overheat_min)) /
                                ( WEP_CVAR(arc, overheat_max)-WEP_CVAR(arc, overheat_min) ) )
                        pointparticles( particleeffectnum("arc_smoke"), smoke_origin, '0 0 0', 1 );
        }
-       
-       if (  self.arc_smoke_sound && ( self.arc_overheat <= time || 
+
+       if (  self.arc_smoke_sound && ( self.arc_overheat <= time ||
                !( self.BUTTON_ATCK || self.BUTTON_ATCK2 ) ) || self.switchweapon != WEP_ARC )
        {
                self.arc_smoke_sound = 0;
@@ -667,7 +667,7 @@ float W_Arc(float req)
                        if ( self.arc_overheat <= time )
                        if(self.BUTTON_ATCK || self.BUTTON_ATCK2 || self.arc_beam.beam_bursting )
                        {
-                       
+
                                if(self.arc_BUTTON_ATCK_prev)
                                {
                                        #if 0
@@ -683,7 +683,7 @@ float W_Arc(float req)
                                        if(weapon_prepareattack(!!self.BUTTON_ATCK2, 0))
                                        {
                                                W_Arc_Beam(!!self.BUTTON_ATCK2);
-                                               
+
                                                if(!self.arc_BUTTON_ATCK_prev)
                                                {
                                                        weapon_thinkf(WFRAME_FIRE1, WEP_CVAR(arc, beam_animtime), w_ready);
@@ -691,10 +691,10 @@ float W_Arc(float req)
                                                }
                                        }
                                }
-                               
+
                                return true;
                        }
-                       
+
                        if(self.arc_BUTTON_ATCK_prev != 0)
                        {
                                sound(self, CH_WEAPON_A, "weapons/arc_stop.wav", VOL_BASE, ATTN_NORM);
@@ -810,7 +810,7 @@ void Draw_ArcBeam_callback(vector start, vector hit, vector end)
        // draw primary beam render
        vector top    = hitorigin + (thickdir * thickness);
        vector bottom = hitorigin - (thickdir * thickness);
-       
+
        vector last_top = WarpZone_TransformOrigin(WarpZone_trace_transform, Draw_ArcBeam_callback_last_top);
        vector last_bottom = WarpZone_TransformOrigin(WarpZone_trace_transform, Draw_ArcBeam_callback_last_bottom);
 
@@ -850,7 +850,7 @@ void Draw_ArcBeam_callback(vector start, vector hit, vector end)
                trailparticles(beam, beam.beam_traileffect, start, hitorigin);
        }
 
-       // set up for the next 
+       // set up for the next
        Draw_ArcBeam_callback_last_thickness = thickness;
        Draw_ArcBeam_callback_last_top = WarpZone_UnTransformOrigin(WarpZone_trace_transform, top);
        Draw_ArcBeam_callback_last_bottom = WarpZone_UnTransformOrigin(WarpZone_trace_transform, bottom);
@@ -893,7 +893,7 @@ void Draw_ArcBeam(void)
                // Currently we have to replicate nearly the same method of figuring
                // out the shotdir that the server does... Ideally in the future we
                // should be able to acquire this from a generalized function built
-               // into a weapon system for client code. 
+               // into a weapon system for client code.
 
                // find where we are aiming
                makevectors(warpzone_save_view_angles);
@@ -987,7 +987,7 @@ void Draw_ArcBeam(void)
                        if(self.beam_degreespersegment)
                        {
                                segments = bound(
-                                       1, 
+                                       1,
                                        (
                                                min(
                                                        angle,
@@ -1035,7 +1035,7 @@ void Draw_ArcBeam(void)
                        if(self.beam_degreespersegment)
                        {
                                segments = bound(
-                                       1, 
+                                       1,
                                        (
                                                min(
                                                        angle,
index 4fe6c15..7de776d 100644 (file)
@@ -68,7 +68,7 @@ void W_Blaster_Touch(void)
                self.projectiledeathtype,
                other
        );
-       
+
        remove(self);
 }
 
@@ -112,7 +112,7 @@ void W_Blaster_Attack(
 
        setorigin(missile, w_shotorg);
        setsize(missile, '0 0 0', '0 0 0');
-       
+
        W_SetupProjVelocity_Explicit(
                missile,
                w_shotdir,
@@ -132,7 +132,7 @@ void W_Blaster_Attack(
        missile.touch = W_Blaster_Touch;
        missile.flags = FL_PROJECTILE;
        missile.missile_flags = MIF_SPLASH;
-       missile.projectiledeathtype = atk_deathtype; 
+       missile.projectiledeathtype = atk_deathtype;
        missile.think = W_Blaster_Think;
        missile.nextthink = time + atk_delay;
 
@@ -165,7 +165,7 @@ float W_Blaster(float request)
 
                        return true;
                }
-               
+
                case WR_THINK:
                {
                        if(self.BUTTON_ATCK)
@@ -223,8 +223,8 @@ float W_Blaster(float request)
                        }
                        return true;
                }
-               
-               case WR_INIT: 
+
+               case WR_INIT:
                {
                        precache_model("models/weapons/g_laser.md3");
                        precache_model("models/weapons/v_laser.md3");
@@ -233,30 +233,30 @@ float W_Blaster(float request)
                        BLASTER_SETTINGS(WEP_SKIP_CVAR, WEP_SET_PROP);
                        return true;
                }
-               
+
                case WR_SETUP:
                {
                        self.ammo_field = ammo_none;
                        return true;
                }
-               
+
                case WR_CHECKAMMO1:
                case WR_CHECKAMMO2:
                {
                        return true; // laser has infinite ammo
                }
-               
+
                case WR_CONFIG:
                {
                        BLASTER_SETTINGS(WEP_CONFIG_WRITE_CVARS, WEP_CONFIG_WRITE_PROPS);
                        return true;
                }
-               
+
                case WR_SUICIDEMESSAGE:
                {
                        return WEAPON_BLASTER_SUICIDE;
                }
-               
+
                case WR_KILLMESSAGE:
                {
                        return WEAPON_BLASTER_MURDER;
@@ -278,7 +278,7 @@ float W_Blaster(float request)
                        if(!w_issilent) { sound(self, CH_SHOTS, "weapons/laserimpact.wav", VOL_BASE, ATTN_NORM); }
                        return true;
                }
-               
+
                case WR_INIT:
                {
                        precache_sound("weapons/laserimpact.wav");
index 30decbf..ee4878f 100644 (file)
@@ -123,9 +123,9 @@ void W_Crylink_LinkExplode(entity e, entity e2)
 
        if(e == e.realowner.crylink_lastgroup)
                e.realowner.crylink_lastgroup = world;
-               
+
        float isprimary = !(e.projectiledeathtype & HITTYPE_SECONDARY);
-               
+
        RadiusDamage(e, e.realowner, WEP_CVAR_BOTH(crylink, isprimary, damage) * a, WEP_CVAR_BOTH(crylink, isprimary, edgedamage) * a, WEP_CVAR_BOTH(crylink, isprimary, radius), world, world, WEP_CVAR_BOTH(crylink, isprimary, force) * a, e.projectiledeathtype, other);
 
        W_Crylink_LinkExplode(e.queuenext, e2);
@@ -241,7 +241,7 @@ void W_Crylink_LinkJoinEffect_Think(void)
                if(n >= 2)
                {
                        float isprimary = !(e.projectiledeathtype & HITTYPE_SECONDARY);
-                       
+
                        if(WEP_CVAR_BOTH(crylink, isprimary, joinexplode))
                        {
                                n /= WEP_CVAR_BOTH(crylink, isprimary, shots);
@@ -279,7 +279,7 @@ float W_Crylink_Touch_WouldHitFriendly(entity projectile, float rad)
                        else
                                ++hit_enemy;
                }
-                       
+
                head = head.chain;
        }
 
@@ -306,7 +306,7 @@ void W_Crylink_Touch(void)
                f *= a;
 
        float totaldamage = RadiusDamage(self, self.realowner, WEP_CVAR_BOTH(crylink, isprimary, damage) * f, WEP_CVAR_BOTH(crylink, isprimary, edgedamage) * f, WEP_CVAR_BOTH(crylink, isprimary, radius), world, world, WEP_CVAR_BOTH(crylink, isprimary, force) * f, self.projectiledeathtype, other);
-               
+
        if(totaldamage && ((WEP_CVAR_BOTH(crylink, isprimary, linkexplode) == 2) || ((WEP_CVAR_BOTH(crylink, isprimary, linkexplode) == 1) && !W_Crylink_Touch_WouldHitFriendly(self, WEP_CVAR_BOTH(crylink, isprimary, radius)))))
        {
                if(self == self.realowner.crylink_lastgroup)
@@ -434,7 +434,7 @@ void W_Crylink_Attack(void)
 
                proj.flags = FL_PROJECTILE;
                proj.missile_flags = MIF_SPLASH;
-    
+
                CSQCProjectile(proj, true, (proj.cnt ? PROJECTILE_CRYLINK_BOUNCING : PROJECTILE_CRYLINK), true);
 
                other = proj; MUTATOR_CALLHOOK(EditProjectile);
@@ -550,7 +550,7 @@ void W_Crylink_Attack2(void)
 
                proj.flags = FL_PROJECTILE;
         proj.missile_flags = MIF_SPLASH;
-        
+
                CSQCProjectile(proj, true, (proj.cnt ? PROJECTILE_CRYLINK_BOUNCING : PROJECTILE_CRYLINK), true);
 
                other = proj; MUTATOR_CALLHOOK(EditProjectile);
@@ -574,7 +574,7 @@ float W_Crylink(float req)
                                self.BUTTON_ATCK = bot_aim(WEP_CVAR_PRI(crylink, speed), 0, WEP_CVAR_PRI(crylink, middle_lifetime), false);
                        else
                                self.BUTTON_ATCK2 = bot_aim(WEP_CVAR_SEC(crylink, speed), 0, WEP_CVAR_SEC(crylink, middle_lifetime), false);
-                               
+
                        return true;
                }
                case WR_THINK:
@@ -612,7 +612,7 @@ float W_Crylink(float req)
                                                vector pos;
                                                entity linkjoineffect;
                                                float isprimary = (self.crylink_waitrelease == 1);
-                                               
+
                                                pos = W_Crylink_LinkJoin(self.crylink_lastgroup, WEP_CVAR_BOTH(crylink, isprimary, joinspread) * WEP_CVAR_BOTH(crylink, isprimary, speed));
 
                                                linkjoineffect = spawn();
@@ -632,7 +632,7 @@ float W_Crylink(float req)
                                        }
                                }
                        }
-                       
+
                        return true;
                }
                case WR_INIT:
@@ -709,7 +709,7 @@ float W_Crylink(float req)
                                if(!w_issilent)
                                        sound(self, CH_SHOTS, "weapons/crylink_impact.wav", VOL_BASE, ATTN_NORM);
                        }
-                       
+
                        return true;
                }
                case WR_INIT:
index 8286ec1..dd167aa 100644 (file)
@@ -126,7 +126,7 @@ void W_Devastator_DoRemoteExplode(void)
                WEP_CVAR(devastator, remote_jump_radius),
                false
        );
-       
+
        while(head)
        {
                if(head.takedamage && (head == self.realowner))
@@ -137,7 +137,7 @@ void W_Devastator_DoRemoteExplode(void)
                                // we handled this as a rocketjump :)
                                handled_as_rocketjump = true;
 
-                               // modify velocity 
+                               // modify velocity
                                head.velocity_x *= 0.9;
                                head.velocity_y *= 0.9;
                                head.velocity_z = bound(
@@ -321,13 +321,13 @@ void W_Devastator_Damage(entity inflictor, entity attacker, float damage, float
 {
        if(self.health <= 0)
                return;
-       
+
        if(!W_CheckProjectileDamage(inflictor.realowner, self.realowner, deathtype, -1)) // no exceptions
                return; // g_projectiles_damage says to halt
-               
+
        self.health = self.health - damage;
        self.angles = vectoangles(self.velocity);
-       
+
        if(self.health <= 0)
                W_PrepareExplosionByDamage(attacker, W_Devastator_Explode);
 }
@@ -374,7 +374,7 @@ void W_Devastator_Attack(void)
        missile.nextthink = time;
        missile.cnt = time + WEP_CVAR(devastator, lifetime);
        missile.flags = FL_PROJECTILE;
-       missile.missile_flags = MIF_SPLASH; 
+       missile.missile_flags = MIF_SPLASH;
 
        CSQCProjectile(missile, WEP_CVAR(devastator, guiderate) == 0 && WEP_CVAR(devastator, speedaccel) == 0, PROJECTILE_ROCKET, false); // because of fly sound
 
@@ -419,10 +419,10 @@ float W_Devastator(float req)
                                                targ = targ.chain;
                                        }
                                }
-                               
+
                                if(self.BUTTON_ATCK2) self.BUTTON_ATCK = false;
                        }
-                       
+
                        return true;
                }
                #else
@@ -520,7 +520,7 @@ float W_Devastator(float req)
                                //      dprint(ftos(desirabledamage),"\n");
                                if(self.BUTTON_ATCK2 == true) self.BUTTON_ATCK = false;
                        }
-                       
+
                        return true;
                }
                #endif
@@ -559,7 +559,7 @@ float W_Devastator(float req)
                                                sound(self, CH_WEAPON_B, "weapons/rocket_det.wav", VOL_BASE, ATTN_NORM);
                                }
                        }
-                       
+
                        return true;
                }
                case WR_INIT:
@@ -664,7 +664,7 @@ float W_Devastator(float req)
                        pointparticles(particleeffectnum("rocket_explode"), org2, '0 0 0', 1);
                        if(!w_issilent)
                                sound(self, CH_SHOTS, "weapons/rocket_impact.wav", VOL_BASE, ATTN_NORM);
-                               
+
                        return true;
                }
                case WR_INIT:
index 8e567ef..eadfa0b 100644 (file)
@@ -90,15 +90,15 @@ void W_Electro_TriggerCombo(vector org, float rad, entity own)
                                        }
                                }
                        }
-                       
+
                        // change owner to whoever caused the combo explosion
                        e.realowner = own;
                        e.takedamage = DAMAGE_NO;
                        e.classname = "electro_orb_chain";
-                       
+
                        // now set the next one to trigger as well
                        e.think = W_Electro_ExplodeCombo;
-                       
+
                        // delay combo chains, looks cooler
                        e.nextthink =
                                (
@@ -120,7 +120,7 @@ void W_Electro_ExplodeCombo(void)
        W_Electro_TriggerCombo(self.origin, WEP_CVAR(electro, combo_comboradius), self.realowner);
 
        self.event_damage = func_null;
-       
+
        RadiusDamage(
                self,
                self.realowner,
@@ -148,7 +148,7 @@ void W_Electro_Explode(void)
 
        self.event_damage = func_null;
        self.takedamage = DAMAGE_NO;
-       
+
        if(self.movetype == MOVETYPE_BOUNCE)
        {
                RadiusDamage(
@@ -215,7 +215,7 @@ void W_Electro_Bolt_Think(void)
 
                                // now set the next one to trigger as well
                                e.think = W_Electro_ExplodeCombo;
-                               
+
                                // delay combo chains, looks cooler
                                e.nextthink =
                                        (
@@ -414,7 +414,7 @@ void W_Electro_CheckAttack(void)
                weapon_thinkf(WFRAME_FIRE2, WEP_CVAR_SEC(electro, animtime), W_Electro_CheckAttack);
                return;
        }
-       // WEAPONTODO: when the player releases the button, cut down the length of refire2? 
+       // WEAPONTODO: when the player releases the button, cut down the length of refire2?
        w_ready();
 }
 
@@ -451,7 +451,7 @@ float W_Electro(float req)
                                        if(random() < 0.03) self.bot_secondary_electromooth = 0;
                                }
                        }
-                       
+
                        return true;
                }
                case WR_THINK:
@@ -469,10 +469,10 @@ float W_Electro(float req)
                                        WEP_ACTION(self.weapon, WR_RELOAD);
                                        return false;
                                }
-                               
+
                                return true;
                        }
-                       
+
                        if(self.BUTTON_ATCK)
                        {
                                if(weapon_prepareattack(0, WEP_CVAR_PRI(electro, refire)))
@@ -599,7 +599,7 @@ float W_Electro(float req)
                                                sound(self, CH_SHOTS, "weapons/electro_impact.wav", VOL_BASE, ATTEN_NORM);
                                }
                        }
-                       
+
                        return true;
                }
                case WR_INIT:
index bdef5af..d098009 100644 (file)
@@ -371,7 +371,7 @@ float W_Fireball(float req)
                                        if(random() < 0.01) self.bot_primary_fireballmooth = 1;
                                }
                        }
-                       
+
                        return true;
                }
                case WR_THINK:
@@ -393,7 +393,7 @@ float W_Fireball(float req)
                                        weapon_thinkf(WFRAME_FIRE2, WEP_CVAR_SEC(fireball, animtime), w_ready);
                                }
                        }
-                       
+
                        return true;
                }
                case WR_INIT:
@@ -465,7 +465,7 @@ float W_Fireball(float req)
                                if(!w_issilent)
                                        sound(self, CH_SHOTS, "weapons/fireball_impact2.wav", VOL_BASE, ATTEN_NORM * 0.25); // long range boom
                        }
-                       
+
                        return true;
                }
                case WR_INIT:
index ff55145..1085c31 100644 (file)
@@ -79,11 +79,11 @@ void W_Hagar_Damage(entity inflictor, entity attacker, float damage, float death
 {
        if(self.health <= 0)
                return;
-               
+
        float is_linkexplode = ( ((inflictor.owner != world) ? (inflictor.owner == self.owner) : true)
-               && (inflictor.projectiledeathtype & HITTYPE_SECONDARY) 
+               && (inflictor.projectiledeathtype & HITTYPE_SECONDARY)
                && (self.projectiledeathtype & HITTYPE_SECONDARY));
-       
+
        if(is_linkexplode)
                is_linkexplode = (is_linkexplode && WEP_CVAR_SEC(hagar, load_linkexplode));
        else
@@ -94,7 +94,7 @@ void W_Hagar_Damage(entity inflictor, entity attacker, float damage, float death
 
        self.health = self.health - damage;
        self.angles = vectoangles(self.velocity);
-       
+
        if(self.health <= 0)
                W_PrepareExplosionByDamage(attacker, self.think);
 }
@@ -135,13 +135,13 @@ void W_Hagar_Attack(void)
        missile.classname = "missile";
        missile.bot_dodge = true;
        missile.bot_dodgerating = WEP_CVAR_PRI(hagar, damage);
-       
+
        missile.takedamage = DAMAGE_YES;
        missile.health = WEP_CVAR_PRI(hagar, health);
        missile.damageforcescale = WEP_CVAR_PRI(hagar, damageforcescale);
        missile.event_damage = W_Hagar_Damage;
        missile.damagedbycontents = true;
-       
+
        missile.touch = W_Hagar_Touch;
        missile.use = W_Hagar_Explode;
        missile.think = adaptor_think2use_hittype_splash;
@@ -156,7 +156,7 @@ void W_Hagar_Attack(void)
 
        missile.angles = vectoangles(missile.velocity);
        missile.flags = FL_PROJECTILE;
-       missile.missile_flags = MIF_SPLASH; 
+       missile.missile_flags = MIF_SPLASH;
 
        CSQCProjectile(missile, true, PROJECTILE_HAGAR, true);
 
@@ -178,7 +178,7 @@ void W_Hagar_Attack2(void)
        missile.classname = "missile";
        missile.bot_dodge = true;
        missile.bot_dodgerating = WEP_CVAR_SEC(hagar, damage);
-       
+
        missile.takedamage = DAMAGE_YES;
        missile.health = WEP_CVAR_SEC(hagar, health);
        missile.damageforcescale = WEP_CVAR_SEC(hagar, damageforcescale);
@@ -200,7 +200,7 @@ void W_Hagar_Attack2(void)
 
        missile.angles = vectoangles(missile.velocity);
        missile.flags = FL_PROJECTILE;
-       missile.missile_flags = MIF_SPLASH; 
+       missile.missile_flags = MIF_SPLASH;
 
        CSQCProjectile(missile, true, PROJECTILE_HAGAR_BOUNCING, true);
 
@@ -238,7 +238,7 @@ void W_Hagar_Attack2_Load_Release(void)
                missile.classname = "missile";
                missile.bot_dodge = true;
                missile.bot_dodgerating = WEP_CVAR_SEC(hagar, damage);
-               
+
                missile.takedamage = DAMAGE_YES;
                missile.health = WEP_CVAR_SEC(hagar, health);
                missile.damageforcescale = WEP_CVAR_SEC(hagar, damageforcescale);
@@ -254,13 +254,13 @@ void W_Hagar_Attack2_Load_Release(void)
                setorigin(missile, w_shotorg);
                setsize(missile, '0 0 0', '0 0 0');
                missile.movetype = MOVETYPE_FLY;
-               missile.missile_flags = MIF_SPLASH; 
-               
+               missile.missile_flags = MIF_SPLASH;
+
                // per-shot spread calculation: the more shots there are, the less spread is applied (based on the bias cvar)
-               spread_pershot = ((shots - 1) / (WEP_CVAR_SEC(hagar, load_max) - 1)); 
+               spread_pershot = ((shots - 1) / (WEP_CVAR_SEC(hagar, load_max) - 1));
                spread_pershot = (1 - (spread_pershot * WEP_CVAR_SEC(hagar, load_spread_bias)));
                spread_pershot = (WEP_CVAR_SEC(hagar, spread) * spread_pershot * g_weaponspreadfactor);
-               
+
                // pattern spread calculation
                s = '0 0 0';
                if(counter == 0)
@@ -272,7 +272,7 @@ void W_Hagar_Attack2_Load_Release(void)
                        s.z = v_forward.y;
                }
                s = s * WEP_CVAR_SEC(hagar, load_spread) * g_weaponspreadfactor;
-               
+
                W_SetupProjVelocity_Explicit(missile, w_shotdir + right * s.y + up * s.z, v_up, WEP_CVAR_SEC(hagar, speed), 0, 0, spread_pershot, false);
 
                missile.angles = vectoangles(missile.velocity);
@@ -291,7 +291,7 @@ void W_Hagar_Attack2_Load_Release(void)
 void W_Hagar_Attack2_Load(void)
 {
        // loadable hagar secondary attack, must always run each frame
-       
+
        if(time < game_starttime)
                return;
 
@@ -367,7 +367,7 @@ void W_Hagar_Attack2_Load(void)
                                self.hagar_warning = true;
                        }
                }
-               
+
                // release if player let go of button or if they've held it in too long
                if(!self.BUTTON_ATCK2 || ((loaded || !enough_ammo) && self.hagar_loadstep < time && WEP_CVAR_SEC(hagar, load_hold) >= 0))
                {
@@ -401,7 +401,7 @@ float W_Hagar(float req)
                                self.BUTTON_ATCK = bot_aim(WEP_CVAR_PRI(hagar, speed), 0, WEP_CVAR_PRI(hagar, lifetime), false);
                        else // not using secondary_speed since these are only 15% and should cause some ricochets without re-aiming
                                self.BUTTON_ATCK2 = bot_aim(WEP_CVAR_PRI(hagar, speed), 0, WEP_CVAR_PRI(hagar, lifetime), false);
-                               
+
                        return true;
                }
                case WR_THINK:
@@ -429,7 +429,7 @@ float W_Hagar(float req)
                                        weapon_thinkf(WFRAME_FIRE2, WEP_CVAR_SEC(hagar, refire), w_ready);
                                }
                        }
-                       
+
                        return true;
                }
                case WR_GONETHINK:
@@ -440,7 +440,7 @@ float W_Hagar(float req)
                                self.weaponentity.state = WS_READY;
                                W_Hagar_Attack2_Load_Release();
                        }
-                       
+
                        return true;
                }
                case WR_INIT:
@@ -463,7 +463,7 @@ float W_Hagar(float req)
                                W_DecreaseAmmo(WEP_CVAR_SEC(hagar, ammo) * self.hagar_load * -1); // give back ammo if necessary
                                self.hagar_load = 0;
                        }
-                       
+
                        return true;
                }
                case WR_CHECKAMMO1:
@@ -493,14 +493,14 @@ float W_Hagar(float req)
                        // if we have any rockets loaded when we die, release them
                        if(self.hagar_load && WEP_CVAR_SEC(hagar, load_releasedeath))
                                W_Hagar_Attack2_Load_Release();
-                               
+
                        return true;
                }
                case WR_RELOAD:
                {
                        if(!self.hagar_load) // require releasing loaded rockets first
                                W_Reload(min(WEP_CVAR_PRI(hagar, ammo), WEP_CVAR_SEC(hagar, ammo)), "weapons/reload.wav");
-                               
+
                        return true;
                }
                case WR_SUICIDEMESSAGE:
@@ -537,7 +537,7 @@ float W_Hagar(float req)
                                else
                                        sound(self, CH_SHOTS, "weapons/hagexp3.wav", VOL_BASE, ATTN_NORM);
                        }
-                       
+
                        return true;
                }
                case WR_INIT:
index c4e80a4..38f0484 100644 (file)
@@ -56,9 +56,9 @@ void W_HLAC_Touch(void)
        PROJECTILE_TOUCH;
 
        self.event_damage = func_null;
-       
+
        isprimary = !(self.projectiledeathtype & HITTYPE_SECONDARY);
-       
+
        RadiusDamage(self, self.realowner, WEP_CVAR_BOTH(hlac, isprimary, damage), WEP_CVAR_BOTH(hlac, isprimary, edgedamage), WEP_CVAR_BOTH(hlac, isprimary, radius), world, world, WEP_CVAR_BOTH(hlac, isprimary, force), self.projectiledeathtype, other);
 
        remove(self);
@@ -149,7 +149,7 @@ void W_HLAC_Attack2(void)
     missile.nextthink = time + WEP_CVAR_SEC(hlac, lifetime);
 
        missile.flags = FL_PROJECTILE;
-       missile.missile_flags = MIF_SPLASH; 
+       missile.missile_flags = MIF_SPLASH;
        missile.projectiledeathtype = WEP_HLAC | HITTYPE_SECONDARY;
 
        CSQCProjectile(missile, true, PROJECTILE_HLAC, true);
@@ -235,7 +235,7 @@ float W_HLAC(float req)
                                        weapon_thinkf(WFRAME_FIRE2, WEP_CVAR_SEC(hlac, animtime), w_ready);
                                }
                        }
-                       
+
                        return true;
                }
                case WR_INIT:
@@ -293,7 +293,7 @@ float W_HLAC(float req)
                        pointparticles(particleeffectnum("laser_impact"), org2, w_backoff * 1000, 1);
                        if(!w_issilent)
                                sound(self, CH_SHOTS, "weapons/laserimpact.wav", VOL_BASE, ATTN_NORM);
-                               
+
                        return true;
                }
                case WR_INIT:
index ada439e..8190411 100644 (file)
@@ -96,7 +96,7 @@ float W_HeavyMachineGun(float req)
                                self.BUTTON_ATCK = bot_aim(1000000, 0, 0.001, false);
                        else
                                self.BUTTON_ATCK2 = bot_aim(1000000, 0, 0.001, false);
-                       
+
                        return true;
                }
                case WR_THINK:
index 976c396..5d52dab 100644 (file)
@@ -112,12 +112,12 @@ void W_Hook_Damage(entity inflictor, entity attacker, float damage, float deatht
 {
        if(self.health <= 0)
                return;
-               
+
        if(!W_CheckProjectileDamage(inflictor.realowner, self.realowner, deathtype, -1)) // no exceptions
-               return; // g_projectiles_damage says to halt    
-       
+               return; // g_projectiles_damage says to halt
+
        self.health = self.health - damage;
-       
+
        if(self.health <= 0)
                W_PrepareExplosionByDamage(self.realowner, W_Hook_Explode2);
 }
@@ -150,7 +150,7 @@ void W_Hook_Attack2(void)
        gren.think = adaptor_think2use_hittype_splash;
        gren.use = W_Hook_Explode2;
        gren.touch = W_Hook_Touch2;
-       
+
        gren.takedamage = DAMAGE_YES;
        gren.health = WEP_CVAR_SEC(hook, health);
        gren.damageforcescale = WEP_CVAR_SEC(hook, damageforcescale);
@@ -176,7 +176,7 @@ void W_Hook_Attack2(void)
 float W_Hook(float req)
 {
        float hooked_time_max, hooked_fuel;
-               
+
        switch(req)
        {
                case WR_AIM:
@@ -196,7 +196,7 @@ float W_Hook(float req)
                                {
                                        W_DecreaseAmmo(WEP_CVAR_PRI(hook, ammo));
                                        self.hook_state |= HOOK_FIRING;
-                                       weapon_thinkf(WFRAME_FIRE1, WEP_CVAR_PRI(hook, animtime), w_ready);                             
+                                       weapon_thinkf(WFRAME_FIRE1, WEP_CVAR_PRI(hook, animtime), w_ready);
                                }
                        }
 
@@ -221,13 +221,13 @@ float W_Hook(float req)
 
                        if(self.hook && self.hook.state == 1)
                        {
-                               hooked_time_max = WEP_CVAR_PRI(hook, hooked_time_max);                  
+                               hooked_time_max = WEP_CVAR_PRI(hook, hooked_time_max);
                                if(hooked_time_max > 0)
                                {
                                        if( time > self.hook_time_hooked + hooked_time_max )
                                                self.hook_state |= HOOK_REMOVING;
                                }
-                               
+
                                hooked_fuel = WEP_CVAR_PRI(hook, hooked_ammo);
                                if(hooked_fuel > 0)
                                {
@@ -253,7 +253,7 @@ float W_Hook(float req)
                        }
                        else
                        {
-                               self.hook_time_hooked = time;                           
+                               self.hook_time_hooked = time;
                                self.hook_time_fueldecrease = time + WEP_CVAR_PRI(hook, hooked_time_free);
                        }
 
@@ -282,7 +282,7 @@ float W_Hook(float req)
                                        self.hook_state &= ~HOOK_WAITING_FOR_RELEASE;
                                }
                        }
-                       
+
                        return true;
                }
                case WR_INIT:
@@ -347,7 +347,7 @@ float W_Hook(float req)
                        pointparticles(particleeffectnum("hookbomb_explode"), org2, '0 0 0', 1);
                        if(!w_issilent)
                                sound(self, CH_SHOTS, "weapons/hookbomb_impact.wav", VOL_BASE, ATTN_NORM);
-                               
+
                        return true;
                }
                case WR_INIT:
index 4ff30d6..14a59e3 100644 (file)
@@ -246,7 +246,7 @@ float W_MachineGun(float req)
                                self.BUTTON_ATCK = bot_aim(1000000, 0, 0.001, false);
                        else
                                self.BUTTON_ATCK2 = bot_aim(1000000, 0, 0.001, false);
-                       
+
                        return true;
                }
                case WR_THINK:
@@ -298,7 +298,7 @@ float W_MachineGun(float req)
                                        weapon_thinkf(WFRAME_FIRE2, WEP_CVAR(machinegun, first_refire), w_ready);
                                }
                        }
-                       
+
                        return true;
                }
                case WR_INIT:
@@ -385,7 +385,7 @@ float W_MachineGun(float req)
                                        sound(self, CH_SHOTS, "weapons/ric2.wav", VOL_BASE, ATTN_NORM);
                                else if(w_random < 0.2)
                                        sound(self, CH_SHOTS, "weapons/ric3.wav", VOL_BASE, ATTN_NORM);
-                                       
+
                        return true;
                }
                case WR_INIT:
index 790dbe0..2fe0172 100644 (file)
@@ -218,7 +218,7 @@ void W_MineLayer_Think(void)
                        self.movetype = MOVETYPE_NONE;
                }
        }
-       
+
        // our lifetime has expired, it's time to die - mine_time just allows us to play a sound for this
        // TODO: replace this mine_trigger.wav sound with a real countdown
        if((time > self.cnt) && (!self.mine_time) && (self.cnt > 0))
@@ -294,15 +294,15 @@ void W_MineLayer_Damage(entity inflictor, entity attacker, float damage, float d
 {
        if(self.health <= 0)
                return;
-               
+
        float is_from_enemy = (inflictor.realowner != self.realowner);
-               
+
        if(!W_CheckProjectileDamage(inflictor.realowner, self.realowner, deathtype, (is_from_enemy ? 1 : -1)))
                return; // g_projectiles_damage says to halt
-               
+
        self.health = self.health - damage;
        self.angles = vectoangles(self.velocity);
-       
+
        if(self.health <= 0)
                W_PrepareExplosionByDamage(attacker, W_MineLayer_Explode);
 }
@@ -375,7 +375,7 @@ void W_MineLayer_Attack(void)
        // common properties
 
        other = mine; MUTATOR_CALLHOOK(EditProjectile);
-       
+
        self.minelayer_mines = W_MineLayer_Count(self);
 }
 
@@ -503,7 +503,7 @@ float W_MineLayer(float req)
                                //      dprint(ftos(desirabledamage),"\n");
                                if(self.BUTTON_ATCK2 == true) self.BUTTON_ATCK = false;
                        }
-                       
+
                        return true;
                }
                case WR_THINK:
@@ -528,7 +528,7 @@ float W_MineLayer(float req)
                                if(W_MineLayer_PlacedMines(true))
                                        sound(self, CH_WEAPON_B, "weapons/mine_det.wav", VOL_BASE, ATTN_NORM);
                        }
-                       
+
                        return true;
                }
                case WR_INIT:
@@ -602,7 +602,7 @@ float W_MineLayer(float req)
                        pointparticles(particleeffectnum("rocket_explode"), org2, '0 0 0', 1);
                        if(!w_issilent)
                                sound(self, CH_SHOTS, "weapons/mine_exp.wav", VOL_BASE, ATTN_NORM);
-                       
+
                        return true;
                }
                case WR_INIT:
index 3b1dde4..34b5e57 100644 (file)
@@ -103,12 +103,12 @@ void W_Mortar_Grenade_Damage(entity inflictor, entity attacker, float damage, fl
 {
        if(self.health <= 0)
                return;
-               
+
        if(!W_CheckProjectileDamage(inflictor.realowner, self.realowner, deathtype, -1)) // no exceptions
                return; // g_projectiles_damage says to halt
-               
+
        self.health = self.health - damage;
-       
+
        if(self.health <= 0)
                W_PrepareExplosionByDamage(attacker, self.use);
 }
@@ -198,10 +198,10 @@ void W_Mortar_Grenade_Touch2(void)
                pointparticles(particleeffectnum("hagar_bounce"), self.origin, self.velocity, 1);
                self.projectiledeathtype |= HITTYPE_BOUNCE;
                self.gl_bouncecnt += 1;
-               
+
                if(WEP_CVAR_SEC(mortar, lifetime_bounce) && self.gl_bouncecnt == 1)
                        self.nextthink = time + WEP_CVAR_SEC(mortar, lifetime_bounce);
-                       
+
        }
        else if(WEP_CVAR_SEC(mortar, type) == 2 && (!other || (other.takedamage != DAMAGE_AIM && other.movetype == MOVETYPE_NONE))) // stick
        {
@@ -346,7 +346,7 @@ float W_Mortar(float req)
                                        if(random() < 0.02) self.bot_secondary_grenademooth = 0;
                                }
                        }
-                       
+
                        return true;
                }
                /*case WR_CALCINFO:
@@ -357,11 +357,11 @@ float W_Mortar(float req)
 
                        // for the range calculation, closer to 1 is better
                        wepinfo_pri_range_max = 2000 * wepinfo_pri_speed;
-                       wepinfo_pri_range = wepinfo_pri_speed * WEP_CVAR_PRI(mortar, 
-                       
+                       wepinfo_pri_range = wepinfo_pri_speed * WEP_CVAR_PRI(mortar,
+
                        wepinfo_sec_refire = max3(sys_frametime, WEP_CVAR_SEC(mortar, refire), WEP_CVAR_SEC(mortar, animtime));
                        wepinfo_sec_dps = (WEP_CVAR_SEC(mortar, damage) * (1 / wepinfo_sec_refire));
-                       
+
                        wepinfo_sec_dps = (WEP_CVAR_SEC(mortar, damage) * (1 / max3(sys_frametime, WEP_CVAR_SEC(mortar, refire), WEP_CVAR_SEC(mortar, animtime))));
                        wepinfo_ter_dps = 0;
                        */
@@ -399,7 +399,7 @@ float W_Mortar(float req)
                                        weapon_thinkf(WFRAME_FIRE2, WEP_CVAR_SEC(mortar, animtime), w_ready);
                                }
                        }
-                       
+
                        return true;
                }
                case WR_INIT:
@@ -470,7 +470,7 @@ float W_Mortar(float req)
                        pointparticles(particleeffectnum("grenade_explode"), org2, '0 0 0', 1);
                        if(!w_issilent)
                                sound(self, CH_SHOTS, "weapons/grenade_impact.wav", VOL_BASE, ATTN_NORM);
-                               
+
                        return true;
                }
                case WR_INIT:
index a5c95aa..0010449 100644 (file)
@@ -255,11 +255,11 @@ void W_Porto_Attack(float type)
        gren.scale = 4;
        setorigin(gren, w_shotorg);
        setsize(gren, '0 0 0', '0 0 0');
-       
+
        gren.nextthink = time + WEP_CVAR_BOTH(porto, (type <= 0), lifetime);
        gren.think = W_Porto_Think;
        gren.touch = W_Porto_Touch;
-       
+
        if(self.items & IT_STRENGTH)
                W_SetupProjVelocity_Basic(gren, WEP_CVAR_BOTH(porto, (type <= 0), speed) * autocvar_g_balance_powerup_strength_force, 0);
        else
@@ -290,7 +290,7 @@ float W_Porto(float req)
        //vector v_angle_save;
 
        if(g_nexball) { return w_nexball_weapon(req); }
-       
+
        switch(req)
        {
                case WR_AIM:
@@ -300,7 +300,7 @@ float W_Porto(float req)
                        if(!WEP_CVAR(porto, secondary))
                                if(bot_aim(WEP_CVAR_PRI(porto, speed), 0, WEP_CVAR_PRI(porto, lifetime), false))
                                        self.BUTTON_ATCK = true;
-                                       
+
                        return true;
                }
                case WR_CONFIG:
@@ -363,7 +363,7 @@ float W_Porto(float req)
                                        weapon_thinkf(WFRAME_FIRE1, WEP_CVAR_PRI(porto, animtime), w_ready);
                                }
                        }
-                       
+
                        return true;
                }
                case WR_INIT:
index aa3c74a..ccc87fd 100644 (file)
@@ -136,7 +136,7 @@ void W_Rifle_BulletHail(float mode, void(void) AttackFunc, float fr, float animt
 float W_Rifle(float req)
 {
        float ammo_amount;
-       
+
        switch(req)
        {
                case WR_AIM:
@@ -161,7 +161,7 @@ float W_Rifle(float req)
                                        if(random() < 0.03) self.bot_secondary_riflemooth = 0;
                                }
                        }
-                       
+
                        return true;
                }
                case WR_THINK:
@@ -198,7 +198,7 @@ float W_Rifle(float req)
                                        }
                                }
                        }
-                       
+
                        return true;
                }
                case WR_INIT:
@@ -282,7 +282,7 @@ float W_Rifle(float req)
                                else if(w_random < 0.5)
                                        sound(self, CH_SHOTS, "weapons/ric3.wav", VOL_BASE, ATTN_NORM);
                        }
-                       
+
                        return true;
                }
                case WR_INIT:
index 15b4545..24b8634 100644 (file)
@@ -121,24 +121,24 @@ void W_Shockwave_Melee_Think(void)
        // set start time of melee
        if(!self.cnt)
        {
-               self.cnt = time; 
+               self.cnt = time;
                W_PlayStrengthSound(self.realowner);
        }
 
        // update values for v_* vectors
        makevectors(self.realowner.v_angle);
-       
+
        // calculate swing percentage based on time
        meleetime = WEP_CVAR(shockwave, melee_time) * W_WeaponRateFactor();
        swing = bound(0, (self.cnt + meleetime - time) / meleetime, 10);
        f = ((1 - swing) * WEP_CVAR(shockwave, melee_traces));
-       
-       // perform the traces needed for this frame 
+
+       // perform the traces needed for this frame
        for(i=self.swing_prev; i < f; ++i)
        {
                swing_factor = ((1 - (i / WEP_CVAR(shockwave, melee_traces))) * 2 - 1);
-               
-               targpos = (self.realowner.origin + self.realowner.view_ofs 
+
+               targpos = (self.realowner.origin + self.realowner.view_ofs
                        + (v_forward * WEP_CVAR(shockwave, melee_range))
                        + (v_up * swing_factor * WEP_CVAR(shockwave, melee_swing_up))
                        + (v_right * swing_factor * WEP_CVAR(shockwave, melee_swing_side)));
@@ -151,22 +151,22 @@ void W_Shockwave_Melee_Think(void)
                        self.realowner,
                        ANTILAG_LATENCY(self.realowner)
                );
-               
+
                // draw lightning beams for debugging
 #ifdef DEBUG_SHOCKWAVE
-               te_lightning2(world, targpos, self.realowner.origin + self.realowner.view_ofs + v_forward * 5 - v_up * 5); 
+               te_lightning2(world, targpos, self.realowner.origin + self.realowner.view_ofs + v_forward * 5 - v_up * 5);
                te_customflash(targpos, 40,  2, '1 1 1');
 #endif
-               
+
                is_player = (IS_PLAYER(trace_ent) || trace_ent.classname == "body" || (trace_ent.flags & FL_MONSTER));
 
                if((trace_fraction < 1) // if trace is good, apply the damage and remove self if necessary
-                       && (trace_ent.takedamage == DAMAGE_AIM)  
+                       && (trace_ent.takedamage == DAMAGE_AIM)
                        && (trace_ent != self.swing_alreadyhit)
                        && (is_player || WEP_CVAR(shockwave, melee_nonplayerdamage)))
                {
                        target_victim = trace_ent; // so it persists through other calls
-                       
+
                        if(is_player) // this allows us to be able to nerf the non-player damage done in e.g. assault or onslaught
                                swing_damage = (WEP_CVAR(shockwave, melee_damage) * min(1, swing_factor + 1));
                        else
@@ -176,10 +176,10 @@ void W_Shockwave_Melee_Think(void)
                        Damage(
                                target_victim,
                                self.realowner,
-                               self.realowner, 
+                               self.realowner,
                                swing_damage,
-                               (WEP_SHOCKWAVE | HITTYPE_SECONDARY), 
-                               (self.realowner.origin + self.realowner.view_ofs), 
+                               (WEP_SHOCKWAVE | HITTYPE_SECONDARY),
+                               (self.realowner.origin + self.realowner.view_ofs),
                                (v_forward * WEP_CVAR(shockwave, melee_force))
                        );
 
@@ -211,7 +211,7 @@ void W_Shockwave_Melee_Think(void)
                        }
                }
        }
-       
+
        if(time >= self.cnt + meleetime)
        {
                // melee is finished
@@ -220,7 +220,7 @@ void W_Shockwave_Melee_Think(void)
        }
        else
        {
-               // set up next frame 
+               // set up next frame
                self.swing_prev = i;
                self.nextthink = time;
        }
@@ -249,7 +249,7 @@ float W_Shockwave_Attack_CheckSpread(
        float spreadlimit;
        float distance_of_attack = vlen(sw_shotorg - attack_endpos);
        float distance_from_line = vlen(targetorg - nearest_on_line);
-       
+
        spreadlimit = (distance_of_attack ? min(1, (vlen(sw_shotorg - nearest_on_line) / distance_of_attack)) : 1);
        spreadlimit =
                (
@@ -315,7 +315,7 @@ float W_Shockwave_Attack_CheckHit(
 {
        if(!head) { return false; }
        float i;
-       
+
        for(i = 0; i <= queue; ++i)
        {
                if(shockwave_hit[i] == head)
@@ -357,7 +357,7 @@ void W_Shockwave_Attack(void)
        entity head;
 
        float i, queue = 0;
-       
+
        // set up the shot direction
        W_SetupShot(self, false, 3, "weapons/lasergun_fire.wav", CH_WEAPON_B, WEP_CVAR(shockwave, blast_damage));
        vector attack_endpos = (w_shotorg + (w_shotdir * WEP_CVAR(shockwave, blast_distance)));
@@ -389,19 +389,19 @@ void W_Shockwave_Attack(void)
                ),
                false
        );
-       
+
        while(head)
        {
                if(head.takedamage)
                {
                        float distance_to_head = vlen(attack_hitpos - head.WarpZone_findradius_nearest);
-                       
+
                        if((head == self) && (distance_to_head <= WEP_CVAR(shockwave, blast_jump_radius)))
                        {
                                // ========================
                                //  BLAST JUMP CALCULATION
                                // ========================
-                               
+
                                // calculate importance of distance and accuracy for this attack
                                multiplier_from_accuracy = (1 -
                                        (distance_to_head ?
@@ -477,7 +477,7 @@ void W_Shockwave_Attack(void)
                                // ==========================
                                //  BLAST SPLASH CALCULATION
                                // ==========================
-                               
+
                                // calculate importance of distance and accuracy for this attack
                                multiplier_from_accuracy = (1 -
                                        (distance_to_head ?
@@ -549,14 +549,14 @@ void W_Shockwave_Attack(void)
                        //  BLAST CONE CALCULATION
                        // ========================
 
-                       // if it's a player, use the view origin as reference (stolen from RadiusDamage functions in g_damage.qc) 
+                       // if it's a player, use the view origin as reference (stolen from RadiusDamage functions in g_damage.qc)
                        center = CENTER_OR_VIEWOFS(head);
 
                        // find the closest point on the enemy to the center of the attack
                        float ang; // angle between shotdir and h
                        float h; // hypotenuse, which is the distance between attacker to head
                        float a; // adjacent side, which is the distance between attacker and the point on w_shotdir that is closest to head.origin
-                       
+
                        h = vlen(center - self.origin);
                        ang = acos(dotproduct(normalize(center - self.origin), w_shotdir));
                        a = h * cos(ang);
@@ -565,7 +565,7 @@ void W_Shockwave_Attack(void)
                        vector nearest_on_line = (w_shotorg + a * w_shotdir);
                        vector nearest_to_attacker = WarpZoneLib_NearestPointOnBox(center + head.mins, center + head.maxs, nearest_on_line);
 
-                       if((vlen(head.WarpZone_findradius_dist) <= WEP_CVAR(shockwave, blast_distance)) 
+                       if((vlen(head.WarpZone_findradius_dist) <= WEP_CVAR(shockwave, blast_distance))
                                && (W_Shockwave_Attack_IsVisible(head, nearest_on_line, w_shotorg, attack_endpos)))
                        {
                                // calculate importance of distance and accuracy for this attack
@@ -635,7 +635,7 @@ void W_Shockwave_Attack(void)
                head = shockwave_hit[i-1];
                final_force = shockwave_hit_force[i-1];
                final_damage = shockwave_hit_damage[i-1];
-               
+
                Damage(
                        head,
                        self,
@@ -660,7 +660,7 @@ void W_Shockwave_Attack(void)
                        vlen(final_force)
                ));
                #endif
-               
+
                shockwave_hit[i-1] = world;
                shockwave_hit_force[i-1] = '0 0 0';
                shockwave_hit_damage[i-1] = 0;
@@ -677,7 +677,7 @@ float W_Shockwave(float req)
                                { self.BUTTON_ATCK2 = bot_aim(1000000, 0, 0.001, false); }
                        else
                                { self.BUTTON_ATCK = bot_aim(1000000, 0, 0.001, false); }
-                       
+
                        return true;
                }
                case WR_THINK:
@@ -704,7 +704,7 @@ float W_Shockwave(float req)
                                        weapon_thinkf(WFRAME_FIRE1, 0, W_Shockwave_Melee);
                                }
                        }
-                       
+
                        return true;
                }
                case WR_INIT:
@@ -798,7 +798,7 @@ void Draw_Shockwave()
                new_max_dist = vlen(new_min_end - endpos);
                new_max_end = (new_min_end + (deviation * new_max_dist));
                //te_lightning2(world, new_end, prev_min_end);
-               
+
 
                if(counter == 0)
                {
@@ -853,7 +853,7 @@ void Net_ReadShockwaveParticle(void)
        entity shockwave;
        shockwave = spawn();
        shockwave.draw = Draw_Shockwave;
-       
+
        shockwave.sw_shotorg_x = ReadCoord(); shockwave.sw_shotorg_y = ReadCoord(); shockwave.sw_shotorg_z = ReadCoord();
        shockwave.sw_shotdir_x = ReadCoord(); shockwave.sw_shotdir_y = ReadCoord(); shockwave.sw_shotdir_z = ReadCoord();
 
index 7f54543..5415b4a 100644 (file)
@@ -280,7 +280,7 @@ float W_Shotgun(float req)
                                // attempt forcing playback of the anim by switching to another anim (that we never play) here...
                                weapon_thinkf(WFRAME_FIRE1, 0, W_Shotgun_Attack2);
                        }
-                       
+
                        return true;
                }
                case WR_INIT:
index 5495994..0b70b85 100644 (file)
@@ -382,7 +382,7 @@ float W_Tuba(float req)
                                else
                                        self.BUTTON_ATCK2 = 1;
                        }
-                       
+
                        return true;
                }
                case WR_THINK:
@@ -411,7 +411,7 @@ float W_Tuba(float req)
                                        self = oldself;
                                }
                        }
-                       
+
                        return true;
                }
                case WR_INIT:
@@ -457,7 +457,7 @@ float W_Tuba(float req)
                                self.weaponentity.state = WS_INUSE;
                                weapon_thinkf(WFRAME_RELOAD, 0.5, w_ready);
                        }
-                       
+
                        return true;
                }
                case WR_CHECKAMMO1:
index 869c8ec..0e78dba 100644 (file)
@@ -113,7 +113,7 @@ void W_Vaporizer_Attack(void)
                                WarpZone_TrailParticles(world, particleeffectnum("TE_TEI_G3"), w_shotorg, v);
                        break;
        }
-       
+
        W_DecreaseAmmo(((g_instagib) ? 1 : WEP_CVAR_PRI(vaporizer, ammo)));
 }
 
@@ -133,7 +133,7 @@ float W_Vaporizer(float req)
                                self.BUTTON_ATCK = bot_aim(1000000, 0, 1, false);
                        else
                                self.BUTTON_ATCK2 = bot_aim(WEP_CVAR_SEC(vaporizer, speed), 0, WEP_CVAR_SEC(vaporizer, lifetime), false); // WEAPONTODO: replace with proper vaporizer cvars
-                               
+
                        return true;
                }
                case WR_THINK:
@@ -158,7 +158,7 @@ float W_Vaporizer(float req)
                                {
                                        // handle refire manually, so that primary and secondary can be fired without conflictions (important for instagib)
                                        self.jump_interval = time + WEP_CVAR_SEC(vaporizer, refire) * W_WeaponRateFactor();
-                                       
+
                                        // decrease ammo for the laser?
                                        if(WEP_CVAR_SEC(vaporizer, ammo))
                                                W_DecreaseAmmo(WEP_CVAR_SEC(vaporizer, ammo));
@@ -176,12 +176,12 @@ float W_Vaporizer(float req)
                                                WEP_CVAR_SEC(vaporizer, delay),
                                                WEP_CVAR_SEC(vaporizer, lifetime)
                                        );
-                                       
+
                                        // now do normal refire
                                        weapon_thinkf(WFRAME_FIRE2, WEP_CVAR_SEC(vaporizer, animtime), w_ready);
                                }
                        }
-                       
+
                        return true;
                }
                case WR_INIT:
index f421786..3742564 100644 (file)
@@ -76,7 +76,7 @@ void SendCSQCVortexBeamParticle(float charge) {
 void W_Vortex_Attack(float issecondary)
 {
        float mydmg, myforce, mymindist, mymaxdist, myhalflife, myforcehalflife, myammo, charge;
-       
+
        mydmg = WEP_CVAR_BOTH(vortex, !issecondary, damage);
        myforce = WEP_CVAR_BOTH(vortex, !issecondary, force);
        mymindist = WEP_CVAR_BOTH(vortex, !issecondary, damagefalloff_mindist);
@@ -110,7 +110,7 @@ void W_Vortex_Attack(float issecondary)
        FireRailgunBullet(w_shotorg, w_shotorg + w_shotdir * MAX_SHOT_DISTANCE, mydmg, myforce, mymindist, mymaxdist, myhalflife, myforcehalflife, WEP_VORTEX);
 
        if(yoda && flying)
-               Send_Notification(NOTIF_ONE, self, MSG_ANNCE, ANNCE_ACHIEVEMENT_YODA); 
+               Send_Notification(NOTIF_ONE, self, MSG_ANNCE, ANNCE_ACHIEVEMENT_YODA);
 
        //beam and muzzle flash done on client
        SendCSQCVortexBeamParticle(charge);
@@ -142,7 +142,7 @@ float W_Vortex(float req)
                {
                        if(WEP_CVAR(vortex, charge) && self.vortex_charge < WEP_CVAR(vortex, charge_limit))
                                self.vortex_charge = min(1, self.vortex_charge + WEP_CVAR(vortex, charge_rate) * frametime / W_TICSPERFRAME);
-                               
+
                        if(WEP_CVAR_SEC(vortex, chargepool))
                                if(self.vortex_chargepool_ammo < 1)
                                {
@@ -237,7 +237,7 @@ float W_Vortex(float req)
                                        }
                                }
                        }
-                       
+
                        return true;
                }
                case WR_INIT:
@@ -309,7 +309,7 @@ float W_Vortex(float req)
                        pointparticles(particleeffectnum("nex_impact"), org2, '0 0 0', 1);
                        if(!w_issilent)
                                sound(self, CH_SHOTS, "weapons/neximpact.wav", VOL_BASE, ATTN_NORM);
-                               
+
                        return true;
                }
                case WR_INIT:
index 15b6409..b9079a5 100644 (file)
@@ -232,7 +232,7 @@ string W_UndeprecateName(string s)
        switch ( s )
        {
                case "nex"            : return "vortex";
-               case "rocketlauncher" : return "devastator"; 
+               case "rocketlauncher" : return "devastator";
                case "laser"          : return "blaster";
                case "minstanex"      : return "vaporizer";
                case "grenadelauncher": return "mortar";
@@ -372,4 +372,4 @@ int GetAmmoStat(.float ammotype)
        }
 }
 #endif
-#endif
\ No newline at end of file
+#endif
index 3868ac3..2835c47 100644 (file)
@@ -209,4 +209,4 @@ void register_weapons_done();
 #undef REGISTER_WEAPON
 
 ACCUMULATE_FUNCTION(RegisterWeapons, register_weapons_done);
-#endif
\ No newline at end of file
+#endif
index c527cc1..c2aca6f 100644 (file)
@@ -52,4 +52,4 @@ void CSQCModel_InterpolateAnimation_1To2_Note(float sf, float set_times);
 void CSQCModel_InterpolateAnimation_2To4_Do();
 void CSQCModel_InterpolateAnimation_1To2_Do();
 // will overwrite lerpfrac, lerpfrac3, lerpfrac4, and possibly clear frame*time if they are undisplayed according to lerpfracs
-#endif
\ No newline at end of file
+#endif
index f656d64..55e63cf 100644 (file)
@@ -38,4 +38,4 @@ void CSQCPlayer_SetCamera();
 float CSQCPlayer_PreUpdate();
 float CSQCPlayer_PostUpdate();
 float CSQCPlayer_IsLocalPlayer();
-#endif
\ No newline at end of file
+#endif
index 2cb2514..de02e7a 100644 (file)
@@ -94,4 +94,4 @@ const int CSQCMODEL_PROPERTY_SIZE = 32768;
 #else
 #define ALLPROPERTIES ALLPROPERTIES_COMMON
 #endif
-#endif
\ No newline at end of file
+#endif
index 912d83c..5ee5785 100644 (file)
@@ -49,4 +49,4 @@ void InterpolateOrigin_Do();
 
 // in case we interpolate that:
 .vector v_angle;
-#endif
\ No newline at end of file
+#endif
index 41a04fe..73f1e79 100644 (file)
@@ -27,4 +27,4 @@ const float CSQCPLAYER_FORCE_UPDATES = 0.25;
 //vector PL_CROUCH_MIN  = ...;
 //vector PL_CROUCH_MAX  = ...;
 //vector PL_CROUCH_VIEW_OFS  = ...;
-#endif
\ No newline at end of file
+#endif
index 4b9293e..73e03e8 100644 (file)
@@ -41,4 +41,4 @@ void CSQCModel_UnlinkEntity();
 #undef CSQCMODEL_PROPERTY
 #undef CSQCMODEL_ENDIF
 #undef CSQCMODEL_IF
-#endif
\ No newline at end of file
+#endif
index 23196be..516a8cc 100644 (file)
@@ -1444,4 +1444,4 @@ vector gettaginfo_forward;
 vector gettaginfo_right;
 vector gettaginfo_up;
 float checkpvs(vector viewpos, entity viewee) = #240;
-#endif
\ No newline at end of file
+#endif
index 6c562fc..d01371c 100644 (file)
@@ -147,4 +147,4 @@ float K_MOUSE13             =       526;
 float K_MOUSE14                =       527;
 float K_MOUSE15                =       528;
 float K_MOUSE16                =       529;
-#endif
\ No newline at end of file
+#endif
index 7ef7101..be17852 100644 (file)
@@ -566,4 +566,4 @@ string      getextresponse(void) = #624;
 const string cvar_string(string name) = #71;
 const string cvar_defstring(string name) = #89;
 float  stringwidth(string text, float handleColors, vector size) = #468;
-#endif
\ No newline at end of file
+#endif
index fadb67d..30ebe1b 100644 (file)
@@ -505,4 +505,4 @@ void(entity e) setspawnparms                = #78;          // set parm1... to the
                                                                                                // for coop respawn
 
 //============================================================================
-#endif
\ No newline at end of file
+#endif
index 0a94a9a..364b136 100644 (file)
@@ -2,4 +2,4 @@
 #define MENU_CMD_H
 
 void GameCommand(string command);
-#endif
\ No newline at end of file
+#endif
index ec8f858..873ccb6 100644 (file)
@@ -41,4 +41,4 @@ vector globalToBoxSize(vector v, vector scale);
 
 float draw_TextWidth_WithColors(string s, vector size);
 float draw_TextWidth_WithoutColors(string s, vector size);
-#endif
\ No newline at end of file
+#endif
index ba8db39..55af8ad 100644 (file)
@@ -28,4 +28,4 @@ entity spawnObject()
                Object_vtbl = spawnVtbl(e, null_entity);
        return e;
 }
-#endif
\ No newline at end of file
+#endif
index 6eced2f..42a74be 100644 (file)
@@ -29,4 +29,4 @@
 
 // for the implementation
 #define SUPER(cname) (cname##_vtbl.vtblbase)
-#endif
\ No newline at end of file
+#endif
index cdc469a..e24bb3f 100644 (file)
@@ -26,4 +26,4 @@
 #define ATTRIBARRAY(cname,name,type,cnt)   .type name[cnt];
 #define ENDCLASS(cname)                    .float instanceOf##cname;
 #define SUPER(cname)
-#endif
\ No newline at end of file
+#endif
index dc74a02..e18aacd 100644 (file)
@@ -34,4 +34,4 @@ xonotic/util.qc
 
 ../common/weapons/weapons.qc // TODO
 
-../warpzonelib/mathlib.qc
\ No newline at end of file
+../warpzonelib/mathlib.qc
index f192568..84f9029 100644 (file)
@@ -27,4 +27,4 @@
 #undef SKINFLOAT
 #undef SKINVECTOR
 #undef SKINBEGIN
-#endif
\ No newline at end of file
+#endif
index aaa78d9..2b4120e 100644 (file)
@@ -2,4 +2,4 @@
 #define SYS_POST_H
 
 #pragma noref 0
-#endif
\ No newline at end of file
+#endif
index 8fa3faa..333d5c6 100644 (file)
@@ -2,4 +2,4 @@
 #define SYS_PRE_H
 
 #pragma noref 1
-#endif
\ No newline at end of file
+#endif
index a9e57b5..04c67e7 100644 (file)
@@ -31,7 +31,7 @@ void GameType_ConfigureSliders(entity e, entity l, string pLabel, float pMin, fl
        else
        {
                e.configureXonoticTextSlider(e, pCvar);
-               
+
                // clear old values
                float i;
                for(i = 0; i <= e.nValues; ++i);
index a0b49b1..1ec0c76 100644 (file)
@@ -5,7 +5,7 @@ CLASS(XonoticMediaTab) EXTENDS(XonoticTab)
        ATTRIB(XonoticMediaTab, intendedWidth, float, 0.9)
        ATTRIB(XonoticMediaTab, rows, float, 23)
        ATTRIB(XonoticMediaTab, columns, float, 3)
-       ATTRIB(XonoticMediaTab, name, string, "Media")  
+       ATTRIB(XonoticMediaTab, name, string, "Media")
 ENDCLASS(XonoticMediaTab)
 entity makeXonoticMediaTab();
 #endif
index 6132719..89a76b6 100644 (file)
@@ -6,7 +6,7 @@ CLASS(XonoticScreenshotBrowserTab) EXTENDS(XonoticTab)
        ATTRIB(XonoticScreenshotBrowserTab, rows, float, 21)
        ATTRIB(XonoticScreenshotBrowserTab, columns, float, 6.5)
        ATTRIB(XonoticScreenshotBrowserTab, name, string, "ScreenshotBrowser")
-       
+
        METHOD(XonoticScreenshotBrowserTab, loadPreviewScreenshot, void(entity, string))
        ATTRIB(XonoticScreenshotBrowserTab, screenshotImage, entity, NULL)
        ATTRIB(XonoticScreenshotBrowserTab, currentScrPath, string, string_null)
@@ -51,7 +51,7 @@ void XonoticScreenshotBrowserTab_fill(entity me)
                me.TD(me, 1, 1, e = makeXonoticButton(_("Refresh"), '0 0 0'));
                        e.onClick = ScreenshotList_Refresh_Click;
                        e.onClickEntity = slist;
-                       
+
        /*me.TR(me);
                me.TD(me, 1, 0.5, e = makeXonoticTextLabel(0, "Filter:"));
                me.TD(me, 1, me.columns - 1.5, e = makeXonoticInputBox(0, string_null));
@@ -62,7 +62,7 @@ void XonoticScreenshotBrowserTab_fill(entity me)
                me.TD(me, 1, 1, e = makeXonoticButton(_("Refresh"), '0 0 0'));
                        e.onClick = ScreenshotList_Refresh_Click;
                        e.onClickEntity = slist;*/
-                       
+
        me.gotoRC(me, 1.5, 0);
                me.TD(me, me.rows - 2.5, me.columns, slist);
 
index 73b5e33..bf891ac 100644 (file)
@@ -114,7 +114,7 @@ void XonoticProfileTab_fill(entity me)
                me.TD(me, 1, 2.5, e = makeXonoticCheckBox(0, "cl_allow_uid2name", _("Allow player statistics to use your nickname")));
                setDependent(e, "cl_allow_uidtracking", 1, 1);
        me.gotoRC(me, 4, 3.1); // TOP RIGHT
-       //me.gotoRC(me, 12.5, 3.1); // BOTTOM RIGHT 
+       //me.gotoRC(me, 12.5, 3.1); // BOTTOM RIGHT
        //me.gotoRC(me, 12.5, 0); // BOTTOM LEFT
                me.TDempty(me, 0.25);
                me.TD(me, 9, 2.5, statslist = makeXonoticStatsList());
index 2f48c2a..5fb563e 100644 (file)
@@ -22,7 +22,7 @@ void XonoticGameSettingsTab_fill(entity me)
 {
        entity mc;
        mc = makeXonoticTabController(me.rows - 2.5);
-       
+
        me.TR(me);
                me.TDempty(me, 0.25);
                me.TD(me, 1, 1, mc.makeTabButton(mc, _("View"),           makeXonoticGameViewSettingsTab()));
@@ -34,13 +34,13 @@ void XonoticGameSettingsTab_fill(entity me)
 
        me.gotoRC(me, 1.5, 0);
                me.TD(me, me.rows - 1.5, me.columns, mc);
-               
+
        /*
 
          makeXonoticGameViewSettingsTab()));
          makeXonoticGameGeneralSettingsTab()));
        makeXonoticGameCrosshairSettingsTab()));
-       
+
               makeXonoticGameWeaponSettingsTab()));
        l"),   makeXonoticGamePlayermodelSettingsTab()));
               makeXonoticGameHUDSettingsTab()));
index 3e164c1..7e34151 100644 (file)
@@ -99,7 +99,7 @@ void XonoticGameCrosshairSettingsTab_fill(entity me)
                        setDependentAND(e, "crosshair_ring", 1, 1, "crosshair_enabled", 1, 2);
                me.TD(me, 1, 1.8, e = makeXonoticSlider(0.1, 1, 0.1, "crosshair_ring_alpha"));
                        setDependentAND(e, "crosshair_ring", 1, 1, "crosshair_enabled", 1, 2);
-       
+
        me.gotoRC(me, 0, 3.2); me.setFirstColumn(me, me.currentColumn);
                me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "crosshair_dot", _("Enable center crosshair dot")));
                setDependent(e, "crosshair_enabled", 1, 2);
@@ -152,9 +152,9 @@ void XonoticGameCrosshairSettingsTab_fill(entity me)
                        e.addValue(e, ZCTX(_("HTTST^Enemies")), "1.25");
                        e.configureXonoticTextSliderValues(e);
                        setDependent(e, "crosshair_enabled", 1, 2);*/
-                       
+
        /*me.TR(me);
-                       
+
        me.gotoRC(me, me.rows - 1, 0);
                me.TD(me, 1, me.columns, e = makeXonoticButton(_("OK"), '0 0 0'));
                        e.onClick = Dialog_Close;
index 4f1ac65..f1707bd 100644 (file)
@@ -96,10 +96,10 @@ void XonoticGameMessageSettingsTab_fill(entity me)
                        makeMulti(e, "notification_CENTER_POWERUP_SHIELD notification_CENTER_POWERUP_SPEED notification_CENTER_POWERUP_STRENGTH notification_CENTER_POWERDOWN_INVISIBILITY notification_CENTER_POWERDOWN_SHIELD notification_CENTER_POWERDOWN_SPEED notification_CENTER_POWERDOWN_STRENGTH notification_CENTER_SUPERWEAPON_BROKEN notification_CENTER_SUPERWEAPON_LOST notification_CENTER_SUPERWEAPON_PICKUP notification_INFO_POWERUP_INVISIBILITY notification_INFO_POWERUP_SHIELD notification_INFO_POWERUP_SPEED notification_INFO_POWERUP_STRENGTH");
        me.TR(me);
                me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "notification_CENTER_ITEM_WEAPON_DONTHAVE", _("Weapon centerprint notifications")));
-                       makeMulti(e, "notification_CENTER_ITEM_WEAPON_DROP notification_CENTER_ITEM_WEAPON_GOT notification_CENTER_ITEM_WEAPON_NOAMMO notification_CENTER_ITEM_WEAPON_PRIMORSEC notification_CENTER_ITEM_WEAPON_UNAVAILABLE"); 
+                       makeMulti(e, "notification_CENTER_ITEM_WEAPON_DROP notification_CENTER_ITEM_WEAPON_GOT notification_CENTER_ITEM_WEAPON_NOAMMO notification_CENTER_ITEM_WEAPON_PRIMORSEC notification_CENTER_ITEM_WEAPON_UNAVAILABLE");
        me.TR(me);
                me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "notification_INFO_ITEM_WEAPON_DONTHAVE", _("Weapon info message notifications")));
-                       makeMulti(e, "notification_INFO_ITEM_WEAPON_DROP notification_INFO_ITEM_WEAPON_GOT notification_INFO_ITEM_WEAPON_NOAMMO notification_INFO_ITEM_WEAPON_PRIMORSEC notification_INFO_ITEM_WEAPON_UNAVAILABLE"); 
+                       makeMulti(e, "notification_INFO_ITEM_WEAPON_DROP notification_INFO_ITEM_WEAPON_GOT notification_INFO_ITEM_WEAPON_NOAMMO notification_INFO_ITEM_WEAPON_PRIMORSEC notification_INFO_ITEM_WEAPON_UNAVAILABLE");
 
        me.gotoRC(me, 9, 3.2); me.setFirstColumn(me, me.currentColumn);
                me.TD(me, 1, 3, e = makeXonoticHeaderLabel(_("Announcers")));
index c2aedc1..1f9a23f 100644 (file)
@@ -28,7 +28,7 @@ void XonoticGameModelSettingsTab_fill(entity me)
 {
        entity e;
        //float i;
-       
+
        // Note that this is pretty terrible currently due to the lack of options for this tab...
        // There is really not many other decent places for these options, additionally
        // later I would like quite a few more options in this tab.
index 3fd4512..44e7419 100644 (file)
@@ -71,7 +71,7 @@ void XonoticGameViewSettingsTab_fill(entity me)
        me.TR(me);
        me.TR(me);
                me.TD(me, 1, 3, e = makeXonoticCheckBox(1, "cl_clippedspectating", _("Allow passing through walls while spectating")));
-       
+
        me.gotoRC(me, 0, 3.2); me.setFirstColumn(me, me.currentColumn);
                me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Field of view:")));
                me.TD(me, 1, 2, e = makeXonoticSlider(60, 130, 5, "fov"));
index a3b7963..45f493b 100644 (file)
@@ -83,7 +83,7 @@ void XonoticGametypeList_drawListBoxItem(entity me, float i, vector absSize, flo
 
        draw_Picture(me.columnIconOrigin * eX, GameType_GetIcon(i), me.columnIconSize * eX + eY, '1 1 1', SKINALPHA_LISTBOX_SELECTED);
        s1 = GameType_GetName(i);
-       
+
        if(_MapInfo_GetTeamPlayBool(GameType_GetID(i)))
                s2 = _("teamplay");
        else
index 6fa40bf..45a0f93 100644 (file)
@@ -117,11 +117,11 @@ void MainWindow_configureMainWindow(entity me)
        i = spawnXonoticHUDInfoMessagesDialog();
        i.configureDialog(i);
        me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
-       
+
        i = spawnXonoticHUDPhysicsDialog();
        i.configureDialog(i);
        me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
-       
+
        me.screenshotViewerDialog = i = spawnXonoticScreenshotViewerDialog();
        i.configureDialog(i);
        me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
@@ -143,7 +143,7 @@ void MainWindow_configureMainWindow(entity me)
        me.cvarsDialog = i = spawnXonoticCvarsDialog();
        i.configureDialog(i);
        me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
-       
+
        me.resetDialog = i = spawnXonoticResetDialog();
        i.configureDialog(i);
        me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
@@ -167,7 +167,7 @@ void MainWindow_configureMainWindow(entity me)
        me.serverInfoDialog = i = spawnXonoticServerInfoDialog();
        i.configureDialog(i);
        me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
-       
+
        me.demostartconfirmDialog = i = spawnXonoticDemoStartConfirmDialog();
        i.configureDialog(i);
        me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
index 98f0aba..db0fbfe 100644 (file)
@@ -65,14 +65,14 @@ entity makeXonoticServerList();
 
 #ifndef IMPLEMENTATION
 float autocvar_menu_slist_categories;
-float autocvar_menu_slist_categories_onlyifmultiple; 
+float autocvar_menu_slist_categories_onlyifmultiple;
 float autocvar_menu_slist_purethreshold;
 float autocvar_menu_slist_modimpurity;
 float autocvar_menu_slist_recommendations;
 float autocvar_menu_slist_recommendations_maxping;
-float autocvar_menu_slist_recommendations_minfreeslots; 
+float autocvar_menu_slist_recommendations_minfreeslots;
 float autocvar_menu_slist_recommendations_minhumans;
-float autocvar_menu_slist_recommendations_purethreshold; 
+float autocvar_menu_slist_recommendations_purethreshold;
 
 // server cache fields
 #define SLIST_FIELDS \
@@ -111,7 +111,7 @@ float IsServerInList(string list, string srv);
 entity RetrieveCategoryEnt(float catnum);
 
 float CheckCategoryOverride(float cat);
-float CheckCategoryForEntry(float entry); 
+float CheckCategoryForEntry(float entry);
 float m_gethostcachecategory(float entry) { return CheckCategoryOverride(CheckCategoryForEntry(entry)); }
 
 void RegisterSLCategories();
@@ -265,7 +265,7 @@ float CheckCategoryOverride(float cat)
        entity catent = RetrieveCategoryEnt(cat);
        if(catent)
        {
-               float override = (autocvar_menu_slist_categories ? catent.cat_enoverride : catent.cat_dioverride); 
+               float override = (autocvar_menu_slist_categories ? catent.cat_enoverride : catent.cat_dioverride);
                if(override) { return override; }
                else { return cat; }
        }
@@ -306,7 +306,7 @@ float CheckCategoryForEntry(float entry)
        if(autocvar_menu_slist_recommendations)
        {
                string cname = gethostcachestring(SLIST_FIELD_CNAME, entry);
-               
+
                if(IsPromoted(cname)) { return CAT_RECOMMENDED; }
                else
                {
@@ -321,21 +321,21 @@ float CheckCategoryForEntry(float entry)
                                if(
                                        ///// check for minimum free slots
                                        (freeslots >= autocvar_menu_slist_recommendations_minfreeslots)
-                                       
+
                                        && // check for purity requirement
                                        (
                                                (autocvar_menu_slist_recommendations_purethreshold < 0)
                                                ||
                                                (impure <= autocvar_menu_slist_recommendations_purethreshold)
                                        )
-                                       
+
                                        && // check for minimum amount of humans
                                        (
                                                gethostcachenumber(SLIST_FIELD_NUMHUMANS, entry)
                                                >=
                                                autocvar_menu_slist_recommendations_minhumans
                                        )
-                                       
+
                                        && // check for maximum latency
                                        (
                                                gethostcachenumber(SLIST_FIELD_PING, entry)
@@ -358,7 +358,7 @@ float CheckCategoryForEntry(float entry)
                {
                        // old servers which don't report their mod name are considered modified now
                        case "": { return CAT_MODIFIED; }
-                       
+
                        case "xpm": { return CAT_XPM; }
                        case "minstagib":
                        case "instagib": { return CAT_INSTAGIB; }
@@ -367,9 +367,9 @@ float CheckCategoryForEntry(float entry)
                        //case "newtoys": { return CAT_NEWTOYS; }
 
                        // "cts" is allowed as compat, xdf is replacement
-                       case "cts": 
+                       case "cts":
                        case "xdf": { return CAT_DEFRAG; }
-                       
+
                        default: { dprintf("Found strange mod type: %s\n", modtype); return CAT_MODIFIED; }
                }
        }
@@ -554,7 +554,7 @@ void XonoticServerList_refreshServerList(entity me, float mode)
                if(me.currentSortOrder < 0) { listflags |= SLSF_DESCENDING; }
                sethostcachesort(me.currentSortField, listflags);
        }
-       
+
        resorthostcache();
        if(mode >= REFRESHSERVERLIST_ASK)
                refreshhostcache(mode >= REFRESHSERVERLIST_RESET);
@@ -624,7 +624,7 @@ void XonoticServerList_draw(entity me)
        {
                float itemcount = gethostcachevalue(SLIST_HOSTCACHEVIEWCOUNT);
                me.nItems = itemcount;
-               
+
                //float visible = floor(me.scrollPos / me.itemHeight);
                // ^ unfortunately no such optimization can be made-- we must process through the
                // entire list, otherwise there is no way to know which item is first in its category.
@@ -737,7 +737,7 @@ void XonoticServerList_draw(entity me)
                        me.selectedServer = strzone(gethostcachestring(SLIST_FIELD_CNAME, me.selectedItem));
                }
        }
-       
+
        if(owned)
        {
                if(me.selectedServer != me.ipAddressBox.text)
@@ -1011,7 +1011,7 @@ void XonoticServerList_drawListBoxItem(entity me, float i, vector absSize, float
                        SET_YRANGE(me.categoriesHeight / (me.categoriesHeight + 1), 1);
                }
        }
-       
+
        if(isSelected)
                draw_Fill('0 0 0', '1 1 0', SKINCOLOR_LISTBOX_SELECTED, SKINALPHA_LISTBOX_SELECTED);
 
@@ -1203,11 +1203,11 @@ void XonoticServerList_drawListBoxItem(entity me, float i, vector absSize, float
                draw_Picture(iconPos, n, iconSize, '1 1 1', 1);
        }
        iconPos.x += iconSize.x;
-       
+
        // --------------
        //  RENDER TEXT
        // --------------
-       
+
        // ping
        s = ftos(p);
        draw_Text(me.realUpperMargin * eY + (me.columnPingOrigin + me.columnPingSize - draw_TextWidth(s, 0, me.realFontSize)) * eX, s, me.realFontSize, theColor, theAlpha, 0);
index db29f55..818dcb8 100644 (file)
@@ -42,7 +42,7 @@ void XonoticParticlesSlider_saveCvars(entity me)
                tokenize_console(me.getIdentifier(me));
                cvar_set("cl_particles_quality", argv(0));
                cvar_set("r_drawparticles_drawdistance", argv(1));
-               cvar_set("cl_damageeffect", argv(2)); 
+               cvar_set("cl_damageeffect", argv(2));
        }
 }
 #endif
index f80e8ff..99c850f 100644 (file)
@@ -175,7 +175,7 @@ void XonoticStatsList_getStats(entity me)
                if((order == -1) && (out_total_matches >= 0) && (out_total_wins >= 0))
                {
                        bufstr_add(me.listStats, sprintf("003Matches: %d", out_total_matches), true);
-                       
+
                        if(out_total_matches > 0) // don't show extra info if there are no matches played
                        {
                                out_total_losses = max(0, (out_total_matches - out_total_wins));
@@ -193,7 +193,7 @@ void XonoticStatsList_getStats(entity me)
                {
                        bufstr_add(me.listStats, sprintf("005Kills/Deaths: %d/%d", out_total_kills, out_total_deaths), true);
 
-                       // if there are no deaths, just show kill count 
+                       // if there are no deaths, just show kill count
                        if(out_total_deaths > 0)
                                bufstr_add(me.listStats, sprintf("006Kill_Ratio: %.2f", (out_total_kills / out_total_deaths)), true);
                        else
@@ -212,10 +212,10 @@ void XonoticStatsList_getStats(entity me)
                else
                {
                        float dividerpos = strstrofs(e, "/", 0);
-                       
+
                        string gametype = substring(e, 0, dividerpos);
                        if(gametype == "overall") { continue; }
-                       
+
                        string event = substring(e, (dividerpos + 1), strlen(e) - (dividerpos + 1));
 
                        // if we are ranked, read these sets of possible options
@@ -251,7 +251,7 @@ void XonoticStatsList_getStats(entity me)
                                                data = sprintf("%d%%", stof(data));
                                                break;
                                        }
-                                       
+
                                        #if 0
                                        case "favorite-map":
                                        {
@@ -261,7 +261,7 @@ void XonoticStatsList_getStats(entity me)
                                                break;
                                        }
                                        #endif
-                                       
+
                                        default: continue; // nothing to see here
                                }
 
@@ -321,7 +321,7 @@ void XonoticStatsList_drawListBoxItem(entity me, float i, vector absSize, float
        string data = bufstr_get(me.listStats, i);
        string s = car(data);
        string d = cdr(data);
-       
+
        s = substring(s, 3, strlen(s) - 3);
        s = strreplace("_", " ", s);
        s = draw_TextShortenToWidth(s, 0.5 * me.columnNameSize, 0, me.realFontSize);
index 33fd0dd..6b9e4e3 100644 (file)
@@ -15,4 +15,4 @@ void anticheat_startframe();
 void anticheat_endframe();
 
 void anticheat_fixangle();
-#endif
\ No newline at end of file
+#endif
index d02a963..e1123e7 100644 (file)
@@ -12,4 +12,4 @@ void antilag_clear(entity e);
 
 #define ANTILAG_LATENCY(e) min(0.4, e.ping * 0.001)
 // add one ticrate?
-#endif
\ No newline at end of file
+#endif
index e826694..bcb9d28 100644 (file)
@@ -882,4 +882,4 @@ float autocvar_g_buffs_vampire_damage_steal;
 float autocvar_g_buffs_invisible_alpha;
 float autocvar_g_buffs_flight_gravity;
 float autocvar_g_buffs_jump_height;
-#endif
\ No newline at end of file
+#endif
index eafd2d2..fb191a9 100644 (file)
@@ -97,4 +97,4 @@ float findtrajectorywithleading(vector org, vector m1, vector m2, entity targ, f
 vector bot_shotlead(vector targorigin, vector targvelocity, float shotspeed, float shotdelay);
 
 .void(float t, float f1, float f2, entity e1, vector v1, vector v2, vector v3, vector v4) lag_func;
-#endif
\ No newline at end of file
+#endif
index 467e5fc..2d3d329 100644 (file)
@@ -63,4 +63,4 @@ void(float ratingscale, vector org, float sradius) havocbot_goalrating_enemyplay
 .entity draggedby;
 .float ladder_time;
 .entity ladder_entity;
-#endif
\ No newline at end of file
+#endif
index 10d32ce..08e1c53 100644 (file)
@@ -76,4 +76,4 @@ void navigation_unstuck();
 void botframe_updatedangerousobjects(float maxupdate);
 
 entity navigation_findnearestwaypoint(entity ent, float walkfromwp);
-#endif
\ No newline at end of file
+#endif
index b107729..f5228c2 100644 (file)
@@ -16,4 +16,4 @@ void CampaignLevelWarp(float n);
 float campaign_bots_may_start;
 // campaign mode: bots shall spawn but wait for the player to spawn before they do anything
 // in other game modes, this is ignored
-#endif
\ No newline at end of file
+#endif
index 925033c..625a304 100644 (file)
@@ -14,4 +14,4 @@ float CheatCommand(float argc);
 float CheatFrame();
 
 void Drag_MoveDrag(entity from, entity to); // call this from CopyBody
-#endif
\ No newline at end of file
+#endif
index c604c56..ced8119 100644 (file)
@@ -37,4 +37,4 @@
  */
 
 void ImpulseCommands (void);
-#endif
\ No newline at end of file
+#endif
index 3386d57..b4b251e 100644 (file)
@@ -16,4 +16,4 @@ float Ban_Delete(float i);
 
 // used by common/command/generic.qc:GenericCommand_dumpcommands to list all commands into a .txt file
 void BanCommand_macro_write_aliases(float fh);
-#endif
\ No newline at end of file
+#endif
index 9e5389a..4a8b59e 100644 (file)
@@ -223,7 +223,7 @@ void ClientCommand_mobedit(float request, float argc)
                        {
                                makevectors(self.v_angle);
                                WarpZone_TraceLine(self.origin + self.view_ofs, self.origin + self.view_ofs + v_forward * 100, MOVE_NORMAL, self);
-                               
+
                                if(!autocvar_g_monsters_edit) { sprint(self, "Monster property editing is not enabled.\n"); return; }
                                if(trace_ent.flags & FL_MONSTER)
                                {
@@ -265,7 +265,7 @@ void ClientCommand_mobkill(float request)
                {
                        makevectors(self.v_angle);
                        WarpZone_TraceLine(self.origin + self.view_ofs, self.origin + self.view_ofs + v_forward * 100, MOVE_NORMAL, self);
-                       
+
                        if(trace_ent.flags & FL_MONSTER)
                        {
                                if(trace_ent.realowner != self)
@@ -278,7 +278,7 @@ void ClientCommand_mobkill(float request)
                                return;
                        }
                }
-       
+
                default:
                        sprint(self, "Incorrect parameters for ^2mobkill^7\n");
                case CMD_REQUEST_USAGE:
@@ -299,22 +299,22 @@ void ClientCommand_mobspawn(float request, float argc)
                        entity e;
                        string tospawn;
                        float moveflag, monstercount = 0;
-                       
+
                        moveflag = (argv(2) ? stof(argv(2)) : 1); // follow owner if not defined
                        tospawn = strtolower(argv(1));
-                       
+
                        if(tospawn == "list")
                        {
                                sprint(self, monsterlist_reply);
                                return;
                        }
-                       
+
                        FOR_EACH_MONSTER(e)
                        {
                                if(e.realowner == self)
                                        ++monstercount;
                        }
-                       
+
                        if(autocvar_g_monsters_max <= 0 || autocvar_g_monsters_max_perplayer <= 0) { sprint(self, "Monster spawning is disabled.\n"); return; }
                        else if(!IS_PLAYER(self)) { sprint(self, "You can't spawn monsters while spectating.\n"); return; }
                        else if(MUTATOR_CALLHOOK(AllowMobSpawning)) { sprint(self, "Monster spawning is currently disabled by a mutator.\n"); return; }
@@ -329,7 +329,7 @@ void ClientCommand_mobspawn(float request, float argc)
                        {
                                float found = 0, i;
                                entity mon;
-                               
+
                                for(i = MON_FIRST; i <= MON_LAST; ++i)
                                {
                                        mon = get_monsterinfo(i);
@@ -343,20 +343,20 @@ void ClientCommand_mobspawn(float request, float argc)
                                if(found || tospawn == "random")
                                {
                                        totalspawned += 1;
-                               
+
                                        makevectors(self.v_angle);
                                        WarpZone_TraceBox (CENTER_OR_VIEWOFS(self), PL_MIN, PL_MAX, CENTER_OR_VIEWOFS(self) + v_forward * 150, true, self);
                                        //WarpZone_TraceLine(self.origin + self.view_ofs, self.origin + self.view_ofs + v_forward * 150, MOVE_NORMAL, self);
-                               
+
                                        e = spawnmonster(tospawn, 0, self, self, trace_endpos, false, false, moveflag);
-                                       
+
                                        sprint(self, strcat("Spawned ", e.monster_name, "\n"));
-                                       
+
                                        return;
                                }
                        }
                }
-       
+
                default:
                        sprint(self, "Incorrect parameters for ^2mobspawn^7\n");
                case CMD_REQUEST_USAGE:
index 490361b..3eabab7 100644 (file)
@@ -18,4 +18,4 @@ string MapVote_Suggest(string m);
 
 // used by common/command/generic.qc:GenericCommand_dumpcommands to list all commands into a .txt file
 void ClientCommand_macro_write_aliases(float fh);
-#endif
\ No newline at end of file
+#endif
index 4e45af3..e31a428 100644 (file)
@@ -178,4 +178,4 @@ void CommonCommand_macro_write_aliases(float fh)
 }
 
 
-#endif
\ No newline at end of file
+#endif
index 94b254a..0cc520c 100644 (file)
@@ -17,4 +17,4 @@ float shuffleteams_teams[SHUFFLETEAMS_MAX_TEAMS]; // maximum of 4 teams
 
 // used by common/command/generic.qc:GenericCommand_dumpcommands to list all commands into a .txt file
 void GameCommand_macro_write_aliases(float fh);
-#endif
\ No newline at end of file
+#endif
index 03e5359..ff33f56 100644 (file)
@@ -52,4 +52,4 @@ float restart_mapalreadyrestarted; // bool, indicates whether reset_map() was al
 .float ready; // flag for if a player is ready
 void reset_map(float dorespawn);
 void ReadyCount();
-#endif
\ No newline at end of file
+#endif
index 6047621..d170cf4 100644 (file)
@@ -609,7 +609,7 @@ void Freeze (entity targ, float freeze_time, float frozen_type, float show_waypo
                RemoveGrapplingHook(head);
 
        // add waypoint
-       if(show_waypoint)       
+       if(show_waypoint)
                WaypointSprite_Spawn("frozen", 0, 0, targ, '0 0 64', world, targ.team, targ, waypointsprite_attached, true, RADARICON_WAYPOINT, '0.25 0.90 1');
 }
 
@@ -622,9 +622,9 @@ void Unfreeze (entity targ)
        targ.frozen = 0;
        targ.revive_progress = 0;
        targ.revival_time = time;
-       
+
        WaypointSprite_Kill(targ.waypointsprite_attached);
-       
+
        FOR_EACH_PLAYER(head)
        if(head.hook.aiment == targ)
                RemoveGrapplingHook(head);
@@ -788,22 +788,22 @@ void Damage (entity targ, entity inflictor, entity attacker, float damage, float
                        damage = 0;
                        force *= autocvar_g_freezetag_frozen_force;
                }
-               
+
                if(targ.frozen && deathtype == DEATH_HURTTRIGGER && !autocvar_g_freezetag_frozen_damage_trigger)
                {
                        pointparticles(particleeffectnum("teleport"), targ.origin, '0 0 0', 1);
-               
+
                        entity oldself = self;
                        self = targ;
                        entity spot = SelectSpawnPoint (false);
-                       
+
                        if(spot)
                        {
                                damage = 0;
                                self.deadflag = DEAD_NO;
 
                                self.angles = spot.angles;
-                               
+
                                self.effects = 0;
                                self.effects |= EF_TELEPORT_BIT;
 
@@ -814,16 +814,16 @@ void Damage (entity targ, entity inflictor, entity attacker, float damage, float
                                self.punchangle = '0 0 0';
                                self.punchvector = '0 0 0';
                                self.oldvelocity = self.velocity;
-                               
+
                                self.spawnorigin = spot.origin;
                                setorigin (self, spot.origin + '0 0 1' * (1 - self.mins.z - 24));
                                // don't reset back to last position, even if new position is stuck in solid
                                self.oldorigin = self.origin;
                                self.prevorigin = self.origin;
-                               
+
                                pointparticles(particleeffectnum("teleport"), self.origin, '0 0 0', 1);
                        }
-                       
+
                        self = oldself;
                }
 
index 1524851..4cc3f6f 100644 (file)
@@ -120,4 +120,4 @@ void Fire_ApplyDamage(entity e);
 void Fire_ApplyEffect(entity e);
 
 void fireburner_think();
-#endif
\ No newline at end of file
+#endif
index 55bbdd0..aa641a5 100644 (file)
@@ -18,4 +18,4 @@ const float HOOK_WAITING_FOR_RELEASE = 16;
 
 void GrappleHookInit();
 vector hook_shotorigin[4];
-#endif
\ No newline at end of file
+#endif
index 8cc02eb..04477e6 100644 (file)
@@ -194,4 +194,4 @@ void InitTrigger();
 void InitSolidBSPTrigger();
 
 float InitMovingBrushTrigger();
-#endif
\ No newline at end of file
+#endif
index c7e1439..35c39f2 100644 (file)
@@ -385,4 +385,4 @@ void spawnfunc_relay_activatetoggle();
 void spawnfunc_target_changelevel_use();
 
 void spawnfunc_target_changelevel();
-#endif
\ No newline at end of file
+#endif
index 19072c8..1f1df06 100644 (file)
@@ -7,4 +7,4 @@ float Violence_GibSplash_SendEntity(entity to, float sf);
 void Violence_GibSplash_At(vector org, vector dir, float type, float amount, entity gibowner, entity attacker);
 
 void Violence_GibSplash(entity source, float type, float amount, entity attacker);
-#endif
\ No newline at end of file
+#endif
index 4be3789..65d43ba 100644 (file)
@@ -801,7 +801,7 @@ void spawnfunc_worldspawn (void)
        addstat(STAT_VORTEX_CHARGEPOOL, AS_FLOAT, vortex_chargepool_ammo);
 
        addstat(STAT_HAGAR_LOAD, AS_INT, hagar_load);
-       
+
        addstat(STAT_ARC_HEAT, AS_FLOAT, arc_heat_percent);
 
        // freeze attacks
@@ -1238,7 +1238,7 @@ float DoNextMapOverride(float reinit)
                string m;
                m = GameTypeVote_MapInfo_FixName(autocvar_nextmap);
                cvar_set("nextmap",m);
-       
+
                if(!m || gametypevote)
                        return false;
                if(autocvar_sv_vote_gametype)
@@ -1246,7 +1246,7 @@ float DoNextMapOverride(float reinit)
                        Map_Goto_SetStr(m);
                        return false;
                }
-               
+
                if(MapInfo_CheckMap(m))
                {
                        Map_Goto_SetStr(m);
index db51c3b..3a5e5d5 100644 (file)
@@ -14,4 +14,4 @@ const float WINNING_STARTSUDDENDEATHOVERTIME = 3; // no winner, enter suddendeat
 void CheckRules_Player();
 void IntermissionThink();
 
-#endif
\ No newline at end of file
+#endif
index 9be8b3d..e758cbc 100644 (file)
@@ -8,4 +8,4 @@ float Ban_MaybeEnforceBanOnce(entity client);
 float BanCommand(string command);
 
 void OnlineBanList_URI_Get_Callback(float id, float status, string data);
-#endif
\ No newline at end of file
+#endif
index 4ec3296..6ab5605 100644 (file)
@@ -23,4 +23,4 @@ float item_keys_usekey(entity l, entity p);
  * Returns a string with a comma separated list of key names, as specified in keylist.
  */
 string item_keys_keylist(float keylist);
-#endif
\ No newline at end of file
+#endif
index 12f2db9..fd42c99 100644 (file)
 #endif
 
 float GameTypeVote_AvailabilityStatus(string gtname)
-{ 
+{
        float type = MapInfo_Type_FromString(gtname);
        if( type == 0 )
                return GTV_FORBIDDEN;
-       
+
        if ( autocvar_nextmap != "" )
        {
                if ( !MapInfo_Get_ByName(autocvar_nextmap, false, 0) )
@@ -28,7 +28,7 @@ float GameTypeVote_AvailabilityStatus(string gtname)
                if (!(MapInfo_Map_supportedGametypes & type))
                        return GTV_FORBIDDEN;
        }
-       
+
        return GTV_AVAILABLE;
 }
 
@@ -237,7 +237,7 @@ void MapVote_WriteMask()
                for(i = 0, power = 1; i < mapvote_count; ++i, power *= 2)
                        if(mapvote_maps_availability[i] == GTV_AVAILABLE )
                                mask |= power;
-                       
+
                if(mapvote_count < 8)
                        WriteByte(MSG_ENTITY, mask);
                else if (mapvote_count < 16)
@@ -272,7 +272,7 @@ float MapVote_SendEntity(entity to, float sf)
                WriteByte(MSG_ENTITY, mapvote_abstain);
                WriteByte(MSG_ENTITY, mapvote_detail);
                WriteCoord(MSG_ENTITY, mapvote_timeout);
-               
+
                if ( gametypevote )
                {
                        // gametype vote
@@ -394,11 +394,11 @@ float MapVote_Finished(float mappos)
                }
                return false;
        }
-       
+
        Map_Goto_SetStr(mapvote_maps[mappos]);
        Map_Goto(0);
        alreadychangedlevel = true;
-       
+
        return true;
 }
 
@@ -406,7 +406,7 @@ void MapVote_CheckRules_1()
 {
        float i;
 
-       for(i = 0; i < mapvote_count; ++i) 
+       for(i = 0; i < mapvote_count; ++i)
                if( mapvote_maps_availability[i] == GTV_AVAILABLE )
                {
                        //dprint("Map ", ftos(i), ": "); dprint(mapvote_maps[i], "\n");
@@ -444,7 +444,7 @@ float MapVote_CheckRules_2()
        RandomSelection_Init();
        currentPlace = 0;
        currentVotes = -1;
-       for(i = 0; i < mapvote_count_real; ++i) 
+       for(i = 0; i < mapvote_count_real; ++i)
                if ( mapvote_maps_availability[i] == GTV_AVAILABLE )
                {
                        RandomSelection_Add(world, i, string_null, 1, mapvote_selections[i]);
@@ -459,7 +459,7 @@ float MapVote_CheckRules_2()
                firstPlace = currentPlace;
        else
                firstPlace = RandomSelection_chosen_float;
-       
+
        //dprint("First place: ", ftos(firstPlace), "\n");
        //dprint("First place votes: ", ftos(firstPlaceVotes), "\n");
 
@@ -615,7 +615,7 @@ void MapVote_Think()
                        GotoNextMap(0);
                        return;
                }
-               
+
                if(autocvar_sv_vote_gametype) { GameTypeVote_Start(); }
                else if(autocvar_nextmap == "") { MapVote_Init(); }
        }
@@ -627,7 +627,7 @@ float GameTypeVote_SetGametype(float type)
 {
        if (MapInfo_CurrentGametype() == type)
                return true;
-               
+
        float tsave = MapInfo_CurrentGametype();
 
        MapInfo_SwitchGameType(type);
@@ -663,17 +663,17 @@ float GameTypeVote_Finished(float pos)
 {
        if(!gametypevote || gametypevote_finished)
                return false;
-       
+
        if ( !GameTypeVote_SetGametype(MapInfo_Type_FromString(mapvote_maps[pos])) )
        {
                dprint("Selected gametype is not supported by any map");
        }
-       
+
        localcmd("sv_vote_gametype_hook_all\n");
        localcmd("sv_vote_gametype_hook_", mapvote_maps[pos], "\n");
-       
+
        gametypevote_finished = true;
-       
+
        return true;
 }
 
@@ -685,7 +685,7 @@ float GameTypeVote_AddVotable(string nextMode)
        for(j = 0; j < mapvote_count; ++j)
                if(mapvote_maps[j] == nextMode)
                        return false;
-       
+
        mapvote_maps[mapvote_count] = strzone(nextMode);
        mapvote_maps_suggested[mapvote_count] = false;
 
@@ -694,9 +694,9 @@ float GameTypeVote_AddVotable(string nextMode)
        mapvote_maps_availability[mapvote_count] = GameTypeVote_AvailabilityStatus(nextMode);
 
        mapvote_count += 1;
-       
+
        return true;
-       
+
 }
 
 float GameTypeVote_Start()
@@ -704,15 +704,15 @@ float GameTypeVote_Start()
        float j;
        MapVote_ClearAllVotes();
        MapVote_UnzoneStrings();
-       
+
        mapvote_count = 0;
        mapvote_timeout = time + autocvar_sv_vote_gametype_timeout;
        mapvote_abstain = 0;
        mapvote_detail = !autocvar_g_maplist_votable_nodetail;
-       
+
        float n = tokenizebyseparator(autocvar_sv_vote_gametype_options, " ");
        n = min(MAPVOTE_COUNT, n);
-       
+
        float really_available, which_available;
        really_available = 0;
        which_available = -1;
@@ -727,9 +727,9 @@ float GameTypeVote_Start()
        }
 
        mapvote_count_real = mapvote_count;
-       
+
        gametypevote = 1;
-       
+
        if ( really_available == 0 )
        {
                if ( mapvote_count > 0 )
@@ -745,14 +745,14 @@ float GameTypeVote_Start()
                MapVote_Finished(which_available);
                return false;
        }
-       
+
        mapvote_count_real = mapvote_count;
 
        mapvote_keeptwotime = time + autocvar_sv_vote_gametype_keeptwotime;
        if(mapvote_count_real < 3 || mapvote_keeptwotime <= time)
                mapvote_keeptwotime = 0;
-       
+
        MapVote_Spawn();
-       
+
        return true;
 }
index 4c9360f..d2eff1c 100644 (file)
@@ -39,4 +39,4 @@ float mapvote_abstain;
 .float mapvote;
 
 entity mapvote_ent;
-#endif
\ No newline at end of file
+#endif
index 3eeb3a5..8a4bfd4 100644 (file)
@@ -50,4 +50,4 @@ Yed need to set v_up and v_forward (generally by calling makevectors) before cal
 
 void movelib_groundalign4point(float spring_length, float spring_up, float blendrate, float _max);
 
-#endif
\ No newline at end of file
+#endif
index 0b3868a..7d36af0 100644 (file)
@@ -377,4 +377,4 @@ MUTATOR_HOOKABLE(AccuracyTargetValid);
        const float MUT_ACCADD_VALID = 0; // return this flag to make the function continue if target is a client
        const float MUT_ACCADD_INVALID = 1; // return this flag to make the function always continue
        const float MUT_ACCADD_INDIFFERENT = 2; // return this flag to make the function always return
-#endif
\ No newline at end of file
+#endif
index a0f361f..bf6686d 100644 (file)
@@ -2,4 +2,4 @@
 #define GAMEMODE_CA_H
 // should be removed in the future, as other code should not have to care
 .float caplayer; // 0.5 if scheduled to join the next round
-#endif
\ No newline at end of file
+#endif
index 44caa7b..0e5930d 100644 (file)
@@ -134,4 +134,4 @@ float havocbot_ctf_middlepoint_radius;
 
 void havocbot_role_ctf_setrole(entity bot, float role);
 #endif
-#endif
\ No newline at end of file
+#endif
index 1c1ce48..0886a9c 100644 (file)
@@ -96,7 +96,7 @@ MUTATOR_HOOKFUNCTION(cts_PlayerPhysics)
                                self.movement_y = -M_SQRT1_2 * wishspeed;
                }
        }
-       
+
        return false;
 }
 
@@ -130,7 +130,7 @@ MUTATOR_HOOKFUNCTION(cts_ResetMap)
                cvar_set("timelimit", ftos(race_timelimit));
                cts_ScoreRules();
        }
-       
+
        return false;
 }
 
@@ -148,7 +148,7 @@ MUTATOR_HOOKFUNCTION(cts_ClientConnect)
 {
        race_PreparePlayer();
        self.race_checkpoint = -1;
-       
+
        if(IS_REAL_CLIENT(self))
        {
                string rr = CTS_RECORD;
@@ -195,7 +195,7 @@ MUTATOR_HOOKFUNCTION(cts_PlayerSpawn)
        self.race_respawn_spotref = spawn_spot;
 
        self.race_place = 0;
-       
+
        return false;
 }
 
index b8a075b..fa27fe4 100644 (file)
@@ -7,4 +7,4 @@ const float ST_CTS_LAPS = 1;
 const float SP_CTS_LAPS = 4;
 const float SP_CTS_TIME = 5;
 const float SP_CTS_FASTEST = 6;
-#endif
\ No newline at end of file
+#endif
index 04c20b2..dd6e8b2 100644 (file)
@@ -596,7 +596,7 @@ void dom_DelayedInit() // Do this check with a delay so we can wait for teams to
                domination_teams = bound(2, ((autocvar_g_domination_teams_override < 2) ? autocvar_g_domination_default_teams : autocvar_g_domination_teams_override), 4);
                dom_spawnteams(domination_teams);
        }
-       
+
        CheckAllowedTeams(world);
        domination_teams = ((c4>=0) ? 4 : (c3>=0) ? 3 : 2);
 
index f0d3cd3..d017b62 100644 (file)
@@ -29,4 +29,4 @@ float pps_pink;
 // misc globals
 float domination_roundbased;
 float domination_teams;
-#endif
\ No newline at end of file
+#endif
index a5e19f6..fe0d0a7 100644 (file)
@@ -67,11 +67,11 @@ void invasion_SpawnChosenMonster(float mon)
        }
        else
                monster = spawnmonster("", ((spawn_point.monsterid) ? spawn_point.monsterid : mon), spawn_point, spawn_point, spawn_point.origin, false, false, 2);
-       
+
        if(spawn_point) monster.target2 = spawn_point.target2;
        monster.spawnshieldtime = time;
        if(spawn_point && spawn_point.target_range) monster.target_range = spawn_point.target_range;
-       
+
        if(teamplay)
        if(spawn_point && spawn_point.team && inv_monsters_perteam[spawn_point.team] > 0)
                monster.team = spawn_point.team;
@@ -82,14 +82,14 @@ void invasion_SpawnChosenMonster(float mon)
                if(inv_monsters_perteam[NUM_TEAM_2] > 0) RandomSelection_Add(world, NUM_TEAM_2, string_null, 1, 1);
                if(invasion_teams >= 3) if(inv_monsters_perteam[NUM_TEAM_3] > 0) { RandomSelection_Add(world, NUM_TEAM_3, string_null, 1, 1); }
                if(invasion_teams >= 4) if(inv_monsters_perteam[NUM_TEAM_4] > 0) { RandomSelection_Add(world, NUM_TEAM_4, string_null, 1, 1); }
-               
+
                monster.team = RandomSelection_chosen_float;
        }
-       
+
        if(teamplay)
        {
                monster_setupcolors(monster);
-       
+
                if(monster.sprite)
                {
                        WaypointSprite_UpdateTeamRadar(monster.sprite, RADARICON_DANGER, ((monster.team) ? Team_ColorRGB(monster.team) : '1 0 0'));
@@ -98,7 +98,7 @@ void invasion_SpawnChosenMonster(float mon)
                        monster.sprite.SendFlags |= 1;
                }
        }
-       
+
        monster.monster_attack = false; // it's the player's job to kill all the monsters
 
        if(inv_roundcnt >= inv_maxrounds)
@@ -157,7 +157,7 @@ float Invasion_CheckWinner()
 
        if(inv_numspawned < 1)
                return 0; // nothing has spawned yet
-               
+
        if(teamplay)
        {
                if(((red_alive > 0) + (blue_alive > 0) + (yellow_alive > 0) + (pink_alive > 0)) > 1)
@@ -182,7 +182,7 @@ float Invasion_CheckWinner()
                if(pink_alive > 0)
                if(winner_team) { winner_team = 0; }
                else { winner_team = NUM_TEAM_4; }
-       }       
+       }
        else
        FOR_EACH_PLAYER(head)
        {
@@ -300,7 +300,7 @@ MUTATOR_HOOKFUNCTION(invasion_OnEntityPreSpawn)
        if(startsWith(self.classname, "monster_"))
        if(!(self.spawnflags & MONSTERFLAG_SPAWNED))
                return true;
-       
+
        return false;
 }
 
@@ -360,7 +360,7 @@ MUTATOR_HOOKFUNCTION(invasion_BotShouldAttack)
 {
        if(!(checkentity.flags & FL_MONSTER))
                return true;
-       
+
        return false;
 }
 
@@ -406,7 +406,7 @@ void invasion_DelayedInit() // Do this check with a delay so we can wait for tea
                invasion_teams = bound(2, autocvar_g_invasion_teams, 4);
        else
                invasion_teams = 0;
-       
+
        independent_players = 1; // to disable extra useless scores
 
        invasion_ScoreRules(invasion_teams);
@@ -437,7 +437,7 @@ void invasion_Initialize()
                        MON_ACTION(i, MR_PRECACHE);
                }
        }
-       
+
        InitializeEntity(world, invasion_DelayedInit, INITPRIO_GAMETYPE);
 }
 
index 0162f5d..191aef9 100644 (file)
@@ -15,4 +15,4 @@ float inv_monsters_perteam[17];
 float inv_monsterskill;
 
 const float ST_INV_KILLS = 1;
-#endif
\ No newline at end of file
+#endif
index 68ea788..fd9ed4f 100644 (file)
@@ -11,4 +11,4 @@ const float SP_KEEPAWAY_BCTIME = 6;
 
 void() havocbot_role_ka_carrier;
 void() havocbot_role_ka_collector;
-#endif
\ No newline at end of file
+#endif
index c683e71..6b27431 100644 (file)
@@ -11,4 +11,4 @@ float kh_Key_AllOwnedByWhichTeam();
 typedef void(void) kh_Think_t;
 void kh_StartRound();
 void kh_Controller_SetThink(float t, kh_Think_t func);
-#endif
\ No newline at end of file
+#endif
index 9bb92c0..474e3e1 100644 (file)
@@ -9,4 +9,4 @@ const float SP_LMS_RANK = 5;
 float lms_lowest_lives;
 float lms_next_place;
 float LMS_NewPlayerLives();
-#endif
\ No newline at end of file
+#endif
index 9cdb6b7..199e15c 100644 (file)
@@ -34,4 +34,4 @@ float nb_teams;
 .float nb_droptime;
 
 .float teamtime;
-#endif
\ No newline at end of file
+#endif
index 4f33719..d1f20f7 100644 (file)
@@ -1333,7 +1333,7 @@ void onslaught_controlpoint_reset()
 
        activator = self;
        SUB_UseTargets(); // to reset the structures, playerspawns etc.
-       
+
        CSQCMODEL_AUTOUPDATE();
 }
 
@@ -1405,7 +1405,7 @@ void spawnfunc_onslaught_controlpoint()
        self.enemy.colormap = self.colormap;
 
        waypoint_spawnforitem(self);
-       
+
        self.think = onslaught_controlpoint_think;
        self.nextthink = time;
 
@@ -1415,7 +1415,7 @@ void spawnfunc_onslaught_controlpoint()
        onslaught_updatelinks();
 
        self.reset = onslaught_controlpoint_reset;
-       
+
        CSQCMODEL_AUTOINIT();
 }
 
@@ -1669,7 +1669,7 @@ MUTATOR_HOOKFUNCTION(ons_MonsterThink)
 MUTATOR_HOOKFUNCTION(ons_MonsterSpawn)
 {
        entity e, ee = world;
-       
+
        if(self.targetname)
        {
                e = find(world,target,self.targetname);
@@ -1679,7 +1679,7 @@ MUTATOR_HOOKFUNCTION(ons_MonsterSpawn)
                        ee = e;
                }
        }
-       
+
        if(ee)
        {
         activator = ee;
index 244b9f0..7ba8328 100644 (file)
@@ -103,7 +103,7 @@ MUTATOR_HOOKFUNCTION(race_PlayerPhysics)
                                self.movement_y = -M_SQRT1_2 * wishspeed;
                }
        }
-       
+
        return false;
 }
 
@@ -137,7 +137,7 @@ MUTATOR_HOOKFUNCTION(race_ResetMap)
                cvar_set("timelimit", ftos(race_timelimit));
                race_ScoreRules();
        }
-       
+
        return false;
 }
 
@@ -203,7 +203,7 @@ MUTATOR_HOOKFUNCTION(race_PlayerSpawn)
        self.race_respawn_spotref = spawn_spot;
 
        self.race_place = 0;
-       
+
        return false;
 }
 
index 4631fd4..0e20b9b 100644 (file)
@@ -9,4 +9,4 @@ const float ST_RACE_LAPS = 1;
 const float SP_RACE_LAPS = 4;
 const float SP_RACE_TIME = 5;
 const float SP_RACE_FASTEST = 6;
-#endif
\ No newline at end of file
+#endif
index 5efe237..b2f800a 100644 (file)
@@ -66,22 +66,22 @@ void buff_SetCooldown(float cd)
 void buff_Respawn(entity ent)
 {
        if(gameover) { return; }
-       
+
        vector oldbufforigin = ent.origin;
-       
+
        if(!MoveToRandomMapLocation(ent, DPCONTENTS_SOLID | DPCONTENTS_CORPSE | DPCONTENTS_PLAYERCLIP, DPCONTENTS_SLIME | DPCONTENTS_LAVA | DPCONTENTS_SKY | DPCONTENTS_BODY | DPCONTENTS_DONOTENTER, Q3SURFACEFLAG_SKY, ((autocvar_g_buffs_random_location_attempts > 0) ? autocvar_g_buffs_random_location_attempts : 10), 1024, 256))
        {
                entity spot = SelectSpawnPoint(true);
                setorigin(ent, ((spot.origin + '0 0 200') + (randomvec() * 300)));
                ent.angles = spot.angles;
        }
-       
+
        tracebox(ent.origin, ent.mins * 1.5, self.maxs * 1.5, ent.origin, MOVE_NOMONSTERS, ent);
-       
+
        setorigin(ent, trace_endpos); // attempt to unstick
-       
+
        ent.movetype = MOVETYPE_TOSS;
-       
+
        makevectors(ent.angles);
        ent.velocity = '0 0 200';
        ent.angles = '0 0 0';
@@ -90,9 +90,9 @@ void buff_Respawn(entity ent)
 
        pointparticles(particleeffectnum("electro_combo"), oldbufforigin + ((ent.mins + ent.maxs) * 0.5), '0 0 0', 1);
        pointparticles(particleeffectnum("electro_combo"), CENTER_OR_VIEWOFS(ent), '0 0 0', 1);
-       
+
        WaypointSprite_Ping(ent.buff_waypoint);
-       
+
        sound(ent, CH_TRIGGER, "keepaway/respawn.wav", VOL_BASE, ATTEN_NONE); // ATTEN_NONE (it's a sound intended to be heard anywhere)
 }
 
@@ -129,11 +129,11 @@ void buff_Touch()
                }
                else { return; } // do nothing
        }
-               
+
        self.owner = other;
        self.buff_active = false;
        self.lifetime = 0;
-       
+
        Send_Notification(NOTIF_ONE, other, MSG_MULTI, ITEM_BUFF_GOT, self.buffs);
        Send_Notification(NOTIF_ALL_EXCEPT, other, MSG_INFO, INFO_ITEM_BUFF, other.netname, self.buffs);
 
@@ -176,7