]> git.pond.sub.org Git - empserver/blobdiff - src/lib/commands/trad.c
Update copyright notice
[empserver] / src / lib / commands / trad.c
index 34c86e962ad7c44ef394983048ceff9b71eb64bf..b2ee58b67ecd78c3e9ff0ef8db1ff33e45e469c8 100644 (file)
@@ -1,6 +1,6 @@
 /*
  *  Empire - A multi-player, client/server Internet based war game.
- *  Copyright (C) 1986-2014, Dave Pare, Jeff Bailey, Thomas Ruschak,
+ *  Copyright (C) 1986-2018, Dave Pare, Jeff Bailey, Thomas Ruschak,
  *                Ken Stevens, Steve McClure, Markus Armbruster
  *
  *  Empire is free software: you can redistribute it and/or modify
@@ -182,11 +182,10 @@ trad(void)
        || (trade.trd_type == EF_NUKE)) {
        while (1) {
            p = getstring("Destination sector: ", buf);
-           if (!trade_check_ok(&trade, &tg.gen))
+           if (!p)
                return RET_FAIL;
-           if (!p) {
+           if (!trade_check_ok(&trade, &tg.gen))
                return RET_FAIL;
-           }
            if (!sarg_xy(p, &sx, &sy) || !getsect(sx, sy, &sect)) {
                pr("Bad sector designation; try again!\n");
                continue;
@@ -210,11 +209,10 @@ trad(void)
     } else if (trade.trd_type == EF_LAND) {
        while (1) {
            p = getstring("Destination sector: ", buf);
-           if (!trade_check_ok(&trade, &tg.gen))
+           if (!p)
                return RET_FAIL;
-           if (!p) {
+           if (!trade_check_ok(&trade, &tg.gen))
                return RET_FAIL;
-           }
            if (!sarg_xy(p, &sx, &sy) || !getsect(sx, sy, &sect)) {
                pr("Bad sector designation; try again!\n");
                continue;
@@ -360,7 +358,7 @@ check_trade(void)
            if (opt_MOB_ACCESS) {
                tg.plane.pln_mobil = -(etu_per_update / sect_mob_neg_factor);
                game_tick_to_now(&tg.plane.pln_access);
-           } else {
+           } else if (tg.plane.pln_mobil > 0) {
                tg.plane.pln_mobil = 0;
            }
            tg.plane.pln_harden = 0;
@@ -375,7 +373,7 @@ check_trade(void)
            if (opt_MOB_ACCESS) {
                tg.land.lnd_mobil = -(etu_per_update / sect_mob_neg_factor);
                game_tick_to_now(&tg.land.lnd_access);
-           } else {
+           } else if (tg.plane.pln_mobil > 0) {
                tg.land.lnd_mobil = 0;
            }
            tg.land.lnd_harden = 0;