Index: src/map/mob.c
===================================================================
--- src/map/mob.c (revision 24)
+++ src/map/mob.c (revision 1)
@@ -245,6 +245,4 @@
  * 1: poring list
  * 2: bloody branch list
- * 3: mob_pouch list
- * 4: familiar list // familiar by FlavioJS [Brain]
  * flag:
  * &1: Apply the summon success chance found in the list (otherwise get any monster from the db)
@@ -548,10 +546,6 @@
 	barricade->amount = 0;
 	barricade->killable = killable;
-	
-	// A protection just in case setting a walkable - non shootable
-	if( (barricade->walkable = walkable) == true )
-		barricade->shootable = true;
-	else
-		barricade->shootable = shootable;
+	barricade->shootable = shootable;
+	barricade->walkable = walkable;
 	
 	for( i = 0; i < count; i++ )
@@ -574,9 +568,6 @@
 		}
 
-		if( !barricade->walkable )
-		{
-			map_setcell(m, x1, y1, CELL_WALKABLE, false);
-			map_setcell(m, x1, y1, CELL_SHOOTABLE, barricade->shootable);
-		}
+		if( !barricade->walkable ) map_setcell(m, x1, y1, CELL_WALKABLE, false);
+		map_setcell(m, x1, y1, CELL_SHOOTABLE, barricade->shootable);
 
 		clif_changemapcell(0, m, x1, y1, map_getcell(barricade->m, x1, y1, CELL_GETTYPE), ALL_SAMEMAP);
@@ -633,9 +624,6 @@
 		mob_barricade_nextxy(barricade->x, barricade->y, barricade->dir, i, &x1, &y1);
 
-		if( !barricade->shootable )
-			map_setcell(barricade->m, x1, y1, CELL_SHOOTABLE, true);
-		if( !barricade->walkable )
-			map_setcell(barricade->m, x1, y1, CELL_WALKABLE, true);
-
+		if( !barricade->walkable ) map_setcell(barricade->m, x1, y1, CELL_WALKABLE, true);
+		map_setcell(barricade->m, x1, y1, CELL_SHOOTABLE, !barricade->shootable);
 		clif_changemapcell(0, barricade->m, x1, y1, map_getcell(barricade->m, x1, y1, CELL_GETTYPE), ALL_SAMEMAP);
 	}
@@ -698,9 +686,6 @@
 			mob_barricade_nextxy(barricade->x, barricade->y, barricade->dir, i, &x1, &y1);
 
-			if( !barricade->shootable )
-				map_setcell(barricade->m, x1, y1, CELL_SHOOTABLE, true);
-			if( !barricade->walkable )
-				map_setcell(barricade->m, x1, y1, CELL_WALKABLE, true);
-
+			if( !barricade->walkable ) map_setcell(barricade->m, x1, y1, CELL_WALKABLE, true);
+			map_setcell(barricade->m, x1, y1, CELL_SHOOTABLE, !barricade->shootable);
 			clif_changemapcell(0, barricade->m, x1, y1, map_getcell(barricade->m, x1, y1, CELL_GETTYPE), ALL_SAMEMAP);
 		}
@@ -2027,12 +2012,5 @@
 		//Let players decide whether to retaliate versus the master or the mob. [Skotlex]
 		if (md2->master_id && battle_config.retaliate_to_master)
-//this is odd... does that mean if you have a pet out it will get attecked instead of you?
-		{
-			//necro_retaliation config (same as above, but only works for adept/necro/warlock summons) [Brainstorm]
-			if(!battle_config.necro_retaliation && (md2->class_ >= 3100 && md2->class_ <= 3235))
-				md->attacked_id = src->id;
-			else md->attacked_id = md2->master_id; //All normal summons
-		}
-
+			md->attacked_id = md2->master_id;
 		else
 			md->attacked_id = src->id;
@@ -2555,5 +2533,5 @@
 		mob_script_callback(md, src, CALLBACK_DEAD);
 	else
-	if(md->npc_event[0] && !md->state.npc_killmonster)
+	if(md->npc_event[0] && !md->npc_killmonster)
 	{
 		md->status.hp = 0; //So that npc_event invoked functions KNOW that I am dead.
@@ -2834,40 +2812,4 @@
 	return map_foreachinmap(mob_countslave_sub, bl->m, BL_MOB,bl->id);
 }
-
-//Weird structure, is this in the right place?
-/// Count slaves with a certain master and class. by FlavioJS [Brain]
-static int mob_countslave_class_sub(struct block_list* bl, va_list ap)
-{
-	int id;
-	int count;
-	short* classes;
-	TBL_MOB* md;
-
-	id = va_arg(ap, int);
-	count = va_arg(ap, int);
-	classes = va_arg(ap, short*);
-	md = (TBL_MOB*)bl;
-	
-	if( md->master_id == id )
-	{// has the correct master
-		int i;
-		for( i = 0; i < count; ++i )
-		{
-			if( md->class_ == classes[i] )
-				return 1;
-		}
-	}
-	return 0;
-}
-
-/// Returns the number of slaves of the specified classes. by FlavioJS [Brain]
-/// @param bl Master
-/// @param count Number of classes
-/// @param classes Array of classes
-int mob_countslave_class(struct block_list* bl, int count, short* classes)
-{
-	return map_foreachinmap(mob_countslave_class_sub, bl->m, BL_MOB, bl->id, count, classes);
-}
-
 
 /*==========================================
@@ -4032,7 +3974,5 @@
 		"mob_poring.txt",
 		"mob_boss.txt",
-		"mob_pouch.txt",
-		"mob_familiar.txt" // familiar By FlavioJS [Brain]
-		};//mob_familiar.txt make sure the name is right.
+		"mob_pouch.txt"};
 
 	memset(&summon, 0, sizeof(summon));
