Kleine Anmerkung:
Wenn ich mich auslogge und wieder einlogge, dann bin ich nicht mehr locked.
Denn du persistierst diese Variable 'm_isLocked' nicht weiter, die wird bei CHARACTER::Initialize wieder auf false standartmäßig gesetzt.
Also Client killen und neu starten und dann hat sich das.