/* Visual FX Arexx Script Written By J.L. White (C)1997 Merlin's Software */ Options Results address "IMAGEFX.1" ScreenToFront Undo Off if exists("libs:flyer.library") then do TOASTERLIB="ToasterARexx.port" call remlib('ToasterARexx.port') call remlib('PROJECT_REXX_PORT') call addlib('PROJECT_REXX_PORT' , 0) call addlib(TOASTERLIB,0) end call Settings() call open TempFile,"VFXIFX:TempDrawer/"FXNum".txt",R line = readln(TempFile) Type = strip(line) call close (TempFile) j=0 TFrames = Frames if Field = 1 then TFrames = Frames*2 do i = 1 to Frames call open TempFile,"RAM:VFXNums",W call writeln TempFile,right(i,5,'0') call writeln TempFile,right(Frames,5,'0') call close TempFile f=0 Redraw Off FieldSet = 0 if Padding ~= -1 & i = 1 then call PadIt(1) call LoadA() call LoadB() j = j+ 1 call DoIt() Redraw On call SaveIt() if Field = 1 then do Redraw Off FieldSet = 1 call LoadA() call LoadB() j = j + 1 call DoIt() Redraw On call SaveIt() end if Padding ~= -1 & i = Frames then call PadIt(2) end if SaveType = 0 then do if Padding = -1 then call MakeIcon(SaveName,(Frames-10)) else call MakeIcon(SaveName,(Padding+(Frames-10))) end Undo On exit PadIt: arg PadNum if (POS('FLY_1',SHOW('Ports')) = 0) then do Undo On exit end if PadNum = 1 then do if IAType = 0 then do do Pad = Padding to 1 by -1 LoadBuffer PicAName Force StartA-(Pad-1) call Switcher(TOSW) call Switcher(MDV1) Render Go call RecordAdd(SaveName,2,6,Compression) end end if IAType = 1 then do LoadBuffer PicAName Force 1 call Switcher(TOSW) call Switcher(MDV1) Render Go call RecordAdd(SaveName,2*Padding,6,Compression) end if IAType = 2 then do LoadBuffer PicAName Force call Switcher(TOSW) call Switcher(MDV1) Render Go call RecordAdd(SaveName,2*Padding,6,Compression) end if IAType = 3 then do do Pad = Padding to 1 by -1 LoadBuffer PicAName""right(StartA-(Pad-1),3,'0') Force call Switcher(TOSW) call Switcher(MDV1) Render Go call RecordAdd(SaveName,2,6,Compression) end end end else do if IBType = 0 then do do Pad = 1 to Padding LoadBuffer PicBName Force StartB+Pad+Frames call Switcher(TOSW) call Switcher(MDV1) Render Go call RecordAdd(SaveName,2,6,Compression) end end if IBType = 1 then do LoadBuffer PicBName Force 1 call Switcher(TOSW) call Switcher(MDV1) Render Go call RecordAdd(SaveName,2*Padding,6,Compression) end if IBType = 2 then do LoadBuffer PicBName Force call Switcher(TOSW) call Switcher(MDV1) Render Go call RecordAdd(SaveName,2*Padding,6,Compression) end if IBType = 3 then do do Pad = 1 to Padding LoadBuffer PicBName""right(StartB+Pad+Frames),3,'0') Force call Switcher(TOSW) call Switcher(MDV1) Render Go call RecordAdd(SaveName,2,6,Compression) end end end return LoadA: if (POS('FLY_1',SHOW('Ports')) = 0) then do Undo On exit end if j = TFrames then return if IAType = 0 then do LoadBuffer PicAName Force i+StartA GetMain parse var result Name Width Height Blah if FieldSet = 0 then do Hook DeInterlace Scale Width Height end if FieldSet = 1 then do Hook DeInterlace Swap Scale Width Height end end if IAType = 1 then do LoadBuffer PicAName Force 1 end if IAType = 2 then do LoadBuffer PicAName Force end if IAType = 3 then do LoadBuffer PicAName""right(i+StartA,3,'0') Force end Swap return LoadB: if (POS('FLY_1',SHOW('Ports')) = 0) then do Undo On exit end if IBType = 0 then do LoadBuffer PicBName Force i+StartB end if IBType = 1 then do LoadBuffer PicBName Force 1 end if IBType = 2 then do LoadBuffer PicBName Force end if IBType = 3 then do LoadBuffer PicBName""right(i+StartB,3,'0') Force end Swap return DoIt: if (POS('FLY_1',SHOW('Ports')) = 0) then do Undo On exit end if j = TFrames then do Swap return end if j = 1 then return Num = (((j-1) * 104)/(TFrames-1)) Num = trunc(Num) if Type = 0 then do Num2 = 3 Num = -Num end if Type = 1 then do Num2 = 4 end if Type = 2 then do Num2 = 2 Num = -Num end if Type = 3 then do Num2 = 3 end if Type < 2 then Hook Perspective '0' Num '0' '0' '0' '0' '0' '0' 0 0 0 Num2 SwapScale AntiAlias else Hook Perspective Num '0' '0' '0' '0' '0' '0' '0' 0 0 0 Num2 SwapScale AntiAlias ActiveColor 16 Pen 0 1 Box 0 0 Width Height ActiveColor 1 return SaveIt: if (POS('FLY_1',SHOW('Ports')) = 0) then do Undo On exit end if SaveType = 0 then do call Switcher(TOSW) call Switcher(MDV1) Render Go if Field = 1 then call RecordAdd(SaveName,1,6,Compression) else call RecordAdd(SaveName,2,6,Compression) end if SaveType = 1 then do if Field = 1 then do f= f + 1 if f = 1 then SaveBufferAs ILBM "VFXIFX:TempDrawer/PicA" if f = 2 then do GetMain parse var result Name Width Height Blah Scale Width Height/2 Swap LoadBuffer "VFXIFX:TempDrawer/PicA" Force Scale Width Height/2 Hook Interlace SaveBufferAs ILBM SaveName""right(i,3,'0') f = 0 end end else do SaveBufferAs ILBM SaveName""right(i,3,'0') end end return