Zusaetzliche Syntax zum Fuellen
Es ist hiermit moeglich, die anderen Syntaxen als
'fuelle flasche' zu nutzen, ohne dass der Raum
ein reales Objekt enthaelt. Allerdings muss P_WATER
im Raum < W_OTHER sein und die Flasche mit
DEFAULT_LIQ (ueblicherweise "Wasser") gefuellt
werden.
Change-Id: Iac0679ba7261241a9d2932f5fdd97cfb382c6d55
diff --git a/std/items/flasche.c b/std/items/flasche.c
index a37da86..ee52cb2 100644
--- a/std/items/flasche.c
+++ b/std/items/flasche.c
@@ -291,17 +291,23 @@
object obj;
// Flasche befuellen?
if (id(strbottle)
- && ( obj=present(strobj, environment(this_player()))
- || present(strobj, this_player()) )
+ && ( ( obj=present(strobj, environment(this_player()))
+ || present(strobj, this_player()) )
+ || (strobj == lower_case(DEFAULT_LIQ)
+ && environment(this_player())->QueryProp(P_WATER)<W_OTHER)
+ )
+
)
{
- if (fill_bottle(obj))
+ if (fill_bottle(obj || environment(this_player())))
{
write(break_string(
- "Du fuellst etwas "+liquid_name+" aus " + obj->name(WEM,1)
+ "Du fuellst etwas "+liquid_name
+ + (obj ? " aus " + obj->name(WEM,1) : "")
+ " in "+name(WEN,1)+".",78));
- say(break_string(TP->Name(WER)+" fuellt etwas "+liquid_name+ " aus "
- + obj->name(WEM,1) + " in "+name(WEN)+".",78), TP);
+ say(break_string(TP->Name(WER)+" fuellt etwas "+liquid_name
+ + (obj ? " aus " + obj->name(WEM,1) : "")
+ + " in "+name(WEN)+".",78), TP);
}
return 1;
}