cambridge-modpack/tetris/randomizers/bag63.lua

24 lines
765 B
Lua

local Randomizer = require 'tetris.randomizers.randomizer'
local Bag63Randomiser = Randomizer:extend()
function Bag63Randomiser:initialize()
self.bag = {}
end
function Bag63Randomiser:generatePiece()
if next(self.bag) == nil then
self.bag = {
"I", "I", "I", "I", "I", "I", "I", "I", "I",
"T", "T", "T", "T", "T", "T", "T", "T", "T",
"L", "L", "L", "L", "L", "L", "L", "L", "L",
"J", "J", "J", "J", "J", "J", "J", "J", "J",
"S", "S", "S", "S", "S", "S", "S", "S", "S",
"Z", "Z", "Z", "Z", "Z", "Z", "Z", "Z", "Z",
"O", "O", "O", "O", "O", "O", "O", "O", "O",
}
end
return table.remove(self.bag, math.random(#self.bag))
end
return Bag63Randomiser