- removed the FxDamageValue hack and implemented it properly using FxReturnStatement.

- added handling of damage functions for ZScript.
This commit is contained in:
Christoph Oelckers 2016-10-26 14:04:49 +02:00
commit 7c759f9fcf
8 changed files with 37 additions and 36 deletions

View file

@ -1773,8 +1773,16 @@ void ZCCCompiler::ProcessDefaultProperty(PClassActor *cls, ZCC_PropertyStmt *pro
if (namenode->SiblingNext == namenode)
{
if (namenode->Id == NAME_DamageFunction)
{
auto x = ConvertNode(prop->Values);
CreateDamageFunction(cls, (AActor *)bag.Info->Defaults, x, false);
return;
}
// a one-name property
propname = FName(namenode->Id);
}
else if (namenode->SiblingNext->SiblingNext == namenode)
{
@ -1787,6 +1795,7 @@ void ZCCCompiler::ProcessDefaultProperty(PClassActor *cls, ZCC_PropertyStmt *pro
return;
}
FPropertyInfo *property = FindProperty(propname);
if (property != nullptr && property->category != CAT_INFO)