اسم العضو كلمة المرور حفظ البيانات؟ تسجيل عضوية



ايجى4يو || Egy4u



اعلانات ايجى4يو


المشاركات: 8 [+]
المخالفات: [+]
مجموع الاوسمة: [+]
Ąbdṳallah Môhsen غير متواجد حالياً
Ąbdṳallah Môhsen
( ..:: مراقب عام ::.. )
VIPDays + Online Points.
: 08-13-2017 فى تمام الساعة 11:59 AM| المشاركة رقم: 1| من قسم: تطوير سيرفرات كـــونـــكر تـــهيس


السلام عليكم,
نبدا بس قبل ما نبدا وحد الله الاول (لا اله الا الله) وصلي علي النبي (صلي الله عليه وسلم).
هنضيف ال OnlinePoints مع ال VIPDays.
أول حاجه الموضوعين مرتبطين ببعض انا كنت نزلت ال VIPDays كذا مره بس حاليا مش موجود.
هنضيف اول حاجه ال OnlinePoints
هتخش علي كلاس
Entity.cs / Player.cs
هنضيف
.

Html

public Time32 OnlinePointsStamp Time32.Now;
private 
uint _onlinepoints;
public 
uint OnlinePoints
{
get { return _onlinepoints; }
set _onlinepoints value; }

.
هنخش علي
كلا
.
World.cs / Thread.cs
في void
.

Html

CharactersCallback 
.
هنضيف
.

Html

#region OnlinePoints
if (Now client.Entity.OnlinePointsStamp.AddMinutes(10))
{
client.Entity.OnlinePoints += (uint)Kernel.Random.Next(1020);
client.Entity.OnlinePointsStamp Now;
client.Send(String.Format("Your OnlinePoints is {0}"Kernel.NumberToWords(client.Entity.OnlinePoints)));
}
#endregion 
.
تقدر تعدل برحتك طبعا هنا
كل 10 دقائق هتاخد ما بين 10 ل 20 اونلاين بوينت.
ودي الشفره
.

Html

 case "onlinep":
{
client.Entity.OnlinePoints uint.Parse(Data[1]);
break;

.
هنخش علي
EntityTable.cs
في
LoadEntity
.
هنضيف ال load

Html

client.Entity.OnlinePoints reader.ReadUInt32("OnlinePoints"); 
.
وفي
SaveEntity
هنضيف ال save
.

Html

 .Set("OnlinePoints"e.OnlinePoints
.
تمام لحد كدا
ال NPC باء.
.

Html

     #region Exchange~Online~Points
case 3222:
{
dialog.Avatar(15);
switch (
npcRequest.OptionID)
{
case 
0:
{
dialog.Text("Hello~there.~You~can~exchange~your~Online~Points.~How can i help you?.\n");
dialog.Option("Exchange~List."1);
dialog.Option("Check~Points."9);
dialog.Option("I'm standing by."255);
dialog.Send();
break;
}
case 
1:
{
dialog.Text("Hello~there.~You~can~exchange~your~Online~Points.~How can i help you?.\n");
dialog.Option("VIPDays."2);
dialog.Option("Bound-CP`s."10);
dialog.Option("Maybe~next~time."255);
dialog.Send();
break;
}
case 
2:
{
dialog.Text("Hello~there.~You~can~exchange~your~Online~Points.~How can i help you?.\n");
dialog.Option("VIPLevel~1~-~7Days."3);
dialog.Option("VIPLevel~2~-~7Days."4);
dialog.Option("VIPLevel~3~-~7Days."5);
dialog.Option("VIPLevel~4~-~7Days."6);
if (
client.VIPDays != null)
dialog.Option("Delete~My-~VIP."12);
dialog.Option("Maybe~next~time."255);
dialog.Send();
break;
}
case 
3:
case 
4:
case 
5:
case 
6:
{
if (
client.VIPDays.Level == 0)
{
byte viplevel = (byte)(npcRequest.OptionID 2);
uint onpos = (uint)(1440 viplevel);
if (
client.Entity.VIPLevel viplevel)
{
for (
byte v 15v++)
{
if (
== viplevel)
{
if (
client.Entity.OnlinePoints >= onpos)
{
client.Entity.OnlinePoints -= onpos;
client.VIPDays.Insert(DateTime.Now.AddDays(7), viplevelclient.Entity.VIPLevelclient);
}
else
{
dialog.Text("You don't have " Kernel.NumberToWords(onpos) + " OnlinePoints.\n");
dialog.Option("Alright."255);
dialog.Send();
}
}
}
}
else
{
dialog.Text(String.Format("Your VIPLevel is {0}, So you can't select this level.\n"client.Entity.VIPLevel));
dialog.Option("Alright."255);
dialog.Send();
}
}
else 
client.MessageBox("You already own VIP days, wait until these days expire, You can exchange at " client.VIPDays.EndOn ".");
break;
}
case 
9:
{
dialog.Text(string.Format("Hello~there.~You~have {0} OnlinePoints, Keep online?.\n"client.Entity.OnlinePoints));
dialog.Option("VIPDays."2);
dialog.Option("Bound-CP`s."10);
dialog.Option("Maybe~next~time."255);
dialog.Send();
break;
}
case 
10:
{
dialog.Text(string.Format("You can use the BCP`s to instead of donating gold from NobilityDonor In TC!\n You have {0} OnlinePoints, Every 1 OnlinePoints will Exchange for 500 BCP`s. How much you want to exchange\n"client.Entity.OnlinePoints));
dialog.Input("OnlinePoints"115);
dialog.Option("Maybe~next~time."255);
dialog.Send();
break;
}
case 
11:
{
uint input;
if (
uint.TryParse(npcRequest.Inputout input))
{
if (
input 0)
{
if (
client.Entity.OnlinePoints >= input)
{
client.Entity.OnlinePoints -= input;
client.Entity.BoundCps += (input 500);
client.Send("You have excnhage " Kernel.NumberToWords(input) + " OnlinePoints for " Kernel.NumberToWords(input 500) + " BCP`s.");
}
else 
client.MessageBox("You can't Exchange. You dont have " Kernel.NumberToWords(input) + " OnlinePoints.");
}
}
break;
}
case 
12:
{
client.Entity.VIPLevel client.VIPDays.OLDLevel;
client.VIPDays.Level 0;
client.VIPDays.OLDLevel 0;
client.VIPDays.Delete(client);
client.Send("Your VIP, is deleted, Now your VIP level is " client.Entity.VIPLevel "");
break;
}
}
break;
}
#endregion 
.
الان بي سي بيضم
VIPDays و BoundCPS
انا عامل الاتنين دول بس لان هما دول الي محتاجهم في سيرفري.
تقدر تعدل عليهم وتضيف عليهم برحتك.
كدا احنا خلصنا جزء ال OnlinePoints وخدتا جزء ال Npc من ال VIPDays
نخش علي اضافه ال VIPDays
اول حاجه هنعمل كلاس ونسميه
.

Html

VIPDays.cs 
هتقولي فين هقولك برحتك في اي مكان انت عاوزو في Database مثلا
هنمسح كل حاجه ف الكلاس بعد ما اتعمل ونضيف فيه الاكواد دي
.

Html

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ConquerOnline.Database;
namespace 
ConquerOnline
{
/* 
* All Rights Reserved © Ąbdṳallah Môhsen
*/
public class VIPDays
{
public 
DateTime StartOnEndOn;
public 
byte LevelOLDLevel;
public 
Time32 CheckStamp Time32.Now;
public 
void Insert(DateTime _EndOnbyte _Levelbyte _OLDLevelClient.GameClient client)
{
this.StartOn DateTime.Now;
this.EndOn _EndOn;
this.Level _Level;
this.OLDLevel _OLDLevel;
client.Entity.VIPLevel this.Level;
#region Insert
using (var cmd = new MySqlCommand(MySqlCommandType.SELECT).Select("vipdays").Where("UID"client.Entity.UID))
using (var reader = new MySqlReader(cmd))
{
if (!
reader.Read())
using (var cmds = new MySqlCommand(MySqlCommandType.INSERT))
cmds.Insert("vipdays").Insert("UID"client.Entity.UID).Execute();
}
#endregion
this.Save(client);
client.Send("Your VIP, Now level " this.Level " will end in " this.EndOn "");
Network.GamePackets.Message.TalkMessage(String.Format("Congratulations, {0} Have received VIPLevel {1} for {2} days."client.Entity.Name_Level, (_EndOn DateTime.Now).TotalDays));
}
public 
void Check(Client.GameClient client)
{
if (
DateTime.Now >= this.EndOn)
{
client.Entity.VIPLevel this.OLDLevel;
this.Level 0;
this.OLDLevel 0;
this.Delete(client);
client.Send("Your VIP, is ended, Now your VIP level is " client.Entity.VIPLevel "");
}
this.CheckStamp Time32.Now;
}
public 
void Load(Client.GameClient c)
{
using (var cmd = new MySqlCommand(MySqlCommandType.SELECT).Select("vipdays").Where("UID"c.Entity.UID))
using (var reader = new MySqlReader(cmd))
{
if (
reader.Read())
{
this.Level reader.ReadByte("Level");
this.OLDLevel reader.ReadByte("OLDLevel");
this.StartOn Kernel.FromDateTimeInt(reader.ReadUInt64("StartOn"));
this.EndOn Kernel.FromDateTimeInt(reader.ReadUInt64("EndOn"));
}
}
}
public 
void Save(Client.GameClient client)
{
Database.MySqlCommand cmd = new Database.MySqlCommand(Database.MySqlCommandType.UPDATE);
cmd.Update("vipdays").Set("Level"this.Level).Set("OLDLevel"this.OLDLevel).Set("StartOn"Kernel.ToDateTimeInt(this.StartOn)).Set("EndOn"Kernel.ToDateTimeInt(this.EndOn))
.
Where("UID"client.Entity.UID).Execute();
}
public 
void Delete(Client.GameClient client)
{
MySqlCommand cmd = new MySqlCommand(MySqlCommandType.DELETE);
cmd.Delete("vipdays","UID"client.Entity.UID).Execute();
}
}

.
هنروح علي
GameState / GameClient
وهنضيف
.

Html

 public VIPDays VIPDays = new VIPDays(); 
في EntityTable.cs
فوق الكود دا
.

Html

client.Entity.FullyLoaded true
هنضيف اللود
client.VIPDays.Load(client);
في LoginMessage
في الاخر خالص هنضيف
.

Html

  if (client.VIPDays.Level 0)
client.Send("Your VIPDays will ended at " client.VIPDays.EndOn ""); 
وفي World.cs
في
.

Html

CharactersCallback 
هنضيف
.

Html

  #region VIPDays
if (client.VIPDays.Level && Now >= client.VIPDays.CheckStamp.AddMinutes(5))
client.VIPDays.Check(client);
#endregion 
.
زي ما عملنا في OnlinePoints بالظبط حدو تحتو علطول
افتح النفي كات
ودوس F6 علشان تفتح ال Console
وحط دول في القونصل ودوس Enter
.

Html

SET FOREIGN_KEY_CHECKS=0;
DROP TABLE IF EXISTS `vipdays`;
CREATE TABLE `vipdays` (
`
UIDbigint(20NOT NULL default '0',
`
Levelint(5) default '0',
`
OLDLevelint(5) default '0',
`
StartOnbigint(16) default '0',
`
EndOnbigint(16) default '0',
PRIMARY KEY  (`UID`)
ENGINE=MyISAM DEFAULT CHARSET=utf8
.
دا جزء القاعده.
الان بي سي ضيفوه باء انتو في اي مكان برحتكو.
كام صوره باء




اي ايرور هيظهر لحد او انا نسيت حاجه بلغوني في الردود.
في امان الله

المشاركات: 61 [+]
المخالفات: [+]
مجموع الاوسمة: [+]
Pepo Totti غير متواجد حالياً
Pepo Totti
( ( عضو جديد ) )
رد: VIPDays + Online Points.
موعد كتابة الموضوع: 08-13-2017 فى تمام الساعة 12:38 PM| رقم المشاركة: 2| من قسم: تطوير سيرفرات كـــونـــكر تـــهيس

الله ينور يا عبدلله

المشاركات: 51 [+]
المخالفات: [+]
مجموع الاوسمة: [+]
Mayer Amir متواجد حالياً
Mayer Amir
( ..:: مؤسس المنتدى ::..
..:: Administrator::.. )
رد: VIPDays + Online Points.
موعد كتابة الموضوع: 08-13-2017 فى تمام الساعة 01:06 PM| رقم المشاركة: 3| من قسم: تطوير سيرفرات كـــونـــكر تـــهيس

الله ينور
بالتوفيق

المشاركات: 1 [+]
المخالفات: [+]
مجموع الاوسمة: [+]
Ahmed Sokr غير متواجد حالياً
Ahmed Sokr
( ..:: مراقب عام ::.. )
رد: VIPDays + Online Points.
موعد كتابة الموضوع: 08-13-2017 فى تمام الساعة 01:33 PM| رقم المشاركة: 4| من قسم: تطوير سيرفرات كـــونـــكر تـــهيس

عاش يابيدو استمر

المشاركات: 31 [+]
المخالفات: [+]
مجموع الاوسمة: [+]
Spider متواجد حالياً
Spider
( ( عضو جديد ) )
رد: VIPDays + Online Points.
موعد كتابة الموضوع: 08-13-2017 فى تمام الساعة 06:07 PM| رقم المشاركة: 5| من قسم: تطوير سيرفرات كـــونـــكر تـــهيس

ولله يانجم الواحد معارف يقولك اية تسلم بجد لان كنت محتاجهم .

المشاركات: 21 [+]
المخالفات: [+]
مجموع الاوسمة: [+]
Mr.xXx غير متواجد حالياً
Mr.xXx
( ( عضو جديد ) )
رد: VIPDays + Online Points.
موعد كتابة الموضوع: 08-14-2017 فى تمام الساعة 01:37 AM| رقم المشاركة: 6| من قسم: تطوير سيرفرات كـــونـــكر تـــهيس

تشكر اولا على المجهود
ثاانيا انا عندي ايرور هنا بستخدم سورس اسلام

);
Network.GamePackets.Message.TalkMessage(String.For mat("Congratulations, {0} Have received VIPLevel {1} for {2} days.", client.Entity.Name, _Level, (_EndOn - DateTime.Now).TotalDays));


في كلمة

المشاركات: 8 [+]
المخالفات: [+]
مجموع الاوسمة: [+]
Ąbdṳallah Môhsen غير متواجد حالياً
Ąbdṳallah Môhsen
( ..:: مراقب عام ::.. )
رد: VIPDays + Online Points.
موعد كتابة الموضوع: 08-14-2017 فى تمام الساعة 10:29 AM| رقم المشاركة: 7| من قسم: تطوير سيرفرات كـــونـــكر تـــهيس

اقتباس:
المشاركة الأصلية كتبت بواسطة Mr.xXx مشاهدة المشاركة
تشكر اولا على المجهود
ثاانيا انا عندي ايرور هنا بستخدم سورس اسلام
);
Network.GamePackets.Message.TalkMessage(String.For mat("Congratulations, {0} Have received VIPLevel {1} for {2} days.", client.Entity.Name, _Level, (_EndOn - DateTime.Now).TotalDays));
في كلمة
بدلها ب دي

Html

 Kernel.SendWorldMessage(new Message(String.Format("Congratulations, {0} Have received VIPLevel {1} for {2} days."client.Entity.Name_Level, (_EndOn DateTime.Now).TotalDays), Color.YellowMessage.World), Server.GamePool); 


 
المواضيع المتشابهه
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
Exclusive ) ADD Title And Wing Patch 6568 ) مايكل جا كسون تطوير سيرفرات كـــونـــكر تـــهيس 13 07-23-2017 12:36 AM
Exclusive ) ADD Title Poker's Patch 6551 ) مايكل جا كسون تطوير سيرفرات كـــونـــكر تـــهيس 0 07-20-2017 06:25 PM
Exclusive ) ADD Title And Mount Last Patch 6522 ) مايكل جا كسون تطوير سيرفرات كـــونـــكر تـــهيس 3 05-24-2017 01:42 AM
أضافة البرفكشن كامل 100% مايكل جا كسون تطوير سيرفرات كـــونـــكر تـــهيس 8 05-24-2017 01:31 AM
اطلب اي اني بى سى وى هدهلوك Mr.khaled للمساعده Mr.khaled سلة المحذوفات 13 01-24-2017 07:26 PM