SDEF
// -----------------------------------------------------------------------------
//  $Logfile:: /Quake 2 Engine/Sin/Base Sin Data/Models/Monster/sniper.def    $
// $Revision:: 37                                                             $
//   $Author:: Beau                                                           $
//     $Date:: 10/26/98 10:25p                                                $
//
// Copyright (C) 1998 by Ritual Entertainment, Inc.
// All rights reserved.
//
// This source may not be distributed and/or modified without
// expressly written permission by Ritual Entertainment, Inc.
//
// This is a model definition file.  It is to be used in conjunction with Sin.
//
// -----------------------------------------------------------------------------
// MODEL DESCRIPTION:
// Female Sniper carrying a Sniper Rifle.
//
// MODEL AUTHOR:
// Beau
//
/*SINED Monster_Sniper (1 .5 0) (0 0 0) (0 0 0)
Sniper - Female
*/

// -----------------------------------------------------------------------------
// FILE DECLARATIONS
//
// Model Commands
path models/sniper
scale 1.32

// Base Model
sniper_base.sbm

// Skins
normal		sniper_base.tga
damage		sniper_damage1.tga

// Normal Animations
aim1              sniper_aim.sam
//alert
//idle1             sniper_idle1.sam
idle2             sniper_idle2.sam
//twitch1
walk1             sniper_walk.sam
run1              sniper_walk.sam
fire1             sniper_fire.sam

crouch_down       sniper_kneel.sam
crouch_idle1      sniper_kneel.sam
//crouch_aim1
//crouch_fire1

// Pain Location Based Animations
pain1		sniper_pain1.sam
pain2		sniper_pain2.sam
pain3		sniper_pain3.sam
pain4		sniper_pain4.sam

pain_head                sniper_painhead.sam
pain_torso_upper         sniper_paintorsoupper.sam
pain_torso_lower         sniper_paintorsolower.sam
pain_leg_right_upper     sniper_painlegright.sam
pain_leg_right_lower     sniper_painlegright.sam
pain_leg_left_upper      sniper_painlegleft.sam
pain_leg_left_lower      sniper_painlegleft.sam
pain_arm_right_upper     sniper_painarmright.sam
pain_arm_right_lower     sniper_painarmright.sam
pain_arm_left_upper      sniper_painarmleft.sam
pain_arm_left_lower      sniper_painarmleft.sam

gibdeath_upper		sniper_gibdeath1.SAM
gibdeath_lower		sniper_gibdeath2.SAM

// Death Location Based Animations
death1	sniper_death1.sam
death2	sniper_death2.sam
death3	sniper_death3.sam
death4	sniper_death4.sam

death_head                sniper_death2.sam
death_torso_upper         sniper_death3.sam
death_torso_lower         sniper_death4.sam
death_arm_right_upper     sniper_death4.sam
death_arm_right_lower     sniper_death4.sam
death_arm_left_upper      sniper_death4.sam
death_arm_left_lower      sniper_death4.sam
death_leg_right_upper     sniper_death1.sam
death_leg_right_lower     sniper_death1.sam
death_leg_left_upper      sniper_death1.sam
death_leg_left_lower      sniper_death1.sam

// Crouching Pain Location Based Animations

// Crouching Death Location Based Animations

// Optional Animations
melee1	sniper_kick1.sam
melee2	sniper_kick2.sam
melee3	sniper_melee1.sam
melee4	sniper_melee2.sam
// step_left	sniper_rollleft.sam
// step_right	sniper_rollright.sam

// Scripted Animations

// Id And Group Definitions
id 5 group head               flesh
group head damage 4.0
id 7 group hair               fabric
group hair damage 3.5
id 15 group torso_upper       metal
group torso_upper damage 1.0
id 18 group torso_lower       metal
group torso_lower damage 1.0
id 45 group leg_left_upper    fabric
group leg_left_upper damage 1.5
id 50 group leg_left_lower    fabric
group leg_left_lower damage 1.0
id 65 group leg_right_upper   fabric
group leg_right_upper damage 1.5
id 70 group leg_right_lower   fabric
group leg_right_lower damage 1.0
id 85 group arm_left_upper    flesh
group arm_left_upper damage 1.0
id 90 group arm_left_lower    flesh
group arm_left_lower damage 2.0
id 105 group arm_right_upper  flesh
group arm_right_upper damage 1.0
id 110 group arm_right_lower  flesh
group arm_right_lower damage 2.0
id 200 group arm_right_lower bone gun 9 180 85 flesh

// -----------------------------------------------------------------------------
// INITIALIZATION SECTION
//
!init:
//
// SERVER Initialization Commands
//
// Class Setup
server classname actor
server script global/sniper.scr
server setsize "-16 -16 0" "16 16 88"
server crouchsize "-16 -16 0" "16 16 70"
server weapon SniperRifle
server health 50
// aim is setup in the script, and is progressive
//server aim 0.9
server meleerange 100
server meleedamage 50
server item FlakJacket 30

// Sound Aliases
server aliascache  snd_pursuit1    	"monsters/sniper/snilock1.wav"
server aliascache  snd_pursuit2    	"monsters/sniper/snilock2.wav"
server aliascache  snd_pursuit3    	"monsters/sniper/snilock3.wav"
server aliascache  snd_pursuit4    	"monsters/sniper/snilock4.wav"
server aliascache  snd_pursuit5    	"monsters/sniper/snilock5.wav"

server aliascache  snd_sightenemy1	"monsters/sniper/snilock3.wav" 1

server aliascache  snd_fail1 		"monsters/sniper/snifail1.wav"
server aliascache  snd_fail2 		"monsters/sniper/snifail2.wav"

server aliascache  snd_idle1          "monsters/sniper/sniscan2.wav"  1
server aliascache  snd_investigate1   "monsters/sniper/sniscan2.wav" 1
server aliascache  snd_locate1        "monsters/sniper/sniscan1.wav" 1

server aliascache snd_lostweapon "monsters/sniper/snipain2.wav" 1


//
// CLIENT Initialization Commands
//
// Sound Aliases
client aliascache  snd_pain1 		"monsters/sniper/snipain1.wav"
client aliascache  snd_pain2 		"monsters/sniper/snipain2.wav"
client aliascache  snd_pain3 		"monsters/sniper/snipain3.wav"
client aliascache  snd_pain4 		"monsters/sniper/snipain3.wav"
client aliascache  snd_pain5 		"monsters/sniper/snipain3.wav"

client aliascache  snd_head_pain1 	"monsters/sniper/snihead.wav"

client aliascache  snd_death1		"monsters/sniper/snideth1.wav"
client aliascache  snd_death2 	"monsters/sniper/snideth2.wav"
client aliascache  snd_death3		"monsters/sniper/snideth3.wav"

client aliascache  snd_kneefall1   	"impact/bodyfall/sml1.wav" 1
client aliascache  snd_kneefall2   	"impact/bodyfall/sml2.wav" 1
client aliascache  snd_partfall1   	"impact/bodyfall/med1.wav" 1
client aliascache  snd_partfall2   	"impact/bodyfall/med2.wav" 1
client aliascache  snd_partfall3   	"impact/bodyfall/med3.wav" 1
client aliascache  snd_bodyfall1   	"impact/bodyfall/lrg1.wav" 1
client aliascache  snd_bodyfall2   	"impact/bodyfall/lrg2.wav" 1

client aliascache  snd_kick1    "weapons/kick/kick1.wav"
client aliascache  snd_kick2    "weapons/kick/kick2.wav"
client aliascache  snd_melee1   "weapons/punch/whsh1.wav"
client aliascache  snd_melee2   "weapons/punch/whsh2.wav"

// -----------------------------------------------------------------------------
// MAIN SECTION
//
!main:

// Normal Animations
server run1      3 movementsound
server run1      8 movementsound
client run1      3 footstep
client run1      8 footstep

server walk1      3 movementsound
server walk1      8 movementsound
client walk1      3 footstep
client walk1      8 footstep
server fire1  first fire

// Pain Location Based Animations
server pain1 first painsound
client pain1  1 randomsound snd_pain 1 2
server pain2 first painsound
client pain2  1 randomsound snd_pain 1 2
server pain3 first painsound
client pain3  1 randomsound snd_pain 1 2
server pain4 first painsound
client pain4  1 randomsound snd_pain 1 2
client pain4  2 randomsound snd_bodyfall 1 4

server pain_head            first painsound
client pain_head            first randomsound snd_pain_head 1 2
server pain_torso_upper     first painsound
client pain_torso_upper     first randomsound snd_pain 1 2
server pain_torso_lower     first painsound
client pain_torso_lower     first randomsound snd_pain 1 2
server pain_arm_right_upper first painsound
client pain_arm_right_upper first randomsound snd_pain 1 2
server pain_arm_right_lower first painsound
client pain_arm_right_lower first randomsound snd_pain 1 2
server pain_arm_left_upper  first painsound
client pain_arm_left_upper  first randomsound snd_pain 1 2
server pain_arm_left_lower  first painsound
client pain_arm_left_lower  first randomsound snd_pain 1 2
server pain_leg_right_upper first painsound
client pain_leg_right_upper first randomsound snd_pain 1 2
server pain_leg_right_lower first painsound
client pain_leg_right_lower first randomsound snd_pain 1 2
server pain_leg_left_upper  first painsound
client pain_leg_left_upper  first randomsound snd_pain 1 2
server pain_leg_left_lower  first painsound
client pain_leg_left_lower  first randomsound snd_pain 1 2

// Death Location Based Animations
server death1 first deathsound
client death1  1 randomsound snd_death 1 2
client death1  2 randomsound snd_kneefall 1 4
client death1  8 randomsound snd_bodyfall 1 4
server death2 first deathsound
client death2  1 randomsound snd_death 1 2
client death2  3 randomsound snd_bodyfall 1 4
server death3 first deathsound
client death3  1 randomsound snd_death 1 2
client death3  2 randomsound snd_partfall 1 4
client death3  8 randomsound snd_kneefall 1 4
client death3 26 randomsound snd_partfall 1 4
server death4 first deathsound
client death4  1 randomsound snd_death 1 2
client death4  6 randomsound snd_kneefall 1 4
client death4 20 randomsound snd_bodyfall 1 4

server death_head first deathsound
client death_head first randomsound snd_death 1 2
client death_head  1 randomsound snd_kneefall 1 4
client death_head  3 randomsound snd_partfall 1 4
server death_torso_upper first deathsound
client death_torso_upper first randomsound snd_death 1 2
client death_torso_upper  1 randomsound snd_kneefall 1 4
client death_torso_upper  2 randomsound snd_partfall 1 4
client death_torso_upper  8 randomsound snd_partfall 1 4
client death_torso_upper 26 randomsound snd_partfall 1 4
server death_torso_lower first deathsound
client death_torso_lower first randomsound snd_death 1 2
client death_torso_lower  1 randomsound snd_bodyfall 1 4
client death_torso_lower  6 randomsound snd_kneefall 1 4
client death_torso_lower 20 randomsound snd_kneefall 1 4
server death_arm_right_upper first deathsound
client death_arm_right_upper first randomsound snd_death 1 2
client death_arm_right_upper  1 randomsound snd_bodyfall 1 4
client death_arm_right_upper  6 randomsound snd_bodyfall 1 4
client death_arm_right_upper 20 randomsound snd_bodyfall 1 4
server death_arm_right_lower first deathsound
client death_arm_right_lower first randomsound snd_death 1 2
client death_arm_right_lower  1 randomsound snd_bodyfall 1 4
client death_arm_right_lower  6 randomsound snd_bodyfall 1 4
client death_arm_right_lower 20 randomsound snd_bodyfall 1 4
server death_arm_left_upper first deathsound
client death_arm_left_upper first randomsound snd_death_long 1 2
client death_arm_left_upper  1 randomsound snd_bodyfall 1 4
client death_arm_left_upper  6 randomsound snd_kneefall 1 4
client death_arm_left_upper 20 randomsound snd_bodyfall 1 4
server death_arm_left_lower first deathsound
client death_arm_left_lower first randomsound snd_death_long 1 2
client death_arm_left_lower  1 randomsound snd_bodyfall 1 4
client death_arm_left_lower  6 randomsound snd_kneefall 1 4
client death_arm_left_lower 20 randomsound snd_bodyfall 1 4
server death_leg_right_upper first deathsound
client death_leg_right_upper first randomsound snd_death 1 2
client death_leg_right_upper  1 randomsound snd_bodyfall 1 4
client death_leg_right_upper  2 randomsound snd_kneefall 1 4
client death_leg_right_upper  8 randomsound snd_kneefall 1 4
server death_leg_right_lower first deathsound
client death_leg_right_lower first randomsound snd_death 1 2
client death_leg_right_lower  1 randomsound snd_bodyfall 1 4
client death_leg_right_lower  2 randomsound snd_kneefall 1 4
client death_leg_right_lower  8 randomsound snd_kneefall 1 4
server death_leg_left_upper first deathsound
client death_leg_left_upper first randomsound snd_death 1 2
client death_leg_left_upper  1 randomsound snd_bodyfall 1 4
client death_leg_left_upper  2 randomsound snd_kneefall 1 4
client death_leg_left_upper  8 randomsound snd_kneefall 1 4
server death_leg_left_lower first deathsound
client death_leg_left_lower first randomsound snd_death 1 2
client death_leg_left_lower  1 randomsound snd_bodyfall 1 4
client death_leg_left_lower  2 randomsound snd_kneefall 1 4
client death_leg_left_lower  8 randomsound snd_kneefall 1 4

client melee1 5 randomsound snd_kick 1 4
server melee1 5 melee
client melee1 7 randomsound snd_kick 1 4
server melee1 7 melee
client melee2 4 randomsound snd_kick 1 4
server melee2 4 melee
client melee3 7 randomsound snd_melee 1 4
server melee3 7 melee
client melee4 6 randomsound snd_melee 1 4
server melee4 6 melee

// Crouching Pain Location Based Animations

// Crouching Death Location Based Animations

// Optional Animations
//client rollleft1 4 randomsound snd_bodyfall 1 4

// Scripted Animations

server gibdeath_upper first group head +nodraw
server gibdeath_upper first group hair +nodraw
server gibdeath_upper first group torso_upper +nodraw
server gibdeath_upper first group arm_left_upper +nodraw
server gibdeath_upper first group arm_left_lower +nodraw
server gibdeath_upper first group arm_right_upper +nodraw
server gibdeath_upper first group arm_right_lower +nodraw

server gibdeath_upper first group torso_lower +skin1
server gibdeath_upper first group leg_left_upper +skin1
server gibdeath_upper first group leg_left_lower +skin1
server gibdeath_upper first group leg_right_upper +skin1
server gibdeath_upper first group leg_right_lower +skin1

server gibdeath_lower first group torso_lower +nodraw
server gibdeath_lower first group leg_left_upper +nodraw
server gibdeath_lower first group leg_left_lower +nodraw
server gibdeath_lower first group leg_right_upper +nodraw
server gibdeath_lower first group leg_right_lower +nodraw

server gibdeath_lower first group head +skin1
server gibdeath_lower first group torso_upper +skin1
server gibdeath_lower first group arm_left_upper +skin1
server gibdeath_lower first group arm_left_lower +skin1
server gibdeath_lower first group arm_right_upper +skin1
server gibdeath_lower first group arm_right_lower +skin1

// -----------------------------------------------------------------------------
// SOURCESAFE Update Log
//
// $Log:: /Quake 2 Engine/Sin/Base Sin Data/Models/Monster/sniper.def         $
// 
// 37    10/26/98 10:25p Beau
// added gibdeath
// 
// 36    10/22/98 11:01p Joeske
// Fixed snd_lostweapon for all characters.
// 
// 35    10/20/98 6:00p Onethumb
// 
// 34    10/18/98 6:19p Markd
// Fixed sniper stuff
//
// 33    10/18/98 12:25a Markd
// Fixed sniper
//
// 32    10/16/98 6:56p Phook
// Oct 16: First global damage settings tweaks
//
// 31    10/15/98 3:30p Beau
//
// 30    10/14/98 1:26a Markd
// Made sniper more deadly with aiming
//
// 29    10/10/98 2:56p Markd
// Adjusted melee damages
//
// 28    10/07/98 4:45p Joeske
// Updated with Zak's changes.
//
// 25    9/19/98 7:23p Joeske
// Tweaked formating of file.
//
// 39    9/13/98 5:30p Joeske
// Formatting changes and cross-checking.
//
// -----------------------------------------------------------------------------
