- Fixed: The automap code had the check for rotation reversed.

- Changed type PClass::FreeIndices to TArray<unsigned int> because that's
  the type of the indices.
- Fixed: makewad.c needs __cdecl for non-Windows builds.
- Fixed: FinishThingdef didn't check whether the WeaponClass pointer in
  AWeaponPiece was a valid name.



SVN r133 (trunk)
This commit is contained in:
Christoph Oelckers 2006-05-20 09:16:08 +00:00
parent 2b91f31d86
commit f8bdceab38
5 changed files with 20 additions and 8 deletions

View file

@ -1,3 +1,11 @@
May 20, 2006 (Changes by Graf Zahl)
- Fixed: The automap code had the check for rotation reversed.
- Changed type PClass::FreeIndices to TArray<unsigned int> because that's
the type of the indices.
- Fixed: makewad.c needs __cdecl for non-Windows builds.
- Fixed: FinishThingdef didn't check whether the WeaponClass pointer in
AWeaponPiece was a valid name.
May 19, 2006
- Fixed: FloorAndCeiling_Raise/Lower did not work with slopes because they
used ZatPointDist instead of PointToDist to calculate the destination

View file

@ -496,7 +496,7 @@ static void AM_ClipRotatedExtents ()
{
fixed_t rmin_x, rmin_y, rmax_x, rmax_y;
if (am_rotate == 1 || (am_rotate == 2 && viewactive))
if (am_rotate == 0 || (am_rotate == 2 && !viewactive))
{
rmin_x = min_x;
rmin_y = min_y;

View file

@ -343,7 +343,7 @@ CCMD (dumpclasses)
}
TArray<DObject *> DObject::Objects (TArray<DObject *>::NoInit);
TArray<size_t> DObject::FreeIndices (TArray<size_t>::NoInit);
TArray<unsigned int> DObject::FreeIndices (TArray<unsigned int>::NoInit);
TArray<DObject *> DObject::ToDestroy (TArray<DObject *>::NoInit);
bool DObject::Inactive;

View file

@ -3632,7 +3632,7 @@ void FinishThingdef()
v = defaults->AmmoType1;
if (v != NAME_None && v.IsValidName())
{
defaults->AmmoType1 = PClass::FindClass(v.GetChars());
defaults->AmmoType1 = PClass::FindClass(v);
if (!defaults->AmmoType1)
{
SC_ScriptError("Unknown ammo type '%s' in '%s'\n", v.GetChars(), ti->TypeName.GetChars());
@ -3646,7 +3646,7 @@ void FinishThingdef()
v = defaults->AmmoType2;
if (v != NAME_None && v.IsValidName())
{
defaults->AmmoType2 = PClass::FindClass(v.GetChars());
defaults->AmmoType2 = PClass::FindClass(v);
if (!defaults->AmmoType2)
{
SC_ScriptError("Unknown ammo type '%s' in '%s'\n", v.GetChars(), ti->TypeName.GetChars());
@ -3660,7 +3660,7 @@ void FinishThingdef()
v = defaults->SisterWeaponType;
if (v != NAME_None && v.IsValidName())
{
defaults->SisterWeaponType = PClass::FindClass(v.GetChars());
defaults->SisterWeaponType = PClass::FindClass(v);
if (!defaults->SisterWeaponType)
{
SC_ScriptError("Unknown sister weapon type '%s' in '%s'\n", v.GetChars(), ti->TypeName.GetChars());
@ -3689,14 +3689,14 @@ void FinishThingdef()
fuglyname v;
v = defaults->WeaponClass;
if (v != NAME_None)
if (v != NAME_None && v.IsValidName())
{
defaults->WeaponClass = PClass::FindClass(v.GetChars());
defaults->WeaponClass = PClass::FindClass(v);
if (!defaults->WeaponClass)
{
SC_ScriptError("Unknown weapon type '%s' in '%s'\n", v.GetChars(), ti->TypeName.GetChars());
}
else if (defaults->WeaponClass->ParentClass != RUNTIME_CLASS(AWeapon))
else if (!defaults->WeaponClass->IsDescendantOf(RUNTIME_CLASS(AWeapon)))
{
SC_ScriptError("Invalid weapon type '%s' in '%s'\n", v.GetChars(), ti->TypeName.GetChars());
}

View file

@ -450,6 +450,10 @@ int buildwad (FILE *listfile, char *listfilename, char *makecmd, char *makefile)
return ret;
}
#if !defined(_MSC_VER)
#define __cdecl
#endif
int __cdecl main (int argc, char **argv)
{
FILE *listfile = NULL;