|
@@ -137,9 +137,43 @@ export interface DifficutyData {
|
|
export class UserDifficutyData {
|
|
export class UserDifficutyData {
|
|
private _difficutyData: DifficutyData;
|
|
private _difficutyData: DifficutyData;
|
|
|
|
|
|
|
|
+ createOrDeleteOtherScale() {
|
|
|
|
+ const targetCount = this._difficutyData.difficutyCount;
|
|
|
|
+ const currentScales = this._difficutyData.scales;
|
|
|
|
+ const defaultScales = [1.18, 1.16, 1.14, 0.3976, 0.3690, 0.3029, 0.0667, 0.0766, 0.0531, 0.0716];
|
|
|
|
+
|
|
|
|
+ if (currentScales.length > targetCount) {
|
|
|
|
+ currentScales.splice(targetCount, currentScales.length - targetCount);
|
|
|
|
+ }
|
|
|
|
+ else if (currentScales.length < targetCount) {
|
|
|
|
+ for (let i = currentScales.length; i < targetCount; i++) {
|
|
|
|
+ let value: number;
|
|
|
|
+ if (i < defaultScales.length) {
|
|
|
|
+ value = defaultScales[i];
|
|
|
|
+ } else {
|
|
|
|
+ value = Math.random() * 0.035 + 0.04;
|
|
|
|
+ }
|
|
|
|
+ currentScales.push(value);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ for (let i = 0; i < targetCount; i++) {
|
|
|
|
+ if (currentScales[i] === undefined || currentScales[i] === null) {
|
|
|
|
+ if (i < defaultScales.length) {
|
|
|
|
+ currentScales[i] = defaultScales[i];
|
|
|
|
+ } else {
|
|
|
|
+ currentScales[i] = Math.random() * 0.035 + 0.04;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ // 保存修改后的数据
|
|
|
|
+ this.saveDifficutyData();
|
|
|
|
+}
|
|
|
|
+
|
|
constructor() {
|
|
constructor() {
|
|
- let defaultData: DifficutyData = {
|
|
|
|
- difficutyCount: 0,
|
|
|
|
|
|
+ let defaultData = {
|
|
|
|
+ difficutyCount: 10,
|
|
scales: [1.18, 1.16, 1.14, 0.3976, 0.3690, 0.3029,
|
|
scales: [1.18, 1.16, 1.14, 0.3976, 0.3690, 0.3029,
|
|
0.0667, 0.0766, 0.0531, 0.0716]
|
|
0.0667, 0.0766, 0.0531, 0.0716]
|
|
}
|
|
}
|
|
@@ -170,6 +204,17 @@ export class UserDifficutyData {
|
|
public saveDifficutyData(): void {
|
|
public saveDifficutyData(): void {
|
|
sys.localStorage.setItem("difficutyData", JSON.stringify(this._difficutyData));
|
|
sys.localStorage.setItem("difficutyData", JSON.stringify(this._difficutyData));
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ setDataToDefault()
|
|
|
|
+ {
|
|
|
|
+ let defaultData = {
|
|
|
|
+ difficutyCount: 10,
|
|
|
|
+ scales: [1.18, 1.16, 1.14, 0.3976, 0.3690, 0.3029,
|
|
|
|
+ 0.0667, 0.0766, 0.0531, 0.0716]
|
|
|
|
+ }
|
|
|
|
+ this._difficutyData = defaultData;
|
|
|
|
+ this.saveDifficutyData();
|
|
|
|
+ }
|
|
}
|
|
}
|
|
export const Difficulty = new UserDifficutyData();
|
|
export const Difficulty = new UserDifficutyData();
|
|
|
|
|
|
@@ -215,6 +260,43 @@ export class UserSkinData {
|
|
public saveSkinData(): void {
|
|
public saveSkinData(): void {
|
|
sys.localStorage.setItem("skinData", JSON.stringify(this._skinData));
|
|
sys.localStorage.setItem("skinData", JSON.stringify(this._skinData));
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ addSelectSkin(key:number)
|
|
|
|
+ {
|
|
|
|
+ let index = this._skinData.selectedSkinList.indexOf(key)
|
|
|
|
+ if(index == -1)
|
|
|
|
+ {
|
|
|
|
+ this._skinData.selectedSkinList.push(key)
|
|
|
|
+ }
|
|
|
|
+ this.saveSkinData()
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ removeSelectSkin(key:number)
|
|
|
|
+ {
|
|
|
|
+ let index = this._skinData.selectedSkinList.indexOf(key)
|
|
|
|
+ if(index != -1)
|
|
|
|
+ {
|
|
|
|
+ this._skinData.selectedSkinList.splice(index,1)
|
|
|
|
+ }
|
|
|
|
+ this.saveSkinData()
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ removeAllSelectSkin()
|
|
|
|
+ {
|
|
|
|
+ this._skinData.selectedSkinList = []
|
|
|
|
+ this.saveSkinData()
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ addAllSelectSkin()
|
|
|
|
+ {
|
|
|
|
+ this._skinData.selectedSkinList = []
|
|
|
|
+ let allSkinkeys = getSelectAllKeys()
|
|
|
|
+ for(let i = 0;i < allSkinkeys.length;i++)
|
|
|
|
+ {
|
|
|
|
+ this._skinData.selectedSkinList.push(allSkinkeys[i])
|
|
|
|
+ }
|
|
|
|
+ this.saveSkinData()
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
export const Skin = new UserSkinData();
|
|
export const Skin = new UserSkinData();
|
|
@@ -305,5 +387,47 @@ export class UserSuperFindData {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+export const selectedSkinList: { [key: number]: string } = {
|
|
|
|
+ //假设30个数据
|
|
|
|
+ 1: "spine/hecha",
|
|
|
|
+ 2: "spine/hecha",
|
|
|
|
+ 3: "spine/hecha",
|
|
|
|
+ 4: "spine/hecha",
|
|
|
|
+ 5: "spine/hecha",
|
|
|
|
+ 6: "spine/hecha",
|
|
|
|
+ 7: "spine/hecha",
|
|
|
|
+ 8: "spine/hecha",
|
|
|
|
+ 9: "spine/hecha",
|
|
|
|
+ 10: "spine/hecha",
|
|
|
|
+ 11: "spine/hecha",
|
|
|
|
+ 12: "spine/hecha",
|
|
|
|
+ 13: "spine/hecha",
|
|
|
|
+ 14: "spine/hecha",
|
|
|
|
+ 15: "spine/hecha",
|
|
|
|
+ 16: "spine/hecha",
|
|
|
|
+ 17: "spine/hecha",
|
|
|
|
+ 18: "spine/hecha",
|
|
|
|
+ 19: "spine/hecha",
|
|
|
|
+ 20: "spine/hecha",
|
|
|
|
+ 21: "spine/hecha",
|
|
|
|
+ 22: "spine/hecha",
|
|
|
|
+ 23: "spine/hecha",
|
|
|
|
+ 24: "spine/hecha",
|
|
|
|
+ 25: "spine/hecha",
|
|
|
|
+ 26: "spine/hecha",
|
|
|
|
+ 27: "spine/hecha",
|
|
|
|
+ 28: "spine/hecha",
|
|
|
|
+ 29: "spine/hecha",
|
|
|
|
+ 30: "spine/hecha",
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+/**
|
|
|
|
+ * 获取 selectedSkinList 中所有的键
|
|
|
|
+ * @returns 包含所有键的数字数组
|
|
|
|
+ */
|
|
|
|
+export function getSelectAllKeys(): number[] {
|
|
|
|
+ return Object.keys(selectedSkinList).map(Number);
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
|
|
|
|
|