diff options
author | piaip <piaip@63ad8ddf-47c3-0310-b6dd-a9e9d9715204> | 2008-05-17 08:54:47 +0800 |
---|---|---|
committer | piaip <piaip@63ad8ddf-47c3-0310-b6dd-a9e9d9715204> | 2008-05-17 08:54:47 +0800 |
commit | c45cf7b5d6fa0ed9e91380dbfb6d7d73247afe8c (patch) | |
tree | 62de06364c9e8731886d04c3107014d66fb86049 | |
parent | 3c93984bf3ec8d2f55f3ab62615c8f5ebc4b82df (diff) | |
download | pttbbs-c45cf7b5d6fa0ed9e91380dbfb6d7d73247afe8c.tar pttbbs-c45cf7b5d6fa0ed9e91380dbfb6d7d73247afe8c.tar.gz pttbbs-c45cf7b5d6fa0ed9e91380dbfb6d7d73247afe8c.tar.bz2 pttbbs-c45cf7b5d6fa0ed9e91380dbfb6d7d73247afe8c.tar.lz pttbbs-c45cf7b5d6fa0ed9e91380dbfb6d7d73247afe8c.tar.xz pttbbs-c45cf7b5d6fa0ed9e91380dbfb6d7d73247afe8c.tar.zst pttbbs-c45cf7b5d6fa0ed9e91380dbfb6d7d73247afe8c.zip |
- chicken: allow better revive for admin
git-svn-id: http://opensvn.csie.org/pttbbs/trunk@4315 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
-rw-r--r-- | pttbbs/mbbsd/chicken.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/pttbbs/mbbsd/chicken.c b/pttbbs/mbbsd/chicken.c index 6e4af92f..7feb83f3 100644 --- a/pttbbs/mbbsd/chicken.c +++ b/pttbbs/mbbsd/chicken.c @@ -648,7 +648,7 @@ check_sick(chicken_t *mychicken) } static int -revive_chicken(chicken_t *thechicken) +revive_chicken(chicken_t *thechicken, int admin) { int c = 0; assert(thechicken); @@ -660,6 +660,8 @@ revive_chicken(chicken_t *thechicken) if (c < 2) c = 2; if (c > thechicken->hp_max) c = thechicken->hp_max; thechicken->hp = c; + if (admin) + thechicken->hp = thechicken->hp_max; thechicken->weight = thechicken->hp; // weight = 1 時 sick 有機再次死亡 if (thechicken->weight < 2) // 避免病死或餓死 @@ -667,6 +669,13 @@ revive_chicken(chicken_t *thechicken) thechicken->satis = 2; // 滿意降低 thechicken->tiredstrong = thechicken->hp; // 若歸零則過太爽 + + if (admin) + { + thechicken->sick = 0; + thechicken->tiredstrong = 0; + } + thechicken->lastvisit = now; // really need so? return 0; @@ -889,7 +898,7 @@ recover_chicken(chicken_t * thechicken) igetch(); return 0; } - revive_chicken(thechicken); + revive_chicken(thechicken, 0); vice(money, "靈界守衛"); snprintf(buf, sizeof(buf), ANSI_COLOR(33;44) "★靈界守衛" ANSI_COLOR(37;45) @@ -926,7 +935,7 @@ chicken_toggle_death(const char *uid) } else { - revive_chicken(mychicken); + revive_chicken(mychicken, 1); strlcpy(mychicken->name, "[死]", sizeof(mychicken->name)); // mychicken->lastvisit = now; // prevent suddent death (now done in revive_chicken) vmsgf("%s 的寵物復活了", uid); |