【一氧化二氢】scratch储存脚本的机制
scratch吧
全部回复
仅看楼主
level 6
NULL_EXEC 楼主
2018年06月28日 23点06分 1
level 6
NULL_EXEC 楼主
如果把scratch的文件解压,其中有一个package.json
里面就是一个项目所有的代码
其中meta不是特别重要(对于理解储存机制来说)只是防止更新了解释器不兼容
targets里面储存的是所有的角色和一个舞台,由isStage控制
+ 变量和链表由两个array储存(红色)
全局变量会在stage里储存
+ 广播只在stage里有用,普通角色(isStage: false)会被无视(蓝色)
+ blocks和comments,编辑器/解释器的玩意儿,单独开一楼说(绿色)
+ costumes和sounds(梅红)
===
assestId 在压缩包里其他文件的文件名,md5
name 编辑器里的名字
dataFormat 文件后缀名
md5ext 大概就是assestId + '.' + dataFormat吧
rotationCenterX/Y 定位中心(那个黑色的十字)
rate sampleCount format 音频用的神奇玩意儿
2018年06月28日 23点06分 2
三氯甲硅烷
2018年06月30日 05点06分
2018年06月30日 05点06分
level 6
NULL_EXEC 楼主
block对象
============
每一个代码块都是一个对象,先后顺序由parent和next决定
opcode 代码块的种类
input 参数
fields 流程控制类的那个大框
topLevel 是否是脚本的最顶端
shadow ???
x和y 在编辑器中的位置,应该是标准坐标(左上角为(0, 0) )
key是一个随机字符串
2018年06月28日 23点06分 3
level 6
NULL_EXEC 楼主
欢迎钍槽[滑稽]
2018年06月28日 23点06分 4
level 11

2018年06月29日 01点06分 5
level 8
2018年06月29日 09点06分 6
吧务
level 15
围观emm
2018年06月29日 11点06分 7
level 11
emmm超理吧的?
2018年06月29日 14点06分 8
并不是[阴险]
2018年06月29日 16点06分
某格雷2147483647吧的传统,用神奇的方式写【水[阴险]
2018年06月30日 05点06分
level 14
sc3?
2018年07月20日 13点07分 9
1