I would like to limit charcter names but I don't know how to do that.
Rules:
-min 3 chars
-no !@#$%^&*()_.<>:; and stuff like that
-no other custom stuff just the alphanumeric
Here is my procedure:
SET @char_name = RTRIM(@char_name)
DECLARE @char_id int
SET @char_id = 0
-- debug code delete in commercial
IF (GETDATE() < '2004-1-1')
SET @builder = 1
IF @char_name LIKE N' '
BEGIN
RAISERROR ('Character name has space : name = [%s]', 16, 1, @char_name)
RETURN -1
END
-- check user_prohibit
if exists(select char_name from user_prohibit (nolock) where char_name = @char_name)
begin
RAISERROR ('Character name is prohibited: name = [%s]', 16, 1, @char_name)
RETURN -1
end
declare @user_prohibit_word nvarchar(20)
select top 1 @user_prohibit_word = words from user_prohibit_word (nolock) where PATINDEX('%' + words + '%', @char_name) > 0
if @user_prohibit_word is not null
begin
RAISERROR ('Character name has prohibited word: name = [%s], word[%s]', 16, 1, @char_name, @user_prohibit_word)
RETURN -1
end
-- check reserved name
declare @reserved_name nvarchar(50)
declare @reserved_account_id int
select top 1 @reserved_name = char_name, @reserved_account_id = account_id from user_name_reserved (nolock) where used = 0 and char_name = @char_name
if not @reserved_name is null
begin
if not @reserved_account_id = @account_id
begin
RAISERROR ('Character name is reserved by other player: name = [%s]', 16, 1, @char_name)
RETURN -1
end
end
sorry for my bad english, I hope you understand me
When I have free time, I will update it for version 409.
I might also make some changes, such as allowing you to choose whether you want the berserker at level 1 or 2.
The sale of the pack is valid until 12/31/2024.
The share is prohibited at any time, in any form.
This pack will never be shared by me personally because too many people work on it.
If you bought or will buy the pack not from me, do not expect any claims regarding functionality, answers to questions, help, etc., do not even write))
Question
koziolekl
Hello
I would like to limit charcter names but I don't know how to do that.
Rules:
-min 3 chars
-no !@#$%^&*()_.<>:; and stuff like that
-no other custom stuff just the alphanumeric
Here is my procedure:
sorry for my bad english, I hope you understand me
2 answers to this question
Recommended Posts