diff --git a/scripts/devel/fixnaked.lua b/scripts/devel/fixnaked.lua index 0f0a4507d..5bb113347 100644 --- a/scripts/devel/fixnaked.lua +++ b/scripts/devel/fixnaked.lua @@ -1,58 +1,41 @@ function fixnaked() local total_fixed = 0 -local total_uncovered = 0 -local total_noshirt = 0 -local total_noshoes = 0 +local total_removed = 0 for fnUnitCount,fnUnit in ipairs(df.global.world.units.all) do if fnUnit.race == df.global.ui.race_id then - local listEvents = fnUnit.status.recent_events - --for lkey,lvalue in pairs(listEvents) do - -- print(df.unit_thought_type[lvalue.type],lvalue.type,lvalue.age,lvalue.subtype,lvalue.severity) - --end + local listEvents = fnUnit.status.recent_events + --for lkey,lvalue in pairs(listEvents) do + -- print(df.unit_thought_type[lvalue.type],lvalue.type,lvalue.age,lvalue.subtype,lvalue.severity) + --end - local found = 1 - local fixed = 0 - while found == 1 do - local events = fnUnit.status.recent_events - found = 0 - for k,v in pairs(events) do - if v.type == 109 then - events:erase(k) - found = 1 - total_uncovered = total_uncovered + 1 - fixed = 1 - break - end - if v.type == 110 then - events:erase(k) - found = 1 - total_noshirt = total_noshirt + 1 - fixed = 1 - break - end - if v.type == 111 then - events:erase(k) - found = 1 - total_noshoes = total_noshoes + 1 - fixed = 1 - break - end - end - end - if fixed == 1 then - total_fixed = total_fixed + 1 - print(total_fixed, total_uncovered+total_noshirt+total_noshoes,dfhack.TranslateName(dfhack.units.getVisibleName(fnUnit))) - end - end + local found = 1 + local fixed = 0 + while found == 1 do + local events = fnUnit.status.recent_events + found = 0 + for k,v in pairs(events) do + if v.type == df.unit_thought_type.Uncovered + or v.type == df.unit_thought_type.NoShirt + or v.type == df.unit_thought_type.NoShoes + or v.type == df.unit_thought_type.NoCloak + or v.type == df.unit_thought_type.OldClothing + or v.type == df.unit_thought_type.TatteredClothing + or v.type == df.unit_thought_type.RottedClothing then + events:erase(k) + found = 1 + total_removed = total_removed + 1 + fixed = 1 + break + end + end + end + if fixed == 1 then + total_fixed = total_fixed + 1 + print(total_fixed, total_removed, dfhack.TranslateName(dfhack.units.getVisibleName(fnUnit))) + end + end end -print("thought 109 = "..df.unit_thought_type[109]) -print("thought 110 = "..df.unit_thought_type[110]) -print("thought 111 = "..df.unit_thought_type[111]) print("Total Fixed: "..total_fixed) -print("Total thoughts removed: "..total_uncovered) -print("Total thoughts removed: "..total_noshirt) -print("Total thoughts removed: "..total_noshoes) - end fixnaked()