|
@@ -60,24 +60,21 @@ export const randomScoreElement = (element?: string) => {
|
|
|
const randomIndex = Math.floor(Math.random() * newArr.length);
|
|
|
return {
|
|
|
url: prefix + newArr[randomIndex] + '.png',
|
|
|
- index: newArr[randomIndex],
|
|
|
- key: randomIndex
|
|
|
+ index: newArr[randomIndex]
|
|
|
};
|
|
|
} else {
|
|
|
|
|
|
if (tempoList.length === 1) {
|
|
|
return {
|
|
|
url: prefix + tempoList[0] + '.png',
|
|
|
- index: tempoList[0],
|
|
|
- key: 0
|
|
|
+ index: tempoList[0]
|
|
|
};
|
|
|
} else {
|
|
|
const randomIndex = Math.floor(Math.random() * tempoList.length);
|
|
|
const randomItem = tempoList[randomIndex];
|
|
|
return {
|
|
|
url: prefix + randomItem + '.png',
|
|
|
- index: randomItem,
|
|
|
- key: randomIndex
|
|
|
+ index: randomItem
|
|
|
};
|
|
|
}
|
|
|
}
|
|
@@ -87,31 +84,32 @@ export const randomScoreElement = (element?: string) => {
|
|
|
export const elementDirection = (type: string, index: number) => {
|
|
|
const prefix = setting.element === 'jianpu' ? 'j-' : 'f-';
|
|
|
let ele = '';
|
|
|
- let i = Number(index);
|
|
|
+ let i = 0;
|
|
|
const tempoList = setting.tempo;
|
|
|
+ const toIndex = tempoList.findIndex((t: any) => Number(t) === index);
|
|
|
if (type === 'up') {
|
|
|
- if (index <= 0) {
|
|
|
+ if (toIndex <= 0) {
|
|
|
ele = tempoList[tempoList.length - 1];
|
|
|
i = tempoList.length - 1;
|
|
|
} else {
|
|
|
- ele = tempoList[index - 1];
|
|
|
- i = index - 1;
|
|
|
+ ele = tempoList[toIndex - 1];
|
|
|
+ i = toIndex - 1;
|
|
|
}
|
|
|
} else if (type === 'down') {
|
|
|
- if (index >= tempoList.length - 1) {
|
|
|
+
|
|
|
+
|
|
|
+ if (toIndex >= tempoList.length - 1) {
|
|
|
ele = tempoList[0];
|
|
|
i = 0;
|
|
|
} else {
|
|
|
- ele = tempoList[index + 1];
|
|
|
- i = index + 1;
|
|
|
+ ele = tempoList[toIndex + 1];
|
|
|
+ i = toIndex + 1;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-
|
|
|
return {
|
|
|
url: prefix + ele + '.png',
|
|
|
- index: Number(ele),
|
|
|
- key: Number(i)
|
|
|
+ index: Number(ele)
|
|
|
};
|
|
|
};
|
|
|
|