Permit flash to yourself

Flashing yourself failed with a bogus "not logged on" message for
deities, and a mildly bogus "not a deity or friendly with us" message
for mortals.

Fix by simply permitting it.  Not terribly useful, except perhaps for
empire-hub users, but why not.
This commit is contained in:
Markus Armbruster 2011-02-05 12:50:50 +01:00
parent 0d4566847f
commit de7657dd99

View file

@ -63,7 +63,8 @@ flash(void)
} }
} else { } else {
/* Ok, we are a normal country, can we flash them? */ /* Ok, we are a normal country, can we flash them? */
if (to->nat_stat != STAT_GOD && getrel(to, player->cnum) < FRIENDLY) { if (to->nat_stat != STAT_GOD && tocn != player->cnum
&& getrel(to, player->cnum) < FRIENDLY) {
pr("%s is not a deity or friendly with us.\n", to->nat_cnam); pr("%s is not a deity or friendly with us.\n", to->nat_cnam);
return RET_SYN; return RET_SYN;
} }
@ -127,8 +128,6 @@ sendmessage(struct natstr *to, char *message, int verbose)
for (other = player_next(NULL); other; other = player_next(other)) { for (other = player_next(NULL); other; other = player_next(other)) {
if (other->state != PS_PLAYING) if (other->state != PS_PLAYING)
continue; continue;
if (player == other)
continue;
if (to) { if (to) {
/* flash */ /* flash */
if (other->cnum != to->nat_cnum) if (other->cnum != to->nat_cnum)
@ -136,6 +135,8 @@ sendmessage(struct natstr *to, char *message, int verbose)
wto = to; wto = to;
} else { } else {
/* wall */ /* wall */
if (player == other)
continue;
wto = getnatp(other->cnum); wto = getnatp(other->cnum);
if (CANT_HAPPEN(!wto)) if (CANT_HAPPEN(!wto))
continue; continue;
@ -165,7 +166,8 @@ sendmessage(struct natstr *to, char *message, int verbose)
if (to) { if (to) {
/* flash */ /* flash */
if (player->god || getrel(to, player->cnum) == ALLIED) { if (player->god || to->nat_cnum == player->cnum
|| getrel(to, player->cnum) == ALLIED) {
/* Can see TO logged in anyway, so it's okay to tell */ /* Can see TO logged in anyway, so it's okay to tell */
if (rejected) if (rejected)
pr("%s is not accepting flashes\n", to->nat_cnam); pr("%s is not accepting flashes\n", to->nat_cnam);