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:
@@ -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
|
||||
|
||||
@@ -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,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>
|
||||
|
||||
@@ -88,6 +88,12 @@ check("SR3 lille rest 300 af 4000", ADCpBridge.isDumpable(300, 4000), true)
|
||||
check("SR3 halv tank 2000 af 4000", ADCpBridge.isDumpable(2000, 4000), false)
|
||||
check("SR3 100000 l aldrig", ADCpBridge.isDumpable(100000, 1000000), false)
|
||||
check("SR3 over 2000 l aldrig", ADCpBridge.isDumpable(2500, 100000), false)
|
||||
-- VN: vinmark — i gangen for alt undtagen høsteren; almindelige marker røres ikke
|
||||
check("VN sprøjte på druer = venstre", ADCpBridge.vineOffsetFor("GRAPEB", "fertilizer"), -1)
|
||||
check("VN harve på druer = venstre", ADCpBridge.vineOffsetFor("grape", "cultivator"), -1)
|
||||
check("VN høster på druer = på vinen", ADCpBridge.vineOffsetFor("GRAPEB", "harvester"), 0)
|
||||
check("VN hvede røres ikke", ADCpBridge.vineOffsetFor("WHEAT", "fertilizer"), nil)
|
||||
check("VN ukendt afgrøde", ADCpBridge.vineOffsetFor(nil, "weeder"), nil)
|
||||
|
||||
-- HF: høsterens afgrøder fra skærebordet (liste eller opslag); finsnitter tager ingen
|
||||
local list = ADCpBridge.harvestFruitSet({fruitTypes = {3, 5}})
|
||||
|
||||
Reference in New Issue
Block a user