[squeak-dev] The Trunk: EToys-ct.406.mcz
commits at source.squeak.org
commits at source.squeak.org
Thu Feb 18 13:16:16 UTC 2021
Marcel Taeumel uploaded a new version of EToys to project The Trunk:
http://source.squeak.org/trunk/EToys-ct.406.mcz
==================== Summary ====================
Name: EToys-ct.406
Author: ct
Time: 17 September 2020, 12:23:18.233813 pm
UUID: 0b76e3b6-1567-c542-8350-de5b7a28fcf2
Ancestors: EToys-eem.400
Minor Tetris refactorings. Expose action selectors for game control as part of the public Tetris protocol. This will be used to play/pause a tetris game from the outside. Recategorize some methods.
This commit is part of reconstruction of Objectland (also known as "The Worlds of Squeak"). For more information, see: http://forum.world.st/The-Inbox-MorphicExtras-ct-267-mcz-td5104764.html
=============== Diff against EToys-eem.400 ===============
Item was changed:
+ ----- Method: Tetris class>>colors (in category 'constants') -----
- ----- Method: Tetris class>>colors (in category 'as yet unclassified') -----
colors
^{
Color r: 0.5 g: 0 b: 0.
Color r: 0 g: 0.5 b: 0.
Color r: 0 g: 0 b: 0.5.
Color r: 0.5 g: 0.5 b: 0.
Color r: 0.5 g: 0 b: 0.5.
Color r: 0 g: 0.5 b: 0.5
}
!
Item was changed:
----- Method: Tetris>>makeGameControls (in category 'initialization') -----
makeGameControls
^ self rowForButtons
addMorph: (self
buildButtonTarget: self
label: 'Quit' translated
selector: #delete
help: 'quit' translated);
addMorph: (self
+ buildButtonTarget: self
- buildButtonTarget: board
label: 'Pause' translated
selector: #pause
help: 'pause' translated);
addMorph: (self
+ buildButtonTarget: self
- buildButtonTarget: board
label: 'New game' translated
selector: #newGame
help: 'new game' translated)!
Item was added:
+ ----- Method: Tetris>>newGame (in category 'actions') -----
+ newGame
+
+ board newGame.!
Item was added:
+ ----- Method: Tetris>>pause (in category 'actions') -----
+ pause
+
+ board pause.!
Item was changed:
+ ----- Method: TetrisBlock class>>flipShapes: (in category 'support') -----
- ----- Method: TetrisBlock class>>flipShapes: (in category 'as yet unclassified') -----
flipShapes: anArray
^OrderedCollection new
add: anArray;
add: (anArray collect: [ :each | each y negated @ each x]);
add: (anArray collect: [ :each | each x negated @ each y negated]);
add: (anArray collect: [ :each | each y @ each x negated]);
yourself
!
Item was changed:
+ ----- Method: TetrisBlock class>>shapeChoices (in category 'constants') -----
- ----- Method: TetrisBlock class>>shapeChoices (in category 'as yet unclassified') -----
shapeChoices
^ ShapeChoices ifNil: [
ShapeChoices := {
{ { 0 @ 0 . 1 @ 0 . 0 @ 1 . 1 @ 1 } }. "square - one is sufficient here"
self flipShapes: { 0 @ 0 . -1 @ 0 . 1 @ 0 . 0 @ -1 }. "T"
{
{ 0 @ 0 . -1 @ 0 . 1 @ 0 . 2 @ 0 }.
{ 0 @ 0 . 0 @ -1 . 0 @ 1 . 0 @ 2 } "long - two are sufficient here"
}.
self flipShapes: { 0 @ 0 . 0 @ -1 . 0 @ 1 . 1 @ 1 }. "L"
self flipShapes: { 0 @ 0 . 0 @ -1 . 0 @ 1 . -1 @ 1 }. "inverted L"
self flipShapes: { 0 @ 0 . -1 @ 0 . 0 @ -1 . 1 @ -1 }. "S"
self flipShapes: { 0 @ 0 . 1 @ 0 . 0 @ -1 . -1 @ -1 } "Z"
}.
]
!
Item was changed:
+ ----- Method: TetrisBoard>>cellSize (in category 'accessing') -----
- ----- Method: TetrisBoard>>cellSize (in category 'as yet unclassified') -----
cellSize
^12 at 12!
Item was changed:
+ ----- Method: TetrisBoard>>originForCell: (in category 'accessing') -----
- ----- Method: TetrisBoard>>originForCell: (in category 'as yet unclassified') -----
originForCell: aPoint
^aPoint - (1 at 1) * self cellSize + self position
!
More information about the Squeak-dev
mailing list
|