You cannot change a ped's model on the fly afaik (only the player's model).
So you need to delete NPCs and creates new ones with Trevor's model.
I gave it a quick try in C#
Model trevor = new Model(-1686040670);
foreach (Ped ped in World.GetAllPeds())
if (ped.Model.Hash != trevor.Hash && !ped.IsPlayer && ped.IsHuman && !ped.IsPersistent && ped.IsVisible)
Vector3 pos = ped.Position;
float heading = ped.Heading;
// If ped is in vehicle
if (ped.CurrentVehicle != null)
Vehicle veh = ped.CurrentVehicle;
VehicleSeat seat = ped.SeatIndex;
Vector3 posUnderground = pos;
posUnderground.Z = posUnderground.Z - 50.0f;
trevorPed = World.CreatePed(trevor, posUnderground, heading);
trevorPed = World.CreatePed(trevor, pos, heading);
trevorPed.RandomizeOutfit(); // randomize the clothes
It works but I've got graphic glitches and a memory error when I do it too often, so there must be a cleaner way to do so.
If you want to use specific clothes, you'll need to use PED::SET_PED_COMPONENT_VARIATION (http://www.dev-c.com...62b14f48d29de80)
You can see how to use it here: http://gtaforums.com...903982-outifts/