How do enums work?

Hi, I’m trying to create some movement behavior and currently my units will walk around picking random locations. The trouble I’m running into is figuring out if they have reached their move target destination. I see a node called Get move status, and from there I can “switch on EPath following status”. Which returns Idle, Waiting, Paused and Moving. This has lead me to believe that I could create my own status descriptions. From looking around it looks like I could do this by creating an Enumerator. But I really don’t know how they work. Anyone up for breaking this down for me? Thanks!

You decler them it in header file like this with options sperated with commas

UENUM()
enum EOptions {
	HAM_Both,
	HAM_Horizontal,
	HAM_Vertical
};

And then if you want make a property that use them treat it like class or if you use it with UProperty

UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = Something)
TEnumAsByte<EOptions> Options;

And then you can just

Options = HAM_Both;

here info:
http://www.enel.ucalgary.ca/People/Norman/enel315_winter1997/enum_types/

EDIT: Ahh i just notice you making blueprint XD i dont know how to make it in blueprint, enum is own kind of object so you need to make enum.