Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void *monsterMovement(void *bicho){
- Monster *m = (Monster*)bicho;
- srand((unsigned) time(NULL));
- int x, y, aux, i, j;
- m->vida = 1;
- while(m->vida == 1){
- x = m->x;
- y = m->y;
- sleep(1);
- fflush(stdout);
- aux = rand() % 4;
- if(aux == 0){
- if(map[x][y-1].letra == ' ' || map[x][y-1].letra == '*'){
- map[x][y].letra = ' ';
- map[x][y-1].letra = 'M';
- m->x = x;
- m->y = y-1;
- }else if(map[x][y+1].letra == ' ' || map[x][y+1].letra == '*'){
- map[x][y].letra = ' ';
- map[x][y+1].letra = 'M';
- m->x = x;
- m->y = y+1;
- }
- }else if(aux == 1){
- if(map[x][y+1].letra == ' ' || map[x][y+1].letra == '*'){
- map[x][y].letra = ' ';
- map[x][y+1].letra = 'M';
- m->x = x;
- m->y = y+1;
- }else if(map[x][y-1].letra == ' ' || map[x][y-1].letra == '*'){
- map[x][y].letra = ' ';
- map[x][y-1].letra = 'M';
- m->x = x;
- m->y = y-1;
- }
- }else if(aux == 2){
- if(map[x-1][y].letra == ' ' || map[x-1][y].letra == '*'){
- map[x][y].letra = ' ';
- map[x-1][y].letra = 'M';
- m->x = x-1;
- m->y = y;
- }else{
- if(map[x+1][y].letra == ' ' || map[x+1][y].letra == '*'){
- map[x][y].letra = ' ';
- map[x+1][y].letra = 'M';
- m->x = x+1;
- m->y = y;
- }else if((map[x][y-1].letra == ' ' || map[x][y-1].letra == '*') && (map[x][y+1].letra == ' ' || map[x][y+1].letra == '*')){
- aux = rand() % 2;
- if(aux == 0){
- map[x][y].letra = ' ';
- map[x][y-1].letra = 'M';
- m->x = x;
- m->y = y-1;
- }else{
- map[x][y].letra = ' ';
- map[x][y+1].letra = 'M';
- m->x = x;
- m->y = y+1;
- }
- }else if(map[x][y-1].letra == ' ' || map[x][y-1].letra == '*'){
- map[x][y].letra = ' ';
- map[x][y-1].letra = 'M';
- m->x = x;
- m->y = y-1;
- }else if(map[x][y+1].letra == ' ' || map[x][y+1].letra == '*'){
- map[x][y].letra = ' ';
- map[x][y+1].letra = 'M';
- m->x = x;
- m->y = y+1;
- }
- }
- }else if(aux == 3){
- if(map[x+1][y].letra == ' ' || map[x+1][y].letra == '*'){
- map[x][y].letra = ' ';
- map[x+1][y].letra = 'M';
- m->x = x+1;
- m->y = y;
- }else{
- if(map[x-1][y].letra == ' ' || map[x-1][y].letra == '*'){
- map[x][y].letra = ' ';
- map[x-1][y].letra = 'M';
- m->x = x-1;
- m->y = y;
- }else if((map[x][y-1].letra == ' ' || map[x][y-1].letra == '*') && (map[x][y+1].letra == ' ' || map[x][y+1].letra == '*')){
- aux = rand() % 2;
- if(aux == 0){
- map[x][y].letra = ' ';
- map[x][y-1].letra = 'M';
- m->x = x;
- m->y = y-1;
- }else{
- map[x][y].letra = ' ';
- map[x][y+1].letra = 'M';
- m->x = x;
- m->y = y+1;
- }
- }else if(map[x][y-1].letra == ' ' || map[x][y-1].letra == '*'){
- map[x][y].letra = ' ';
- map[x][y-1].letra = 'M';
- m->x = x;
- m->y = y-1;
- }else if(map[x][y+1].letra == ' ' || map[x][y+1].letra == '*'){
- map[x][y].letra = ' ';
- map[x][y+1].letra = 'M';
- m->x = x;
- m->y = y+1;
- }
- }
- }
- }
- return NULL;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement