using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using Duck.Managers; namespace Duck.Virtual.Users.Messenger { public class virtualMessenger { #region Declares /// /// The parent virtualUser object of this virtualMessenger. /// internal virtualUser User; /// /// The motto to display next to the virtual user in the virtual messenger. /// internal string Motto; #endregion #region Constructors public virtualMessenger(virtualUser User) { this.User = User; this.Motto = DB.runRead("SELECT motto_console FROM users WHERE id = '" + this.User.userID + "'"); int[] buddyIDs = this.getBuddyIDs(); //StringBuilder Setup = new StringBuilder(this.Motto + Convert.ToChar(2) + Encoding.encodeVL64(200) + Encoding.encodeVL64(600) + Encoding.encodeVL64(buddyIDs.Length)); //if(buddyIDs.Length //sendData("@LWoot\x02" + Encoding.encodeVL64(600) + Encoding.encodeVL64(200) + Encoding.encodeVL64(600) + "IJRutgert\x02ILmao!\x02IKamertje\x02" + DateTime.Now.ToString() + "\x025400160001720017300167501\x02"); foreach(int buddyID in buddyIDs) { //Setup.Append(Encoding.encodeVL64(buddyID)); //if (userManager.containsUser(buddyID)) //{ // virtualUser _User = userManager.getUser(buddyID); // Setup.Append(_User._Username + Convert.ToChar(2) + Encoding.encodeVL64(_User._Sex == 'm') + _User._consoleMotto + Convert.ToChar(2) + "I"); // if (_User._Credits > 0) // { // if (_User.Room.Type == "publicroom") // Setup.Append(User.Room._Name); // else // Setup.Append("Floor1a"); // } // else // Setup.Append("on Hotel View"); // Setup.Append(Convert.ToChar(2) + DateTime.Now.ToShortTimeString() + Convert.ToChar(2) + _User._Figure + Convert.ToChar(2)); //} //else //{ // string[] Data = DB.runReadRow("SELECT name,motto_console,figure,sex,lastonline FROM users WHERE id = '" + buddyID + "'"); // Setup.Append(Data[0] + Convert.ToChar(2) + Encoding.encodeVL64(Data[3] == "m") + //} } //User.sendData("@L" + Setup.ToString()); } /// /// Returns an integer array with the database of the messenger buddies of this user. /// public int[] getBuddyIDs() { try { ArrayList IDs = new ArrayList(); int[] friendIDs = DB.runReadColumn("SELECT friendid FROM messenger_friendships WHERE userid = '" + this.User.userID + "'", 0, null); for (int i = 0; i < friendIDs.Length; i++) IDs.Add(friendIDs[i]); friendIDs = DB.runReadColumn("SELECT userid FROM messenger_friendships WHERE friendid = '" + this.User.userID + "'", 0, null); for (int i = 0; i < friendIDs.Length; i++) IDs.Add(friendIDs[i]); return (int[])IDs.ToArray(typeof(int)); } catch {return new int[0];} } #endregion } }