hathora-et-labora-game
Version:
Game logic reducer for Uwe Rosenberg's Ora et Labora
91 lines (90 loc) • 4.19 kB
TypeScript
import { Cost, ResourceEnum, SettlementCost, StateReducer, Tableau } from '../types';
export declare const basicResources: ResourceEnum[];
export declare const allResource: [key: keyof Cost, token: string][];
export declare const combinations: (maxLength: number, tokens: string[], prefix?: string[]) => string[];
export declare const parseResourceParam: (p?: string) => Cost;
export declare const stringRepeater: import("ts-toolbelt/out/Function/Curry").Curry<(repeated: string, count: number) => string>;
export declare const resourceArray: (resource: ResourceEnum, maxAmount?: number) => (b: number) => string[];
export declare const zip3: (arrA: string[], arrB: string[], arrC: string[]) => string[];
export declare const foodCostOptions: import("ts-toolbelt/out/Function/Curry").Curry<(food: number, player: Cost) => string[]>;
export declare const energyCostOptions: import("ts-toolbelt/out/Function/Curry").Curry<(energy: number, player: Cost) => string[]>;
export declare const coinCostOptions: import("ts-toolbelt/out/Function/Curry").Curry<(coins: number, player: Cost) => string[]>;
export declare const pointCostOptions: import("ts-toolbelt/out/Function/Curry").Curry<(points: number, player: Cost) => string[]>;
export declare const concatStr: (a: string, b: string) => string;
export declare const settlementCostOptions: import("ts-toolbelt/out/Function/Curry").Curry<({ food, energy }: SettlementCost, player: Cost) => string[]>;
export declare const differentGoods: (cost: Cost) => number;
export declare const totalGoods: (cost: Cost) => number;
export declare const multiplyGoods: (by: number) => (cost: Cost) => {
peat?: number;
penny?: number;
clay?: number;
wood?: number;
grain?: number;
sheep?: number;
stone?: number;
flour?: number;
grape?: number;
nickel?: number;
malt?: number;
coal?: number;
book?: number;
ceramic?: number;
whiskey?: number;
straw?: number;
meat?: number;
ornament?: number;
bread?: number;
wine?: number;
beer?: number;
reliquary?: number;
};
export declare const maskGoods: (goods: (keyof Cost)[]) => (cost: Cost) => Cost;
export declare const costMoney: ({ penny, nickel, wine, whiskey }: {
penny?: number | undefined;
nickel?: number | undefined;
wine?: number | undefined;
whiskey?: number | undefined;
}) => number;
export declare const costEnergy: ({ coal, peat, wood, straw }: {
coal?: number | undefined;
peat?: number | undefined;
wood?: number | undefined;
straw?: number | undefined;
}) => number;
export declare const costFood: ({ penny, grain, sheep, flour, grape, nickel, malt, whiskey, meat, bread, wine, beer, }: {
penny?: number | undefined;
grain?: number | undefined;
sheep?: number | undefined;
flour?: number | undefined;
grape?: number | undefined;
nickel?: number | undefined;
malt?: number | undefined;
whiskey?: number | undefined;
meat?: number | undefined;
bread?: number | undefined;
wine?: number | undefined;
beer?: number | undefined;
}) => number;
export declare const costPoints: ({ nickel, whiskey, ceramic, book, reliquary, ornament, wine }: {
nickel?: number | undefined;
whiskey?: number | undefined;
ceramic?: number | undefined;
book?: number | undefined;
reliquary?: number | undefined;
ornament?: number | undefined;
wine?: number | undefined;
}) => number;
export declare const goodsPoints: ({ penny, nickel, whiskey, wine, ceramic, book, reliquary, ornament, }: {
penny?: number | undefined;
nickel?: number | undefined;
whiskey?: number | undefined;
wine?: number | undefined;
ceramic?: number | undefined;
book?: number | undefined;
reliquary?: number | undefined;
ornament?: number | undefined;
}) => number;
export declare const settlementCost: (cost: Cost) => SettlementCost;
export declare const canAfford: (cost: Cost) => (player: Tableau) => Tableau | undefined;
export declare const rewardCostOptions: import("ts-toolbelt/out/Function/Curry").Curry<(totalPoints: number) => string[]>;
export declare const shortGameBonusProduction: (cost: Cost) => StateReducer;