Difference between r1.2 and the current
@@ -40,16 +40,8 @@
void attack(zergling* z1, zergling* z2)
{
//sleep(1000);
if ( z2->HP == 0 )
{
cout << z2->number << "가 죽었습니다." << endl;
return;
}
else
{
cout << z1->number << "이 " << z2->number << "에게 데미지 " << z1->atk << "를 입혀 HP가 " << z2->HP << "가 되었다." << endl;
z2->HP -= z1->atk;
}
}
void fight(zergling* z1, zergling* z2)
{
//sleep(1000);
z2->HP -= z1->atk;
void fight(zergling* z1, zergling* z2)
@@ -57,7 +49,9 @@
while ( z1->HP != 0 && z2->HP != 0 )
{
attack(z1, z2);
void fightwith(zergling* z1, zergling* z2)
{
attack(z1, z2);
attack(z2, z1);
} which_is_dead(z1, z2);
}void fightwith(zergling* z1, zergling* z2)
@@ -68,6 +62,32 @@
attack(z2, z1);
}
}
== zergling.h ==
}
}
void new_fightwith(zergling* z1, zergling* z2)
{
int which = rand() % 2;
if ( which == 0 )
{
fight(z1, z2);
}
else
{
fight(z2, z1);
}
}
void which_is_dead(zergling* z1, zergling* z2)
{
if ( z1->HP == 0 )
{
cout << z1->number << "이 죽었습니다." << endl;
}
else
{
cout << z2->number << "가 죽었습니다." << endl;
}
}
}}}== zergling.h ==
@@ -83,4 +103,7 @@
zergling* createZergling(int num);
void attack(zergling* z1, zergling* z2);
void fight(zergling* z1, zergling* z2);
void attack(zergling* z1, zergling* z2);
void fight(zergling* z1, zergling* z2);
void fightwith(zergling* z1, zergling* z2);}}}
void fightwith(zergling* z1, zergling* z2);
void new_fightwith(zergling* z1, zergling* z2);
void which_is_dead(zergling* z1, zergling* z2);
}}}
메인함수 ¶
#include <iostream> #include "zergling.h" int main(void) { //zergling** z = NULL; //z[0] = createZergling(); //z[1] = createZergling(); zergling* z1 = createZergling(1); zergling* z2 = createZergling(2); // fight(z1, z2); fightwith(z1, z2); return 0; }
zergling.cpp ¶
#include <iostream> #include "zergling.h" #include <time.h> using namespace std; zergling* createZergling(int num) { zergling* z1 = (zergling*)malloc(sizeof(zergling)); z1->atk = 5; z1->def = 0; z1->HP = 50; z1->number = num; return z1; } void attack(zergling* z1, zergling* z2) { //sleep(1000); cout << z1->number << "이 " << z2->number << "에게 데미지 " << z1->atk << "를 입혀 HP가 " << z2->HP << "가 되었다." << endl; z2->HP -= z1->atk; } void fight(zergling* z1, zergling* z2) { while ( z1->HP != 0 && z2->HP != 0 ) { attack(z1, z2); attack(z2, z1); } which_is_dead(z1, z2); } void fightwith(zergling* z1, zergling* z2) { while ( z1->HP != 0 && z2->HP != 0 ) { attack(z1, z2); attack(z2, z1); } } void new_fightwith(zergling* z1, zergling* z2) { int which = rand() % 2; if ( which == 0 ) { fight(z1, z2); } else { fight(z2, z1); } } void which_is_dead(zergling* z1, zergling* z2) { if ( z1->HP == 0 ) { cout << z1->number << "이 죽었습니다." << endl; } else { cout << z2->number << "가 죽었습니다." << endl; } }
zergling.h ¶
typedef struct zergling { int atk; int def; int HP; int number; } zergling; zergling* createZergling(int num); void attack(zergling* z1, zergling* z2); void fight(zergling* z1, zergling* z2); void fightwith(zergling* z1, zergling* z2); void new_fightwith(zergling* z1, zergling* z2); void which_is_dead(zergling* z1, zergling* z2);