Then you would need to do everything twice, using different variable names, like such:
Code:
void main() {
object oPrisoner = GetFirstPC();
object oPrisoner2 = GetObjectByTag("tag", 0);
object oCage = GetNearestObjectByTag("tag", oPrisoner, 1);
object oCageBlocker = GetNearestObjectByTag("tag", oPrisoner, 1);
object oCage2 = GetNearestObjectByTag("tag", oPrisoner2, 1);
object oCageBlocker2 = GetNearestObjectByTag("tag", oPrisoner2, 1);
AssignCommand(oCage, ActionPlayAnimation(202, 1.0, 0.0));
DestroyObject(oCageBlocker, 0.0, 0, 0.0, 0);
AssignCommand(oCage2, ActionPlayAnimation(202, 1.0, 0.0));
DestroyObject(oCageBlocker2, 0.0, 0, 0.0, 0);
}