Ravenfield

Ravenfield

Extended squad orders
Hijong park  [developer] Apr 4, 2022 @ 6:06pm
Source code
behaviour("extendedsquadorder")

function extendedsquadorder:Update()
if Player.actor.isDead==false then
if Input.GetKeyDown(KeyCode.T) then
local actors= ActorManager.GetAliveActorsOnTeam(Player.actor.team)
local neednum=-1

if Player.actor.activeVehicle~=nil then
neednum=0
for i = 2, #Player.actor.activeVehicle.seats do
if Player.actor.activeVehicle.seats ~= nil and Player.actor.activeVehicle.seats.occupant == nil then
neednum=neednum+1
end
end
end

for t = 1, #actors do
if (neednum>0 or neednum==-1) and actors[t].activeVehicle==nil and ActorManager.ActorCanSeePlayer(actors[t])==true and actors[t].squad~=Player.actor.squad and Vector3.Distance(actors[t].transform.position, Player.actor.transform.position) <=40 then
Player.actor.squad.AddMember(actors[t])
if neednum>-1 then
actors[t].aiController.GotoAndEnterVehicle(Player.actor.activeVehicle)
neednum=neednum-1
end
end
end

end

if Input.GetKeyDown(KeyCode.Y) or Input.GetKeyDown(KeyCode.U) then
local passengers = {}
local passengerCount = 0

if Player.actor.activeVehicle~=nil then
for i = 2, #Player.actor.activeVehicle.seats, 1 do
if Player.actor.activeVehicle.seats ~= nil and Player.actor.activeVehicle.seats.occupant ~= nil and #Player.actor.activeVehicle.seats.weapons == 0 then
passengerCount = passengerCount+1
passengers[passengerCount] = Player.actor.activeVehicle.seats.occupant
Player.actor.activeVehicle.seats.occupant.aiController.LeaveVehicle()
end
end
else
for i = 2, #Player.actor.squad.members, 1 do
passengerCount = passengerCount+1
passengers[passengerCount] = Player.actor.squad.members
end
end

if Input.GetKeyDown(KeyCode.Y) and passengerCount > 0 then
Player.actor.squad.SplitSquad(passengers)
local atkpoint=1
for i = 2, #ActorManager.capturePoints do
if Vector3.Distance(Player.actor.transform.position,ActorManager.capturePoints.transform.position) < Vector3.Distance(Player.actor.transform.position,ActorManager.capturePoints[atkpoint].transform.position) then
atkpoint = i
end
end
passengers[1].squad.AssignOrder(Order.Create(OrderType.Attack, ActorManager.capturePoints[atkpoint], ActorManager.capturePoints[atkpoint]))
end
end

if Player.actor.activeVehicle~=nil then
if Input.GetKeyDown(KeyCode.H) then
for i = 2, #Player.actor.squad.members, 1 do
if Player.actor.squad.members ~= nil and Player.actor.squad.members.activeVehicle == nil then
Player.actor.squad.members.aiController.GotoAndEnterVehicle(Player.actor.activeVehicle)
end
end
end

if Input.GetKeyDown(KeyCode.J) then
for i = 2, #Player.actor.activeVehicle.seats, 1 do
if Player.actor.activeVehicle.seats ~= nil and Player.actor.activeVehicle.seats.occupant ~= nil then
Player.actor.activeVehicle.seats.occupant.aiController.LeaveVehicle()
end
end
end
end

end
end
< >
Showing 1-5 of 5 comments
SudoName Apr 4, 2022 @ 9:40pm 
Hello Hijong!
I sent a message on Discord about the source code conflicting with steam's text formatting and an update to make the mutator use player chosen keybinds instead.
Feel free to update the mod with that version if you want. :mhwgood:
I could actually copy this and use it for something I'm planning to do if you don't mind.
Fixxxer07 Apr 8, 2022 @ 9:18pm 
Ball
[OG] Speed Weed Aug 27, 2022 @ 8:31pm 
He even left the source code, that right there is a sign of a true gentleman or gentlewoman
SSS_Krut Apr 10 @ 10:50pm 
Bruh please make a github repo for us:csgohelmet:
< >
Showing 1-5 of 5 comments
Per page: 1530 50