Complete Cocos Creator port with level bundles, themes, and tooling.

Adds level prefabs, theme assets, audio, extensions, and deployment scripts for the Unity WebGL migration.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-06-16 15:30:58 +08:00
parent cba5105908
commit d393302388
6248 changed files with 17322729 additions and 11036 deletions

View File

@@ -30,6 +30,35 @@ export enum Skin {
sanxing = 5,
}
const SKIN_TO_THEME: Record<Skin, string> = {
[Skin.Silu]: 'silu',
[Skin.Panda]: 'chinese',
[Skin.RedArmy]: 'redArmy',
[Skin.numMan]: 'numMan',
[Skin.snow]: 'snow',
[Skin.sanxing]: 'sanxing',
};
const THEME_TO_SKIN: Record<string, Skin> = {
silu: Skin.Silu,
chinese: Skin.Panda,
redarmy: Skin.RedArmy,
redArmy: Skin.RedArmy,
numMan: Skin.numMan,
snow: Skin.snow,
sanxing: Skin.sanxing,
};
export function skinToTheme(skin: Skin): string {
return SKIN_TO_THEME[skin] ?? 'silu';
}
export function themeToSkin(theme: string | undefined): Skin {
if (!theme) return Skin.Silu;
const key = theme.trim();
return THEME_TO_SKIN[key] ?? THEME_TO_SKIN[key.toLowerCase()] ?? Skin.Silu;
}
export enum GameState {
Run = 0,
ResultWin = 1,
@@ -68,7 +97,10 @@ function buildMoveTable(entries: [MoverRole, GridType, GridType, boolean, number
return m;
}
/** 单人 moveCondition */
/**
* 单人 moveCondition — 基于 Unity Define.cs并扩展骑乘 → Jump 跳跃
* 判定入口gameplay/MoveRules.checkMoveStep
*/
export const moveCondition = buildMoveTable([
['player', GridType.Across, GridType.Across, false, 1],
['player', GridType.Jump, GridType.Across, false, 1],
@@ -84,6 +116,8 @@ export const moveCondition = buildMoveTable([
['player', GridType.Jump, GridType.Jump, true, 1],
['player', GridType.Ride, GridType.None, false, 1],
['player', GridType.Ride, GridType.None, true, 1],
['player', GridType.Ride, GridType.Jump, true, 1],
['player', GridType.None, GridType.Jump, true, 1],
['player', GridType.None, GridType.None, false, 1],
['player', GridType.None, GridType.None, true, 1],
['player', GridType.None, GridType.Across, false, 1],
@@ -93,7 +127,7 @@ export const moveCondition = buildMoveTable([
['vehicle', GridType.Ride, GridType.None, false, 1],
]);
/** 多人 moveConditionMult与 Unity Define.moveConditionMult 一致 */
/** 多人 moveConditionMult与 Unity Define.cs moveConditionMult 逐项一致 */
const multEntries: [MoverRole, GridType, GridType, boolean, number][] = [
['player', GridType.Across, GridType.Across, false, 1],
['player', GridType.Across, GridType.Across, true, 1],
@@ -111,6 +145,8 @@ const multEntries: [MoverRole, GridType, GridType, boolean, number][] = [
['player', GridType.Jump, GridType.Jump, true, 1],
['player', GridType.Ride, GridType.None, false, 1],
['player', GridType.Ride, GridType.None, true, 1],
['player', GridType.Ride, GridType.Jump, true, 1],
['player', GridType.None, GridType.Jump, true, 1],
['player', GridType.None, GridType.None, false, 1],
['player', GridType.None, GridType.None, true, 1],
['player', GridType.None, GridType.Across, false, 1],