Skip to content

Commit b8080f7

Browse files
Unified actions for load & save
1 parent 5394cc5 commit b8080f7

File tree

135 files changed

+66566
-403
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

135 files changed

+66566
-403
lines changed

Extensions/3D/A_RuntimeObject3D.ts

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -110,9 +110,11 @@ namespace gdjs {
110110
return true;
111111
}
112112

113-
getNetworkSyncData(): Object3DNetworkSyncData {
113+
getNetworkSyncData(
114+
syncOptions: GetNetworkSyncDataOptions
115+
): Object3DNetworkSyncData {
114116
return {
115-
...super.getNetworkSyncData(),
117+
...super.getNetworkSyncData(syncOptions),
116118
z: this.getZ(),
117119
d: this.getDepth(),
118120
rx: this.getRotationX(),
@@ -123,8 +125,11 @@ namespace gdjs {
123125
};
124126
}
125127

126-
updateFromNetworkSyncData(networkSyncData: Object3DNetworkSyncData) {
127-
super.updateFromNetworkSyncData(networkSyncData);
128+
updateFromNetworkSyncData(
129+
networkSyncData: Object3DNetworkSyncData,
130+
options: UpdateFromNetworkSyncDataOptions
131+
) {
132+
super.updateFromNetworkSyncData(networkSyncData, options);
128133
if (networkSyncData.z !== undefined) this.setZ(networkSyncData.z);
129134
if (networkSyncData.d !== undefined) this.setDepth(networkSyncData.d);
130135
if (networkSyncData.rx !== undefined)

Extensions/3D/Cube3DRuntimeObject.ts

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -452,9 +452,11 @@ namespace gdjs {
452452
return true;
453453
}
454454

455-
getNetworkSyncData(): Cube3DObjectNetworkSyncData {
455+
getNetworkSyncData(
456+
syncOptions: GetNetworkSyncDataOptions
457+
): Cube3DObjectNetworkSyncData {
456458
return {
457-
...super.getNetworkSyncData(),
459+
...super.getNetworkSyncData(syncOptions),
458460
mt: this._materialType,
459461
fo: this._facesOrientation,
460462
bfu: this._backFaceUpThroughWhichAxisRotation,
@@ -466,9 +468,10 @@ namespace gdjs {
466468
}
467469

468470
updateFromNetworkSyncData(
469-
networkSyncData: Cube3DObjectNetworkSyncData
471+
networkSyncData: Cube3DObjectNetworkSyncData,
472+
options: UpdateFromNetworkSyncDataOptions
470473
): void {
471-
super.updateFromNetworkSyncData(networkSyncData);
474+
super.updateFromNetworkSyncData(networkSyncData, options);
472475

473476
if (networkSyncData.mt !== undefined) {
474477
this._materialType = networkSyncData.mt;

Extensions/3D/CustomRuntimeObject3D.ts

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -85,9 +85,11 @@ namespace gdjs {
8585
}
8686
}
8787

88-
getNetworkSyncData(): CustomObject3DNetworkSyncDataType {
88+
getNetworkSyncData(
89+
syncOptions: GetNetworkSyncDataOptions
90+
): CustomObject3DNetworkSyncDataType {
8991
return {
90-
...super.getNetworkSyncData(),
92+
...super.getNetworkSyncData(syncOptions),
9193
z: this.getZ(),
9294
d: this.getDepth(),
9395
rx: this.getRotationX(),
@@ -97,9 +99,10 @@ namespace gdjs {
9799
}
98100

99101
updateFromNetworkSyncData(
100-
networkSyncData: CustomObject3DNetworkSyncDataType
102+
networkSyncData: CustomObject3DNetworkSyncDataType,
103+
options: UpdateFromNetworkSyncDataOptions
101104
): void {
102-
super.updateFromNetworkSyncData(networkSyncData);
105+
super.updateFromNetworkSyncData(networkSyncData, options);
103106
if (networkSyncData.z !== undefined) this.setZ(networkSyncData.z);
104107
if (networkSyncData.d !== undefined) this.setDepth(networkSyncData.d);
105108
if (networkSyncData.rx !== undefined)

Extensions/3D/Model3DRuntimeObject.ts

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ namespace gdjs {
2020
/** The base parameters of the Model3D object */
2121
content: Object3DDataContent & {
2222
modelResourceName: string;
23+
depth: number;
2324
rotationX: number;
2425
rotationY: number;
2526
rotationZ: number;
@@ -216,9 +217,11 @@ namespace gdjs {
216217
return true;
217218
}
218219

219-
getNetworkSyncData(): Model3DObjectNetworkSyncData {
220+
getNetworkSyncData(
221+
syncOptions: GetNetworkSyncDataOptions
222+
): Model3DObjectNetworkSyncData {
220223
return {
221-
...super.getNetworkSyncData(),
224+
...super.getNetworkSyncData(syncOptions),
222225
mt: this._materialType,
223226
op: this._originPoint,
224227
cp: this._centerPoint,
@@ -227,13 +230,15 @@ namespace gdjs {
227230
ass: this._animationSpeedScale,
228231
ap: this._animationPaused,
229232
cfd: this._crossfadeDuration,
233+
d: this.getDepth(),
230234
};
231235
}
232236

233237
updateFromNetworkSyncData(
234-
networkSyncData: Model3DObjectNetworkSyncData
238+
networkSyncData: Model3DObjectNetworkSyncData,
239+
options: UpdateFromNetworkSyncDataOptions
235240
): void {
236-
super.updateFromNetworkSyncData(networkSyncData);
241+
super.updateFromNetworkSyncData(networkSyncData, options);
237242

238243
if (networkSyncData.mt !== undefined) {
239244
this._materialType = networkSyncData.mt;

Extensions/BBText/bbtextruntimeobject.ts

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -145,9 +145,11 @@ namespace gdjs {
145145
return true;
146146
}
147147

148-
override getNetworkSyncData(): BBTextObjectNetworkSyncData {
148+
override getNetworkSyncData(
149+
syncOptions: GetNetworkSyncDataOptions
150+
): BBTextObjectNetworkSyncData {
149151
return {
150-
...super.getNetworkSyncData(),
152+
...super.getNetworkSyncData(syncOptions),
151153
text: this._text,
152154
o: this._opacity,
153155
c: this._color,
@@ -162,9 +164,10 @@ namespace gdjs {
162164
}
163165

164166
override updateFromNetworkSyncData(
165-
networkSyncData: BBTextObjectNetworkSyncData
167+
networkSyncData: BBTextObjectNetworkSyncData,
168+
options: UpdateFromNetworkSyncDataOptions
166169
): void {
167-
super.updateFromNetworkSyncData(networkSyncData);
170+
super.updateFromNetworkSyncData(networkSyncData, options);
168171
if (this._text !== undefined) {
169172
this.setBBText(networkSyncData.text);
170173
}

Extensions/BitmapText/bitmaptextruntimeobject.ts

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -155,9 +155,11 @@ namespace gdjs {
155155
return true;
156156
}
157157

158-
override getNetworkSyncData(): BitmapTextObjectNetworkSyncData {
158+
override getNetworkSyncData(
159+
syncOptions: GetNetworkSyncDataOptions
160+
): BitmapTextObjectNetworkSyncData {
159161
return {
160-
...super.getNetworkSyncData(),
162+
...super.getNetworkSyncData(syncOptions),
161163
text: this._text,
162164
opa: this._opacity,
163165
tint: this._tint,
@@ -172,9 +174,10 @@ namespace gdjs {
172174
}
173175

174176
override updateFromNetworkSyncData(
175-
networkSyncData: BitmapTextObjectNetworkSyncData
177+
networkSyncData: BitmapTextObjectNetworkSyncData,
178+
options: UpdateFromNetworkSyncDataOptions
176179
): void {
177-
super.updateFromNetworkSyncData(networkSyncData);
180+
super.updateFromNetworkSyncData(networkSyncData, options);
178181
if (this._text !== undefined) {
179182
this.setText(networkSyncData.text);
180183
}

Extensions/Lighting/lightruntimeobject.ts

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -87,16 +87,21 @@ namespace gdjs {
8787
return true;
8888
}
8989

90-
getNetworkSyncData(): LightNetworkSyncData {
90+
getNetworkSyncData(
91+
syncOptions: GetNetworkSyncDataOptions
92+
): LightNetworkSyncData {
9193
return {
92-
...super.getNetworkSyncData(),
94+
...super.getNetworkSyncData(syncOptions),
9395
rad: this.getRadius(),
9496
col: this.getColor(),
9597
};
9698
}
9799

98-
updateFromNetworkSyncData(networkSyncData: LightNetworkSyncData): void {
99-
super.updateFromNetworkSyncData(networkSyncData);
100+
updateFromNetworkSyncData(
101+
networkSyncData: LightNetworkSyncData,
102+
options: UpdateFromNetworkSyncDataOptions
103+
): void {
104+
super.updateFromNetworkSyncData(networkSyncData, options);
100105

101106
if (networkSyncData.rad !== undefined) {
102107
this.setRadius(networkSyncData.rad);

Extensions/Multiplayer/messageManager.ts

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -729,7 +729,9 @@ namespace gdjs {
729729
behavior.playerNumber = ownerPlayerNumber;
730730
}
731731

732-
instance.updateFromNetworkSyncData(messageData);
732+
instance.updateFromNetworkSyncData(messageData, {
733+
clearMemory: false,
734+
});
733735

734736
setLastClockReceivedForInstanceOnScene({
735737
sceneNetworkId,
@@ -1737,7 +1739,7 @@ namespace gdjs {
17371739
return;
17381740
}
17391741

1740-
runtimeScene.updateFromNetworkSyncData(messageData);
1742+
runtimeScene.updateFromNetworkSyncData(messageData, {});
17411743
} else {
17421744
// If the game is not ready to receive game update messages, we need to save the data for later use.
17431745
// This can happen when joining a game that is already running.
@@ -1890,7 +1892,7 @@ namespace gdjs {
18901892
const messageData = message.getData();
18911893
const messageSender = message.getSender();
18921894
if (gdjs.multiplayer.isReadyToSendOrReceiveGameUpdateMessages()) {
1893-
runtimeScene.getGame().updateFromNetworkSyncData(messageData);
1895+
runtimeScene.getGame().updateFromNetworkSyncData(messageData, {});
18941896
} else {
18951897
// If the game is not ready to receive game update messages, we need to save the data for later use.
18961898
// This can happen when joining a game that is already running.
@@ -1918,7 +1920,7 @@ namespace gdjs {
19181920
// Reapply the game saved updates.
19191921
lastReceivedGameSyncDataUpdates.getUpdates().forEach((messageData) => {
19201922
debugLogger.info(`Reapplying saved update of game.`);
1921-
runtimeScene.getGame().updateFromNetworkSyncData(messageData);
1923+
runtimeScene.getGame().updateFromNetworkSyncData(messageData, {});
19221924
});
19231925
// Game updates are always applied properly, so we can clear them.
19241926
lastReceivedGameSyncDataUpdates.clear();
@@ -1937,7 +1939,7 @@ namespace gdjs {
19371939

19381940
debugLogger.info(`Reapplying saved update of scene ${sceneNetworkId}.`);
19391941

1940-
runtimeScene.updateFromNetworkSyncData(messageData);
1942+
runtimeScene.updateFromNetworkSyncData(messageData, {});
19411943
// We only remove the message if it was successfully applied, so it can be reapplied later,
19421944
// in case we were not on the right scene.
19431945
lastReceivedSceneSyncDataUpdates.remove(messageData);

Extensions/Multiplayer/multiplayerobjectruntimebehavior.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -278,7 +278,7 @@ namespace gdjs {
278278

279279
const instanceNetworkId = this._getOrCreateInstanceNetworkId();
280280
const objectName = this.owner.getName();
281-
const objectNetworkSyncData = this.owner.getNetworkSyncData();
281+
const objectNetworkSyncData = this.owner.getNetworkSyncData({});
282282

283283
// this._logToConsoleWithThrottle(
284284
// `Synchronizing object ${this.owner.getName()} (instance ${
@@ -448,7 +448,7 @@ namespace gdjs {
448448
objectOwner: this.playerNumber,
449449
objectName,
450450
instanceNetworkId,
451-
objectNetworkSyncData: this.owner.getNetworkSyncData(),
451+
objectNetworkSyncData: this.owner.getNetworkSyncData({}),
452452
sceneNetworkId,
453453
});
454454
this._sendDataToPeersWithIncreasedClock(
@@ -598,7 +598,7 @@ namespace gdjs {
598598
debugLogger.info(
599599
'Sending update message to move the object immediately.'
600600
);
601-
const objectNetworkSyncData = this.owner.getNetworkSyncData();
601+
const objectNetworkSyncData = this.owner.getNetworkSyncData({});
602602
const {
603603
messageName: updateMessageName,
604604
messageData: updateMessageData,

Extensions/PanelSpriteObject/panelspriteruntimeobject.ts

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -119,18 +119,21 @@ namespace gdjs {
119119
return true;
120120
}
121121

122-
getNetworkSyncData(): PanelSpriteNetworkSyncData {
122+
getNetworkSyncData(
123+
syncOptions: GetNetworkSyncDataOptions
124+
): PanelSpriteNetworkSyncData {
123125
return {
124-
...super.getNetworkSyncData(),
126+
...super.getNetworkSyncData(syncOptions),
125127
op: this.getOpacity(),
126128
color: this.getColor(),
127129
};
128130
}
129131

130132
updateFromNetworkSyncData(
131-
networkSyncData: PanelSpriteNetworkSyncData
133+
networkSyncData: PanelSpriteNetworkSyncData,
134+
options: UpdateFromNetworkSyncDataOptions
132135
): void {
133-
super.updateFromNetworkSyncData(networkSyncData);
136+
super.updateFromNetworkSyncData(networkSyncData, options);
134137

135138
// Texture is not synchronized, see if this is asked or not.
136139

0 commit comments

Comments
 (0)