teamrufe via ReceiveMsg()
teamrufe stellt durch ReceiveMsg() mit Aktion "teamruf" zu.
Change-Id: I4c3def4f34a42dd26c562407440ac3f61eceaa7a
diff --git a/obj/team.c b/obj/team.c
index 607e07a..95f58d1 100644
--- a/obj/team.c
+++ b/obj/team.c
@@ -127,21 +127,15 @@
return(a[0]<b[0]);
}
-varargs private void gtell(string str, string who, int tohist) {
- int i;
- object *tmembers,rochus;
- string prefix,msg;
+varargs private void gtell(string str, string who, int tohist)
+{
+ string prefix = sprintf("[%s:%s] ", name(), stringp(who) ? who : "");
+ foreach(object ob: Members())
+ ob->ReceiveMsg(str, MT_COMM|MT_FAR|MSG_DONT_STORE|MSG_DONT_BUFFER,
+ MA_TEAMRUF, prefix, this_player());
- tmembers=Members();
- prefix=sprintf("[%s:%s] ",name(),stringp(who)?who:"");
- msg=break_string(str,78,prefix);
- for (i=sizeof(tmembers)-1;i>=0;i--)
- tell_object(tmembers[i],msg);
- if (objectp(rochus=find_player("rochus"))
- && rochus->QueryProp("debug_team"))
- tell_object(rochus,msg);
if (tohist)
- hist=(hist+({break_string(str+" <"+ctime()[11..15]+">",78,prefix)}))[-100..];
+ hist=(hist+({break_string(str + strftime(" <%H:%M>"),78,prefix)}))[-100..];
}
int IsMember(object ob) {