bool ObjectComGrab(C4Object *cObj, C4Object *pTarget) { if (!pTarget) return false; if (cObj->GetProcedure()!=DFA_WALK) return false; if (!ObjectActionPush(cObj,pTarget)) return false; cObj->Call(PSF_Grab, &C4AulParSet(pTarget, true)); if (pTarget->Status && cObj->Status) pTarget->Call(PSF_Grabbed, &C4AulParSet(cObj, true)); return true; }
BOOL ObjectComGrab(C4Object *cObj, C4Object *pTarget) { if (!pTarget) return FALSE; if (cObj->GetProcedure()!=DFA_WALK) return FALSE; if (!ObjectActionPush(cObj,pTarget)) return FALSE; cObj->Call(PSF_Grab, &C4AulParSet(C4VObj(pTarget), C4VBool(true))); if (pTarget->Status && cObj->Status) { pTarget->Controller = cObj->Controller; pTarget->Call(PSF_Grabbed, &C4AulParSet(C4VObj(cObj), C4VBool(true))); } return TRUE; }