* (Windows) Added support for -game <dmod directory> parm to load a DMOD from anywhere on your HD. It also sets

the active DMOD dir to the DMODs parent directory for that session.  Automatic state autosave, save/continue and quicksave/quickload work as expected by saving data to its directory
* (bugfix) Save states now properly load even if the DMOD directory has been cut and pasted to a new place
* (bugfix) Full state saves now properly setup backgrounds with correct vision modifications instead of assuming it was 0
- Due to minor changes in the save state stuff, I've versioned it so the game will refuse to load old versions (as always, this doesn't affect the normal save files, just the full state saves HD does)
* (DinkC) fill_screen works better and colors 0 and 255 are no longer sometimes reversed
* (bugfix) M can now be used to turn off the map, previously it only worked to turn it on
* (bugfix) Status bar no longer incorrectly draws over full screen bitmaps (like the map in Mystery Island) and is properly reconstructed in full save states


git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1484 353e56fe-9613-0410-8469-b96ad8e6f29c
This commit is contained in:
seth 2017-09-16 15:16:26 +00:00
parent ba5fb5abbf
commit 04f68e8125
11 changed files with 415 additions and 163 deletions

View file

@ -101,6 +101,7 @@ void DMODMenuOnSelect(VariantList *pVList) //0=vec2 point of click, 1=entity sen
PopUpCreate(pMenu, "This add-on appears to be missing or damaged. Delete and re-install.", "", "cancel", "Continue", "", "", true);
return;
}
InitDinkPaths(GetBaseAppPath(), "dink", dmoddir);
pMenu = GetEntityRoot()->GetEntityByName("DMODMenu");
@ -254,7 +255,7 @@ void AddDMODBar(Entity *pParent, float &x, float &y, string title, string descri
//processing the icon image might be slow, lets do it a bit later, sequencing the timing by using the y, which should be going up
pBG->GetFunction("SetupExtra")->sig_function.connect(&DMODSetupExtra);
VariantList vList(pBG);
GetMessageManager()->CallEntityFunction(pBG, 800+count*200, "SetupExtra", &vList);
GetMessageManager()->CallEntityFunction(pBG, 300+count*50, "SetupExtra", &vList);
//the delete icon part
bool bCanDelete = true;
@ -315,6 +316,7 @@ if (bCanDelete)
//add animation effect
ZoomToPositionFromThisOffsetEntity(pBG, CL_Vec2f(GetScreenSizeXf(), 0), 500, INTERPOLATE_EASE_TO, 10);
}
void GetParsedDMODInfo(string dmodPath, string &nameOut, float versionOut, string &copyright, string &dmodwebsite, string &description)
{