Skip to content

Thing moveType Not Synced in sithDSSThing_ThingFullDesc #3

Description

@smlu

The moveType property of a Thing is not synced correctly in the sithDSSThing_ThingFullDescfunction. This leads to a bug where the moveType set via thing parameters or changed through the COG function ParseArg is not preserved when the game is restored from a saved state.

Steps to Reproduce:

1.) Define a static Thing with a specific moveType using thing parameters.
Alternatively, change the moveType of a Thing dynamically using the COG function ParseArg.
2.) Save the game.
3.) Restore the game from the saved state.
4.) Observe that the moveType of the Thing is not correctly restored.

Expected Behavior:

The moveType property should be correctly synced and restored when the game state is saved and restored, ensuring consistent behavior for Things.

Actual Behavior:

The moveType property is not synced in sithDSSThing_ThingFullDesc, resulting in the moveType value reverting back to the template value for Things upon game restore.

Logical flow:

  1. Thing moveType is changed from template value either when defining static level thing or via ParseArg COG function
  2. Game saved, thing synced via sithDSSThing_ThingFullDesc
  3. Game restored via SithGamesave_RestoreFile :
    a.) Loads level via sithOpenNormal
    b.) Remove all static defined things of loaded level via sithThing_RemoveAllThings
    c.) Restore thing via sithDSSThing_ProcessThingFullDesc which resets move type to template value

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions