From ce7eb9663a4c84cc6f5e6e1f21a14c2f3991ce9d Mon Sep 17 00:00:00 2001 From: Enno Rehling Date: Mon, 29 Aug 2016 20:56:00 +0100 Subject: [PATCH] remove dead phoenix feature. --- res/core/de/strings.xml | 25 -------- res/core/messages.xml | 21 ------ src/items/CMakeLists.txt | 1 - src/items/itemtypes.c | 2 - src/items/phoenixcompass.c | 128 ------------------------------------- src/items/phoenixcompass.h | 30 --------- 6 files changed, 207 deletions(-) delete mode 100644 src/items/phoenixcompass.c delete mode 100644 src/items/phoenixcompass.h diff --git a/res/core/de/strings.xml b/res/core/de/strings.xml index ee8a409d8..f00b14763 100644 --- a/res/core/de/strings.xml +++ b/res/core/de/strings.xml @@ -1118,14 +1118,6 @@ Trollhörner troll horns - - Feder des Phönix - feather of the phoenix - - - Federn des Phönix - feathers of the phoenix - @@ -3195,23 +3187,6 @@ young dragon - - Phönix - phoenix - - - Phönixe - phoenixes - - - Phönixen - phoenixes - - - Phönix - phoenix - - Illusion illusion diff --git a/res/core/messages.xml b/res/core/messages.xml index 4669ab8b1..c07393609 100644 --- a/res/core/messages.xml +++ b/res/core/messages.xml @@ -8090,27 +8090,6 @@ "The plank of $ship($ship) are inscribed with strange runes. ($int36($id))" - - - - - - - "$unit($unit) in $region($region): '$order($command)' - Die Kompassnadel springt wild hin und her und es lässt sich keine Richtung erkennen." - "$unit($unit) in $region($region): '$order($command)' - The needle jumps wildly and there is no specific direction recognizable." - - - - - - - - - - "$unit($unit) in $region($region): '$order($command)' - Die Kompassnadel zeigt nach $direction($dir)." - "$unit($unit) in $region($region): '$order($command)' - The needle points $direction($dir)." - - diff --git a/src/items/CMakeLists.txt b/src/items/CMakeLists.txt index 9ab324e77..0a2c581b4 100644 --- a/src/items/CMakeLists.txt +++ b/src/items/CMakeLists.txt @@ -8,7 +8,6 @@ SET(_FILES artrewards.c demonseye.c itemtypes.c -phoenixcompass.c seed.c speedsail.c weapons.c diff --git a/src/items/itemtypes.c b/src/items/itemtypes.c index 4c154efdb..ca56b1273 100644 --- a/src/items/itemtypes.c +++ b/src/items/itemtypes.c @@ -16,7 +16,6 @@ #include "xerewards.h" #include "artrewards.h" -#include "phoenixcompass.h" #include "weapons.h" #include "seed.h" @@ -26,7 +25,6 @@ void register_itemtypes(void) register_weapons(); register_xerewards(); register_artrewards(); - register_phoenixcompass(); } void init_itemtypes(void) diff --git a/src/items/phoenixcompass.c b/src/items/phoenixcompass.c deleted file mode 100644 index 571bfa6fd..000000000 --- a/src/items/phoenixcompass.c +++ /dev/null @@ -1,128 +0,0 @@ -/* -Copyright (c) 1998-2015, Enno Rehling -Katja Zedel - -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted, provided that the above -copyright notice and this permission notice appear in all copies. - -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF -OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. -**/ - -#include -#include -#include "phoenixcompass.h" - -/* kernel includes */ -#include -#include -#include -#include -#include -#include - -/* util includes */ -#include -#include -#include - -/* libc includes */ -#include -#include -#include - -static int -use_phoenixcompass(struct unit *u, const struct item_type *itype, -int amount, struct order *ord) -{ - region *r; - unit *closest_phoenix = NULL; - int closest_phoenix_distance = INT_MAX; - bool confusion = false; - direction_t direction; - unit *u2; - direction_t closest_neighbour_direction = 0; - const race *rc_phoenix = rc_find("phoenix"); - - if (rc_phoenix == NULL) - return 0; - - /* find the closest phoenix. */ - - for (r = regions; r; r = r->next) { - for (u2 = r->units; u2; u2 = u2->next) { - if (u_race(u2) == rc_phoenix) { - if (closest_phoenix == NULL) { - closest_phoenix = u2; - closest_phoenix_distance = - distance(u->region, closest_phoenix->region); - } - else { - int dist = distance(u->region, r); - if (dist < closest_phoenix_distance) { - closest_phoenix = u2; - closest_phoenix_distance = dist; - confusion = false; - } - else if (dist == closest_phoenix_distance) { - confusion = true; - } - } - } - } - } - - /* no phoenix found at all.* if confusion == true more than one phoenix - * at the same distance was found and the device is confused */ - - if (closest_phoenix == NULL - || closest_phoenix->region == u->region || confusion) { - add_message(&u->faction->msgs, msg_message("phoenixcompass_confusion", - "unit region command", u, u->region, ord)); - return 0; - } - - /* else calculate the direction. this is tricky. we calculate the - * neighbouring region which is closest to the phoenix found. hardcoded - * for readability. */ - - for (direction = 0; direction < MAXDIRECTIONS; ++direction) { - region *neighbour; - int closest_neighbour_distance = INT_MAX; - - neighbour = r_connect(u->region, direction); - if (neighbour != NULL) { - int dist = distance(neighbour, closest_phoenix->region); - if (dist < closest_neighbour_distance) { - closest_neighbour_direction = direction; - closest_neighbour_distance = dist; - } - else if (dist == closest_neighbour_distance && rng_int() % 100 < 50) { - /* there can never be more than two neighbours with the same - * distance (except when you are standing in the same region - * as the phoenix, but that case has already been handled). - * therefore this simple solution is correct */ - closest_neighbour_direction = direction; - closest_neighbour_distance = dist; - } - } - } - - add_message(&u->faction->msgs, msg_message("phoenixcompass_success", - "unit region command dir", - u, u->region, ord, closest_neighbour_direction)); - - return 0; -} - -void register_phoenixcompass(void) -{ - register_item_use(use_phoenixcompass, "use_phoenixcompass"); -} diff --git a/src/items/phoenixcompass.h b/src/items/phoenixcompass.h deleted file mode 100644 index bc194959d..000000000 --- a/src/items/phoenixcompass.h +++ /dev/null @@ -1,30 +0,0 @@ -/* -Copyright (c) 1998-2015, Enno Rehling -Katja Zedel - -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted, provided that the above -copyright notice and this permission notice appear in all copies. - -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF -OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. -**/ - -#ifndef H_ITM_PHOENIXCOMPASS -#define H_ITM_PHOENIXCOMPASS -#ifdef __cplusplus -extern "C" { -#endif - - extern void register_phoenixcompass(void); - -#ifdef __cplusplus -} -#endif -#endif