summaryrefslogtreecommitdiff
path: root/plugins
diff options
context:
space:
mode:
authorjj2012-09-26 18:13:01 +0200
committerjj2012-09-26 18:22:07 +0200
commit7cc29250f8622a317da464a2b7356a246082abc0 (patch)
tree906bb059d21f1e35533f398e25af041d481cfb11 /plugins
parentd975ce513509d12c1f69752270ce65de4f80d7aa (diff)
downloaddfhack-7cc29250f8622a317da464a2b7356a246082abc0.tar.gz
dfhack-7cc29250f8622a317da464a2b7356a246082abc0.tar.bz2
dfhack-7cc29250f8622a317da464a2b7356a246082abc0.tar.xz
fix for updated viewlist_petst
Diffstat (limited to 'plugins')
-rw-r--r--plugins/ruby/unit.rb14
-rw-r--r--plugins/sort.cpp2
2 files changed, 11 insertions, 5 deletions
diff --git a/plugins/ruby/unit.rb b/plugins/ruby/unit.rb
index 5289229a..139a375b 100644
--- a/plugins/ruby/unit.rb
+++ b/plugins/ruby/unit.rb
@@ -12,9 +12,15 @@ module DFHack
ref.unit_tg if ref.kind_of?(GeneralRefUnit)
when :viewscreen_unitlistst
v = curview
- # TODO fix xml to use enums everywhere
- page = DFHack::ViewscreenUnitlistst_TPage.int(v.page)
- v.units[page][v.cursor_pos[page]]
+ v.units[v.page][v.cursor_pos[v.page]]
+ when :viewscreen_petst
+ v = curview
+ case v.mode
+ when :List
+ v.animal[v.cursor].unit if !v.is_vermin[v.cursor]
+ when :SelectTrainer
+ v.trainer_unit[v.trainer_cursor]
+ end
else
case ui.main.mode
when :ViewUnits
@@ -48,7 +54,7 @@ module DFHack
}
end
- def unit_iscitizen(u)
+ def unit_iscitizen(u)
u.race == ui.race_id and u.civ_id == ui.civ_id and !u.flags1.dead and !u.flags1.merchant and !u.flags1.forest and
!u.flags1.diplomat and !u.flags2.resident and !u.flags3.ghostly and
!u.curse.add_tags1.OPPOSED_TO_LIFE and !u.curse.add_tags1.CRAZED and
diff --git a/plugins/sort.cpp b/plugins/sort.cpp
index 4b2bf7bb..95ae109a 100644
--- a/plugins/sort.cpp
+++ b/plugins/sort.cpp
@@ -356,7 +356,7 @@ DEFINE_SORT_HANDLER(unit_sorters, pet, "/List", animals)
std::vector<df::unit*> units;
for (size_t i = 0; i < animals->animal.size(); i++)
- units.push_back(animals->is_vermin[i] ? NULL : (df::unit*)animals->animal[i]);
+ units.push_back(animals->is_vermin[i] ? NULL : animals->animal[i].unit);
if (compute_order(*pout, L, top, &order, units))
{