本文整理汇总了C++中CreatureObject::setMentalState方法的典型用法代码示例。如果您正苦于以下问题:C++ CreatureObject::setMentalState方法的具体用法?C++ CreatureObject::setMentalState怎么用?C++ CreatureObject::setMentalState使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CreatureObject
的用法示例。
在下文中一共展示了CreatureObject::setMentalState方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: setMentalState
/**
* Sets a creatue's mental state.
*
* @param env Java environment
* @param self class calling this function
* @param target id of creature to access
* @param mentalState mental state we are interested in
* @param value value to set the mental state to
*
* @return true on success, false on fail
*/
jboolean JNICALL ScriptMethodsMentalStatesNamespace::setMentalState(JNIEnv *env, jobject self, jlong mob, jint mentalState, jfloat value)
{
UNREF(self);
if (mentalState < 0 || mentalState >= MentalStates::NumberOfMentalStates)
return JNI_FALSE;
CreatureObject * creature = 0;
if (!JavaLibrary::getObject(mob, creature))
return JNI_FALSE;
creature->setMentalState(static_cast<MentalStates::Enumerator>(mentalState),
static_cast<MentalStates::Value>(value));
return JNI_TRUE;
} // JavaLibrary::setAttrib
示例2: setMentalStates
/**
* Sets the mental states for a creature.
*
* @param env Java environment
* @param self class calling this function
* @param mob id of creature to access
* @param values mental state/value pairs to set
*
* @return true on success, false on fail
*/
jboolean JNICALL ScriptMethodsMentalStatesNamespace::setMentalStates(JNIEnv *env, jobject self, jlong mob, jobjectArray values)
{
UNREF(self);
CreatureObject * creature = 0;
if (!JavaLibrary::getObject(mob, creature))
return JNI_FALSE;
int count = env->GetArrayLength(values);
for (int i = 0; i < count; ++i)
{
LocalRefPtr mentalState = getObjectArrayElement(LocalObjectArrayRefParam(values), i);
if (mentalState == LocalRef::cms_nullPtr)
return JNI_FALSE;
int type = getIntField(*mentalState, JavaLibrary::getFidMentalStateType());
if (type < 0 || type >= MentalStates::NumberOfMentalStates)
return JNI_FALSE;
creature->setMentalState(static_cast<MentalStates::Enumerator>(type),
static_cast<MentalStates::Value>(getFloatField(*mentalState,
JavaLibrary::getFidMentalStateValue())));
}
return JNI_TRUE;
} // JavaLibrary::setMentalStates