Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: N5110 PinDetect PowerControl mbed
Diff: BrickBreaker.cpp
- Revision:
- 10:19c6aba3beec
- Parent:
- 9:8447ce6f51ae
- Child:
- 11:d9d5bad8f5e2
--- a/BrickBreaker.cpp Thu May 07 18:01:40 2015 +0000 +++ b/BrickBreaker.cpp Sun May 10 16:57:14 2015 +0000 @@ -612,7 +612,7 @@ } else if (surround[4] && surround[5] && surround[6] && !surround[3]) { //right edge low d = 13; } - //FOR CeNTRE SQUARES + //FOR CENTRE SQUARES else if (surround[1] && surround[2]) { //top edge switch (d) { case 3: @@ -715,21 +715,197 @@ //FOR 2 TOUCHING OFFCENTRE EDGE SQUARES else if (surround[0] && surround[1]) { //top edge left - d = 9; + switch (d) { + case 0: + d = 7; + break; + case 1: + d = 6; + break; + case 2: + d = 5; + break; + case 3: + d = 5; + break; + case 15: + d = 8; + break; + case 14: + d = 9; + break; + case 13: + d = 10; + break; + } } else if (surround[2] && surround[3]) { //top edge right - d = 7; + switch (d) { + case 0: + d = 9; + break; + case 1: + d = 8; + break; + case 2: + d = 7; + break; + case 3: + d = 6; + break; + case 15: + d = 10; + break; + case 14: + d = 11; + break; + case 13: + d = 11; + break; + } } else if (surround[9] && surround[8]) { // low edge right - d = 1; + switch (d) { + case 11: + d = 14; + break; + case 10: + d = 15; + break; + case 9: + d = 0; + break; + case 8: + d = 1; + break; + case 7: + d = 2; + break; + case 6: + d = 3; + break; + case 5: + d = 3; + break; + } } else if (surround[7] && surround[6]) { //low edge left - d = 15; + switch (d) { + case 11: + d = 13; + break; + case 10: + d = 13; + break; + case 9: + d = 14; + break; + case 8: + d = 15; + break; + case 7: + d = 0; + break; + case 6: + d = 1; + break; + case 5: + d = 2; + break; + } } else if (surround[0] && surround[11]) { //left edge top - d =7; + switch (d) { + case 9: + d = 8; + break; + case 10: + d = 7; + break; + case 11: + d = 6; + break; + case 13: + d = 5; + break; + case 14: + d = 3; + break; + case 15: + d = 2; + break; + case 0: + d = 1; + break; + } } else if (surround[3] && surround[4]) { //right edge top - d = 9; + switch (d) { + case 0: + d = 15; + break; + case 1: + d = 14; + break; + case 2: + d = 13; + break; + case 3: + d = 11; + break; + case 5: + d = 10; + break; + case 6: + d = 9; + break; + case 7: + d = 8; + break; + } } else if (surround[10] && surround[9]) { //left edge low - d = 1; + switch (d) { + case 8: + d = 7; + break; + case 9: + d = 6; + break; + case 10: + d = 5; + break; + case 11: + d = 3; + break; + case 13: + d = 2; + break; + case 14: + d = 1; + break; + case 15: + d = 0; + break; + } } else if (surround[5] && surround[6]) { //right edge low - d = 15; + switch (d) { + case 8: + d = 9; + break; + case 1: + d = 0; + break; + case 2: + d = 15; + break; + case 3: + d = 14; + break; + case 5: + d = 13; + break; + case 6: + d = 11; + break; + case 7: + d = 10; + break; + } } // FOR 1 TOUCHING CORNER SQUARE else if (surround[3]) { //top right @@ -763,14 +939,14 @@ setAngle(); //check what ball is touching get new angle doBricks(); //check what bricks are touching clear all necessary moveBall1(d); //move ball with new angle - wait_ms(25); //wait + wait_ms(35); //wait if (d == e) { setAngle(); doBricks(); moveBall2(d); - wait_ms(25); + wait_ms(35); } }