Ikenna Adrian Ozoemena 201157039

Dependencies:   mbed

Committer:
ikenna1
Date:
Wed May 08 09:22:16 2019 +0000
Revision:
41:e1fa36c0492e
Parent:
40:90c7a893d513
Child:
42:ee13e1d103d8
Child:
44:a6a361bea806
Increased lore and cleaned code in preparation for documentation

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ikenna1 39:7824f9080f59 1 #include "Lore.h"
ikenna1 41:e1fa36c0492e 2 const int seekerSprite[7][9] = {
ikenna1 39:7824f9080f59 3 {1,1,0,0,0,0,0,1,1},
ikenna1 39:7824f9080f59 4 {1,0,1,0,0,0,1,0,1},
ikenna1 39:7824f9080f59 5 {1,0,0,1,1,1,0,0,1},
ikenna1 39:7824f9080f59 6 {0,1,0,0,0,0,0,1,0},
ikenna1 39:7824f9080f59 7 {0,0,1,0,0,0,1,0,0},
ikenna1 39:7824f9080f59 8 {0,0,1,1,0,1,1,0,0},
ikenna1 39:7824f9080f59 9 {0,0,0,0,1,0,0,0,0},
ikenna1 39:7824f9080f59 10 };
ikenna1 41:e1fa36c0492e 11 const int shooterSprite[10][11] = {
ikenna1 39:7824f9080f59 12 {0,0,1,0,0,0,0,0,1,0,0},
ikenna1 39:7824f9080f59 13 {0,1,0,1,0,0,0,1,0,1,0},
ikenna1 39:7824f9080f59 14 {1,0,0,1,0,1,0,1,0,0,1},
ikenna1 39:7824f9080f59 15 {1,0,0,1,1,0,1,1,0,0,1},
ikenna1 39:7824f9080f59 16 {0,1,0,0,0,0,0,0,0,1,0},
ikenna1 39:7824f9080f59 17 {0,1,0,0,1,1,1,0,0,1,0},
ikenna1 39:7824f9080f59 18 {0,0,1,0,0,1,0,0,1,0,0},
ikenna1 39:7824f9080f59 19 {0,0,0,1,0,0,0,1,0,0,0},
ikenna1 39:7824f9080f59 20 {0,0,0,0,1,0,1,0,0,0,0},
ikenna1 39:7824f9080f59 21 {0,0,0,0,0,1,0,0,0,0,0},
ikenna1 39:7824f9080f59 22 };
ikenna1 41:e1fa36c0492e 23 const int orionSprite[10][7] = {
ikenna1 41:e1fa36c0492e 24 {0,0,0,1,0,0,0},
ikenna1 41:e1fa36c0492e 25 {0,0,1,0,1,0,0},
ikenna1 41:e1fa36c0492e 26 {0,1,0,0,0,1,0},
ikenna1 41:e1fa36c0492e 27 {1,0,0,1,0,0,1},
ikenna1 41:e1fa36c0492e 28 {0,1,0,0,0,1,0},
ikenna1 41:e1fa36c0492e 29 {0,0,1,0,1,0,0},
ikenna1 41:e1fa36c0492e 30 {1,0,0,1,0,0,1},
ikenna1 41:e1fa36c0492e 31 {1,0,1,0,1,0,1},
ikenna1 41:e1fa36c0492e 32 {1,1,0,0,0,1,1},
ikenna1 41:e1fa36c0492e 33 {1,0,0,0,0,0,1},
ikenna1 41:e1fa36c0492e 34
ikenna1 41:e1fa36c0492e 35 };
ikenna1 39:7824f9080f59 36
ikenna1 39:7824f9080f59 37 // Constructor
ikenna1 39:7824f9080f59 38 Lore::Lore()
ikenna1 39:7824f9080f59 39 {
ikenna1 39:7824f9080f59 40
ikenna1 39:7824f9080f59 41 }
ikenna1 39:7824f9080f59 42 // Destructor
ikenna1 39:7824f9080f59 43 Lore::~Lore()
ikenna1 39:7824f9080f59 44 {
ikenna1 39:7824f9080f59 45
ikenna1 39:7824f9080f59 46 }
ikenna1 41:e1fa36c0492e 47 void Lore::display(N5110 &lcd,int rand)
ikenna1 39:7824f9080f59 48 {
ikenna1 41:e1fa36c0492e 49 int random = rand%4;
ikenna1 41:e1fa36c0492e 50 printf("random = %d\n",random);
ikenna1 39:7824f9080f59 51 lcd.clear();
ikenna1 39:7824f9080f59 52 lcd.refresh();
ikenna1 41:e1fa36c0492e 53 switch (random) {
ikenna1 41:e1fa36c0492e 54 case 0:
ikenna1 41:e1fa36c0492e 55 shooter(lcd);
ikenna1 41:e1fa36c0492e 56 break;
ikenna1 41:e1fa36c0492e 57 case 1:
ikenna1 41:e1fa36c0492e 58 seeker(lcd);
ikenna1 41:e1fa36c0492e 59 break;
ikenna1 41:e1fa36c0492e 60 case 2:
ikenna1 41:e1fa36c0492e 61 kestrel(lcd);
ikenna1 41:e1fa36c0492e 62 break;
ikenna1 41:e1fa36c0492e 63 case 3:
ikenna1 41:e1fa36c0492e 64 orion(lcd);
ikenna1 41:e1fa36c0492e 65 break;
ikenna1 41:e1fa36c0492e 66 case 4:
ikenna1 41:e1fa36c0492e 67 imperion(lcd);
ikenna1 41:e1fa36c0492e 68 break;
ikenna1 41:e1fa36c0492e 69 case 5:
ikenna1 41:e1fa36c0492e 70 menu1(lcd);
ikenna1 41:e1fa36c0492e 71 break;
ikenna1 41:e1fa36c0492e 72 }
ikenna1 39:7824f9080f59 73 lcd.refresh();
ikenna1 41:e1fa36c0492e 74 wait(10);
ikenna1 41:e1fa36c0492e 75
ikenna1 39:7824f9080f59 76 }
ikenna1 39:7824f9080f59 77
ikenna1 41:e1fa36c0492e 78 void Lore::seeker(N5110 &lcd)
ikenna1 39:7824f9080f59 79 {
ikenna1 39:7824f9080f59 80 // _enemy.draw_seeker(lcd);
ikenna1 41:e1fa36c0492e 81 lcd.drawSprite(42,0,7,9,(int *)seekerSprite);
ikenna1 39:7824f9080f59 82 lcd.printString(" Seekers ",2,3);
ikenna1 39:7824f9080f59 83 lcd.printString(" explode ",2,4);
ikenna1 39:7824f9080f59 84 lcd.printString(" on impact ",2,5);
ikenna1 39:7824f9080f59 85 }
ikenna1 39:7824f9080f59 86 void Lore::shooter(N5110 &lcd)
ikenna1 39:7824f9080f59 87 {
ikenna1 41:e1fa36c0492e 88 lcd.drawSprite(16,2,10,11,(int *)shooterSprite);
ikenna1 41:e1fa36c0492e 89 lcd.drawSprite(38,5,10,11,(int *)shooterSprite);
ikenna1 41:e1fa36c0492e 90 lcd.drawSprite(59,2,10,11,(int *)shooterSprite);
ikenna1 41:e1fa36c0492e 91 lcd.printString("Shooters will",2,2);
ikenna1 41:e1fa36c0492e 92 lcd.printString(" allign next ",2,3);
ikenna1 41:e1fa36c0492e 93 lcd.printString("to you before",2,4);
ikenna1 41:e1fa36c0492e 94 lcd.printString(" they fire",2,5);
ikenna1 41:e1fa36c0492e 95 }
ikenna1 41:e1fa36c0492e 96 void Lore::kestrel(N5110 &lcd)
ikenna1 41:e1fa36c0492e 97 {
ikenna1 41:e1fa36c0492e 98 lcd.printString("the kestrel's",2,0);
ikenna1 41:e1fa36c0492e 99 lcd.printString("fire rate ",2,1);
ikenna1 41:e1fa36c0492e 100 lcd.printString("increases the",2,2);
ikenna1 41:e1fa36c0492e 101 lcd.printString("closer you are",2,3);
ikenna1 41:e1fa36c0492e 102 lcd.printString("to danger ",2,4);
ikenna1 41:e1fa36c0492e 103 }
ikenna1 41:e1fa36c0492e 104 void Lore::imperion(N5110 &lcd)
ikenna1 41:e1fa36c0492e 105 {
ikenna1 41:e1fa36c0492e 106 lcd.printString("the imperion ",2,0);
ikenna1 41:e1fa36c0492e 107 lcd.printString(" excels in ",2,1);
ikenna1 41:e1fa36c0492e 108 lcd.printString("damage output ",2,2);
ikenna1 41:e1fa36c0492e 109 lcd.printString(" but is ",2,3);
ikenna1 41:e1fa36c0492e 110 lcd.printString(" immobile ",2,4);
ikenna1 41:e1fa36c0492e 111 lcd.printString("during firing ",2,5);
ikenna1 39:7824f9080f59 112 }
ikenna1 41:e1fa36c0492e 113 void Lore::orion(N5110 &lcd)
ikenna1 40:90c7a893d513 114 {
ikenna1 41:e1fa36c0492e 115 lcd.drawSprite(70,34,10,7,(int *)orionSprite);
ikenna1 41:e1fa36c0492e 116 lcd.drawLine(70 + 2,34 + 2,45,30,FILL_BLACK);
ikenna1 41:e1fa36c0492e 117 lcd.drawLine(70 + 2,34 + 2,55,48,FILL_BLACK);
ikenna1 41:e1fa36c0492e 118 lcd.printString("the orion is",2,0);
ikenna1 41:e1fa36c0492e 119 lcd.printString("the only ship",2,1);
ikenna1 41:e1fa36c0492e 120 lcd.printString("capable of ",2,2);
ikenna1 41:e1fa36c0492e 121 lcd.printString("harming",2,3);
ikenna1 41:e1fa36c0492e 122 lcd.printString("escaping ",2,4);
ikenna1 41:e1fa36c0492e 123 lcd.printString("enemies ",2,5);
ikenna1 41:e1fa36c0492e 124 }
ikenna1 41:e1fa36c0492e 125 void Lore::menu1(N5110 &lcd)
ikenna1 41:e1fa36c0492e 126 {
ikenna1 41:e1fa36c0492e 127 lcd.printString(" you can ",2,0);
ikenna1 41:e1fa36c0492e 128 lcd.printString(" switch ships ",2,1);
ikenna1 41:e1fa36c0492e 129 lcd.printString(" in the menu ",2,2);
ikenna1 41:e1fa36c0492e 130 lcd.printString("some are better",2,3);
ikenna1 41:e1fa36c0492e 131 lcd.printString(" for certain ",2,4);
ikenna1 41:e1fa36c0492e 132 lcd.printString(" tasks. ",2,5);
ikenna1 41:e1fa36c0492e 133 }
ikenna1 41:e1fa36c0492e 134 void Lore::intro(N5110 &lcd)
ikenna1 41:e1fa36c0492e 135 {
ikenna1 41:e1fa36c0492e 136 lcd.clear();
ikenna1 41:e1fa36c0492e 137 lcd.refresh();
ikenna1 40:90c7a893d513 138 lcd.printString("You're tasked",2,0);
ikenna1 40:90c7a893d513 139 lcd.printString(" with holding",2,1);
ikenna1 40:90c7a893d513 140 lcd.printString(" the line ",2,2);
ikenna1 40:90c7a893d513 141 lcd.printString(" from an ",2,3);
ikenna1 40:90c7a893d513 142 lcd.printString("invading army ",2,4);
ikenna1 41:e1fa36c0492e 143 lcd.refresh();
ikenna1 41:e1fa36c0492e 144 wait(2);
ikenna1 41:e1fa36c0492e 145 lcd.clear();
ikenna1 41:e1fa36c0492e 146 lcd.refresh();
ikenna1 40:90c7a893d513 147 lcd.printString(" as an ",2,0);
ikenna1 40:90c7a893d513 148 lcd.printString(" expendable ",2,1);
ikenna1 40:90c7a893d513 149 lcd.printString(" asset, ",2,2);
ikenna1 40:90c7a893d513 150 lcd.printString(" you are not ",2,3);
ikenna1 40:90c7a893d513 151 lcd.printString(" expected to",2,4);
ikenna1 40:90c7a893d513 152 lcd.printString(" survive ",2,5);
ikenna1 41:e1fa36c0492e 153 lcd.refresh();
ikenna1 41:e1fa36c0492e 154 wait(1);
ikenna1 40:90c7a893d513 155 }
ikenna1 39:7824f9080f59 156
ikenna1 39:7824f9080f59 157 /*
ikenna1 39:7824f9080f59 158 string pie = "pie";
ikenna1 39:7824f9080f59 159 char buffer[10];
ikenna1 39:7824f9080f59 160 sprintf(buffer,"%s",pie);
ikenna1 39:7824f9080f59 161 lcd.printString(buffer,2,0);
ikenna1 39:7824f9080f59 162 */