]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Merge branch 'master' into Mario/mutators
authorMario <mario.mario@y7mail.com>
Tue, 25 Jun 2013 13:05:43 +0000 (23:05 +1000)
committerMario <mario.mario@y7mail.com>
Tue, 25 Jun 2013 13:05:43 +0000 (23:05 +1000)
1  2 
defaultXonotic.cfg
gamemodes.cfg
qcsrc/server/cl_client.qc
qcsrc/server/progs.src
qcsrc/server/t_items.qc

diff --combined defaultXonotic.cfg
index 2693be7b63dfc4fbdf43f4cc7849e8ab4b48a2b2,2437360c4a91c44b667cd52b18070de50296fa72..03a4a40aa3630b4b782d2b829d84268cad040923
@@@ -378,6 -378,13 +378,6 @@@ set g_weapon_throwable 1 "if set to 1, 
  set g_powerups -1 "if set to 0 the strength and shield (invincibility) will not spawn on the map, if 1 they will spawn in all game modes, -1 is game mode default"
  set g_use_ammunition 1 "if set to 0 all weapons have unlimited ammunition"
  set g_pickup_items -1 "if set to 0 all items (health, armor, ammo, weapons...) are removed from the map, if 1 they are forced to spawn"
 -set g_minstagib 0     "enable minstagib"
 -set g_minstagib_extralives 1  "how many extra lives you will get per powerup"
 -set g_minstagib_ammo_start 10 "starting ammo"
 -set g_minstagib_ammo_drop 5   "how much ammo you'll get for weapons or cells"
 -set g_minstagib_invis_alpha 0.15
 -set g_minstagib_speed_highspeed 1.5 "speed-multiplier that applies while you carry the invincibility powerup"
 -set g_vampire 0 "set to 1 to enable the vampire mode, where the damage done to your opponent gets added to your own health"
  set g_weaponarena "0" "put in a list of weapons to enable a weapon arena mode, or try \"all\" or \"most\""
  set g_weaponarena_random "0"  "if set to a number, only that weapon count is given on every spawn (randomly)"
  set g_weaponarena_random_with_laser "1"       "additionally, always provide the laser in random weapon arena games"
@@@ -407,6 -414,23 +407,6 @@@ set g_player_alpha 
  set g_player_brightness 0     "set to 2 for brighter players"
  seta g_balance_cloaked_alpha 0.25
  
 -set g_sandbox 0 "allow players to spawn and edit objects around the map"
 -set g_sandbox_info 1 "print object information to the server. 1 prints info about spawned / removed objects, 2 also prints info about edited objects"
 -set g_sandbox_readonly 0 "when this mode is active, players cannot modify objects or use any sandbox commands"
 -set g_sandbox_storage_name default "name of the selected storage to use"
 -set g_sandbox_storage_autosave 5 "storage is automatically saved every specified number of seconds"
 -set g_sandbox_storage_autoload 1 "if a storage file exists for the given map, automatically load it at startup"
 -set g_sandbox_editor_flood 1 "players must wait this many seconds between spawning objects"
 -set g_sandbox_editor_maxobjects 1000 "maximum number of objects that may exist at a time"
 -set g_sandbox_editor_free 1 "0 = players can only copy or edit their own objects, 1 = players can copy but not edit other objects, 2 = players can copy and edit all object"
 -set g_sandbox_editor_distance_spawn 200 "distance at which objects spawn in front of the player"
 -set g_sandbox_editor_distance_edit 300 "distance at which players can edit or remove objects they are looking at"
 -set g_sandbox_object_scale_min 0.1 "minimum scale that objects can be set to"
 -set g_sandbox_object_scale_max 2 "maximum scale that objects can be set to"
 -set g_sandbox_object_material_velocity_min 100 "velocity objects must have while colliding for material effects to be applied"
 -set g_sandbox_object_material_velocity_factor 0.002 "velocity range which decides the intensity of material effects"
 -set cl_sandbox_clipboard ""
 -
  seta menu_sandbox_spawn_model ""
  seta menu_sandbox_attach_bone ""
  seta menu_sandbox_edit_skin 0
@@@ -429,9 -453,26 +429,9 @@@ set welcome_message_time 
  
  set g_grappling_hook 0 "let players spawn with the grappling hook which allows them to pull themselves up"
  
 -set g_invincible_projectiles 0 "set to 1 to disable any damage to projectiles in all balance configs, regardless of g_projectiles_damage"
 -set g_dodging 0 "set to 1 to enable dodging in games"
 -set g_rocket_flying 0 "set to 1 to enable rocket flying in all balance configs"
 -
 -seta cl_dodging_timeout 0.2 "determines how long apart (in seconds) two taps on the same direction key are considered a dodge. use 0 to disable"
 -
 -set sv_dodging_wall_dodging 0 "set to 1 to allow dodging off walls. 0 to disable"
 -set sv_dodging_delay 0.5 "determines how long a player has to wait to be able to dodge again after dodging"
 -set sv_dodging_up_speed 200 "the jump velocity of the dodge"
 -set sv_dodging_horiz_speed 400 "the horizontal velocity of the dodge"
 -set sv_dodging_ramp_time 0.1 "a ramp so that the horizontal part of the dodge is added smoothly (seconds)"
 -set sv_dodging_height_threshold 10 "the maximum height above ground where to allow dodging"
 -set sv_dodging_wall_distance_threshold 10 "the maximum distance from a wall that still allows dodging"
 -set sv_dodging_sound 1 "if 1 dodging makes a sound. if 0 dodging is silent"
 -
  set g_spawn_alloweffects 1 "allow clients to enable spawn point and event effects such as particles and sounds, see cl_spawn_ cvars for more info"
  set g_spawn_furthest 1 "this amount of the spawns shall be far away from any players"
  set g_spawn_useallspawns 0 "use all spawns, e.g. also team spawns in non-teamplay, and all spawns, even enemy spawns, in teamplay"
 -set g_spawn_near_teammate 0 "if set, players prefer spawns near a team mate"
 -set g_spawn_near_teammate_distance 640 "max distance to consider a spawn to be near a team mate"
  // respawn delay
  set g_respawn_delay 2 "number of seconds you have to wait before you can respawn again"
  set g_respawn_waves 0 "respawn in waves (every n seconds), intended to decrease overwhelming base attacks"
@@@ -708,6 -749,13 +708,6 @@@ bind F2 vn
  //used for spectate/observer mode
  bind F3 spec
  
 -// NIX (No Items Xonotic) - at each time, everyone uses the same weapon,
 -// and in regular intervals, this weapon is cycled
 -set g_nix 0 "No Items Xonotic - instead of pickup items, everyone plays with the same weapon. After some time, a countdown will start, after which everyone will switch to another weapon, and so on"
 -set g_nix_with_laser 0 "always carry the laser as an additional weapon in NIX"
 -set g_nix_with_healtharmor 0 "when 1, health and armor still show up in NIX"
 -set g_nix_with_powerups 0 "when 1, powerups still show up in NIX"
 -
  // score log
  set sv_logscores_console 0    "print scores to server console"
  set sv_logscores_file 0       "print scores to file"
@@@ -1038,6 -1086,10 +1038,6 @@@ alias sethostname "set menu_use_default
  
  set sv_foginterval 1 "force enable fog in regular intervals"
  
 -set g_physical_items 0 "1 uses ODE physics for dropped weapons, 2 for all items, requires physics_ode to be enabled"
 -set g_physical_items_damageforcescale 3 "how affected physical weapons are by damage"
 -set g_physical_items_reset 1 "return map items to their original lotation after being picked up"
 -
  // Audio track names (for old-style "cd loop NUMBER" usage)
  set _cdtrack_first "1"
  alias _cdtrack_0 "g_cdtracks_remaplist \"$g_cdtracks_remaplist $1\""
@@@ -1120,6 -1172,12 +1120,6 @@@ set g_bugrigs_speed_ref 400    "reference 
  set g_bugrigs_speed_pow 2     "reference power for accel and steer responsiveness"
  set g_bugrigs_steer 1 "steering amount"
  
 -set g_touchexplode 0
 -set g_touchexplode_radius 50
 -set g_touchexplode_damage 10
 -set g_touchexplode_edgedamage 0
 -set g_touchexplode_force 150
 -
  set g_ban_sync_uri "" "sync using this ban list provider (empty string to disable)"
  set g_ban_sync_interval 5     "sync every 5 minutes"
  set g_ban_sync_trusted_servers ""     "request ban lists from these xonotic servers (do not include your own server there, or unbanning may fail)"
@@@ -1279,6 -1337,10 +1279,6 @@@ seta cl_forcemyplayerskin 0 "set to th
  seta cl_forcemyplayercolors 0 "set to the color value (encoding is same as _cl_color) for your own player model (ignored in teamplay; does not affect how enemies look with cl_forceplayermodels)"
  seta cl_movement_errorcompensation 1 "try to compensate for prediction errors and reduce preceived lag"
  
 -// debug cvars for keyhunt attaching
 -set _angles "0 0 0"
 -set _origin "0 0 0"
 -
  // campaign internal, set when loading a campaign map1G
  set _campaign_index ""
  set _campaign_name ""
@@@ -1471,6 -1533,7 +1471,7 @@@ set snd_soundradius 120
  set snd_softclip 1
  set snd_maxchannelvolume 0
  set snd_streaming_length 2
+ seta menu_snd_sliderscale 2 "0: decibels; 1: linear percent; 2: 0..10 scale; 3: slider size percent"
  seta menu_snd_attenuation_method 1 "Use exponential instead of linear falloff for sound attenuation"
  alias snd_attenuation_method_0 "set menu_snd_attenuation_method 0; set snd_soundradius 1200; set snd_attenuation_exponent 1; set snd_attenuation_decibel 0" // Quake default
  alias snd_attenuation_method_1 "set menu_snd_attenuation_method 1; set snd_soundradius 2400; set snd_attenuation_exponent 4; set snd_attenuation_decibel 0" // nice approximation for method 2
@@@ -1504,7 -1567,6 +1505,7 @@@ exec turrets.cf
  exec vehicles.cfg
  exec crosshairs.cfg
  exec gamemodes.cfg
 +exec mutators.cfg
  exec notifications.cfg
  
  // load console command aliases and settings
@@@ -1538,3 -1600,5 +1539,3 @@@ set cl_simpleitems_postfix "_simple" "p
  set cl_fullbright_items 0 "enable fullbright items (if server allows, controled by g_fullbrightitems)"
  set cl_weapon_stay_color "2 0.5 0.5" "Color of picked up weapons when g_weapon_stay > 0"
  set cl_weapon_stay_alpha 0.75 "Alpha of picked up weapons when g_weapon_stay > 0"
 -
 -seta g_superspectate 0 "server side, allows extended spectator functions through the cmd interface. followpowerup, followstrength, followstshield or followfc [red|blue] will transfer spectation to the relevent player, if any"
diff --combined gamemodes.cfg
index 744eb02d6bc87cad6e8d2f0564f4d080cacd90be,a1ad723d2748dd155db645f1f44ec0a633cd9bdb..665fa558490b75fac0e554e8f8badc87cc00e218
@@@ -89,7 -89,7 +89,7 @@@ seta g_nexball_goalleadlimit -1 "Nexbal
  // =================================
  // when variables are set to anything other than 0, they take over the global setting...
  // to force disable delay or waves, set them to 0.125
- set g_ctf_respawn_delay 0
+ set g_ctf_respawn_delay 5
  set g_ctf_respawn_waves 0
  set g_ctf_weapon_stay 0
  set g_dm_respawn_delay 0
@@@ -278,8 -278,6 +278,8 @@@ seta g_freezetag_point_leadlimit -1        "Fr
  set g_freezetag_revive_speed 0.4 "Speed for reviving a frozen teammate"
  set g_freezetag_revive_clearspeed 1.6 "Speed at which reviving progress gets lost when out of range"
  set g_freezetag_revive_extra_size 100 "Distance in qu that you can stand from a frozen teammate to keep reviving him"
 +set g_freezetag_revive_falldamage 0 "Enable reviving from this amount of fall damage"
 +set g_freezetag_revive_falldamage_health 40 "Amount of health player has if they revived from falling"
  set g_freezetag_round_timelimit 180
  set g_freezetag_frozen_force 0.6 "How much to multiply the force on a frozen player with"
  set g_freezetag_frozen_maxtime 60 "frozen players will be automatically unfrozen after this time in seconds"
@@@ -345,6 -343,9 +345,6 @@@ set g_lms 0 "Last Man Standing: everyon
  set g_lms_lives_override -1
  set g_lms_extra_lives 0
  set g_lms_regenerate 0
 -set g_lms_campcheck_interval 10
 -set g_lms_campcheck_damage 100
 -set g_lms_campcheck_distance 1800
  set g_lms_last_join 3 "if g_lms_join_anytime is false, new players can only join if the worst active player has more than (fraglimit - g_lms_last_join) lives"
  set g_lms_join_anytime 1      "if true, new players can join, but get same amount of lives as the worst player"
  
index 9f2174addc0b5eeb4cb85c30b70e4f5d22567054,c687c4502c33ae7c7ec9c8c69fc95559f6d2a788..d7ca62ba01a800c4ee8f7ee848940649b84206a0
@@@ -1418,7 -1418,7 +1418,7 @@@ void player_powerups (void
  
        self.effects &~= (EF_RED | EF_BLUE | EF_ADDITIVE | EF_FULLBRIGHT | EF_FLAME | EF_NODEPTHTEST);
  
-       if(self.alpha < 0 || self.deadflag) // don't apply the flags if the player is gibbed
+       if((self.alpha < 0 || self.deadflag) && !self.vehicle) // don't apply the flags if the player is gibbed
                return;
  
        Fire_ApplyDamage(self);
        if(autocvar_g_fullbrightplayers)
                self.effects = self.effects | EF_FULLBRIGHT;
  
 -      // midair gamemode: damage only while in the air
 -      // if in midair mode, being on ground grants temporary invulnerability
 -      // (this is so that multishot weapon don't clear the ground flag on the
 -      // first damage in the frame, leaving the player vulnerable to the
 -      // remaining hits in the same frame)
 -      if (self.flags & FL_ONGROUND)
 -      if (g_midair)
 -              self.spawnshieldtime = max(self.spawnshieldtime, time + autocvar_g_midair_shieldtime);
 -
        if (time >= game_starttime)
        if (time < self.spawnshieldtime)
                self.effects = self.effects | (EF_ADDITIVE | EF_FULLBRIGHT);
@@@ -2346,6 -2355,8 +2346,6 @@@ void PlayerPreThink (void
                float do_crouch = self.BUTTON_CROUCH;
                if(self.hook.state)
                        do_crouch = 0;
 -              if(self.health <= g_bloodloss)
 -                      do_crouch = 1;
                if(self.vehicle)
                        do_crouch = 0;
                if(self.freezetag_frozen)
                        }
                }
  
 -              if(self.health <= g_bloodloss && self.deadflag == DEAD_NO)
 -              {
 -                      if(self.bloodloss_timer < time)
 -                      {
 -                              self.event_damage(self, self, 1, DEATH_ROT, self.origin, '0 0 0');
 -                              self.bloodloss_timer = time + 0.5 + random() * 0.5;
 -                      }
 -              }
 -
                FixPlayermodel();
  
                GrapplingHookFrame();
  
                if(frametime)
                        player_anim();
 -
 -              if(g_nexball)
 -                      nexball_setstatus();
                
                // secret status
                secrets_setstatus();
diff --combined qcsrc/server/progs.src
index 79a7bf21bde1995a8d70ba4a3924fb78c1b8074c,367e8609ded2741ab10a74503dbf7888a82bd1a6..78feb8f9fd2a9d784eca8dbc2ba3994b5f48e3ef
@@@ -15,6 -15,7 +15,7 @@@ sys-post.q
  ../common/constants.qh
  ../common/teams.qh
  ../common/util.qh
+ ../common/test.qh
  ../common/counting.qh
  ../common/items.qh
  ../common/explosion_equation.qh
@@@ -45,7 -46,6 +46,7 @@@ mutators/gamemode_keepaway.q
  mutators/gamemode_nexball.qh 
  mutators/gamemode_lms.qh
  mutators/mutator_dodging.qh
 +mutators/mutator_nades.qh
  
  //// tZork Turrets ////
  tturrets/include/turrets_early.qh
@@@ -249,18 -249,6 +250,18 @@@ mutators/sandbox.q
  mutators/mutator_superspec.qc
  mutators/mutator_minstagib.qc
  mutators/mutator_touchexplode.qc
 +mutators/mutator_pinata.qc
 +mutators/mutator_midair.qc
 +mutators/mutator_bloodloss.qc
 +mutators/mutator_random_gravity.qc
 +mutators/mutator_norecoil.qc
 +mutators/mutator_multijump.qc
 +mutators/mutator_jump_grunt.qc
 +mutators/mutator_footsteps.qc
 +mutators/mutator_melee_only.qc
 +mutators/mutator_nades.qc
 +mutators/mutator_riflearena.qc
 +mutators/mutator_campcheck.qc
  
  ../warpzonelib/anglestransform.qc
  ../warpzonelib/mathlib.qc
  ../warpzonelib/server.qc
  
  ../common/animdecide.qc
+ ../common/test.qc
  ../common/util.qc
  ../common/notifications.qc
  
diff --combined qcsrc/server/t_items.qc
index a895600728c459e8f31888fe163d300b362a4b8c,9a290a2cc3ed83830e77ea67c8abca0740a88787..61e2a09bf8af6927a78273a74005ac1e26e67287
@@@ -277,6 -277,10 +277,6 @@@ float have_pickup_item(void
                        return TRUE;
                if(autocvar_g_powerups == 0)
                        return FALSE;
 -              if(g_ca)
 -                      return FALSE;
 -              if(g_arena)
 -                      return FALSE;
        }
        else
        {
                        return TRUE;
                if(autocvar_g_pickup_items == 0)
                        return FALSE;
 -              if(g_ca)
 -                      return FALSE;
                if(g_weaponarena)
                        if(!WEPSET_EMPTY_E(self) || (self.items & IT_AMMO))
                                return FALSE;
@@@ -1159,12 -1165,9 +1159,9 @@@ void weapon_defaultspawnfunc(float wpn
  
                if(e.spawnflags & WEP_FLAG_MUTATORBLOCKED)
                {
-                       print("Attempted to spawn a mutator-blocked weapon; these guns will in the future require a mutator\n");
-                       /*
                        objerror("Attempted to spawn a mutator-blocked weapon rejected");
                        startitem_failed = TRUE;
                        return;
-                       */
                }
  
                s = W_Apply_Weaponreplace(e.netname);