home *** CD-ROM | disk | FTP | other *** search
- global baseRecordSprOffset, autoHoldFrame, referenceFrameNum, curClipRecord, clipDataField, frameLimit, backgroundSpr, foregroundFXSpr, backgroundFXSpr, onionSkinSpr, currentFrame, scoreData, dispatchTable, bgdData, fgdFXData, bgdFXData, theStageBounds, recordFlag, dirtyFlag
-
- on birth me
- set backgroundSpr to 1
- set backgroundFXSpr to 2
- set onionSkinSpr to 15
- set foregroundFXSpr to 16
- puppetSprite(backgroundSpr, 1)
- puppetSprite(backgroundFXSpr, 1)
- puppetSprite(onionSkinSpr, 1)
- puppetSprite(foregroundFXSpr, 1)
- set the blend of sprite onionSkinSpr to 30
- set theStageBounds to rect(72, 36, 553, 401)
- set recordFlag to 0
- set dirtyFlag to 0
- set baseRecordSprOffset to 2
- set frameLimit to 401
- set autoHoldFrame to [[], [], [], [], [], [], [], [], [], [], [], []]
- return me
- end
-
- on recordClip me, theCategory, currentBank, paletteIndex
- cursor(4)
- set referenceFrameNum to count(scoreData)
- set clipDataField to theCategory & "data"
- set currentClipLine to ((currentBank - 1) * 10) + paletteIndex
- set curClipRecord to value(line currentClipLine of field clipDataField)
- if listp(curClipRecord) then
- set recordFlag to 1
- set theType to getAt(curClipRecord, 1)
- if (theType = "C") or (theType = "S") or (theType = "P") then
- record(animRecMgr)
- else
- if theType = "B" then
- record(bgdRecMgr)
- else
- if theType = "F" then
- record(bgdFXRecMgr)
- else
- if (theType = "X") or (theType = "T") then
- record(fgdFXRecMgr)
- else
- if theType = "L" then
- record(sndLPRecMgr)
- else
- if theType = "N" then
- record(sndFXRecMgr)
- end if
- end if
- end if
- end if
- end if
- end if
- set recordFlag to 0
- else
- put "no clip record available"
- cursor(-1)
- end if
- end
-