Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion scripts/ai/jobs/CpAIJobFieldWork.lua
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ function CpAIJobFieldWork:onPreStart()
--- Only add the attach header task, if needed.
self:addTask(self.attachHeaderTask)
end
self:addTask(self.driveToFieldWorkStartTask)
-- self:addTask(self.driveToFieldWorkStartTask)
self:addTask(self.fieldWorkTask)
end

Expand Down
6 changes: 3 additions & 3 deletions scripts/ai/tasks/CpAITaskFieldWork.lua
Original file line number Diff line number Diff line change
Expand Up @@ -64,14 +64,14 @@ function CpAITaskFieldWork:start()
self:debug("Field work task started.")
local spec = self.vehicle.spec_aiFieldWorker
spec.isActive = true
self.vehicle:raiseAIEvent("onAIFieldWorkerStart", "onAIImplementStart")
if self.isServer then
self.vehicle:updateAIFieldWorkerImplementData()
if self.vehicle:getAINeedsTrafficCollisionBox() and (AIFieldWorker.TRAFFIC_COLLISION ~= nil and
if self.vehicle:getAINeedsTrafficCollisionBox() and (AIFieldWorker.TRAFFIC_COLLISION ~= nil and
(AIFieldWorker.TRAFFIC_COLLISION ~= 0 and spec.aiTrafficCollision == nil)) then

spec.aiTrafficCollision = clone(AIFieldWorker.TRAFFIC_COLLISION, true, false, true)
end
self.vehicle:raiseAIEvent("onAIFieldWorkerStart", "onAIImplementStart")
local cpSpec = self.vehicle.spec_cpAIFieldWorker
--- Remembers the last lane offset setting value that was used.
cpSpec.cpJobStartAtLastWp:getCpJobParameters().laneOffset:setValue(self.job:getCpJobParameters().laneOffset:getValue())
Expand Down Expand Up @@ -119,9 +119,9 @@ function CpAITaskFieldWork:stop(wasJobStopped)
cpSpec.driveStrategy:raiseControllerEvent(
AIDriveStrategyCourse.onStopRefillingEvent)
end
self.vehicle:stopFieldWorker()
if self.isServer then
self:debug("Field work task stopped.")
self.vehicle:stopFieldWorker()
self.vehicle:cpBrakeToStop()
end
CpAITask.stop(self, wasJobStopped)
Expand Down
120 changes: 120 additions & 0 deletions scripts/specializations/CpAIImplement.lua
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,21 @@ end

function CpAIImplement.registerEventListeners(vehicleType)
SpecializationUtil.registerEventListener(vehicleType, 'onLoad', CpAIImplement)
SpecializationUtil.registerEventListener(vehicleType, "onAIImplementStart", CpAIImplement)
SpecializationUtil.registerEventListener(vehicleType, "onAIImplementActive", CpAIImplement)
SpecializationUtil.registerEventListener(vehicleType, "onAIImplementEnd", CpAIImplement)
SpecializationUtil.registerEventListener(vehicleType, "onAIImplementPrepareForWork", CpAIImplement)
SpecializationUtil.registerEventListener(vehicleType, "onAIImplementStartLine", CpAIImplement)
SpecializationUtil.registerEventListener(vehicleType, "onAIImplementEndLine", CpAIImplement)
SpecializationUtil.registerEventListener(vehicleType, "onAIImplementStartTurn", CpAIImplement)
SpecializationUtil.registerEventListener(vehicleType, "onAIImplementTurnProgress", CpAIImplement)
SpecializationUtil.registerEventListener(vehicleType, "onAIImplementEndTurn", CpAIImplement)
SpecializationUtil.registerEventListener(vehicleType, "onAIImplementSideOffsetChanged", CpAIImplement)
SpecializationUtil.registerEventListener(vehicleType, "onAIImplementBlock", CpAIImplement)
SpecializationUtil.registerEventListener(vehicleType, "onAIImplementContinue", CpAIImplement)
SpecializationUtil.registerEventListener(vehicleType, "onAIImplementPrepareForTransport", CpAIImplement)
SpecializationUtil.registerEventListener(vehicleType, "onAIImplementJobVehicleBlock", CpAIImplement)
SpecializationUtil.registerEventListener(vehicleType, "onAIImplementJobVehicleContinue", CpAIImplement)
end

function CpAIImplement.registerFunctions(vehicleType)
Expand All @@ -41,4 +56,109 @@ end
function CpAIImplement:onLoad(savegame)
self.spec_cpAIImplement = self["spec_" .. CpAIImplement.SPEC_NAME]
local spec = self.spec_cpAIImplement
end

function CpAIImplement:onAIImplementStart()
self.spec_cpAIImplement = self["spec_" .. CpAIImplement.SPEC_NAME]
local spec = self.spec_cpAIImplement

CpUtil.info("onAIImplementStart()")
end

function CpAIImplement:onAIImplementActive()
self.spec_cpAIImplement = self["spec_" .. CpAIImplement.SPEC_NAME]
local spec = self.spec_cpAIImplement

-- CpUtil.info("onAIImplementActive()")
end

function CpAIImplement:onAIImplementEnd()
self.spec_cpAIImplement = self["spec_" .. CpAIImplement.SPEC_NAME]
local spec = self.spec_cpAIImplement

CpUtil.info("onAIImplementEnd()")
end

function CpAIImplement:onAIImplementPrepareForWork()
self.spec_cpAIImplement = self["spec_" .. CpAIImplement.SPEC_NAME]
local spec = self.spec_cpAIImplement

CpUtil.info("onAIImplementPrepareForWork()")
end

function CpAIImplement:onAIImplementStartLine()
self.spec_cpAIImplement = self["spec_" .. CpAIImplement.SPEC_NAME]
local spec = self.spec_cpAIImplement

CpUtil.info("onAIImplementStartLine()")
end

function CpAIImplement:onAIImplementEndLine()
self.spec_cpAIImplement = self["spec_" .. CpAIImplement.SPEC_NAME]
local spec = self.spec_cpAIImplement

CpUtil.info("onAIImplementEndLine()")
end

function CpAIImplement:onAIImplementStartTurn()
self.spec_cpAIImplement = self["spec_" .. CpAIImplement.SPEC_NAME]
local spec = self.spec_cpAIImplement

CpUtil.info("onAIImplementStartTurn()")
end

function CpAIImplement:onAIImplementTurnProgress()
self.spec_cpAIImplement = self["spec_" .. CpAIImplement.SPEC_NAME]
local spec = self.spec_cpAIImplement

-- CpUtil.info("onAIImplementTurnProgress()")
end

function CpAIImplement:onAIImplementEndTurn()
self.spec_cpAIImplement = self["spec_" .. CpAIImplement.SPEC_NAME]
local spec = self.spec_cpAIImplement

CpUtil.info("onAIImplementEndTurn()")
end

function CpAIImplement:onAIImplementSideOffsetChanged()
self.spec_cpAIImplement = self["spec_" .. CpAIImplement.SPEC_NAME]
local spec = self.spec_cpAIImplement

CpUtil.info("onAIImplementSideOffsetChanged()")
end

function CpAIImplement:onAIImplementBlock()
self.spec_cpAIImplement = self["spec_" .. CpAIImplement.SPEC_NAME]
local spec = self.spec_cpAIImplement

CpUtil.info("onAIImplementBlock()")
end

function CpAIImplement:onAIImplementContinue()
self.spec_cpAIImplement = self["spec_" .. CpAIImplement.SPEC_NAME]
local spec = self.spec_cpAIImplement

CpUtil.info("onAIImplementContinue()")
end

function CpAIImplement:onAIImplementPrepareForTransport()
self.spec_cpAIImplement = self["spec_" .. CpAIImplement.SPEC_NAME]
local spec = self.spec_cpAIImplement

CpUtil.info("onAIImplementPrepareForTransport()")
end

function CpAIImplement:onAIImplementJobVehicleBlock()
self.spec_cpAIImplement = self["spec_" .. CpAIImplement.SPEC_NAME]
local spec = self.spec_cpAIImplement

CpUtil.info("onAIImplementJobVehicleBlock()")
end

function CpAIImplement:onAIImplementJobVehicleContinue()
self.spec_cpAIImplement = self["spec_" .. CpAIImplement.SPEC_NAME]
local spec = self.spec_cpAIImplement

CpUtil.info("onAIImplementJobVehicleContinue()")
end
Loading