How do you know the current Frame that is being playing in a Animation?

i know that command:

animation[“Action”].time

but i want to know if there is another command like a:

“animation[“Action”].frame”, wich return the frame that is currently being played.

i want it to trigger a sound when the Frame 7 is being played , by example.

If i use the “animation[“Action”].time”, i must to convert the Frame 7 to time in seconds, then i must to use:

if (animation["Action"].time=0.28) {
CODE TO EXECUTE
}

but when the animation is playing seems to not be exactly a 0.28 value when it is playing, then this code don´t run.

how you trigger exactly an event in a Frame of an animation?

The best way would be to call a function (event) from a frame by using the Animation Editor (i.e. an AnimationEvent).

http://docwiki.unity3d.com/index.php?n=Main.animeditor-AnimationEvents

good but when i select the Model appears “Action (read-only)” in the Animation Editor, and don´t let me
to insert AnimationEvents in the Animation.

i duplicated the Animation in the Proyect View and now i selected this duplicated Animation in the Animation Editor and now it let me to modify it and insert AnimationEvents.

it is the right way or i can change the (read-only) mode of the original animation of the model?

I’m not 100% sure, but I think you’re right.