fix(markarbejde): vinmark — Courseplays vinkursus lægges til venstre for vinen (i gangen) for sprøjte/spreder/harve, på vinen for høsteren (sprøjten kørte ind i stolperne) (v1.32.5.0)

This commit is contained in:
2026-09-26 21:33:27 +02:00
parent 59b6ac1e47
commit 10838779bc
4 changed files with 27 additions and 1 deletions
+15
View File
@@ -471,6 +471,21 @@ end
-- multiTools = antal sæt når kurset laves her (multi-tool-leder)
-- lane = køretøjets bane på et multi-tool-kursus (laneOffset -2..2)
-- onDone(ok, reason) kaldes én gang; reason "copied" ved succes med kopieret kursus.
-- Vinmarker (druer/oliven): Courseplays kursus ligger som standard PÅ vinen — en sprøjte/spreder/harve kører
-- så ind i stolperne ("Blocked by an object", in-game 26/9 F22). Alt der arbejder i gangene køres til
-- venstre for vinen; høsteren kører hen over rækken. nil = ikke en vinmark (rør intet).
ADCpBridge.VINE_FRUITS = {GRAPE = true, GRAPEB = true, OLIVE = true, OLIVEB = true}
function ADCpBridge.vineOffsetFor(fruitName, role)
if fruitName == nil or not ADCpBridge.VINE_FRUITS[string.upper(tostring(fruitName))] then return nil end
if role == "harvester" then return 0 end
return -1
end
function ADCpBridge.setVineOffset(vehicle, value)
if vehicle == nil or vehicle.getCpVineSettings == nil or value == nil then return false end
return (pcall(function() vehicle:getCpVineSettings().vineCenterOffset:setValue(value) end))
end
function ADCpBridge.start(vehicle, fieldX, fieldZ, onDone, opts)
opts = opts or {}
if not ADCpBridge.isAvailable() then
+5
View File
@@ -636,6 +636,11 @@ local function beginWork(adEnv, field, info, assignment)
if store ~= nil then assignment.storeId = store.id end
end
end
-- vinmark: kurset i gangen (ikke på vinen), ellers kører maskinen ind i stolperne
local vineOffset = ADCpBridge.vineOffsetFor(info.fruitName, assignment.role)
if vineOffset ~= nil and ADCpBridge.setVineOffset(vehicle, vineOffset) then
log(field.id, "vinmark: Courseplay-kurset lægges %s", vineOffset == 0 and "på vinen (høster)" or "til venstre for vinen (i gangen)")
end
local opts, source = courseOptions(adEnv, field, assignment)
if opts == nil then
-- følger uden lederens kursus endnu
+1 -1
View File
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<modDesc descVersion="107">
<author>masterdraco</author>
<version>1.32.4.0</version>
<version>1.32.5.0</version>
<title>
<en>AD Smart Pickup</en>
</title>