на главную
об игре
Mafia 2 23.08.2010

Как заставить NPC водить машину без "entity"

нужна четырёх дверная машина, из гаража или из трафика,
присутствие Генри и чтоб он не следовал за ГГ.

-- 1, снала ГГ должен сесть в машину, нажмите на скрипт чтоб NPC сел в машину
DelayBuffer:Insert(
function(l_1_0)
playerCar = game.game:GetActivePlayer():GetOwner()
-- game.entitywrapper:GetEntityByName( "Henry"):AnimStop()
game.entitywrapper:GetEntityByName( "Henry"):GetInOutCar( playerCar, 4, false, false)
end,{},1,1,false)


-- 2, ГГ должен освободить водительское место, нажмите на скрипт чтоб ГГ сел на заднее сидение
DelayBuffer:Insert(
function(l_1_0)
player = game.game:GetActivePlayer()
player:LockControls(true)
player:GetInOutCar( game.entitywrapper:GetEntityByName( "Henry"):GetOwner(), 3, false, false)
player:LockControls(false)
end,{},1,1,false)


-- 3, нажмите на скрипт чтоб NPC вышел из пассажирского место
DelayBuffer:Insert(
function(l_1_0)
playerCar = game.game:GetActivePlayer():GetOwner()
game.entitywrapper:GetEntityByName( "Henry"):GetInOutCar( playerCar, 4, true, true)
end,{},1,1,false)


-- 4, нажмите на скрипт чтоб NPC сел на водительское место
DelayBuffer:Insert(
function(l_1_0)
playerCar = game.game:GetActivePlayer():GetOwner()
game.entitywrapper:GetEntityByName( "Henry"):GetInOutCar( playerCar, 1, false, true)
end,{},1,1,false)


-- 5, поехали !!!
DelayBuffer:Insert(
function(l_1_0)
driveCar = game.entitywrapper:GetEntityByName( "Henry"):GetOwner()
driveCar:DestroyController() driveCar:CreateController( "car_escaper") driveCar:InitializeAIParams( enums.CarAIProfile.NORMAL, 0)
driveCar:EscapeMode() drivePos = Math:newVector() drivePos:set( -1541.3704833984, -78.82649230957, -18.380180358887) -- место куда поедет NPC, "Спирт завод"
driveCar:MoveTo(drivePos, START)
end,{},1,1,false)


-- 5, аггрессивное вождение !!!
DelayBuffer:Insert(
function(l_1_0)
driveCar = game.entitywrapper:GetEntityByName( "Henry"):GetOwner()
driveCar:DestroyController() driveCar:CreateController( "car_escaper") driveCar:InitializeAIParams( enums.CarAIProfile.AGGRESSIVE, 0)
driveCar:EscapeMode() drivePos = Math:newVector() drivePos:set( -1541.3704833984, -78.82649230957, -18.380180358887) -- место куда поедет NPC, "Спирт завод"
driveCar:MoveTo(drivePos, START)
end,{},1,1,false)

Комментарии: 5
Ваш комментарий

JackSnow
Пригодиться конечно.

2

-- 1, сначало ГГ должен сесть в тачку а потом выйти.
-- 2, NPC сядет на любую тачку которую сел ГГ.
DelayBuffer:Insert(
function(l_1_0)
V = game.entitywrapper
npc1 = V:GetEntityByName( "Henry") -- Генри.
player = game.game:GetActivePlayer()
npc1:GetInOutCar(V:GetEntityByGUID( game.garage:GetPlayersCar()), 1, false, false)
player:LockControls(true)
player:GetInOutCar(V:GetEntityByGUID( game.garage:GetPlayersCar()), 2, false, false)
player:LockControls(false)
end,{},1,1,false)

2

Вл123
я решил поделится информацией, может кому нибудь понадобится.

1

круто только зачем это?

0