local p = peripheral.wrap"right" function flag(cols,amount) -- cols is list, top to bottom local n = #cols local csz = math.floor(16/n) assert(csz>0, "too many stripes!") p.reset() local function q(i,c) local yM,ym = 16-(i*csz), 16-(i*csz)-csz return { 0, ym, 15, 16, yM, 16, texture="sc-peripherals:block/white", tint=c } end local shapes = {} for i,col in ipairs(cols) do shapes[i] = q(i-1,col) end p.addShapes(shapes) p.commit(amount or 1) end return {flag=flag}