Compare commits

...

3 Commits

Author SHA1 Message Date
TJH
128b4e89a0 节奏调整
All checks were successful
Gitea Actions Demo / Explore-Gitea-Actions (push) Successful in 2m1s
2025-12-24 14:35:01 +08:00
TJH
9d94fb4b72 历史记录修改 2025-12-24 11:54:57 +08:00
TJH
6c9f4d7cb2 点击屏幕快速停止 2025-12-24 10:41:21 +08:00
15 changed files with 1894 additions and 1676 deletions

View File

@ -1382,8 +1382,8 @@
}, },
"_lscale": { "_lscale": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
"x": 1, "x": 0.8,
"y": 1, "y": 0.8,
"z": 1 "z": 1
}, },
"_mobility": 0, "_mobility": 0,

View File

@ -1828,7 +1828,7 @@
}, },
"_contentSize": { "_contentSize": {
"__type__": "cc.Size", "__type__": "cc.Size",
"width": 251.25, "width": 269.0234375,
"height": 75.6 "height": 75.6
}, },
"_anchorPoint": { "_anchorPoint": {
@ -1864,7 +1864,7 @@
"b": 255, "b": 255,
"a": 255 "a": 255
}, },
"_string": "Free Spin: 1/8", "_string": "Free Spin0/0",
"_horizontalAlign": 0, "_horizontalAlign": 0,
"_verticalAlign": 1, "_verticalAlign": 1,
"_actualFontSize": 40, "_actualFontSize": 40,
@ -5638,7 +5638,7 @@
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
"x": -13.830078125, "x": -5.830078125,
"y": 0, "y": 0,
"z": 0 "z": 0
}, },
@ -5797,7 +5797,7 @@
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
"x": 96.73583984375, "x": 104.73583984375,
"y": 0, "y": 0,
"z": 0 "z": 0
}, },
@ -5933,7 +5933,7 @@
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
"x": 184.787109375, "x": 192.787109375,
"y": 0, "y": 0,
"z": 0 "z": 0
}, },

View File

@ -500,7 +500,7 @@
"__expectedType__": "sp.SkeletonData" "__expectedType__": "sp.SkeletonData"
}, },
"defaultSkin": "default", "defaultSkin": "default",
"defaultAnimation": "1_1", "defaultAnimation": "<None>",
"_premultipliedAlpha": false, "_premultipliedAlpha": false,
"_timeScale": 1, "_timeScale": 1,
"_preCacheMode": 0, "_preCacheMode": 0,

View File

@ -500,7 +500,7 @@
"__expectedType__": "sp.SkeletonData" "__expectedType__": "sp.SkeletonData"
}, },
"defaultSkin": "default", "defaultSkin": "default",
"defaultAnimation": "1_1", "defaultAnimation": "<None>",
"_premultipliedAlpha": false, "_premultipliedAlpha": false,
"_timeScale": 1, "_timeScale": 1,
"_preCacheMode": 0, "_preCacheMode": 0,

View File

@ -885,7 +885,7 @@
"_contentSize": { "_contentSize": {
"__type__": "cc.Size", "__type__": "cc.Size",
"width": 1080, "width": 1080,
"height": 18120 "height": 1812
}, },
"_anchorPoint": { "_anchorPoint": {
"__type__": "cc.Vec2", "__type__": "cc.Vec2",

View File

@ -996,7 +996,7 @@
"_contentSize": { "_contentSize": {
"__type__": "cc.Size", "__type__": "cc.Size",
"width": 1080, "width": 1080,
"height": 18120 "height": 1812
}, },
"_anchorPoint": { "_anchorPoint": {
"__type__": "cc.Vec2", "__type__": "cc.Vec2",

File diff suppressed because it is too large Load Diff

View File

@ -580,7 +580,7 @@
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
"x": -0.00006837247929070145, "x": 0,
"y": 622.0899658203125, "y": 622.0899658203125,
"z": 0 "z": 0
}, },
@ -588,8 +588,8 @@
"__type__": "cc.Quat", "__type__": "cc.Quat",
"x": 0, "x": 0,
"y": 0, "y": 0,
"z": 4.3711388286737347e-8, "z": 4.371138828673731e-8,
"w": 0.9999999999999981 "w": 0.999999999999999
}, },
"_lscale": { "_lscale": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@ -603,7 +603,7 @@
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
"x": 0, "x": 0,
"y": 0, "y": 0,
"z": 0.000005008956130975262 "z": 0.000005008956130975261
}, },
"_id": "" "_id": ""
}, },
@ -637,7 +637,7 @@
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
"x": 0, "x": 75.802,
"y": 31.482, "y": 31.482,
"z": 0 "z": 0
}, },
@ -1246,8 +1246,8 @@
}, },
"_lscale": { "_lscale": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
"x": 1, "x": 0.8,
"y": 1, "y": 0.8,
"z": 1 "z": 1
}, },
"_mobility": 0, "_mobility": 0,

View File

@ -61,6 +61,9 @@ export class SlotBar extends Component {
@property(Prefab) @property(Prefab)
pfb_rules: Prefab = null; pfb_rules: Prefab = null;
@property(Node)
private manualStopNode: Node = null;
private MaskNode: Node = null; private MaskNode: Node = null;
private balanceLabel: Label = null; private balanceLabel: Label = null;
private betLabel: Label = null; private betLabel: Label = null;
@ -265,6 +268,7 @@ export class SlotBar extends Component {
if (!this.hasClickSpin && !this.hasClickManualStop) { if (!this.hasClickSpin && !this.hasClickManualStop) {
AudioManager.instance.playSFX("Spin_Button_Click"); AudioManager.instance.playSFX("Spin_Button_Click");
this.hasClickSpin = true; this.hasClickSpin = true;
this.manualStopNode.active = true
this.node.emit(SLOT_BAR_EVENT.ON_SPIN_CLICK); this.node.emit(SLOT_BAR_EVENT.ON_SPIN_CLICK);
this.spinAni.startSpin(); this.spinAni.startSpin();
@ -284,6 +288,7 @@ export class SlotBar extends Component {
if (!this.hasClickSpin && !this.hasClickManualStop) { if (!this.hasClickSpin && !this.hasClickManualStop) {
// AudioManager.instance.playSFX('Spin_Button_Click'); // AudioManager.instance.playSFX('Spin_Button_Click');
this.hasClickSpin = true; this.hasClickSpin = true;
this.manualStopNode.active = true
this.setBtnEnable(this.subBtn, false); this.setBtnEnable(this.subBtn, false);
this.setBtnEnable(this.addBtn, false); this.setBtnEnable(this.addBtn, false);
@ -313,6 +318,12 @@ export class SlotBar extends Component {
} }
} }
onBtnManualStop() {
if (this.hasClickSpin && !this.hasClickManualStop) {
this.node.emit(SLOT_BAR_EVENT.ON_MANUAL_STOP);
}
}
manualStop() { manualStop() {
this.hasClickManualStop = true; this.hasClickManualStop = true;
this.spinAni.stopSpin(); this.spinAni.stopSpin();
@ -595,6 +606,7 @@ export class SlotBar extends Component {
resetAllState() { resetAllState() {
this.hasClickSpin = false; this.hasClickSpin = false;
this.hasClickManualStop = false; this.hasClickManualStop = false;
this.manualStopNode.active = false
this.isAuto = false; this.isAuto = false;
this.setBtnVisible(this.spinBtn, true); this.setBtnVisible(this.spinBtn, true);
this.spinAni.stopSpin(); this.spinAni.stopSpin();

View File

@ -115,6 +115,7 @@ export class SlotScene extends Component {
await this.init(); await this.init();
// this.TotalWin.show(505000, 8) // this.TotalWin.show(505000, 8)
// this.FreeSpinEnter.show(8) // this.FreeSpinEnter.show(8)
// this.FreeSpinAdd.show(5)
// this.BigWinUI.show(800000, WIN_TYPE.SUPER_MEGA_WIN, 10000) // this.BigWinUI.show(800000, WIN_TYPE.SUPER_MEGA_WIN, 10000)
} }

View File

@ -18,7 +18,6 @@ export class FreeSpinAdd extends Component {
closeCallBack: (() => void) | null = null; closeCallBack: (() => void) | null = null;
show(freeCount: number, closeCallBack: (() => void) | null = null) { show(freeCount: number, closeCallBack: (() => void) | null = null) {
AudioManager.instance.playSFX('Free_Trigger_Free_Sound');
this.freeSpinAddUI = NodePoolManager.instance.getNodeFromPoolStatic('freeSpinAdd', this.freeSpinAddPre); this.freeSpinAddUI = NodePoolManager.instance.getNodeFromPoolStatic('freeSpinAdd', this.freeSpinAddPre);
this.freeSpinAddSpine = this.freeSpinAddUI.getChildByName('spine').getComponent(sp.Skeleton); this.freeSpinAddSpine = this.freeSpinAddUI.getChildByName('spine').getComponent(sp.Skeleton);

View File

@ -115,7 +115,7 @@ export class HistoryDetail extends Component {
txt_round.color = yellowColor txt_round.color = yellowColor
txt_score.color = yellowColor txt_score.color = yellowColor
} else { } else {
txt_round.string = getTranslate(this.dict, "Free Spin:") + ` ${i}/${scoreInfos.length - 1}` txt_round.string = getTranslate(this.dict, "Free Spin") + ` ${i}/${scoreInfos.length - 1}`
txt_round.color = Color.WHITE txt_round.color = Color.WHITE
txt_score.color = Color.WHITE txt_score.color = Color.WHITE
} }
@ -247,7 +247,7 @@ export class HistoryDetail extends Component {
const bet_info = content.getChildByName("bet_info") const bet_info = content.getChildByName("bet_info")
if (pan.RoundInfo) { if (pan.RoundInfo) {
const txt_round = bet_info.getChildByName("txt_round").getComponent(Label) const txt_round = bet_info.getChildByName("txt_round").getComponent(Label)
txt_round.string = getTranslate(this.dict, "Round:") + ` ${pan.RoundInfo.Current}/${pan.RoundInfo.Total}` txt_round.string = getTranslate(this.dict, "Round") + ` ${pan.RoundInfo.Current}/${pan.RoundInfo.Total}`
} else { } else {
bet_info.getChildByName("txt_round").active = false bet_info.getChildByName("txt_round").active = false
} }

View File

@ -660,12 +660,12 @@ export class Roller extends BaseRoller {
iconComponent.playDeleteAni(); iconComponent.playDeleteAni();
this.scheduleOnce(() => { this.scheduleOnce(() => {
this.iconFactory.recycleIcon(iconNode); this.iconFactory.recycleIcon(iconNode);
}, 1.1) }, 0.9)
} }
this.scheduleOnce(() => { this.scheduleOnce(() => {
this.node.emit(ROLLER_EVENT.ICON_DELETED, this._rollerId); this.node.emit(ROLLER_EVENT.ICON_DELETED, this._rollerId);
}, 1.1) }, 0.9)
} }
@ -768,7 +768,7 @@ export class Roller extends BaseRoller {
let topY = this.getIconPosition(0, 1); let topY = this.getIconPosition(0, 1);
//总共掉落了多少格 //总共掉落了多少格
let fallDownNum = 0 let fallDownNum = 0 //3
//已经计算的格数 //已经计算的格数
let nowDownNum = 0 let nowDownNum = 0
for (let i = 0; i < createDatas.length; i++) { for (let i = 0; i < createDatas.length; i++) {

View File

@ -697,7 +697,7 @@ export class RollerManager extends Component {
// AudioManager.instance.playSFX('Symbol_Change_Sound'); // AudioManager.instance.playSFX('Symbol_Change_Sound');
// } // }
this.returnIconsFromWinLayer(winLayerRef, positionsCopy); this.returnIconsFromWinLayer(winLayerRef, positionsCopy);
}, 1); // 在动画结束前稍早将图标移回 }, 0.8); // 在动画结束前稍早将图标移回
} }
// 将图标从win层返回到原始层 // 将图标从win层返回到原始层

View File

@ -7,7 +7,7 @@ import { PREVIEW } from "cc/env"
const gameId = "rp_11001"; const gameId = "rp_11001";
// let apiaddr = "https://rpgames-api.rpfafafahkdev.com"; // let apiaddr = "https://rpgames-api.rpfafafahkdev.com";
let apiaddr = ""; let apiaddr = "";
let token = "eyJQIjoxMDAwMDEsIkUiOjE3NjY0OTc0NjAsIlMiOjk5NiwiRCI6InJwXzExMDAxIn0.1J21YwU3oPhRzpJoTm5GyBbUAxAOEiV56XaFhxOGcJ8"; let token = "eyJQIjoxMDAwMDEsIkUiOjE3NjY1ODUzNzAsIlMiOjEwMDAsIkQiOiJycF8xMTAwMSJ9.CNO2Io1S3L_T2tNKUGEkVnUgsQDjeMiWR4Gi3hMtZ34";
let language = "en" let language = "en"