Browse Source

added armor and needed functions to enemy

remotes/origin/encounter
János 2 years ago
parent
commit
7bf2091f25
  1. 19
      src/c/encounter.c
  2. 5
      src/c/encounter.h
  3. 8
      test/c/test_encounter.c

19
src/c/encounter.c

@ -4,6 +4,12 @@
#include <stdbool.h> #include <stdbool.h>
#include <encounter.h> #include <encounter.h>
/*Gegner mit AC, damagedealt = damage-AC, kann nicht kleiner 1 sein
evtl. lair bonus der dem gegner ein wenig mehr/weniger damage erlaubt
gegner erhalten eine zufällige menge Gold, die beim tod an den spieler gegeben werden
humanoide gegner haben heiltränke mit denen sie sich ggf heilen.
heilung erfolgt dann, wenn bestimmte hp (50%) unterschritten wird. wird allerdings gewürfelt,
je niedriger die hp%, desto höher die chance. */
bool playerAlive(int health){ bool playerAlive(int health){
if(health > 0){ if(health > 0){
@ -23,12 +29,12 @@ int playerHealth(int health, int damage){
return health; return health;
} }
enemy createEnemy(int health)
/* enemy createEnemy(int health)
{ {
enemy test; enemy test;
test.health = health; test.health = health;
return test; return test;
}
} */
void *setEnemyHealth(int *num, int health){ void *setEnemyHealth(int *num, int health){
*num = health; *num = health;
@ -47,3 +53,12 @@ void *setEnemyDamage(int *num, int damage){
int getEnemyDamage(enemy enemy){ int getEnemyDamage(enemy enemy){
return enemy.damage; return enemy.damage;
} }
void *setEnemyArmor(int *num, int armor){
*num = armor;
}
int getEnemyArmor(enemy enemy){
return enemy.armor;
}

5
src/c/encounter.h

@ -6,6 +6,7 @@
typedef struct { typedef struct {
int health; int health;
int damage; int damage;
int armor;
} enemy; } enemy;
@ -18,5 +19,9 @@ int getEnemyHealth(enemy enemy);
//setEnemyDamage(&enemy.damage, damage); //setEnemyDamage(&enemy.damage, damage);
void *setEnemyDamage(int *num, int damage); void *setEnemyDamage(int *num, int damage);
int getEnemyDamage(enemy enemy); int getEnemyDamage(enemy enemy);
//setEnemyArmor(&enemy.armor, armor);
void *setEnemyArmor(int *num, int damage);
int getEnemyArmor(enemy enemy);
#endif #endif

8
test/c/test_encounter.c

@ -77,5 +77,11 @@ void test_getEnemyDamage(void){
TEST_ASSERT_EQUAL(damage, result); TEST_ASSERT_EQUAL(damage, result);
} }
void test_get_setEnemyArmor(void){
int armor = 4, result;
enemy test = {50, 4, armor*2};
setEnemyArmor(&test.armor, armor);
result = getEnemyArmor(test);
TEST_ASSERT_EQUAL(armor, result);
}
#endif // TEST #endif // TEST
Loading…
Cancel
Save