remove the deprecated getunit function.

fix the build, missing return value from give_control_cmd.
This commit is contained in:
Enno Rehling 2014-12-12 21:06:47 +01:00
parent 481275aef1
commit 98994f233d
7 changed files with 429 additions and 428 deletions

View file

@ -640,7 +640,7 @@ int give_control_cmd(unit * u, order * ord)
if (!can_give_to(u, u2)) { if (!can_give_to(u, u2)) {
ADDMSG(&u->faction->msgs, ADDMSG(&u->faction->msgs,
msg_feedback(u, ord, "feedback_unit_not_found", "")); msg_feedback(u, ord, "feedback_unit_not_found", ""));
return; return 0;
} }
else if (!u->building && !u->ship) { else if (!u->building && !u->ship) {
msg = cmistake(u, ord, 140, MSG_EVENT); msg = cmistake(u, ord, 140, MSG_EVENT);

View file

@ -1021,13 +1021,18 @@ int getunit(const region * r, const faction * f, unit **uresult)
unit *u2; unit *u2;
if (n == 0) { if (n == 0) {
if (uresult) {
*uresult = 0; *uresult = 0;
}
return GET_PEASANTS; return GET_PEASANTS;
} }
if (n < 0) if (n < 0)
return 0; return GET_NOTFOUND;
*uresult = u2 = findunit(n); u2 = findunit(n);
if (uresult) {
*uresult = u2;
}
if (u2 != NULL && u2->region == r) { if (u2 != NULL && u2->region == r) {
/* there used to be a 'u2->flags & UFL_ISNEW || u2->number>0' condition /* there used to be a 'u2->flags & UFL_ISNEW || u2->number>0' condition
* here, but it got removed because of a bug that made units disappear: * here, but it got removed because of a bug that made units disappear:
@ -1039,29 +1044,6 @@ int getunit(const region * r, const faction * f, unit **uresult)
return GET_NOTFOUND; return GET_NOTFOUND;
} }
unit *getunit_deprecated(const region * r, const faction * f)
{
int n = read_unitid(f, r);
unit *u2;
if (n == 0) {
return NULL;
}
if (n < 0)
return 0;
u2 = findunit(n);
if (u2 != NULL && u2->region == r) {
/* there used to be a 'u2->flags & UFL_ISNEW || u2->number>0' condition
* here, but it got removed because of a bug that made units disappear:
* http://eressea.upb.de/mantis/bug_view_page.php?bug_id=0000172
*/
return u2;
}
return NULL;
}
/* - String Listen --------------------------------------------- */ /* - String Listen --------------------------------------------- */
void addstrlist(strlist ** SP, const char *s) void addstrlist(strlist ** SP, const char *s)
{ {

View file

@ -168,7 +168,6 @@ extern "C" {
struct unit *createunit(struct region *r, struct faction *f, struct unit *createunit(struct region *r, struct faction *f,
int number, const struct race *rc); int number, const struct race *rc);
void create_unitid(struct unit *u, int id); void create_unitid(struct unit *u, int id);
struct unit *getunit_deprecated(const struct region *r, const struct faction *f);
int getunit(const struct region * r, const struct faction * f, struct unit **uresult); int getunit(const struct region * r, const struct faction * f, struct unit **uresult);
int read_unitid(const struct faction *f, const struct region *r); int read_unitid(const struct faction *f, const struct region *r);

View file

@ -1830,8 +1830,9 @@ int name_cmd(struct unit *u, struct order *ord)
case P_UNIT: case P_UNIT:
if (foreign) { if (foreign) {
unit *u2 = getunit_deprecated(r, u->faction); unit *u2 = 0;
getunit(r, u->faction, &u2);
if (!u2 || !cansee(u->faction, r, u2, 0)) { if (!u2 || !cansee(u->faction, r, u2, 0)) {
ADDMSG(&u->faction->msgs, msg_feedback(u, ord, ADDMSG(&u->faction->msgs, msg_feedback(u, ord,
"feedback_unit_not_found", "")); "feedback_unit_not_found", ""));

View file

@ -1247,8 +1247,10 @@ static bool transport(unit * ut, unit * u)
for (ord = ut->orders; ord; ord = ord->next) { for (ord = ut->orders; ord; ord = ord->next) {
if (getkeyword(ord) == K_TRANSPORT) { if (getkeyword(ord) == K_TRANSPORT) {
unit *u2;
init_order(ord); init_order(ord);
if (getunit_deprecated(ut->region, ut->faction) == u) { getunit(ut->region, ut->faction, &u2);
if (u2 == u) {
return true; return true;
} }
} }
@ -1278,11 +1280,10 @@ static void init_transportation(void)
for (u = r->units; u; u = u->next) { for (u = r->units; u; u = u->next) {
if (getkeyword(u->thisorder) == K_DRIVE && can_move(u) if (getkeyword(u->thisorder) == K_DRIVE && can_move(u)
&& !fval(u, UFL_NOTMOVING) && !LongHunger(u)) { && !fval(u, UFL_NOTMOVING) && !LongHunger(u)) {
unit *ut; unit *ut = 0;
init_order(u->thisorder); init_order(u->thisorder);
ut = getunit_deprecated(r, u->faction); if (getunit(r, u->faction, &ut) != GET_UNIT) {
if (ut == NULL) {
ADDMSG(&u->faction->msgs, msg_feedback(u, u->thisorder, ADDMSG(&u->faction->msgs, msg_feedback(u, u->thisorder,
"feedback_unit_not_found", "")); "feedback_unit_not_found", ""));
continue; continue;
@ -1312,14 +1313,18 @@ static void init_transportation(void)
if (getkeyword(ord) == K_TRANSPORT) { if (getkeyword(ord) == K_TRANSPORT) {
init_order(ord); init_order(ord);
for (;;) { for (;;) {
unit *ut = getunit_deprecated(r, u->faction); unit *ut = 0;
if (ut == NULL) if (getunit(r, u->faction, &ut) != GET_UNIT) {
break; break;
if (getkeyword(ut->thisorder) == K_DRIVE && can_move(ut) }
&& !fval(ut, UFL_NOTMOVING) && !LongHunger(ut)) { if (getkeyword(ut->thisorder) == K_DRIVE &&
can_move(ut) && !fval(ut, UFL_NOTMOVING) &&
!LongHunger(ut)) {
unit *u2;
init_order(ut->thisorder); init_order(ut->thisorder);
if (getunit_deprecated(r, ut->faction) == u) { getunit(r, ut->faction, &u2);
if (u2 == u) {
w += weight(ut); w += weight(ut);
} }
} }
@ -2198,14 +2203,13 @@ static const region_list *travel_i(unit * u, const region_list * route_begin,
/* transportation */ /* transportation */
for (ord = u->orders; ord; ord = ord->next) { for (ord = u->orders; ord; ord = ord->next) {
unit *ut; unit *ut = 0;
if (getkeyword(ord) != K_TRANSPORT) if (getkeyword(ord) != K_TRANSPORT)
continue; continue;
init_order(ord); init_order(ord);
ut = getunit_deprecated(r, u->faction); if (getunit(r, u->faction, &ut) == GET_UNIT) {
if (ut != NULL) {
if (getkeyword(ut->thisorder) == K_DRIVE) { if (getkeyword(ut->thisorder) == K_DRIVE) {
if (ut->building && !can_leave(ut)) { if (ut->building && !can_leave(ut)) {
cmistake(ut, ut->thisorder, 150, MSG_MOVE); cmistake(ut, ut->thisorder, 150, MSG_MOVE);
@ -2218,8 +2222,10 @@ static const region_list *travel_i(unit * u, const region_list * route_begin,
bool found = false; bool found = false;
if (!fval(ut, UFL_NOTMOVING) && !LongHunger(ut)) { if (!fval(ut, UFL_NOTMOVING) && !LongHunger(ut)) {
unit *u2;
init_order(ut->thisorder); init_order(ut->thisorder);
if (getunit_deprecated(u->region, ut->faction) == u) { getunit(u->region, ut->faction, &u2);
if (u2 == u) {
const region_list *route_to = const region_list *route_to =
travel_route(ut, route_begin, route_end, ord, travel_route(ut, route_begin, route_end, ord,
TRAVEL_TRANSPORTED); TRAVEL_TRANSPORTED);

View file

@ -91,7 +91,8 @@ void spy_message(int spy, const unit * u, const unit * target)
found++; found++;
if (first == 1) { if (first == 1) {
first = 0; first = 0;
} else { }
else {
strncat(buf, ", ", sizeof(buf) - 1); strncat(buf, ", ", sizeof(buf) - 1);
} }
strncat(buf, (const char *)skillname((skill_t)sv->id, u->faction->locale), strncat(buf, (const char *)skillname((skill_t)sv->id, u->faction->locale),
@ -121,11 +122,11 @@ int spy_cmd(unit * u, struct order *ord)
region *r = u->region; region *r = u->region;
init_order(ord); init_order(ord);
target = getunit_deprecated(r, u->faction); getunit(r, u->faction, &target);
if (!target) { if (!target) {
ADDMSG(&u->faction->msgs, msg_feedback(u, u->thisorder, ADDMSG(&u->faction->msgs,
"feedback_unit_not_found", "")); msg_feedback(u, u->thisorder, "feedback_unit_not_found", ""));
return 0; return 0;
} }
if (!can_contact(r, u, target)) { if (!can_contact(r, u, target)) {
@ -145,7 +146,8 @@ int spy_cmd(unit * u, struct order *ord)
if (chance(spychance)) { if (chance(spychance)) {
produceexp(u, SK_SPY, u->number); produceexp(u, SK_SPY, u->number);
spy_message(spy, u, target); spy_message(spy, u, target);
} else { }
else {
ADDMSG(&u->faction->msgs, msg_message("spyfail", "spy target", u, target)); ADDMSG(&u->faction->msgs, msg_message("spyfail", "spy target", u, target));
} }
@ -289,7 +291,8 @@ int setstealth_cmd(unit * u, struct order *ord)
if (!s || *s == 0) { if (!s || *s == 0) {
fset(u, UFL_ANON_FACTION); fset(u, UFL_ANON_FACTION);
break; break;
} else if (findparam(s, u->faction->locale) == P_NOT) { }
else if (findparam(s, u->faction->locale) == P_NOT) {
freset(u, UFL_ANON_FACTION); freset(u, UFL_ANON_FACTION);
break; break;
} }
@ -305,12 +308,14 @@ int setstealth_cmd(unit * u, struct order *ord)
if (!s2 || *s2 == 0 || nr == u->faction->no) { if (!s2 || *s2 == 0 || nr == u->faction->no) {
a_removeall(&u->attribs, &at_otherfaction); a_removeall(&u->attribs, &at_otherfaction);
break; break;
} else { }
else {
struct faction *f = findfaction(nr); struct faction *f = findfaction(nr);
if (f == NULL) { if (f == NULL) {
cmistake(u, ord, 66, MSG_EVENT); cmistake(u, ord, 66, MSG_EVENT);
break; break;
} else { }
else {
set_factionstealth(u, f); set_factionstealth(u, f);
break; break;
} }
@ -327,7 +332,8 @@ int setstealth_cmd(unit * u, struct order *ord)
default: default:
if (u_race(u)->flags & RCF_SHAPESHIFTANY) { if (u_race(u)->flags & RCF_SHAPESHIFTANY) {
set_racename(&u->attribs, s); set_racename(&u->attribs, s);
} else { }
else {
cmistake(u, ord, 289, MSG_EVENT); cmistake(u, ord, 289, MSG_EVENT);
} }
} }
@ -365,7 +371,8 @@ static int try_destruction(unit * u, unit * u2, const ship * sh, int skilldiff)
ADDMSG(&u2->faction->msgs, msg_message(detect_failure_msg, "ship", sh)); ADDMSG(&u2->faction->msgs, msg_message(detect_failure_msg, "ship", sh));
} }
return 0; return 0;
} else if (skilldiff < 0) { }
else if (skilldiff < 0) {
/* tell the unit that the attempt was detected: */ /* tell the unit that the attempt was detected: */
ADDMSG(&u2->faction->msgs, msg_message(destruction_detected_msg, ADDMSG(&u2->faction->msgs, msg_message(destruction_detected_msg,
"ship unit", sh, u)); "ship unit", sh, u));
@ -374,7 +381,8 @@ static int try_destruction(unit * u, unit * u2, const ship * sh, int skilldiff)
ADDMSG(&u2->faction->msgs, msg_message(detect_failure_msg, "ship", sh)); ADDMSG(&u2->faction->msgs, msg_message(detect_failure_msg, "ship", sh));
} }
return 0; return 0;
} else { }
else {
/* tell the unit that the attempt succeeded */ /* tell the unit that the attempt succeeded */
ADDMSG(&u->faction->msgs, msg_message(destruction_success_msg, "ship unit", ADDMSG(&u->faction->msgs, msg_message(destruction_success_msg, "ship unit",
sh, u)); sh, u));
@ -406,7 +414,8 @@ static void sink_ship(region * r, ship * sh, const char *name, unit * saboteur)
/* figure out what a unit's chances of survival are: */ /* figure out what a unit's chances of survival are: */
if (!fval(r->terrain, SEA_REGION)) { if (!fval(r->terrain, SEA_REGION)) {
probability = CANAL_SWIMMER_CHANCE; probability = CANAL_SWIMMER_CHANCE;
} else { }
else {
for (d = 0; d != MAXDIRECTIONS; ++d) { for (d = 0; d != MAXDIRECTIONS; ++d) {
region *rn = rconnect(r, d); region *rn = rconnect(r, d);
if (!fval(rn->terrain, SEA_REGION) && !move_blocked(NULL, r, rn)) { if (!fval(rn->terrain, SEA_REGION) && !move_blocked(NULL, r, rn)) {
@ -442,7 +451,8 @@ static void sink_ship(region * r, ship * sh, const char *name, unit * saboteur)
if (dead > 0) { if (dead > 0) {
msg = msg =
msg_message("sink_lost_msg", "dead region unit", dead, safety, u); msg_message("sink_lost_msg", "dead region unit", dead, safety, u);
} else { }
else {
msg = msg_message("sink_saved_msg", "region unit", safety, u); msg = msg_message("sink_saved_msg", "region unit", safety, u);
} }
leave_ship(u); leave_ship(u);
@ -453,7 +463,8 @@ static void sink_ship(region * r, ship * sh, const char *name, unit * saboteur)
i_remove(&u->items, u->items); i_remove(&u->items, u->items);
} }
move_unit(u, safety, NULL); move_unit(u, safety, NULL);
} else { }
else {
msg = msg_message("sink_lost_msg", "dead region unit", dead, NULL, u); msg = msg_message("sink_lost_msg", "dead region unit", dead, NULL, u);
} }
add_message(&u->faction->msgs, msg); add_message(&u->faction->msgs, msg);

View file

@ -390,8 +390,10 @@ int teach_cmd(unit * u, struct order *ord)
init_order(ord); init_order(ord);
while (!parser_end()) { while (!parser_end()) {
unit *u2 = getunit_deprecated(r, u->faction); unit *u2;
bool feedback; bool feedback;
getunit(r, u->faction, &u2);
++count; ++count;
/* Falls die Unit nicht gefunden wird, Fehler melden */ /* Falls die Unit nicht gefunden wird, Fehler melden */
@ -406,7 +408,7 @@ int teach_cmd(unit * u, struct order *ord)
for (j = 0; j != count - 1; ++j) { for (j = 0; j != count - 1; ++j) {
/* skip over the first 'count' units */ /* skip over the first 'count' units */
getunit_deprecated(r, u->faction); getunit(r, u->faction, NULL);
} }
token = getstrtoken(); token = getstrtoken();