private void InitializeDictionary()
    {
        ACharacterState instance = new JumpState() as JumpState;

        instance.Initialize(ECharacterState.JUMP, this);
        _characterStates.Add(ECharacterState.JUMP, instance);

        instance = new IdleState() as IdleState;
        instance.Initialize(ECharacterState.IDLE, this);
        _characterStates.Add(ECharacterState.IDLE, instance);

        instance = new WalkState() as WalkState;
        instance.Initialize(ECharacterState.WALK, this);
        _characterStates.Add(ECharacterState.WALK, instance);

        instance = new FallState() as FallState;
        instance.Initialize(ECharacterState.FALL, this);
        _characterStates.Add(ECharacterState.FALL, instance);

        instance = new SteamState() as SteamState;
        instance.Initialize(ECharacterState.STEAM, this);
        _characterStates.Add(ECharacterState.STEAM, instance);
    }