Rotation Issues error CS1612:,Can't edit rotation (error CS1612)

Im trying to make a simple AI for my game but for some reason I keep getting this error:

error CS1612: Cannot modify a value type return value of `UnityEngine.Transform.rotation’. Consider storing the value in a temporary variable.

Here’s my code:

    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    
    public class livingAI : MonoBehaviour {
    
    	public Transform AI;
    
    	public void FixedUpdate ()
    	{
    		AI.rotation.y = AI.rotation.y + Random.Range (-45, 45);
    		AI.transform.Translate (-5, 0, 0);
    	}
    }

I’ve already tried multiple solutions i found on this forum, but none of them worked.

You can’t change a single value of rotation (a Qauternion). You have to assign a new rotation entirely. Also Quaternions don’t use + like Vectors, if you want to add to one you need to use *. See example below:

using System.Collections;
     using System.Collections.Generic;
     using UnityEngine;
     
     public class livingAI : MonoBehaviour {
     
         public Transform AI;
     
         public void FixedUpdate ()
         {
			Quaternion rotation = new Quaternion.Euler(0, Random.Range (-45, 45), 0);
            AI.rotation.y = AI.rotation * rotation;
            AI.transform.Translate (-5, 0, 0);
         }
     }

So Just to re-itterate on your mistake:

Wrong:

AI.rotation.y = Random.Range(-45,45)

Right:

AI.rotation = new Quaternion(AI.rotation.x,Random.Range(-45,45), AI.rotation.z, AI.rotation.w);