Untitled
unknown
plain_text
a year ago
8.4 kB
7
Indexable
#include<iostream> using namespace std; void clean_and_draw_border(char x[][300]) { for (int i = 0; i < 50; i++) { for (int j = 0; j < 300; j++) { x[i][j] = ' '; } } for (int i = 0; i < 50; i++) { x[i][0] = '|'; x[i][149] = '|'; x[i][150] = '|'; x[i][300] = '|'; } for (int i = 0; i < 300; i++) { x[0][i] = '='; x[49][i] = '='; } } void cout_to_screen(char x[][300], int l) { system("cls"); if (l == 1) { for (int i = 0; i < 50; i++) { for (int j = 0; j < 150; j++) { cout << x[i][j]; } } } if (l == 2) { for (int i = 0; i < 50; i++) { for (int j = 150; j < 300; j++) { cout << x[i][j]; } } } } void draw_l1(char x[][300], int rl) { for (int i = 1; i < 140; i++) { x[rl][i] = '='; } for (int i = 146; i < 149; i++) { x[rl][i] = '='; } } void draw_l2(char x[][300], int rl) { for (int i = 148; i > 10; i--) { x[rl][i] = '='; } for (int i = 3; i >= 1; i--) { x[rl][i] = '='; } } void draw_ladder(char x[][300], int rladder, int cladder, int rl) { for (int i = rladder; i < rl; i++) { x[i][140] = '|'; x[i][146] = '|'; for (int c = cladder + 1; c < 146; c++) { x[i][c] = '-'; } } } void draw_ladder2(char x[][300], int rladder, int cladder, int rl) { for (int i = rladder; i < rl; i++) { x[i][10] = '|'; x[i][3] = '|'; for (int c = cladder - 1; c > 3; c--) { x[i][c] = '-'; } } } void draw_elevator(char x[][300], int celevator, int relevator) { int r = relevator; for (int c = celevator; c > 3; c--) { x[r][c] = '-'; } } void move_elevator(int& relevator, int& dir) { if (dir == 1) { if (relevator + 1 == 40) { dir = -1; } } if (dir == -1) { if (relevator == 32) { dir = 1; } } relevator += dir; } void draw_enemy(char x[][300], int enemyr, int enemyc, int dire) { if (dire == 1) { x[enemyr][enemyc] = '|'; x[enemyr][enemyc + 1] = '_'; x[enemyr][enemyc + 2] = '|'; x[enemyr][enemyc + 3] = '_'; x[enemyr - 1][enemyc] = '|'; x[enemyr - 1][enemyc + 1] = '_'; x[enemyr - 1][enemyc + 2] = '|'; x[enemyr - 1][enemyc - 1] = '/'; for (int i = 0; i < 4; i++) { x[enemyr - 2][enemyc + i] = '_'; } for (int i = 0; i < 2; i++) { x[enemyr - 2 - i][enemyc - 1] = '|'; } for (int i = 0; i < 2; i++) { x[enemyr - 2 - i][enemyc + 4] = '|'; } x[enemyr - 3][enemyc + 3] = '0'; x[enemyr - 3][enemyc + 1] = '0'; for (int i = 0; i < 6; i++) { x[enemyr - 4][enemyc - 1 + i] = '_'; } x[enemyr - 2][enemyc + 5] = '_'; x[enemyr - 2][enemyc + 6] = 209; x[enemyr - 2][enemyc + 7] = 196; } else { x[enemyr][enemyc] = '_'; x[enemyr][enemyc + 1] = '|'; x[enemyr][enemyc + 2] = '_'; x[enemyr][enemyc + 3] = '|'; x[enemyr - 1][enemyc + 1] = '|'; x[enemyr - 1][enemyc + 2] = '_'; x[enemyr - 1][enemyc + 3] = '|'; x[enemyr - 1][enemyc + 4] = '\\'; x[enemyr - 2][enemyc - 1] = '_'; x[enemyr - 2][enemyc] = '|'; for (int i = 0; i < 4; i++) { x[enemyr - 2][enemyc + 1 + i] = '_'; } x[enemyr - 2][enemyc - 2] = 209; x[enemyr - 2][enemyc - 3] = 196; x[enemyr - 2][enemyc + 5] = '|'; x[enemyr - 3][enemyc] = '|'; x[enemyr - 3][enemyc + 5] = '|'; for (int i = 0; i < 6; i++) { x[enemyr - 4][enemyc + i] = '_'; } x[enemyr - 3][enemyc + 1] = '0'; x[enemyr - 3][enemyc + 3] = '0'; } } void move_enemy(int& enemyc, int& dire) { if (dire == 1) { if (enemyc == 136) { dire = -1; } } if (dire == -1) { if (enemyc == 15) { dire = 1; } } enemyc += dire; } void fire(char x[][300], int rfire, int cfire) { for (int c = cfire; c < 110; c++) { x[rfire][c] = 176; x[rfire - 1][c] = 176; } } void draw_selim(char x[][300], int rselim, int cselim) { x[rselim][cselim] = 219; x[rselim][cselim + 1] = 219; x[rselim][cselim + 2] = 219; x[rselim][cselim + 3] = 219; x[rselim][cselim + 4] = 219; x[rselim][cselim + 5] = 219; x[rselim][cselim + 6] = 219; } void move_selim(char x[][300], int& rselim, int& cselim, int& dirs) { if (dirs == 1) { if (cselim + 5 == 75) { dirs = -1; } } if (dirs == -1) { if (cselim == 30) { dirs = 1; } } cselim += dirs; } void draw_slm(char x[][300],int rslm,int cslm) { x[rslm][cslm] = 219; x[rslm][cslm + 1] = 219; x[rslm][cslm + 2] = 219; x[rslm][cslm + 3] = 219; x[rslm][cslm + 4] = 219; x[rslm][cslm + 5] = 219; x[rslm][cslm + 6] = 219; } void move_slm(char x[][300],int &rslm,int &cslm,int &dirss) { if (dirss == 1) { if (cslm -5 == 71) { dirss = -1; } } if (dirss == -1) { if (cslm == 115) { dirss = 1; } } cslm -= dirss; } void draw_gun_up(char x[][300], int rgun, int cgun) { x[rgun][cgun] = 232; } void draw_zombie(char x[][300], int rzombie, int czombie, int dirz) { if (dirz == 2) { x[rzombie][czombie] = '_'; x[rzombie][czombie + 1] = '_'; x[rzombie - 1][czombie] = '|'; x[rzombie][czombie + 4] = '_'; x[rzombie][czombie + 5] = '_'; x[rzombie - 1][czombie + 4] = '|'; x[rzombie - 2][czombie] = '|'; x[rzombie - 2][czombie + 4] = '|'; x[rzombie - 2][czombie + 1] = 170; x[rzombie - 2][czombie + 5] = 170; x[rzombie - 3][czombie] = '|'; x[rzombie - 3][czombie + 3] = '|'; x[rzombie - 4][czombie + 1] = 'o'; x[rzombie - 4][czombie + 2] = 'o'; x[rzombie - 3][czombie + 1] = '-'; x[rzombie - 3][czombie + 2] = '-'; } if (dirz == -2) { x[rzombie][czombie] = '_'; x[rzombie][czombie - 1] = '_'; x[rzombie - 1][czombie] = '|'; x[rzombie][czombie - 4] = '_'; x[rzombie][czombie - 5] = '_'; x[rzombie - 1][czombie - 4] = '|'; x[rzombie - 1][czombie - 4] = '|'; x[rzombie - 2][czombie] = '|'; x[rzombie - 2][czombie - 4] = '|'; x[rzombie - 2][czombie - 1] = 169; x[rzombie - 2][czombie - 5] = 169; x[rzombie - 3][czombie] = '|'; x[rzombie - 3][czombie - 3] = '|'; x[rzombie - 4][czombie - 1] = 'o'; x[rzombie - 4][czombie - 2] = 'o'; x[rzombie - 3][czombie - 1] = '-'; x[rzombie - 3][czombie - 2] = '-'; } } void move_zombie(int& czombie, int& dirz) { if (dirz == 2) { if (czombie + 16 == 148) { dirz = -2; } } if (dirz == -2) { if (czombie == 20) { dirz = 2; } } czombie += dirz; } void draw_laser(char x[][300], int rlaser, int claser) { x[rlaser][claser] = '_'; x[rlaser][claser + 1] = '|'; x[rlaser - 1][claser + 1] = '/'; x[rlaser - 2][claser + 1] = '\\'; x[rlaser - 3][claser + 1] = '|'; x[rlaser - 4][claser] = '_'; } void laser_attack(char x[][300], int rlaser, int claser, int& ct) { if (ct == 0) { x[rlaser - 1][claser + 1] = ' '; x[rlaser - 2][claser + 1] = ' '; x[rlaser - 1][claser + 1] = '_'; x[rlaser - 3][claser + 1] = '_'; ct = 5; for (int i = 1; i < 137; i++) { x[rlaser - 2][claser + i] = '_'; } } } void main() { char x[50][300]; int l = 1; int rl1 = 8; int rl2 = 16; int rl3 = 24; int rl4 = 32; int rl5 = 40; int rladder = 8; int cladder = 140; int rladder2 = 16; int cladder2 = 10; int rladder3 = 24; int cladder3 = 140; int relevator = 32; int celevator = 10; int dir = 1; int enemyr = 23; int enemyc = 109; int dire = 1; int rfire = 7; int cfire = 40; int rselim = 5; int cselim = 35; int dirs = 1; int rslm = 5; int cslm = 110; int dirss = 1; int rgun = 6; int cgun = 125; int rzombie = 15; int czombie = 100; int dirz = 2; int dirz2 = 2; int dirz3 = 2; int rzombie2 = 15; int czombie2 = 70; int rzombie3 = 15; int czombie3 = 40; int rlaser = 30; int claser = 1; int ct = 5; for (;;) { ct--; clean_and_draw_border(x); draw_l1(x, rl1); draw_l2(x, rl2); draw_l1(x, rl3); draw_l2(x, rl4); draw_l1(x, rl5); draw_ladder(x, rladder, cladder, rl2); draw_ladder2(x, rladder2, cladder2, rl3); draw_ladder(x, rladder3, cladder3, rl4); draw_elevator(x, celevator, relevator); move_elevator(relevator, dir); draw_enemy(x, enemyr, enemyc, dire); move_enemy(enemyc, dire); fire(x, rfire, cfire); move_selim(x, rselim, cselim, dirs); draw_selim(x, rselim, cselim); draw_slm(x, rslm, cslm); move_slm(x, rslm, cslm, dirss); draw_gun_up(x, rgun, cgun); draw_zombie(x, rzombie, czombie, dirz); draw_zombie(x, rzombie2, czombie2, dirz2); draw_zombie(x, rzombie3, czombie3, dirz3); move_zombie(czombie, dirz); move_zombie(czombie2, dirz2); move_zombie(czombie3, dirz3); draw_laser(x, rlaser, claser); laser_attack(x, rlaser, claser, ct); cout_to_screen(x, l); } }
Editor is loading...
Leave a Comment