koishi-plugin-card-21-game
Version:
Koishi 的 21 点(黑杰克)纸牌游戏插件。完整赌场规则。
37 lines (36 loc) • 2.91 kB
TypeScript
import { Context, Schema } from "koishi";
export declare const name = "card-21-game";
export declare const inject: string[];
export declare const usage = "\n## \uD83C\uDCCF 21\u70B9 (Blackjack)\n\n\u8FD8\u539F\u771F\u5B9E\u8D4C\u573A\u89C4\u5219\uFF0C\u652F\u6301\u5206\u724C\u3001\u53CC\u500D\u3001\u4FDD\u9669\u53CA\u6295\u964D\u3002\n\n### \uD83C\uDFAE \u5FEB\u901F\u5F00\u59CB\n1. **\u53D1\u8D77\u6E38\u620F**: \u8F93\u5165 `blackjack.\u6765\u4E00\u5C40`\u3002\n - **PVE\u6A21\u5F0F (\u9ED8\u8BA4)**: \u73A9\u5BB6\u5BF9\u6297\u5E84\u5BB6(Bot)\u3002\n - **PVP\u6A21\u5F0F (\u65E0\u5E84)**: \u8F93\u5165 `blackjack.\u6765\u4E00\u5C40 -n`\uFF0C\u73A9\u5BB6\u4E4B\u95F4\u4E92\u76F8\u6BD4\u5927\u5C0F\u3002\n2. **\u52A0\u5165**: \u6E38\u620F\u521B\u5EFA\u540E\uFF0C\u8F93\u5165 `\u4E0B\u6CE8 100` \u6216 `bet 100` \u52A0\u5165\u3002\n3. **\u5F00\u59CB**: \u6240\u6709\u73A9\u5BB6\u52A0\u5165\u540E\uFF0C\u8F93\u5165 `\u5F00\u59CB` \u53D1\u724C (\u5012\u8BA1\u65F6\u7ED3\u675F\u4E5F\u4F1A\u81EA\u52A8\u5F00\u59CB)\u3002\n\n### \uD83D\uDD79\uFE0F \u6E38\u620F\u64CD\u4F5C\n\u8F6E\u5230\u4F60\u65F6\uFF0C\u76F4\u63A5\u53D1\u9001\u6307\u4EE4\uFF1A\n- **\u8981\u724C (Hit)**: `\u8981\u724C`, `hit`, `h`\n- **\u505C\u724C (Stand)**: `\u505C\u724C`, `stand`, `s`\n- **\u52A0\u500D (Double)**: `\u52A0\u500D`, `double`, `d` (\u4EC5\u9996\u8F6E\uFF0C\u6CE8\u91D1\u7FFB\u500D\uFF0C\u53EA\u53D1\u4E00\u5F20)\n- **\u5206\u724C (Split)**: `\u5206\u724C`, `split`, `p` (\u4EC5\u8D77\u624B\u5BF9\u5B50\uFF0C\u6CE8\u91D1\u7FFB\u500D)\n- **\u6295\u964D (Surrender)**: `\u6295\u964D` (\u4EC5\u5F00\u5C40\u524D5\u79D2\uFF0C\u8F93\u4E00\u534A)\n- **\u4FDD\u9669 (Insurance)**: `\u4FDD\u9669` (\u4EC5\u5E84\u5BB6\u660E\u724C\u4E3AA\uFF0C\u4FDD\u4E00\u534A)\n\n### \u2699\uFE0F \u89C4\u5219\u8BF4\u660E\n- **Blackjack (3:2)**: \u8D77\u624B2\u5F20\u724C\u76F4\u63A521\u70B9\u3002\u5206\u724C\u540E\u768421\u70B9\u4E0D\u7B97BJ\u3002\n- **\u5E84\u5BB6\u89C4\u5219**: \u5E84\u5BB6\u70B9\u6570 < 17 \u5FC5\u987B\u8981\u724C\uFF0C>= 17 \u505C\u724C\u3002\n- **\u5206A\u7279\u4F8B**: \u5206A\u540E\u6BCF\u5BB6\u53EA\u53D1\u4E00\u5F20\u724C\uFF0C\u5F3A\u5236\u7ED3\u675F\u8BE5\u624B\u724C\u3002\n";
export interface Config {
minBet: number;
deckCount: number;
playerTurnTimeout: number;
joinPhaseTimeout: number;
currency: "monetary" | "bella";
currencyName: string;
dealerHitSoft17: boolean;
}
export declare const Config: Schema<Config>;
declare module "koishi" {
interface Tables {
blackjack_stats: BlackjackStats;
bella_sign_in: BellaSignIn;
}
}
interface BellaSignIn {
id: string;
point: number;
}
export interface BlackjackStats {
id: number;
userId: string;
username: string;
wins: number;
loses: number;
draws: number;
bjCount: number;
totalProfit: number;
}
export declare function apply(ctx: Context, config: Config): void;
export {};