--- deliantra/server/include/player.h 2007/08/15 05:01:25 1.67 +++ deliantra/server/include/player.h 2007/09/04 05:43:21 1.73 @@ -172,9 +172,10 @@ shstr ACC (RW, invis_race); /* What race invisible to? */ MTH static player *create (); + static player *find (const_utf8_string name); static player *load_pl (object_thawer &thawer); - MTH static player *load_pl (const char *path); + MTH static player *load_pl (object_thawer *thawer) { return load_pl (*thawer); } bool save_pl (object_freezer &freezer); MTH bool save_pl (const char *path); @@ -203,6 +204,25 @@ MTH void set_observe (object *ob); + void send_msg (int color, const char *type, const char *msg) + { + ns->send_msg (color, type, msg); + } + + // a prominent box that can easily be escaped away or so + // should be used for informative output such as who, maps etc. + // will stay on-screen + void infobox (const char *title, const char *msg, int color = NDI_BLACK); + + // a prominent msg that signifies some important event, + // an improvement potion effect potion. should not be long. + // might time out after a while + void statusmsg (const char *msg, int color = NDI_BLACK); + + // a prominent box that signifies some error such as a failed + // improvement potion. should not be long. + void failmsg (const char *msg, int color = NDI_RED); + ~player (); private: @@ -218,3 +238,14 @@ for (unsigned _i = 0; _i < ::players.size (); ++_i) \ statementvar (player *, var, ::players [_i]) +inline void +object::statusmsg (const char *msg, int color) +{ + if (expect_true (contr)) contr->statusmsg (msg, color); +} + +inline void +object::failmsg (const char *msg, int color) +{ + if (expect_true (contr)) contr->failmsg (msg, color); +}