Index: code/ship/ship.cpp
===================================================================
--- code/ship/ship.cpp	(revision 7707)
+++ code/ship/ship.cpp	(working copy)
@@ -8756,6 +8756,12 @@
 	Assert(sp->ship_max_hull_strength > 0.0f);
 	Assert(objp->hull_strength > 0.0f);
 
+	// niffiwan: set new armor types
+	sp->armor_type_idx = sip->armor_type_idx;
+	sp->shield_armor_type_idx = sip->shield_armor_type_idx;
+	sp->collision_damage_type_idx = sip->collision_damage_type_idx;
+	sp->debris_damage_type_idx = sip->debris_damage_type_idx;
+
 	// subsys stuff done only after hull stuff is set
 	// if the subsystem list is not currently empty, then we need to clear it out first.
 	ship_subsystems_delete(sp);
@@ -16709,4 +16715,4 @@
 void init_path_metadata(path_metadata& metadata)
 {
 	vm_vec_zero(&metadata.departure_rvec);
-}
\ No newline at end of file
+}
