I cannot figure out what or why my game is crashing, and ONLY in the build. through a long and slow process I narrowed it down to this being the problematic code:
private void FixedUpdate()
{
if(_moving && _destinationNode != null)
{
_playerRigidBody.constraints = RigidbodyConstraints.None;
_playerRigidBody.drag = Mathf.Clamp(Vector3.Distance(_playerRigidBody.transform.position,new Vector3(_destinationNode.gameObject.transform.position.x,_playerRigidBody.transform.position.y,_destinationNode.gameObject.transform.position.z)),0,3);
var heading = -(_playerRigidBody.transform.position - new Vector3(_destinationNode.gameObject.transform.position.x,_playerRigidBody.transform.position.y,_destinationNode.gameObject.transform.position.z));
var distance = heading.magnitude; var direction = heading / distance;
_playerRigidBody.AddForce(direction * 10);
_moving = Vector3.Distance(_playerRigidBody.transform.position,new Vector3(_destinationNode.gameObject.transform.position.x,_playerRigidBody.transform.position.y,_destinationNode.gameObject.transform.position.z)) >= _maxDistance;
}
else
{
_playerRigidBody.constraints = RigidbodyConstraints.FreezePosition;
}
}
private void Start()
{
_playerRigidBody.mass = 0.5f;
AssignNode(_startNode,true);
_currentNode = _startNode;
}
private void Update()
{
if(_moving != false)
{
return;
}
if(InputControl.GetButtonDown("Up"))
{
AssignNode(_currentNode.NorthNode,false);
}
if(InputControl.GetButtonDown("Down"))
{
AssignNode(_currentNode.SouthNode,false);
}
if(InputControl.GetButtonDown("Left"))
{
AssignNode(_currentNode.WestNode,false);
}
if(InputControl.GetButtonDown("Right"))
{
AssignNode(_currentNode.EastNode,false);
}
if(InputControl.GetButtonDown("Jump") == true && _currentNode != null)
{
_currentNode.EnterLevel(_playerRigidBody.gameObject);
if(_currentNode._typeOfNode == LevelNode.LevelNodeType.WorldPortal)
{
if(CurrentSaveInfo.Instance.World >= _currentNode.PortalToNode._worldNumber)
{
_currentNode = _currentNode.PortalToNode;
}
}
}
}
now, let me describe my setup a little bit here. I have a gameobject that this is on and "levelnode" is pretty much just another mononehavior on an object that has public variables and a simple method that isnt even called here. When i assign the levelnode to this object's apropriate slot in the inspector, only then, and only in the build, the game crashes as soon as this object is loaded.
my most recent crash logs are attached:
[output_log.txt][1]
[error.log][2]
[1]: /storage/temp/131884-output-log.txt
[2]: /storage/temp/131885-error.txt
↧