@@ -432,32 +432,36 @@ const PREY_EAST: [BoidSpriteCell; 12] = [
432432 sprite_cell ( 8 , 1 , BODY , BOID_UPPER_HALF ) ,
433433 sprite_cell ( 9 , 1 , HEAD , BOID_TOP_RIGHT ) ,
434434] ;
435- const PREY_SOUTH_EAST : [ BoidSpriteCell ; 7 ] = [
435+ const PREY_SOUTH_EAST : [ BoidSpriteCell ; 8 ] = [
436436 sprite_cell ( 0 , 0 , TAIL , BOID_BOTTOM_RIGHT ) ,
437437 sprite_cell ( 1 , 0 , TAIL , BOID_BOTTOM_LEFT ) ,
438438 sprite_cell ( 0 , 1 , TAIL , BOID_RIGHT_HALF ) ,
439- sprite_cell ( 1 , 1 , BODY , BOID_BLOCK ) ,
440- sprite_cell ( 2 , 1 , BODY , BOID_LEFT_HALF ) ,
441- sprite_cell ( 1 , 2 , BODY , BOID_UPPER_HALF ) ,
442- sprite_cell ( 2 , 2 , HEAD , BOID_BOTTOM_RIGHT ) ,
439+ sprite_cell ( 1 , 1 , BODY , BOID_LOWER_HALF ) ,
440+ sprite_cell ( 1 , 2 , FIN , BOID_BLOCK ) ,
441+ sprite_cell ( 2 , 2 , BODY , BOID_LEFT_HALF ) ,
442+ sprite_cell ( 2 , 3 , BODY , BOID_UPPER_HALF ) ,
443+ sprite_cell ( 3 , 3 , HEAD , BOID_BOTTOM_RIGHT ) ,
443444] ;
444- const PREY_SOUTH : [ BoidSpriteCell ; 7 ] = [
445+ const PREY_SOUTH : [ BoidSpriteCell ; 9 ] = [
445446 sprite_cell ( 0 , 0 , TAIL , BOID_BOTTOM_RIGHT ) ,
446- sprite_cell ( 1 , 0 , TAIL , BOID_UPPER_HALF ) ,
447+ sprite_cell ( 1 , 0 , TAIL , BOID_LOWER_HALF ) ,
447448 sprite_cell ( 2 , 0 , TAIL , BOID_BOTTOM_LEFT ) ,
448- sprite_cell ( 0 , 1 , BODY , BOID_RIGHT_HALF ) ,
449- sprite_cell ( 1 , 1 , BODY , BOID_BLOCK ) ,
450- sprite_cell ( 2 , 1 , BODY , BOID_LEFT_HALF ) ,
451- sprite_cell ( 1 , 2 , HEAD , BOID_LOWER_HALF ) ,
449+ sprite_cell ( 1 , 1 , TAIL , BOID_BLOCK ) ,
450+ sprite_cell ( 0 , 2 , FIN , BOID_RIGHT_HALF ) ,
451+ sprite_cell ( 1 , 2 , FIN , BOID_BLOCK ) ,
452+ sprite_cell ( 2 , 2 , FIN , BOID_LEFT_HALF ) ,
453+ sprite_cell ( 1 , 3 , BODY , BOID_BLOCK ) ,
454+ sprite_cell ( 1 , 4 , HEAD , BOID_LOWER_HALF ) ,
452455] ;
453- const PREY_SOUTH_WEST : [ BoidSpriteCell ; 7 ] = [
454- sprite_cell ( 1 , 0 , TAIL , BOID_BOTTOM_RIGHT ) ,
455- sprite_cell ( 2 , 0 , TAIL , BOID_BOTTOM_LEFT ) ,
456- sprite_cell ( 0 , 1 , BODY , BOID_RIGHT_HALF ) ,
457- sprite_cell ( 1 , 1 , BODY , BOID_BLOCK ) ,
458- sprite_cell ( 2 , 1 , TAIL , BOID_LEFT_HALF ) ,
459- sprite_cell ( 0 , 2 , HEAD , BOID_BOTTOM_LEFT ) ,
460- sprite_cell ( 1 , 2 , BODY , BOID_UPPER_HALF ) ,
456+ const PREY_SOUTH_WEST : [ BoidSpriteCell ; 8 ] = [
457+ sprite_cell ( 2 , 0 , TAIL , BOID_BOTTOM_RIGHT ) ,
458+ sprite_cell ( 3 , 0 , TAIL , BOID_BOTTOM_LEFT ) ,
459+ sprite_cell ( 3 , 1 , TAIL , BOID_LEFT_HALF ) ,
460+ sprite_cell ( 2 , 1 , BODY , BOID_LOWER_HALF ) ,
461+ sprite_cell ( 1 , 2 , BODY , BOID_RIGHT_HALF ) ,
462+ sprite_cell ( 2 , 2 , FIN , BOID_BLOCK ) ,
463+ sprite_cell ( 0 , 3 , HEAD , BOID_BOTTOM_LEFT ) ,
464+ sprite_cell ( 1 , 3 , BODY , BOID_UPPER_HALF ) ,
461465] ;
462466const PREY_WEST : [ BoidSpriteCell ; 12 ] = [
463467 sprite_cell ( 4 , 0 , FIN , BOID_LOWER_HALF ) ,
@@ -473,32 +477,36 @@ const PREY_WEST: [BoidSpriteCell; 12] = [
473477 sprite_cell ( 8 , 1 , TAIL , BOID_BLOCK ) ,
474478 sprite_cell ( 9 , 1 , TAIL , BOID_UPPER_HALF ) ,
475479] ;
476- const PREY_NORTH_WEST : [ BoidSpriteCell ; 7 ] = [
480+ const PREY_NORTH_WEST : [ BoidSpriteCell ; 8 ] = [
477481 sprite_cell ( 0 , 0 , HEAD , BOID_TOP_LEFT ) ,
478482 sprite_cell ( 1 , 0 , BODY , BOID_LOWER_HALF ) ,
479- sprite_cell ( 0 , 1 , BODY , BOID_RIGHT_HALF ) ,
480- sprite_cell ( 1 , 1 , BODY , BOID_BLOCK ) ,
481- sprite_cell ( 2 , 1 , TAIL , BOID_LEFT_HALF ) ,
482- sprite_cell ( 1 , 2 , TAIL , BOID_TOP_RIGHT ) ,
483- sprite_cell ( 2 , 2 , TAIL , BOID_TOP_LEFT ) ,
483+ sprite_cell ( 1 , 1 , BODY , BOID_RIGHT_HALF ) ,
484+ sprite_cell ( 2 , 1 , FIN , BOID_BLOCK ) ,
485+ sprite_cell ( 2 , 2 , BODY , BOID_UPPER_HALF ) ,
486+ sprite_cell ( 3 , 2 , TAIL , BOID_LEFT_HALF ) ,
487+ sprite_cell ( 2 , 3 , TAIL , BOID_TOP_RIGHT ) ,
488+ sprite_cell ( 3 , 3 , TAIL , BOID_TOP_LEFT ) ,
484489] ;
485- const PREY_NORTH : [ BoidSpriteCell ; 7 ] = [
490+ const PREY_NORTH : [ BoidSpriteCell ; 9 ] = [
486491 sprite_cell ( 1 , 0 , HEAD , BOID_UPPER_HALF ) ,
487- sprite_cell ( 0 , 1 , BODY , BOID_RIGHT_HALF ) ,
488492 sprite_cell ( 1 , 1 , BODY , BOID_BLOCK ) ,
489- sprite_cell ( 2 , 1 , BODY , BOID_LEFT_HALF ) ,
490- sprite_cell ( 0 , 2 , TAIL , BOID_TOP_RIGHT ) ,
491- sprite_cell ( 1 , 2 , TAIL , BOID_LOWER_HALF ) ,
492- sprite_cell ( 2 , 2 , TAIL , BOID_TOP_LEFT ) ,
493+ sprite_cell ( 0 , 2 , FIN , BOID_RIGHT_HALF ) ,
494+ sprite_cell ( 1 , 2 , FIN , BOID_BLOCK ) ,
495+ sprite_cell ( 2 , 2 , FIN , BOID_LEFT_HALF ) ,
496+ sprite_cell ( 1 , 3 , TAIL , BOID_BLOCK ) ,
497+ sprite_cell ( 0 , 4 , TAIL , BOID_TOP_RIGHT ) ,
498+ sprite_cell ( 1 , 4 , TAIL , BOID_UPPER_HALF ) ,
499+ sprite_cell ( 2 , 4 , TAIL , BOID_TOP_LEFT ) ,
493500] ;
494- const PREY_NORTH_EAST : [ BoidSpriteCell ; 7 ] = [
495- sprite_cell ( 1 , 0 , BODY , BOID_LOWER_HALF ) ,
496- sprite_cell ( 2 , 0 , HEAD , BOID_TOP_RIGHT ) ,
497- sprite_cell ( 0 , 1 , TAIL , BOID_RIGHT_HALF ) ,
498- sprite_cell ( 1 , 1 , BODY , BOID_BLOCK ) ,
501+ const PREY_NORTH_EAST : [ BoidSpriteCell ; 8 ] = [
502+ sprite_cell ( 2 , 0 , BODY , BOID_LOWER_HALF ) ,
503+ sprite_cell ( 3 , 0 , HEAD , BOID_TOP_RIGHT ) ,
504+ sprite_cell ( 1 , 1 , FIN , BOID_BLOCK ) ,
499505 sprite_cell ( 2 , 1 , BODY , BOID_LEFT_HALF ) ,
500- sprite_cell ( 0 , 2 , TAIL , BOID_TOP_RIGHT ) ,
501- sprite_cell ( 1 , 2 , TAIL , BOID_TOP_LEFT ) ,
506+ sprite_cell ( 0 , 2 , TAIL , BOID_RIGHT_HALF ) ,
507+ sprite_cell ( 1 , 2 , BODY , BOID_UPPER_HALF ) ,
508+ sprite_cell ( 0 , 3 , TAIL , BOID_TOP_RIGHT ) ,
509+ sprite_cell ( 1 , 3 , TAIL , BOID_TOP_LEFT ) ,
502510] ;
503511
504512const PREDATOR_EAST : [ BoidSpriteCell ; 32 ] = [
@@ -1218,7 +1226,8 @@ mod tests {
12181226 ( 9 , 1 , BOID_UPPER_HALF )
12191227 ]
12201228 ) ;
1221- assert_eq ! ( prey_north_east, vec![ ".bh" , "tbb" , "tt." ] ) ;
1229+ assert_eq ! ( prey_north, vec![ ".h." , ".b." , "fff" , ".t." , "ttt" ] ) ;
1230+ assert_eq ! ( prey_north_east, vec![ "..bh" , ".fb." , "tb.." , "tt.." ] ) ;
12221231 assert_eq ! ( prey_north_west, mirror_columns( & prey_north_east) ) ;
12231232 assert_eq ! ( prey_south_east, mirror_rows( & prey_north_east) ) ;
12241233 assert_eq ! ( prey_south_west, mirror_rows( & prey_north_west) ) ;
@@ -1339,7 +1348,10 @@ mod tests {
13391348 . iter( )
13401349 . all( |cell| matches!( cell. tone, TAIL | BODY | FIN | HEAD ) )
13411350 ) ;
1342- assert_eq ! ( sprite_signature_for_cells( prey) , vec![ ".bh" , "tbb" , "tt." ] ) ;
1351+ assert_eq ! (
1352+ sprite_signature_for_cells( prey) ,
1353+ vec![ "..bh" , ".fb." , "tb.." , "tt.." ]
1354+ ) ;
13431355 assert_eq ! (
13441356 sprite_signature_for_cells( predator) ,
13451357 vec![ "....bh" , "...bbb" , "..bbb." , ".tbb.." , "tt...." , "t....." ]
0 commit comments