addsa material.setAnimflags(LAYER,TAGS STRING); method

workaround for mat.animFlags[#]= foo; not taking
time of writing seems to not work for scroll for some reason. might be a different bug
This commit is contained in:
AzaezelX 2021-10-25 22:54:19 -05:00
parent 14ebeaf3eb
commit 3fdf49f829
2 changed files with 26 additions and 2 deletions

View file

@ -755,6 +755,30 @@ DefineEngineMethod(Material, getAnimFlags, const char*, (U32 id), , "")
return animFlags;
}
DefineEngineMethod(Material, setAnimFlags, void, (S32 id, const char *flags), (0, ""), "setAnimFlags")
{
object->mAnimFlags[id] = 0;
if (String(flags).find("$Scroll") != String::NPos)
object->mAnimFlags[id] |= Material::Scroll;
if (String(flags).find("$Rotate") != String::NPos)
object->mAnimFlags[id] |= Material::Rotate;
if (String(flags).find("$Wave") != String::NPos)
object->mAnimFlags[id] |= Material::Wave;
if (String(flags).find("$Scale") != String::NPos)
object->mAnimFlags[id] |= Material::Scale;
if (String(flags).find("$Sequence") != String::NPos)
object->mAnimFlags[id] |= Material::Sequence;
//if we're still unset, see if they tried assigning a number
if (object->mAnimFlags[id] == 0)
object->mAnimFlags[id] = dAtoi(flags);
}
DefineEngineMethod(Material, getFilename, const char*, (), , "Get filename of material")
{
SimObject* material = static_cast<SimObject*>(object);