Metropoli BBS
VIEWER: oneliner.pps MODE: TEXT (ASCII)
;---------------------------------------
;		TiD%BiD
;---------------------------------------
;this is my LAST ppe release under lil elvis
;i am now known as nevesis.. ;) neet huh?!
;---------------------------------------

;---------------------------------------
;this source code "oneliner.pps" is
;copyrighted to lil elvis[fsw] [05.02.96]
;---------------------------------------

;---------------------------------------
;do it and die!
;---------------------------------------
;i didn't write this ppe juss so you could
;take my name out of it and put yours in
;if i catch _anyone_ putting there name
;in this ppe, i will kill you and yer board
;--------------------------------------

;---------------------------------------
;declare strings and integers
;---------------------------------------

string yesHL,yesBL,noHL,noBL,ink,ap[25],enable
string enter_ans,header_ans,ask_enter,ask_save
string add,save[11],dots,ask_text,aborted,rl
string user[10],user_name,ok,time[10],who,what
string numb,col[3],p[2],HL[6],BL[6],savecol,num
string bordchr,alltime,die,backup,clr,aa,dl

integer i,x,unfo[10],max,ib[69],dispone[25],rnd


;---------------------------------------
;read from the config file(s)
;---------------------------------------
fopen 1, ppepath()+"oneliner.cfg",o_rw,s_dn
fget 1, header_ans
fget 1, ask_enter
fget 1, yesHL
fget 1, yesBL
fget 1, noHL
fget 1, noBL
fget 1, enter_ans
fget 1, ask_text
fget 1, dots
fget 1, bordchr
fget 1, savecol
fget 1, max
fget 1, alltime
fget 1, backup
fget 1, aborted
fclose 1

fopen 1, ppepath()+"ansipos.dat",o_rw,s_dn
for x = 1 to 16
fget 1, ib[x]
next
fclose 1

fopen 1, ppepath()+"ansipos.dat",o_rw,s_dn
for x = 1 to max
fget 1, dispone[x]
next
fclose 1

;---------------------------------------
;read from the oneliners data file
;---------------------------------------	
user_name = (lower(u_name()))
startdisp FNS;
	
fopen 1, ppepath()+"oneliner.dat",o_rw,s_dn
for i = 1 to max
fget 1, save[i]
next
fclose 1

;--------------------------------------
;display the oneliners onto the screen
;--------------------------------------

:stt
cls
dispfile ppepath()+header_ans,false
ansipos ib[3],ib[4]
for i = 1 to max
print save[i]
newline
next

;--------------------------------------
;invoke the yes/no light bar's
;--------------------------------------

:yes
ansipos ib[1],ib[2]
println ask_enter + yesHL + noBL
ansipos 1,23: print " ": backup 1

:yes_imp
ink = inkey()
if ((ink()="RIGHT")|(ink()="LEFT")) goto no
if ((ink()="n")|(ink()="N")) goto no
if (ink()=chr(13)) goto eo
goto yes_imp

:no
ansipos ib[1],ib[2]
println ask_enter + yesBL + noHL

:no_imp
ink = inkey()
if ((ink()="RIGHT")|(ink()="LEFT")) goto yes
if ((ink()="y")|(ink()="Y")) goto yes
if (ink()=chr(13)) goto credz
goto no_imp

;--------------------------------------
;display the enter text stuff
;--------------------------------------

:eo
fopen 1, ppepath()+"fade.dat",o_rw,s_dn
for i = 1 to 3
fget 1, col[i]
next
fclose 1

cls
dispfile ppepath()+enter_ans,false
ansipos ib[5],ib[6]: print ask_text
ansipos ib[7],ib[8]: print dots
ansipos ib[9],ib[10]: print "@X07["      '***//only non configed part ;)\\***

;--------------------------------------
;do the fading text
;--------------------------------------

:enter_oneliner
ink = inkey()
if (len(add)=77) goto save
if (len(add)=0) then
if (ink = "!") goto enter_oneliner
if (ink = "%") goto enter_oneliner
end if
if (ink = chr(13)) goto save
if ((ink = "RIGHT")|(ink = "LEFT")) goto backup
if ((ink = "UP")|(ink = "DOWN")) goto enter_oneliner
if (ink = chr(27)) goto abort
if (ink = chr(7)) goto enter_oneliner
if (ink = chr(8)) goto backup
if (ink = "") goto enter_oneliner
ink = LEFT(ink,1)
if (ink = "@") goto enter_oneliner
for i = 1 to 3
print col[i] + ink
delay 2: backup 1
next
print col[3] + ink
add = add + ink
goto enter_oneliner

;--------------------------------------
;when chr8 is hit replace the text with .'s
;--------------------------------------

:backup
if (len(add)=0) goto enter_oneliner
backup 1: print backup: backup 2
add = left(add,(len(add)-1))
goto enter_oneliner

;--------------------------------------
;save the current oneliner
;--------------------------------------

:save
if (len(add)=0) goto abort
delete ppepath()+"oneliner.dat"
fcreate 2, ppepath()+"oneliner.dat",o_rw,s_dn
fopen 2, ppepath()+"oneliner.dat",o_rw,s_dn
for i = 2 to max
fputln 2, save[i]
next
fputln 2, bordchr,savecol,add
fclose 2

;--------------------------------------
;see if alltime oneliners is active
;and invoke if alltime = y then...
;--------------------------------------

alltime = lower(alltime)
if (alltime = "y") then
fappend 3, ppepath()+"alltime.dat",o_rw,s_dn
fputln 3, "-------------------["+lower(user_name)+"]-----------------"
fputln 3, add
fputln 3, "-------------------["+lower(date())+"]-----------------"
fclose 3
end if
log ": "+user_name + " entered: " + (lower(add)),""
log "*** oneliners ppe by: lil elvis reporting sir:",""
goto credz

;--------------------------------------
;if the oneliner is aborted do this
;--------------------------------------

:abort
cls
for i = 1 to len(aborted)
aa = aa + 1
clr = random(15)
if (clr = 0) then
clr = 1
end if
color clr
aborted = lower(aborted)
print mid(aborted,aa,1);
delay 3
aborted = upper(aborted)
backup 1
color clr
print mid(aborted,aa,1);
delay 2
next

;--------------------------------------
;gotta gimme sum credz sum where ;)
;--------------------------------------

:credz
alltime = 1
cls
while (alltime <15) do
ansipos 1,1: print "@X08o@X04n@X0Ce@X0Fliners v1.1 by: lil elvis [@X0Cf@X04s@X08w]":delay 2
alltime = alltime + 1
end while
end

;--------------------------------------
;end of my lame code.. so it sux.. sue me!
;--------------------------------------
;big 238 lines of shit. hehe have fun!
[ RETURN TO DIRECTORY ]