194 lines
5.4 KiB
TypeScript
194 lines
5.4 KiB
TypeScript
import { ExtrapolationMode } from "cc";
|
|
export let ICON_WIDTH = 173;
|
|
export let ICON_HEIGHT = 166;
|
|
|
|
// 图标赔率
|
|
export let ICON_RATE = {
|
|
0: [0, 0, 0, 0], // Wild
|
|
1: [0, 0, 0, 0], // Scatter
|
|
2: [80, 50, 40, 30], // 肉卷
|
|
3: [60, 50, 25, 20], // 虾
|
|
4: [40, 30, 25, 10], // 鱼丸
|
|
5: [30, 20, 15, 8], // 香菇
|
|
6: [15, 12, 10, 6], // 玉米
|
|
7: [15, 12, 10, 6], // 白菜
|
|
8: [10, 8, 6, 4], // A
|
|
9: [10, 8, 6, 4], // K
|
|
10: [4, 3, 2, 1], // Q
|
|
11: [4, 3, 2, 1], // J
|
|
12: [4, 3, 2, 1], // 10
|
|
}
|
|
|
|
export let ROLLER_RULE = [
|
|
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12],
|
|
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12],
|
|
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12],
|
|
]
|
|
|
|
export let FREE_SPIN_ROLLER_RULE = [
|
|
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12],
|
|
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12],
|
|
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12],
|
|
]
|
|
|
|
|
|
export enum ICON_STATE {
|
|
ACTIVATE, // 激活
|
|
IDLE, // 在转盘不动的状态
|
|
ROTATE, // 旋转中
|
|
FAST, // 快速旋转
|
|
WIN, // 图标中奖
|
|
HIDE, // 对象池回收
|
|
}
|
|
|
|
|
|
// 单个滚轮事件
|
|
export enum ROLLER_EVENT {
|
|
ON_R_ICON_CREATE = 'ON_R_ICON_CREATE', // 当滚轮上随机Icon创建的时候回调
|
|
ROLLER_UNIFORM = "ROLLER_UNIFORM", // 滚轮开始匀速
|
|
ROLLER_DECELERATE = "ROLLER_DECELERATE", // 滚轮开始减速
|
|
LAST_PAGE_CREATE = 'LAST_PAGE_CREATE', // 最后一页创建
|
|
ROLLER_BOUNCE = 'ROLLER_BOUNCE', // 滚轮开始回弹
|
|
ROLLER_STOP = 'ROLLER_STOP', // 滚轮停止
|
|
|
|
// 消除相关
|
|
ICON_DELETED = 'ICON_DELETED', // 图标删除
|
|
ICON_CREATE = 'ICON_CREATE', // 图标创建
|
|
ICON_FALLEN = 'ICON_FALLEN', // 图标落下
|
|
}
|
|
|
|
// 滚轮组合事件
|
|
export enum ROLLER_COMBINE_EVENT {
|
|
ONE_ROLLER_STOP = 'ONE_ROLLER_STOP', // 一个滚轮停止的事件
|
|
ALL_ROLLER_STOP = 'ALL_ROLLER_STOP', // 所有滚轮停止的事件
|
|
ROLLER_BOUNCE = 'ROLLER_BOUNCE', // 滚轮开始回弹
|
|
ROLLER_DECELERATE = 'ROLLER_DECELERATE', // 滚轮开始减速
|
|
|
|
// 消除相关
|
|
ALL_ROLLER_ICONS_DELETED = 'ALL_ROLLER_ICONS_DELETED', // 所有滚轮图标删除
|
|
ALL_ROLLER_ICONS_CREATED = 'ALL_ROLLER_ICONS_CREATED', // 所有滚轮图标创建
|
|
ALL_ROLLER_ICONS_FALLEN = 'ALL_ROLLER_ICONS_FALLEN', // 所有滚轮图标落下
|
|
}
|
|
|
|
export enum SLOT_BAR_EVENT {
|
|
BET_CHANGE = 'BET_CHANGE', // 下注金额改变
|
|
ON_TEST_SPIN_CLICK = 'ON_TEST_SPIN_CLICK', // 测试旋转
|
|
ON_SPIN_CLICK = 'ON_SPIN_CLICK',
|
|
ON_MANUAL_STOP = 'ON_MANUAL_STOP',
|
|
FAST_SPIN = 'FAST_SPIN', // 快速旋转
|
|
ON_AUTO_SPIN_CLICK = 'ON_AUTO_SPIN_CLICK', // 自动旋转点击
|
|
ON_EXIT_CLICK = 'ON_EXIT_CLICK', // 退出游戏
|
|
}
|
|
|
|
export enum SYS_GIFT {
|
|
CLICK_CONTINUE = 'CLICK_CONTINUE',
|
|
SETTLE_CONTINUE = 'SETTLE_CONTINUE',
|
|
}
|
|
|
|
export enum SLOT_GAME_EVENT {
|
|
ALL_ROLLER_STOP = 'ALL_ROLLER_STOP', // 事件传递
|
|
ALL_ROLLER_ICONS_DELETED = 'ALL_ROLLER_ICONS_DELETED', // 所有滚轮图标删除
|
|
ALL_ROLLER_ICONS_CREATED = 'ALL_ROLLER_ICONS_CREATED', // 所有滚轮图标创建
|
|
ALL_ROLLER_ICONS_FALLEN = 'ALL_ROLLER_ICONS_FALLEN', // 所有滚轮图标落下
|
|
}
|
|
|
|
export enum WIN_TYPE {
|
|
NONE,
|
|
NORAML_WIN,
|
|
MIDDLE_WIN,
|
|
BIG_WIN,
|
|
MEGA_WIN,
|
|
SUPER_MEGA_WIN,
|
|
}
|
|
|
|
|
|
export interface FreeSpin {
|
|
LeftCount: number, // 剩余次数
|
|
MaxCount: number, // 总共次数
|
|
}
|
|
|
|
export interface GameInfo {
|
|
// 当前余额
|
|
Balance: number;
|
|
// 是否关闭购买
|
|
CloseBuyGame: boolean;
|
|
// 下注区间
|
|
BetGrade: number[];
|
|
// 游戏数据
|
|
Data: GameData
|
|
// 购买倍率
|
|
BuyMul: number;
|
|
// 最大购买倍数
|
|
MaxBuyBet: number
|
|
}
|
|
|
|
export interface GameData {
|
|
// 总计得分
|
|
AllScore: number;
|
|
// 当前得分
|
|
Score: number;
|
|
// 单次旋转得分
|
|
SpinScore: number;
|
|
// 盘面数据
|
|
Data: number[];
|
|
// 消除数据
|
|
Remove: number[];
|
|
// 游戏模式 0:普通模式 1:免费游戏模式
|
|
Mode: number;
|
|
// 免费游戏信息
|
|
FreeSpin: FreeSpin | null;
|
|
// 当前下注
|
|
Bet: number;
|
|
// 不规则图标信息
|
|
CroSymbols: {
|
|
[key: string]: {
|
|
Type: number;
|
|
PosFirst: number;
|
|
PosLast: number;
|
|
Symbol: number;
|
|
}
|
|
};
|
|
// 连线数
|
|
WaysNum: number;
|
|
// 每列图标数量
|
|
SymbolNumOfReels: number[];
|
|
// 是否结束
|
|
IsEnd: boolean;
|
|
// 图标中奖信息
|
|
WinInfo: {
|
|
Score: number;
|
|
Multi: number;
|
|
MultiValue: any;
|
|
Desc: any;
|
|
};
|
|
// 中奖位置
|
|
WinPosition: any;
|
|
// 盘面信息
|
|
Symbol: {
|
|
ScNum: number;
|
|
winMulti: number;
|
|
WaysNum: number;
|
|
ReelNum: number[];
|
|
MultiValue: number[];
|
|
Middle: number[];
|
|
};
|
|
// 盘面变化
|
|
PanChanges: any;
|
|
// 局信息
|
|
RoundInfo: any;
|
|
// scatter数量
|
|
ScNum: number;
|
|
// 获得游戏次数
|
|
GetGamesTimes: number;
|
|
// 盈利分数
|
|
ProfitScore: number;
|
|
// 得分列表
|
|
Scores: any;
|
|
}
|
|
|
|
export interface SpinData {
|
|
|
|
|
|
}
|
|
|