avatar_LoKsTeR

Как создать гильдию в MU Online: настройка сервера для MU online

Автор LoKsTeR, 2012 Янв. 29, 20:08

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Ключевые слова [SEO] mu onlineсервергильдия50 ресетов1кк зен5 jewel of creation

LoKsTeR

У меня такие вопросы:
--Как сделать так, что бы гильдию можно было создавать с 50 ресета.
--Для этого требовалось 1ккк зен, 5 Jewel of Creation.

Если сложно рассказать, то если есть желание то можете сделать скрипт :)
Спойлер

CREATE procedure WZ_GuildCreate
@GuildName nvarchar(50),
@MasterName nvarchar(10)
as

IF (SELECT COUNT(*) FROM guild where G_Name=@GuildName )=0

BEGIN
DECLARE @p INTEGER
DECLARE @ErrorCode int

SET @ErrorCode = 0
SET XACT_ABORT OFF

Set nocount on

begin transaction

SELECT @p = PATINDEX('%[^a-zA-Z0-9_^!~*]%',@GuildName)
IF(@p > 0)
BEGIN
SET @ErrorCode = 1
END

IF(@ErrorCode = 0)
BEGIN

INSERT INTO Guild (G_Name,G_Master,G_Score) values (@GuildName, @MasterName, 0)
IF(@@Error <> 0)
BEGIN
SET @ErrorCode = 1
END
END

IF(@ErrorCode = 0)
BEGIN

INSERT GuildMember (Name, G_Name, G_Level) values (@MasterName, @GuildName, 1)
IF (@@Error <> 0)
BEGIN
SET @ErrorCode = 2
END
END

IF(@ErrorCode <> 0)
rollback transaction
ELSE
commit transaction

select @ErrorCode

Set nocount off
SET XACT_ABORT ON
END

GO
[свернуть]

Спасибо :)

cokpat

Цитата: LoKsTeR от 2012 Янв. 29, 18:08  У меня такие вопросы:
--Как сделать так, что бы гильдию можно было создавать с 50 ресета.
--Для этого требовалось 1ккк зен, 5 Jewel of Creation.

Если сложно рассказать, то если есть желание то можете сделать скрипт :)
Спойлер

CREATE procedure WZ_GuildCreate
@GuildName nvarchar(50),
@MasterName nvarchar(10)
as

IF (SELECT COUNT(*) FROM guild where G_Name=@GuildName )=0

BEGIN
DECLARE @p INTEGER
DECLARE @ErrorCode int

SET @ErrorCode = 0
SET XACT_ABORT OFF

Set nocount on

begin transaction

SELECT @p = PATINDEX('%[^a-zA-Z0-9_^!~*]%',@GuildName)
IF(@p > 0)
BEGIN
SET @ErrorCode = 1
END

IF(@ErrorCode = 0)
BEGIN

INSERT INTO Guild (G_Name,G_Master,G_Score) values (@GuildName, @MasterName, 0)
IF(@@Error <> 0)
BEGIN
SET @ErrorCode = 1
END
END

IF(@ErrorCode = 0)
BEGIN

INSERT GuildMember (Name, G_Name, G_Level) values (@MasterName, @GuildName, 1)
IF (@@Error <> 0)
BEGIN
SET @ErrorCode = 2
END
END

IF(@ErrorCode <> 0)
rollback transaction
ELSE
commit transaction

select @ErrorCode

Set nocount off
SET XACT_ABORT ON
END

GO
[свернуть]

Спасибо :)

это ставиться в сервере а не в базе, потому что в сервере так же выбирается лвл, а это процедура только создает гильдию.

LoKsTeR

Цитата: cokpat от 2012 Янв. 29, 19:39  это ставиться в сервере а не в базе, потому что в сервере так же выбирается лвл, а это процедура только создает гильдию.
Угу, спасибо, конечно, но а поподробнее? Как это сделать?

cokpat

Цитата: LoKsTeR от 2012 Янв. 29, 19:53  Угу, спасибо, конечно, но а поподробнее? Как это сделать?
кодить в гс, дллка или если эмуль еще проще, возьми рмст исходники у них такая бородень была кажись.

Похожие темы (5)