عرض مشاركة واحدة
قديم 2020-04-12, 06:48 AM
المشاركة 4
Hassan Emprator
.:: عضو خبير ::.
  • غير متواجد
افتراضي رد: مشكلة بخصوص الدونيشن
محمد ادالك الانبي سي ودا لو عايز ترفع من الدونيشن نفسه

هتبحث عن

كود:
case NobilityInfo.Donate

وهتبدل الكيس بي


كود:
case NobilityInfo.Donate:
                    {
                        if (
client.Trade.InTrade)
                            return;
                        if (
client.Entity.DonateTime)
                            return;
                        
ulong silvers information.dwParam;
                        
bool newDonator false;
                        
client.NobilityInformation.Gender = (byte)(client.Entity.Body 10);
                        if (
client.NobilityInformation.Donation == 0)
                            
newDonator true;
                        if (
information.MoneyType == 1)
                        {
                            
ulong Slivers silvers;

                            if (
client.Entity.Money >= Slivers)
                            {
                                
client.Entity.ConquerPoints -= (uint)Slivers;
                                
client.NobilityInformation.Donation += silvers;
                            }
                        }
                        else
                        {
                            if (
client.Entity.Money >= silvers)
                            {
                                
client.Entity.Money -= (uint)silvers;
                                
client.NobilityInformation.Donation += silvers;
                            }
                        }

                        if (!
Board.ContainsKey(client.Entity.UID) && client.NobilityInformation.Donation == silvers && newDonator)
                        {
                            
Board.Add(client.Entity.UIDclient.NobilityInformation);
                            try
                            {
                                
Database.NobilityTable.InsertNobilityInformation(client.NobilityInformation);
                            }
                            catch
                            {
                                
Database.NobilityTable.UpdateNobilityInformation(client.NobilityInformation);
                            }
                        }
                        else
                        {
                            
Database.NobilityTable.UpdateNobilityInformation(client.NobilityInformation);
                        }
                        
Sort(client.Entity.UID);
                        break;
                    }
                case 
NobilityInfo.List:
                    {
                        
byte[] packet = new byte[600 8];
                        
Network.Writer.WriteUInt16(6000packet);
                        
Network.Writer.WriteUInt16(20642packet);
                        
Network.Writer.WriteUInt16(24packet);
                        
Network.Writer.WriteUInt16(1010packet);
                        
Network.Writer.WriteUInt16(1012packet);
                        
int offset 120;
                        for (
int i = (int)(information.wParam1 10); information.wParam1 10 10 && BoardList.Counti++)
                        {
                            var 
nob BoardList[i];
                            
Network.Writer.WriteUInt32(nob.EntityUIDoffsetpacket);
                            
offset += 4;
                            if (
Kernel.GamePool.ContainsKey(nob.EntityUID))
                            {
                                
Network.Writer.WriteUInt32(1offsetpacket);
                                
offset += 4;
                                
Network.Writer.WriteUInt32(nob.Meshoffsetpacket);
                                
offset += 4;
                            }
                            else
                            {
                                
offset += 8;
                            }
                            
Network.Writer.WriteString(nob.Nameoffsetpacket);
                            
offset += 20;
                            
Network.Writer.WriteUInt64(nob.Donationoffsetpacket);
                            
offset += 8;
                            
Network.Writer.WriteUInt32((uint)nob.Rankoffsetpacket);
                            
offset += 4;
                            
Network.Writer.WriteUInt32((uint)ioffsetpacket);
                            
offset += 4;
                        }
                        
client.Send(packet);
                        break;
                    }
            }
        }