sonolus-next-rush-plus-engine 1.8.11 → 1.8.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,5 +4,5 @@ export function isExtendedLevelData(data) {
4
4
  data !== null &&
5
5
  'entities' in data &&
6
6
  Array.isArray(data.entities) &&
7
- data.entities.some((e) => e.archetype === 'Stage'));
7
+ !data.entities.some((e) => e.archetype === '#TIMESCALE_GROUP'));
8
8
  }
@@ -152,9 +152,9 @@ function resolveOriginal(ext, ref) {
152
152
  }
153
153
  export const extendedToLevelData = (data, offset = 0) => {
154
154
  const ext = new ExtData(data.entities);
155
- if (ext.getByArch('TimeScaleGroup').length === 0)
156
- return undefined;
157
155
  const finalEntities = [];
156
+ const defaultTsg = new EntityBuilder('#TIMESCALE_GROUP');
157
+ finalEntities.push(defaultTsg);
158
158
  const init = new EntityBuilder('Initialization');
159
159
  finalEntities.push(init);
160
160
  for (const { e } of ext.getByArch('#BPM_CHANGE')) {
@@ -237,8 +237,8 @@ export const extendedToLevelData = (data, offset = 0) => {
237
237
  for (const { idx, e } of ext.connectors) {
238
238
  const head = getNote(getField(e, 'head'));
239
239
  const tail = getNote(getField(e, 'tail'));
240
- const segmentHead = getNote(getField(e, 'start'));
241
- const segmentTail = getNote(getField(e, 'end'));
240
+ const segmentHead = getNote(getField(e, 'start')) || head;
241
+ const segmentTail = getNote(getField(e, 'end')) || tail;
242
242
  if (!head || !tail || !segmentHead || !segmentTail)
243
243
  continue;
244
244
  const connector = new EntityBuilder('Connector');
@@ -269,8 +269,7 @@ export const extendedToLevelData = (data, offset = 0) => {
269
269
  const e = ext.get(idx);
270
270
  const tsgRef = getField(e, 'timeScaleGroup');
271
271
  const tsg = getTSG(tsgRef);
272
- if (tsg)
273
- note.set('#TIMESCALE_GROUP', tsg);
272
+ note.set('#TIMESCALE_GROUP', tsg || defaultTsg);
274
273
  const attachRef = getField(e, 'attach');
275
274
  if (attachRef !== undefined) {
276
275
  const attachConn = getConn(attachRef);
package/dist/index.d.ts CHANGED
@@ -7,7 +7,7 @@ import { USC } from './usc/index.js';
7
7
  export * from './usc/index.js';
8
8
  export { type ExtendedEntityData, type ExtendedEntityDataField, extendedToLevelData, mmwsToUSC, susToUSC, ucmmwsToLevelData, uscToLevelData, };
9
9
  export declare const convertToLevelData: (input: string | Uint8Array | USC | LevelData, offset?: number) => LevelData;
10
- export declare const version = "1.8.11";
10
+ export declare const version = "1.8.13";
11
11
  export declare const databaseEngineItem: {
12
12
  readonly name: "next-rush-plus";
13
13
  readonly version: 13;
package/dist/index.js CHANGED
@@ -70,7 +70,7 @@ export const convertToLevelData = (input, offset = 0) => {
70
70
  }
71
71
  return uscToLevelData(usc, offset, true, true);
72
72
  };
73
- export const version = '1.8.11';
73
+ export const version = '1.8.13';
74
74
  export const databaseEngineItem = {
75
75
  name: 'next-rush-plus',
76
76
  version: 13,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sonolus-next-rush-plus-engine",
3
- "version": "1.8.11",
3
+ "version": "1.8.13",
4
4
  "description": "A new Project Sekai inspired engine for Sonolus",
5
5
  "author": "Hyeon2",
6
6
  "repository": {