/RapidPM/ext/pocketmine/math/axisalignedbb.zep.c: In function ‘zim_Pocketmine_Math_AxisAlignedBB_calculateXOffset’:
/RapidPM/ext/pocketmine/math/axisalignedbb.zep.c:913:4: error: incompatible types when assigning to type ‘zval’ {aka ‘struct _zval_struct’} from type ‘double’
x = zephir_get_doubleval(x_param);
^
/RapidPM/ext/pocketmine/math/axisalignedbb.zep.c: In function ‘zim_Pocketmine_Math_AxisAlignedBB_calculateYOffset’:
/RapidPM/ext/pocketmine/math/axisalignedbb.zep.c:1002:4: error: incompatible types when assigning to type ‘zval’ {aka ‘struct _zval_struct’} from type ‘double’
y = zephir_get_doubleval(y_param);
^
/RapidPM/ext/pocketmine/math/axisalignedbb.zep.c: In function ‘zim_Pocketmine_Math_AxisAlignedBB_calculateZOffset’:
/RapidPM/ext/pocketmine/math/axisalignedbb.zep.c:1091:4: error: incompatible types when assigning to type ‘zval’ {aka ‘struct _zval_struct’} from type ‘double’
z = zephir_get_doubleval(z_param);
Warning: Passing possible incorrect type for parameter: Pocketmine\Math\Vector3::getIntermediateWithXValue(x), passing: undefined, expecting: double in F:\Dev\FastMine\pocketmine\math\axisalignedbb.zep on line 537 [possible-wrong-parameter-undefined]
let v1 = pos1->getIntermediateWithXValue(pos2, this->minX);
------------------------------------------------------------------^
Warning: Passing possible incorrect type for parameter: Pocketmine\Math\Vector3::getIntermediateWithXValue(x), passing: undefined, expecting: double in F:\Dev\FastMine\pocketmine\math\axisalignedbb.zep on line 538 [possible-wrong-parameter-undefined]
let v2 = pos1->getIntermediateWithXValue(pos2, this->maxX);
------------------------------------------------------------------^
Warning: Passing possible incorrect type for parameter: Pocketmine\Math\Vector3::getIntermediateWithYValue(y), passing: undefined, expecting: double in F:\Dev\FastMine\pocketmine\math\axisalignedbb.zep on line 539 [possible-wrong-parameter-undefined]
let v3 = pos1->getIntermediateWithYValue(pos2, this->minY);
------------------------------------------------------------------^
Warning: Passing possible incorrect type for parameter: Pocketmine\Math\Vector3::getIntermediateWithYValue(y), passing: undefined, expecting: double in F:\Dev\FastMine\pocketmine\math\axisalignedbb.zep on line 540 [possible-wrong-parameter-undefined]
let v4 = pos1->getIntermediateWithYValue(pos2, this->maxY);
------------------------------------------------------------------^
Warning: Passing possible incorrect type for parameter: Pocketmine\Math\Vector3::getIntermediateWithZValue(z), passing: undefined, expecting: double in F:\Dev\FastMine\pocketmine\math\axisalignedbb.zep on line 541 [possible-wrong-parameter-undefined]
let v5 = pos1->getIntermediateWithZValue(pos2, this->minZ);
------------------------------------------------------------------^
Warning: Passing possible incorrect type for parameter: Pocketmine\Math\Vector3::getIntermediateWithZValue(z), passing: undefined, expecting: double in F:\Dev\FastMine\pocketmine\math\axisalignedbb.zep on line 542 [possible-wrong-parameter-undefined]
let v6 = pos1->getIntermediateWithZValue(pos2, this->maxZ);
------------------------------------------------------------------^
/**
* Returns a new vector with x value equal to the second parameter, along the line between this vector and the
* passed in vector, or null if not possible.
*
* @param Vector3 $v
* @param float $x
*
* @return Vector3|null
*/
public function getIntermediateWithXValue(<Vector3> v, float x) -> <Vector3>|null
{
var f;
var xDiff;
let xDiff = v->x - this->x;
if (xDiff * xDiff < 0.0000001) {
return null;
}
let f = (x - this->x) / xDiff;
if (f < 0 || f > 1) {
return null;
} else {
return new Vector3(x, this->y + (v->y - this->y) * (float) f, this->z + (v->z - this->z) * (float) f);
}
}
/**
* Returns a new vector with y value equal to the second parameter, along the line between this vector and the
* passed in vector, or null if not possible.
*
* @param Vector3 $v
* @param float $y
*
* @return Vector3|null
*/
public function getIntermediateWithYValue(<Vector3> v, float y) -> <Vector3>|null
{
var f;
var yDiff;
let yDiff = v->y - this->y;
if (yDiff * yDiff < 0.0000001) {
return null;
}
let f = (y - this->y) / yDiff;
if (f < 0 || f > 1) {
return null;
} else {
return new Vector3(this->x + (v->x - this->x) * (float) f, y, this->z + (v->z - this->z) * (float) f);
}
}
/**
* Returns a new vector with z value equal to the second parameter, along the line between this vector and the
* passed in vector, or null if not possible.
*
* @param Vector3 $v
* @param float $z
*
* @return Vector3|null
*/
public function getIntermediateWithZValue(<Vector3> v, float z) -> <Vector3>|null
{
var f;
var zDiff;
let zDiff = v->z - this->z;
if (zDiff * zDiff < 0.0000001) {
return null;
}
let f = (z - this->z) / zDiff;
if (f < 0 || f > 1) {
return null;
} else {
return new Vector3(this->x + (v->x - this->x) * (float) f, this->y + (v->y - this->y) * (float) f, z);
}
}