Oki.. i did a script, tried to use your suggestion with "modelToWorld". However i keep getting errors like: generic error #sleep 2;
So could anyone see something wrong with this?
Code:
/*
Steer missile script made by granQ.
Made for SFP, Swedish Forces Pack.
Feel free to use, adjust for own purposes.
Script can for instance be started with an fired eventhandler.
*/
_vehicle = _this select 0;
_weapon = _this select 1;
_ammo = _this select 4;
sleep 0.1;
_missile = NearestObject [_vehicle, _ammo];
player sidechat format ["Defined: %1 as _missile", _missile];
if ("ARRAY" == typename _missile) then
{
_missile = _missile select 0;
};
if ("OBJECT" == typename _missile) then
{
while {alive _missile} do
{
_dirArray = _vehicle weaponDirection _weapon;
_dirElev = asin(_dirArray select 2 ) - asin( vectorDir vehicle player select 2);
_dirDegrees = (_dirArray select 0) atan2 (_dirArray select 1);
_dirToMissile = ((getpos _missile select 0) - (getpos _vehicle select 0)) atan2 ((getpos _missile select 1) - (getpos _vehicle select 1));
_dirDegrees = _dirDegrees + 360;
_dirToMissile = _dirToMissile + 360;
if (_dirToMissile < _dirDegrees) then
{
_WorldPos= _missile modelToWorld [0.2,0,0];
_missile setpos _WorldPos;
};
if (_dirToMissile > _dirDegrees) then
{
_WorldPos= _missile modelToWorld [-0.2,0,0];
_missile setpos _WorldPos;
};
_height = (getposASL _missile select 2) - (getposASL _vehicle select 2);
_distance = _vehicle distance _missile;
_degreeToMissile = asin (_height/_distance);
if (_dirElev > _degreeToMissile) then
{
_WorldPos= _missile modelToWorld [0,0,0.2];
_missile setpos _WorldPos;
};
if (_dirElev < _degreeToMissile ) then
{
_WorldPos= _missile modelToWorld [0,0,-0.2];
_missile setpos _WorldPos;
};
};
};