home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Pier Shareware 6
/
The_Pier_Shareware_Number_6_(The_Pier_Exchange)_(1995).iso
/
004
/
cw_dm_17.zip
/
DOORMENU.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1994-09-30
|
11KB
|
441 lines
;------------------------------------------------------------------------------
; .ss.
; `²²'
; .,sS$Ss,,s$ .,sS$$$Ss. .,sS$Ss,,s$ .ss. .sSs.
; .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
; $$$' .$$$' $$$²Sçsµ²' .$$$' .$$$'.$$$' .$$$' `$$b.
; $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$' ;$$$
; `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
; .sS²°$$$²²°"' d²°'
; .$$² .$$'
; $$$.,d$$'
; `²S$$S²'
;------------------------------------------------------------------------------
; P.P.L.X. 2.OO (C)1996 - Lone Runner / AEGiS CoRP'96
;------------------------------------------------------------------------------
; PPE 3.O1 (Encryption type I) - Analysis ON - Postprocessing ON
;------------------------------------------------------------------------------
Integer INTEGER001
Integer INTEGER002
Integer INTEGER003
Integer INTEGER004
Integer INTEGER005
Integer INTEGER006
Integer INTEGER007
Integer INTEGER008
Integer INTEGER009
Integer INTEGER010
Integer INTEGER011
Integer INTEGER012
Integer INTEGER013
Integer INTEGER014
Integer INTEGER015
String STRING001
String STRING002
String STRING003
String STRING004
String STRING005
String STRING006
String STRING007
String STRING008
String STRING009
String STRING010
String STRING011
String STRING012
String STRING013
String STRING014
String STRING015
String STRING016
String STRING017
String STRING018
String STRING019
String STRING020
String STRING021
String STRING022
String STRING023
String STRING024
String STRING025
String STRING026
String STRING027
String STRING028
String STRING029
String STRING030
String STRING031
String STRING032
String STRING033
String STRING034
String STRING035
String STRING036
String STRING037
String STRING038
String STRING039
String STRING040
String STRING041
String STRING042
String STRING043
;------------------------------------------------------------------------------
If (INTEGER009 == 1) Then
INTEGER009 = "CRW"
Beep
Endif
STRING005 = TokenStr()
INTEGER008 = STRING005
If (!(Strip(STRING005, Chr(32)) == "")) STRING007 = "Y"
INTEGER010 = 36
STRING033 = PPEPath() + PPEName() + ".CNF"
STRING041 = 58053
STRING039 = "N"
STRING042 = "U" + "n" + "r" + "e" + "g" + "i" + "s" + "t" + "e" + "r" + "e" + "d"
If (PPEName() == "SUBSCRIP") STRING040 = 46554
If (PPEName() == "FONE-VER") STRING040 = 34479
If (PPEName() == "PRO-VOTE") STRING040 = 57877
If (PPEName() == "CONFMENU") STRING040 = 27062
If (PPEName() == "FILEMENU") STRING040 = 14513
If (PPEName() == "MAINMENU") STRING040 = 25781
If (PPEName() == "DOORMENU") STRING040 = 44910
If (PPEName() == "AUTOPOST") STRING040 = 61482
If (PPEName() == "BBSLISTR") STRING040 = 11832
If (PPEName() == "REMINDME") STRING040 = 54925
If (PPEName() == "TIMEZONE") STRING040 = 38318
If (PPEName() == "USERNEWS") STRING040 = 31171
If (PPEName() == "MSGQUEST") STRING040 = 50024
If (PPEName() == "BIRTHDAY") STRING040 = 19645
If (PPEName() == "HOWHEARD") STRING040 = 42868
If (PPEName() == "WELCOMAT") STRING040 = 23034
If (Exist(STRING033)) Then
FOpen 1, STRING033, 0, 0
FGet 1, STRING028
FGet 1, INTEGER013
FGet 1, INTEGER012
FClose 1
Else
Select Case (PPEName())
Case "MAINT"
STRING033 = PPEPath() + "PRO-VOTE.CNF"
Case "CMW"
STRING033 = PPEPath() + "CONFMENU.CNF"
Case "INTELAPP"
STRING033 = PPEPath() + "INTELEC.CNF"
Case Else
PrintLn "@X0CError - Config file not found - Please notify SysOp"
End
Endif
End Select
Tokenize STRING028
GetToken STRING037
GetToken STRING038
If (INTEGER013 == 0) Then
STRING039 = "N"
Goto LABEL003
Else
Goto LABEL001
Endif
:LABEL001
STRING034 = Left(STRING037, 1)
STRING035 = Left(STRING038, 2)
STRING036 = STRING034 + STRING035
If (STRING034 == "A") INTEGER014 = 8408
If (STRING034 == "B") INTEGER014 = 9119
If (STRING034 == "C") INTEGER014 = 6619
If (STRING034 == "D") INTEGER014 = 4820
If (STRING034 == "E") INTEGER014 = 7325
If (STRING034 == "F") INTEGER014 = 2928
If (STRING034 == "G") INTEGER014 = 2031
If (STRING034 == "H") INTEGER014 = 1934
If (STRING034 == "I") INTEGER014 = 5534
If (STRING034 == "J") INTEGER014 = 4737
If (STRING034 == "K") INTEGER014 = 9242
If (STRING034 == "L") INTEGER014 = 3743
If (STRING034 == "M") INTEGER014 = 6546
If (STRING034 == "N") INTEGER014 = 8355
If (STRING034 == "O") INTEGER014 = 2859
If (STRING034 == "P") INTEGER014 = 4660
If (STRING034 == "Q") INTEGER014 = 7463
If (STRING034 == "R") INTEGER014 = 1164
If (STRING034 == "S") INTEGER014 = 6471
If (STRING034 == "T") INTEGER014 = 3973
If (STRING034 == "U") INTEGER014 = 5674
If (STRING034 == "V") INTEGER014 = 5782
If (STRING034 == "W") INTEGER014 = 3885
If (STRING034 == "X") INTEGER014 = 8287
If (STRING034 == "Y") INTEGER014 = 7591
If (STRING034 == "Z") INTEGER014 = 1096
INTEGER011 = S2I(STRING036, INTEGER010) + INTEGER013 + STRING040 + INTEGER014
INTEGER015 = S2I(STRING036, INTEGER010) + INTEGER013 + STRING041 + INTEGER014
If (INTEGER012 == INTEGER011) Goto LABEL002
If (INTEGER012 == INTEGER015) Goto LABEL002
Goto LABEL013
:LABEL002
STRING039 = "Y"
If (Len(INTEGER013) == 1) STRING030 = "000"
If (Len(INTEGER013) == 2) STRING030 = "00"
If (Len(INTEGER013) == 3) STRING030 = "0"
If (Len(INTEGER013) == 4) STRING030 = ""
STRING031 = INTEGER013
STRING032 = STRING030 + STRING031
STRING029 = Space(30 - Len(STRING028))
:LABEL003
STRING043 = "CRW"
STRING009 = "1.7 "
INTEGER002 = 0
FOpen 1, STRING033, 0, 0
FGet 1, STRING028
FGet 1, INTEGER013
FGet 1, INTEGER012
FClose 1
STRING015 = PPEPath() + "DOORMENU.DES"
STRING006 = PPEPath() + String(CurConf()) + ".MNU"
If (!Exist(STRING006)) STRING006 = PPEPath() + "0.MNU"
FOpen 1, STRING006, 0, 0
FGet 1, STRING008
FClose 1
If (STRING007 == "Y") Goto LABEL015
If (STRING039 == "N") Then
STRING010 = "@X0BDoorMenu v" + STRING009 + " # " + "@X0F" + STRING042 + "@X0B" + " ■ " + STRING028
Endif
If (STRING039 == "Y") Then
STRING010 = "@X0BDoorMenu v" + STRING009 + " #@X0F" + STRING032 + "@X0B ■ " + STRING028
Endif
INTEGER003 = 0
FOpen 1, STRING008, 0, 0
:LABEL004
FGet 1, STRING002
If (!(STRING002 == "")) INTEGER003 = INTEGER003 + 1
If (STRING002 == "") Goto LABEL005
Goto LABEL004
:LABEL005
FClose 1
Cls
FOpen 1, STRING008, 0, 0
:LABEL006
FGet 1, STRING002
STRING016 = ""
If (STRING002 == "") Goto LABEL009
STRING002 = Replace(STRING002, Chr(44), Chr(59))
Tokenize STRING002
GetToken STRING013
GetToken STRING012
GetToken STRING014
FOpen 2, STRING015, 0, 0
:LABEL007
FGet 2, STRING003
FGet 2, STRING004
If (STRING003 == "") Goto LABEL008
If (STRING003 == STRING013) Then
STRING016 = STRING004
Else
Goto LABEL007
Endif
:LABEL008
FClose 2
INTEGER006 = 10 - Len(STRING013)
For INTEGER005 = 1 To INTEGER006
STRING013 = String(STRING013) + " "
Next
If (INTEGER001 == 0) Gosub LABEL012
INTEGER002 = INTEGER002 + 1
INTEGER001 = INTEGER001 + 1
If (INTEGER001 == 1) STRING018 = STRING013
If (INTEGER001 == 2) STRING019 = STRING013
If (INTEGER001 == 3) STRING020 = STRING013
If (INTEGER001 == 4) STRING021 = STRING013
If (INTEGER001 == 5) STRING022 = STRING013
If (INTEGER001 == 6) STRING023 = STRING013
If (INTEGER001 == 7) STRING024 = STRING013
If (INTEGER001 == 8) STRING025 = STRING013
If (INTEGER001 == 9) STRING026 = STRING013
If (INTEGER001 == 10) STRING027 = STRING013
If (Len(INTEGER002) == 1) STRING017 = " "
If (Len(INTEGER002) == 2) STRING017 = " "
If (Len(INTEGER002) == 3) STRING017 = ""
If (Len(STRING014) == 1) STRING011 = " "
If (Len(STRING014) == 2) STRING011 = " "
If (Len(STRING014) == 3) STRING011 = ""
STRING002 = "@X0A" + STRING017 + String(INTEGER002) + "@X0F " + STRING013 + "@X0B" + STRING011 + STRING014 + " @X0F " + STRING016
PrintLn STRING002
If ((INTEGER001 == 10) && !(INTEGER002 == INTEGER003)) Gosub LABEL010
Goto LABEL006
:LABEL009
STRING001 = ""
FClose 1
PrintLn
InputStr "@X0EEnter the DOOR # to Open (Enter)=none", STRING001, 11, 20, " " + Mask_Num() + Mask_Alpha(), 8
INTEGER007 = STRING001
Gosub LABEL014
If (STRING001 == "") Then
STRING001 = Chr(13)
KbdString STRING001
End
Endif
If (INTEGER007 > INTEGER003) Then
STRING001 = Chr(13)
KbdString STRING001
End
Endif
If ((INTEGER007 > INTEGER002) || ((INTEGER007 <= INTEGER002 - INTEGER001) && (INTEGER007 > 0))) Then
STRING001 = Chr(13)
KbdString STRING001
End
Endif
STRING001 = STRING001 + Chr(13)
KbdString STRING001
End
:LABEL010
DefColor
STRING001 = ""
INTEGER001 = 0
PrintLn
InputStr "@X0EEnter the DOOR # to Open (Q)=Quit (Enter)=Next Screen", STRING001, 11, 20, " " + Mask_Num() + Mask_Alpha(), 8
INTEGER007 = STRING001
If (STRING001 == "Q") Goto LABEL011
Gosub LABEL014
If ((INTEGER007 > INTEGER002) || ((INTEGER007 <= INTEGER002 - 10) && (INTEGER007 > 0))) Return
If (STRING001 == "") Return
STRING001 = STRING001 + Chr(13)
KbdString STRING001
End
:LABEL011
FClose 1
STRING001 = Chr(13)
KbdString STRING001
End
:LABEL012
Cls
PrintLn STRING010
PrintLn
PrintLn " @X0D┌─@X0B Door No. @X0D┌─@X0B Security Level Required (Yours is @X0F@SECURITY@@X0B)"
PrintLn " @X0D│ ┌─@X0B Name @X0D│ ┌────────────────────@X0B Door Description@X0D ────────────────────┐"
PrintLn " @X0D│ │ │ │ │"
Return
:LABEL013
Cls
PrintLn
PrintLn "Invalid Registration Code!"
Delay 182
End
:LABEL014
If ((((((((((STRING001 == "1") || (STRING001 == "11")) || (STRING001 == "21")) || (STRING001 == "31")) || (STRING001 == "41")) || (STRING001 == "51")) || (STRING001 == "61")) || (STRING001 == "71")) || (STRING001 == "81")) || (STRING001 == "91")) Then
STRING001 = STRING018
Return
Endif
If ((((((((((STRING001 == "2") || (STRING001 == "12")) || (STRING001 == "22")) || (STRING001 == "32")) || (STRING001 == "42")) || (STRING001 == "52")) || (STRING001 == "62")) || (STRING001 == "72")) || (STRING001 == "82")) || (STRING001 == "92")) Then
STRING001 = STRING019
Return
Endif
If ((((((((((STRING001 == "3") || (STRING001 == "13")) || (STRING001 == "23")) || (STRING001 == "33")) || (STRING001 == "43")) || (STRING001 == "53")) || (STRING001 == "63")) || (STRING001 == "73")) || (STRING001 == "83")) || (STRING001 == "93")) Then
STRING001 = STRING020
Return
Endif
If ((((((((((STRING001 == "4") || (STRING001 == "14")) || (STRING001 == "24")) || (STRING001 == "34")) || (STRING001 == "44")) || (STRING001 == "54")) || (STRING001 == "64")) || (STRING001 == "74")) || (STRING001 == "84")) || (STRING001 == "94")) Then
STRING001 = STRING021
Return
Endif
If ((((((((((STRING001 == "5") || (STRING001 == "15")) || (STRING001 == "25")) || (STRING001 == "35")) || (STRING001 == "45")) || (STRING001 == "55")) || (STRING001 == "65")) || (STRING001 == "75")) || (STRING001 == "85")) || (STRING001 == "95")) Then
STRING001 = STRING022
Return
Endif
If ((((((((((STRING001 == "6") || (STRING001 == "16")) || (STRING001 == "26")) || (STRING001 == "36")) || (STRING001 == "46")) || (STRING001 == "56")) || (STRING001 == "66")) || (STRING001 == "76")) || (STRING001 == "86")) || (STRING001 == "96")) Then
STRING001 = STRING023
Return
Endif
If ((((((((((STRING001 == "7") || (STRING001 == "17")) || (STRING001 == "27")) || (STRING001 == "37")) || (STRING001 == "47")) || (STRING001 == "57")) || (STRING001 == "67")) || (STRING001 == "77")) || (STRING001 == "87")) || (STRING001 == "97")) Then
STRING001 = STRING024
Return
Endif
If ((((((((((STRING001 == "8") || (STRING001 == "18")) || (STRING001 == "28")) || (STRING001 == "38")) || (STRING001 == "48")) || (STRING001 == "58")) || (STRING001 == "68")) || (STRING001 == "78")) || (STRING001 == "88")) || (STRING001 == "98")) Then
STRING001 = STRING025
Return
Endif
If ((((((((((STRING001 == "9") || (STRING001 == "19")) || (STRING001 == "29")) || (STRING001 == "39")) || (STRING001 == "49")) || (STRING001 == "59")) || (STRING001 == "69")) || (STRING001 == "79")) || (STRING001 == "89")) || (STRING001 == "99")) Then
STRING001 = STRING026
Return
Endif
If ((((((((((STRING001 == "10") || (STRING001 == "20")) || (STRING001 == "30")) || (STRING001 == "40")) || (STRING001 == "50")) || (STRING001 == "60")) || (STRING001 == "70")) || (STRING001 == "80")) || (STRING001 == "00")) || (STRING001 == "100")) Then
STRING001 = STRING027
Return
Endif
Return
:LABEL015
FOpen 1, STRING015, 0, 0
For INTEGER004 = 1 To INTEGER008
FGet 1, STRING005
FGet 1, STRING002
Next
FClose 1
KbdString STRING005 + Chr(13)
End
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 9 End
; 3 Cls
; 45 Goto
; 127 Let
; 11 PrintLn
; 100 If
; 7 FOpen
; 8 FClose
; 13 FGet
; 1 DefColor
; 2 InputStr
; 4 Gosub
; 14 Return
; 1 Delay
; 2 Tokenize
; 5 GetToken
; 1 Beep
; 7 KbdString
;
;
; ■ Functions used :
;
; 62 +
; 4 -
; 184 ==
; 2 <
; 4 <=
; 5 >
; 4 >=
; 28 !
; 7 &&
; 94 ||
; 12 Len(
; 2 Left()
; 1 Space()
; 10 Chr()
; 1 Replace()
; 1 Strip()
; 3 String()
; 2 Mask_Alpha()
; 2 Mask_Num()
; 1 CurConf()
; 7 PPEPath()
; 2 Exist()
; 2 S2I()
; 1 TokenStr()
; 20 PPEName()
;
;------------------------------------------------------------------------------
;
; Analysis flags : No flag
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 2 For/Next
; 0 While/EndWhile
; 19 If/Then or If/Then/Else
; 1 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------