@@ -329,25 +329,23 @@ local function AssignJob(item, unit, jobPos)
329329 print ((' %s has been tasked to store away %s.' ):format (strUnitName , strItemName ))
330330end
331331
332- local function GetIdx (unitUniform , id )
333- for i , v in pairs (unitUniform ) do
334- if v == id then
335- return i
336- end
337- end
338- return nil
339- end
340-
341332local function RemoveFromUniform (item , unit , options )
342333 if options .discard then
343334 local strItemName = item and dfhack .items .getReadableDescription (item )
344335 local strUnitName = unit and dfhack .units .getReadableName (unit )
345336 dfhack .items .setOwner (item , nil )
346337 print ((' Ownership of %s was removed from %s.' ):format (strItemName , strUnitName ))
347338 end
348- local unitUniform = unit .uniform .uniforms .CLOTHING
349- local idx = GetIdx (unitUniform , item .id )
350- if idx then unitUniform :erase (idx ) end
339+ local uniforms = {
340+ unit .uniform .uniforms .CLOTHING ,
341+ unit .uniform .uniforms .REGULAR ,
342+ unit .uniform .uniforms .TRAINING ,
343+ unit .uniform .uniforms .TRAINING_RANGED
344+ }
345+ for _ , uniform in ipairs (uniforms ) do
346+ local idx = utils .linear_index (uniform , item .id )
347+ if idx then uniform :erase (idx ) end
348+ end
351349end
352350
353351local function ParseCommandLine (args )
0 commit comments