From dcf1480dc86146527fe5ea10d0e7ee269765dc96 Mon Sep 17 00:00:00 2001 From: xolatile Date: Sun, 16 Jun 2024 06:02:32 -0400 Subject: [PATCH] Comically stupid but cute... --- xerbia.c | 91 +++++++++++++++++++++++++++++++++++++++------------------------- 1 file changed, 56 insertions(+), 35 deletions(-) diff --git a/xerbia.c b/xerbia.c index 5c2e171..42803a4 100644 --- a/xerbia.c +++ b/xerbia.c @@ -1,68 +1,89 @@ #include -static int wheat = 0; -static int gold = 0; -static int wood = 0; -static int stone = 0; +static int wheat = 600, + gold = 600, + wood = 600, + stone = 600; -static int granaries = 1; -static int mines = 1; -static int storehouses = 1; -static int quarries = 1; +static int granaries = 1, + mines = 1, + storehouses = 1, + quarries = 1; -static char * king_list = "King Ognjen Milan Robovic"; - -static void print_if_no_resources (int have, int need, char * name) { +static int check_resource (int have, int need, char * name) { if (have < need) { - print ("> You have only /3%i %s/- and you need /3%i/-, meaning that you miss /1%i/- more.\n", have, name, need, need - have); + print ("You have only /3%i %s/- and you need /3%i/-, meaning that you miss /1%i/- more.\n", have, name, need, need - have); + + return (true); } + + return (false); } static void build_granary (void) { - if ((gold < 10) || (wood < 60) || (stone < 30)) { - echo ("> Your architects humbly refused to build the granary, complaining about lacking the resources for that.\n"); + if (check_resource (gold, 10, "gold") || check_resource (wood, 60, "wood") || check_resource (stone, 30, "stone")) { + print ("Your architects humbly refused to build the /1granary/-, complaining about lacking the resources for that.\n"); + } else { + gold -= 10; + wood -= 60; + stone -= 30; - print_if_no_resources (gold, 10, "gold"); - print_if_no_resources (wood, 60, "wood"); - print_if_no_resources (stone, 30, "stone"); + print ("/2Granary/- that you ordered to be built was finished without issues, now you have /2%i/- granaries.\n", ++granaries); } } static void build_mine (void) { - if ((gold < 120) || (wood < 60) || (stone < 30)) { - echo ("> Your architects humbly refused to build the mine, complaining about lacking the resources for that.\n"); + if (check_resource (gold, 120, "gold") || check_resource (wood, 60, "wood") || check_resource (stone, 30, "stone")) { + print ("Your architects humbly refused to build the /1mine/-, complaining about lacking the resources for that.\n"); + } else { + gold -= 120; + wood -= 60; + stone -= 30; - print_if_no_resources (gold, 120, "gold"); - print_if_no_resources (wood, 60, "wood"); - print_if_no_resources (stone, 30, "stone"); + print ("/2Mine/- that you ordered to be built was finished without issues, now you have /2%i/- mines.\n", ++mines); } } static void build_storehouse (void) { - if ((gold < 30) || (wood < 10) || (stone < 60)) { - echo ("> Your architects humbly refused to build the storehouse, complaining about lacking the resources for that.\n"); + if (check_resource (gold, 30, "gold") || check_resource (wood, 10, "wood") || check_resource (stone, 60, "stone")) { + print ("Your architects humbly refused to build the /1storehouse/-, complaining about lacking the resources for that.\n"); + } else { + gold -= 30; + wood -= 10; + stone -= 60; - print_if_no_resources (gold, 30, "gold"); - print_if_no_resources (wood, 10, "wood"); - print_if_no_resources (stone, 60, "stone"); + print ("/2Storehouse/- that you ordered to be built was finished without issues, now you have /2%i/- storehouses.\n", ++storehouses); } } static void build_quarry (void) { - if ((gold < 60) || (wood < 30) || (stone < 10)) { - echo ("> Your architects humbly refused to build the quarry, complaining about lacking the resources for that.\n"); + if (check_resource (gold, 60, "gold") || check_resource (wood, 30, "wood") || check_resource (stone, 10, "stone")) { + print ("Your architects humbly refused to build the /1quarry/-, complaining about lacking the resources for that.\n"); + } else { + gold -= 60; + wood -= 30; + stone -= 10; - print_if_no_resources (gold, 60, "gold"); - print_if_no_resources (wood, 30, "wood"); - print_if_no_resources (stone, 10, "stone"); + print ("/2Quarry/- that you ordered to be built was finished without issues, now you have /2%i/- quarries.\n", ++quarries); } } +static void print_resources (void) { + print ("Wheat = %i\n", wheat); + print ("Gold = %i\n", gold); + print ("Wood = %i\n", wood); + print ("Stone = %i\n", stone); +} + int main (void) { - build_granary (); - build_mine (); + print_resources (); + + build_granary (); + build_mine (); build_storehouse (); - build_quarry (); + build_quarry (); + + print_resources (); return (log_success); }