5W1H讲故事技巧

你熟悉讲述故事的5W1H方法和技巧吗?

5W1H是指英语中“Who(谁)”、“What(做什么)”、“When(什么时候)”、“Where(在哪里)”、“Why(为什么)”和“How(怎么样)”的首字母缩写组合。故事通常由这些内容构成。将这些内容组合在一起,是否可以创作出各种各样的故事呢?

我们稍微修改这些内容,按照“谁”、“和谁”、“什么时候”、“在哪里”、“怎么样地”和“做了什么”来组合:

  • 谁:勇士、魔王、村民、老爷爷、白雪公主、孙猴子、恐龙、外星人、僵尸
  • 和谁:白马王子、地主、霸王龙、医生、士兵、老师、熊大、小猪佩奇、幻影忍者
  • 什么时候:现代、遥远的未来、唐朝、寒武纪、昨天、圣诞节、2080年、星期日、半夜三更
  • 在哪里:北京、火星、学校、高铁、草原、沙漠、游乐场、金字塔
  • 怎么样地:流畅地、激烈地、缓慢地、高兴地、温柔地、飞快地、悲伤地、优雅地
  • 做了什么:战斗、结婚、交朋友、唱歌、玩游戏、百米冲刺、旅游、读书、看电影

从这些内容中随意选择一些组合在一起,就可以创作出各种各样的故事。例如:

“现代,村民和幻影忍者在游乐场高兴地看电影。”

“唐朝,老爷爷和霸王龙在火星上悲伤地旅游。”

“2080年,魔王和士兵在沙漠里优雅地百米冲刺。”

哈哈哈,这太有趣了,^_^。接下来,我们可以使用Scratch实现机器人讲故事的效果。

准备工作

打开Scratch编程软件,新建一个作品,将准备好的背景图片和角色添加进来,如图所示:

图1

添加舞台背景和角色

当然,你可以选择你喜欢的背景和角色。

认识列表

在讲述故事时,有6个要素需要考虑,分别是“谁”、“和谁”、“什么时候”、“在哪里”、“怎样”以及“做了什么”。每个要素包含多个内容,那么这些内容从哪里来、怎么保存、又如何获取呢?这是我们需要首先考虑的问题。

在Scratch中,变量可以保存信息,但每个变量只能保存一个单一的信息。如果需要保存多个信息,我们就需要使用“列表”。如果把变量比作一个抽屉,那么列表就是一排抽屉。列表里面的内容都会分配一个编号,从1开始,我们可以通过这个编号来找到相应的项目。

在变量模块区域,点击“*建立一个列表*”,创建列表,命名为“谁”,如图所示:

图2

创建“谁”列表

列表创建好后,列表是空的,没有任何内容。我们可以点击左下侧的“+”按钮,添加内容

空白列表

逐个点击“+”,将勇士、魔王、村民、老爷爷、白雪公主、孙猴子、恐龙、外星人、僵尸加入到列表,完成之后,效果如图所示:

图4

“谁”列表内容

同样的方式,我们可以创建其它5个列表,并将内容加入到列表中。创建之后的效果如图所示:

图5

创建好的6个列表

获取列表的内容

列表内容是有了,如何获取这些内容呢?仔细观察这些列表,可以发现每个列表左边都有一个数字编号,这就是我们获取列表项内容的钥匙,在列表提供的指令中,有一个指令“*列表的第1项*”,点击一下,显示的刚好的第一项内容,如图:

图6

获取列表项内容

点击该指令左边的箭头,可以选择其它列表,更改指令右边的数字,可以获取其它项内容,但是在讲故事的时候,内容都是随机生成的,要实现随机效果,可以借助运算指令“在1和10之间取随机数*”,同时可以使用列表指令“列表的项目数*”获取列表内容的数目,代码如下所示:

图7

随机获取列表项内容

其它列表项内容,也可以使用同样的方式来处理,你还可以随时添加、修改和删除列表中的内容,而不需要修改任何程序,是不是很强大。

合成语句

既然可以获取列表内容了,接下来的任务就是组装了,就是将获取的内容按照一定的顺序连接起来即可,连接也是一个常见的操作,Scratch专门提供了一个字符连接指令,即“*连接苹果和香蕉*”,它可以连接两个内容,也可以连接更多的内容,如图:

图8

连接3个内容

为了简单起见,我们可以再创建两个变量“故事”和“台词”,其中“故事”表示整个故事内容,而台词则是指每一次从列表取出的内容,如图:

图9

创建变量台词和故事

一般故事开始,我们都是从什么时候开始的,所以我们先从列表“什么时候”中随机获取列表项,然后进行连接操作,为了方便,我们假定在按下空格键的时候就开始讲一个故事,对应的代码如下:

图10

合成故事的第一句

需要重点关注的是,刚开始的时候,将变量“故事”设置为空,这是在字符串连接操作时必须要做的初始化操作,并且不能设置为0(想想为什么)。

可以直接点击该代码块的第一个指令

合成故事的第一句效果

完成作品

按照同样的方式,我们分别随机获取其它5个列表中的内容,并进行连接操作,就可以讲出一个完整的故事了,具体的代码如下图所示:

图12

Scratch故事机器完整代码

执行程序,不断的按下空格键,其效果如图所示,这些故事实在是太有趣了,哈哈哈

图13

故事机器运行效果

标签: Scratch, Scratch编程, Scratch中国, 少儿编程, Scratch社区, Scratch编程社区, Scratch编程课程, Scratch编程教程