63 lines
1.8 KiB
TypeScript
63 lines
1.8 KiB
TypeScript
|
import type { VillageState } from "./village";
|
||
|
|
||
|
|
||
|
export default {
|
||
|
'woodcutter': {
|
||
|
name: 'Woodcutter',
|
||
|
level: 1,
|
||
|
cost: (level: number) => {
|
||
|
return {
|
||
|
wood: level * 10,
|
||
|
stone: level * 10,
|
||
|
iron: level * 10,
|
||
|
food: 0,
|
||
|
};
|
||
|
},
|
||
|
behavior: {
|
||
|
production: (V: VillageState, self: any, delta: number) => {
|
||
|
const outputPerMinute = 5 * (self.level * self.level);
|
||
|
const outputPerMilisecond = outputPerMinute / 60.0 / 1000.0;
|
||
|
V.resources.wood += outputPerMilisecond * delta;
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
'mine': {
|
||
|
name: 'Mine',
|
||
|
level: 1,
|
||
|
cost: (level: number) => {
|
||
|
return {
|
||
|
wood: level * 10,
|
||
|
stone: level * 10,
|
||
|
iron: level * 10,
|
||
|
food: 0,
|
||
|
};
|
||
|
},
|
||
|
behavior: {
|
||
|
production: (V: VillageState, self: any, delta: number) => {
|
||
|
const outputPerMinute = 5 * (self.level * self.level);
|
||
|
const outputPerMilisecond = outputPerMinute / 60.0 / 1000.0;
|
||
|
V.resources.iron += outputPerMilisecond * delta;
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
'pit': {
|
||
|
name: 'Pit',
|
||
|
level: 1,
|
||
|
cost: (level: number) => {
|
||
|
return {
|
||
|
wood: level * 10,
|
||
|
stone: level * 10,
|
||
|
iron: level * 10,
|
||
|
food: 0,
|
||
|
};
|
||
|
},
|
||
|
behavior: {
|
||
|
production: (V: VillageState, self: any, delta: number) => {
|
||
|
const outputPerMinute = 5 * (self.level * self.level);
|
||
|
const outputPerMilisecond = outputPerMinute / 60.0 / 1000.0;
|
||
|
V.resources.stone += outputPerMilisecond * delta;
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
};
|