diff --git a/plugins/dwarfvet.cpp b/plugins/dwarfvet.cpp index 44b3684e0..920e13d34 100644 --- a/plugins/dwarfvet.cpp +++ b/plugins/dwarfvet.cpp @@ -175,7 +175,7 @@ bool AnimalHospital::acceptPatient(int32_t id, color_ostream &out) { // Create the patient! Patient * patient = new Patient(id, - spot_cur, + spot_cur, this->x1+offset_x, this->y1+offset_y, this->z @@ -342,8 +342,8 @@ void AnimalHospital::dischargePatient(Patient * patient, color_ostream &out) { // Remove them from the hospital - // We can safely iterate here because once we delete the unit - // we no longer use the iterator + // We can safely iterate here because once we delete the unit + // we no longer use the iterator for (vector::iterator accepted_patient = this->accepted_patients.begin(); accepted_patient != this->accepted_patients.end(); accepted_patient++) { if ( (*accepted_patient)->getID() == id) { out.print("Discharging unit %d from hospital %d\n", id, this->id); @@ -485,12 +485,12 @@ void tickHandler(color_ostream& out, void* data) { vector hospitals_on_map; - // Because C++ iterators suck, we're going to build a temporary vector with the AHZ, and then - // copy it for my own bloody sanity (and compilance with the STL spec) - vector ahz_scratch; + // Because C++ iterators suck, we're going to build a temporary vector with the AHZ, and then + // copy it for my own bloody sanity (and compilance with the STL spec) + vector ahz_scratch; - // Holding area for things to be added to the scratch - vector to_be_added; + // Holding area for things to be added to the scratch + vector to_be_added; // Walk the building tree, and generate a list of animal hospitals on the map @@ -531,70 +531,70 @@ void tickHandler(color_ostream& out, void* data) { // Now walk our list of known hospitals, do a bit of checking, then compare // TODO: this doesn't handle zone resizes at all - for (vector::iterator animal_hospital = animal_hospital_zones.begin(); animal_hospital != animal_hospital_zones.end(); animal_hospital++) { + for (vector::iterator animal_hospital = animal_hospital_zones.begin(); animal_hospital != animal_hospital_zones.end(); animal_hospital++) { // If a zone is changed at all, DF seems to reallocate it. // // Each AnimalHospital has a "to_be_deleted" bool. We're going to set that to true, and clear it if we can't // find a matching hospital. This limits the number of times we need to walk through the AHZ list to twice, and - // lets us cleanly report it later - // - // Surviving hospitals will be copied to scratch which will become the new AHZ vector + // lets us cleanly report it later + // + // Surviving hospitals will be copied to scratch which will become the new AHZ vector (*animal_hospital)->to_be_deleted = true; for (vector::iterator current_hospital = hospitals_on_map.begin(); current_hospital != hospitals_on_map.end(); current_hospital++) { - /* Keep the hospital if its still valid */ + /* Keep the hospital if its still valid */ if ((*animal_hospital)->getID() == (*current_hospital)->id) { - ahz_scratch.push_back(*animal_hospital); + ahz_scratch.push_back(*animal_hospital); (*animal_hospital)->to_be_deleted = false; - break; - } + break; + } } } // Report what we're deleting by checking the to_be_deleted bool. - // - // Whatsever left is added to the pending add list + // + // Whatsever left is added to the pending add list for (vector::iterator animal_hospital = animal_hospital_zones.begin(); animal_hospital != animal_hospital_zones.end(); animal_hospital++) { if ((*animal_hospital)->to_be_deleted) { out.print("Hospital #%d removed\n", (*animal_hospital)->getID()); delete *animal_hospital; - } + } } /* Now we need to walk the scratch and add anything that is a hospital and wasn't in the vector */ for (vector::iterator current_hospital = hospitals_on_map.begin(); current_hospital != hospitals_on_map.end(); current_hospital++) { - bool new_hospital = true; - - for (vector::iterator animal_hospital = ahz_scratch.begin(); animal_hospital != ahz_scratch.end(); animal_hospital++) { - if ((*animal_hospital)->getID() == (*current_hospital)->id) { - // Next if we're already here - new_hospital = false; - break; - } - } - - // Add it if its new - if (new_hospital == true) to_be_added.push_back(*current_hospital); - } - - /* Now add it to the scratch AHZ */ - for (vector::iterator current_hospital = to_be_added.begin(); current_hospital != to_be_added.end(); current_hospital++) { - // Add it to the vector + bool new_hospital = true; + + for (vector::iterator animal_hospital = ahz_scratch.begin(); animal_hospital != ahz_scratch.end(); animal_hospital++) { + if ((*animal_hospital)->getID() == (*current_hospital)->id) { + // Next if we're already here + new_hospital = false; + break; + } + } + + // Add it if its new + if (new_hospital == true) to_be_added.push_back(*current_hospital); + } + + /* Now add it to the scratch AHZ */ + for (vector::iterator current_hospital = to_be_added.begin(); current_hospital != to_be_added.end(); current_hospital++) { + // Add it to the vector out.print("Adding new hospital #id at x1 %d y1: %d z: %d\n", (*current_hospital)->id, (*current_hospital)->x1, (*current_hospital)->y1, (*current_hospital)->z - ); - AnimalHospital * hospital = new AnimalHospital(*current_hospital, out); + ); + AnimalHospital * hospital = new AnimalHospital(*current_hospital, out); ahz_scratch.push_back(hospital); - } + } - /* Copy the scratch to the AHZ */ - animal_hospital_zones = ahz_scratch; + /* Copy the scratch to the AHZ */ + animal_hospital_zones = ahz_scratch; // We always recheck the cache instead of counts because someone might have removed then added a hospital /* if (hospitals_cached != count_of_hospitals) { @@ -808,7 +808,7 @@ command_result dwarfvet (color_ostream &out, std::vector & paramet DFhackCExport command_result plugin_enable(color_ostream &out, bool enable) { if (enable && !dwarfvet_enabled) { - dwarfvet_enabled = true; + dwarfvet_enabled = true; } else if (!enable && dwarfvet_enabled) { delete_animal_hospital_vector(out);