Files
DoomRTX/base/def/monster_flying_cacodemon.def
2026-05-23 14:19:48 -07:00

239 lines
8.2 KiB
Modula-2

/***********************************************************************
monster_flying_cacodemon.def
***********************************************************************/
export fred {
options -prefix CACO_ -align ALL -keep caco_launch caco_mouthfire caco_mouthfire2 caco_mouthfire2a -parent caco_launch Head -sourcedir models/monsters/cacodemon/cycles -destdir models/md5/monsters/cacodemon
mesh cacodemon_mesh.mb -dest cacodemon
anim idle.mb
anim initial.mb
anim walk.mb
anim run.mb
anim sight.mb
anim attack1.mb
anim range_attack1.mb
anim left_pain.mb
anim right_pain.mb
anim tail_pain.mb
anim head_pain.mb
anim death1.mb
}
model monster_flying_cacodemon {
mesh models/md5/monsters/cacodemon/cacodemon.md5mesh
offset ( 0 0 56 )
channel torso ( *origin )
anim af_pose models/md5/monsters/cacodemon/initial.md5anim
anim idle models/md5/monsters/cacodemon/idle.md5anim
anim initial models/md5/monsters/cacodemon/initial.md5anim
anim sight1 models/md5/monsters/cacodemon/sight.md5anim {
frame 3 sound_voice monster_demon_cacodemon_sight
}
anim fly models/md5/monsters/cacodemon/walk.md5anim {
//frame 1 sound_body snd_walk
}
anim walk models/md5/monsters/cacodemon/walk.md5anim {
//frame 1 sound_body snd_walk
}
anim run models/md5/monsters/cacodemon/run.md5anim {
//frame 1 sound_body snd_walk
}
anim melee_attack1 models/md5/monsters/cacodemon/attack1.md5anim {
frame 1 sound_weapon monster_demon_cacodemon_melee
frame 14 melee melee_cacodemon
}
anim range_attack1 models/md5/monsters/cacodemon/range_attack1.md5anim {
frame 13 create_missile caco_launch
frame 13 sound_weapon monster_demon_cacodemon_attackmissile
frame 15 launch_missile caco_launch
}
anim pain_head models/md5/monsters/cacodemon/head_pain.md5anim {
frame 1 sound_voice monster_demon_cacodemon_pain
}
anim pain_left_arm models/md5/monsters/cacodemon/left_pain.md5anim {
frame 1 sound_voice monster_demon_cacodemon_pain
}
anim pain_right_arm models/md5/monsters/cacodemon/right_pain.md5anim {
frame 1 sound_voice monster_demon_cacodemon_pain
}
anim pain_legs models/md5/monsters/cacodemon/tail_pain.md5anim {
frame 1 sound_voice monster_demon_cacodemon_pain
}
anim pain models/md5/monsters/cacodemon/tail_pain.md5anim {
frame 1 sound_voice monster_demon_cacodemon_pain
}
}
entityDef monster_flying_cacodemon {
"inherit" "monster_default"
"scriptobject" "ai"
"nativeobject" "rvmMonsterFlyingCacodemon"
"model" "monster_flying_cacodemon"
"ragdoll" "monster_demon_cacodemon"
"size" "48 48 80"
"use_aas" "aas48"
"team" "1"
"rank" "2"
"health" "200"
"melee_range" "48"
"def_projectile" "projectile_cacodemon_fireball"
"attack_cone" "50"
"attack_accuracy" "0"
"turn_rate" "150"
"fly_offset" "-56"
"fly_speed" "175"
"fly_seek_scale" "4"
"fly_roll_max" "60"
"fly_roll_scale" "100"
"fly_pitch_scale" "45"
"fly_pitch_max" "15"
"mass" "200"
"bone_flytilt" "Body2"
//"smokeParticleSystem" "barrel-caco_launch" //this was going to be the particle spawned out the sides of his mouth when he shoots, but no.
"smokeParticleSystem2" "caco_mouthfire"
"smokeParticleSystem3" "caco_mouthfire2"
"smokeParticleSystem4" "caco_mouthfire2a"
"useBoneAxis" "1"
"burnaway" "0.25"
"smoke_burnParticleSystem" "burn_imp.prt-Head"
"damage_zone head" "*Head -*LeftSide -*RightSide"
//"damage_zone chest" "*Waist -*Rshldr -*Lshldr -*Neck"
"damage_zone left_arm" "*LeftSide"
"damage_zone right_arm" "*RightSide"
"damage_zone legs" "*Tail1"
"snd_ambient" "monster_demon_cacodemon_walk"
"snd_sight" "monster_demon_cacodemon_sight"
"snd_sight2" "monster_demon_cacodemon_sight2"
"snd_chatter" "monster_demon_cacodemon_chatter"
"snd_chatter_combat" "monster_demon_cacodemon_chatter"
"snd_melee" "monster_demon_cacodemon_melee"
"snd_pain" "monster_demon_cacodemon_pain"
"snd_attackmissile" "monster_demon_cacodemon_attackmissile"
"snd_death" "monster_demon_cacodemon_die"
"snd_burn" "monster_demon_cacodemon_burn"
"fx_teleport" "fx/teleporter_fly.fx"
"fx_teleport1" "fx/teleporter1_fly.fx"
"fx_teleport2" "fx/teleporter2_fly.fx"
"fx_teleport3" "fx/teleporter3_fly.fx"
}
entityDef damage_cacodemon_fireball {
"damage" "12"
"kickDir" "1 0 0"
"mtr_blob" "genericDamage"
"blob_time" "300"
"blob_size" "400"
"blob_offset_x" "400"
"knockback" "10"
"kick_time" "400"
"kick_amplitude" "1"
"dv_time" "100"
"smoke_wound_flesh" "bloodwound.smoke"
}
entityDef damage_cacodemon_fireball_splash {
"damage" "5"
"radius" "48"
}
entityDef projectile_cacodemon_fireball {
"spawnclass" "idProjectile"
"mins" "-6 -6 -6"
"maxs" "6 6 6"
"model" "caco_lightningball.prt"
"def_damage" "damage_cacodemon_fireball"
"def_splash_damage" "damage_cacodemon_fireball_splash"
"launchFromBarrel" "1"
"health" "5" // amount of damage projectile can take if damaged (0 means it can't be destroyed)
"velocity" "325 0 -350" // how fast the projectile leaves the gun (or distance if fuse is 0)
"angular_velocity" "0 0 0" // how the projectile is rotating when it leaves the gun
"thrust" "0" // the rate of acceleration (always in the direction of the projectiles model)
"thrust_start" "0" // when to start accelerating
"thrust_end" "0" // when to stop accelerating
"linear_friction" "0" // "air" friction
"angular_friction" "0"
"contact_friction" "0"
"bounce" "0" // how much speed a projectile retains when it bounces off of objects (coefficient of restitution). 0 means no bounce.
"mass" "500"
"gravity" "0" // how much gravity affects the trajectory. gravity direction is same as the entity that fired it.
"fuse" "20" // how long before the projectile is removed or self-detonates. Use 0 for beam weapons (velocity == distance).
"detonate_on_fuse" "0" // whether projectile should detonate when it's fuse runs out
"detonate_on_death" "1" // whether projectile should detonate when it's "killed" (health runs out)
"detonate_on_world" "1" // whether projectile should detonate when it hits an obstacle
"detonate_on_actor" "1" // whether projectile should detonate when it hits a character in the game
"impact_damage_effect" "0" // whether projectile causes blood splats from characters that bleed
"impact_gib" "1" // whether projectile can gib a character or not (for example: bullets don't gib, but rockets do)
"mtr_detonate" "textures/decals/ballburn01"
"decal_size" "75"
//"smoke_fly" "caco_lightningball.prt" // particle effect while in the air
"smoke_detonate" "" // particle effect when detonates
"smoke_residue" "" // particle effect while in the air
"smoke_bounce" "" // particle effect when bounces
"smoke_fuse" "" // particle effect when removed from fuse expiring
"model_detonate" "caco_lightninghit.prt"
"debris_count" "3"
"def_debris" "debris_largeshrapnel"
"def_shrapnel" "debris_shrapnel"
"mtr_light_shader" "lights/impflyflash"
"light_color" "0.9 0.7 0.05"
"light_radius" "160"
"light_offset" "0 0 0"
"mtr_explode_light_shader" "lights/impflash"
"explode_light_color" "3.6 3.0 0.5"
"explode_light_radius" "320"
"explode_light_fadetime" "1"
"snd_explode" "caco_projectile_impact"
"snd_fly" "caco_projectile" // particle effect while in the air
}
entityDef melee_cacodemon {
"damage" "20"
"kickDir" "1 0 0"
//"snd_hit" "monster_flying_cacodemon_hit"
//"snd_miss" "monster_flying_cacodemon_miss"
"snd_hit" "monster_demon_pinky_melee_hit"
"snd_miss" "monster_demon_pinky_melee_miss"
"mtr_blob" "bite"
"blob_time" "300"
"blob_x" "0"
"blob_y" "-90"
"blob_width" "650"
"blob_height" "650"
"knockback" "100"
"kick_time" "400"
"kick_amplitude" "1"
"dv_time" "100"
}