KroniqWaqaa 6 #1 Oluşturuldu: Şubat 13, 2018 Herkese Merhaba; Konuyu Doğru yeremi açtım bilmiyorum kusuruma bakmayın. 21xx Database' de 60 LvL' e gelince otomatik master açılıyor. Bunu kapatıp master ı görevlerle açmak istiyorum. yardımcı olabilecek varsa şimdiden teşkkür ederim. 1 Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
KODevelopers 442 #2 Şubat 13, 2018 tarihinde gönderildi Merhaba @ KroniqWaqaaDB Deki CREATE_NEW_CHAR Buraya atar mısı bakayim. Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
KroniqWaqaa 6 #3 Konu Sahibi Şubat 13, 2018 tarihinde gönderildi ALTER PROCEDURE [dbo].[CREATE_NEW_CHAR]@strAccountID varchar(21),@index tinyint,@strCharID varchar(21),@bRace tinyint,@sClass smallint,@nHair int,@bFace tinyint,@bStr tinyint,@bSta tinyint,@bDex tinyint,@bIntel tinyint,@bCha tinyintASDECLARE @bNation tinyintDECLARE @bCharCount tinyintDECLARE @bCount tinyintSELECT @bNation = bNation, @bCharCount = bCharNum FROM ACCOUNT_CHAR WHERE strAccountID = @strAccountIDIF (@bNation = 1 AND @bRace > 10) RETURN 2ELSE IF (@bNation = 2 AND @bRace RETURN 2ELSE IF (@bNation 1 AND @bNation 2) RETURN 2SELECT @bCount = COUNT(strUserID) FROM USERDATA WHERE strUserID = @strCharIDIF (@bCount > 0) RETURN 3BEGIN TRAN IF (@index = 0) UPDATE ACCOUNT_CHAR SET strCharID1 = @strCharID, bCharNum += 1 WHERE strAccountID = @strAccountID ELSE IF (@index = 1) UPDATE ACCOUNT_CHAR SET strCharID2 = @strCharID, bCharNum += 1 WHERE strAccountID = @strAccountID ELSE IF (@index = 2) UPDATE ACCOUNT_CHAR SET strCharID3 = @strCharID, bCharNum += 1 WHERE strAccountID = @strAccountID ELSE IF (@index = 3) IF (@@ERROR 0 OR @@ROWCOUNT = 0) BEGIN ROLLBACK TRAN RETURN 4 END INSERT INTO USERDATA (strUserID, Nation, Race, Class, HairRGB, Face, Strong, Sta, Dex, Intel, Cha) VALUES (@strCharID, @bNation, @bRace, @sClass, @nHair, @bFace, @bStr, @bSta, @bDex, @bIntel, @bCha) /*EXEC StartBanka strAccountID*//*EXEC GIVE_BEGINNER_ITEM strAccountID*/EXEC ITEM_VER @StrCharID IF (@@ERROR 0) BEGIN ROLLBACK TRAN RETURN 4 ENDCOMMIT TRANRETURN 0 Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
KODevelopers 442 #4 Şubat 13, 2018 tarihinde gönderildi burdaki bir şey yok fakat nasıl acıyor anlamadım ki +60 level olurken master mi acıyor ? Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
aakinci 142 #5 Şubat 13, 2018 tarihinde gönderildi LOAD_USER_DATA prosedüründe olabilir, eğer karakter 60 levelden yüksek ise 205 class ını 206, 207 yi 208 yap gibi bir kontrol vardır. Bir incele istersen. CREATE_NEW_CHAR'da olmaz çünkü 60 tan sonra açılıyor demiş arkadaş. İlk açtığı anda masterli gelmiyormuş. Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
KroniqWaqaa 6 #6 Konu Sahibi Şubat 13, 2018 tarihinde gönderildi Aynenn @ aakinci' nında dediği gibi. Char açarken 'NewBie' Sınıfında açılıyor. fakat 59'dan 60 a geçince master otomatik açılıyor. @ aakinci Prosedurde birşey bulamadım bakabilirimisin gözden kaçırdığım birşey olabilir. USE [kn_online] GO /****** Object: StoredProcedure [dbo].[LOAD_USER_DATA] Script Date: 13.02.2018 16:58:24 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER PROCEDURE [dbo].[LOAD_USER_DATA] @strAccountID varchar(21), @strCharID varchar(21) AS DECLARE @strCharID1 varchar(21), @strCharID2 varchar(21), @strCharID3 varchar(21), @strCharID4 varchar(21) SELECT @strCharID1 = ISNULL(strCharID1, ''), @strCharID2 = ISNULL(strCharID2, ''), @strCharID3 = ISNULL(strCharID3, ''), @strCharID4 = ISNULL(strCharID4, '') FROM ACCOUNT_CHAR WHERE strAccountID = @strAccountID IF (@strCharID NOT IN(@strCharID1, @strCharID2, @strCharID3, @strCharID4)) RETURN DECLARE @ Knights int, @ Knights2 int, @Zone int, @Kc int SELECT @ Knights=Knights,@Zone =Zone from USERDATA where strUserID=@strCharID select @Kc = Cashpoint from tb_user where strAccountID=@strAccountID SELECT @ Knights2=count(*) from KNIGHTS where IDNum=@ Knights IF (@ Knights2 = 0) BEGIN UPDATE USERDATA SET KNIGHTS=0,FAME=0 WHERE strUserID=@strCharID END if (@Zone = 21 or @Zone = 22) begin UPDATE USERDATA SET PX=81360,PZ=42940,Zone=21 WHERE strUserID=@strCharID END if (@Kc begin UPDATE TB_USER set cashpoint = 1 where strAccountID=@strAccountID END SELECT Nation, Race, Class, HairRGB, [Rank], Title, [Level],bLevelRebirth, [Exp], Loyalty, Face, City, Knights, Fame, Hp, Mp, Sp, Strong, Sta, Dex, Intel, Cha, Authority, Points, Gold, Zone, Bind, PX, PZ, PY, dwTime, strSkill, strItem, strSerial, strVIPItem, strVIPSerial,sQuestCount,sQuestUseCount, sAchieveQuestCount, strQuest,strQuestUse, strAchieveQuest, MannerPoint, LoyaltyMonthly, strItemTime, strVIPItemTime, strMemo, sGenieTime, strGenieOptions, strAchieveQuestKill, strRebStats, SkillTitle, CoverTitle, VIPStorePassword, VIPStoreMinute, iMonsterDefeatedCount, iUserDefeatedCount, iUserDeathCount, iAchievementPoint,LastOnline FROM USERDATA WHERE strUserID = @strCharID -- mesaja ek olarak --Aynenn @ aakinci' nında dediği gibi. Char açarken 'NewBie' Sınıfında açılıyor. fakat 59'dan 60 a geçince master otomatik açılıyor. @ aakinci Prosedurde birşey bulamadım bakabilirimisin gözden kaçırdığım birşey olabilir. USE [kn_online] GO /****** Object: StoredProcedure [dbo].[LOAD_USER_DATA] Script Date: 13.02.2018 16:58:24 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER PROCEDURE [dbo].[LOAD_USER_DATA] @strAccountID varchar(21), @strCharID varchar(21) AS DECLARE @strCharID1 varchar(21), @strCharID2 varchar(21), @strCharID3 varchar(21), @strCharID4 varchar(21) SELECT @strCharID1 = ISNULL(strCharID1, ''), @strCharID2 = ISNULL(strCharID2, ''), @strCharID3 = ISNULL(strCharID3, ''), @strCharID4 = ISNULL(strCharID4, '') FROM ACCOUNT_CHAR WHERE strAccountID = @strAccountID IF (@strCharID NOT IN(@strCharID1, @strCharID2, @strCharID3, @strCharID4)) RETURN DECLARE @ Knights int, @ Knights2 int, @Zone int, @Kc int SELECT @ Knights=Knights,@Zone =Zone from USERDATA where strUserID=@strCharID select @Kc = Cashpoint from tb_user where strAccountID=@strAccountID SELECT @ Knights2=count(*) from KNIGHTS where IDNum=@ Knights IF (@ Knights2 = 0) BEGIN UPDATE USERDATA SET KNIGHTS=0,FAME=0 WHERE strUserID=@strCharID END if (@Zone = 21 or @Zone = 22) begin UPDATE USERDATA SET PX=81360,PZ=42940,Zone=21 WHERE strUserID=@strCharID END if (@Kc begin UPDATE TB_USER set cashpoint = 1 where strAccountID=@strAccountID END SELECT Nation, Race, Class, HairRGB, [Rank], Title, [Level],bLevelRebirth, [Exp], Loyalty, Face, City, Knights, Fame, Hp, Mp, Sp, Strong, Sta, Dex, Intel, Cha, Authority, Points, Gold, Zone, Bind, PX, PZ, PY, dwTime, strSkill, strItem, strSerial, strVIPItem, strVIPSerial,sQuestCount,sQuestUseCount, sAchieveQuestCount, strQuest,strQuestUse, strAchieveQuest, MannerPoint, LoyaltyMonthly, strItemTime, strVIPItemTime, strMemo, sGenieTime, strGenieOptions, strAchieveQuestKill, strRebStats, SkillTitle, CoverTitle, VIPStorePassword, VIPStoreMinute, iMonsterDefeatedCount, iUserDefeatedCount, iUserDeathCount, iAchievementPoint,LastOnline FROM USERDATA WHERE strUserID = @strCharID Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
aakinci 142 #7 Şubat 13, 2018 tarihinde gönderildi Bunlarda bir şey görünmüyor hocam, account_login ve logout a bakar mısın belki o prosedürlerde de olabilir. Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
HKS 341 #8 Şubat 13, 2018 tarihinde gönderildi void CUser::LevelChangealtında // Auto-Master olan yeri kaldır 1 Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
KroniqWaqaa 6 #9 Konu Sahibi Şubat 15, 2018 tarihinde gönderildi Teşkkür Ederim @ HKS. Fakat denemek için elimde sorunsuz derlenebilen bi sourcem yok. sitedeki çoğu source de derlenmiyor. VS işlerindende pek anlamıyorum. varmı sorunsuz derlenebilen tavsiye edebileceğin bir 21x source. Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
KroniqWaqaa 6 #10 Konu Sahibi Şubat 17, 2018 tarihinde gönderildi Alıntıvoid CUser::LevelChange altında // Auto-Master olan yeri kaldır Sorun Sayende Çözülmüştür Teşekkürler @ HKS 1 Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
SnaypeR 66 #11 Şubat 17, 2018 tarihinde gönderildi Konu yanlış kategoriye açılmıştır.. Lütfen yardım konularınızı (Genel Yardım) kategorisine açmaya özen gösteriniz.. Konu çözüldüğünden çözülen konular arasına taşınmıştır ! Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş