diff --git a/src/common/kernel/movement.c b/src/common/kernel/movement.c
index 53ad59d58..d94d4c8f9 100644
--- a/src/common/kernel/movement.c
+++ b/src/common/kernel/movement.c
@@ -2242,7 +2242,7 @@ hunt(unit *u, order * ord)
fset(u, UFL_LONGACTION); /* FOLGE SCHIFF ist immer lang */
return 0;
} else if (fval(u, UFL_NOTMOVING)) {
- cmistake(u, ord, 187, MSG_MOVE);
+ cmistake(u, ord, 319, MSG_MOVE);
fset(u, UFL_LONGACTION); /* FOLGE SCHIFF ist immer lang */
return 0;
} else if (!can_move(u)) {
@@ -2437,13 +2437,19 @@ movement(void)
* UFL_NOTMOVING is set in combat if the unit is not allowed
* to move because it was involved in a battle.
*/
- if (fval(u, UFL_LONGACTION|UFL_MOVED|UFL_NOTMOVING)) {
+ if (fval(u, UFL_LONGACTION)) {
+ cmistake(u, u->thisorder, 52, MSG_MOVE);
+ set_order(&u->thisorder, NULL);
+ } else if (fval(u, UFL_NOTMOVING)) {
+ cmistake(u, u->thisorder, 319, MSG_MOVE);
+ set_order(&u->thisorder, NULL);
+ } else if (fval(u, UFL_MOVED)) {
cmistake(u, u->thisorder, 187, MSG_MOVE);
set_order(&u->thisorder, NULL);
} else if (!can_move(u)) {
cmistake(u, u->thisorder, 55, MSG_MOVE);
set_order(&u->thisorder, NULL);
- } else if (!fval(u, UFL_MOVED|UFL_NOTMOVING)) {
+ } else {
if (ships) {
if (u->ship && fval(u, UFL_OWNER)) {
init_tokens(u->thisorder);
diff --git a/src/res/messages.xml b/src/res/messages.xml
index acd681bfc..a195c523e 100644
--- a/src/res/messages.xml
+++ b/src/res/messages.xml
@@ -2758,6 +2758,17 @@
"$unit($unit) drowns when $ship($ship) in $region($region) sinks."
+
+
+
+
+
+
+ "$unit($unit) in $region($region): '$order($command)' - Die Einheit kann den Befehl in dieser Runde nicht ausführen, da sie an einem Kampf teilgenommen hat."
+ "$unit($unit) in $region($region): '$order($command)' - The unit cannot execute this command because it has been in combat."
+ "$unit($unit) in $region($region): '$order($command)' - The unit cannot execute this command because it has been in combat."
+
+