(version 2)
(include "sci.sh")
(exports
    0 GloryWindow
)
(use "Main")
(use "SysWindow")
(script 22)


(local
    local0

)
(procedure (localproc_01c4 param1 param2 param3 param4 param5 param6 param7 param8 param9 param10)
    (var temp0)
    = temp0 GetPort()
    SetPort(0)
    Graph(grFILL_BOX - param1 3 - param2 20 + param3 4 + param4 21 param10 57 param9)
    Graph(grDRAW_LINE - param1 1 + param2 1 - param1 1 - param4 1 58 -1 -1)
    Graph(grDRAW_LINE - param1 3 param2 - param1 3 param4 21 -1 -1)
    Graph(grDRAW_LINE + param1 10 - param2 2 - param3 10 - param2 2 58 -1 -1)
    Graph(grDRAW_LINE - param1 2 - param2 20 + param3 3 - param2 20 21 -1 -1)
    Graph(grDRAW_LINE + param1 3 - param2 18 - param3 3 - param2 18 58 -1 -1)
    Graph(grDRAW_LINE + param1 10 - param2 14 - param3 10 - param2 14 19 -1 -1)
    Graph(grDRAW_LINE + param1 10 - param2 13 - param3 10 - param2 13 20 -1 -1)
    Graph(grDRAW_LINE + param1 10 - param2 12 - param3 10 - param2 12 21 -1 -1)
    Graph(grDRAW_LINE + param1 10 - param2 11 - param3 10 - param2 11 22 -1 -1)
    Graph(grDRAW_LINE + param1 10 - param2 10 - param3 10 - param2 10 23 -1 -1)
    Graph(grDRAW_LINE + param1 10 - param2 9 - param3 10 - param2 9 22 -1 -1)
    Graph(grDRAW_LINE + param1 10 - param2 8 - param3 10 - param2 8 21 -1 -1)
    Graph(grDRAW_LINE + param1 10 - param2 7 - param3 10 - param2 7 20 -1 -1)
    Graph(grDRAW_LINE + param1 10 - param2 6 - param3 10 - param2 6 56 -1 -1)
    Graph(grDRAW_LINE + param1 10 + param4 2 - param3 10 + param4 2 58 -1 -1)
    Graph(grDRAW_LINE - param1 2 + param4 20 + param3 3 + param4 20 21 -1 -1)
    Graph(grDRAW_LINE + param1 3 + param4 18 - param3 3 + param4 18 58 -1 -1)
    Graph(grDRAW_LINE + param1 10 + param4 14 - param3 10 + param4 14 19 -1 -1)
    Graph(grDRAW_LINE + param1 10 + param4 13 - param3 10 + param4 13 20 -1 -1)
    Graph(grDRAW_LINE + param1 10 + param4 12 - param3 10 + param4 12 21 -1 -1)
    Graph(grDRAW_LINE + param1 10 + param4 11 - param3 10 + param4 11 22 -1 -1)
    Graph(grDRAW_LINE + param1 10 + param4 10 - param3 10 + param4 10 23 -1 -1)
    Graph(grDRAW_LINE + param1 10 + param4 9 - param3 10 + param4 9 22 -1 -1)
    Graph(grDRAW_LINE + param1 10 + param4 8 - param3 10 + param4 8 21 -1 -1)
    Graph(grDRAW_LINE + param1 10 + param4 7 - param3 10 + param4 7 20 -1 -1)
    Graph(grDRAW_LINE + param1 10 + param4 6 - param3 10 + param4 6 56 -1 -1)
    Graph(grDRAW_LINE + param3 1 + param2 1 + param3 1 - param4 1 58 -1 -1)
    Graph(grDRAW_LINE + param3 3 param2 + param3 3 param4 21 -1 -1)
    DrawCel(935 0 0 - param2 20 - param1 3 -1)
    DrawCel(935 0 1 + param4 1 - param1 3 -1)
    DrawCel(935 0 2 - param2 20 - param3 9 -1)
    DrawCel(935 0 3 + param4 1 - param3 9 -1)
    SetPort(temp0)
)


(procedure (localproc_063e param1)
    (var temp0, temp1)
    = temp1 
        (if (> (send param1:bottom) 185)
            (- 185 (send param1:bottom))
        )(else
            (if (< (send param1:top) 10)
                (- 10 (send param1:top))
            )(else
                0
            )
        )
    = temp0 
        (if (> (send param1:right) 315)
            (- 315 (send param1:right))
        )(else
            (if (< (send param1:left) 5)
                (- 5 (send param1:left))
            )(else
                0
            )
        )
    (send param1:
        top(+ (send param1:top) temp1)
        bottom(+ (send param1:bottom) temp1)
        left(+ (send param1:left) temp0)
        right(+ (send param1:right) temp0)
    )
)


(class public GloryWindow of SysWindow
    (properties
        top 0
        left 0
        bottom 0
        right 0
        color 17
        back 57
        priority 15
        window 0
        type $0000
        title 0
        brTop 0
        brLeft 0
        brBottom 190
        brRight 320
        lsTop 0
        lsLeft 0
        lsBottom 0
        lsRight 0
        eraseOnly 0
        underBits 0
        pUnderBits 0
        innerBordColor 21
        midBordColor 58
        outerBordColor 53
        yOffset 0
        updateList 0
    )

    (method (dispose)
        = top (- top 3)
        = right (- right 3)
        SetPort(0)
        Graph(grRESTORE_BOX underBits)
        Graph(grRESTORE_BOX pUnderBits)
        (if (eraseOnly)
            Graph(grUPDATE_BOX lsTop lsLeft lsBottom lsRight 1)
        )(else
            Graph(grREDRAW_BOX lsTop lsLeft lsBottom lsRight)
        )
        (if (window)
            DisposeWindow(window eraseOnly)
            = window 0
        )
        (if ((== gGloryWindow_2 self) and global449)
            PalVary(pvPAUSE_RESUME 0)
            = gGloryWindow_2 0
            proc0_5(121)
            = global449 0
        )
        DisposeClone(self)
    )


    (method (open)
        (var temp0, temp1, temp2[3])
        SetPort(0)
        = temp1 1
        (if (<> priority -1)
            = temp1 (| temp1 $0002)
        )
        localproc_063e(self)
        = top (- top yOffset)
        = lsTop (- top 3)
        = lsLeft (- left 20)
        = lsRight (+ right 21)
        = lsBottom (+ bottom 4)
        = underBits Graph(grSAVE_BOX lsTop lsLeft lsBottom lsRight 1)
        (if (<> priority -1)
            = pUnderBits Graph(grSAVE_BOX lsTop lsLeft lsBottom lsRight 2)
        )
        localproc_01c4(top left bottom right back innerBordColor midBordColor outerBordColor priority temp1)
        Graph(grUPDATE_BOX lsTop lsLeft lsBottom lsRight 1)
        = bottom (+ bottom 4)
        = right (+ right 4)
        = type 131
        (if (not global449)
            = global449 PalVary(pvGET_CURRENT_STEP)
        )
        (if (((<> global449 0) and (<> global449 64)) and not proc0_6(121))
            = gGloryWindow_2 self
            proc0_4(121)
            PalVary(pvPAUSE_RESUME 1)
        )
        (super:open())
    )

)
