(include "sci.sh")
(use "Main")
(use "Class_255_0")
(use "mall")
(use "rmnScript")
(use "SQRoom")
(use "PolyPath")
(use "Polygon")
(use "Class_950_0")
(use "n958")
(use "StopWalk")
(use "Grooper")
(use "Sound")
(use "Cycle")
(use "User")
(use "PicView")
(use "Obj")
(script 381)


(local
    local0
    local1
    local2
    local3
    local4 = 1
    local5[8] = (314 68 235 67 157 64 220 90 )
    theRoboBrBottom[8]
    local21

)
(procedure (localproc_1d1a)
    proc0_3()
    (User:canControl(0))
    (send gIconBar:disable(0))
)


(procedure (localproc_1d31)
    (var theTheRoboBrBottom, theTheRoboBrBottom_2, theTheRoboBrBottom_3, roboBrBottom)
    = theTheRoboBrBottom (- (robo:brLeft) 5)
    = theTheRoboBrBottom_2 (- (robo:brTop) 5)
    = theTheRoboBrBottom_3 (+ (robo:brRight) 6)
    = roboBrBottom (robo:brBottom)
    = theRoboBrBottom[0] (= theRoboBrBottom[6] theTheRoboBrBottom)
    = theRoboBrBottom[1] (= theRoboBrBottom[3] theTheRoboBrBottom_2)
    = theRoboBrBottom[2] (= theRoboBrBottom[4] theTheRoboBrBottom_3)
    = theRoboBrBottom[5] (= theRoboBrBottom[7] roboBrBottom)
    (roboPoly:
        points(@local13)
        size(4)
    )
    (send global2:addObstacle(roboPoly))
)


(instance public rm381 of SQRoom
    (properties
        picture 381
        style 30
        south 380
        picAngle 60
    )

    (method (init)
        proc958_0(128 0 4 402 383 381)
        proc958_0(135 68 69)
        proc958_0(132 832 833)
        (self:addObstacle((send ((Polygon:new())):
                type(2)
                init(107 150 152 150 176 158 176 170 152 180 116 180 90 174 80 163)
                yourself()
            )
 (send ((Polygon:new())):
                type(2)
                init(268 56 238 61 201 57 159 62 125 59 111 73 118 73 102 89 46 89 7 106 7 172 78 172 69 189 0 189 0 0 319 0 319 55)
                yourself()
            )
 (send ((Polygon:new())):
                type(2)
                init(319 189 242 189 221 148 159 115 197 91 241 91 251 77 319 77)
                yourself()
            )
))
        (send gEgo:
            posn(192 222)
            loop(3)
            illegalBits(32768)
            init()
        )
        (super:init())
        (send global32:
            add(light1 light2 CashRegister shelves alienSuit1 alienSuit2 alienSuit3 alienSuit4 alienSuit5 BargainShelf dressingRoom theShop)
            eachElementDo(102)
            doit()
        )
        (send gLongSong:
            number(0)
            stop()
        )
        (send gLongSong2:
            vol(127)
            changeState()
        )
        (rmnProp:init())
        (robo:
            init()
            setLoop(Grooper)
            setCycle(Walk)
            setHeading(0)
        )
        proc0_2()
        (self:setScript(EnterShop))
        (self:setRegions(700))
    )


    (method (doit)
        (var temp0)
        (if (script)
            (send script:doit())
        )(else
            (if (((= temp0 
                (switch ((send ((User:alterEgo)):edgeHit))
                    (case 3
                        south
                    )
                )
) and local2) and local4)
                (send global2:setScript(ExitScript))
            )
        )
        (super:doit())
    )


    (method (dispose)
        (if (local2 and local4)
            (send (ScriptID(700 0)):rFlag1((| (send (ScriptID(700 0)):rFlag1) $0080)))
        )
        (if ((not proc700_3(ScriptID(700 0) 510 4) and proc700_3(ScriptID(700 0) 510 2)) and proc700_3(ScriptID(700 0) 509 128))
            (send (ScriptID(700 0)):rFlag2((| (send (ScriptID(700 0)):rFlag2) $0004)))
        )
        (if (not proc700_3(ScriptID(700 0) 510 2) and local0)
            (send (ScriptID(700 0)):rFlag2((| (send (ScriptID(700 0)):rFlag2) $0002)))
        )
        (super:dispose())
    )

)
(instance EnterShop of Script
    (properties)

    (method (changeState newState)
        (switch (= state newState)
            (case 0
                proc0_2()
                (send gEgo:setMotion(MoveTo 192 185 self))
            )
            (case 1
                (robo:setScript(roboClerkWelcome))
                (self:dispose())
            )
        )
    )

)
(instance ExitScript of rmnScript
    (properties)

    (method (changeState newState)
        (switch (= state newState)
            (case 0
                proc0_2()
                (send gEgo:setMotion(MoveTo (send gEgo:x) (+ (send gEgo:y) 10) self))
            )
            (case 1
                proc0_13(gEgo robo self)
            )
            (case 2
                (self:save1(proc0_12("How dare you try to leave without paying." 67 0 20 28 global132 29 global129 30 1)))
                = seconds 10
            )
            (case 4
                proc0_3()
                (send global2:newRoom(380))
            )
            (default 
                (self:restore())
                = cycles 1
            )
        )
    )

)
(instance roboClerkWelcome of rmnScript
    (properties)

    (method (doit)
        (super:doit())
        (if (((== state 4) and (User:canInput())) and (send gEgo:mover))
            = seconds 0
            proc0_2()
            proc0_13(gEgo robo self)
        )
    )


    (method (changeState newState)
        (var temp0)
        (switch (= state newState)
            (case 0
                localproc_1d1a()
                (if (proc999_5((send gEgo:view) 373 374) or not proc0_6(17))
                    (robo:
                        illegalBits(0)
                        xStep(5)
                        yStep(3)
                        setMotion(MoveTo 203 85 self)
                    )
                )(else
                    (self:changeState(7))
                )
            )
            (case 1
                proc0_13(robo gEgo self)
            )
            (case 2
                (send gEgo:moveHead(0))
                (if (proc999_5((send gEgo:view) 373 374))
                    (self:save1(proc0_12("I am dearly sorry, Miss. This is a male clothing store." 67 0 20 28 global132 29 global129 30 1)))
                    = state 5
                )(else
                    (if (proc700_3(ScriptID(700 0) 510 4))
                        (self:save1(proc0_12("It's you AGAIN!!  Stop wasting my time." 67 0 20 28 global132 29 global129 30 1)))
                        = state 5
                    )(else
                        (self:save1(proc0_12("Pardon me, sir. You appear to be in dire need of my services." 67 0 20 28 global132 29 global129 30 1)))
                    )
                )
                = seconds 10
            )
            (case 4
                proc0_3()
                = seconds 15
            )
            (case 5
                (self:save1(proc0_12("Let me know if there is anything I can get for you." 67 0 20 28 global132 29 global129 30 1)))
                = seconds 10
            )
            (case 7
                (send gEgo:moveHead(1))
                proc0_3()
                = cycles 1
            )
            (case 8
                (robo:setMotion(PolyPath local5[(= temp0 (* temp0 2))] local5[(+ (= temp0 Random(0 3)) 1)] self))
                = seconds 10
            )
            (case 9
                = state 7
                (robo:setHeading(Random(Random(0 180) Random(180 360))))
                = cycles Random(8 15)
            )
            (case 10
                (self:changeState(7))
            )
            (default 
                (self:restore())
                = cycles 1
            )
        )
    )

)
(instance measureEgo of rmnScript
    (properties)

    (method (changeState newState)
        (switch (= state newState)
            (case 0
                (robo:
                    view(383)
                    loop(3)
                    cel(0)
                    heading(270)
                    setCycle(CT 1 1 self)
                    cycleSpeed(1)
                )
            )
            (case 1
                (robo:setCycle(End self))
                (roboSound:
                    number(832)
                    loop(0)
                    play()
                )
            )
            (case 2
                = cycles 3
            )
            (case 3
                (robo:setCycle(Beg self))
                (roboSound:
                    number(833)
                    loop(0)
                    play()
                )
            )
            (case 4
                (roboSound:stop())
                (robo:
                    view(381)
                    setLoop(Grooper)
                    setCycle(Walk)
                    cycleSpeed(0)
                    setMotion(MoveTo 163 99 self)
                )
            )
            (case 5
                (robo:setMotion(MoveTo 138 99 self))
            )
            (case 6
                (robo:setHeading(90 self))
            )
            (case 7
                (robo:
                    view(383)
                    setLoop(0)
                    cel(0)
                    cycleSpeed(1)
                    setCycle(End self)
                )
                (roboSound:
                    number(832)
                    loop(0)
                    play()
                )
            )
            (case 8
                = cycles 3
            )
            (case 9
                (robo:setCycle(Beg self))
                (roboSound:
                    number(833)
                    loop(0)
                    play()
                )
            )
            (case 10
                (robo:
                    setLoop(1)
                    cel(0)
                    setCycle(End self)
                )
                (roboSound:
                    number(832)
                    loop(0)
                    play()
                )
            )
            (case 11
                = cycles 3
            )
            (case 12
                (roboSound:
                    number(833)
                    loop(0)
                    play()
                )
                (robo:setCycle(Beg self))
            )
            (case 13
                (roboSound:stop())
                (self:save1(proc0_12("We've got just the thing for the likes of you." 67 0 20 28 global132 29 global129 30 1)))
                = seconds 10
            )
            (case 14
                (self:restore())
                = cycles 1
            )
            (case 15
                (send (ScriptID(700 0)):rFlag2((| (send (ScriptID(700 0)):rFlag2) $0001)))
                (self:dispose())
            )
        )
    )

)
(instance getPants of rmnScript
    (properties)

    (method (changeState newState)
        (switch (= state newState)
            (case 0
                proc0_2()
                (send gEgo:moveHead(0))
                (if (proc700_3(ScriptID(700 0) 510 1))
                    = state 7
                )
                (robo:stopUpd())
                = cycles 2
            )
            (case 1
                (self:save1(proc0_12("I see. Well, alright, let me get your measurements." 67 0 20 28 global132 29 global129 30 1)))
                = seconds 10
            )
            (case 3
                (robo:startUpd())
                (if (= local1 (<= GetDistance((robo:x) (robo:y) 140 90 0) GetDistance((send gEgo:x) (send gEgo:y) 140 90 0)))
                    (robo:
                        ignoreActors(1)
                        setMotion(PolyPath 180 85 robo)
                    )
                )(else
                    (send gEgo:
                        ignoreActors(1)
                        setMotion(PolyPath 140 90 self)
                    )
                )
            )
            (case 5
                (if (local1)
                    = local1 0
                    (send gEgo:setMotion(PolyPath 140 90 self))
                )(else
                    = cycles 1
                )
            )
            (case 6
                (send ((send global2:obstacles)):delete(roboPoly))
                (robo:setMotion(MoveTo 163 90 self))
                (send gEgo:
                    ignoreActors(0)
                    illegalBits(32768)
                    setHeading(180)
                )
            )
            (case 7
                (if (not proc700_3(ScriptID(700 0) 510 1))
                    (self:setScript(measureEgo self))
                )(else
                    = cycles 1
                )
            )
            (case 8
                (robo:
                    view(381)
                    setLoop(Grooper)
                    setCycle(Walk)
                    cycleSpeed(0)
                    setMotion(PolyPath 65 89 self)
                )
            )
            (case 9
                (robo:setLoop(3))
                = cycles 6
            )
            (case 10
                (self:save1(proc0_12("I assume you'll be wanting something in the generic space hero line." 67 0 20 28 global132 29 global129 30 1)))
                = seconds 10
            )
            (case 12
                (robo:
                    view(383)
                    setLoop(7)
                    cel(0)
                    setMotion(MoveTo 48 93 self)
                )
            )
            (case 13
                (robo:
                    setLoop(8)
                    heading(180)
                )
                = cycles 2
            )
            (case 14
                (self:save1(proc0_12("These will do for you. Try them on in the dressing room here, if you wish." 67 0 20 28 global132 29 global129 30 1)))
                = seconds 10
            )
            (case 15
                (send gEgo:setMotion(PolyPath 48 100 self))
            )
            (case 17
                (send gEgo:setHeading(0))
                (robo:
                    view(381)
                    setLoop(Grooper)
                )
                = cycles 5
            )
            (case 18
                (robo:
                    setLoop(-1)
                    setMotion(PolyPath 314 68 self)
                )
                (send gEgo:
                    illegalBits(0)
                    setMotion(MoveTo 65531 (send gEgo:y))
                )
            )
            (case 19
                = cycles 5
            )
            (case 20
                (robo:
                    posn(314 100)
                    setMotion(MoveTo 243 117 self)
                )
            )
            (case 21
                Print("You change your clothes, not forgetting the items in your pocket. You never know when you'll need them.")
                = cycles 1
            )
            (case 22
                Print("You step out looking good as new.")
                (send gEgo:
                    view(0)
                    setCycle(StopWalk 4)
                    headView(4)
                    setMotion(MoveTo 48 100 self)
                )
            )
            (case 23
                (send gEgo:illegalBits(32768))
                = local2 1
                (self:save1(proc0_12("That will be 20 buckazoids, please." 67 0 20 28 global132 29 global129 30 1)))
                = seconds 10
            )
            (case 25
                (if ((>= global159 20) and local3)
                    Print("You wisely decide to pay up this time.")
                    (send gEgo:setMotion(PolyPath 188 135 self))
                )(else
                    proc0_3()
                    (send gEgo:moveHead(1))
                    (self:dispose())
                )
            )
            (case 26
                (if (local3)
                    = cycles 1
                )
            )
            (case 27
                proc0_3()
                (robo:doVerb(3 0))
                = seconds 30
            )
            (case 28
                (robo:setMotion(MoveTo 330 (robo:y) self))
            )
            (case 29
                (roboClerkWelcome:start(6))
                (robo:
                    posn(314 68)
                    setScript(roboClerkWelcome)
                )
            )
            (default 
                (self:restore())
                = cycles 1
            )
        )
    )

)
(instance roboVerbTalkStuff of rmnScript
    (properties)

    (method (dispose)
        (if (not (& (send gEgo:signal) $0002) and (send gEgo:_head))
            (send ((send gEgo:_head)):startUpd())
        )
        (super:dispose())
    )


    (method (changeState newState)
        (switch (= state newState)
            (case 0
                (if (not proc0_6(17))
                    (if (local2 and local4)
                        (self:changeState(21))
                    )(else
                        (if (proc700_3(ScriptID(700 0) 510 4))
                            (self:changeState(18))
                        )(else
                            (if (proc700_3(ScriptID(700 0) 510 2))
                                (self:changeState(7))
                            )(else
                                = cycles 1
                            )
                        )
                    )
                )(else
                    Print("You start to talk to the clerk but realize there is nothing else in here that would fit, much less be useful.")
                    (self:dispose())
                )
            )
            (case 2
                (robo:setMotion(0))
                (switch (local0)
                    (case 1
                        (if (== (robo:script) roboClerkWelcome)
                            (roboClerkWelcome:dispose())
                        )
                        proc0_13(gEgo robo)
                        proc0_13(robo gEgo)
                        = cycles 4
                    )
                    (default 
                        (self:dispose())
                    )
                )
            )
            (case 3
                (robo:stopUpd())
                (send gEgo:
                    moveHead(0)
                    stopUpd()
                )
                = cycles 2
            )
            (case 4
                (self:save1(proc0_12("I'm sorry, I lost my boots and the legs of my pants in a deadly fight with a giant sea slug, which I won in the nick of time with my clever thinking and my...uh...cleverness." 67 0 20 30 1)))
                = seconds 10
            )
            (case 6
                (robo:setScript(getPants))
                (self:dispose())
            )
            (case 7
                (robo:setMotion(0))
                (if (== (robo:script) roboClerkWelcome)
                    (roboClerkWelcome:dispose())
                )
                (if (not local3)
                    = local3 1
                    proc0_13(robo gEgo 0)
                    = cycles 2
                )(else
                    (self:dispose())
                )
            )
            (case 8
                (robo:stopUpd())
                (send gEgo:
                    moveHead(0)
                    stopUpd()
                )
                = cycles 2
            )
            (case 9
                (self:save1(proc0_12("Hello. I was hoping to make a purchase." 67 0 20 30 1)))
                = seconds 10
            )
            (case 11
                (self:save1(proc0_12("Oh, it's you! Please don't waste my time." 67 0 20 28 global132 29 global129 30 1)))
                = seconds 10
            )
            (case 13
                (self:save1(proc0_12("Please help me. That other deal was a total misunderstanding. Anyway, as I said, I've misplaced the legs of my pants. My boots seem to be missing as well." 67 0 20 30 1 67 0 10)))
                = seconds 10
            )
            (case 15
                (self:save1(proc0_12("If it will help me rid the store of you, I'll give you one more try. Come with me then." 67 0 20 28 global132 29 global129 30 1)))
                = seconds 10
            )
            (case 17
                (robo:setScript(getPants))
                (self:dispose())
            )
            (case 18
                (self:save1(proc0_12("Oh, it's you again." 67 0 20 28 global132 29 global129 30 1)))
                = seconds 10
            )
            (case 20
                (if (>= global159 20)
                    (self:changeState(11))
                )(else
                    (self:dispose())
                )
            )
            (case 21
                (send gEgo:
                    mover(0)
                    stopUpd()
                )
                = cycles 2
            )
            (case 22
                (self:save1(proc0_12("That will be 20 buckazoids, please." 67 0 20 28 global132 29 global129 30 1)))
                = seconds 30
            )
            (case 24
                (self:dispose())
            )
            (default 
                (self:restore())
                = cycles 1
            )
        )
    )

)
(instance roboVerbUseStuff of rmnScript
    (properties)

    (method (changeState newState)
        (switch (= state newState)
            (case 1
                (switch (register)
                    (case 0
                        (if (((proc0_6(17) or not local4) or not local2) or not proc999_5((send gEgo:view) 0 4))
                            (Feature:doVerb(3))
                            (self:dispose())
                        )(else
                            (if (>= global159 20)
                                proc0_2()
                                (send gEgo:setMotion(PolyPath 188 135 self))
                            )(else
                                (if (== (robo:script) getPants)
                                    (getPants:dispose())
                                )
                                (self:save1(proc0_12("You haven't the money to pay for this." 67 0 20 28 global132 29 global129 30 1)))
                                = state 4
                                = seconds 10
                            )
                        )
                    )
                    (case 10
                        (if (((proc0_6(17) or not local4) or not local2) or not proc999_5((send gEgo:view) 0 4))
                            (Feature:doVerb(3))
                            (self:dispose())
                        )(else
                            (self:save1(proc0_12("I am sorry, we don't accept ATM cards." 67 0 20 28 global132 29 global129 30 1)))
                            = state 7
                            = seconds 10
                        )
                    )
                    (default 
                        (Feature:doVerb(3))
                        (self:dispose())
                    )
                )
            )
            (case 3
                proc0_13(gEgo robo self)
            )
            (case 4
                proc0_3()
                (self:save1(proc0_12("Thank you so much for shopping with us, sir. Do come back soon." 67 0 20 28 global132 29 global129 30 1)))
                proc0_7(17)
                proc0_11(82 5)
                = local4 0
                (if (< (= global159 (- global159 20)) 1)
                    (send gEgo:put(0))
                )
                = seconds 10
            )
            (case 6
                (self:dispose())
            )
            (case 7
                (send (ScriptID(700 0)):rFlag1((| (send (ScriptID(700 0)):rFlag1) $0080)))
                (send global2:newRoom(380))
            )
            (case 9
                (self:dispose())
            )
            (default 
                (self:restore())
                = cycles 1
            )
        )
    )

)
(instance robo of Actor
    (properties
        x 235
        y 67
        description "roboclerk"
        sightAngle 90
        lookStr "This is your friendly sales clerk. He's automated and comes complete with a built-in attitude!"
        view 381
        loop 1
        illegalBits 0
    )

    (method (init param1)
        (super:init(rest param1))
        (aSound:prevSignal(-1))
    )


    (method (doit param1)
        (super:doit(rest param1))
        (if ((not local21 and not mover) and (<> (aSound:prevSignal) -1))
            (aSound:prevSignal(-1))
            (aSound:hold(0))
        )
        (if (local21)
            = local21 0
        )
        (if (mover and (== (aSound:prevSignal) -1))
            = local21 1
            (aSound:
                number(830)
                loop(0)
                play()
                prevSignal(0)
                hold(1)
            )
        )
    )


    (method (doVerb param1 param2)
        (switch (param1)
            (case 4
                (if (((not proc999_5((send gEgo:view) 373 374) and ((((robo:script) and (send ((robo:script)):isMemberOf(rmnScript))) and (== (send ((robo:script)):save1) 0)) or not (robo:script))) and (<> (self:script) getPants)) and (<> (rmnProp:script) roboVerbTalkStuff))
                    ++local0
                    (rmnProp:setScript(roboVerbTalkStuff))
                )(else
                    (super:doVerb(param1))
                )
            )
            (case 3
                (if (not (rmnProp:script))
                    (rmnProp:setScript(roboVerbUseStuff 0 param2))
                )(else
                    (super:doVerb(param1))
                )
            )
            (default 
                (super:doVerb(param1))
            )
        )
    )


    (method (cue)
        localproc_1d31()
        (getPants:cycles(2))
    )

)
(instance rmnProp of Prop
    (properties
        x 65516
        y 65516
    )
)
(instance poly1 of Polygon
    (properties
        type 2
    )
)
(instance poly2 of Polygon
    (properties
        type 2
    )
)
(instance poly3 of Polygon
    (properties
        type 2
    )
)
(instance theShop of Feature
    (properties
        nsBottom 200
        nsRight 320
        description "Big and Tall Alien store"
        sightAngle 500
        lookStr "Your first thought upon looking around here is, \"Hey, this clothing store isn't so big and tall!\" Then your brain kicks in. The store is crammed with racks of apparel for the discriminating gigantic obese alien. You silently remind yourself to start working out to get rid of those pesky fatty deposits."
    )

    (method (doVerb param1)
        (switch (param1)
            (case 1
                (super:doVerb(param1))
            )
            (case 11
                Print("The store smells very much like a clothing store.")
            )
            (default 
                0
            )
        )
    )

)
(instance dressingRoom of Feature
    (properties
        x 28
        y 58
        nsTop 33
        nsLeft 24
        nsBottom 84
        nsRight 33
        description "dressing room"
        sightAngle 90
        lookStr "This is the store's dressing room. It's empty."
    )

    (method (doVerb param1)
        (switch (param1)
            (case 11
                Print("Grabbing a whiff confirms the suspicion that others have changed clothing here. Now if they'd only change socks...")
            )
            (case 10
                Print("There is nothing here you'd want to lay the old buds on.")
            )
            (default 
                (super:doVerb(param1))
            )
        )
    )

)
(instance BargainShelf of Feature
    (properties
        x 59
        y 48
        nsTop 23
        nsLeft 37
        nsBottom 73
        nsRight 81
        description "bargain shelf"
        sightAngle 90
        lookStr "The bargain shelves are loaded with all types of great things nobody would want."
    )

    (method (doVerb param1)
        (switch (param1)
            (case 2
                (if (not proc0_6(17) and (== (robo:script) roboClerkWelcome))
                    (robo:doVerb(4))
                )(else
                    (super:doVerb(param1))
                )
            )
            (case 11
                Print("You gather in the various fragrances offered by the menage of useless items stored here. You learn only that you don't want to do it again.")
            )
            (case 10
                Print("Hey, there really is a difference in taste between the bargain brands and name brands!")
            )
            (default 
                (super:doVerb(param1))
            )
        )
    )

)
(instance alienSuit1 of Feature
    (properties
        x 36
        y 130
        nsTop 85
        nsLeft 5
        nsBottom 176
        nsRight 68
        description "alien suit 1"
        sightAngle 90
        lookStr "This looks like a pressure suit for something with upper body appendages, the likes of which you've never seen."
    )

    (method (doVerb param1)
        (switch (param1)
            (case 11
                Print("Now that's a clean smelling window.")
            )
            (case 10
                Print("Do that and your anal-retentive host might have a stroke.")
            )
            (case 2
                Print("The suits are protected inside glass cases. Besides, none of them would fit you.")
            )
            (default 
                (super:doVerb(param1))
            )
        )
    )

)
(instance alienSuit2 of Feature
    (properties
        x 133
        y 116
        nsTop 72
        nsLeft 108
        nsBottom 161
        nsRight 158
        description "alien suit #2"
        sightAngle 90
        lookStr "This suit is a replacement shell for some sort of exoskeletal wanderer. Check out those boots."
    )

    (method (doVerb param1)
        (switch (param1)
            (case 11
                Print("Now that's a clean smelling window.")
            )
            (case 10
                Print("Do that and your anal-retentive host might have a stroke.")
            )
            (case 2
                Print("The suits are protected inside glass cases. Besides, none of them would fit you.")
            )
            (default 
                (super:doVerb(param1))
            )
        )
    )

)
(instance alienSuit3 of Feature
    (properties
        x 283
        y 130
        nsTop 85
        nsLeft 256
        nsBottom 175
        nsRight 311
        description "alien suit #3"
        sightAngle 90
        lookStr "It looks like a slip cover for a snake."
    )

    (method (doVerb param1)
        (switch (param1)
            (case 11
                Print("Now that's a clean smelling window.")
            )
            (case 10
                Print("Do that and your anal-retentive host might have a stroke.")
            )
            (case 2
                Print("The suits are protected inside glass cases. Besides, none of them would fit you.")
            )
            (default 
                (super:doVerb(param1))
            )
        )
    )

)
(instance alienSuit4 of Feature
    (properties
        x 157
        y 31
        nsTop 10
        nsLeft 135
        nsBottom 53
        nsRight 180
        description "alien suit #4"
        sightAngle 90
        lookStr "The well dressed alien will want to be seen in this lovely ensemble. Perfect for those nights out at the solar ballet."
    )

    (method (doVerb param1)
        (switch (param1)
            (case 11
                Print("Now that's a clean smelling window.")
            )
            (case 10
                Print("Do that and your anal-retentive host might have a stroke.")
            )
            (case 2
                Print("The suits are protected inside glass cases. Besides, none of them would fit you.")
            )
            (default 
                (super:doVerb(param1))
            )
        )
    )

)
(instance alienSuit5 of Feature
    (properties
        x 236
        y 32
        nsTop 10
        nsLeft 214
        nsBottom 54
        nsRight 258
        description "alien suit #5"
        sightAngle 90
        lookStr "This one looks like it might have been designed for ceremonial functions."
    )

    (method (doVerb param1)
        (switch (param1)
            (case 11
                Print("Now that's a clean smelling window.")
            )
            (case 10
                Print("Do that and your anal-retentive host might have a stroke.")
            )
            (case 2
                Print("The suits are protected inside glass cases. Besides, none of them would fit you.")
            )
            (default 
                (super:doVerb(param1))
            )
        )
    )

)
(instance shelves of Feature
    (properties
        x 109
        y 31
        nsTop 10
        nsLeft 100
        nsBottom 53
        nsRight 119
        description "shelves"
        sightAngle 90
        lookStr "The reduced-cost shelf is stocked full of wonderful crap."
    )

    (method (doVerb param1)
        (switch (param1)
            (case 2
                Print("I'm sure the clerk would almost be glad to help you.")
            )
            (case 11
                Print("You gather in the various fragrances offered by the menage of useless items stored here. You learn only that you don't want to do it again.")
            )
            (case 10
                Print("Want more fiber in your diet?")
            )
            (default 
                (super:doVerb(param1))
            )
        )
    )

)
(instance CashRegister of Feature
    (properties
        x 205
        y 129
        z 32
        nsTop 90
        nsLeft 189
        nsBottom 105
        nsRight 221
        description "cash register"
        sightAngle 90
        lookStr "It's a Beancounter 200 revenue collection device."
    )

    (method (doVerb param1 param2)
        (switch (param1)
            (case 3
                (if (not (rmnProp:script))
                    (rmnProp:setScript(roboVerbUseStuff 0 param2))
                )
            )
            (case 2
                Print("You start to mess with the register but quickly cease when you notice a sign which reads \"Warning! Unauthorized users will be killed on sight!\" These Beancounter folks take your money seriously.")
            )
            (case 11
                Print("The heady scent of currency emanates from the revenue collection device.")
            )
            (case 10
                Print("The dull taste of cold metal leaves you wanting for more.")
            )
            (default 
                (super:doVerb(param1))
            )
        )
    )

)
(instance light1 of Feature
    (properties
        x 23
        y 189
        z 174
        nsTop 10
        nsLeft 9
        nsBottom 20
        nsRight 37
        description "light"
        sightAngle 90
        lookStr "Small fixtures emit rays of visible light greatly aiding the sighted shopper."
    )
)
(instance light2 of Feature
    (properties
        x 295
        y 189
        z 174
        nsTop 10
        nsLeft 282
        nsBottom 21
        nsRight 309
        description "light"
        sightAngle 90
        lookStr "Small fixtures emit rays of visible light greatly aiding the sighted shopper."
    )
)
(instance roboPoly of Polygon
    (properties
        type 2
    )
)
(instance roboSound of Sound
    (properties)
)
(instance aSound of Sound
    (properties)
)
