home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Carsten's PPE Collection
/
Carstens_PPE_Collection_2007.zip
/
S
/
SCUM-LN3.ZIP
/
SCUMLINE.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1994-08-16
|
7KB
|
398 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 2.OO (plain) - Analysis ON - Postprocessing ON
;------------------------------------------------------------------------------
Integer INTEGER001
Integer INTEGER002
Integer INTEGER003
Integer INTEGER004
Integer INTEGER005
Integer INTEGER006
Integer INTEGER007
Integer INTEGER008
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 TSTRING021(100)
String STRING022
String STRING023
String STRING024
String STRING025
;------------------------------------------------------------------------------
:LABEL001
Cls
STRING025 = Left(Time(), 5)
INTEGER001 = ReadLine(PPEPath() + "SCUMLINE.CFG", 1)
INTEGER002 = ReadLine(PPEPath() + "SCUMLINE.CFG", 2)
STRING001 = ReadLine(PPEPath() + "SCUMLINE.CFG", 3)
STRING002 = Right(STRING001, 1)
STRING003 = STRING002
STRING004 = ""
STRING005 = ReadLine(PPEPath() + "SCUMLINE.CFG", 4)
STRING006 = ReadLine(PPEPath() + "SCUMLINE.CFG", 5)
STRING007 = ReadLine(PPEPath() + "SCUMLINE.CFG", 6)
STRING008 = ReadLine(PPEPath() + "SCUMLINE.CFG", 7)
STRING009 = ReadLine(PPEPath() + "SCUMLINE.CFG", 8)
STRING010 = ReadLine(PPEPath() + "SCUMLINE.CFG", 9)
STRING011 = ReadLine(PPEPath() + "SCUMLINE.CFG", 10)
STRING012 = ReadLine(PPEPath() + "SCUMLINE.CFG", 11)
STRING013 = ReadLine(PPEPath() + "SCUMLINE.CFG", 12)
STRING014 = ReadLine(PPEPath() + "SCUMLINE.CFG", 13)
STRING015 = PPEPath() + "SCUMLINE.DAT"
GetUser
If (CurSec() < INTEGER002) Then
End
Endif
If ((STRING012 == "YES") && (CurSec() >= STRING013)) Then
STRING006 = STRING007
Endif
FOpen 1, PPEPath() + "BLACK.LST", 2, 0
:LABEL002
If (Ferr(1)) Goto LABEL003
FGet 1, STRING016
If (STRING016 == U_Name()) Then
STRING017 = "TRUE"
Endif
Goto LABEL002
:LABEL003
FClose 1
If (Exist(STRING015)) Goto LABEL004
FCreate 5, STRING015, 1, 0
For INTEGER004 = 1 To INTEGER001
INTEGER008 = Random(2)
Select Case (INTEGER008)
Case 0
STRING024 = "@X07S@X08cum @X09K@X01icks @X0FA@X07ss!"
Case 1
STRING024 = "@X0CS@X04CuM 94' @X0CR@X04ocks!"
Case 2
STRING024 = "@X0AS@X02cumliners @X03v3.o @X0AB@X02y: @X0Br@X03y0 @X0DS@X05CuM @X0DP@X05roductions 94'"
End Select
FPutLn 5, STRING024
Next
FClose 5
:LABEL004
StartDisp 1
Cls
If (Exist(PPEPath() + "SCUMLINE.TOP")) Then
DispFile PPEPath() + "SCUMLINE.TOP", 1
Endif
AnsiPos 1, GetY() - 1
For INTEGER004 = 1 To INTEGER001
PrintLn STRING005 + " " + ReadLine(STRING015, INTEGER004)
Next
If (Exist(PPEPath() + "SCUMLINE.BOT")) Then
DispFile PPEPath() + "SCUMLINE.BOT", 1
Endif
Newline
InputStr STRING006 + " _", STRING023, 0, 1, "eEWw", 8
If ((STRING023 == "E") && (STRING017 <> "TRUE")) Goto LABEL005
If ((STRING023 == "E") && (STRING017 == "TRUE")) Then
Newlines 3
PrintLn "@X0CYou Have Been Denied The Priveledge Of Using These Oneliners!"
Newline
Wait
Goto LABEL001
Endif
If ((STRING023 <> "W") && (STRING023 <> "E")) Goto LABEL011
Cls
If ((STRING012 <> "YES") || (CurSec() < STRING013)) Goto LABEL001
If (!Exist(PPEPath() + "WHO.DAT")) Gosub LABEL013
If (Exist(PPEPath() + "SCUMLINE.TOP")) Then
DispFile PPEPath() + "SCUMLINE.TOP", 1
Endif
AnsiPos GetX(), GetY() - 1
DispFile PPEPath() + "WHO.DAT", 1
If (Exist(PPEPath() + "SCUMLINE.BOT")) Then
DispFile PPEPath() + "SCUMLINE.BOT", 1
Endif
Wait
Goto LABEL001
:LABEL005
Cls
PrintLn " @X08Scumliners..@X08 v3.o"
PrintLn " By: @X0Br@X03y0 @X08== @X0CS@X04CuM @X0CP@X04roductions 94'"
PrintLn
INTEGER007 = GetY()
INTEGER006 = INTEGER007 + 2
STRING019 = ""
STRING008 = ReadLine(PPEPath() + "SCUMLINE.CFG", 7)
INTEGER005 = Len(StripAtx(STRING008)) + 2
AnsiPos 1, INTEGER007
Print "@X08<@X0" + STRING003 + "COLOR@X08>" + " (@X07@X03{@X08/@X03} @X0Bto change@X08)"
Newlines 2
Print STRING008 + "@X0" + STRING003
STRING020 = ""
While (STRING020 <> Chr(13)) Do
If (INTEGER005 >= 79) Then
Inc INTEGER006
INTEGER005 = Len(StripAtx(STRING008)) + 2
AnsiPos INTEGER005, INTEGER006
Else
AnsiPos INTEGER005, INTEGER006
Endif
STRING020 = ""
While (STRING020 == "") Do
STRING020 = Inkey()
If (Len(STRING020) <> 1) STRING020 = ""
EndWhile
KeyFlush
If (STRING020 == Chr(8)) Then
If ((INTEGER005 <= Len(StripAtx(STRING008)) + 2) && (INTEGER006 <> INTEGER007 + 2)) Then
INTEGER005 = 79
INTEGER006 = INTEGER006 - 1
AnsiPos INTEGER005, INTEGER006
Endif
If (INTEGER005 > Len(StripAtx(STRING008)) + 2) Then
If (Mid(STRING019, Len(STRING019) - 4, 2) <> "@X") Then
STRING019 = Left(STRING019, Len(STRING019) - 1)
Goto LABEL006
Endif
STRING019 = Left(STRING019, Len(STRING019) - 5)
:LABEL006
Backup 1
Print " "
Backup 1
Dec INTEGER005
STRING004 = 0
Endif
Continue
Endif
If (STRING020 == Chr(125)) Then
If (STRING002 < 14) Then
Inc STRING002
STRING003 = STRING002
Gosub LABEL014
AnsiPos 1, INTEGER007
Print "@X08<@X0" + STRING003 + "COLOR@X08>" + " (@X07@X03{@X08/@X03} @X0Bto change@X08)"
Goto LABEL007
Endif
:LABEL007
Continue
Endif
If (STRING020 == Chr(123)) Then
If (STRING002 >= 2) Then
Dec STRING002
STRING003 = STRING002
Gosub LABEL014
AnsiPos 1, INTEGER007
Print "@X08<@X0" + STRING003 + "COLOR@X08>" + " (@X07@X03{@X08/@X03} @X0Bto change@X08)"
Goto LABEL008
Endif
:LABEL008
Continue
Endif
If (STRING020 == Chr(13)) Then
Continue
Endif
If (Len(StripAtx(STRING019)) <= 80 - Len(STRING005)) Then
If (STRING003 <> STRING004) Then
Print "@X0" + STRING003
STRING004 = STRING003
STRING019 = STRING019 + "@X0" + STRING003
Endif
Print STRING020
STRING019 = STRING019 + STRING020
Inc INTEGER005
Endif
EndWhile
If (StripAtx(STRING019) == "") Goto LABEL001
Log StripAtx(STRING019), 1
Log "@USER@ Wrote This SCuMLiNeR At (" + STRING025 + "): ", 1
:LABEL009
FOpen 7, PPEPath() + "SCUMLINE.DAT", 0, 0
For INTEGER004 = 1 To INTEGER001
FGet 7, TSTRING021(INTEGER004)
Next
FClose 7
TSTRING021(INTEGER001 + 1) = STRING019
FCreate 4, PPEPath() + "SCUMLINE.DAT", 1, 0
For INTEGER004 = 2 To INTEGER001 + 1
FPutLn 4, TSTRING021(INTEGER004)
Next
FClose 4
If (STRING012 == "YES") Then
If (!Exist(PPEPath() + "WHO.DAT")) Gosub LABEL013
FOpen 3, PPEPath() + "WHO.DAT", 2, 0
For INTEGER004 = 1 To INTEGER001
FGet 3, TSTRING021(INTEGER004)
Next
FClose 3
FCreate 4, PPEPath() + "WHO.DAT", 1, 0
For INTEGER004 = 2 To INTEGER001
FPutLn 4, TSTRING021(INTEGER004)
Next
If (STRING019 == STRING011) Then
STRING022 = "@X05Auto-Advertised With Scumline v3.o By @X0Br@X03y0!"
Goto LABEL010
Endif
STRING022 = U_Name()
:LABEL010
FPutLn 4, STRING014 + STRING022
FClose 4
Endif
:LABEL011
If (Upper(STRING009) == "YES") STRING018 = PPEPath() + "COUNTER.DAT"
If (Exist(STRING018)) Goto LABEL012
FCreate 1, STRING018, 1, 0
FPutLn 1, 0
FClose 1
:LABEL012
FOpen 2, PPEPath() + "COUNTER.DAT", 2, 0
FGet 2, INTEGER003
If (INTEGER003 >= STRING010) Then
INTEGER003 = 0
Frewind 2
FPutLn 2, INTEGER003
FClose 2
STRING019 = STRING011
Goto LABEL009
Else
Inc INTEGER003
Frewind 2
FPutLn 2, INTEGER003
FClose 2
Endif
End
:LABEL013
FCreate 1, PPEPath() + "WHO.DAT", 1, 0
For INTEGER004 = 1 To INTEGER001
FPutLn 1, "@X0CExisted Before WHO.DAT Was Enabled"
Next
FClose 1
Return
:LABEL014
Select Case (STRING002)
Case 10
STRING003 = "A"
Case 11
STRING003 = "B"
Case 11
STRING003 = "C"
Case 12
STRING003 = "D"
Case 13
STRING003 = "E"
Case 14
STRING003 = "F"
End Select
Return
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 2 End
; 4 Cls
; 2 Wait
; 78 Goto
; 70 Let
; 7 Print
; 5 PrintLn
; 52 If
; 5 DispFile
; 5 FCreate
; 4 FOpen
; 10 FClose
; 4 FGet
; 8 FPutLn
; 1 StartDisp
; 1 GetUser
; 2 Log
; 1 InputStr
; 4 Gosub
; 2 Return
; 4 Inc
; 2 Dec
; 2 Newline
; 2 Newlines
; 8 AnsiPos
; 2 Backup
; 2 Frewind
; 1 KeyFlush
;
;
; ■ Functions used :
;
; 71 +
; 7 -
; 23 ==
; 9 <>
; 10 <
; 9 <=
; 1 >
; 18 >=
; 45 !
; 19 &&
; 8 ||
; 10 Len(
; 1 Upper()
; 1 Mid()
; 3 Left()
; 1 Right()
; 1 Ferr()
; 5 Chr()
; 1 Random()
; 1 Time()
; 2 U_Name()
; 7 StripAtx()
; 1 Inkey()
; 34 PPEPath()
; 15 ReadLine()
; 3 CurSec()
; 8 Exist()
; 1 GetX()
; 3 GetY()
;
;------------------------------------------------------------------------------
;
; Analysis flags : No flag
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 7 For/Next
; 2 While/EndWhile
; 23 If/Then or If/Then/Else
; 2 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------