diff --git a/src/cbclient.ts b/src/cbclient.ts index ce6a741..464e8e6 100644 --- a/src/cbclient.ts +++ b/src/cbclient.ts @@ -1,5 +1,36 @@ +import { GuildMember, User } from "discord.js"; import { CommandClient } from "./commandclient"; +import { Player } from "./models/player"; export class CBClient extends CommandClient { - + async createPlayer(user: User | GuildMember) { + return await Player.create({ + user_id: user.id, + start: Math.floor(Date.now()/1000) + }); + } + + async findOrCreatePlayer(user: User | GuildMember) { + const player = await Player.findOne({ + where: { + user_id: user.id + } + }); + + if (!player) return await this.createPlayer(user); + return player; + } + + async spendOnPlayer(player: Player, amount: number) { + const currency = Date.now() - player.start - player.spent; + + if (currency - amount < 0) return false; + await player.update("spent", player.spent+amount); + return true; + } + + async grantMoneyToPlayer(player: Player, amount: number) { + await player.update("spent", player.spent-amount); + return; + } } \ No newline at end of file