unpk3dir
This commit is contained in:
parent
1fc3e3cf9c
commit
01647c66fe
139 changed files with 2196 additions and 256 deletions
1
PAK_NAME
Normal file
1
PAK_NAME
Normal file
|
@ -0,0 +1 @@
|
||||||
|
package_baseq2.pk3
|
1
PROJECT
Normal file
1
PROJECT
Normal file
|
@ -0,0 +1 @@
|
||||||
|
Mayhem2
|
32
README.md
Normal file
32
README.md
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
# Mayhem II
|
||||||
|
|
||||||
|
Port of id Software's Quake II. Mainly for experiencing a different version of multiplayer.
|
||||||
|
|
||||||
|

|
||||||
|

|
||||||
|

|
||||||
|

|
||||||
|
|
||||||
|
## To-do list:
|
||||||
|
|
||||||
|
- Not all monsters.
|
||||||
|
- Items lack functionality.
|
||||||
|
- Armor implementation is not as advanced.
|
||||||
|
- No own code for HUD stuff etc just decl.
|
||||||
|
|
||||||
|
## License
|
||||||
|
ISC License
|
||||||
|
|
||||||
|
Copyright (c) 2024 Marco Cawthorne <marco@icculus.org>
|
||||||
|
|
||||||
|
Permission to use, copy, modify, and distribute this software for any
|
||||||
|
purpose with or without fee is hereby granted, provided that the above
|
||||||
|
copyright notice and this permission notice appear in all copies.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||||
|
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||||
|
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||||
|
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||||
|
WHATSOEVER RESULTING FROM LOSS OF MIND, USE, DATA OR PROFITS, WHETHER
|
||||||
|
IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
|
||||||
|
OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
BIN
csprogs.dat
Normal file
BIN
csprogs.dat
Normal file
Binary file not shown.
|
@ -3,8 +3,8 @@ entityDef ammo_base
|
||||||
"spawnclass" "NSItem"
|
"spawnclass" "NSItem"
|
||||||
"snd_acquire" "ammo.pickup"
|
"snd_acquire" "ammo.pickup"
|
||||||
"snd_respawn" "ammo.respawn"
|
"snd_respawn" "ammo.respawn"
|
||||||
"mins" "-16 -16 -16"
|
"mins" "-12 -12 -16"
|
||||||
"maxs" "16 16 16"
|
"maxs" "12 12 16"
|
||||||
"renderfx" "$RM_Q2PULSE"
|
"renderfx" "$RM_Q2PULSE"
|
||||||
"rendercolor" "255 255 255"
|
"rendercolor" "255 255 255"
|
||||||
"renderamt" "255"
|
"renderamt" "255"
|
|
@ -8,4 +8,5 @@ entityDef ammo_grenades
|
||||||
"inherit" "ammo_base"
|
"inherit" "ammo_base"
|
||||||
"model" "models/items/ammo/grenades/medium/tris.md2"
|
"model" "models/items/ammo/grenades/medium/tris.md2"
|
||||||
"inv_ammo_grenades" "5"
|
"inv_ammo_grenades" "5"
|
||||||
|
"inv_weapon" "weapon_grenade"
|
||||||
}
|
}
|
|
@ -15,6 +15,3 @@
|
||||||
#include "items/health_small.def"
|
#include "items/health_small.def"
|
||||||
#include "items/adrenaline.def"
|
#include "items/adrenaline.def"
|
||||||
#include "items/breather.def"
|
#include "items/breather.def"
|
||||||
|
|
||||||
// remove
|
|
||||||
#include "items/suit.def"
|
|
1
decls/def/monsters.def
Normal file
1
decls/def/monsters.def
Normal file
|
@ -0,0 +1 @@
|
||||||
|
#include "monsters/soldier.def"
|
37
decls/def/monsters/soldier.def
Normal file
37
decls/def/monsters/soldier.def
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
#define SOLDIER_ATTAK "0,1,2,3"
|
||||||
|
#define SOLDIER_DUCK "4"
|
||||||
|
#define SOLDIER_PAIN1 "5,6,7,8"
|
||||||
|
#define SOLDIER_RUN "9,10,11"
|
||||||
|
#define SOLDIER_STAND "12,13"
|
||||||
|
#define SOLDIER_WALK "14,15"
|
||||||
|
#define SOLDIER_DEATH1 16
|
||||||
|
#define SOLDIER_DEATH2 17
|
||||||
|
#define SOLDIER_DEATH3 18
|
||||||
|
#define SOLDIER_DEATH4 19
|
||||||
|
#define SOLDIER_DEATH5 20
|
||||||
|
#define SOLDIER_DEATH6 21
|
||||||
|
|
||||||
|
entityDef monster_soldier
|
||||||
|
{
|
||||||
|
"spawnclass" "NSMonster"
|
||||||
|
"model" "models/monsters/soldier/tris.md2"
|
||||||
|
"mins" "-16 -16 -24"
|
||||||
|
"mins" "16 16 32"
|
||||||
|
"health" "100"
|
||||||
|
"bleed" "1"
|
||||||
|
"act_idle" "$SOLDIER_STAND"
|
||||||
|
"act_walk" "$SOLDIER_WALK"
|
||||||
|
"act_run" "$SOLDIER_RUN"
|
||||||
|
"act_smallFlinch" "$SOLDIER_PAIN"
|
||||||
|
"act_bigFlinch" "$SOLDIER_PAIN"
|
||||||
|
"act_twitch" "$SOLDIER_PAIN"
|
||||||
|
"act_dieViolent" "$SOLDIER_DEATH1"
|
||||||
|
"act_dieForward" "$SOLDIER_DEATH2"
|
||||||
|
"act_dieBackward" "$SOLDIER_DEATH3"
|
||||||
|
"act_dieSimple" "$SOLDIER_DEATH4"
|
||||||
|
"act_dieBackshot" "$SOLDIER_DEATH5"
|
||||||
|
"act_rangeAttack1" "$SOLDIER_ATTAK"
|
||||||
|
"eye_height" "24"
|
||||||
|
"team" "1"
|
||||||
|
"propdata" "actor_human"
|
||||||
|
}
|
|
@ -1,6 +1,6 @@
|
||||||
entityDef player
|
entityDef player
|
||||||
{
|
{
|
||||||
"spawnclass" "HLPlayer"
|
"spawnclass" "NSClientPlayer"
|
||||||
"health" "100"
|
"health" "100"
|
||||||
"maxarmor" "100"
|
"maxarmor" "100"
|
||||||
"bleeds" "1"
|
"bleeds" "1"
|
7
decls/def/projectiles.def
Normal file
7
decls/def/projectiles.def
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
entityDef projectile_bullet_base
|
||||||
|
{
|
||||||
|
"spawnclass" "NSProjectile"
|
||||||
|
"is_bullet" "1"
|
||||||
|
"decal_impact" "Impact.Shot"
|
||||||
|
"detonate_on_world" "1"
|
||||||
|
}
|
26
decls/def/spawns.def
Normal file
26
decls/def/spawns.def
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
entityDef info_player_start
|
||||||
|
{
|
||||||
|
"spawnclass" "NSSpawnPoint"
|
||||||
|
"editor_mins" "-16 -16 -36"
|
||||||
|
"editor_maxs" "16 16 36"
|
||||||
|
"editor_description" "Singleplayer Spawn Point"
|
||||||
|
"editor_color" "1 0 0"
|
||||||
|
}
|
||||||
|
|
||||||
|
entityDef info_player_deathmatch
|
||||||
|
{
|
||||||
|
"spawnclass" "NSSpawnPoint"
|
||||||
|
"editor_mins" "-16 -16 -36"
|
||||||
|
"editor_maxs" "16 16 36"
|
||||||
|
"editor_description" "Deathmatch Spawn Point"
|
||||||
|
"editor_color" "1 0 0"
|
||||||
|
}
|
||||||
|
|
||||||
|
entityDef info_player_coop
|
||||||
|
{
|
||||||
|
"spawnclass" "NSSpawnPoint"
|
||||||
|
"editor_mins" "-16 -16 -36"
|
||||||
|
"editor_maxs" "16 16 36"
|
||||||
|
"editor_description" "Cooperative Spawn Point"
|
||||||
|
"editor_color" "1 0 0"
|
||||||
|
}
|
|
@ -2,7 +2,7 @@ entityDef weapon_base
|
||||||
{
|
{
|
||||||
"spawnclass" "NSWeapon"
|
"spawnclass" "NSWeapon"
|
||||||
"mins" "-16 -16 -16"
|
"mins" "-16 -16 -16"
|
||||||
"maxs" "16 16 16"
|
"maxs" "16 16 32"
|
||||||
"spin" "1"
|
"spin" "1"
|
||||||
"renderfx" "$RM_Q2PULSE"
|
"renderfx" "$RM_Q2PULSE"
|
||||||
"rendercolor" "255 255 255"
|
"rendercolor" "255 255 255"
|
|
@ -27,6 +27,7 @@ entityDef weapon_bfg
|
||||||
"snd_fire" "weapon_bfg.fire"
|
"snd_fire" "weapon_bfg.fire"
|
||||||
|
|
||||||
// NSWeapon specific
|
// NSWeapon specific
|
||||||
|
"ammoIcon" "pics/a_cells.pcx"
|
||||||
"hudSlot" "9"
|
"hudSlot" "9"
|
||||||
"weight" "10"
|
"weight" "10"
|
||||||
}
|
}
|
|
@ -15,7 +15,7 @@ entityDef weapon_blaster
|
||||||
"def_onFire" "projectile_blaster"
|
"def_onFire" "projectile_blaster"
|
||||||
"inv_name" "Blaster"
|
"inv_name" "Blaster"
|
||||||
"ammoRequired" "0"
|
"ammoRequired" "0"
|
||||||
"punchAngle" "-2 0 0"
|
"punchAngle" "-1 0 0"
|
||||||
|
|
||||||
"act_fire" "1"
|
"act_fire" "1"
|
||||||
"act_holster" "4"
|
"act_holster" "4"
|
||||||
|
@ -25,6 +25,7 @@ entityDef weapon_blaster
|
||||||
"snd_fire" "weapon_blaster.fire"
|
"snd_fire" "weapon_blaster.fire"
|
||||||
|
|
||||||
// NSWeapon specific
|
// NSWeapon specific
|
||||||
|
"ammoIcon" "pics/a_blaster.pcx"
|
||||||
"hudSlot" "0"
|
"hudSlot" "0"
|
||||||
"weight" "10"
|
"weight" "10"
|
||||||
}
|
}
|
||||||
|
@ -46,9 +47,10 @@ entityDef projectile_blaster
|
||||||
"impact_gib" "1"
|
"impact_gib" "1"
|
||||||
|
|
||||||
"smoke_fly" "q2part.TR_BLASTERTRAIL"
|
"smoke_fly" "q2part.TR_BLASTERTRAIL"
|
||||||
"decal_detonate" "ExplosionScorch"
|
"decal_detonate" "Impact.BigShot"
|
||||||
"model_detonate" "q2part.teq2_blaster"
|
"model_detonate" "q2part.teq2_blaster"
|
||||||
"light_color" "1 1 0"
|
"detonate_offset" "1"
|
||||||
|
"light_color" "1 0.5 0"
|
||||||
"light_radius" "160"
|
"light_radius" "160"
|
||||||
"light_offset" "0 0 0"
|
"light_offset" "0 0 0"
|
||||||
"damage" "15"
|
"damage" "15"
|
|
@ -17,7 +17,7 @@ entityDef weapon_chaingun
|
||||||
"ammoType" "ammo_bullets"
|
"ammoType" "ammo_bullets"
|
||||||
"ammoRequired" "1"
|
"ammoRequired" "1"
|
||||||
"ammoPerShot" "1"
|
"ammoPerShot" "1"
|
||||||
"punchAngle" "-2 0 0"
|
"punchAngle" "-1.5 0 0"
|
||||||
"inv_ammo_bullets" "50"
|
"inv_ammo_bullets" "50"
|
||||||
"fireRate" "0.05"
|
"fireRate" "0.05"
|
||||||
|
|
||||||
|
@ -29,6 +29,7 @@ entityDef weapon_chaingun
|
||||||
"snd_fire" "weapon_chaingun.fire"
|
"snd_fire" "weapon_chaingun.fire"
|
||||||
|
|
||||||
// NSWeapon specific
|
// NSWeapon specific
|
||||||
|
"ammoIcon" "pics/a_bullets.pcx"
|
||||||
"hudSlot" "4"
|
"hudSlot" "4"
|
||||||
"weight" "10"
|
"weight" "10"
|
||||||
}
|
}
|
|
@ -17,7 +17,7 @@ entityDef weapon_grenadelauncher
|
||||||
"ammoType" "ammo_grenades"
|
"ammoType" "ammo_grenades"
|
||||||
"ammoRequired" "1"
|
"ammoRequired" "1"
|
||||||
"ammoPerShot" "1"
|
"ammoPerShot" "1"
|
||||||
"punchAngle" "-2 0 0"
|
"punchAngle" "-1 0 0"
|
||||||
"inv_ammo_grenades" "5"
|
"inv_ammo_grenades" "5"
|
||||||
|
|
||||||
"act_draw" "0"
|
"act_draw" "0"
|
||||||
|
@ -28,6 +28,7 @@ entityDef weapon_grenadelauncher
|
||||||
"snd_fire" "weapon_grenadelauncher.fire"
|
"snd_fire" "weapon_grenadelauncher.fire"
|
||||||
|
|
||||||
// NSWeapon specific
|
// NSWeapon specific
|
||||||
|
"ammoIcon" "pics/a_grenades.pcx"
|
||||||
"hudSlot" "5"
|
"hudSlot" "5"
|
||||||
"weight" "10"
|
"weight" "10"
|
||||||
}
|
}
|
|
@ -11,12 +11,13 @@ entityDef weapon_grenade
|
||||||
"model_view" "models/weapons/v_handgr/tris.md2"
|
"model_view" "models/weapons/v_handgr/tris.md2"
|
||||||
|
|
||||||
// weapon specific
|
// weapon specific
|
||||||
"def_onRelease" "projectile_grenade"
|
"def_onRelease" "projectile_handgrenade"
|
||||||
"inv_name" "Grenade launcher"
|
"inv_name" "Grenade launcher"
|
||||||
"ammoType" "ammo_grenades"
|
"ammoType" "ammo_grenades"
|
||||||
"ammoRequired" "1"
|
"ammoRequired" "1"
|
||||||
"ammoPerShot" "1"
|
"ammoPerShot" "1"
|
||||||
"punchAngle" "-2 0 0"
|
"punchAngle" "-2 0 0"
|
||||||
|
"inv_ammo_grenades" "5"
|
||||||
|
|
||||||
"act_fire" "0"
|
"act_fire" "0"
|
||||||
"act_release" "1"
|
"act_release" "1"
|
||||||
|
@ -27,6 +28,7 @@ entityDef weapon_grenade
|
||||||
"snd_fire" "weapon_grenadelauncher.fire"
|
"snd_fire" "weapon_grenadelauncher.fire"
|
||||||
|
|
||||||
// NSWeapon specific
|
// NSWeapon specific
|
||||||
|
"ammoIcon" "pics/a_grenades.pcx"
|
||||||
"hudSlot" "5"
|
"hudSlot" "5"
|
||||||
"weight" "10"
|
"weight" "10"
|
||||||
}
|
}
|
|
@ -26,6 +26,8 @@ entityDef weapon_hyperblaster
|
||||||
|
|
||||||
"snd_fire" "weapon_hyperblaster.fire"
|
"snd_fire" "weapon_hyperblaster.fire"
|
||||||
|
|
||||||
|
// NSWeapon specific
|
||||||
|
"ammoIcon" "pics/a_cells.pcx"
|
||||||
"hudSlot" "7"
|
"hudSlot" "7"
|
||||||
"weight" "10"
|
"weight" "10"
|
||||||
}
|
}
|
|
@ -24,6 +24,9 @@ entityDef weapon_machinegun
|
||||||
"act_holster" "3"
|
"act_holster" "3"
|
||||||
"inv_ammo_bullets" "50"
|
"inv_ammo_bullets" "50"
|
||||||
"snd_fire" "weapon_machinegun.fire"
|
"snd_fire" "weapon_machinegun.fire"
|
||||||
|
|
||||||
|
//NSWeapon specific
|
||||||
|
"ammoIcon" "pics/a_bullets.pcx"
|
||||||
"hudSlot" "3"
|
"hudSlot" "3"
|
||||||
"weight" "10"
|
"weight" "10"
|
||||||
}
|
}
|
|
@ -16,7 +16,7 @@ entityDef weapon_railgun
|
||||||
"ammoType" "ammo_slugs"
|
"ammoType" "ammo_slugs"
|
||||||
"ammoRequired" "1"
|
"ammoRequired" "1"
|
||||||
"ammoPerShot" "1"
|
"ammoPerShot" "1"
|
||||||
"punchAngle" "-2 0 0"
|
"punchAngle" "-3 0 0"
|
||||||
|
|
||||||
"act_draw" "0"
|
"act_draw" "0"
|
||||||
"act_fire" "1"
|
"act_fire" "1"
|
||||||
|
@ -24,9 +24,12 @@ entityDef weapon_railgun
|
||||||
"act_holster" "3"
|
"act_holster" "3"
|
||||||
"inv_ammo_slugs" "10"
|
"inv_ammo_slugs" "10"
|
||||||
|
|
||||||
"snd_fire" "weapon_railgun.fire"
|
"snd_fire" "weapon_railgun.fire"
|
||||||
|
|
||||||
|
// NSWeapon specific
|
||||||
|
"ammoIcon" "pics/a_cells.pcx"
|
||||||
"hudSlot" "8"
|
"hudSlot" "8"
|
||||||
|
"weight" "10"
|
||||||
}
|
}
|
||||||
|
|
||||||
entityDef projectile_railgun
|
entityDef projectile_railgun
|
|
@ -17,7 +17,7 @@ entityDef weapon_rocketlauncher
|
||||||
"ammoType" "ammo_rockets"
|
"ammoType" "ammo_rockets"
|
||||||
"ammoRequired" "1"
|
"ammoRequired" "1"
|
||||||
"ammoPerShot" "1"
|
"ammoPerShot" "1"
|
||||||
"punchAngle" "-2 0 0"
|
"punchAngle" "-1 0 0"
|
||||||
|
|
||||||
"act_draw" "0"
|
"act_draw" "0"
|
||||||
"act_fire" "1"
|
"act_fire" "1"
|
||||||
|
@ -28,6 +28,7 @@ entityDef weapon_rocketlauncher
|
||||||
"snd_fire" "weapon_rocketlauncher.fire"
|
"snd_fire" "weapon_rocketlauncher.fire"
|
||||||
|
|
||||||
// NSWeapon specific
|
// NSWeapon specific
|
||||||
|
"ammoIcon" "pics/a_rockets.pcx"
|
||||||
"hudSlot" "6"
|
"hudSlot" "6"
|
||||||
"weight" "10"
|
"weight" "10"
|
||||||
}
|
}
|
||||||
|
@ -36,7 +37,7 @@ entityDef projectile_rocket
|
||||||
{
|
{
|
||||||
"spawnclass" "NSProjectile"
|
"spawnclass" "NSProjectile"
|
||||||
"model" "models/objects/rocket/tris.md2"
|
"model" "models/objects/rocket/tris.md2"
|
||||||
"offset" "24 0 -8"
|
"offset" "24 4 -8"
|
||||||
|
|
||||||
"velocity" "1000"
|
"velocity" "1000"
|
||||||
"angular_velocity" "0 0 200"
|
"angular_velocity" "0 0 200"
|
||||||
|
@ -54,12 +55,29 @@ entityDef projectile_rocket
|
||||||
"smoke_fly" "q2part.trq2_rocket"
|
"smoke_fly" "q2part.trq2_rocket"
|
||||||
"decal_detonate" "ExplosionScorch"
|
"decal_detonate" "ExplosionScorch"
|
||||||
"model_detonate" "q2part.teq2_rocket_explosion"
|
"model_detonate" "q2part.teq2_rocket_explosion"
|
||||||
|
"detonate_offset" "24"
|
||||||
"light_color" "1 0.8 0.4"
|
"light_color" "1 0.8 0.4"
|
||||||
"light_radius" "160"
|
"light_radius" "160"
|
||||||
"light_offset" "0 0 0"
|
"light_offset" "0 0 0"
|
||||||
|
|
||||||
"snd_explode" "weapon_rocketlauncher.explode"
|
|
||||||
|
|
||||||
"def_damage" "damage_rocketDirect"
|
"def_damage" "damage_rocketDirect"
|
||||||
"def_splash_damage" "damage_rocketSplash"
|
"def_splash_damage" "damage_rocketSplash"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
entityDef damage_rocketDirect
|
||||||
|
{
|
||||||
|
"damage" "100"
|
||||||
|
"knockback" "300"
|
||||||
|
"push" "45000"
|
||||||
|
"gib" "1"
|
||||||
|
}
|
||||||
|
|
||||||
|
entityDef damage_rocketSplash
|
||||||
|
{
|
||||||
|
"knockback" "300"
|
||||||
|
"damage_min" "60"
|
||||||
|
"damage" "120"
|
||||||
|
"radius" "120"
|
||||||
|
"push" "10000"
|
||||||
|
"gib" "0"
|
||||||
|
}
|
|
@ -14,28 +14,29 @@ entityDef weapon_shotgun
|
||||||
// weapon specific
|
// weapon specific
|
||||||
"def_onFire" "projectile_shotgun"
|
"def_onFire" "projectile_shotgun"
|
||||||
"inv_name" "Shotgun"
|
"inv_name" "Shotgun"
|
||||||
"ammoType" "ammo_shells"
|
"ammoType" "ammo_shells"
|
||||||
"ammoRequired" "1"
|
"ammoRequired" "1"
|
||||||
"ammoPerShot" "1"
|
"ammoPerShot" "1"
|
||||||
"punchAngle" "-2 0 0"
|
"punchAngle" "-2 0 0"
|
||||||
"inv_ammo_shells" "10"
|
"inv_ammo_shells" "10"
|
||||||
|
|
||||||
"act_draw" "0"
|
"act_draw" "0"
|
||||||
"act_fire" "1"
|
"act_fire" "1"
|
||||||
"act_idle" "2"
|
"act_idle" "2"
|
||||||
"act_holster" "3"
|
"act_holster" "3"
|
||||||
|
|
||||||
"snd_fire" "weapon_shotgun.fire"
|
"snd_fire" "weapon_shotgun.fire"
|
||||||
|
|
||||||
// NSWeapon specific
|
// NSWeapon specific
|
||||||
"hudSlot" "1"
|
"ammoIcon" "pics/a_shells.pcx"
|
||||||
"weight" "10"
|
"hudSlot" "1"
|
||||||
|
"weight" "10"
|
||||||
}
|
}
|
||||||
|
|
||||||
entityDef projectile_shotgun
|
entityDef projectile_shotgun
|
||||||
{
|
{
|
||||||
"inherit" "projectile_bullet_base"
|
"inherit" "projectile_bullet_base"
|
||||||
"damage" "4"
|
"damage" "4"
|
||||||
"hitscans" "12"
|
"hitscans" "12"
|
||||||
"spread" "0.1220703125 0.06103515625"
|
"spread" "0.1220703125 0.06103515625"
|
||||||
}
|
}
|
|
@ -28,6 +28,7 @@ entityDef weapon_supershotgun
|
||||||
"snd_empty" "weapon.empty"
|
"snd_empty" "weapon.empty"
|
||||||
|
|
||||||
// NSWeapon specific
|
// NSWeapon specific
|
||||||
|
"ammoIcon" "pics/a_shells.pcx"
|
||||||
"hudSlot" "2"
|
"hudSlot" "2"
|
||||||
"weight" "10"
|
"weight" "10"
|
||||||
}
|
}
|
61
decls/sound/footsteps.sndshd
Normal file
61
decls/sound/footsteps.sndshd
Normal file
|
@ -0,0 +1,61 @@
|
||||||
|
step_default.left
|
||||||
|
{
|
||||||
|
attenuation static
|
||||||
|
footstep
|
||||||
|
sample player/step1.wav
|
||||||
|
sample player/step2.wav
|
||||||
|
}
|
||||||
|
step_default.right
|
||||||
|
{
|
||||||
|
attenuation static
|
||||||
|
footstep
|
||||||
|
sample player/step3.wav
|
||||||
|
sample player/step4.wav
|
||||||
|
}
|
||||||
|
|
||||||
|
step_slosh.left
|
||||||
|
{
|
||||||
|
attenuation static
|
||||||
|
footstep
|
||||||
|
sample player/wade1.wav
|
||||||
|
sample player/wade2.wav
|
||||||
|
sample player/wade3.wav
|
||||||
|
}
|
||||||
|
step_slosh.right
|
||||||
|
{
|
||||||
|
attenuation static
|
||||||
|
footstep
|
||||||
|
sample player/wade1.wav
|
||||||
|
sample player/wade2.wav
|
||||||
|
sample player/wade3.wav
|
||||||
|
}
|
||||||
|
|
||||||
|
step_ladder.left
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
step_ladder.right
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
step_wade.left
|
||||||
|
{
|
||||||
|
sample player/wade1.wav
|
||||||
|
sample player/wade2.wav
|
||||||
|
sample player/wade3.wav
|
||||||
|
}
|
||||||
|
step_wade.right
|
||||||
|
{
|
||||||
|
sample player/wade1.wav
|
||||||
|
sample player/wade2.wav
|
||||||
|
sample player/wade3.wav
|
||||||
|
}
|
||||||
|
|
||||||
|
step_swim.left
|
||||||
|
{
|
||||||
|
}
|
||||||
|
step_swim.right
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
|
@ -1,3 +1,10 @@
|
||||||
|
sfx_impact.default
|
||||||
|
{
|
||||||
|
sample "world/ric1.wav"
|
||||||
|
sample "world/ric2.wav"
|
||||||
|
sample "world/ric3.wav"
|
||||||
|
}
|
||||||
|
|
||||||
sfx_impact.bfg
|
sfx_impact.bfg
|
||||||
{
|
{
|
||||||
alerts
|
alerts
|
62
decls/sound/player.sndshd
Normal file
62
decls/sound/player.sndshd
Normal file
|
@ -0,0 +1,62 @@
|
||||||
|
Player.Wade
|
||||||
|
{
|
||||||
|
sample "player/wade1.wav"
|
||||||
|
sample "player/wade2.wav"
|
||||||
|
sample "player/wade3.wav"
|
||||||
|
}
|
||||||
|
|
||||||
|
Player.LightFall
|
||||||
|
{
|
||||||
|
sample "player/land1.wav"
|
||||||
|
}
|
||||||
|
|
||||||
|
Player.FallDamage
|
||||||
|
{
|
||||||
|
sample "player/land1.wav"
|
||||||
|
}
|
||||||
|
|
||||||
|
Player.WaterEnter
|
||||||
|
{
|
||||||
|
sample "player/watr_in.wav"
|
||||||
|
}
|
||||||
|
|
||||||
|
Player.GaspLight
|
||||||
|
{
|
||||||
|
sample "player/gasp1.wav"
|
||||||
|
}
|
||||||
|
|
||||||
|
Player.GaspHeavy
|
||||||
|
{
|
||||||
|
sample "player/gasp2.wav"
|
||||||
|
}
|
||||||
|
|
||||||
|
Player.Death
|
||||||
|
{
|
||||||
|
sample "player/male/death1.wav"
|
||||||
|
sample "player/male/death2.wav"
|
||||||
|
sample "player/male/death3.wav"
|
||||||
|
sample "player/male/death4.wav"
|
||||||
|
}
|
||||||
|
|
||||||
|
Player.Drown
|
||||||
|
{
|
||||||
|
sample "player/male/drown1.wav"
|
||||||
|
}
|
||||||
|
|
||||||
|
Player.Pain
|
||||||
|
{
|
||||||
|
sample "player/male/pain50_1.wav"
|
||||||
|
sample "player/male/pain50_2.wav"
|
||||||
|
}
|
||||||
|
|
||||||
|
Player.Swim
|
||||||
|
{
|
||||||
|
sample "player/wade1.wav"
|
||||||
|
sample "player/wade2.wav"
|
||||||
|
sample "player/wade3.wav"
|
||||||
|
}
|
||||||
|
|
||||||
|
Player.WaterExit
|
||||||
|
{
|
||||||
|
sample "player/watr_out.wav"
|
||||||
|
}
|
40
default_baseq2.cfg
Normal file
40
default_baseq2.cfg
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
set con_color "0 255 0"
|
||||||
|
set cross_color "0 255 0"
|
||||||
|
set fov "90"
|
||||||
|
set hostname "Mayhem II Server"
|
||||||
|
set maxplayers "8"
|
||||||
|
set pm_accelerate "10"
|
||||||
|
set pm_airaccelerate "10"
|
||||||
|
set pm_airstepsize "0"
|
||||||
|
set pm_boxcenter "1"
|
||||||
|
set pm_boxwidth "32"
|
||||||
|
set pm_crouchheight "28"
|
||||||
|
set pm_crouchspeed "90"
|
||||||
|
set pm_crouchviewheight "22"
|
||||||
|
set pm_edgefriction "1"
|
||||||
|
set pm_friction "6"
|
||||||
|
set pm_gravity "800"
|
||||||
|
set pm_jumpheight "270"
|
||||||
|
set pm_maxviewpitch "89"
|
||||||
|
set pm_minviewpitch "-89"
|
||||||
|
set pm_noclipaccelerate "5"
|
||||||
|
set pm_noclipspeed "500"
|
||||||
|
set pm_normalheight "56"
|
||||||
|
set pm_normalviewheight "46"
|
||||||
|
set pm_nospeedcap "0"
|
||||||
|
set pm_proneheight "0"
|
||||||
|
set pm_pronespeed "0"
|
||||||
|
set pm_proneviewheight "0"
|
||||||
|
set pm_runspeed "0"
|
||||||
|
set pm_stairSmoothing "1"
|
||||||
|
set pm_stamina "0"
|
||||||
|
set pm_staminarate "0"
|
||||||
|
set pm_staminathreshold "0"
|
||||||
|
set pm_stepsize "18"
|
||||||
|
set pm_stopspeed "100"
|
||||||
|
set pm_thirdPerson "0"
|
||||||
|
set pm_walkspeed "300"
|
||||||
|
set pm_wateraccelerate "10"
|
||||||
|
set pm_waterjumpheight "270"
|
||||||
|
set r_imageextensions "pcx wal tga"
|
||||||
|
set vgui_color "0 255 0"
|
39
default_controls.cfg
Normal file
39
default_controls.cfg
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
unbindall
|
||||||
|
bind CTRL "+duck"
|
||||||
|
bind DOWNARROW "+back"
|
||||||
|
bind ESCAPE "togglemenu"
|
||||||
|
bind F1 "vote yes"
|
||||||
|
bind F2 "vote no"
|
||||||
|
bind LEFTARROW "+left"
|
||||||
|
bind MOUSE1 "+attack"
|
||||||
|
bind MOUSE2 "+attack2"
|
||||||
|
bind MWHEELDOWN "invnext"
|
||||||
|
bind MWHEELUP "invprev"
|
||||||
|
bind RIGHTARROW "+right"
|
||||||
|
bind SHIFT "+speed"
|
||||||
|
bind SPACE "+jump"
|
||||||
|
bind TAB "+showscores"
|
||||||
|
bind UPARROW "+forward"
|
||||||
|
bind 0 "slot10"
|
||||||
|
bind 1 "slot1"
|
||||||
|
bind 2 "slot2"
|
||||||
|
bind 3 "slot3"
|
||||||
|
bind 4 "slot4"
|
||||||
|
bind 5 "slot5"
|
||||||
|
bind 6 "slot6"
|
||||||
|
bind 7 "slot7"
|
||||||
|
bind 8 "slot8"
|
||||||
|
bind 9 "slot9"
|
||||||
|
bind ` "toggleconsole"
|
||||||
|
bind a "+moveleft"
|
||||||
|
bind d "+moveright"
|
||||||
|
bind e "+use"
|
||||||
|
bind f "impulse 100"
|
||||||
|
bind r "+reload"
|
||||||
|
bind s "+back"
|
||||||
|
bind t "impulse 201"
|
||||||
|
bind u "messagemode2"
|
||||||
|
bind w "+forward"
|
||||||
|
bind y "messagemode"
|
||||||
|
bind q "weaplast"
|
||||||
|
bind ~ "toggleconsole"
|
188
default_cvar.cfg
Normal file
188
default_cvar.cfg
Normal file
|
@ -0,0 +1,188 @@
|
||||||
|
// generated by Nuclide, do not modify
|
||||||
|
set _pext_infoblobs "1" // override
|
||||||
|
set _pext_vrinputs "0" // override
|
||||||
|
set _q3bsp_bihtraces "1" // override
|
||||||
|
set ai_debugAlerts "0" // Show prints when AI gets alerted to a position.
|
||||||
|
set ai_debugLogic "0" // Show prints when AI makes decisions regarding thinking.
|
||||||
|
set ai_debugNav "0" // Show prints when AI makes decisions regarding navigation.
|
||||||
|
set ai_debugScripts "0" // Show prints when AI interacts with scripted sequences.
|
||||||
|
set ai_enable "1" // Disable AI behaviour when set.
|
||||||
|
set ai_runSpeed "320" // Default run speed chosen by AI characters, in units per second.
|
||||||
|
set ai_walkSpeed "150" // Default walk speed chosen by AI characters, in units per second.
|
||||||
|
set bot_aimless "0" // Bots will not set goals for themselves when set.
|
||||||
|
set bot_backspeed "133" // Bots desired maximum backwards speed.
|
||||||
|
set bot_crouch "0" // Bots are all forced to move crouched.
|
||||||
|
set bot_developer "0" // TODO: remove?
|
||||||
|
set bot_dont_shoot "0" // Bots never actually shoot.
|
||||||
|
set bot_enable "1" // Bot support enabled when set.
|
||||||
|
set bot_fastChat "0" // Bots will chat instantly instead of 'typing'.
|
||||||
|
set bot_forwardspeed "190" // Bots desired maximum forward speed.
|
||||||
|
set bot_minClients "-1" // How many player slots are to be filled, -1 is 'untouched'.
|
||||||
|
set bot_noChat "0" // Bots will no longer communicate when set.
|
||||||
|
set bot_pause "0" // Bots logic will be paused.
|
||||||
|
set bot_prefix "" // Bot nickname prefix for newly added bots.
|
||||||
|
set bot_prone "0" // Bots are all forced to move prone.
|
||||||
|
set bot_sidespeed "152" // Bots desired maximum strafe speed.
|
||||||
|
set bot_skill "2" // Bot version of cvar "skill".
|
||||||
|
set bot_walk "0" // Bots are forced to walk slowly.
|
||||||
|
set cfg_save_auto "1" // override
|
||||||
|
set cg_chatEnabled "1" // Enable the display of chat messages.
|
||||||
|
set cg_damageShake "0" // Shake the display upon taking damage.
|
||||||
|
set cg_hudAspect "0" // Aspect ratio override for the HUD. 1.0 is 1:1 square, 0 is auto.
|
||||||
|
set cg_modelBobHeight "0.0" // Intensity at which objects with the "spin" flag bob.
|
||||||
|
set cg_modelBobHeightSpeed "0.0" // Speed at which objects with the "spin" flag bob.
|
||||||
|
set cg_modelSpinPitch "0.0" // Intensity at which objects with the "spin" flag change their pitch.
|
||||||
|
set cg_modelSpinPitchSpeed "0.0" // Speed at which objects with the "spin" flag change their pitch.
|
||||||
|
set cg_modelSpinRoll "0.0" // Intensity at which objects with the "spin" flag roll.
|
||||||
|
set cg_modelSpinRollSpeed "0.0" // Speed at which objects with the "spin" flag roll.
|
||||||
|
set cg_modelSpinSpeed "120.0" // Speed at which an object with the "spin" key spins.
|
||||||
|
set cg_muzzleDLight "1" // Enable dlights being spawned from muzzleflashes.
|
||||||
|
set cg_muzzleDLightColor "1.0 0.45 0.0" // Color of muzzleflash dlights.
|
||||||
|
set cg_viewZSmoothingMax "16" // Camera vertical-axis smoothing max delta threshold.
|
||||||
|
set cg_viewZSmoothingMin "1" // Camera vertical-axis smoothing delta threshold.
|
||||||
|
set cg_viewZSmoothingTime "0.1" // Camera vertical-axis smoothing steps.
|
||||||
|
set cg_viewmodelFlip "0" // Flip the viewmodel.
|
||||||
|
set cg_viewmodelFov "90" // Viewmodel field of view.
|
||||||
|
set cg_viewmodelLag "0" // Viewmodel lag when camera looks around.
|
||||||
|
set cg_viewmodelOffset "0 0 0" // Viewmodel offset in relative units (forward, right, up)
|
||||||
|
set cg_viewmodelPass "1" // Renders viewmodel in separate drawpass (no lighting)
|
||||||
|
set cg_viewmodelScale "1.0" // Viewmodel scale multiplier, affects bob as well.
|
||||||
|
set cl_backspeed "400" // Client's desired backwards speed.
|
||||||
|
set cl_bob "0" // override
|
||||||
|
set cl_cursor_scale "1" // override
|
||||||
|
set cl_decals "128" // override
|
||||||
|
set cl_forwardspeed "400" // Client's desired forward speed.
|
||||||
|
set cl_musicstyle "0" // override
|
||||||
|
set cl_sidespeed "400" // Client's desired side-step speed.
|
||||||
|
set con_color "255 150 0" // HUD color value, R G B, 0-255 for each channel.
|
||||||
|
set con_notifylines "0" // override
|
||||||
|
set dev_cornerspeed "0" // Override speed set by path_corner entities.
|
||||||
|
set dev_loddistance "0" // Override distance at which func_lod entities disappear.
|
||||||
|
set dev_skyscale "" // Override for the sky_camera room scale.
|
||||||
|
set dsp_soundscapes "1" // Enable the use of sound scapes.
|
||||||
|
set g_damageScale "1" // final damage scale on objects
|
||||||
|
set g_gravity "800" // Global gravity setting.
|
||||||
|
set g_logLevel "2" // Game console log levels. 0 = None, 1 = Errors, 2 = Warnings, 3 = Extra Messages
|
||||||
|
set g_logTimestamps "0" // When 1, will print time stamps before the log message
|
||||||
|
set gl_conback "gfx/devcon" // override
|
||||||
|
set gl_mindist "4" // override
|
||||||
|
set gl_blendsprites "0" // override
|
||||||
|
set gl_specular "1" // override
|
||||||
|
set gl_specular_fallback "0" // override
|
||||||
|
set in_zoomSensitivity "1.0" // Input sensitivity multiplier for when you're zoomed in.
|
||||||
|
set logging_enabled "0" // Enable server-side logging for game specific events.
|
||||||
|
set maxpitch "89" // override
|
||||||
|
set menu_helptext_size "11"
|
||||||
|
set menu_intro "1"
|
||||||
|
set menu_steambg "0"
|
||||||
|
set menu_updating "0"
|
||||||
|
set media_repeat "0" // override
|
||||||
|
set minpitch "-89" // override
|
||||||
|
set motdfile "motd.txt"
|
||||||
|
set mp_allowvote "1"
|
||||||
|
set mp_decals "128"
|
||||||
|
set mp_flashlight "1"
|
||||||
|
set mp_td_dmgToKick "300"
|
||||||
|
set mp_td_dmgToWarn "200"
|
||||||
|
set nav_linksize "256"
|
||||||
|
set nav_radius "32"
|
||||||
|
set phys_developer "0" // Shows debug prints regarding physics operations when set.
|
||||||
|
set phys_impactforcescale "1" // Scaler for impact forces on physically simulated entities.
|
||||||
|
set phys_pushscale "1" // Scaler for push forces on physically simulated entities.
|
||||||
|
set pm_accelerate "10"
|
||||||
|
set pm_airaccelerate "10"
|
||||||
|
set pm_airstepsize "0"
|
||||||
|
set pm_boxcenter "1"
|
||||||
|
set pm_boxwidth "32"
|
||||||
|
set pm_crouchheight "36"
|
||||||
|
set pm_crouchspeed "90"
|
||||||
|
set pm_crouchviewheight "30"
|
||||||
|
set pm_edgefriction "1"
|
||||||
|
set pm_friction "4"
|
||||||
|
set pm_gravity "800"
|
||||||
|
set pm_jumpheight "265"
|
||||||
|
set pm_maxviewpitch "89"
|
||||||
|
set pm_minviewpitch "-89"
|
||||||
|
set pm_noclipaccelerate "5"
|
||||||
|
set pm_noclipspeed "500"
|
||||||
|
set pm_normalheight "72"
|
||||||
|
set pm_normalviewheight "64"
|
||||||
|
set pm_nospeedcap "0"
|
||||||
|
set pm_proneheight "0"
|
||||||
|
set pm_pronespeed "40.5"
|
||||||
|
set pm_proneviewheight "16"
|
||||||
|
set pm_runspeed "0"
|
||||||
|
set pm_runfiring "1"
|
||||||
|
set pm_stairSmoothing "1"
|
||||||
|
set pm_stamina "24"
|
||||||
|
set pm_staminarate "0.75"
|
||||||
|
set pm_staminathreshold "4"
|
||||||
|
set pm_stepsize "18"
|
||||||
|
set pm_stopspeed "100"
|
||||||
|
set pm_thirdPerson "0"
|
||||||
|
set pm_walkspeed "270"
|
||||||
|
set pm_wateraccelerate "10"
|
||||||
|
set pm_waterjumpheight "350"
|
||||||
|
set r_autoscale "1" // When set, will ensure the game is at 640x480 type scaling.
|
||||||
|
set r_drawdecals "1" // Shows decal entities managed by the game when set.
|
||||||
|
set r_ignoreentpvs "0" // override
|
||||||
|
set r_imageextensions "tga bmp pcx png jpg" // override
|
||||||
|
set r_meshpitch "1" // override
|
||||||
|
set r_pixelscale "0" // When set, will ensure the 3D rendered scene is restricted to 640x480 resolution in definition.
|
||||||
|
set r_renderEntityInfo "0" // Display visual information about entities in-world.
|
||||||
|
set r_showDlights "0" // Displays dynamic light representations in-world.
|
||||||
|
set r_showPhysicsInfo "0" // Displays physics entity information in-world.
|
||||||
|
set r_skipGlows "0" // Skip rendering of glowing sprites.
|
||||||
|
set r_skipLensFlares "0" // Skip rendering of lens flares.
|
||||||
|
set r_skipWorld "0" // Skip rendering of the world.
|
||||||
|
set rm_unlit_additive "1" // Render entities with the 'additive' rendermode fullbright.
|
||||||
|
set rm_unlit_texture "1" // Render entities with the 'texture' rendermode fullbright.
|
||||||
|
set rope_debug "0" // Shows primitive debug rendering of a rope when set.
|
||||||
|
set rope_fast "1" // Don't perform expensive calculations on the rope when set.
|
||||||
|
set rope_maxsegments "-1" // Limit rope segments. -1 means no limit.
|
||||||
|
set rope_sag "2" // Rope sagging multiplier.
|
||||||
|
set rope_swing "2" // Rope swinging multiplier.
|
||||||
|
set s_logLevel "2" // Sound console log levels. 0 = None, 1 = Errors, 2 = Warnings, 3 = Extra Messages
|
||||||
|
set scr_conalpha "1" // override
|
||||||
|
set scr_loadingscreen_aspect "1" // override
|
||||||
|
set sp_decals "128"
|
||||||
|
set sv_friendlyFire "0" // Team-inflicted damage is possible when set.
|
||||||
|
set sv_gameplayfix_setmodelrealbox "1" // override
|
||||||
|
set sv_gameplayfix_setmodelsize_qw "1" // override
|
||||||
|
set sv_levelexec "1" // Will search and execute `<gamedir>/maps/currentmap.cfg` when set.
|
||||||
|
set sv_plugins "1" // Enable the use of server-side plugins when set.
|
||||||
|
set v_contentblend "0" // override
|
||||||
|
set vehicle_developer "0" // Shows vehicle related debug prints when set.
|
||||||
|
set vgui_color "255 170 0" // Default primary color for VGUI widgets.
|
||||||
|
set vid_brightness "0" // Controls display brightness.
|
||||||
|
set violence_ablood "1" // Enable non-human (alternative) blood.
|
||||||
|
set violence_agibs "1" // Enable non-human (alternative) gibs.
|
||||||
|
set violence_hblood "1" // Enable human blood.
|
||||||
|
set violence_hgibs "1" // Enable human giblets.
|
||||||
|
set xr_roomScale "1.0" // XR: Room scale multiplier.
|
||||||
|
set xr_testInputs "0" // XR: Enable fake inputs, to debug the VR camera and weapon inputs.
|
||||||
|
set xr_viewHeight "-48" // XR: Default view-height offset.
|
||||||
|
set physics_ode_quadtree_depth "3" // override
|
||||||
|
set physics_ode_contactsurfacelayer "0" // override
|
||||||
|
set physics_ode_worldquickstep "1" // override
|
||||||
|
set physics_ode_worldquickstep_iterations "10" // was 20, too much
|
||||||
|
set physics_ode_contact_mu "1" // override
|
||||||
|
set physics_ode_contact_erp "0.96" // override
|
||||||
|
set physics_ode_contact_cfm "0.001" // override
|
||||||
|
set physics_ode_world_damping "-1" // override
|
||||||
|
set physics_ode_world_damping_linear "-1" // override
|
||||||
|
set physics_ode_world_damping_linear_threshold "-1" // override
|
||||||
|
set physics_ode_world_damping_angular "-1" // override
|
||||||
|
set physics_ode_world_damping_angular_threshold "-1" // override
|
||||||
|
set physics_ode_world_erp "0.96" // override
|
||||||
|
set physics_ode_world_cfm "0.001" // override
|
||||||
|
set physics_ode_iterationsperframe "1" // override
|
||||||
|
set physics_ode_movelimit "1.0" // override
|
||||||
|
set physics_ode_spinlimit "1300" // was 2000
|
||||||
|
set physics_ode_autodisable "1" // override
|
||||||
|
set physics_ode_autodisable_steps "5" // override
|
||||||
|
set physics_ode_autodisable_time "0.1" // override
|
||||||
|
set physics_ode_autodisable_threshold_linear "0.05" // Was 0.2, too lenient.
|
||||||
|
set physics_ode_autodisable_threshold_angular "0.01" // override
|
||||||
|
set physics_ode_autodisable_threshold_samples "5" // override
|
||||||
|
set physics_ode_maxspeed "800" // was 0
|
11
default_video.cfg
Normal file
11
default_video.cfg
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
set gl_overbright 0
|
||||||
|
set gl_overbright_models 0
|
||||||
|
set gl_overbright_all 0
|
||||||
|
set r_lightmap_format rgb8
|
||||||
|
set gl_halflambert 1
|
||||||
|
set gl_ldr 1
|
||||||
|
set gamma 1.0
|
||||||
|
set brightness 0.0
|
||||||
|
set r_nolerp 0
|
||||||
|
set r_noframegrouplerp 0
|
||||||
|
set vid_srgb 0
|
2
fonts/chat.font
Normal file
2
fonts/chat.font
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
path "pics/conchars.pcx"
|
||||||
|
size 8
|
2
fonts/font16.font
Normal file
2
fonts/font16.font
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
path "pics/conchars.pcx"
|
||||||
|
size 8
|
2
fonts/font20.font
Normal file
2
fonts/font20.font
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
path "pics/conchars.pcx"
|
||||||
|
size 8
|
2
fonts/fontcon.font
Normal file
2
fonts/fontcon.font
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
path "pics/conchars.pcx"
|
||||||
|
size 8
|
2
fonts/ui.font
Normal file
2
fonts/ui.font
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
path "pics/conchars.pcx"
|
||||||
|
size 8
|
5
gfx/background.mat
Normal file
5
gfx/background.mat
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
{
|
||||||
|
{
|
||||||
|
map "pics/conback.pcx"
|
||||||
|
}
|
||||||
|
}
|
54
liblist.gam
Normal file
54
liblist.gam
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
// window title
|
||||||
|
game "Mayhem II (Quake II)"
|
||||||
|
// main game directory
|
||||||
|
gamedir "baseq2"
|
||||||
|
// folder to also include in the path (before game dir)
|
||||||
|
fallback_dir ""
|
||||||
|
// first folder to include, before gamedir and fallback_dir
|
||||||
|
base_dir ""
|
||||||
|
// author information
|
||||||
|
url_info "www.frag-net.com"
|
||||||
|
// download location (.zip/pk3)
|
||||||
|
url_dl
|
||||||
|
// version string
|
||||||
|
version "1.0"
|
||||||
|
// size of game in bytes
|
||||||
|
size 10519918
|
||||||
|
// whether this game is only for dedicated servers
|
||||||
|
svonly 0
|
||||||
|
// whether this game has a client-side progs
|
||||||
|
cldll 1
|
||||||
|
// if we're singleplayer, multiplayer or both
|
||||||
|
type "Both"
|
||||||
|
// minimum game-revision required to play
|
||||||
|
minversion 0
|
||||||
|
// if we should show player model selection in the multiplayer options
|
||||||
|
nomodels 1
|
||||||
|
// if we should allow spraylogos in the multiplayer options
|
||||||
|
nosprays 0
|
||||||
|
// name of the entity used for multiplayer map identifcation
|
||||||
|
mpentity "info_player_deathmatch"
|
||||||
|
// which server progs.dat to use
|
||||||
|
gamedll "progs.dat"
|
||||||
|
// which map we'll start a new singleplayer game on
|
||||||
|
startmap "base1"
|
||||||
|
// which map the training button will go to
|
||||||
|
trainingmap ""
|
||||||
|
// names of the packages this game needs
|
||||||
|
pkgname ""
|
||||||
|
// name of file inside the packages we should check for
|
||||||
|
pkgfile ""
|
||||||
|
// which chat-room to join by default
|
||||||
|
chatroom "quake"
|
||||||
|
// which file is to view when clicking the readme menu button
|
||||||
|
readme "readme.txt"
|
||||||
|
// which map to use as a level background
|
||||||
|
menumap ""
|
||||||
|
// what movie to play when starting the game
|
||||||
|
introvideo ""
|
||||||
|
// whether to use a steam styled resource background cut into multiple parts
|
||||||
|
steambg 0
|
||||||
|
// the title text of the game
|
||||||
|
title "Mayhem II"
|
||||||
|
// the subtitle of the game
|
||||||
|
subtitle ""
|
BIN
menu.dat
Normal file
BIN
menu.dat
Normal file
Binary file not shown.
22
models/monsters/soldier/tris.md2.framegroups
Normal file
22
models/monsters/soldier/tris.md2.framegroups
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
0 12 10 0
|
||||||
|
12 17 10 0
|
||||||
|
30 9 10 0
|
||||||
|
39 6 10 0
|
||||||
|
45 5 10 0
|
||||||
|
50 5 10 0
|
||||||
|
55 6 10 0
|
||||||
|
62 18 10 0
|
||||||
|
80 17 10 0
|
||||||
|
97 12 10 1
|
||||||
|
109 18 10 1
|
||||||
|
127 19 10 1
|
||||||
|
146 30 10 0
|
||||||
|
176 39 10 0
|
||||||
|
215 33 10 1
|
||||||
|
248 24 10 1
|
||||||
|
272 36 10 0
|
||||||
|
308 35 10 0
|
||||||
|
343 45 10 0
|
||||||
|
388 53 10 0
|
||||||
|
441 24 10 0
|
||||||
|
465 10 10 0
|
BIN
progs.dat
Normal file
BIN
progs.dat
Normal file
Binary file not shown.
BIN
progs/deathmatch.dat
Normal file
BIN
progs/deathmatch.dat
Normal file
Binary file not shown.
BIN
progs/singleplayer.dat
Normal file
BIN
progs/singleplayer.dat
Normal file
Binary file not shown.
4
quake.rc
Normal file
4
quake.rc
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
exec default_cvar.cfg
|
||||||
|
exec default_controls.cfg
|
||||||
|
exec default_video.cfg
|
||||||
|
exec default_baseq2.cfg
|
12
scripts/bots.txt
Normal file
12
scripts/bots.txt
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
{
|
||||||
|
name Athena
|
||||||
|
model female
|
||||||
|
topcolor 0xeff
|
||||||
|
bottomcolor 0xff0020
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name Howitzer
|
||||||
|
model male
|
||||||
|
topcolor 0xeff
|
||||||
|
bottomcolor 0xff0020
|
||||||
|
}
|
13
scripts/hud.shader
Normal file
13
scripts/hud.shader
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
gfx/hud/health
|
||||||
|
{
|
||||||
|
{
|
||||||
|
map pics/i_health.pcx
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
gfx/hud/armor
|
||||||
|
{
|
||||||
|
{
|
||||||
|
map pics/i_combatarmor.pcx
|
||||||
|
}
|
||||||
|
}
|
39
scripts/map_blacklist
Normal file
39
scripts/map_blacklist
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
base1.bsp
|
||||||
|
base2.bsp
|
||||||
|
base3.bsp
|
||||||
|
train.bsp
|
||||||
|
bunk1.bsp
|
||||||
|
ware1.bsp
|
||||||
|
ware2.bsp
|
||||||
|
jail1.bsp
|
||||||
|
jail2.bsp
|
||||||
|
jail3.bsp
|
||||||
|
jail4.bsp
|
||||||
|
jail5.bsp
|
||||||
|
security.bsp
|
||||||
|
mintro.bsp
|
||||||
|
mine1.bsp
|
||||||
|
mine2.bsp
|
||||||
|
mine3.bsp
|
||||||
|
mine4.bsp
|
||||||
|
fact1.bsp
|
||||||
|
fact2.bsp
|
||||||
|
fact3.bsp
|
||||||
|
power1.bsp
|
||||||
|
power2.bsp
|
||||||
|
cool1.bsp
|
||||||
|
waste1.bsp
|
||||||
|
waste2.bsp
|
||||||
|
waste3.bsp
|
||||||
|
biggun.bsp
|
||||||
|
hangar1.bsp
|
||||||
|
hangar2.bsp
|
||||||
|
lab.bsp
|
||||||
|
command.bsp
|
||||||
|
strike.bsp
|
||||||
|
space.bsp
|
||||||
|
city1.bsp
|
||||||
|
city2.bsp
|
||||||
|
city3.bsp
|
||||||
|
boss1.bsp
|
||||||
|
boss2.bsp
|
26
scripts/propdata.txt
Normal file
26
scripts/propdata.txt
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
"PropData.txt"
|
||||||
|
{
|
||||||
|
"actor_human"
|
||||||
|
{
|
||||||
|
"breakable_model" "gibs_human"
|
||||||
|
"breakable_count" "6"
|
||||||
|
}
|
||||||
|
|
||||||
|
"BreakableModels"
|
||||||
|
{
|
||||||
|
"gibs_human"
|
||||||
|
{
|
||||||
|
"models/objects/gibs/head/tris.md2" "5.0"
|
||||||
|
"models/objects/gibs/leg/tris.md2" "5.0"
|
||||||
|
"models/objects/gibs/sm_metal/tris.md2" "5.0"
|
||||||
|
"models/objects/gibs/head2/tris.md2" "5.0"
|
||||||
|
"models/objects/gibs/gear/tris.md2" "5.0"
|
||||||
|
"models/objects/gibs/sm_meat/tris.md2" "5.0"
|
||||||
|
"models/objects/gibs/arm/tris.md2" "5.0"
|
||||||
|
"models/objects/gibs/chest/tris.md2" "5.0"
|
||||||
|
"models/objects/gibs/bone2/tris.md2" "5.0"
|
||||||
|
"models/objects/gibs/skull/tris.md2" "5.0"
|
||||||
|
"models/objects/gibs/bone/tris.md2" "5.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
31
scripts/surfaceproperties.txt
Normal file
31
scripts/surfaceproperties.txt
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
default
|
||||||
|
{
|
||||||
|
part_bulletimpact "q2part.teq2_gunshot"
|
||||||
|
bulletimpact "sfx_impact.default"
|
||||||
|
stepleft "step_default.left"
|
||||||
|
stepright "step_default.right"
|
||||||
|
}
|
||||||
|
|
||||||
|
water
|
||||||
|
{
|
||||||
|
part_bulletimpact "fx_impact.water"
|
||||||
|
bulletimpact "sfx_impact.slosh"
|
||||||
|
stepleft "step_slosh.left"
|
||||||
|
stepright "step_slosh.right"
|
||||||
|
}
|
||||||
|
|
||||||
|
lava
|
||||||
|
{
|
||||||
|
part_bulletimpact "impact_default.main"
|
||||||
|
bulletimpact "sfx_impact.slosh"
|
||||||
|
stepleft "step_slosh.left"
|
||||||
|
stepright "step_slosh.right"
|
||||||
|
}
|
||||||
|
|
||||||
|
slime
|
||||||
|
{
|
||||||
|
part_bulletimpact "impact_default.main"
|
||||||
|
bulletimpact "sfx_impact.slosh"
|
||||||
|
stepleft "step_slosh.left"
|
||||||
|
stepright "step_slosh.right"
|
||||||
|
}
|
1
scripts/ui_style.txt
Normal file
1
scripts/ui_style.txt
Normal file
|
@ -0,0 +1 @@
|
||||||
|
NOICONS=1
|
7
src/Makefile
Normal file
7
src/Makefile
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
QCC=fteqcc
|
||||||
|
|
||||||
|
all:
|
||||||
|
cd client && $(MAKE)
|
||||||
|
cd server && $(MAKE)
|
||||||
|
cd menu && $(MAKE)
|
||||||
|
cd rules && $(MAKE)
|
4
src/client/Makefile
Normal file
4
src/client/Makefile
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
QCC=fteqcc
|
||||||
|
|
||||||
|
all:
|
||||||
|
$(QCC) $(CFLAGS) -I../../../src/platform/ progs.src
|
23
src/client/defs.h
Normal file
23
src/client/defs.h
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2016-2022 Vera Visions LLC.
|
||||||
|
*
|
||||||
|
* Permission to use, copy, modify, and distribute this software for any
|
||||||
|
* purpose with or without fee is hereby granted, provided that the above
|
||||||
|
* copyright notice and this permission notice appear in all copies.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||||
|
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||||
|
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||||
|
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||||
|
* WHATSOEVER RESULTING FROM LOSS OF MIND, USE, DATA OR PROFITS, WHETHER
|
||||||
|
* IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
|
||||||
|
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
vector g_hudmins;
|
||||||
|
vector g_hudres;
|
||||||
|
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
float temp;
|
||||||
|
} g_seatslocal[4], *pSeatLocal;
|
59
src/client/hud.qc
Normal file
59
src/client/hud.qc
Normal file
|
@ -0,0 +1,59 @@
|
||||||
|
#pragma PROGS_DAT "../../hud.dat"
|
||||||
|
|
||||||
|
#include "../../../src/client/api.h"
|
||||||
|
|
||||||
|
const float baseIconSize = 32.0;
|
||||||
|
const float baseIconPadding = 16.0;
|
||||||
|
|
||||||
|
font_s FONT_HUD;
|
||||||
|
var string g_ammoPic;
|
||||||
|
|
||||||
|
void
|
||||||
|
HUD_Init(void)
|
||||||
|
{
|
||||||
|
font.Load("fonts/font16.font", FONT_HUD);
|
||||||
|
g_ammoPic = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
HUD_Draw(void)
|
||||||
|
{
|
||||||
|
|
||||||
|
vector hud_mins = screen.HUDMins();
|
||||||
|
vector hud_size = screen.HUDSize();
|
||||||
|
vector hudSize = hud_size;
|
||||||
|
vector iconPos = hud_mins + (hudSize / 2);
|
||||||
|
iconPos[1] = (hudSize[1] - baseIconSize) - baseIconPadding;
|
||||||
|
|
||||||
|
string healthValue = ftos(player.GetHealth());
|
||||||
|
string armorValue = ftos(player.GetArmor());
|
||||||
|
string ammoValue = ftos(weapon.GetAmmo1());
|
||||||
|
|
||||||
|
/* ammo */
|
||||||
|
if (weapon.AmmoRequired() == true) {
|
||||||
|
draw.RText([hudSize[0] - baseIconPadding - baseIconSize - baseIconPadding, iconPos[1]], ammoValue, FONT_HUD);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (g_ammoPic != "") {
|
||||||
|
draw.Pic([hudSize[0] - baseIconPadding - baseIconSize, iconPos[1]], g_ammoPic, [baseIconSize, baseIconSize], [1,1,1], 1.0f);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* health, armor icons */
|
||||||
|
draw.RText(iconPos + [-((baseIconSize/2) + (baseIconPadding/2)) - baseIconPadding, 0], healthValue, FONT_HUD);
|
||||||
|
draw.Pic(iconPos + [-((baseIconSize/2) + (baseIconPadding/2)), 0], "gfx/hud/health", [baseIconSize, baseIconSize], [1,1,1], 1.0f);
|
||||||
|
|
||||||
|
draw.Text(iconPos + [(baseIconSize/2) + (baseIconPadding/2) + baseIconSize + baseIconPadding, 0], armorValue, FONT_HUD);
|
||||||
|
draw.Pic(iconPos + [(baseIconSize/2) + (baseIconPadding/2), 0], "gfx/hud/armor", [baseIconSize, baseIconSize], [1,1,1], 1.0f);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
HUD_DrawSpectator(vector hud_mins, vector hud_size)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
HUD_WeaponSwitched(string weaponName)
|
||||||
|
{
|
||||||
|
g_ammoPic = entityDef.GetString(weaponName, "ammoIcon");
|
||||||
|
}
|
482
src/client/main.qc
Normal file
482
src/client/main.qc
Normal file
|
@ -0,0 +1,482 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2016-2021 Marco Cawthorne <marco@icculus.org>
|
||||||
|
*
|
||||||
|
* Permission to use, copy, modify, and distribute this software for any
|
||||||
|
* purpose with or without fee is hereby granted, provided that the above
|
||||||
|
* copyright notice and this permission notice appear in all copies.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||||
|
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||||
|
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||||
|
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||||
|
* WHATSOEVER RESULTING FROM LOSS OF MIND, USE, DATA OR PROFITS, WHETHER
|
||||||
|
* IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
|
||||||
|
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
float m_flSpeed;
|
||||||
|
float m_flFracSin;
|
||||||
|
float m_flTime;
|
||||||
|
float m_flMove;
|
||||||
|
float m_flDelta;
|
||||||
|
int m_iCycle;
|
||||||
|
} g_camBobVars[4], *pCamBob;
|
||||||
|
|
||||||
|
/* tilts the camera for a head-bob like effect when moving */
|
||||||
|
vector
|
||||||
|
Camera_RunBob(vector camera_angle)
|
||||||
|
{
|
||||||
|
if (!autocvar(v_cambob, 1, "Enables bobbing effect for the first-person camera"))
|
||||||
|
return camera_angle;
|
||||||
|
|
||||||
|
int s = (float)getproperty(VF_ACTIVESEAT);
|
||||||
|
pCamBob = &g_camBobVars[s];
|
||||||
|
|
||||||
|
/* we don't really care about the vertical velocity */
|
||||||
|
vector speed = pSeat->m_vecPredictedVelocity;
|
||||||
|
speed[2] = 0.0f;
|
||||||
|
pCamBob->m_flSpeed = vlen(speed);
|
||||||
|
|
||||||
|
if (pCamBob->m_flSpeed > 330.0f)
|
||||||
|
pCamBob->m_flSpeed = 330.0f;
|
||||||
|
|
||||||
|
/* don't bother on low speeds */
|
||||||
|
if ( pCamBob->m_flSpeed < 5.0f ) {
|
||||||
|
pCamBob->m_flMove = 0.0f;
|
||||||
|
pCamBob->m_flTime = 0.0f; /* progress has halted, start anew */
|
||||||
|
return camera_angle;
|
||||||
|
} else {
|
||||||
|
pCamBob->m_flMove = frametime * (pCamBob->m_flSpeed * 0.01);
|
||||||
|
}
|
||||||
|
|
||||||
|
pCamBob->m_flTime = (pCamBob->m_flTime += pCamBob->m_flMove);
|
||||||
|
pCamBob->m_flFracSin = fabs(sin(pCamBob->m_flTime * M_PI));
|
||||||
|
pCamBob->m_iCycle = (int)pCamBob->m_flTime;
|
||||||
|
pCamBob->m_flDelta = (pCamBob->m_flFracSin * 0.0025f) * pCamBob->m_flSpeed;
|
||||||
|
|
||||||
|
camera_angle[0] += pCamBob->m_flDelta;
|
||||||
|
|
||||||
|
if (pCamBob->m_iCycle & 1) {
|
||||||
|
pCamBob->m_flDelta = -pCamBob->m_flDelta;
|
||||||
|
}
|
||||||
|
|
||||||
|
camera_angle[2] += pCamBob->m_flDelta;
|
||||||
|
return camera_angle;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* applies a tilt to the camera for when we're strafing left to right */
|
||||||
|
vector
|
||||||
|
Camera_StrafeRoll(vector camera_angle)
|
||||||
|
{
|
||||||
|
if (!autocvar(v_camroll, 0, "Enables strafe-roll for the first-person camera"))
|
||||||
|
return camera_angle;
|
||||||
|
|
||||||
|
float roll;
|
||||||
|
makevectors(camera_angle);
|
||||||
|
|
||||||
|
roll = dotproduct(pSeat->m_vecPredictedVelocity, v_right);
|
||||||
|
roll *= 0.015f;
|
||||||
|
|
||||||
|
camera_angle[2] += roll;
|
||||||
|
return camera_angle;
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
ClientGame_ConsoleCommand(void)
|
||||||
|
{
|
||||||
|
switch(argv(0)) {
|
||||||
|
default:
|
||||||
|
return (0);
|
||||||
|
}
|
||||||
|
return (1);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void
|
||||||
|
ClientGame_PreDraw(void)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
ClientGame_PostDraw(void)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
ClientGame_EntityUpdate(float id, float new)
|
||||||
|
{
|
||||||
|
switch (id) {
|
||||||
|
default:
|
||||||
|
return (0);
|
||||||
|
}
|
||||||
|
|
||||||
|
return (1);
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
ClientGame_EventParse(float fHeader)
|
||||||
|
{
|
||||||
|
switch (fHeader) {
|
||||||
|
default:
|
||||||
|
return (0);
|
||||||
|
}
|
||||||
|
return (1);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
ClientGame_Init(float apilevel, string enginename, float engineversion)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
ClientGame_InitDone(void)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
ClientGame_RendererRestart(string rstr)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
#define SCORE_HEADER_C [255/255,156/255,0]
|
||||||
|
#define SCORE_LINE_C [255/255,200/255,0]
|
||||||
|
|
||||||
|
var int autocvar_cl_centerscores = FALSE;
|
||||||
|
var int g_scores_teamplay = 0;
|
||||||
|
|
||||||
|
void
|
||||||
|
Scores_Init(void)
|
||||||
|
{
|
||||||
|
g_scores_teamplay = (int)serverkeyfloat("teamplay");
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
Scores_DrawTeam(ncPlayer pl, vector pos)
|
||||||
|
{
|
||||||
|
drawfill(pos, [290, 1], SCORE_LINE_C, 1.0f, DRAWFLAG_ADDITIVE);
|
||||||
|
|
||||||
|
drawfont = Font_GetID(FONT_20);
|
||||||
|
drawstring(pos + [0,-18], "Teams", [8,8], SCORE_HEADER_C, 1.0f, DRAWFLAG_ADDITIVE);
|
||||||
|
drawstring(pos + [124,-18], "kills / deaths", [8,8], SCORE_HEADER_C, 1.0f, DRAWFLAG_ADDITIVE);
|
||||||
|
drawstring(pos + [240,-18], "latency", [8,8], SCORE_HEADER_C, 1.0f, DRAWFLAG_ADDITIVE);
|
||||||
|
|
||||||
|
pos[1] += 12;
|
||||||
|
|
||||||
|
for (int t = 1; t <= serverkeyfloat("teams"); t++) {
|
||||||
|
float l;
|
||||||
|
string temp;
|
||||||
|
drawstring(pos, serverkey(sprintf("team_%i", t)), [8,8], SCORE_HEADER_C, 1.0f, DRAWFLAG_ADDITIVE);
|
||||||
|
temp = serverkey(sprintf("teamscore_%i", t));
|
||||||
|
l = stringwidth(temp, FALSE, [8,8]);
|
||||||
|
drawstring(pos + [150-l, 0], temp, [8,8], SCORE_HEADER_C, 1.0f, DRAWFLAG_ADDITIVE);
|
||||||
|
drawstring(pos + [158, 0], "wins", [8,8], SCORE_HEADER_C, 1.0f, DRAWFLAG_ADDITIVE);
|
||||||
|
pos[1] += 16;
|
||||||
|
|
||||||
|
for (int i = -1; i > -32; i--) {
|
||||||
|
if (getplayerkeyfloat(i, "*team") != t) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
temp = getplayerkeyvalue(i, "name");
|
||||||
|
|
||||||
|
/* Out of players */
|
||||||
|
if (!temp) {
|
||||||
|
break;
|
||||||
|
} else if (temp == getplayerkeyvalue(pl.entnum-1, "name")) {
|
||||||
|
drawfill(pos, [290, 13], [0,0,1], 0.5f, DRAWFLAG_ADDITIVE);
|
||||||
|
}
|
||||||
|
|
||||||
|
drawstring(pos + [24,0], getplayerkeyvalue(i, "name"), [8,8], [1,1,1], 1.0f, DRAWFLAG_ADDITIVE);
|
||||||
|
drawstring(pos + [154,0], "/", [8,8], [1,1,1], 1.0f, DRAWFLAG_ADDITIVE);
|
||||||
|
|
||||||
|
/* Get the kills and align them left to right */
|
||||||
|
temp = getplayerkeyvalue(i, "frags");
|
||||||
|
l = stringwidth(temp, FALSE, [8,8]);
|
||||||
|
drawstring(pos + [150 - l,0], temp, [8,8], [1,1,1], 1.0f, DRAWFLAG_ADDITIVE);
|
||||||
|
|
||||||
|
/* Deaths are right to left aligned */
|
||||||
|
temp = getplayerkeyvalue(i, "*deaths");
|
||||||
|
drawstring(pos + [165,0], temp, [8,8], [1,1,1], 1.0f, DRAWFLAG_ADDITIVE);
|
||||||
|
|
||||||
|
/* Get the latency and align it left to right */
|
||||||
|
temp = getplayerkeyvalue(i, "ping");
|
||||||
|
l = stringwidth(temp, FALSE, [8,8]);
|
||||||
|
|
||||||
|
drawstring(pos + [290 - l,0], temp, [8,8], [1,1,1], 1.0f, DRAWFLAG_ADDITIVE);
|
||||||
|
pos[1] += 20;
|
||||||
|
}
|
||||||
|
pos[1] += 12;
|
||||||
|
}
|
||||||
|
|
||||||
|
drawfont = Font_GetID(FONT_CON);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
Scores_DrawNormal(ncPlayer pl, vector pos)
|
||||||
|
{
|
||||||
|
drawfill(pos, [290, 1], SCORE_LINE_C, 1.0f, DRAWFLAG_ADDITIVE);
|
||||||
|
|
||||||
|
drawfont = Font_GetID(FONT_20);
|
||||||
|
drawstring(pos + [0,-18], "Player", [8,8], SCORE_HEADER_C, 1.0f, DRAWFLAG_ADDITIVE);
|
||||||
|
drawstring(pos + [124,-18], "kills / deaths", [8,8], SCORE_HEADER_C, 1.0f, DRAWFLAG_ADDITIVE);
|
||||||
|
drawstring(pos + [240,-18], "latency", [8,8], SCORE_HEADER_C, 1.0f, DRAWFLAG_ADDITIVE);
|
||||||
|
|
||||||
|
pos[1] += 12;
|
||||||
|
for (int i = -1; i > -32; i--) {
|
||||||
|
float l;
|
||||||
|
string ping;
|
||||||
|
string kills;
|
||||||
|
string deaths;
|
||||||
|
string name;
|
||||||
|
|
||||||
|
name = getplayerkeyvalue(i, "name");
|
||||||
|
|
||||||
|
/* Out of players */
|
||||||
|
if (!name) {
|
||||||
|
break;
|
||||||
|
} else if (name == getplayerkeyvalue(pl.entnum-1, "name")) {
|
||||||
|
drawfill(pos, [290, 13], [0,0,1], 0.5f, DRAWFLAG_ADDITIVE);
|
||||||
|
}
|
||||||
|
|
||||||
|
drawstring(pos, getplayerkeyvalue(i, "name"), [8,8], [1,1,1], 1.0f, DRAWFLAG_ADDITIVE);
|
||||||
|
drawstring(pos + [154,0], "/", [8,8], [1,1,1], 1.0f, DRAWFLAG_ADDITIVE);
|
||||||
|
|
||||||
|
/* Get the kills and align them left to right */
|
||||||
|
kills = getplayerkeyvalue(i, "frags");
|
||||||
|
l = stringwidth(kills, FALSE, [8,8]);
|
||||||
|
drawstring(pos + [150 - l,0], kills, [8,8], [1,1,1], 1.0f, DRAWFLAG_ADDITIVE);
|
||||||
|
|
||||||
|
/* Deaths are right to left aligned */
|
||||||
|
deaths = getplayerkeyvalue(i, "*deaths");
|
||||||
|
drawstring(pos + [165,0], deaths, [8,8], [1,1,1], 1.0f, DRAWFLAG_ADDITIVE);
|
||||||
|
|
||||||
|
/* Get the latency and align it left to right */
|
||||||
|
ping = getplayerkeyvalue(i, "ping");
|
||||||
|
l = stringwidth(ping, FALSE, [8,8]);
|
||||||
|
|
||||||
|
drawstring(pos + [290 - l,0], ping, [8,8], [1,1,1], 1.0f, DRAWFLAG_ADDITIVE);
|
||||||
|
pos[1] += 20;
|
||||||
|
}
|
||||||
|
|
||||||
|
drawfont = Font_GetID(FONT_CON);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
Scores_Draw(void)
|
||||||
|
{
|
||||||
|
vector pos;
|
||||||
|
ncPlayer pl;
|
||||||
|
|
||||||
|
pl = (ncPlayer)pSeat->m_ePlayer;
|
||||||
|
|
||||||
|
if (autocvar_cl_centerscores) {
|
||||||
|
int c = 10;
|
||||||
|
|
||||||
|
/* calculate all valid entries */
|
||||||
|
for (int i = -1; i > -32; i--) {
|
||||||
|
if (getplayerkeyvalue(i, "name")) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
c += 10;
|
||||||
|
}
|
||||||
|
pos = video_mins + [(g_vidsize[0] / 2) - 145, (g_vidsize[1] / 2) - c];
|
||||||
|
} else {
|
||||||
|
pos = video_mins + [(g_vidsize[0] / 2) - 145, 30];
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Util_IsTeamplay()) {
|
||||||
|
Scores_DrawTeam(pl, pos);
|
||||||
|
} else {
|
||||||
|
Scores_DrawNormal(pl, pos);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#define BOB_STRENGTH 0.02
|
||||||
|
#define BOB_CYCLE 1.0
|
||||||
|
#define BOB_UP 0.60
|
||||||
|
|
||||||
|
var vector autocvar_bg_bobAmplitudeDucked = [0.0075, 0.0065, 0.0000];
|
||||||
|
var vector autocvar_bg_bobAmplitudeProne = [0.02, 0.005, 0.0000];
|
||||||
|
var vector autocvar_bg_bobAmplitudeSprinting = [0.02, 0.014, 0.0000];
|
||||||
|
var vector autocvar_bg_bobAmplitudeStanding = [0.007, 0.007, 0.0000];
|
||||||
|
var float autocvar_bg_bobMax = 8.0;
|
||||||
|
var float autocvar_player_sprintCameraBob = 0.5;
|
||||||
|
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
float m_flBobTime;
|
||||||
|
float m_flBobTime2;
|
||||||
|
float m_flBob;
|
||||||
|
float m_flBob2;
|
||||||
|
float m_flBobCycle;
|
||||||
|
float m_flBobCycle2;
|
||||||
|
float m_flSpeed;
|
||||||
|
|
||||||
|
float m_flViewBob;
|
||||||
|
float m_flViewBob2;
|
||||||
|
} g_viewBobVars[4], *pViewBob;
|
||||||
|
|
||||||
|
|
||||||
|
/* bob vars are calculated separately from application, so that if there's
|
||||||
|
* more than one viewmodel we won't affect the speed of the bob by running
|
||||||
|
* the math too many times */
|
||||||
|
void
|
||||||
|
Viewmodel_CalcBob(void)
|
||||||
|
{
|
||||||
|
int s = (float)getproperty(VF_ACTIVESEAT);
|
||||||
|
pViewBob = &g_viewBobVars[s];
|
||||||
|
|
||||||
|
vector vecVel;
|
||||||
|
float flBob;
|
||||||
|
|
||||||
|
float var_bob;
|
||||||
|
float var_cycle;
|
||||||
|
float var_up;
|
||||||
|
bool isSprinting = pSeat->m_ePlayer.vv_flags & VFL_SPRINTING;
|
||||||
|
bool isCrouching = pSeat->m_ePlayer.vv_flags & VFL_CROUCHING;
|
||||||
|
|
||||||
|
// if (pSeatLocal->m_iSprinting && vlen(pSeat->m_vecPredictedVelocity) > 240)
|
||||||
|
// isSprinting = true;
|
||||||
|
|
||||||
|
var_bob = BOB_STRENGTH;
|
||||||
|
var_cycle = BOB_CYCLE;
|
||||||
|
var_up = BOB_UP;
|
||||||
|
|
||||||
|
if (isSprinting)
|
||||||
|
var_cycle *= autocvar_player_sprintCameraBob;
|
||||||
|
|
||||||
|
pViewBob->m_flBobTime += frametime;
|
||||||
|
pViewBob->m_flBobCycle = pViewBob->m_flBobTime - (int)(pViewBob->m_flBobTime / var_cycle) * var_cycle;
|
||||||
|
pViewBob->m_flBobCycle /= var_cycle;
|
||||||
|
|
||||||
|
if (pViewBob->m_flBobCycle < var_up) {
|
||||||
|
pViewBob->m_flBobCycle = MATH_PI * pViewBob->m_flBobCycle / var_up;
|
||||||
|
} else {
|
||||||
|
pViewBob->m_flBobCycle = MATH_PI + MATH_PI * (pViewBob->m_flBobCycle - var_up)/(1.0 - var_up);
|
||||||
|
}
|
||||||
|
|
||||||
|
vecVel = pSeat->m_vecPredictedVelocity;
|
||||||
|
vecVel[2] = 0;
|
||||||
|
pViewBob->m_flSpeed = vlen(vecVel);
|
||||||
|
|
||||||
|
flBob = pViewBob->m_flSpeed * var_bob;
|
||||||
|
flBob = flBob * sin(pViewBob->m_flBobCycle);
|
||||||
|
pViewBob->m_flBob = flBob;
|
||||||
|
|
||||||
|
/* BOB2, which is half the cycle of bob1 */
|
||||||
|
pViewBob->m_flBobTime2 += frametime;
|
||||||
|
pViewBob->m_flBobCycle2 = pViewBob->m_flBobTime2 - (int)(pViewBob->m_flBobTime2 / (var_cycle * 0.5f)) * (var_cycle * 0.5f);
|
||||||
|
pViewBob->m_flBobCycle2 /= (var_cycle * 0.5f);
|
||||||
|
|
||||||
|
if (pViewBob->m_flBobCycle2 < var_up) {
|
||||||
|
pViewBob->m_flBobCycle2 = MATH_PI * pViewBob->m_flBobCycle2 / var_up;
|
||||||
|
} else {
|
||||||
|
pViewBob->m_flBobCycle2 = MATH_PI + MATH_PI * (pViewBob->m_flBobCycle2 - var_up)/(1.0 - var_up);
|
||||||
|
}
|
||||||
|
|
||||||
|
flBob = pViewBob->m_flSpeed * (var_bob * 0.5);
|
||||||
|
flBob = flBob * cos(pViewBob->m_flBobCycle2);
|
||||||
|
pViewBob->m_flBob2 = flBob;
|
||||||
|
|
||||||
|
if (isSprinting) {
|
||||||
|
pViewBob->m_flViewBob2 = pViewBob->m_flBob2 * autocvar_bg_bobAmplitudeSprinting[0] * 25.0f;
|
||||||
|
pViewBob->m_flViewBob = pViewBob->m_flBob * autocvar_bg_bobAmplitudeSprinting[1] * 25.0f;
|
||||||
|
pViewBob->m_flBob2 *= autocvar_bg_bobAmplitudeSprinting[0] * 20.0;
|
||||||
|
pViewBob->m_flBob *= autocvar_bg_bobAmplitudeSprinting[1] * 20.0;
|
||||||
|
} else if (isCrouching) {
|
||||||
|
pViewBob->m_flViewBob2 = pViewBob->m_flBob2 * autocvar_bg_bobAmplitudeDucked[0] * 25.0f;
|
||||||
|
pViewBob->m_flViewBob = pViewBob->m_flBob * autocvar_bg_bobAmplitudeDucked[1] * 25.0f;
|
||||||
|
pViewBob->m_flBob2 *= autocvar_bg_bobAmplitudeDucked[0] * 20.0;
|
||||||
|
pViewBob->m_flBob *= autocvar_bg_bobAmplitudeDucked[1] * 20.0;
|
||||||
|
} else {
|
||||||
|
pViewBob->m_flViewBob2 = pViewBob->m_flBob2 * autocvar_bg_bobAmplitudeStanding[0] * 25.0f;
|
||||||
|
pViewBob->m_flViewBob = pViewBob->m_flBob * autocvar_bg_bobAmplitudeStanding[1] * 25.0f;
|
||||||
|
pViewBob->m_flBob2 *= autocvar_bg_bobAmplitudeStanding[0] * 20.0;
|
||||||
|
pViewBob->m_flBob *= autocvar_bg_bobAmplitudeStanding[1] * 20.0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
Viewmodel_ApplyBob(entity gun)
|
||||||
|
{
|
||||||
|
int s = (float)getproperty(VF_ACTIVESEAT);
|
||||||
|
pViewBob = &g_viewBobVars[s];
|
||||||
|
|
||||||
|
float sintime;
|
||||||
|
float strength;
|
||||||
|
float kickUp;
|
||||||
|
//gun.angles[2] = pViewBob->m_flBob2 * -2.0f;
|
||||||
|
gun.angles[2] = pViewBob->m_flViewBob * 4.0f;
|
||||||
|
kickUp = pViewBob->m_flViewBob2 * 4.0f;
|
||||||
|
|
||||||
|
vector angmod = [0,0,0];
|
||||||
|
|
||||||
|
angmod[0] = pViewBob->m_flViewBob2 + kickUp;
|
||||||
|
angmod[1] = pViewBob->m_flViewBob;
|
||||||
|
|
||||||
|
//angmod[2] += pViewBob->m_flBob * 3.0f;
|
||||||
|
gun.angles += angmod;
|
||||||
|
|
||||||
|
/* sway with speed */
|
||||||
|
sintime = sin(time);
|
||||||
|
strength = pViewBob->m_flSpeed;
|
||||||
|
|
||||||
|
if (strength > 240)
|
||||||
|
strength = 240;
|
||||||
|
|
||||||
|
strength = 240 - strength;
|
||||||
|
strength *= 0.01f;
|
||||||
|
|
||||||
|
float sprint;
|
||||||
|
if (pSeat->m_ePlayer.vv_flags & VFL_SPRINTING) {
|
||||||
|
pSeat->m_flSprintLerp = bound(0.0f, pSeat->m_flSprintLerp + clframetime, 1.0f);
|
||||||
|
} else {
|
||||||
|
pSeat->m_flSprintLerp = bound(0.0f, pSeat->m_flSprintLerp - clframetime, 1.0f);
|
||||||
|
}
|
||||||
|
sprint = 20 * pSeat->m_flSprintLerp;
|
||||||
|
gun.angles[0] += sprint;
|
||||||
|
gun.angles[1] += sprint + (sprint * pViewBob->m_flBob) * 0.25f;
|
||||||
|
|
||||||
|
#ifdef WASTES
|
||||||
|
if (pSeat->m_ePlayer.gflags & GF_IS_HEALING) {
|
||||||
|
pSeatLocal->m_flHealLerp = bound(0.0f, pSeatLocal->m_flHealLerp + clframetime, 1.0f);
|
||||||
|
} else {
|
||||||
|
pSeatLocal->m_flHealLerp = bound(0.0f, pSeatLocal->m_flHealLerp - clframetime, 1.0f);
|
||||||
|
}
|
||||||
|
gun.angles[0] += pSeatLocal->m_flHealLerp * 45;
|
||||||
|
gun.origin[2] -= pSeatLocal->m_flHealLerp * 5;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
gun.angles[0] += strength * sintime;
|
||||||
|
gun.angles[1] += strength * sintime;
|
||||||
|
//gun.angles[2] += strength * sintime;
|
||||||
|
gun.origin += [0,0,-1];
|
||||||
|
|
||||||
|
makevectors(g_view.GetCameraAngle());
|
||||||
|
gun.origin += v_forward * cvar("cl_gunx");
|
||||||
|
gun.origin += v_right * cvar("cl_guny");
|
||||||
|
gun.origin += v_up * cvar("cl_gunz");
|
||||||
|
|
||||||
|
/* lower gun when moving */
|
||||||
|
if (pViewBob->m_flSpeed > 10.0) {
|
||||||
|
gun.origin += (v_up * -pViewBob->m_flSpeed * 0.005f);
|
||||||
|
gun.origin += (v_right * -pViewBob->m_flSpeed * 0.005f);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
vector
|
||||||
|
Camera_AddCamBob(vector cameraAngle)
|
||||||
|
{
|
||||||
|
vector angmod = g_vec_null;
|
||||||
|
|
||||||
|
makevectors(cameraAngle);
|
||||||
|
|
||||||
|
angmod = (pViewBob->m_flBob2 * -v_up);
|
||||||
|
angmod += (pViewBob->m_flBob * -v_right);
|
||||||
|
|
||||||
|
return angmod;
|
||||||
|
}
|
95
src/client/progdefs.h
Normal file
95
src/client/progdefs.h
Normal file
|
@ -0,0 +1,95 @@
|
||||||
|
|
||||||
|
/* File generated by FTEQCC, relevent for engine modding only, the generated crc must be the same as your engine expects. */
|
||||||
|
|
||||||
|
typedef struct globalvars_s
|
||||||
|
{
|
||||||
|
int ofs_null;
|
||||||
|
int ofs_return[3];
|
||||||
|
int ofs_parm0[3];
|
||||||
|
int ofs_parm1[3];
|
||||||
|
int ofs_parm2[3];
|
||||||
|
int ofs_parm3[3];
|
||||||
|
int ofs_parm4[3];
|
||||||
|
int ofs_parm5[3];
|
||||||
|
int ofs_parm6[3];
|
||||||
|
int ofs_parm7[3];
|
||||||
|
int self;
|
||||||
|
int other;
|
||||||
|
int world;
|
||||||
|
float time;
|
||||||
|
float cltime;
|
||||||
|
float frametime;
|
||||||
|
float player_localentnum;
|
||||||
|
float player_localnum;
|
||||||
|
float maxclients;
|
||||||
|
float clientcommandframe;
|
||||||
|
float servercommandframe;
|
||||||
|
string_t mapname;
|
||||||
|
float intermission;
|
||||||
|
vec3_t v_forward;
|
||||||
|
vec3_t v_up;
|
||||||
|
vec3_t v_right;
|
||||||
|
vec3_t view_angles;
|
||||||
|
float trace_allsolid;
|
||||||
|
float trace_startsolid;
|
||||||
|
float trace_fraction;
|
||||||
|
vec3_t trace_endpos;
|
||||||
|
vec3_t trace_plane_normal;
|
||||||
|
float trace_plane_dist;
|
||||||
|
int trace_ent;
|
||||||
|
float trace_inopen;
|
||||||
|
float trace_inwater;
|
||||||
|
float input_timelength;
|
||||||
|
vec3_t input_angles;
|
||||||
|
vec3_t input_movevalues;
|
||||||
|
float input_buttons;
|
||||||
|
float input_impulse;
|
||||||
|
} globalvars_t;
|
||||||
|
|
||||||
|
typedef struct entvars_s
|
||||||
|
{
|
||||||
|
float modelindex;
|
||||||
|
vec3_t absmin;
|
||||||
|
vec3_t absmax;
|
||||||
|
float entnum;
|
||||||
|
float drawmask;
|
||||||
|
func_t predraw;
|
||||||
|
func_t ncDecal::__mpredraw;
|
||||||
|
func_t ncEntity::__mpredraw;
|
||||||
|
func_t func_dustcloud_cloud::__mpredraw;
|
||||||
|
func_t func_smokevolume_cloud::__mpredraw;
|
||||||
|
func_t env_steam_particle::__mpredraw;
|
||||||
|
float movetype;
|
||||||
|
float solid;
|
||||||
|
vec3_t origin;
|
||||||
|
vec3_t oldorigin;
|
||||||
|
vec3_t velocity;
|
||||||
|
vec3_t angles;
|
||||||
|
vec3_t avelocity;
|
||||||
|
float pmove_flags;
|
||||||
|
string_t classname;
|
||||||
|
float renderflags;
|
||||||
|
string_t model;
|
||||||
|
float frame;
|
||||||
|
float frame1time;
|
||||||
|
float frame2;
|
||||||
|
float frame2time;
|
||||||
|
float lerpfrac;
|
||||||
|
float skin;
|
||||||
|
float effects;
|
||||||
|
vec3_t mins;
|
||||||
|
vec3_t maxs;
|
||||||
|
vec3_t size;
|
||||||
|
func_t touch;
|
||||||
|
func_t think;
|
||||||
|
func_t env_sprite::__mthink;
|
||||||
|
func_t blocked;
|
||||||
|
float nextthink;
|
||||||
|
int chain;
|
||||||
|
int enemy;
|
||||||
|
float flags;
|
||||||
|
float colormap;
|
||||||
|
int owner;
|
||||||
|
} entvars_t;
|
||||||
|
|
||||||
|
#define PROGHEADER_CRC 42444
|
32
src/client/progs.src
Normal file
32
src/client/progs.src
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
#pragma target fte_5768
|
||||||
|
#pragma progs_dat "../../csprogs.dat"
|
||||||
|
//#pragma flag enable assumeint
|
||||||
|
#pragma forcecrc 54730
|
||||||
|
|
||||||
|
#define CSQC
|
||||||
|
#define CLIENT
|
||||||
|
|
||||||
|
#includelist
|
||||||
|
/* first the engine, then nuclide headers for client/shared */
|
||||||
|
../../../src/shared/fteextensions.qc
|
||||||
|
../../../src/shared/defs.h
|
||||||
|
../../../src/client/defs.h
|
||||||
|
|
||||||
|
/* mod specific header */
|
||||||
|
defs.h
|
||||||
|
/* for VGUI elements, we want to include this (optional) */
|
||||||
|
../../../src/vgui/include.src
|
||||||
|
|
||||||
|
/* include the entity codebase */
|
||||||
|
../../../src/gs-entbase/client.src
|
||||||
|
../../../src/gs-entbase/shared.src
|
||||||
|
|
||||||
|
/* mod specific functions */
|
||||||
|
../shared/include.src
|
||||||
|
|
||||||
|
main.qc
|
||||||
|
|
||||||
|
/* global client/shared code */
|
||||||
|
../../../src/client/include.src
|
||||||
|
../../../src/shared/include.src
|
||||||
|
#endlist
|
113
src/files.dat
Normal file
113
src/files.dat
Normal file
|
@ -0,0 +1,113 @@
|
||||||
|
112
|
||||||
|
1 csprogs.dat
|
||||||
|
1 decls/def/ammo.def
|
||||||
|
1 decls/def/ammo/base.def
|
||||||
|
1 decls/def/ammo/bullets.def
|
||||||
|
1 decls/def/ammo/cells.def
|
||||||
|
1 decls/def/ammo/grenades.def
|
||||||
|
1 decls/def/ammo/rockets.def
|
||||||
|
1 decls/def/ammo/shells.def
|
||||||
|
1 decls/def/ammo/slugs.def
|
||||||
|
1 decls/def/items.def
|
||||||
|
1 decls/def/items/adrenaline.def
|
||||||
|
1 decls/def/items/ancient_head.def
|
||||||
|
1 decls/def/items/armor_body.def
|
||||||
|
1 decls/def/items/armor_combat.def
|
||||||
|
1 decls/def/items/armor_jacket.def
|
||||||
|
1 decls/def/items/armor_shard.def
|
||||||
|
1 decls/def/items/bandolier.def
|
||||||
|
1 decls/def/items/base.def
|
||||||
|
1 decls/def/items/breather.def
|
||||||
|
1 decls/def/items/envirosuit.def
|
||||||
|
1 decls/def/items/health.def
|
||||||
|
1 decls/def/items/health_large.def
|
||||||
|
1 decls/def/items/health_mega.def
|
||||||
|
1 decls/def/items/health_small.def
|
||||||
|
1 decls/def/items/invulnerability.def
|
||||||
|
1 decls/def/items/pack.def
|
||||||
|
1 decls/def/items/quad.def
|
||||||
|
1 decls/def/monsters.def
|
||||||
|
1 decls/def/monsters/soldier.def
|
||||||
|
1 decls/def/player.def
|
||||||
|
1 decls/def/projectiles.def
|
||||||
|
1 decls/def/spawns.def
|
||||||
|
1 decls/def/weapons.def
|
||||||
|
1 decls/def/weapons/base.def
|
||||||
|
1 decls/def/weapons/bfg.def
|
||||||
|
1 decls/def/weapons/blaster.def
|
||||||
|
1 decls/def/weapons/chaingun.def
|
||||||
|
1 decls/def/weapons/grenadelauncher.def
|
||||||
|
1 decls/def/weapons/handgrenade.def
|
||||||
|
1 decls/def/weapons/hyperblaster.def
|
||||||
|
1 decls/def/weapons/machinegun.def
|
||||||
|
1 decls/def/weapons/railgun.def
|
||||||
|
1 decls/def/weapons/rocketlauncher.def
|
||||||
|
1 decls/def/weapons/shotgun.def
|
||||||
|
1 decls/def/weapons/supershotgun.def
|
||||||
|
1 decls/sound/footsteps.sndshd
|
||||||
|
1 decls/sound/impacts.sndshd
|
||||||
|
1 decls/sound/items_baseq2.sndshd
|
||||||
|
1 decls/sound/player.sndshd
|
||||||
|
1 decls/sound/weapons.sndshd
|
||||||
|
1 default_baseq2.cfg
|
||||||
|
1 default_controls.cfg
|
||||||
|
1 default_cvar.cfg
|
||||||
|
1 default_video.cfg
|
||||||
|
1 fonts/chat.font
|
||||||
|
1 fonts/font16.font
|
||||||
|
1 fonts/font20.font
|
||||||
|
1 fonts/fontcon.font
|
||||||
|
1 fonts/ui.font
|
||||||
|
1 gfx/background.mat
|
||||||
|
1 liblist.gam
|
||||||
|
1 menu.dat
|
||||||
|
1 models/monsters/soldier/tris.md2.framegroups
|
||||||
|
1 models/weapons/v_bfg/tris.md2.framegroups
|
||||||
|
1 models/weapons/v_blast/tris.md2.framegroups
|
||||||
|
1 models/weapons/v_chain/tris.md2.framegroups
|
||||||
|
1 models/weapons/v_handgr/tris.md2.framegroups
|
||||||
|
1 models/weapons/v_hyperb/tris.md2.framegroups
|
||||||
|
1 models/weapons/v_launch/tris.md2.framegroups
|
||||||
|
1 models/weapons/v_machn/tris.md2.framegroups
|
||||||
|
1 models/weapons/v_rail/tris.md2.framegroups
|
||||||
|
1 models/weapons/v_rocket/tris.md2.framegroups
|
||||||
|
1 models/weapons/v_shotg/tris.md2.framegroups
|
||||||
|
1 models/weapons/v_shotg2/tris.md2.framegroups
|
||||||
|
1 progs.dat
|
||||||
|
1 progs/deathmatch.dat
|
||||||
|
1 progs/singleplayer.dat
|
||||||
|
1 quake.rc
|
||||||
|
1 scripts/bots.txt
|
||||||
|
1 scripts/constants.txt
|
||||||
|
1 scripts/hud.shader
|
||||||
|
1 scripts/map_blacklist
|
||||||
|
1 scripts/propdata.txt
|
||||||
|
1 scripts/surfaceproperties.txt
|
||||||
|
1 scripts/surfaceproperties_manifest.txt
|
||||||
|
1 scripts/ui_style.txt
|
||||||
|
1 textures/sfx/alpha.tga
|
||||||
|
1 textures/sfx/cone.tga
|
||||||
|
1 textures/sfx/dustcloud.mat
|
||||||
|
1 textures/sfx/dustcloud.tga
|
||||||
|
1 textures/sfx/flare1.tga
|
||||||
|
1 textures/sfx/flare2.tga
|
||||||
|
1 textures/sfx/flare3.tga
|
||||||
|
1 textures/sfx/flare4.tga
|
||||||
|
1 textures/sfx/fog.tga
|
||||||
|
1 textures/sfx/fog_test.mat
|
||||||
|
1 textures/sfx/heatsteam.mat
|
||||||
|
1 textures/sfx/liquidtube.mat
|
||||||
|
1 textures/sfx/mirror.mat
|
||||||
|
1 textures/sfx/mirror.tga
|
||||||
|
1 textures/sfx/mirror_n.tga
|
||||||
|
1 textures/sfx/normwobble.tga
|
||||||
|
1 textures/sfx/reflection.mat
|
||||||
|
1 textures/sfx/reflection.tga
|
||||||
|
1 textures/sfx/smoke.mat
|
||||||
|
1 textures/sfx/smoke.tga
|
||||||
|
1 textures/sfx/smokevolume.mat
|
||||||
|
1 textures/sfx/spot_cone.mat
|
||||||
|
1 textures/sfx/spot_flare.mat
|
||||||
|
1 textures/sfx/spot_flare.tga
|
||||||
|
1 textures/sfx/steam.mat
|
||||||
|
1 textures/sfx/steam.tga
|
4
src/maps/Makefile
Normal file
4
src/maps/Makefile
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
QCC=fteqcc
|
||||||
|
|
||||||
|
all:
|
||||||
|
$(QCC) demo.qc
|
11
src/maps/demo.qc
Normal file
11
src/maps/demo.qc
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
#pragma PROGS_DAT "../../maps/demo.dat"
|
||||||
|
|
||||||
|
#include "../../../src/server/api.h"
|
||||||
|
|
||||||
|
void
|
||||||
|
CSEv_TriggerTarget_s(string toTrigger)
|
||||||
|
{
|
||||||
|
for (entity e = world; (e = find(e, ::targetname, "laser1"));) {
|
||||||
|
ents.Input(e, "Trigger", "", e);
|
||||||
|
}
|
||||||
|
}
|
4
src/menu/Makefile
Normal file
4
src/menu/Makefile
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
QCC=fteqcc
|
||||||
|
|
||||||
|
all:
|
||||||
|
$(QCC) progs.src
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue