mirror of
https://github.com/ZDoom/gzdoom-gles.git
synced 2024-11-10 23:01:59 +00:00
Merge branch 'master' of https://github.com/rheit/zdoom
This commit is contained in:
commit
62e55d710a
9 changed files with 551 additions and 287 deletions
770
src/am_map.cpp
770
src/am_map.cpp
File diff suppressed because it is too large
Load diff
|
@ -1755,21 +1755,21 @@ static int PatchCheats (int dummy)
|
|||
static int PatchMisc (int dummy)
|
||||
{
|
||||
static const struct Key keys[] = {
|
||||
{ "Initial Health", myoffsetof(struct DehInfo,StartHealth) },
|
||||
{ "Initial Bullets", myoffsetof(struct DehInfo,StartBullets) },
|
||||
{ "Max Health", myoffsetof(struct DehInfo,MaxHealth) },
|
||||
{ "Max Armor", myoffsetof(struct DehInfo,MaxArmor) },
|
||||
{ "Green Armor Class", myoffsetof(struct DehInfo,GreenAC) },
|
||||
{ "Blue Armor Class", myoffsetof(struct DehInfo,BlueAC) },
|
||||
{ "Max Soulsphere", myoffsetof(struct DehInfo,MaxSoulsphere) },
|
||||
{ "Soulsphere Health", myoffsetof(struct DehInfo,SoulsphereHealth) },
|
||||
{ "Megasphere Health", myoffsetof(struct DehInfo,MegasphereHealth) },
|
||||
{ "God Mode Health", myoffsetof(struct DehInfo,GodHealth) },
|
||||
{ "IDFA Armor", myoffsetof(struct DehInfo,FAArmor) },
|
||||
{ "IDFA Armor Class", myoffsetof(struct DehInfo,FAAC) },
|
||||
{ "IDKFA Armor", myoffsetof(struct DehInfo,KFAArmor) },
|
||||
{ "IDKFA Armor Class", myoffsetof(struct DehInfo,KFAAC) },
|
||||
{ "No Autofreeze", myoffsetof(struct DehInfo,NoAutofreeze) },
|
||||
{ "Initial Health", static_cast<ptrdiff_t>(myoffsetof(struct DehInfo,StartHealth)) },
|
||||
{ "Initial Bullets", static_cast<ptrdiff_t>(myoffsetof(struct DehInfo,StartBullets)) },
|
||||
{ "Max Health", static_cast<ptrdiff_t>(myoffsetof(struct DehInfo,MaxHealth)) },
|
||||
{ "Max Armor", static_cast<ptrdiff_t>(myoffsetof(struct DehInfo,MaxArmor)) },
|
||||
{ "Green Armor Class", static_cast<ptrdiff_t>(myoffsetof(struct DehInfo,GreenAC)) },
|
||||
{ "Blue Armor Class", static_cast<ptrdiff_t>(myoffsetof(struct DehInfo,BlueAC)) },
|
||||
{ "Max Soulsphere", static_cast<ptrdiff_t>(myoffsetof(struct DehInfo,MaxSoulsphere)) },
|
||||
{ "Soulsphere Health", static_cast<ptrdiff_t>(myoffsetof(struct DehInfo,SoulsphereHealth)) },
|
||||
{ "Megasphere Health", static_cast<ptrdiff_t>(myoffsetof(struct DehInfo,MegasphereHealth)) },
|
||||
{ "God Mode Health", static_cast<ptrdiff_t>(myoffsetof(struct DehInfo,GodHealth)) },
|
||||
{ "IDFA Armor", static_cast<ptrdiff_t>(myoffsetof(struct DehInfo,FAArmor)) },
|
||||
{ "IDFA Armor Class", static_cast<ptrdiff_t>(myoffsetof(struct DehInfo,FAAC)) },
|
||||
{ "IDKFA Armor", static_cast<ptrdiff_t>(myoffsetof(struct DehInfo,KFAArmor)) },
|
||||
{ "IDKFA Armor Class", static_cast<ptrdiff_t>(myoffsetof(struct DehInfo,KFAAC)) },
|
||||
{ "No Autofreeze", static_cast<ptrdiff_t>(myoffsetof(struct DehInfo,NoAutofreeze)) },
|
||||
{ NULL, 0 }
|
||||
};
|
||||
int result;
|
||||
|
@ -2945,7 +2945,7 @@ void FinishDehPatch ()
|
|||
PClass *subclass = RUNTIME_CLASS(ADehackedPickup)->CreateDerivedClass
|
||||
(typeNameBuilder, sizeof(ADehackedPickup));
|
||||
AActor *defaults2 = GetDefaultByType (subclass);
|
||||
memcpy (defaults2, defaults1, sizeof(AActor));
|
||||
memcpy ((void *)defaults2, (void *)defaults1, sizeof(AActor));
|
||||
|
||||
// Make a copy of the replaced class's state labels
|
||||
FStateDefinitions statedef;
|
||||
|
|
|
@ -452,7 +452,7 @@ void FDecalLib::ParseDecal (FScanner &sc)
|
|||
decalNum = GetDecalID (sc);
|
||||
sc.MustGetStringName ("{");
|
||||
|
||||
memset (&newdecal, 0, sizeof(newdecal));
|
||||
memset ((void *)&newdecal, 0, sizeof(newdecal));
|
||||
newdecal.PicNum.SetInvalid();
|
||||
newdecal.ScaleX = newdecal.ScaleY = FRACUNIT;
|
||||
newdecal.RenderFlags = RF_WALLSPRITE;
|
||||
|
|
|
@ -103,6 +103,7 @@ struct FMapInfoParser
|
|||
|
||||
void ParseIntermissionAction(FIntermissionDescriptor *Desc);
|
||||
void ParseIntermission();
|
||||
void ParseAMColors();
|
||||
FName CheckEndSequence();
|
||||
FName ParseEndGame();
|
||||
};
|
||||
|
|
|
@ -1842,6 +1842,18 @@ void FMapInfoParser::ParseMapInfo (int lump, level_info_t &gamedefaults, level_i
|
|||
sc.ScriptError("intermission definitions not supported with old MAPINFO syntax");
|
||||
}
|
||||
}
|
||||
else if (sc.Compare("automap"))
|
||||
{
|
||||
if (format_type != FMT_Old)
|
||||
{
|
||||
format_type = FMT_New;
|
||||
ParseAMColors();
|
||||
}
|
||||
else
|
||||
{
|
||||
sc.ScriptError("automap colorset definitions not supported with old MAPINFO syntax");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
sc.ScriptError("%s: Unknown top level keyword", sc.String);
|
||||
|
|
|
@ -259,6 +259,13 @@ bool FZipFile::Open(bool quiet)
|
|||
lump_p->CompressedSize = LittleLong(zip_fh->CompressedSize);
|
||||
lump_p->Position = LittleLong(zip_fh->LocalHeaderOffset);
|
||||
lump_p->CheckEmbedded();
|
||||
|
||||
// Ignore some very specific names
|
||||
if (0 == stricmp("dehacked.exe", name))
|
||||
{
|
||||
memset(lump_p->Name, 0, sizeof(lump_p->Name));
|
||||
}
|
||||
|
||||
lump_p++;
|
||||
}
|
||||
// Resize the lump record array to its actual size
|
||||
|
|
|
@ -354,11 +354,11 @@ int MatchString (const char *in, const char **strings);
|
|||
MSVC_MSEG FVariableInfo *infoptr_GlobalDef__##name GCC_MSEG = &GlobalDef__##name;
|
||||
|
||||
#define DEFINE_MEMBER_VARIABLE(name, cls) \
|
||||
static FVariableInfo GlobalDef__##name = { #name, myoffsetof(cls, name), RUNTIME_CLASS(cls) }; \
|
||||
static FVariableInfo GlobalDef__##name = { #name, static_cast<intptr_t>(myoffsetof(cls, name)), RUNTIME_CLASS(cls) }; \
|
||||
MSVC_MSEG FVariableInfo *infoptr_GlobalDef__##name GCC_MSEG = &GlobalDef__##name;
|
||||
|
||||
#define DEFINE_MEMBER_VARIABLE_ALIAS(name, alias, cls) \
|
||||
static FVariableInfo GlobalDef__##name = { #name, myoffsetof(cls, alias), RUNTIME_CLASS(cls) }; \
|
||||
static FVariableInfo GlobalDef__##name = { #name, static_cast<intptr_t>(myoffsetof(cls, alias)), RUNTIME_CLASS(cls) }; \
|
||||
MSVC_MSEG FVariableInfo *infoptr_GlobalDef__##name GCC_MSEG = &GlobalDef__##name;
|
||||
|
||||
|
||||
|
|
|
@ -433,7 +433,7 @@ DEFINE_PROPERTY(skip_super, 0, Actor)
|
|||
return;
|
||||
}
|
||||
|
||||
memcpy (defaults, GetDefault<AActor>(), sizeof(AActor));
|
||||
memcpy ((void *)defaults, (void *)GetDefault<AActor>(), sizeof(AActor));
|
||||
if (bag.DropItemList != NULL)
|
||||
{
|
||||
FreeDropItemChain (bag.DropItemList);
|
||||
|
|
|
@ -932,6 +932,7 @@ OptionMenu AutomapOptions
|
|||
{
|
||||
Title "AUTOMAP OPTIONS"
|
||||
Option "Map color set", "am_colorset", "MapColorTypes"
|
||||
Option "Allow map defined colors", "am_customcolors", "YesNo"
|
||||
Submenu "Set custom colors", "MapColorMenu"
|
||||
Submenu "Customize map controls", "MapControlsMenu"
|
||||
StaticText " "
|
||||
|
@ -1022,12 +1023,15 @@ OptionMenu MapColorMenu
|
|||
ColorPicker "2-sided walls with different ceilings", "am_ovcdwallcolor"
|
||||
ColorPicker "2-sided walls with 3D floors", "am_ovefwallcolor"
|
||||
ColorPicker "Not-yet-seen walls", "am_ovunseencolor"
|
||||
ColorPicker "Locked doors", "am_ovotherwallscolor"
|
||||
ColorPicker "Teleporter", "am_ovtelecolor"
|
||||
ColorPicker "Locked doors", "am_ovlockedcolor"
|
||||
ColorPicker "Teleporter to the same map", "am_ovtelecolor"
|
||||
ColorPicker "Teleporter to a different map", "am_ovinterlevelcolor"
|
||||
ColorPicker "Secret sector", "am_ovsecretsectorcolor"
|
||||
ColorPicker "Special trigger lines", "am_ovspecialwallcolor"
|
||||
StaticText " "
|
||||
StaticText "Overlay Cheat Mode", 1
|
||||
ColorPicker "Invisible 2-sided walls", "am_ovotherwallscolor"
|
||||
ColorPicker "Secret walls", "am_ovsecretwallcolor"
|
||||
ColorPicker "Actors", "am_ovthingcolor"
|
||||
ColorPicker "Monsters", "am_ovthingcolor_monster"
|
||||
ColorPicker "Friends", "am_ovthingcolor_friend"
|
||||
|
|
Loading…
Reference in a new issue