This repository has been archived on 2022-01-16. You can view files and clone it, but cannot push or open issues or pull requests.
2021-08-20 20:47:02 -05:00
|
|
|
enum ResourceType {
|
2021-08-21 09:22:11 -05:00
|
|
|
Religion = 'religion',
|
2021-08-22 11:07:49 -05:00
|
|
|
Job = 'job',
|
2021-08-21 09:22:11 -05:00
|
|
|
Consumable = 'consumable',
|
2021-08-21 12:45:58 -05:00
|
|
|
Infrastructure = 'infrastructure',
|
2021-08-21 19:02:57 -05:00
|
|
|
Passive = 'passive'
|
2021-08-20 20:47:02 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
interface IResource {
|
2021-08-21 12:45:58 -05:00
|
|
|
name: string | null;
|
|
|
|
description: string | null;
|
2021-08-20 20:47:02 -05:00
|
|
|
|
|
|
|
resourceType: ResourceType;
|
|
|
|
value: number;
|
2021-08-22 11:07:49 -05:00
|
|
|
valueInWholeNumbers: boolean;
|
2021-08-20 20:47:02 -05:00
|
|
|
|
|
|
|
clickText: string;
|
|
|
|
clickDescription: string;
|
|
|
|
|
2021-08-21 12:45:58 -05:00
|
|
|
clickAction (state: GameState): void;
|
|
|
|
|
|
|
|
cost: { [key: string]: number };
|
|
|
|
|
|
|
|
max (state: GameState): number | null;
|
|
|
|
inc (state: GameState): number | null;
|
|
|
|
|
|
|
|
isUnlocked (state: GameState): boolean;
|
|
|
|
|
|
|
|
advanceAction (time: number, state: GameState): void;
|
2021-08-20 20:47:02 -05:00
|
|
|
}
|