[BACK]Return to armor.c CVS log [TXT][DIR] Up to [contributed] / early-roguelike / rogue5

Annotation of early-roguelike/rogue5/armor.c, Revision 1.1

1.1     ! rubenllo    1: /*
        !             2:  * This file contains misc functions for dealing with armor
        !             3:  * @(#)armor.c 4.14 (Berkeley) 02/05/99
        !             4:  *
        !             5:  * Rogue: Exploring the Dungeons of Doom
        !             6:  * Copyright (C) 1980-1983, 1985, 1999 Michael Toy, Ken Arnold and Glenn Wichman
        !             7:  * All rights reserved.
        !             8:  *
        !             9:  * See the file LICENSE.TXT for full copyright and licensing information.
        !            10:  */
        !            11:
        !            12: #include <curses.h>
        !            13: #include "rogue.h"
        !            14:
        !            15: /*
        !            16:  * wear:
        !            17:  *     The player wants to wear something, so let him/her put it on.
        !            18:  */
        !            19: void
        !            20: wear(void)
        !            21: {
        !            22:     THING *obj;
        !            23:     char *sp;
        !            24:
        !            25:     if ((obj = get_item("wear", ARMOR)) == NULL)
        !            26:        return;
        !            27:     if (cur_armor != NULL)
        !            28:     {
        !            29:        addmsg("you are already wearing some");
        !            30:        if (!terse)
        !            31:            addmsg(".  You'll have to take it off first");
        !            32:        endmsg();
        !            33:        after = FALSE;
        !            34:        return;
        !            35:     }
        !            36:     if (obj->o_type != ARMOR)
        !            37:     {
        !            38:        msg("you can't wear that");
        !            39:        return;
        !            40:     }
        !            41:     waste_time();
        !            42:     obj->o_flags |= ISKNOW;
        !            43:     sp = inv_name(obj, TRUE);
        !            44:     cur_armor = obj;
        !            45:     if (!terse)
        !            46:        addmsg("you are now ");
        !            47:     msg("wearing %s", sp);
        !            48: }
        !            49:
        !            50: /*
        !            51:  * take_off:
        !            52:  *     Get the armor off of the players back
        !            53:  */
        !            54: void
        !            55: take_off(void)
        !            56: {
        !            57:     THING *obj;
        !            58:
        !            59:     if ((obj = cur_armor) == NULL)
        !            60:     {
        !            61:        after = FALSE;
        !            62:        if (terse)
        !            63:                msg("not wearing armor");
        !            64:        else
        !            65:                msg("you aren't wearing any armor");
        !            66:        return;
        !            67:     }
        !            68:     if (!dropcheck(cur_armor))
        !            69:        return;
        !            70:     cur_armor = NULL;
        !            71:     if (terse)
        !            72:        addmsg("was");
        !            73:     else
        !            74:        addmsg("you used to be");
        !            75:     msg(" wearing %c) %s", obj->o_packch, inv_name(obj, TRUE));
        !            76: }
        !            77:
        !            78: /*
        !            79:  * waste_time:
        !            80:  *     Do nothing but let other things happen
        !            81:  */
        !            82: void
        !            83: waste_time(void)
        !            84: {
        !            85:     do_daemons(BEFORE);
        !            86:     do_fuses(BEFORE);
        !            87:     do_daemons(AFTER);
        !            88:     do_fuses(AFTER);
        !            89: }

CVSweb