هي خدت مني يجي تلت ساعه عشان مينفعش تعمل سكرول تشيلك ال senior بسهوله كدا .. انا هشرحلك كل ال انا عملتوا في الآخر .. فا انت هتغير ال procedure بتاع ال scroll الأولى ال بتديك كلمه [Senior] بي ال procedure دي :
كود:
IF (@Operation = '41') and (@ItemRefID = '47293') --- This scroll is made by #HB
Begin
declare @CharName16 varchar(64)
set @CharName16 = (select CharName16 from [SRO_VT_SHARD].dbo._Char where CharID = @CharID )
insert into [SRO_VT_SHARD].dbo.Senior_Member (CharName , CharID) values (@CharName16 , @CharID)
UPDATE [SRO_VT_SHARD].[dbo].[_Char] Set CharName16 = '[Senior]' + @CharName16 where CharID = @CharID
UPDATE [SRO_VT_SHARD].dbo._Friend Set FriendCharName = '[Senior]' + @CharName16 where FriendCharID = @CharID
UPDATE [SRO_VT_SHARD].dbo._GuildMember Set CharName = '[Senior]' + @CharName16 where CharID = @CharID
END
وهتحط ال line دا في ال _Items في ال [SRO_VT_SHARD] :
كود:
252792 47293 0 0 0 NULL 0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 7233969025415895331
ومتنساش .. بدل RefItemID ال هوا 47293 ب ID سكرول ال بتديك [SENIOR] جمب اسمك :
وهتعمل ال table دي بالكويري دي :
كود:
USE [SRO_VT_SHARD]
GO
/****** Object: Table [dbo].[Senior_Member] Script Date: 10/08/2017 11:28:23 م ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[Senior_Member](
[CharName] [varchar](64) NOT NULL,
[CharID] [int] NOT NULL,
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
GO
وهتعمل سكرول تاني بي اسم مختلف ال هتكون بتمسح ال [Senior] و تديلوا السكرول في ال inventory بال procedure دي :
كود:
IF (@Operation = '41') and (@ItemRefID = '47295') --- This scroll is made by #HB
Begin
declare @SeniorMemberOldName varchar(64)
set @SeniorMemberOldName = (select CharName from [SRO_VT_SHARD].dbo.Senior_Member where CharID = @CharID )
UPDATE [SRO_VT_SHARD].[dbo].[_Char] Set CharName16 = @SeniorMemberOldName where CharID = @CharID
UPDATE [SRO_VT_SHARD].dbo._Friend Set FriendCharName = @SeniorMemberOldName where FriendCharID = @CharID
UPDATE [SRO_VT_SHARD].dbo._GuildMember Set CharName = @SeniorMemberOldName where CharID = @CharID
UPDATE [SRO_VT_SHARD].dbo._Inventory Set ItemID = '252793' where CharID = @CharID AND Slot = '108'
DELETE FROM [SRO_VT_SHARD].dbo.Senior_Member where CharID = @CharID
END
هفهمك بقا انا عملت ايه اولا مينفعش اعمل اسكرول تمسح ال [Senior] عادي كده .. فا انا عملت ايه .. خليت السكرول ال بتديك [Senior] جمب اسمك تحط اسمك القديم في table والاسكرول ال بتمسح [Senior] تاخد اسمك من ال table وتبدلوا فا اسمك يرجع من غير [Senior] وبعد ما تبدلوا في اسمك قبل ال [Senior] تمسح اسمك من ال table عشان مفيش اسامي تكرر وكده وتديك سكرول ال [Senior] في ال inventory في آحر ال inventory خالص slot رقم 108 وهوا الموضوع كبير شويه
