Yes, for example:
Setting values:
pawn Код:
#define MEM_set_val_ex(%0,%1,%2) (Float:(MEM_set_val(%0, %1, _:(%2))))
// ...
MEM::set_val_ex(ptr, _, 4.0);
// or...
new Float:p = 4.0;
MEM::set_val_ex(ptr, _, p);
Getting values
pawn Код:
#define MEM_get_float(%0) (Float:(MEM_get_val(%0)))
// ...
printf("%f", MEM::get_float(ptr));
Setting values by using structures:
pawn Код:
#define MEM_set_val_ex(%0,%1,%2) (Float:(MEM_set_val(%0, %1, _:(%2))))
MEM::struct Vect3D
{
Float:Vect3D_X,
Float:Vect3D_Y,
Float:Vect3D_Z
}
// ...
MEM::set_val_ex(ptr, Vect3D_X, 2.0);
MEM::set_val_ex(ptr, Vect3D_Y, 3.0);
MEM::set_val_ex(ptr, Vect3D_Z, 4.0);
// or...
new Float:x = 2.0, Float:y = 3.0, Float:z = 4.0f;
// ...
MEM::set_val_ex(ptr, Vect3D_X, x);
MEM::set_val_ex(ptr, Vect3D_Y, y);
MEM::set_val_ex(ptr, Vect3D_Z, z);
// or...
new pos[Vect3D] = {2.0, 3.0, 4.0};
MEM::set_arr(ptr, _, pos);
Getting values by using structures:
pawn Код:
MEM::struct Vect3D
{
Float:Vect3D_X,
Float:Vect3D_Y,
Float:Vect3D_Z
}
// ...
printf("{ %f, %f, %f }", MEM_get_val(ptr, Vect3D_X), MEM_get_val(ptr, Vect3D_Y), MEM_get_val(ptr, Vect3D_Z));