ent_bonehandle(ENTITY*,STRING* name,var index)

ent_boneparent(ENTITY*,STRING* name,var index)

Findet das Handle und optional den Namen eines Bones ((ent_bonehandle, A7.81) oder des 'Parent'-Bones dem ein Bone mit der gegebenen Indexnummer zugewiesen ist (ent_boneparent, A7.10).

Parameter:

ENTITY* Entity-Pointer
name

Name oder Handle des Bones (STRING* oder char*), oder, wenn nur die Index-Nummer angegeben ist, NULL

index Index-Nummer des Bones, oder 0 wenn STRING* den Bone-Namen oder -Handle enthält.

Rückgabewerte:

Handle des Bones bzw. des Bone-Parents (0, wenn der Bone keinen Parent hat)

Modifiziert:

name (auf den Bone bzw. Parent-Bone gesetzt, wenn beide, name und index ungleich Null sind) .

Bemerkungen:

Geschwindigkeit:

Schnell

Beispiel (lite-C):

// return the handle of the first child bone of a bone with a given index
long ent_bonechild(ENTITY* ent,var index)
{
  var i;
  for (i=1; i<=ent_bones(ent); i++)
    if (index == ent_boneparent(ent,NULL,i))
      return (long)i;
  return 0; // no child found
}

// get the name of the parent bone when a child index is given.
STRING* parent_name = "";
ent_setboneparent(ent,parent_name,child_index); // retrieve the parant name from the child index.

// get the name of the parent bone when a child name is given.
STRING* child_name = "foot_left";
long handle = ent_setboneparent(ent,child_name,0); // return a handle to the parent bone
ent_setbonehandle(ent,parent_name,(var)handle); // retrieve the parant name from the parent handle.

Siehe auch:

vec_for_bone, ent_bonename, ent_bones

► latest version online