diff --git a/src/common/kernel/give.c b/src/common/kernel/give.c
index bb59b160c..46f3f6e1a 100644
--- a/src/common/kernel/give.c
+++ b/src/common/kernel/give.c
@@ -100,11 +100,17 @@ give_item(int want, const item_type * itype, unit * src, unit * dest, struct ord
n = min(want, n);
if (dest && src->faction != dest->faction && src->faction->age < GiveRestriction()) {
if (ord!=NULL) {
- ADDMSG(&src->faction->msgs, msg_feedback(src, ord, "giverestriction",
- "turns", GiveRestriction()));
+ ADDMSG(&src->faction->msgs, msg_feedback(src, ord, "giverestriction",
+ "turns", GiveRestriction()));
}
return -1;
} else if (n == 0) {
+ int reserve = get_reservation(src, itype->rtype);
+ if (reserve) {
+ msg_feedback(src, ord, "nogive_reserved", "resource reservation",
+ itype->rtype, reserve);
+ return -1;
+ }
error = 36;
} else if (itype->flags & ITF_CURSED) {
error = 25;
@@ -132,7 +138,7 @@ give_item(int want, const item_type * itype, unit * src, unit * dest, struct ord
/* warden_add_give(src, dest, itype, n); */
}
#endif
- }else{
+ } else {
/* gib bauern */
give_peasants(use, itype, src);
}
diff --git a/src/res/messages.xml b/src/res/messages.xml
index 1f01fd2c9..5eeb0f145 100644
--- a/src/res/messages.xml
+++ b/src/res/messages.xml
@@ -5952,6 +5952,17 @@
"$unit($unit) en $region($region): '$order($command)' - L'unité ne possède pas cet objet."
"$unit($unit) in $region($region): '$order($command)' - The unit does not have this item."
+
+
+
+
+
+
+
+
+ "$unit($unit) in $region($region): '$order($command)' - Die Einheit hat diesen Gegenstand zwar, aber sämtliche $int($reservation) $resource($resource,$reservation) sind reserviert."
+ "$unit($unit) in $region($region): '$order($command)' - The unit has this item, but all $int($reservation) $resource($resource,$reservation) are reserved."
+