- moved the 'Finalize' methods back into a single function in the parser code.
It has been like this initially but was changed when ZDoom gained an overly complicated polymorphic class descriptor object that required a lot of support code. All these complications have long been removed but these methods remained. Since they prevent a class from being moved to the script side entirely they had to be removed. This was the last major blocker to make Weapon a purely scripted class, the only remaining native method is Serialize which is of no concern for the coming work.
This commit is contained in:
parent
7012179904
commit
00a48b09e5
12 changed files with 70 additions and 73 deletions
23
src/info.cpp
23
src/info.cpp
|
|
@ -365,29 +365,6 @@ bool PClassActor::SetReplacement(FName replaceName)
|
|||
return true;
|
||||
}
|
||||
|
||||
//==========================================================================
|
||||
//
|
||||
// PClassActor :: Finalize
|
||||
//
|
||||
// Installs the parsed states and does some sanity checking
|
||||
//
|
||||
//==========================================================================
|
||||
|
||||
void AActor::Finalize(FStateDefinitions &statedef)
|
||||
{
|
||||
try
|
||||
{
|
||||
statedef.FinishStates(GetClass());
|
||||
}
|
||||
catch (CRecoverableError &)
|
||||
{
|
||||
statedef.MakeStateDefines(nullptr);
|
||||
throw;
|
||||
}
|
||||
statedef.InstallStates(GetClass(), this);
|
||||
statedef.MakeStateDefines(nullptr);
|
||||
}
|
||||
|
||||
//==========================================================================
|
||||
//
|
||||
// PClassActor :: RegisterIDs
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue