How i can put functions in clones like this.
clone = Instantiate(clone , transform.position, transform.rotation);
I want o detect collisions of clone in player script, is this possible?
OnCollisionEnter is called automatically by the engine, if a collision happens. You can call the function yourself, if you want to, but that doesn’t test for collisions. It runs the code inside the function.
If you want to know if the player collides with a clone, use the OnCollisionEnter function of the player and use an if statement to test, if the other object is a clone, for example by using its tag.
If you want to know in the player script, if any clone is colliding with anything else (not the player) you would have to either send a message to the player or set a boolean variable in the player script to true (GetComponent()…).
Give the clone a reference to the player gameObject or script. Something like this:
clone = Instantiate(clonePrefab , transform.position, transform.rotation);
clone.GetComponent.<CloneScript>().myParent = this; // set a reference to the player's instance of this class
Then in the clone’s collision event, you can directly influence the player.
var myParent : PlayerScript; // variable to store the player
// other code...
myParent.cloneIsHit(); // call the player's function for the clone being hit