diff options
author | Nathan Vance <nathav63@gmail.com> | 2015-02-27 15:00:06 -0500 |
---|---|---|
committer | Nathan Vance <nathav63@gmail.com> | 2015-02-27 15:00:06 -0500 |
commit | 03b04f383c2897b6177e4feb0eb86b68e377f6dc (patch) | |
tree | f3d914b2010f01a32f59dabaa8b4881faeb9797c /war.c | |
parent | Now counts special cards! (diff) | |
download | 7w-03b04f383c2897b6177e4feb0eb86b68e377f6dc.tar.gz 7w-03b04f383c2897b6177e4feb0eb86b68e377f6dc.tar.bz2 7w-03b04f383c2897b6177e4feb0eb86b68e377f6dc.zip |
Added battles
Diffstat (limited to 'war.c')
-rw-r--r-- | war.c | 32 |
1 files changed, 32 insertions, 0 deletions
@@ -0,0 +1,32 @@ +#include "7w.h" + +int data_getdir(int dir, int p); +void data_adddefeat(int p); +void data_addvictory(int p); +int data_numplayers(); +int* data_getbuilt(int p); +int data_haswonderstage(int p, int wonder, int stage); +int* cards_getproduction(int era, int card); + +int military_might(int player) +{ + int *built = data_getbuilt(player); + int i, sum; + sum = 0; + for(i = 0; built[i] != -1; i += 2) + sum += cards_getproduction(built[i], built[i+1])[SHIELD]; + return sum; +} + +void war() +{ + int numplayers = data_numplayers(); + int player, j; + for(player = 0; player < numplayers; player++) + for(j = 0; j < 2; j++) { + if(military_might(player) > military_might(data_getdir(j, player))) + data_addvictory(player); + else if(military_might(player) != military_might(data_getdir(j, player))) + data_adddefeat(player); + } +} |