24.01.2014, 12:38
I first thought it would create a square around the player in the direction he is facing
But if it is just a square you only need two loops
But if it is just a square you only need two loops
pawn Code:
stock CreateSquareObjectShape(playerid, Float: fDiag, objectsPerLine = 10) {
new
Float: rX[2],
Float: rY[2],
Float: fZ
;
if(GetPlayerPos(playerid, fX[0], fY[0], fZ)) {
new
Float: inc = (fDiag * 0.707 / objectsPerLine),
Float: cos = (fDiag * floatcos(45, degrees)),
Float: sin = (fDiag * floatsin(45, degrees))
;
rX[1] = rX[0] + cos;
rY[1] = rY[0] + sin;
rX[0] -= cos;
rY[0] -= sin;
for(cos = rX[1]; cos > rX[0]; cos -= inc) {
CreateObject(1598, cos, rY[0], fZ, 0, 0, 0);
CreateObject(1598, cos, rY[1], fZ, 0, 0, 0);
}
for(sin = rY[1]; sin > rY[0]; sin -= inc) {
CreateObject(1598, rX[0], sin, fZ, 0, 0, 0);
CreateObject(1598, rX[1], sin, fZ, 0, 0, 0);
}
return true;
}
return false;
}