Code:
if (World.AllChars.Contains(MyChar.UID))
World.AllChars.Remove(MyChar.UID);
}
catch (Exception Exc) { General.WriteLine(Exc.ToString()); }
Code:
Console.WriteLine("Account: " + Account + " Character " + MyChar.Name + " has logged off.");
World.SaveAllChars();
Code:
GameServer = new ServerSocket();
GameServer.Port = 5816;
GameServer.MaxPacketSize = 4096;
GameServer.MaxThreads = 300;
GameServer.OnClientDisconnect += new SocketDisconnectEvent(GameDisconnectionHandler);
GameServer.OnReceivePacket += new SocketEvent(GamePacketHandler);
GameServer.Enabled = true;
Console.WriteLine("");
Code:
Thetimer = new System.Timers.Timer();
Thetimer.Interval = 300000;
Thetimer.Elapsed += new ElapsedEventHandler(Thetimer_Elapsed);
Thetimer.Start();
Code:
public static void DoStuff()
Code:
public static void Thetimer_Elapsed(object sender, ElapsedEventArgs e)
{
World.SendMsgToAll("Your account has been saved", "SYSTEM", 2005);
World.SaveAllChars();
}
Code:
public static System.Timers.Timer Thetimer;
Code:
public static void PlayersOffLottery()
Code:
public static void SaveAllChars()
{
try
{
foreach (DictionaryEntry DE in AllChars)
{
Character Charr = (Character)DE.Value;
DataBase.SaveChar(Charr);
}
Guilds.SaveAllGuilds();
}
catch (Exception Exc) { General.WriteLine(Convert.ToString(Exc)); }
}
open DataBase.cs search for
[/code]
add under
Code:
public static void SaveChar(Character Charr)
{
try
{
Charr.PackInventory();
Charr.PackEquips();
Charr.PackSkills();
Charr.PackProfs();
Charr.PackWarehouses();
Charr.PackEnemies();
Charr.PackFriends();
MySqlCommand Command = null;
Command = new MySqlCommand("UPDATE `Characters` SET `CharName` = '" + Charr.Name + "', `Level` = " + Charr.Level + ",`Exp` = " + Charr.Exp + ",`GuildDonation` = " + Charr.GuildDonation + ",`Strength` = " + Charr.Str + ",`Agility` = " + Charr.Agi + ",`Vitality` = " + Charr.Vit + ",`Spirit` = " + Charr.Spi + ",`Job` = " + Charr.Job + ",`Model` = " + Charr.Model + ",`Money` = " + Charr.Silvers + ",`CPs` = " + Charr.CPs + ",`CurrentHP` = " + Charr.CurHP + ",`CurrentMP` = " + Charr.CurMP + ",`StatPoints` = " + Charr.StatP + ",`MyGuild` = " + Charr.GuildID + ",`GuildPos` = " + Charr.GuildPosition + ",`LocationMap` = " + Charr.LocMap + ",`LocationX` = " + Charr.LocX + ",`LocationY` = " + Charr.LocY + ",`Hair` = " + Charr.Hair + ",`Equipment` = '" + Charr.PackedEquips + "',`Inventory` = '" + Charr.PackedInventory + "',`PKPoints` = " + Charr.PKPoints + ",`PrevMap` = " + Charr.PrevMap + ", `Skills` = '" + Charr.PackedSkills + "', `Profs` = '" + Charr.PackedProfs + "',`RBCount` = " + Charr.RBCount + ",`Avatar` = " + Charr.Avatar + ",`WHMoney` = " + Charr.WHSilvers + ",`VP` = " + Charr.VP + ",`Warehouses` = '" + Charr.PackedWHs + "',`Friends` = '" + Charr.PackedFriends + "',`dexp` = '" + Charr.dexp + "',`dexptime` = '" + Charr.dexptime + "',`Enemies` = '" + Charr.PackedEnemies + "' WHERE `Account` = '" + Charr.MyClient.Account + "'", DataBase.Connection);
Command.ExecuteNonQuery();
}
catch (Exception Exc) { General.WriteLine(Convert.ToString(Exc)); }
}
Work in all Sources..






;s
