I need help making an npc for my custom OIFY mod

May I request an npc? XD It doesn’t require a custom model (or shouldn’t), it is basicly just a mingebag, dr. kleiner in a t-pose, his head SLIGHTLY tilted, to the right, and a gravity gun on his crotch. It is for an OIFY mod I am working on, I’m still learning about lua so I don’t know how to do this yet XD OH! An the AI is basic, just make it wander around and if it spots you it will try to avoid you and spawn random props such as melons and crates and barrels and stuff behind it to slow you down, then you have to chase it down and kill it, so far it will just spawn maby medkits or ammo, but I’ll change the code and stuff once I learn lua.

would something like this work for spawning the props? XD Probably not but just to show you what I mean:


local RandomModels = {
      "models/props_interiors/BathTub01a.mdl",
      "models/Combine_Helicopter/helicopter_bomb01.mdl"
      "models/junk/bicycle01a.mdl"
      "models/junk/watermelon01.mdl"
      "models/junk/CinderBlock01a.mdl"
      "models/junk/garbage_metalcan002a.mdl"
      "models/junk/gascan001a.mdl"
      "models/junk/GlassBottle01a.mdl"
      "models/junk/metalhook001a.mdl"
      "models/junk/meathook001a.mdl"
      "models/junk/metal_paintcan001a.mdl"
      "models/junk/MetalBucket.mdl"
      "models/junk/PopCan01a.mdl"
      "models/junk/PlasticCrate01a.mdl"
      "models/junk/propane_tank001a.mdl"
      "models/junk/PropaneCanister001a.mdl"
      "models/junk/PushCart01a.mdl"
      "models/junk/ravenholmsign.mdl"
      "models/junk/Rock001a.mdl"
      "models/junk/sawblade001a.mdl"
      "models/junk/Shoe001a.mdl"
      "models/junk/Shovel01a.mdl"
      "models/junk/TrafficCone001a.mdl"
      "models/junk/TrashBin01a.mdl"
      "models/junk/TrashDumpster02b.mdl"
      "models/junk/vent001.mdl"
      "models/junk/wood_crate001a.mdl"
      "models/junk/wood_crate002a.mdl"
      "models/junk/wood_pallet001a.mdl"
      "models/junk/cardboard_box001a.mdl"
      "models/junk/cardboard_box002a.mdl"
      "models/junk/garbage_bag001a.mdl"
      "models/junk/garbage_coffeemug001a.mdl"
      "models/junk/garbage_glassbottle001a.mdl"
      "models/junk/garbage_glassbottle002a.mdl"
      "models/junk/garbage_glassbottle003a.mdl"
      "models/junk/garbage_metalcan002a.mdl"
      "models/junk/garbage_milkcarton001a.mdl"
      "models/junk/garbage_newspaper001a.mdl"
      "models/junk/garbage_glassbottle002a.mdl"
      "models/Combine_Room/combine_moniter001temp.mdl"
      "models/props_c17/bench01a.mdl"
      "models/props_c17/canister01a.mdl"
      "models/props_c17/chair_office01a.mdl"
      "models/props_c17/chair_stool01a.mdl"
      "models/props_c17/clock01.mdl"
      "models/props_c17/column02a.mdl"
      "models/props_c17/computer01_keyboard.mdl"
      "models/props_c17/concrete_barrier001a.mdl"
      "models/props_c17/consolebox01a.mdl"
      "models/props_c17/display_cooler01a.mdl"
      "models/props_c17/doll01.mdl"
      "models/props_c17/door01_left.mdl"
      "models/props_c17/fence01a.mdl"
      "models/props_c17/fence02a.mdl"
      "models/props_c17/fence03a.mdl"
      "models/props_c17/fence04a.mdl"
      "models/props_c17/fountain_01.mdl"
      "models/props_c17/FurnitureArmchair001a.mdl"
      "models/props_c17/FurnitureBathtub001a.mdl"
      "models/props_c17/FurnitureBed001a.mdl"
      "models/props_c17/FurnitureBoiler001a.mdl"
      "models/props_c17/FurnitureCouch001a.mdl"
      "models/props_c17/FurnitureCouch002a.mdl"
      "models/props_c17/FurnitureDrawer001a.mdl"
      "models/props_c17/FurnitureCupboard001a.mdl"
      "models/props_c17/FurnitureDrawer002a.mdl"
      "models/props_c17/FurnitureDrawer003a.mdl"
      "models/props_c17/FurnitureDresser001a.mdl"
      "models/props_c17/FurnitureFireplace001a.mdl"
      "models/props_c17/FurnitureFridge001a.mdl"
      "models/props_c17/FurnitureMattress001a.mdl"
      "models/props_c17/FurnitureRadiator001a.mdl"
      "models/props_c17/FurnitureSink001a.mdl"
      "models/props_c17/FurnitureStove001a.mdl"
      "models/props_c17/FurnitureWashingmachine001a.mdl"
      "models/props_c17/FurnitureTable001a.mdl"
      "models/props_c17/FurnitureTable002a.mdl"
      "models/props_c17/FurnitureTable003a.mdl"
      "models/props_c17/FurnitureToilet001a.mdl"
      "models/props_c17/gravestone_coffinpiece001a.mdl"
      "models/props_c17/grinderclamp01a.mdl"
      "models/props_c17/lamp001a.mdl"
      "models/props_c17/lamppost03a_on.mdl"
      "models/props_c17/light_magnifyinglamp02.mdl"
      "models/props_c17/Lockers001a.mdl"
      "models/props_c17/metalladder001.mdl"
      "models/props_c17/oildrum001_explosive.mdl"
      "models/props_c17/oildrum001_explosive.mdl"
      "models/props_c17/oildrum001_explosive.mdl"
      "models/props_c17/oildrum001_explosive.mdl"
      "models/props_c17/oildrum001_explosive.mdl"
      "models/props_c17/paper01.mdl"
      "models/props_c17/playground_carousel01.mdl"
      "models/props_c17/playground_jungle_gym01a.mdl"
      "models/props_c17/playground_jungle_gym01b.mdl"
      "models/props_c17/playground_swingset_seat01a.mdl"
      "models/props_c17/playground_swingset01.mdl"
      "models/props_c17/playground_teetertoter_seat.mdl"
      "models/props_c17/playgroundslide01.mdl"
      "models/props_c17/playgroundTick-tack-toe_block01a.mdl"
      "models/props_c17/pullyhook01.mdl"
      "models/props_c17/statue_horse.mdl"
      "models/props_c17/signpole001.mdl"
      "models/props_c17/streetsign001c.mdl"
      "models/props_c17/streetsign002b.mdl"
      "models/props_c17/streetsign003b.mdl"
      "models/props_c17/streetsign004e.mdl"
      "models/props_c17/streetsign004f.mdl"
      "models/props_c17/streetsign005b.mdl"
      "models/props_c17/streetsign005c.mdl"
      "models/props_c17/streetsign001d.mdl"
      "models/props_c17/SuitCase_passenger_Physics.mdl"
      "models/props_c17/SuitCase001a.mdl"
      "models/props_c17/tools_pliers01a.mdl"
      "models/props_c17/tools_wrench01a.mdl"
      "models/props_c17/Traffic_Light001a.mdl"
      "models/props_c17/Trap_Crush01a.mdl"
      "models/props_c17/TrapPropeller_Blade.mdl"
      "models/props_c17/TrapPropeller_Engine.mdl"
      "models/props_c17/TrapPropeller_Lever.mdl"
      "models/props_c17/tv_moniter01.mdl"
      "models/props_c17/utilitypole03a.mdl"
      "models/props_c17/utilitypole02b.mdl"
      "models/props_c17/utilitypole01d.mdl"
      "models/props_c17/utilitypole01b.mdl"
      "models/props_c17/utilitypole01a.mdl"
      "models/props_c17/utilityconnecter006d.mdl"
      "models/Humans/Charple01.mdl"
      "models/Humans/Charple02.mdl"
      "models/Humans/Charple03.mdl"
      "models/Humans/Charple04.mdl"
      "models/Humans/corpse1.mdl"
      "models/Humans/Group03/male07.mdl"
      "models/Humans/Group01/male01.mdl"
      "models/Humans/Group03m/male02.mdl"
      "models/Humans/Group02/male03.mdl"
      "models/Humans/Group03/male04.mdl"
      "models/Humans/Group02/male05.mdl"
      "models/Humans/Group03/male06.mdl"
      "models/Humans/Group01/male08.mdl"
      "models/Humans/Group03m/male09.mdl"
      "models/Humans/Group03/Female01.mdl"
      "models/Humans/Group03m/Female02.mdl"
      "models/Humans/Group01/Female03.mdl"
      "models/Humans/Group02/Female04.mdl"
      "models/Humans/Group03m/Female05.mdl"
      "models/Humans/Group03m/Female06.mdl"
      "models/Humans/Group01/Female07.mdl"
      "models/Humans/Group03m/Female08.mdl"
      "models/Humans/Group03/Female09.mdl"
      "models/props_interiors/VendingMachineSoda01a.mdl"
      "models/props_buildings/building_002a.mdl"
      "models/props_lab/bewaredog.mdl"
      "models/props_lab/BigRock.mdl"
      "models/props_lab/binderblue.mdl"
      "models/props_lab/blastdoor001a.mdl"
      "models/props_lab/cactus.mdl"
      "models/props_lab/chess.mdl"
      "models/props_lab/citizenradio.mdl"
      "models/props_lab/crematorcase.mdl"
      "models/props_lab/crystalbulk.mdl"
      "models/props_lab/desklamp01.mdl"
      "models/props_lab/filecabinet02.mdl"
      "models/props_lab/generator.mdl"
      "models/props_lab/harddrive01.mdl"
      "models/props_lab/headcrabprep.mdl"
      "models/props_lab/HEV_case.mdl"
      "models/props_lab/huladoll.mdl"
      "models/props_lab/jar01a.mdl"
      "models/props_lab/lockerdoorright.mdl"
      "models/props_lab/lockers.mdl"
      "models/props_lab/miniteleport.mdl"
      "models/props_lab/workspace001.mdl"
      "models/props_lab/workspace002.mdl"
      "models/props_lab/workspace003.mdl"
      "models/props_lab/workspace004.mdl"
      "models/wasteland/boat_01.mdl"
      "models/wasteland/kitchen_counter001a.mdl"
      "models/wasteland/kitchen_fridge001a.mdl"
      "models/wasteland/kitchen_stove.mdl"
      "models/wasteland/laundry_washer003.mdl"
      "models/wasteland/lighthousestairs.mdl"
      "models/wasteland/wood_fence01a.mdl"
      "models/wasteland/wood_fence01b.mdl"
      "models/wasteland/wood_fence01c.mdl"
      "models/wasteland/wood_fence02a.mdl"
      "models/wasteland/wood_fence02a_board01a.mdl"
      "models/wasteland/wood_fence02a_board03a.mdl"
      "models/wasteland/wood_fence02a_board04a.mdl"
      "models/wasteland/wood_fence02a_board05a.mdl"
      "models/wasteland/wood_fence02a_board07a.mdl"
      "models/buggy.mdl"
      "models/combine_apc.mdl"
      "models/Combine_dropship.mdl"
      "models/gman.mdl"
      "models/headcrab.mdl"
      "models/Kleiner.mdl"
      "models/airboat.mdl"
      "models/alyx.mdl"
      "models/monk.mdl"
      "models/Mossman.mdl"
      "models/odessa.mdl"
      "models/vortigaunt.mdl"
}

function SWEP:PrimaryAttack()
   local tr = self.Owner:GetEyeTrace()
   local ent = ents.Create("prop_physics")
   if !ent:IsValid() then return end
   ent:SetPos(tr.HitPos)
   ent:SetModel(table.Random(RandomModels))
   ent:Spawn()
end

I know this npc might be difficult to make but anyone who helps me with this will be put in the credits! =D

anyone? XP Even a small hint?