SDEF
// -----------------------------------------------------------------------------
//  $Logfile:: /Quake 2 Engine/Sin/Base Sin Data/Models/Monster/thrall.def    $
// $Revision:: 24                                                             $
//   $Author:: Aldie                                                          $
//     $Date:: 11/18/98 4:17a                                                 $
//
// 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:
// Thrallmaster, the badest mother f**ker in the game.
//
// MODEL AUTHOR:
// Beau
//
/*SINED Boss_ThrallMaster (1 .5 0) (0 0 0) (0 0 0)
Thrallmaster
*/

// -----------------------------------------------------------------------------
// FILE DECLARATIONS
//
// Model Commands
path models/thrall
scale 2.3 //was 3.0

// Base Model
thrall_base.sbm

// Skins
normal            thrall_base1.tga
thrall_base1.tga
thrall_base2.tga
thrall_base2.tga

// Normal Animations
idle1             thrall_idle1.SAM
walk              thrall_walk.sam
//walk              thrall_run.sam
run               thrall_run.sam

// Attack Animations
melee1            thrall_attack1.sam
melee2            thrall_attack2.sam
melee3            thrall_attack3.sam
stage1_end        thrall_stage2end.sam

readyfire         thrall_readyfire2.sam
fire              thrall_fire2.sam
aim					thrall_aim2.sam

chest_fire        thrall_fire1.sam
chest_readyfire   thrall_readyfire1.sam
chest_aim			thrall_aim1.sam

charge            thrall_charge.sam
stage2_end        thrall_stage2end.sam
death             thrall_death.sam

// Define Group ID's
id 4 group helmet translucent66 skin2
id 5 group head skin2
id 7 group collar skin2
id 10 group hoses skin2
id 13 group tank skin2
id 17 group armor skin2
id 22 group saw skin2
id 23 group sawblade skin2
id 40 group leg_left
id 60 group leg_right
id 80 group arm_left
id 15 group torso_upper
id 18 group torso_lower
id 100 group arm_right
id 150 group armor skin2 bone gun
id 160 group armor skin2 bone chest

// -----------------------------------------------------------------------------
// INITIALIZATION SECTION
//
!init:
//
// SERVER Initialization Commands
//
server classname ThrallMaster
server script global/thrall.scr
server setsize "-64 -64 0" "64 64 320"
server crouchsize "-64 -64 0" "64 64 320"
server weapon ThrallGun
server health 4000
server aim 0.8
server meleerange 600
server meleedamage 600
server painthreshold 10000
server shotsperattack 6
server mass 10000
server flags -die_gibs

// Sound Aliases
server aliascache  snd_idle1			"monsters/thrall/pain4.WAV" 1
server aliascache  snd_idle2			"monsters/thrall/pain5.WAV" 1
server aliascache  snd_idle3			"monsters/thrall/pain6.WAV" 1

server aliascache  snd_attacktaunt1    "monsters/thrall/slice.WAV" 1
server aliascache  snd_attacktaunt2    "monsters/thrall/growl.WAV" 1

server aliascache  snd_pursuit1    "monsters/thrall/comeback.WAV" 1
server aliascache  snd_pursuit2    "monsters/thrall/nowhere.WAV" 1
server aliascache  snd_pursuit3    "monsters/thrall/wherego.WAV" 1
server aliascache  snd_pursuit4    "monsters/thrall/pain4.WAV" 1
server aliascache  snd_pursuit5    "monsters/thrall/pain5.WAV" 1
server aliascache  snd_pursuit6    "monsters/thrall/pain6.WAV" 1

//server aliascache  snd_firstsight1    "monsters/thrall/meager.WAV" 1

server aliascache  snd_sightenemy1    "monsters/thrall/cometome.WAV" 1

server aliascache  snd_inmysights1    "monsters/thrall/notsurv2.WAV" 1

server aliascache  snd_tauntdeath1    "monsters/thrall/puny.WAV" 1
server aliascache  snd_tauntdeath2    "monsters/thrall/wrath1.WAV" 1

//
// CLIENT Initialization Commands
//
// Sound Aliases
client aliascache  snd_growl1     "monsters/thrall/growl1.wav" 1
client aliascache  snd_growl2     "monsters/thrall/growl2.wav" 1
client aliascache  snd_growl3     "monsters/thrall/growl3.wav" 1

//client aliascache  snd_stageone1    "monsters/thrall/thinkso.wav" 1
//client aliascache  snd_second1    "monsters/thrall/pissoff.wav" 1

client aliascache  snd_death1    "monsters/thrall/saveme.wav" 1
client aliascache  snd_spasm1    "monsters/thrall/spasm.wav" 1

client aliascache  snd_sawdeath1   "monsters/thrall/body/sawdeath.wav" 1
client aliascache  snd_step1   "monsters/thrall/body/step1.wav" 1

client aliascache  snd_kneefall1   "monsters/thrall/body/step1.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_grndslice1   "monsters/thrall/body/slicer5.wav" 1
client aliascache  snd_gore1   "monsters/thrall/body/goregib.wav" 1
client aliascache  snd_on1   "monsters/thrall/body/sawon.wav" 1
client aliascache  snd_off1   "monsters/thrall/body/sawoff.wav" 1
client aliascache  snd_run1   "monsters/thrall/body/run.wav" 1
client aliascache  snd_breathe1   "monsters/thrall/breathe.wav" 1
client aliascache  snd_pant1   "monsters/thrall/breathe2.wav" 1
client aliascache  snd_drag1   "monsters/thrall/body/bldrag.wav" 1
client aliascache  snd_bldsml1   "monsters/thrall/body/bldsml.wav" 1
client aliascache  snd_trbl1   "monsters/thrall/body/trbl.wav"
client aliascache  snd_whoosh1     "weapons/punch/whsh1.wav" 1
client aliascache  snd_whoosh2     "weapons/punch/whsh2.wav" 1
client aliascache  snd_chestfire1   "weapons/pulse/fire2d.wav" 1

// -----------------------------------------------------------------------------
// MAIN SECTION
//
!main:
// Normal Animations

// Run and walk are the same animation!!  
// Remember to copy to both!!
client walk first randomsound snd_breathe 1 4
client walk first randomsound snd_drag .6 2
server walk     4 movementsound
server walk    12 movementsound
client walk		 4 randomsound snd_step .7
client walk    12 randomsound snd_step .7

client run first randomsound snd_breathe 1 4
server run       4 movementsound
server run       9 movementsound
client run       4 randomsound snd_step 1 3
client run       9 randomsound snd_pant 1 4
client run       9 randomsound snd_run 1 2
client run       9 randomsound snd_step 1 3

client melee1 2 randomsound snd_step 1 4
client melee1 2 randomsound snd_on 1 2
server melee1 3 melee 0 300
client melee1 6 randomsound snd_off 1 2

client melee2 1 randomsound snd_step 1 4
client melee2 2 randomsound snd_on 1 2
server melee2 3 melee 0 300
client melee2 7 randomsound snd_off 1 2

client melee3 first randomsound snd_growl 1 6
client melee3 2 randomsound snd_on 1 3
client melee3 4 randomsound snd_step 1 4
server melee3 4 melee 0 300
client melee3 4 randomsound snd_grndslice 1 2
client melee3 14 randomsound snd_step 1 4
client melee3 16 randomsound snd_off 1 3

client charge first randomsound snd_growl 1 6
client charge 3 randomsound snd_step 1 4
client charge 5 randomsound snd_step 1 4
client charge 6 randomsound snd_on 1 2
server charge 8 melee 0 300
client charge 8 randomsound snd_off 1 2
client charge 9 randomsound snd_step 1 4

client death first randomsound snd_death 1 6 0
client death 14 randomsound snd_kneefall 1 4
client death 20 randomsound snd_breathe 1 4
client death 22 randomsound snd_trbl 1 3
client death 22 randomsound snd_grndslice 1 2
client death 24 randomsound snd_grndslice 1 2
client death 27 randomsound snd_grndslice 1 2
client death 29 randomsound snd_grndslice 1 2
client death 31 randomsound snd_grndslice 1 2
client death 33 randomsound snd_grndslice 1 2
client death 35 randomsound snd_grndslice 1 3
client death 41 randomsound snd_spasm 1.5 6 0
client death 41 randomsound snd_gore1 1.5 2
client death 41 randomsound snd_sawdeath 1 4
server death 41 gibfest
server death 42 gibfest
server death 43 gibfest
server death 44 gibfest
server death 45 gibfest
server death 46 gibfest
server death 47 gibfest
server death 48 gibfest
server death 49 gibfest
server death 50 gibfest

client chest_fire			first randomsound snd_chestfire 1 2
server chest_fire			first firepulse

client chest_readyfire  first randomsound snd_pant 1 4

client readyfire first	randomsound snd_pant 1 2
client readyfire 7		randomsound snd_step 1 4

client fire			first randomsound snd_pant 1 4
server fire			1 firerockets

//client stage1_end first randomsound snd_stageone 1 6 0
client stage1_end 6 randomsound snd_step 1 4
client stage1_end 7 randomsound snd_step 1 4

//client stage2_end first randomsound snd_second 1 6 0
client stage2_end 1 randomsound snd_step 1 4
client stage2_end 7 randomsound snd_on 1 2
client stage2_end 17 randomsound snd_kneefall 1 4
client stage2_end 18 randomsound snd_kneefall 1 4
client stage2_end 18 randomsound snd_off 1 2

client idle1 first randomsound snd_breathe 1 4
client idle1 first randomsound snd_bldsml .5 2
client idle1 8 randomsound snd_bldsml .5 2

// -----------------------------------------------------------------------------
// SOURCESAFE Update Log
//
// $Log:: /Quake 2 Engine/Sin/Base Sin Data/Models/Monster/thrall.def         $
// 
// 24    11/18/98 4:17a Aldie
// Added chest_fire sound
// 
// 23    11/15/98 8:09p Jimdose
// made his bounding box bigger
// 
// 22    11/14/98 1:07a Joeske
// Fixed extra alias problem in snd_pursuit.
// 
// 21    11/13/98 12:31a Joeske
// Fixed the sound refs not being set properly. They were all set to one.
// 
// 20    11/12/98 11:21p Aldie
// 
// 19    10/27/98 9:29p Phook
// 
// 18    10/27/98 8:45p Joeske
// Commented out stage dialogs. Scripts call them.
// 
// 17    10/27/98 8:03p Jimdose
// 
// 16    10/27/98 6:09p Jimdose
// 
// 15    10/27/98 5:55p Jimdose
// 
// 14    10/27/98 4:54p Jimdose
// 
// 13    10/27/98 3:47a Jimdose
// got pulse weapon working
// 
// 12    10/26/98 6:10p Beau
// added aims
// 
// 11    10/26/98 2:06a Jimdose
// got rid of black damage skin
// made classname thrallmaster
// 
// 10    10/25/98 11:08a Phook
// 
// 9     10/24/98 6:39p Joeske
// Fixed formatting and added in SINED Section.
// 
// -----------------------------------------------------------------------------
