home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 35 Internet / 35-Internet.zip / gscr20.zip / heart.cmd < prev    next >
OS/2 REXX Batch file  |  1997-06-05  |  2KB  |  89 lines

  1. /* ----------------------------------  */
  2. /* take text and melt it into a heart  */
  3. /* REXX code 4/24/97 by Gregory Spath  */
  4. /* enjoy :)                            */
  5. /* ----------------------------------  */
  6. /* To use:                             */
  7. /* HEART [scroll] [text]               */
  8. /*                                     */
  9. /* if both scroll and text are         */
  10. /* ommitted, a single character heart  */
  11. /* is made using the value defined for */
  12. /* an ASCII spacer below               */
  13. /* ----------------------------------  */
  14.  
  15. parse arg scroll thetext
  16.  
  17. l=length(thetext)
  18.  
  19. /* The following line defines the character used as a spacer */
  20. heart = "~"
  21.  
  22. if scroll="" then scroll = heart
  23. scrolltest=left(scroll,1,1)
  24. if c2d(scrolltest) < 48 | c2d(scrolltest) > 57 then do
  25.     thetext = scroll||thetext
  26.     scroll=trunc(length(thetext)/2)+1
  27. end
  28.  
  29. if right(thetext,1)=" " then 
  30.     thetext=left(thetext, length(thetext)-1)
  31.  
  32.  
  33. /* make adjustments to text if necessary */
  34. do while l<200
  35.      thetext=thetext||heart||thetext
  36.      l = length(thetext)
  37. end
  38.  
  39.  
  40. /* seed the output strings */
  41. do i=1 to 20
  42.      step = i * scroll
  43.      output.i="                                        "
  44.      overtext.i=substr(thetext, step)
  45. end
  46.  
  47. /* make the heart */
  48.  
  49. data.1='09062606'
  50. data.2='07102410'
  51. data.3='05142214'
  52. data.4='03172117'
  53. data.5='0237'
  54. data.6='0139'
  55. data.7='0139'
  56. data.8='0139'
  57. data.9='0237'
  58. data.10='0335'
  59. data.11='0433'
  60. data.12='0531'
  61. data.13='0727'
  62. data.14='0923'
  63. data.15='1119'
  64. data.16='1315'
  65. data.17='1511'
  66. data.18='1707'
  67. data.19='1903'
  68. data.20='2001'
  69.  
  70. do i = 1 to 4
  71.      start1=substr(data.i, 1, 2)
  72.      length1=substr(data.i, 3, 2)
  73.      start2=substr(data.i, 5, 2)
  74.      length2=substr(data.i, 7, 2)
  75.      output.i=overlay(substr(overtext.i, start1), output.i, start1, length1)
  76.      output.i=overlay(substr(overtext.i, start2), output.i, start2, length2)
  77. end
  78.  
  79. do i = 5 to 20
  80.      start1=substr(data.i, 1, 2)
  81.      length1=substr(data.i, 3, 2)
  82.      output.i=overlay(substr(overtext.i, start1), output.i, start1, length1)
  83. end
  84.  
  85. do i = 1 to 20
  86.    say output.i
  87. end
  88.  
  89.