private void CreateObject(int index, OBJECT_UPDATE_TYPE updatetype)
        {
            #if DEBUG
            SetBookmarkPosition();

            GotoBookmarkPosition();
            #endif
            var guid = ReadPackedWoWGuid(index, "guid");

            Core.RemoveObjectByWoWGuid(guid);

            var typeid = ReadEnum<TypeID>(index, "TypeID");
            var obj = Core.CreateOrGetObject(guid, typeid);

            UpdateMovement(index, obj, typeid);

            if (UpdateFieldValues(index, obj))
            {
                Core.AddOrUpdateObject(obj);

                obj.ObjectUpdate(updatetype);
            }
            else
            {
                throw new ApplicationException("UpdateFields failed. this is probebly corrupted packet.");
            }
        }
예제 #2
0
 public override void UpdateData(OBJECT_UPDATE_TYPE updatetype)
 {
     if (IsValidForUnitDataCapture())
     {
         UpdateCreatureEquipTemplate();
         UpdateCreatureTemplateAddon();
     }
 }
예제 #3
0
 public virtual void ObjectUpdate(OBJECT_UPDATE_TYPE updatetype)
 {
 }
예제 #4
0
        public virtual void UpdateData(OBJECT_UPDATE_TYPE updatetype)
        {

        }