spaceship-sprites
Version:
Spaceship Sprite is a random ship sprite generator in typescript.
41 lines (40 loc) • 1.71 kB
TypeScript
import { Color } from '.';
import Sprite from './sprite';
interface SpriteBuilderOptions {
spriteDimensions?: [number, number];
blankPercentage?: number;
colorPallet?: Array<Color>;
useRandomPallet?: boolean;
randomColorCount?: number;
randomAlpha?: boolean;
border?: [number, number, number, number] | number;
horizontalSymmetry?: boolean;
blankColor?: Color;
}
declare class SpriteBuilder {
private spriteDimensions;
private blankPercentage;
private colorPallet;
private useRandomPallet;
private randomColorCount;
private randomAlpha;
private border;
private horizontalSymmetry;
private blankColor;
private result?;
constructor({ spriteDimensions, blankPercentage, colorPallet, useRandomPallet, randomColorCount, randomAlpha, border, horizontalSymmetry, blankColor }: SpriteBuilderOptions);
single(): SpriteBuilder;
withDim(dim: [number, number]): SpriteBuilder;
withBorder(borders?: [number, number, number, number], borderColor?: Color): SpriteBuilder;
withEdges(edgeColor?: Color, edgeWeight?: number, addExtraBorder?: boolean): SpriteBuilder;
transform(func: (dim: [number, number], x: number, y: number, pixel: Color) => Color): SpriteBuilder;
withPadding(dim: [number, number], paddingColor?: Color): SpriteBuilder;
build(): Sprite;
getPallet(): Array<Color>;
selectColor(pallet: Array<Color>): Color;
addBlanks(pallet: Array<Color>): Array<Color>;
static randInt(min: number, max: number): number;
static randomPallet(colorCount: number, randomAlpha: boolean): Array<Color>;
private validate;
}
export default SpriteBuilder;