My unity engine can't run any c# scripts ,so dumb

it can’t run any c# scrpits but it c an run jS

This is very similar to your last post, and just saying the engine is dumb, again.
What exactly is the problem? You just post a screenshot of an empty script… what is the point of that? And empty script doesn’t do anything, to begin with.
Please articulate your question better, and express what you’re doing and what’s working/not working.
I can assure you that the engine can run C# scripts, in general. :slight_smile:

How about showing us more than just the Inspector?

So i created a new c# script didn’t make any changes to it and the engine can’t run it

i tried to delete my unity and re download it and it’s still not working also i tried just to run the scripts they used in their Tanks! tutorials and it is still the same problem

so my engine can only run java but not c# for all the c# scripts
it keeps telling me no monoBehaviour scripts in the file
my engine can run everything normally except c# script

Which is impossible because they’re both going through the exact same backend. We need to see more than the Inspector.

I also can’t run the scripts that i download from assets store

using UnityEngine;

namespace Complete
{
public class TankMovement : MonoBehaviour
{
public int m_PlayerNumber = 1; // Used to identify which tank belongs to which player. This is set by this tank’s manager.
public float m_Speed = 12f; // How fast the tank moves forward and back.
public float m_TurnSpeed = 180f; // How fast the tank turns in degrees per second.
public AudioSource m_MovementAudio; // Reference to the audio source used to play engine sounds. NB: different to the shooting audio source.
public AudioClip m_EngineIdling; // Audio to play when the tank isn’t moving.
public AudioClip m_EngineDriving; // Audio to play when the tank is moving.
public float m_PitchRange = 0.2f; // The amount by which the pitch of the engine noises can vary.

private string m_MovementAxisName; // The name of the input axis for moving forward and back.
private string m_TurnAxisName; // The name of the input axis for turning.
private Rigidbody m_Rigidbody; // Reference used to move the tank.
private float m_MovementInputValue; // The current value of the movement input.
private float m_TurnInputValue; // The current value of the turn input.
private float m_OriginalPitch; // The pitch of the audio source at the start of the scene.
private ParticleSystem[ ] m_particleSystems; // References to all the particles systems used by the Tanks

private void Awake ()
{
m_Rigidbody = GetComponent ();
}

private void OnEnable ()
{
// When the tank is turned on, make sure it’s not kinematic.
m_Rigidbody.isKinematic = false;

// Also reset the input values.
m_MovementInputValue = 0f;
m_TurnInputValue = 0f;

// We grab all the Particle systems child of that Tank to be able to Stop/Play them on Deactivate/Activate
// It is needed because we move the Tank when spawning it, and if the Particle System is playing while we do that
// it “think” it move from (0,0,0) to the spawn point, creating a huge trail of smoke
m_particleSystems = GetComponentsInChildren();
for (int i = 0; i < m_particleSystems.Length; ++i)
{
m_particleSystems*.Play();*
}
}
private void OnDisable ()
{
// When the tank is turned off, set it to kinematic so it stops moving.
m_Rigidbody.isKinematic = true;
// Stop all particle system so it “reset” it’s position to the actual one instead of thinking we moved when spawning
for(int i = 0; i < m_particleSystems.Length; ++i)
{
m_particleSystems*.Stop();
_
}_
_
}_
private void Start ()
_
{_
_
// The axes names are based on player number._
m_MovementAxisName = “Vertical” + m_PlayerNumber;
m_TurnAxisName = “Horizontal” + m_PlayerNumber;
_
// Store the original pitch of the audio source._
m_OriginalPitch = m_MovementAudio.pitch;
_
}_
private void Update ()
_
{_
_
// Store the value of both input axes._
m_MovementInputValue = Input.GetAxis (m_MovementAxisName);
m_TurnInputValue = Input.GetAxis (m_TurnAxisName);
EngineAudio ();
_
}_
private void EngineAudio ()
_
{_
_
// If there is no input (the tank is stationary)…_
if (Mathf.Abs (m_MovementInputValue) < 0.1f && Mathf.Abs (m_TurnInputValue) < 0.1f)
_
{_
_
// … and if the audio source is currently playing the driving clip…_
if (m_MovementAudio.clip == m_EngineDriving)
_
{_
_
// … change the clip to idling and play it._
m_MovementAudio.clip = m_EngineIdling;
m_MovementAudio.pitch = Random.Range (m_OriginalPitch - m_PitchRange, m_OriginalPitch + m_PitchRange);
m_MovementAudio.Play ();
_
}_
_
}_
else
_
{_
_
// Otherwise if the tank is moving and if the idling clip is currently playing…_
if (m_MovementAudio.clip == m_EngineIdling)
_
{_
_
// … change the clip to driving and play._
m_MovementAudio.clip = m_EngineDriving;
m_MovementAudio.pitch = Random.Range(m_OriginalPitch - m_PitchRange, m_OriginalPitch + m_PitchRange);
m_MovementAudio.Play();
_
}_
_
}_
_
}_
private void FixedUpdate ()
_
{_
_
// Adjust the rigidbodies position and orientation in FixedUpdate._
Move ();
Turn ();
_
}_
private void Move ()
_
{_
_
// Create a vector in the direction the tank is facing with a magnitude based on the input, speed and the time between frames._
Vector3 movement = transform.forward * m_MovementInputValue * m_Speed * Time.deltaTime;
_
// Apply this movement to the rigidbody’s position._
m_Rigidbody.MovePosition(m_Rigidbody.position + movement);
_
}_
private void Turn ()
_
{_
_
// Determine the number of degrees to be turned based on the input, speed and time between frames._
float turn = m_TurnInputValue * m_TurnSpeed * Time.deltaTime;
_
// Make this into a rotation in the y axis._
Quaternion turnRotation = Quaternion.Euler (0f, turn, 0f);
_
// Apply this rotation to the rigidbody’s rotation._
m_Rigidbody.MoveRotation (m_Rigidbody.rotation * turnRotation);
_
}_
_
}_
_
}*_

Showing me a random script isn’t what I meant. We need to see more of the editor.

i copyed this thing from the tutorial and dragged into the script for the tank

okay let me get a screen shot real quick

i think i find out what happened ,thank u for helping me ,may i ask u if i have more questions

Wow, glad ya got it fixed. In the future, you needn’t reply to one post with 4 separate posts… but that’s all good.
And, if you do make future posts on the forums, please read the pinned thread on how to insert code properly (using code tags). Welcome to Unity — Enjoy :slight_smile:

Aww come on man! I am having the same problem and still have not found a solution. If you fixed it, can you please elaborate how you did so? So others with this problem (like myself) can fix it too.

@Leviathan0010 : Please either post some details here (or a new thread) describing your situation. Been a while since this thread was last active and may or may not be the same thing you’re experiencing exactly.