U E D R , A S I H C RSS

데블스캠프2010/다섯째날/ObjectCraft/미션2/변형진 (rev. 1.1)

데블스캠프2010/다섯째날/Object Craft/미션2/변형진


#include <stdio.h>

struct zergling {
	int no;
	int hitP;
	int attP;
	int defP;
} zerglings[2];

void init_unit_stats() {
	zerglings[0].no = 0;
	zerglings[1].no = 1;
	zerglings[0].hitP = zerglings[1].hitP = 50;
	zerglings[0].attP = zerglings[1].attP = 5;
	zerglings[0].defP = zerglings[1].defP = 0;
}

int get_damage(zergling z1, zergling z2) {
	return z1.attP - z2.defP;
}

void attack(zergling z1, zergling & z2) {
	int damage = get_damage(z1, z2);

	z2.hitP -= damage;
	printf("저글링 %d이 저글링 %d에게 데미지 %d를 입혀 HP가 %d가 되었습니다.\n", z1.no, z2.no, damage, z2.hitP);
}

int is_dead(zergling z) {
	return z.hitP <= 0;
}

int main() {
	int i = 0;

	init_unit_stats();

	while (true) {
		attack(zerglings[0], zerglings[1]);

		if (is_dead(zerglings[1])) {
			printf("저글링 %d이 죽었습니다.\n", zerglings[1].no);
			break;
		}
		
		attack(zerglings[1], zerglings[0]);

		if (is_dead(zerglings[0])) {
			printf("저글링 %d이 죽었습니다.\n", zerglings[0].no);
			break;
		}
	}

	getchar();
	return 0;
}
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:29:10
Processing time 0.0234 sec