- fixed: Trying to pick up an object of the Ammo base class caused a crash.

SVN r1804 (trunk)
This commit is contained in:
Christoph Oelckers 2009-09-06 21:32:57 +00:00
parent 74e3502185
commit b07445d149
2 changed files with 3 additions and 2 deletions

View file

@ -1,4 +1,5 @@
September 6, 2009 (Changes by Graf Zahl)
- fixed: Trying to pick up an object of the Ammo base class caused a crash.
- changed line_t's sidenum into sidedef pointers.
- changed side_t's linenum into a linedef pointer.
- Added PinkSilver's SetActorVelocity code submission (with optimizations.)

View file

@ -55,7 +55,7 @@ const PClass *AAmmo::GetParentAmmo () const
{
const PClass *type = GetClass ();
while (type->ParentClass != RUNTIME_CLASS(AAmmo))
while (type->ParentClass != RUNTIME_CLASS(AAmmo) && type->ParentClass != NULL)
{
type = type->ParentClass;
}
@ -128,7 +128,7 @@ AInventory *AAmmo::CreateCopy (AActor *other)
amount = FixedMul(amount, G_SkillProperty(SKILLP_AmmoFactor));
}
if (GetClass()->ParentClass != RUNTIME_CLASS(AAmmo))
if (GetClass()->ParentClass != RUNTIME_CLASS(AAmmo) && GetClass() != RUNTIME_CLASS(AAmmo))
{
const PClass *type = GetParentAmmo();
assert (type->ActorInfo != NULL);