Ejemplo n.º 1
0
        protected void Add(ushort gid, uint quantity)
        {
            ItemRecord          template = ItemRecord.GetItem(gid);
            CharacterItemRecord item     = template.GetCharacterItem(Result.Id, quantity, false);

            this.Add(item);
        }
Ejemplo n.º 2
0
        private static void AttributeAction(WorldClient client, StartupActionRecord action, long characterId)
        {
            if (WorldServer.Instance.IsStatus(ServerStatusEnum.ONLINE))
            {
                try
                {
                    for (int i = 0; i < action.GIds.Count; i++)
                    {
                        ushort     gid      = action.GIds[i];
                        uint       quantity = action.Quantities[i];
                        ItemRecord item     = ItemRecord.GetItem(gid);

                        var character     = client.GetAccountCharacter(characterId);
                        var characterItem = item.GetCharacterItem(characterId, quantity, ITEM_GENERATION_PERFECT);

                        CharacterItemRecord.AddQuietCharacterItem(character, characterItem);
                    }

                    client.Send(new StartupActionFinishedMessage(true, false, action.Id));
                }
                catch (Exception ex)
                {
                    logger.Error("Unable to attribute action to " + client.Account.Username + " :" + ex);
                    client.Send(new StartupActionFinishedMessage(false, false, action.Id));
                }
                finally
                {
                    action.RemoveInstantElement(); // How, its dangerous!
                }
            }
            else
            {
                client.Disconnect();
            }
        }
        public CharacterItemRecord CreateCertificate(Character character)
        {
            ItemRecord template = ItemRecord.GetItem(Template.ItemGId);
            var        item     = template.GetCharacterItem(CharacterId, 1);

            item.Effects.AddRange(ItemGenerationProvider.GetCertificateEffects(Name, character.Name, (ushort)DisplayedMountLevel,
                                                                               (int)UId, (ushort)ModelId));
            return(item);
        }
Ejemplo n.º 4
0
        protected void Add(ItemRecord template, uint quantity)
        {
            CharacterItemRecord item = template.GetCharacterItem(Result.Id, quantity, false);

            this.Add(item);
        }