diff options
-rw-r--r-- | ai_weights.c | 5 | ||||
-rw-r--r-- | data.c | 8 | ||||
-rw-r--r-- | main.c | 2 |
3 files changed, 9 insertions, 6 deletions
diff --git a/ai_weights.c b/ai_weights.c index d559c0c..f614fe9 100644 --- a/ai_weights.c +++ b/ai_weights.c @@ -17,6 +17,7 @@ int cards_gettype(int era, int card); int* get_science(int player); int* get_special(int era, int card, int player); int data_potentialvps(int p, int era, int card); +int data_gettotvps(int p); int military_might(int player); int weight_science(int era, int card, int player) @@ -112,9 +113,7 @@ int weight_buildcard(int era, int card, int player) { int weight = data_potentialvps(player, era, card); weight -= data_gettotvps(player); - if(cards_gettype(era, card) == STRUCTURE) - weight *= 3; - weight /= 2; + if(cards_gettype(era, card) == STRUCTURE); //already done if(cards_gettype(era, card) == MILITARY) weight += weight_military(era, card, player); if(era == 2) return weight; @@ -465,10 +465,14 @@ int data_potentialvps(int p, int era, int card) int i; for(i = 0; player[p][era][i] != -1; i++); //get free spot in array player[p][era][i] = card; //build card - player[i][3][3] += cards_getproduction(era, card)[GOLD]; + player[p][3][3] += cards_getproduction(era, card)[GOLD]; + player[p][3][3] += get_special(era, card, p)[1]; + player[p][3][6] += cards_getproduction(era, card)[VP], p; int vps = data_gettotvps(p); + player[p][3][6] -= cards_getproduction(era, card)[VP], p; + player[p][3][3] -= get_special(era, card, p)[1]; + player[p][3][3] -= cards_getproduction(era, card)[GOLD]; player[p][era][i] = -1; - player[i][3][3] -= cards_getproduction(era, card)[GOLD]; return vps; } @@ -40,7 +40,7 @@ main() { io_init(); cards_init(); - data_init(5); + data_init(7); main_routine(); halt(); } |