--[[ | This file was obtained through the combined efforts | of Madbluntz & Plymouth Antiquarian Society. | | Credits: lifestorm, Gregory Wayne Rossel JR., | Maloy, DrPepper10 @ RIP, Atle! | | Visit for more: https://plymouth.thetwilightzone.ru/ --]] AddCSLuaFile("shared.lua") include('shared.lua') /*----------------------------------------------- *** Copyright (c) 2012-2023 by DrVrej, All rights reserved. *** No parts of this code or any of its contents may be reproduced, copied, modified or adapted, without the prior written consent of the author, unless otherwise indicated for stand-alone materials. -----------------------------------------------*/ ENT.Model = {"models/monk.mdl"} -- The game will pick a random model from the table when the SNPC is spawned | Add as many as you want ENT.StartHealth = 100 ENT.HasHealthRegeneration = true -- Can the SNPC regenerate its health? ENT.HealthRegenerationAmount = 1 -- How much should the health increase after every delay? ENT.HealthRegenerationDelay = VJ_Set(0.5, 1) -- How much time until the health increases ENT.HullType = HULL_HUMAN --------------------------------------------------------------------------------------------------------------------------------------------- ENT.VJ_NPC_Class = {"CLASS_PLAYER_ALLY"} -- NPCs with the same class with be allied to each other ENT.FriendsWithAllPlayerAllies = true -- Should this SNPC be friends with all other player allies that are running on VJ Base? ENT.BloodColor = "Red" -- The blood type, this will determine what it should use (decal, particle, etc.) ENT.AnimTbl_MeleeAttack = {"vjseq_MeleeAttack01"} -- Melee Attack Animations ENT.TimeUntilMeleeAttackDamage = 0.7 -- This counted in seconds | This calculates the time until it hits something ENT.FootStepTimeRun = 0.25 -- Next foot step sound when it is running ENT.FootStepTimeWalk = 0.5 -- Next foot step sound when it is walking ENT.MoveRandomlyWhenShooting = false -- Should it move randomly when shooting? ENT.AnimTbl_GrenadeAttack = {ACT_RANGE_ATTACK_THROW} -- Grenade Attack Animations ENT.TimeUntilGrenadeIsReleased = 0.87 -- Time until the grenade is released ENT.GrenadeAttackAttachment = "anim_attachment_RH" -- The attachment that the grenade will spawn at ENT.HasOnPlayerSight = true -- Should do something when it sees the enemy? Example: Play a sound ENT.BecomeEnemyToPlayer = true -- Should the friendly SNPC become enemy towards the player if it's damaged by a player? ENT.AnimTbl_Medic_GiveHealth = {"heal"} -- Animations is plays when giving health to an ally -- ====== Flinching Code ====== -- ENT.CanFlinch = 1 -- 0 = Don't flinch | 1 = Flinch at any damage | 2 = Flinch only from certain damages -- ====== File Path Variables ====== -- -- Leave blank if you don't want any sounds to play ENT.SoundTbl_FootStep = {"npc/footsteps/hardboot_generic1.wav","npc/footsteps/hardboot_generic2.wav","npc/footsteps/hardboot_generic3.wav","npc/footsteps/hardboot_generic4.wav","npc/footsteps/hardboot_generic5.wav","npc/footsteps/hardboot_generic6.wav","npc/footsteps/hardboot_generic8.wav"} ENT.SoundTbl_Idle = { "vo/ravenholm/firetrap_vigil.wav", "vo/ravenholm/monk_rant01.wav", "vo/ravenholm/monk_rant02.wav", "vo/ravenholm/monk_rant03.wav", "vo/ravenholm/monk_rant04.wav", "vo/ravenholm/monk_rant05.wav", "vo/ravenholm/monk_rant06.wav", "vo/ravenholm/monk_rant07.wav", "vo/ravenholm/monk_rant08.wav", "vo/ravenholm/monk_rant09.wav", "vo/ravenholm/monk_rant10.wav", "vo/ravenholm/monk_rant11.wav", "vo/ravenholm/monk_rant12.wav", "vo/ravenholm/monk_rant13.wav", "vo/ravenholm/monk_rant14.wav", "vo/ravenholm/monk_rant15.wav", "vo/ravenholm/monk_rant16.wav", "vo/ravenholm/monk_rant17.wav", "vo/ravenholm/monk_rant18.wav", "vo/ravenholm/monk_rant19.wav", "vo/ravenholm/monk_rant20.wav", "vo/ravenholm/monk_rant21.wav", "vo/ravenholm/monk_rant22.wav", } ENT.SoundTbl_OnPlayerSight = { "vo/ravenholm/grave_follow.wav", "vo/ravenholm/grave_stayclose.wav", --"vo/ravenholm/monk_followme.wav", "vo/ravenholm/monk_overhere.wav", "vo/ravenholm/monk_stayclosebro.wav", "vo/ravenholm/pyre_anotherlife.wav", "vo/ravenholm/yard_greetings.wav", } ENT.SoundTbl_Alert = { "vo/ravenholm/aimforhead.wav", "vo/ravenholm/bucket_guardwell.wav", "vo/ravenholm/engage01.wav", "vo/ravenholm/engage02.wav", "vo/ravenholm/engage03.wav", "vo/ravenholm/engage04.wav", "vo/ravenholm/engage05.wav", "vo/ravenholm/engage06.wav", "vo/ravenholm/engage07.wav", "vo/ravenholm/engage08.wav", "vo/ravenholm/engage09.wav", "vo/ravenholm/shotgun_hush.wav", "vo/ravenholm/shotgun_theycome.wav", } ENT.SoundTbl_BecomeEnemyToPlayer = { "vo/ravenholm/engage01.wav", "vo/ravenholm/engage02.wav", "vo/ravenholm/engage03.wav", "vo/ravenholm/engage04.wav", "vo/ravenholm/engage05.wav", "vo/ravenholm/engage06.wav", "vo/ravenholm/engage07.wav", "vo/ravenholm/engage08.wav", "vo/ravenholm/engage09.wav", } ENT.SoundTbl_CallForHelp = { "vo/ravenholm/monk_coverme02.wav", "vo/ravenholm/monk_coverme03.wav", "vo/ravenholm/monk_coverme04.wav", "vo/ravenholm/monk_coverme05.wav", "vo/ravenholm/monk_coverme07.wav", "vo/ravenholm/monk_helpme01.wav", "vo/ravenholm/monk_helpme02.wav", "vo/ravenholm/monk_helpme03.wav", "vo/ravenholm/monk_helpme04.wav", "vo/ravenholm/monk_helpme05.wav", } ENT.SoundTbl_AllyDeath = { "vo/ravenholm/monk_mourn01.wav", "vo/ravenholm/monk_mourn02.wav", "vo/ravenholm/monk_mourn03.wav", "vo/ravenholm/monk_mourn04.wav", "vo/ravenholm/monk_mourn05.wav", "vo/ravenholm/monk_mourn06.wav", "vo/ravenholm/monk_mourn07.wav", } ENT.SoundTbl_MedicBeforeHeal = { "vo/ravenholm/monk_givehealth01.wav" } ENT.SoundTbl_OnGrenadeSight = { "vo/ravenholm/monk_danger01.wav", "vo/ravenholm/monk_danger02.wav", "vo/ravenholm/monk_danger03.wav", "vo/ravenholm/monk_blocked02.wav", } ENT.SoundTbl_OnDangerSight = { "vo/ravenholm/monk_danger01.wav", "vo/ravenholm/monk_danger02.wav", "vo/ravenholm/monk_danger03.wav", "vo/ravenholm/monk_blocked02.wav", } ENT.SoundTbl_OnKilledEnemy = { "vo/ravenholm/madlaugh01.wav", "vo/ravenholm/madlaugh02.wav", "vo/ravenholm/madlaugh03.wav", "vo/ravenholm/madlaugh04.wav", "vo/ravenholm/monk_kill01.wav", "vo/ravenholm/monk_kill02.wav", "vo/ravenholm/monk_kill03.wav", "vo/ravenholm/monk_kill04.wav", "vo/ravenholm/monk_kill05.wav", "vo/ravenholm/monk_kill06.wav", "vo/ravenholm/monk_kill07.wav", "vo/ravenholm/monk_kill08.wav", "vo/ravenholm/monk_kill09.wav", "vo/ravenholm/monk_kill10.wav", "vo/ravenholm/monk_kill11.wav", } ENT.SoundTbl_Pain = { "vo/ravenholm/monk_pain01.wav", "vo/ravenholm/monk_pain02.wav", "vo/ravenholm/monk_pain03.wav", "vo/ravenholm/monk_pain04.wav", "vo/ravenholm/monk_pain05.wav", "vo/ravenholm/monk_pain06.wav", "vo/ravenholm/monk_pain07.wav", "vo/ravenholm/monk_pain08.wav", "vo/ravenholm/monk_pain09.wav", "vo/ravenholm/monk_pain10.wav", "vo/ravenholm/monk_pain12.wav", } ENT.SoundTbl_Death = { "vo/ravenholm/monk_pain01.wav", "vo/ravenholm/monk_pain02.wav", "vo/ravenholm/monk_pain03.wav", "vo/ravenholm/monk_pain04.wav", "vo/ravenholm/monk_pain05.wav", "vo/ravenholm/monk_pain06.wav", "vo/ravenholm/monk_pain07.wav", "vo/ravenholm/monk_pain08.wav", "vo/ravenholm/monk_pain09.wav", "vo/ravenholm/monk_pain10.wav", "vo/ravenholm/monk_pain12.wav", } ENT.GeneralSoundPitch1 = 100 --[[ UNUSED "vo/ravenholm/attic_apologize.wav" "vo/ravenholm/bucket_almost.wav" "vo/ravenholm/bucket_brake.wav" "vo/ravenholm/bucket_patience.wav" "vo/ravenholm/bucket_stepin.wav" "vo/ravenholm/bucket_thereyouare.wav" "vo/ravenholm/bucket_waited.wav" "vo/ravenholm/cartrap_better.wav" "vo/ravenholm/cartrap_iamgrig.wav" "vo/ravenholm/exit_darkroad.wav" "vo/ravenholm/exit_goquickly.wav" "vo/ravenholm/exit_hurry.wav" "vo/ravenholm/exit_nag01.wav" "vo/ravenholm/exit_nag02.wav" "vo/ravenholm/exit_salvation.wav" "vo/ravenholm/firetrap_freeuse.wav" "vo/ravenholm/firetrap_lookout.wav" "vo/ravenholm/firetrap_welldone.wav" "vo/ravenholm/monk_blocked01.wav" "vo/ravenholm/monk_blocked03.wav" "vo/ravenholm/monk_death7.wav" "vo/ravenholm/monk_followme.wav" "vo/ravenholm/monk_giveammo01.wav" "vo/ravenholm/monk_quicklybro.wav" "vo/ravenholm/pyre_keepeye.wav" "vo/ravenholm/shotgun_bettergun.wav" "vo/ravenholm/shotgun_catch.wav" "vo/ravenholm/shotgun_closer.wav" "vo/ravenholm/shotgun_keepitclose.wav" "vo/ravenholm/shotgun_moveon.wav" "vo/ravenholm/shotgun_overhere.wav" "vo/ravenholm/shotgun_stirreduphell.wav" "vo/ravenholm/wrongside_howcome.wav" "vo/ravenholm/wrongside_mendways.wav" "vo/ravenholm/wrongside_seekchurch.wav" "vo/ravenholm/wrongside_town.wav" "vo/ravenholm/yard_shepherd.wav" "vo/ravenholm/yard_suspect.wav" "vo/ravenholm/yard_traps.wav" ]]-- --------------------------------------------------------------------------------------------------------------------------------------------- function ENT:CustomOnSetupWeaponHoldTypeAnims(hType) if hType == "crossbow" or hType == "shotgun" then self.WeaponAnimTranslations[ACT_RANGE_ATTACK1] = ACT_RANGE_ATTACK_SHOTGUN self.WeaponAnimTranslations[ACT_GESTURE_RANGE_ATTACK1] = ACT_GESTURE_RANGE_ATTACK_SHOTGUN self.WeaponAnimTranslations[ACT_RANGE_ATTACK1_LOW] = ACT_RANGE_ATTACK_SMG1_LOW self.WeaponAnimTranslations[ACT_RELOAD] = ACT_RELOAD_SMG1 self.WeaponAnimTranslations[ACT_RELOAD_LOW] = ACT_RELOAD_SMG1_LOW self.WeaponAnimTranslations[ACT_IDLE] = ACT_IDLE self.WeaponAnimTranslations[ACT_IDLE_ANGRY] = ACT_IDLE_ANGRY self.WeaponAnimTranslations[ACT_WALK] = ACT_WALK_RIFLE self.WeaponAnimTranslations[ACT_WALK_AIM] = ACT_WALK_AIM_RIFLE self.WeaponAnimTranslations[ACT_WALK_CROUCH] = ACT_WALK_CROUCH_RPG self.WeaponAnimTranslations[ACT_WALK_CROUCH_AIM] = ACT_WALK_CROUCH_AIM_RIFLE self.WeaponAnimTranslations[ACT_RUN] = ACT_RUN_RIFLE self.WeaponAnimTranslations[ACT_RUN_AIM] = ACT_RUN_AIM_RIFLE self.WeaponAnimTranslations[ACT_RUN_CROUCH] = ACT_RUN_CROUCH_RPG self.WeaponAnimTranslations[ACT_RUN_CROUCH_AIM] = ACT_RUN_CROUCH_AIM_RIFLE self.CanCrouchOnWeaponAttack = false return true else self.CanCrouchOnWeaponAttack = true return false end end