peepshow (#1122)

(an instance of generic container made by legba)

     It looks like some weird shrine constructed for the cathode gods. Standing about 6 feet high, the top half is the chunky, wooden console of an early 1960s Quasar television, its gold-plated, elongated star logo gleaming dully. The chunky on/off knob usually to be found on the lower right has been replaced by a coin return cup. The channel changer on the lower left has also been removed, leaving a round, black hole about three inches in diameter. A coin slot large enough to accomodate a quarter has been bolted to the upper right hand side.
     The majestic bulk of the vintage tv balances upon what appears to have once been a 21" Sony Trinitron Monitor, whose screen now seems entirely dedicated to showing nothing but incessant reruns of "Ren and Stimpy."

peepshow contains quarter.

Go to location of this object, Backroom.



VERB SOURCE CODE:

p*ut in*sert d*rop:
"Copied from generic container (#8):put by The_Mayor (#2) Fri Jul 22 04:21:25 1994 
EDT";
if ((this.location != player) && (this.location != player.location))
    player:tell("You can't get at ", this.name, ".");
elseif (dobj == $nothing)
    player:tell("What do you want to put ", prepstr, " ", this.name, "?");
elseif ($command_utils:object_match_failed(dobj, dobjstr))
elseif ((dobj.location != player) && (dobj.location != player.location))
    player:tell("You don't have ", dobj.name, ".");
elseif (!this.opened)
    player:tell(this.name, " is closed.");
else
    dobj:moveto(this);
    if (dobj.location == this)
        player:tell(this:put_msg());
        if (dobj.name == "quarter")
            this.location:announce_all("You hear the clickthunk of a quarter falling 
into the machine.  The black screen glows suddenly with a steady, bluish light.");
            suspend(5);
            this.state = 1;
            movies = {};
            for n in (this.contents)
                if (parent(n) == #826)
                    movies = listappend(movies, n);
                endif
            endfor
            if (movies)
                len = length(movies);
                movies[random(len)]:play_script();
            else
                player:tell("The machine seems to not be working at the moment");
            endif
            this.state = 0;
        endif
        if (msg = this:oput_msg())
            player.location:announce(player.name, " ", msg);
        endif
    else
        player:tell(this:put_fail_msg());
        if (msg = this:oput_fail_msg())
            player.location:announce(player.name, " ", msg);
        endif
    endif
endif
.


description:
if (this.state)
    return listappend(this.description, this.on_text);
else
    return listappend(this.description, this.off_text);
endif
.



PROPERTY DATA:
      on_text
      off_text
      state