Aura.Login.Database.Account.CreatePartner C# (CSharp) Метод

CreatePartner() публичный Метод

Creates new partner for this account. Returns true if successful, pet's ids are also set in that case.
public CreatePartner ( Aura.Login.Database.Character partner ) : bool
partner Aura.Login.Database.Character
Результат bool
		public bool CreatePartner(Character partner)
		{
			int setId = 0;
			if (partner.Race == 730201 || partner.Race == 730202 || partner.Race == 730204 || partner.Race == 730205)
				setId = 1000;
			else if (partner.Race == 730203)
				setId = 1001;
			else if (partner.Race == 730206)
				setId = 1002;
			else if (partner.Race == 730207)
				setId = 1004;

			// Create start items for card and hair/face
			var cardItems = AuraData.CharCardSetDb.Find(setId, partner.Race);
			if (cardItems == null)
			{
				Log.Error("Partner creation: Invalid item set ({0}) for race {1}.", setId, partner.Race);
				return false;
			}

			// TODO: Hash seems to be incorrect.
			var items = Item.CardItemsToItems(cardItems);
			Item.GenerateItemColors(ref items, (this.Name + partner.Race + partner.SkinColor + partner.Hair + partner.HairColor + 1 + partner.EyeType + partner.EyeColor + partner.MouthType + partner.Face));

			items.Add(new Item(partner.Face, Pocket.Face, partner.SkinColor, 0, 0));
			items.Add(new Item(partner.Hair, Pocket.Hair, partner.HairColor + 0x10000000u, 0, 0));

			if (!LoginServer.Instance.Database.CreatePartner(this.Name, partner, items))
			{
				Log.Error("Partner creation: Failed for unknown reasons.");
				return false;
			}

			this.Pets.Add(partner);

			return true;
		}