本文整理汇总了C++中CMoveShape::GetAttribute方法的典型用法代码示例。如果您正苦于以下问题:C++ CMoveShape::GetAttribute方法的具体用法?C++ CMoveShape::GetAttribute怎么用?C++ CMoveShape::GetAttribute使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CMoveShape
的用法示例。
在下文中一共展示了CMoveShape::GetAttribute方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: GetAttr
double CScript::GetAttr(const char* CmdStr, char* retStr)
{
OBJECT_TYPE type;
CGUID id;
double value = 0;
if(!GetSrcShape()) return -1.0f;
int param = GetIntParam(CmdStr, 0);
if(param != ERROR_CODE && param != INVILID_VALUE)
{
type = (OBJECT_TYPE)param;
char* pIdName = GetStringParam(CmdStr, 1);
if(!pIdName) return -1.0f;
id = GetScriptGuidValue((CMoveShape*)GetSrcShape(), pIdName);
char* name = GetStringParam(CmdStr, 2);
if(!name)
{
M_FREE( pIdName, sizeof(char)*MAX_VAR_LEN );
return -1.0f;
}
CMoveShape* shape = NULL;
if(NULL_GUID == id) // 默认id=0时,直接调用SrcShape的SetAttr接口
{
shape = (CMoveShape*)GetSrcShape();
}
else
shape = GetGame()->FindShape(type, id);
if(shape)
{
long lRet = shape->GetAttribute(std::string(name));
M_FREE( pIdName, sizeof(char)*MAX_VAR_LEN );
M_FREE( name, sizeof(char)*MAX_VAR_LEN );
return lRet;
}
M_FREE( pIdName, sizeof(char)*MAX_VAR_LEN );
M_FREE( name, sizeof(char)*MAX_VAR_LEN );
}
else // 该参数是字符串
{
AddErrorLogText(CStringReading::LoadString(IDS_GS_FUNCTION, STR_GS_FUNCTION_SETATTRFIRSTVARISSTRING));
}
return 0.0f;
}