-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMAIN.c
78 lines (69 loc) · 2.15 KB
/
MAIN.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdbool.h>
#define MAX_STR 50
#include "MOVE_FISH.h"
#include "MOVE_HARBOR.h"
#include "MANO.h"
#include "MOVE_BUSY.h"
#include "FISH_LOGIC.h"
char *locomocao[4][10] = {
"RIGHT",
"LEFT",
"UP",
"DOWN",
};
int main(){
char IdBOT[MAX_STR];
setbuf(stdin, NULL);
setbuf(stdout, NULL);
setbuf(stderr, NULL);
int altura, largura;
scanf("AREA %i %i", &altura, &largura);
scanf(" ID %s", IdBOT);
int *vetorLinhaCopy = malloc(largura * sizeof(int));
int *vetorXY = malloc(2 * sizeof(int));
char comando[10];
char resultadoComando[10];
char resultadoFish[10];
int *matrizPointer = malloc((altura*largura) * sizeof(int));
int x,y;
int *peso_barco_ponteiro, peso_barco ;
bool EstouPescando = false;
peso_barco_ponteiro = &peso_barco;
int multa_OUT = 0;
int saldo = 0;
char *comeback_ponteiro[10], comeback[10];
*(comeback_ponteiro) = comeback;
int *variavelAcionada_Ponteiro, variavelAcionada = 0;
variavelAcionada_Ponteiro = &variavelAcionada;
int s = 0;
while(1){
setbuf(stdin, NULL);
setbuf(stdout, NULL);
setbuf(stderr, NULL);
matrizPointer = NULL;
matrizPointer = malloc((altura*largura) * sizeof(int));
vetorXY = malloc(2 * sizeof(int));
readData(altura, largura, IdBOT,vetorXY,matrizPointer,0);
x = *(vetorXY+0);
y = *(vetorXY+1);
if(variavelAcionada == 1){
funcBUSY(x,y,s,largura,altura,matrizPointer);
variavelAcionada = 0;
s++;
}else{
if(peso_barco >= 10){
logica_dos_portos(matrizPointer,comando,resultadoFish,peso_barco_ponteiro, x, y,multa_OUT,altura,largura,vetorXY, vetorLinhaCopy, comeback_ponteiro, variavelAcionada_Ponteiro);
}else{
EstouPescando = logica_dos_peixes(matrizPointer,comando,resultadoFish,peso_barco_ponteiro, x, y,multa_OUT,altura,largura,vetorXY, vetorLinhaCopy,comeback_ponteiro, variavelAcionada_Ponteiro,EstouPescando);
}
}
matrizPointer = NULL;
vetorXY = NULL;
}
free(vetorXY);
free(vetorLinhaCopy);
return 0;
}