I have created an object “User Settings” which is used to store game settings (gameplay, audio, video…).
When the game starts it reads from file a UserSettings object and from that is calling a function to apply the settings. At this stage it is working fine. Now the problem I have is that of course the user can change those settings and when he/she is done and presses apply button, in the background I’m reading again the settings from file (because the values read at start are lost, as you don’t need them to persist, and only need them at start and in case they change something) and saving them in an object that I called “UserSettingsOriginal”, but at the same time another object it is created called “UserSettingsModified” on which the new values given by the user are stored, which is then followed by a function which compares between original and the modified and makes changes where it is needed, but the problem is that for some reason that function is skipped. It is the same function that works at game launch.
Here is the blueprint for a better visual (the “Apply Video” function you see there is to set the new values into “UserSettingsModified”):
I get “Start” message as I should, but after that, I should see “Apply settings” from Apply Settings function, but instead of that it skips to “Finish”.