home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 3 / PDCD_3.iso / pocketbk / pictures / flick2 / DANCER.OPL next >
Text File  |  1992-05-25  |  2KB  |  93 lines

  1. APP Dancer
  2.   type 1
  3.   icon "\OPD\view"
  4. ENDA
  5.  
  6. PROC start:
  7. GLOBAL ww%,w%(6),d%,c%,delay%,w$(128)
  8. GLOBAL off%(6),dum%,p$(128)
  9.   REM Dont keep S3 awake!
  10.   call ($138b,0,0,0,0,0)
  11.   c%=0
  12.   p$="\pic\dancer01.PIC" : REM DANCER PICS
  13.   w$=ffile$:(tparse$:(p$)) 
  14.   if w$=""
  15.     dum%=alert(p$,"Above file not found on A:, B: or M:","Drat")
  16.   else
  17.     w$=left$(w$,len(w$)-5)
  18.     do
  19.       c%=c%+1
  20.       w%(c%)=patt:(w$+NUM$(c%,1)+".PIC")
  21.     until c%=6 : REM 6 FRAMES
  22.     BEEP 5,60
  23.     REM SHOW FRAMES
  24.     Do
  25.       s:(1,3):s:(2,2):s:(3,2):s:(4,2)
  26.       s:(5,2):s:(6,3):s:(5,2):s:(4,2)
  27.       s:(3,2):s:(2,2)
  28.     Until 0
  29.   endif
  30. ENDP
  31.  
  32. PROC s:(a%,b%)
  33.  REM Show w%(a%) for len b%
  34.  gORDER w%(a%),1
  35.  pause b%
  36. ENDP
  37.  
  38. PROC patt:(t$)
  39. LOCAL bit%,x%,y%,w%,h%,t%
  40.   REM t$=PIC to load
  41.   REM Centre Window, Ret Window Id.
  42.   bit%=gLOADBIT(t$)
  43.   gUSE bit%
  44.   w%=gWIDTH
  45.   h%=gHEIGHT
  46.   x%=(240-w%)/2.0
  47.   y%=(80-h%)/2.0
  48.   t%=gCREATE(x%,y%,w%,h%,1)
  49.   gUSE t%
  50.   gORDER t%,2
  51.   gPATT bit%,w%,h%,3
  52.   gCLOSE bit%
  53.   RETURN t%
  54. ENDP
  55.  
  56. PROC tparse$:(w$)
  57. LOCAL p$(128)
  58.   p$=parse$(w$,cmd$(1),off%())
  59.   return p$
  60. ENDP
  61.  
  62. PROC ffile$:(w$)
  63. LOCAL a%,m%,b%,p$(128),d$(3),d1$(3),d2$(3)
  64.   p$=w$
  65.   if NOT exist(p$)
  66.     d$=Mid$(p$,off%(2),off%(3)-off%(2))
  67.     if d$="M:"
  68.       d1$="A:": d2$="B:"
  69.     endif
  70.     if d$="A:"
  71.       d1$="M:": d2$="B:"
  72.     endif
  73.     if d$="B:"
  74.       d1$="M:": d2$="A:"
  75.     endif
  76.     p$=midd$:(p$,off%(2),off%(3)-off%(2),d1$)
  77.     if NOT exist(p$)
  78.       p$=midd$:(p$,off%(2),off%(3)-off%(2),d2$)
  79.       if NOT exist(p$)
  80.         p$=""
  81.       endif
  82.     endif
  83.   endif
  84. RETURN p$ 
  85. ENDP
  86.  
  87. PROC Midd$:(s$,a%,b%,ins$)
  88. LOCAL t$(128)
  89.   t$=left$(s$,a%-1)+left$(ins$,b%)
  90.   t$=t$+mid$(s$,a%+b%,128)
  91. RETURN t$
  92. ENDP
  93.