How should the state of the state machine transition!

There could be three ways
1.Use like ChangeState()method
2.Use Decision Each frame check(Very common maybe there’s a problem with performance?)
3. Evnet?
What’s the difference between them?
My English is poor. Sorry

I don’t know what “Evnet” is.

Are you writing a custom state machine? Do you understand the definition of a state machine? It is a very specific concept. The closer you stick to the standard definition, the easier it is to implement one. So make sure you have a clear understanding of what a state machine is, and how it is useful.

A state machine is, basically, a program for processing input. The input is a sequence of tokens. Each state has a transition table, mapping each possible token to a transition (the next state). If the token is not in the table, the machine fails and resets (unless your have a modified state machine, which might accept a wildcard token that transitions back to the same state, basically ignoring tokens it doesn’t understand).

The machine only transitions when it reads tokens. Either it pulls them from a token input stream (could be a file, or an array, or anything), or some outside code (some controller or other manager) that pushes tokens into the machine. It’s practically the same, because the controller will alternately hook up the stream. Shouldn’t be any need to poll anything every frame.

Where are the tokens coming from? File? User input? Game world interactions?

What does the state machine represent?

You should try to have a clear understanding of what you are trying to do, and how a state machine will help you do it.