الموضوع: استفسارات
عرض مشاركة واحدة
قديم 15-03-2020, 04:20 AM   #2

gaffag
عضو نشيك





• الانـتـسـاب » Feb 2011
• رقـم العـضـويـة » 80511
• المشـــاركـات » 66
• الـدولـة » October
• الـهـوايـة » Electronics
• اسـم الـسـيـرفـر »
• الـجـنـس » Male
• نقـاط التقييم » 10
gaffag صـاعـد

gaffag غير متواجد حالياً



افتراضي رد: استفسارات



بص علشان تعمل اي سكرول , لازم تخليها تعتمد علي Effect او حدث معين بيحصل في الجيم علشان يقدر ياخد اكشن ... ف مثلا من الحاجات المهم اوي واللي انا بشتغل بيها ,, هتروح علي SHARD_LOG وهتفتح ال Procedures الموجودة فيه ... وهتلاقي 2 بروسيدير مهمين اوي اوي
واحد اسمة _AddLogItem والتاني اسمة _AddLogChar ... لو هتعمل سكرولة تعمل حدث معين يبقى شغلك كلة _AddLogItem ف انت خلي كل شغلك عليه .

هتفتحة , اول حاجة هتلاقي حاجة معمولها Declare اسمها @ItemRefID
ف انت اول حاجة هتعملها انت عايز تسأل الداتابيز لو حد ضرب السكرول دي , نفذ دة
ف هتستخدم if Statement

هتقول :

If (@ItemRefID = رقم الID بتاع السكرول هتجيبة من _RefObjCommon ... بس تكون سكرول انت ضايفها بنفسك جديدة )
begin
وهتكتب هنا المفروض ينفذ اية
وبعدين تكتب
end

طيب الكوايري نفسة بقى عبارة عن اية ؟
انت قلت عايز تعمل ريسيت Skill يبقى هتعمل حاجتين
رقم واحد هتخلي الماستري لفل 0 كلها
رقم اتنين هتمسح ال Skills كلها
يبقى هتقولة


Update _CharSkillMastery
Set Level = 0 where CharID = @CharID

كدة احنا خلينا الماستري 0 لاي سلاح هو فاتحة

طيب هنكمل بقى .. عايزين نمسح ال Skills كلها ما عدا ال Basic Skills الخاصة بال Normal Hit بالسلاح , يعني اللي هي بيضرب Basic attach

طيب هنقولة اية ؟

Delete From _CharSkill where CharID = @CharID and SkillId not in (Select SkillID from _RefCharDefault_Skill)

كدة تبقى خلصت الكويري كلة , اهم حاجة انك تتعلم خبايا اللعبة فين , وكل بروسيدير وكل table خاص ب اية .
الكود دة كلة هتضيفة علي _ِAddLogItem في SHARD_LOG

كود PHP:
If (@ItemRefID 'xxxxx')
begin
Update _CharSkillMastery 
SET Level 
0 Where CharID=@CharID 
Delete from _CharSkill where CharID
=@CharID and SkillID not in (Select SkillID from _RefCharDefault_skill)
end 
وهتعمل Execute وخلاص علي كدة اضرب الايتم وهتعمل ريسيت لل Skills




رد مع اقتباس