منتدي اكواد

منتدي اكواد (https://code.vpscairo.com/index.php)
-   مشكلات السيرفيرات كونكر الشخصيه (https://code.vpscairo.com/forumdisplay.php?f=12)
-   -   خش بسرعه يا رايدر xddd (https://code.vpscairo.com/showthread.php?t=2694)

uncelsam 2019-10-27 11:08 PM

خش بسرعه يا رايدر xddd
 
اول حاجه بسم الله

عاوز اخلي الوحوش بتاعت المدن كلها لما تموت توقع فلوس و ايتمز زي مثلا الميتور

واستاني التاني راخر :)

Rider 2019-10-27 11:35 PM

رد: خش بسرعه يا رايدر xddd
 
بالنسبه للفلوس
فولس هيه نفس فكرة الايتم الي بتقع ف الارض و الاكونت بيلمها هنروح ل Monstertable.cs

جزء خاص ب Drop

و هنحط كود ده
كود PHP:

 #region DropMoney
            
byte morepercent 0;
            
byte lessrate 0;
            if (
Kernel.Rate(Constants.MoneyDropRate lessrate morepercent))
            {
                if (
killer.MapID == 1002) return;
                
uint amount = (uint)Kernel.Random.Next((int)MinMoneyDropAmount, (int)MaxMoneyDropAmount);
                
amount *= Constants.MoneyDropMultiple;
                if (
amount 100000)
                    
amount 500000;
                if (
amount == 0) return;
                
uint ItemID Network.PacketHandler.MoneyItemID(amount);
                
ushort X Owner.XOwner.Y;
                
Game.Map Map Kernel.Maps[Owner.MapID];
                if (
Map.SelectCoordonates(ref Xref Y))
                {
                    
Network.GamePackets.FloorItem floorItem = new Network.GamePackets.FloorItem(true);
                    
floorItem.ValueType Network.GamePackets.FloorItem.FloorValueType.Money;
                    
floorItem.Value amount;
                    
floorItem.ItemID ItemID;
                    
floorItem.MapID Owner.MapID;
                    
floorItem.MapObjType Game.MapObjectType.Item;
                    
floorItem.X;
                    
floorItem.Y;
                    
floorItem.Type Network.GamePackets.FloorItem.Drop;
                    
floorItem.OnFloor Time32.Now;
                    
floorItem.UID Network.GamePackets.FloorItem.FloorUID.Next;
                    while (
Map.Npcs.ContainsKey(floorItem.UID))
                        
floorItem.UID Network.GamePackets.FloorItem.FloorUID.Next;
                    
Map.AddFloorItem(floorItem);
                    
SendScreenSpawn(floorItem);
                }
            }
            
#endregion 

طب كود ده بيعمل ايه
كود PHP:

 #region DropMoney
            
byte morepercent 0;
            
byte lessrate 0;
            if (
Kernel.Rate(Constants.MoneyDropRate lessrate morepercent)) سطر ده نسبة حظ يعني لو ضربت وحش احتمال 5  ف ميه انه يوقع فلوس طب انا مش فاهم حاجه من كلام ده
خليه كده  
if (Kernel.Rate(30)) كده هيوقع فلوس بس بسهوله نسبيا و ممكن تغير رقم 30 برحتك لحد ما يظبط
            
{
                if (
killer.MapID == 1002) return; دي لو عايز مابه معينه متوقعش فلوس
                uint amount 
= (uint)Kernel.Random.Next((int)MinMoneyDropAmount, (int)MaxMoneyDropAmount); دي بقا مقدار فلوس
مش فاهم اقولك لو عملناها كده من 10 ل 20
 uint amount 
= (uint)Kernel.Random.Next(1020);
فلوس هتتقع 10 11 12 13 14 15 16 17 18 19 20 تمام كده الي بعده
                amount 
*= Constants.MoneyDropMultipleدي لو لاعب معاه توكت بتخلي دروب فلوس في 2 او 3 او اي رقم بياخد رقم الي فوق و يضربه في رقم بتاع Constants.MoneyDropMultiple
                
if (amount 100000هنا لو واد هيقعله اكتر من 100 الف
                    amount 
500000هيقعله 500 الف
                
if (amount == 0) return; طب لو هيقعله 0 متقعش خالص سبيكة فلوس
بس كده دول اهم حاجاه انته عايز تعرفهم
                uint ItemID 
Network.PacketHandler.MoneyItemID(amount);
                
ushort X Owner.XOwner.Y;
                
Game.Map Map Kernel.Maps[Owner.MapID];
                if (
Map.SelectCoordonates(ref Xref Y))
                {
                    
Network.GamePackets.FloorItem floorItem = new Network.GamePackets.FloorItem(true);
                    
floorItem.ValueType Network.GamePackets.FloorItem.FloorValueType.Money;
                    
floorItem.Value amount;
                    
floorItem.ItemID ItemID;
                    
floorItem.MapID Owner.MapID;
                    
floorItem.MapObjType Game.MapObjectType.Item;
                    
floorItem.X;
                    
floorItem.Y;
                    
floorItem.Type Network.GamePackets.FloorItem.Drop;
                    
floorItem.OnFloor Time32.Now;
                    
floorItem.UID Network.GamePackets.FloorItem.FloorUID.Next;
                    while (
Map.Npcs.ContainsKey(floorItem.UID))
                        
floorItem.UID Network.GamePackets.FloorItem.FloorUID.Next;
                    
Map.AddFloorItem(floorItem);
                    
SendScreenSpawn(floorItem);
                }
            }
            
#endregion 


uncelsam 2019-10-28 01:22 PM

رد: خش بسرعه يا رايدر xddd
 
الله ينور عااش اقسم بالله


الساعة الآن 10:22 PM

مرحبا بكم في منتدي اكواد لتطوير الالعاب