Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

请把文本勘误都写在这里 #7

Open
chcarmen opened this issue Oct 30, 2020 · 30 comments
Open

请把文本勘误都写在这里 #7

chcarmen opened this issue Oct 30, 2020 · 30 comments

Comments

@chcarmen
Copy link
Owner

chcarmen commented Oct 30, 2020

请把书中所涉及到的错误或者问题都罗列在这里,以便下次印刷时给予勘误。感谢大家反馈。

@new1eaf
Copy link

new1eaf commented Oct 30, 2020

类型:印刷错误
页码:43
行号:最后两行


event.poss
event.buttton


应为


event.pos
event.button


备注:
即分别多印刷了一个字母"s"和字母"t"。

@new1eaf
Copy link

new1eaf commented Oct 30, 2020

类型:印刷错误
页码:79
行号:图3-13下面一行,对于图3-14的说明


Image.Logo:Logo surface,如图3-14所示。


应为


Image.logo:Logo surface,如图3-14所示。


备注:
即该行第一个logo的大小写印刷错误,此处应为小写字母l开头。

@new1eaf
Copy link

new1eaf commented Oct 30, 2020

类型:说明不准确
页码:82
行号:第二行


……,在draw()中调用self.bg.draw()绘制背景。


根据代码,此处应为


……,在update_screen()中调用self.bg.draw()绘制背景。


备注:
如上所述,对于调用Background类的对象绘制背景代码说明可能不准确。

@new1eaf
Copy link

new1eaf commented Oct 30, 2020

类型:印刷错误
页码:103
行号:第二行


对于__init_()函数。在其中只是初始化了一些变量:……


应为


对于__init__()函数,在其中只是初始化了一些变量:……


备注:
主要问题是__init__()少印刷了一个下划线“_”,另外建议文字“函数”后面的句号“。”改为逗号“,”

@new1eaf
Copy link

new1eaf commented Oct 31, 2020

类型:印刷错误
页码:129
行号:倒数第6行(对于Director类的init()方法的说明部分)


Fullscreen:窗口是否全屏,默认为False。


应为


fullscreen:窗口是否全屏,默认为False。


备注:
fullscreen的开头字母应为小写字母。

@new1eaf
Copy link

new1eaf commented Oct 31, 2020

类型:印刷错误
页码:133
行号:倒数12行(对于callback的原型说明)


def callback(dt, * args, * * kwargs):


应为


def callback(dt, * args, ** kwargs):


备注:
两个连续星号“**”中间不应有空格。(至于前后的空格格式,与其他代码风格保持一致即可。)

@new1eaf
Copy link

new1eaf commented Oct 31, 2020

类型:修改建议
页码:全体(例:136)
行号:全体(例:图14-2)

图表中,建议使用空心三角形"◁"代替实心三角形"◀"来表示类的继承关系。(UML)
※仅仅是修改建议,请作者酌情考虑是否需要修改。

@new1eaf
Copy link

new1eaf commented Oct 31, 2020

类型:修改建议
页码:165
行号:4.12 Action和Effect下面的第一行和第三行


在前面的内容中,除了director以外,无论……则与director一样,是Cocos中少数不是从CocosNode继承的类。


这里是在描述类的继承结构,建议将director修改为首字母大写的Director以表示这个类而不是对象实例。
※仅仅是修改建议,请作者酌情考虑是否需要修改。

@new1eaf
Copy link

new1eaf commented Oct 31, 2020

类型:印刷错误
页码:166
行号:表4-31 Action列表


CallFuncs


应为


CallFuncS


备注:
CallFuncS结尾的S应为大写字母S

@new1eaf
Copy link

new1eaf commented Oct 31, 2020

类型:印刷错误
页码:167
行号:倒数11行(3. 修饰符Action上方第二行)


至于RamdomDelay和CallFuncs这两个动作,……


应为


至于RandomDelay和CallFuncS这两个动作,……


备注:
原文错将RandomDelay中的n印刷成了m,另外CallFuncS结尾的S应为大写S

@new1eaf
Copy link

new1eaf commented Oct 31, 2020

类型:印刷错误
页码:167
行号:倒数15行(不含空行)(3. 修饰符Action上方第6行)


另外,Callfunc调用的函数也可以接收参数,如下:


应为


另外,CallFunc调用的函数也可以接收参数,如下:


备注:
CallFunc中的F应为大写字母F

@new1eaf
Copy link

new1eaf commented Nov 1, 2020

类型:修改建议
页码:189
行号:倒数16行(不含空行)(倒数第三自然段开头)


MainMenu主菜单类继承自Menu类,其菜单标题为"Tetris",……


建议修改为


MainMenu主菜单类继承自Menu类,其菜单标题为"TETRIS",……


备注:
建议将TETRIS修改为全大写字母以与代码保持统一。

@new1eaf
Copy link

new1eaf commented Nov 1, 2020

类型:印刷错误
页码:190
行号:menu.py第一行
&
页码:192
行号:menu.py第一行


--snip--


此处应用灰度印刷代替黑字印刷。

备注:
(无)

@new1eaf
Copy link

new1eaf commented Nov 1, 2020

类型:修改建议
页码:195
行号:16行


为了记录level、lines、score的数值,我们有必要把它们作为状态统计保存在一个文件中,而HUDLayer只负责从该状态文件中不断读取它们的数值即可。


建议修改为


为了记录level、lines、score的数值,我们有必要把它们作为状态统计保存在一个单例对象中,而HUDLayer只负责从该对象中不断读取它们的数值即可。


备注:
使用“状态文件”这个词容易引起读者理解上的歧义,即错误地理解为“需要将这些值实时写入磁盘上的文件中”。
※仅仅是修改建议,请作者酌情考虑是否需要修改。

@new1eaf
Copy link

new1eaf commented Nov 1, 2020

类型:印刷错误
页码:222
行号:倒数第11行


图层为Gameoverlayer,即游戏结束图层;然后是执行……


应为


图层为GameoverLayer,即游戏结束图层;然后是执行……


备注:
即GameoverLayer的大小写印刷错误,L应使用大写字母。

@new1eaf
Copy link

new1eaf commented Nov 1, 2020

类型:印刷错误
页码:224
行号:第5行


……,中间的一行文字显示”you win”,最下面的一行小字显示


应为


……,中间的一行文字显示”You win”,最下面的一行小字显示


备注:
与代码统一,此处You应用大写字母开头。

@new1eaf
Copy link

new1eaf commented Nov 1, 2020

类型:印刷错误
页码:225
行号:第7行(包含空行)


……,与”you win”这两行文字所执行的动作是Blink+


应为


……,与”You win”这两行文字所执行的动作是Blink+


备注:
与代码统一,此处You应用大写字母开头。

@new1eaf
Copy link

new1eaf commented Nov 1, 2020

类型:印刷错误
页码:232
行号:第13行


collidableobject。


应为


collidable object。


备注:
与前后一致,此处应有一个空格。

@new1eaf
Copy link

new1eaf commented Nov 1, 2020

类型:修改建议
页码:241
行号:倒数第9行


http://spritedatabase.net


建议修改为


https://spritedatabase.net/


备注:
书中的地址也可以正常访问,但会自动跳转到 https://spritedatabase.net/ 。考虑到行文前后统一,建议修改此处。另外为与其他两个地址格式统一,建议后面加上斜线"/"
※仅仅是修改建议,请作者酌情考虑是否需要修改。

@new1eaf
Copy link

new1eaf commented Nov 1, 2020

类型:修改建议
页码:249
行号:倒数第3行


假设有一幅TileLayer,它由……


建议修改为


假设有一幅Tile Layer,它由……


备注:
建议Tile Layer间加一空格,除与上下文保持一致外,无此空格易被误解为一个类名。
※仅仅是修改建议,请作者酌情考虑是否需要修改。

@new1eaf
Copy link

new1eaf commented Nov 1, 2020

类型:修改建议
页码:250
行号:红框“注意”中的最后一行


的properties属性中没有找到符合条件的item,则该函数返回None。


建议修改为


的properties属性中没有找到符合条件的item,则该函数返回[](空列表)。


备注:
根据Cocos2d库(v0.6.8)的源代码,此处应为[]而不是None。(虽说使用if判断的时候不区分这两个也没什么问题)
※仅仅是修改建议,请作者酌情考虑是否需要修改。

@new1eaf
Copy link

new1eaf commented Nov 2, 2020

类型:修改建议
页码:269
行号:倒数第9行


EventStack


建议修改为


Event Stack


备注:
建议Event Stack间加一空格,除与上下文保持一致外,无此空格易被误解为一个类名。
※仅仅是修改建议,请作者酌情考虑是否需要修改。

@new1eaf
Copy link

new1eaf commented Nov 2, 2020

类型:修改建议
页码:269
行号:倒数第7行


Handler,如("on_button" : on_button());Event Stack由Emitter管理。


建议修改为


Handler,如{"on_button" : on_button()};Event Stack由Emitter管理。


备注:
建议将外层圆括号修改为花括号,来表示这里是一个字典。
※仅仅是修改建议,请作者酌情考虑是否需要修改。

@new1eaf
Copy link

new1eaf commented Nov 2, 2020

类型:修改建议
页码:285
行号:图6-39

  1. ParticalSystem此处为类名,应去掉印刷中两个单词之间的空格
  2. 请追加表示继承-派生关系方向的箭头
    ※如前所述,建议使用空心三角形"◁"代替实心三角形"◀"来表示类的继承关系。(UML)

※仅仅是修改建议,请作者酌情考虑是否需要修改。

@new1eaf
Copy link

new1eaf commented Nov 2, 2020

类型:修改建议
页码:285
行号:倒数第9行
&
页码:287
行号:第5行、第6行、第8行(第2个)、倒数第14行、倒数第1行
&
页码:288
行号:第1行、倒数第20行(包含空行)、倒数第17行(包含空行)、倒数第16行(包含空行)
&
页码:289
行号:第3行(第2个)、第4行、第5行

建议将上述表示类名(或对象所属类)的Partical System中间的空格去掉,修改为ParticalSystem,但在不表示类名的地方作为专有名词保留Partical System的记法,以与书中其他部分的风格相统一。
※仅仅是修改建议,请作者酌情考虑是否需要修改。

@new1eaf
Copy link

new1eaf commented Nov 2, 2020

类型:印刷错误
页码:306
行号:倒数第11行


……,把on_key_press()中的第一个PASS用上面两行代码替代,这样一来,


应为


……,把on_key_press()中的第一个pass用上面两行代码替代,这样一来,


备注:
pass作为Python的关键字,此处应为小写。

@new1eaf
Copy link

new1eaf commented Nov 2, 2020

类型:印刷错误
页码:337
行号:第3行与第4行之间

此处漏印源代码文件名。应插入下面的文件名(代码标题样式):


game_scene/mario.py


备注:
(无)

@new1eaf
Copy link

new1eaf commented Nov 2, 2020

类型:印刷错误
页码:350、351
行号:350页倒数第10行(包含空行)之后的所有行、351页开始的代码段

从下面这行代码开始,以下各行都需要追加一个Tab的缩进

def raise_flag(self, x):
…………

备注:
该函数是类Mario的成员。

@new1eaf
Copy link

new1eaf commented Nov 2, 2020

类型:修改建议
页码:附录
行号:……

(P.S. 这个Comment来自一名有轻微强迫倾向的人)

  1. 目前主流Web浏览器的默认网络协议均为HTTPS,建议修改下面这个网站为https开头
    https://spritedatabase.net/
    ※cocos2d.org相关的两个网站仍然只能通过HTTP访问,所以这两行不需要改。
  2. 网址结尾的斜线“/”要么都加上,要么都去掉,要么只给根目录结尾的加上……

※仅仅是修改建议,请作者酌情考虑是否需要修改。

@new1eaf
Copy link

new1eaf commented Nov 2, 2020

类型:修改建议
页码:281
行号:14行、倒数第12行


play()函数的返回值player是一个pyglet.media.player.Player类的对象,这里通过指定
……
……
在这段代码中,我们创建了一个pyglet.media.player.Player类的对象sound_player,然后


建议修改为


play()函数的返回值player是一个pyglet.media.Player类的对象,这里通过指定
……
……
在这段代码中,我们创建了一个pyglet.media.Player类的对象sound_player,然后


备注:
pyglet.media.player.Player的记法应该是没有问题的,但为了与书中的示例代码一致,并且和官方文档的记述一致,还是建议修改为pyglet.media.Player好一些。

※仅仅是修改建议,请作者酌情考虑是否需要修改。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants