发表在 大佬帝国™【官方】 07-01 07:25:53
目录
第一章:克隆体的私有变量
第二章:如何在scratch里输入矢量中文
第三章:scratch的BLEAPI的云端存储和终端通讯
第四章:用scratch写编程语言
第五章:G-Editor的实际运用
第一章:克隆体的私有变量
首先,我们从一种特殊的角度来理解变量和和链表:
1.变量——可以变动的字符串或数字;
2.链表——多个变量的有序化,序数称之为项数。
Scratch的脚本里是没有“新建一个变量”的。但是之前说过链表多个变量的有序化,所以,我们可以通过在一个链表里新建一行,用替换某行的方式是其成为一个变量。
接下来是实例:
先让舞台询问“你要让第几个火柴人说话?”,接着询问“说些什么?”
但是只是这样是远远不够的。我们要新建一个变量组(即链表,以后都这样称呼),在里面创建3个变量(即新建三项,以后也都这样称呼)。如图所示:
火柴人克隆体须调用第一次回答的内容,即第几个火柴人说话。我们可以新建一个变量,再用脚本将变量设为第一次回答的内容。再利用脚本调用这个变量。
不明真相的吃瓜群众一号:“为什么在调用时不直接调用第一次回答的内容,反而还得调用与第一次回答内容相同的变量呢?”
孔明:“因为有第二次询问。Scratch在侦测部分的脚本就有‘回答’这一变量。但它会设为最新一次的回答。我们的脚本里询问‘第几个火柴人说话’的结果是第一次回答,而还有一个第二次询问,即询问火柴人说话的内容。在调用回答的时候调用的时候‘回答’这一变量已经设为第二次的了。所以我们要想调用第一次回答,必须用变量将它设为常数(即不可以变动的字符串或数字)”
接着,我们再把第(克隆体_话_项数)项{克隆体_话}设为第二次回答。
好的今天精品教程就到这里,我们下次再见
第二章:如何在scratch中输入矢量中文
今天我将向大家介绍 如何在scratch里输入
矢量中文字体
众所周知,自从scratch 2发布后,MIT官方就去掉了中文输入,中国用户无法在scratch里输入中文,着实是一件令人头疼的事情。
好在,scratch支持导入,我们可以借助其他工具来达到这个目的。
PS:本次教程只针对矢量,位图可以直接在网络上输出字体再导入。
本章介绍两种不同的方法。
方法1:准备工具:
1.Scratch 2
2.AI (Adobe illustrator)PS:建议下载CS6 CC或CC2014 CC2015版本,本次演示用AI CC 2015
AI CC 2015下载链接:http://yunpan.cn/cQIwE2U3GsfEv
提取码:cfd1
此分享来自 @你见我的小熊码 感谢这位吧友的分享 [原帖地址:http://tieba.baidu.com/p/3869972843 ]
下面开始正式介绍
1.下载并安装AI(建议下载LZ在1楼提供的链接)
本次教程用AI CC 2015演示
AI CC 2015下载链接:http://yunpan.cn/cQIwE2U3GsfEv
提取码:cfd1
此分享来自 @你见我的小熊码
2.打开AI 新建一个空白文件
启动界面如图所示
3.AI CC 2015界面如图所示
4.在顶部菜单栏点击文件 再点击新建,会出现下图的 新建文档 设置窗口(蓝色标注为可更改项目,其他的在没有深入学习AI前可以暂时忽略)
就这样,一个空白文件就创建成功了
5.接下来,选择左侧菜单栏的文字工具,在空白文稿上写上你需要的字
6.调整你输入的字[左侧蓝色方框内可调整颜色,右侧蓝色方框内可调整字体和大小]
7.确认无误后,点击文件,点击存储为来导出文字
8.选择保存位置,将保存格式选择为.SVG
9.设置保存项目,先把SVG配置文件改为 SVG 1.0(某些scratch 2不支持SVG 1.1就选择SVG 1.0比较保险)再把文字改为 转换为轮廓(这样可以使你导入的字体不带背景,只有字体的轮廓,方便使用或移植)。确认无误后点击确定
10.存储成功,赶紧试试导入scratch里吧(.SVG格式通常用浏览器打开,AI也可以打开。导入scratch里时请 更改为矢量模式 后再导入字体)
这是方法一,下面介绍第二种方法。
方法二:
准备工具:
1.G-Editor
2.性能较好的电脑
首先先介绍一下G-Editor
G-Editor是一个优雅且高效的Scratch衍生版,由我和众多编程爱好者研发。
http://project.mybluelemons.com/ge/index.html这里是G-Editor官网,可以下载最新版本。
有了G-Editor就可以直接输入矢量中文了,无需任何工具!!!!!
第三章:scratch的BLEAPI的云端存储和终端通讯
今天我们来讲一讲BleAPI正确的食用方法,不知道有没有人已经无师自通了呢?
本章节以滑动条为蓝本讲述BLEAPI的强大。
我们上来老规矩,多余的删光,留下角色“Sliders”。
我们看看我们这次提供的调用脚本
接下来我们开始码脚本。我们想要一个亮蓝色的,亮蓝色的RGB值是:43 165 226,我们把它填进去。
然后我们希望以x-80 y0(图中打反了)为源点(定义见上图),绘制一个长160的自由滑动条,最小0,最大160。自由滑动条就是对每次次滑动的值限制,想滑动多少就滑动对少。自由滑动条其实就是限制值为1的限制滑动条。
接下来后我们希望以x-80 y-20(图中又打反了)为源点,绘制一个长160的限制滑动条,最小0,最大160(图中忘打了),限制值为20。限制值就是每次滑动对滑动条的值增加或减少的值必须是限制值的倍数(可以为0倍)。那么我们对于我们这个滑动条来说,用户就只能滑动到0、20、40、60、80、100、120、140、160处,滑动到其它位置则会被四舍五入。则对于我们这个滑动条来说,用户滑动到110处,则会自动跳转至120:用户滑动到109处,则会自动跳转至100。
接下来我们需要新建2个变量来储存滑动条的值。我们要用到"get value of slider {目标滑动条编号}"。这个脚本的作用是将指定滑动条的值输出至变量“#value”。
然后我们需要一个“将{}设定为{}”脚本将变量“#value”转存至另一个变量保存,因为我们只有一个变量“#value”。
关于滑动条的编号则是根据代码的排序来的,按钮API也是这样。
然后我们把两个滑动条的值都输出,注意如果你希望自由滑动条输出的值是一个整数的话你需要在外边套一个“将{}四舍五入”。
然后我们把“update sliders”模块也给加上去,注意排序,再套一个“重复执行”,再一按绿旗。这个时候我总算知道我之前一直输错了
所以我修正过后再按下了绿旗。嗯哼,效果不错。
接下来再来介绍一下模块"set value of slider {目标滑动条编号} to {目标值}"的用法。这个模块的作用是设定一个滑动条的值,譬如我想把编号为1的这个自由滑动条的值设定为66,我们只要如上填写;我想把编号为2的这个限制滑动条的值设定为75,我们如上填写后激活它,依然是会按照限制规则四舍五入的,注意红框里的两个值。
最后补一下颜色更改,这个是补的图,所以与例程有所不同。注意更改颜色不会更改底部灰色,毕竟灰色百搭。
好,到此我们的BleAPI的食用方法就全部结束了,如果喜欢请点个赞并关注一下我哦
第四章:用scratch写编程语言
这一章我们将介绍贴吧上的一个大师级的scratch新玩法——用scratch写自己的编程语言(取材来自团队贴吧)
其实也不叫介绍,就是给大家用的
先放一张main方法的代码
下面我们介绍一下main方法
main函数,又称主函数,是程序执行的起点.main是相对来说的,如同音学理论之主调于泛音,泛音即程序中的除main之外的其他函数.main函数正是迎合人们的思考方式而生成的而非必定的模式.有主有次,执行起来条清缕析;既可将程序模块化又实现了一个闭合的整体.main函数不是从最开始产生就不变的,不同语言给出了不同的看法
在这款scratch编程语言里
目前能够编写的代码:
特殊变量
!tX !tY !tRot !plX !plY !plRot !pldis
$num 代表全局变量
&num 代表局部变量
#num 代表在全局栈内位置
%num 代表局部栈内位置
一次只能定义三个变量
var A 定义变量
pot A [x]定义变量A的变量表内位置为[x]
gar A 定义全局变量
push A B 入局部栈 #-1=B
gpush A B 入全局栈 #-1=B
del 删除最后一个局部栈内数字
gdel 删除最后一个全局栈内数字
mov A a
add A a
sub A a
mul A a
div A a
rem A a
int A
修改;+-*/%round
inc A
dec A
A++--
sin A
cos A
tan A
asin A
acos A
atan A
sqrt A
powE A
log A
abs A
rnd A a b 将A随机为int(a,b)
cnt A a 连接A a-->A
"a":定义代码段
ijp "a" #-1!=0 -goto
njp "a" #-1==0 -goto
jmp "a" goto
mel "a" "b" "c" #-1>0 --goto "a";==0--"b";<0--"c"
func "a"进程代码段标记
end 结束代码段并返回
ent "a"将指针移动到标记代码段
cte "a"创建一个名为a的进程
wait A 等待A秒
print "a" b 输出a b秒
tp x y 传送到x,y
move time x y 在times内move到x,y
spd xadd yadd 将x,y增加
go step 移动step步
angle a 将角度设为a
anpl 将角度设置为自机狙
CW a 顺时针旋转a度
AC a 逆时针旋转a度
cos a 将外观变为a
col h v 将改变色相,明度
size a 改变大小为a%
laydown a 下移a层
laytop 移动到顶层
visitable a a=0隐藏;a!=0显示
来个简单的例子,这一段代码会生成10个enemy并在x=0的地方排列一下
func "main";
var a;
mov a 10;
push 666;
gpush 666;
jmp "cte2";
"cte1":;
dec a;
mov #-1 a;
cte "enemy1";
"wat1":;
mov %-1 #-1;
sub %-1 999;
njp "cte2";
wait 0.1;
jmp "wat1";
"cte2":;
mov %-1 a;
ijp "cte1";
end "main";
func "enemy1";
var b;
mov b #-1;
mov #-1 999;
tp 0 180;
mul b -10;
spd 0 b;
"move":;
go 5;
CW 1;
jmp "move";
wait 10000;
end "enemy1";
顺便波与粒子的境界的代码.有性趣可以试着解读一下吧(
func "main";
cte "satori";
end "main";
func "satori";
push 1;
health 1000;
tp 0 100;
ctm 2;
vis 1;
var r radd;
mov r 0;
mov radd 0;
gpush 1;
gpush 1;
"shoot":;
add radd 3;
add r radd;
mov #1 r;
mov #2 0;
cte "bullet";
cte "bullet";
cte "bullet";
cte "bullet";
cte "bullet";
"wait":;
mov %1 #2;
sub %1 5;
ijp "wait";
jmp "shoot"
end "satori";
func "bullet";
var r rget;
mov rget #1;
add #2 1;
rem r 5;
mul r 72;
tp 0 100;
ctm 8;
vis 1;
add r rget;
angle r;
"move":;
go 5;
jmp "move";
end "bullet";
好的本章到此结束,期待第五章哦
第五章:G-Editor的运用
这一章我来跟大家介绍一下一款很6的scratch衍生版——G-Editor(下文简称GE)
GE是蓝柠、Ambition、小盖等工作室联合开发(作者是开发部主力哦)
这是美美哒的logo。
首先我们先进入GE的官方网站:
GE有两个版本,一种是软件版,需要下载。一种是在线版,可以进行在线编辑。软件版的功能较多所以优先推荐软件版,点击“下载G-Editor“即可下载最新发布的安装包(版本号:1.2.1beta4)
在此教程中作者用的版本是1.3.03(内部成员当然可以用最新的啦)1.3还没有发布所以大家用不着
安装完成后会在桌面显示图标
双击打开会出现这个界面
这是主界面,可以看到除了“启动编辑器”外还有几项功能。
大家都知道scratch文件的后缀是“.sb2”GE开放了.sb2文件转.Flash和.exe文件的功能,可以将文件转换为另外一种形式。
“修复工具”的主要功能是帮助用户安装Adobe Air辅助插件以及白屏修复的功能。切记使用GE之前一定要安装最新版的Adobe Air
接下来我们点击“启动编辑器”就会出现熟悉的scratch界面。
(第五章未完待续,请持续关注)
【scratch大师级教程】 - scratch作为少儿编程必备软件,楼主的教程太厉害啦。
太厉害了吧,我一直用在线的少儿编程工具。
目前最常用的少儿编程软件多是基于Scratch软件,Scratch是麻省理工媒体实验室终身幼儿园组开发的一套电脑程序开发平台,旨在让程序设计语言初学者不需先学习语言语法便能设计产品!
其实编程少年的Scratch直接可以输入中文(选择中文字体)
GE官网打不开,请问去哪下载???
围观大神。转了一圈这个地方是用scratch和python编程的啊。。。我是学C++的,不知道有没有一起的。。。
附上Github : https://github.com/xqymain
本站正在维护,请稍后再来访问。
滑稽滑稽!
66666666厉害了
对了,你们团队几个人?
不明觉厉,可惜网站进不去~~
其实不用这么复杂,如果想输入中文只要用scratchbot输,然后再把它转为位图就行了
本站正在维护,请稍后再来访问。
?
表示不明白为什么不重新发帖,以前的都没了。
6666
six
好厉害
想知道大家暑假在干什么,来回下这个贴吧:http://kids.codepku.com/topic/view/157
又更新了?好长的代码
这完全可以发三篇的教程了
期待
内容将会不定期更新,记得点个赞
厉害了
注:图文来源于团队贴吧内部