احصائياتى

الردود
4

المشاهدات
353
 
Memokala
.:: عضو نشيط ::.

    غير متواجد

المشاركات
109

+التقييم
0.05

تاريخ التسجيل
May 2020

الاقامة

نظام التشغيل

رقم العضوية
4017
2020-07-05, 03:33 AM
المشاركة 1
2020-07-05, 03:33 AM
المشاركة 1
Like تمت الإجابة سورس escapism
ياريت ياجماعة حد ينزل. السورس ده و يشغلو و يقولنا بيشتغل ازاي حد من الناس الي بتفهم
رابط موضوع السورس https://code.vpscairo.com/showthread.php?t=5393



التعديل الأخير تم بواسطة Memokala ; 2020-07-05 الساعة 03:34 AM سبب آخر: .....
أفضل جواب - كتبه Uchiha T3Alo
اعمل كلاس جديد وسمى الكلاس MsgBossHarmRanking

وارمى فيه الاكواد ده


كود:
// World Conquer Online Project 2.6552 - COPS6 Project Based
// This project has been created by Eslam Abdullah
// Source Infrastructure based on COPS6 Source, written by CptSky
// This source is targeted to Conquer Online, client version 6552
// 
// File Created by: Moustafa  Mahmoud & Moustafa Muhammad & Mahmoud Mohammed
// World Conquer v2 6552 - MsgServer - MsgBossHarmRanking.cs
// Last Edit: 2017/6/15 14:05
// Created: 2010/11/23 10:12

using ProtoBuf;
using System;
using System.Runtime.InteropServices;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Collections.Concurrent;
using System.Text;
using COServer;
using COServer.Database;
using System.Threading.Tasks;

namespace 
COServer.Network.GamePackets
{
    public class 
MsgBossHarmRanking
    
{
        public 
MsgBossHarmRanking() { }
        public 
MsgBossHarmRankingProto Info;
        [
ProtoContract]
        public class 
MsgBossHarmRankingProto
        
{
            [
ProtoMember(1, IsRequired = true)]
            public 
uint Type;
            [
ProtoMember(2, IsRequired = true)]
            public 
uint BossUID;
            [
ProtoMember(3, IsRequired = true)]
            public 
Hunter[] Hunters;
        }
        [
ProtoContract]
        public class 
Hunter
        
{
            [
ProtoMember(1, IsRequired = true)]
            public 
uint Rank;
            [
ProtoMember(2, IsRequired = true)]
            public 
uint ServerID;
            [
ProtoMember(3, IsRequired = true)]
            public 
uint UID;
            [
ProtoMember(4, IsRequired = true)]
            public 
string Name;
            [
ProtoMember(5, IsRequired = true)]
            public 
uint Damage;
        }
        public 
bool Read(byte[] packet)
        {
            
using (var memoryStream = new MemoryStream(packet))
            {
                
Info = Serializer.DeserializeWithLengthPrefix<MsgBossHarmRankingProto>(memoryStream, PrefixStyle.Fixed32);
            }
            return 
true;
        }
        public 
void Ready(Client.GameState client)
        {
            var 
proto = new MsgBossHarmRankingProto();
            
proto.BossUID = Info.BossUID;
            
proto.Type = 1;
            
client.Send(Kernel.FinalizeProtoBuf(proto, 1044));
        }
        public 
void Handle(Client.GameState client)
        {
            switch (
Info.Type)
            {
                case 
0:
                    {
                        var 
proto = new MsgBossHarmRankingProto();
                        
proto.BossUID = Info.BossUID;
                        
proto.Type = 1;
                        var 
scores = client.Map.Entities.Where(i => i.Key == proto.BossUID).FirstOrDefault().Value.MonsterInfo.Score.OrderByDescending(i => i.Value).ToArray();
                        if (
scores.Length != 0)
                        {
                            
proto.Hunters = new Hunter[scores.Length];
                            for (
int i = 0; i < proto.Hunters.Length; i++)
                            {
                                
proto.Hunters[i] = new Hunter();
                                
proto.Hunters[i].UID = scores[i].Key.UID;
                                
proto.Hunters[i].Name = scores[i].Key.Name;
                                
proto.Hunters[i].Damage = scores[i].Value;
                                
proto.Hunters[i].ServerID = scores[i].Key.ServerID;
                                
proto.Hunters[i].Rank = (uint)(i + 1);
                            }
                        }
                        
client.Send(Kernel.FinalizeProtoBuf(proto, 1044));
                        break;
                    }
            }
        }
    }
} 

بعد كدا روح على كلاس MonsterTable وارمى السطر ده


كود:
     public Dictionary<Game.Player, uint> Score = new Dictionary<Game.Player, uint>(); 

بعد كدا هتروح على كلاس Handle وتبحث عن الفويد ده وتتاكد ان الفويد الى يخص البلاير نفسه لان فيه اتنين واحد للبلاير وواحد للان بى سى


كود:
public static void ReceiveAttack(Player attacker, Player attacked, 

بعد كدا تحت الفويد هترمى الاكواد ده


كود:
    #region Bosses Scores
            
if (attacked.PlayerFlag == PlayerFlag.Monster)
            {
                if (
attacked.MonsterInfo != null)
                {
                    if (
attacked.MonsterInfo.Score.ContainsKey(attacker))
                        
attacked.MonsterInfo.Score[attacker] += damage;
                    else 
attacked.MonsterInfo.Score.Add(attacker, damage);
                }
            }
            
#endregion 

بعد كدا هتروح على MsgHandler وتحط الاكواد ده


كود:
      #region MsgBossHarmRanking
                
case MsgTypes.MsgBossHarmRanking:
                    {
                        var 
pkt = new MsgBossHarmRanking();
                        var 
myPacket = new byte[Packet.Length - 8];
                        for (
int i = 0; i < myPacket.Length; i++)
                        {
                            
myPacket[i] = Packet[i];
                        }
                        if (
pkt.Read(myPacket))
                            
pkt.Handle(client);
                        break;
                    }
                
#endregion 

طبعا احتمال يجيلك ايرور فى case MsgTypes.MsgBossHarmRanking: هتروح بقا انت لكلاس MsgTypes وترمى فيه الكود ده


كود:
MsgBossHarmRanking = 1044, 

كدا الرنك هيشتغل معاك عادى وكمان هيعمل ريفريش مع نفسه مع كل ما الدمج يزيد ولو عملتلوا ريفريش هيشتغل عادى تمام
قديم 2020-07-05, 04:21 AM
المشاركة 2
nag12
.:: عضو مميز ::.
  • غير متواجد
افتراضي رد: سورس escapism
check

قديم 2020-07-05, 12:01 PM
المشاركة 3
Memokala
.:: عضو نشيط ::.
  • غير متواجد
افتراضي رد: سورس escapism
جرب و لو وقفت معاك حاجه في التشغيل قولي انا وصلت لحد مرحله معينه انا شغلته بس في الاخر اللودر بتاع الكلينت مش عايز يدخلني اكتب الاسم و الباص

قديم 2020-07-05, 02:02 PM
المشاركة 4
Uchiha T3Alo
.:: عضو خبير ::.
الإجابات المقدمة: 97
  • غير متواجد
افتراضي رد: سورس escapism
اذا كان الى منزلوا اصلا ما يعرفش يشغلوا انت هتعرف ان السورس شغال ولا مش شغال ازاى :d

قديم 2020-07-05, 02:44 PM
المشاركة 5
Memokala
.:: عضو نشيط ::.
  • غير متواجد
افتراضي رد: سورس escapism
اذا كان الى منزلوا اصلا ما يعرفش يشغلوا انت هتعرف ان السورس شغال ولا مش شغال ازاى :d
يا برنس انا شغلتوا والله و فتحت اللعبه بس المشكله كلها في اللودر مبيفتحش غير لما تشغل في بي ان طبعا مش كل الناس هقولها تشغل في بي ان علشان تخش اللعبه

و الللودر مربوط ب السورس جربت اغير اللودر مفتحتش


العلامات المرجعية



الذين يشاهدون محتوى الموضوع الآن : 1 ( الأعضاء 0 والزوار 1)
 
أدوات الموضوع

الانتقال السريع

المواضيع المتشابهه للموضوع: سورس escapism
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
سورس لعبة Escapism كلاسيك محمودمحمدسالم سورسات كونكر 60 2021-09-12 04:46 PM
ممكن حد يساعدني نشغل السورس ده مع بعض Escapism Conquer Memokala مشكلات السيرفيرات كونكر الشخصيه 9 2020-07-17 03:53 AM


الساعة الآن 06:17 PM