Quo-Vadis? Mesaj tarihi: Şubat 6, 2010 Paylaş Mesaj tarihi: Şubat 6, 2010 şoyle bir şey yaptım en son , tabi threat bar la ve marking barın altında recount var da onu kapattım o sırada. ben framelerin standart yerlerini severim. bunu nasıl daha iyi hale getirme konusunda fikri olan varsa , onları da beklerim. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Arnis Mesaj tarihi: Şubat 7, 2010 Paylaş Mesaj tarihi: Şubat 7, 2010 pekaziz said: Laptop yüzünden 1280x800'e bağımlı olmasam kullanacağım ilk arayüz bu olurdu :PFujiUI Priestlere özel addon ne var hiç bilmiyorum ama onları kendin ekleyeceksen şurada internet üzerinde bulabileceğin en iyi derleme arayüzler güncelleniyor devamlı. http://www.vranx.com/compilations.htm Pekaziz buradaki addonların ne oldugu hakkında bilgin var mı? Daha cok party addonunu merak ettim. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
pekaziz Mesaj tarihi: Şubat 7, 2010 Paylaş Mesaj tarihi: Şubat 7, 2010 Buradan indirebilirsin arayüzü. http://www.wowinterface.com/downloads/info14352-FujiUI.html Party frameleri için Pitbull4 kullanılmış sanırım. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Arnis Mesaj tarihi: Şubat 7, 2010 Paylaş Mesaj tarihi: Şubat 7, 2010 Cok sagol hemen bakıyorum. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
pekaziz Mesaj tarihi: Şubat 7, 2010 Paylaş Mesaj tarihi: Şubat 7, 2010 Ufak tefek değişiklikler var. Hotları takip edebilmek için sFilter ekledim vs. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Yeager Mesaj tarihi: Şubat 7, 2010 Paylaş Mesaj tarihi: Şubat 7, 2010 addon ayarlarımın saklandığı başka dosya var mı arkadaşlar? WTF ve Interface dosyalarını aktardım lakin hala daha diğer bilgisayarımdaki addon ayarları en son aktardığıma gelmedi? Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
pekaziz Mesaj tarihi: Şubat 7, 2010 Paylaş Mesaj tarihi: Şubat 7, 2010 Addon ayarları derken? Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Yeager Mesaj tarihi: Şubat 7, 2010 Paylaş Mesaj tarihi: Şubat 7, 2010 ya benim power aurada yaptığım karakter ayarlamaları masaüstünden benim dizüstüme aktaracağım dediğim dosyaları aktardım ama yinede power auradaki ayarlamalarım gelmemiş :( Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
pekaziz Mesaj tarihi: Şubat 7, 2010 Paylaş Mesaj tarihi: Şubat 7, 2010 Power aura hiç kullanmadığımdan detaylı bilgim yok ama hiç bir addon bilgilerini internet üzerinde saklamıyor, tamamı wtf ve interface klasörlerinde oluyor. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Baalzebub Mesaj tarihi: Şubat 8, 2010 Paylaş Mesaj tarihi: Şubat 8, 2010 pekaziz said: Ufak tefek değişiklikler var. Hotları takip edebilmek için sFilter ekledim vs. Neav'ın raid frame'i mi o, yoksa grid mi? Neav'ın ise HoT'ları nasıl ayarladığınızı soracağım haberiniz olsun :p. Hoş ouf_druidhots kullanarak hotları görmeyi becerdim ama pek istediğim şekilde değil. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
pekaziz Mesaj tarihi: Şubat 8, 2010 Paylaş Mesaj tarihi: Şubat 8, 2010 Neav evet. :) Zaten shaman için ayarlar yapılmış, ben sadece druid hotlarını ekledim oraya. oUF_NeavRaid.lua --[[ Supported Units: Party Raid Supported Plugins: oUF_ReadyCheck oUF_Smooth oUF_AuaraWatch Features: Aggro highlighting DebuffButtons Leader-, MasterLooter- and Raidicons --]] local function GetSpellName(spellID) local name = GetSpellInfo(spellID) return name end local function DeficitValue(self) if (self >= 1000) then return format('-%.1f', self/1000) else return self end end local dispellPriority = { ['Magic'] = 0, ['Poison'] = 2, ['Disease'] = 0, ['Curse'] = 1, ['None'] = 0, } local dispellFilter = { ['PRIEST'] = { ['Magic'] = true, ['Disease'] = true, }, ['SHAMAN'] = { ['Poison'] = true, ['Disease'] = true, ['Curse'] = true, }, ['PALADIN'] = { ['Poison'] = true, ['Magic'] = true, ['Disease'] = true, }, ['MAGE'] = { ['Curse'] = true, }, ['DRUID'] = { ['Curse'] = true, ['Poison'] = true, }, ['DEATHKNIGHT'] = {}, ['HUNTER'] = {}, ['ROGUE'] = {}, ['WARLOCK'] = {}, ['WARRIOR'] = {}, } local playerClass = select(2, UnitClass('player')) local dispellClass = {} if (dispellFilter[playerClass]) then for k, v in pairs(dispellFilter[playerClass]) do dispellClass[k] = v end dispellFilter = nil end local debuffList = setmetatable({ [GetSpellName(6215)] = 3, -- fear [GetSpellName(69065)] = 10, -- impaled [GetSpellName(67479)] = 10, -- impale [GetSpellName(66869)] = 8, -- burning bile [GetSpellName(67049)] = 9, -- incinerate flesh [GetSpellName(66823)] = 8, -- paralytic toxin [GetSpellName(66334)] = 8, -- mistress kiss [GetSpellName(66406)] = 7, -- snoboiled [GetSpellName(61112)] = 9, -- death and decay [GetSpellName(72491)] = 8, -- necrotic strike [GetSpellName(72385)] = 7, -- boiling blood [GetSpellName(72380)] = 8, -- blood nova [GetSpellName(72408)] = 9, -- rune of blood [GetSpellName(72293)] = 10, -- fallen champ [GetSpellName(72552)] = 10, -- gastric bloat [GetSpellName(69674)] = 7, -- mutated infection [GetSpellName(70672)] = 10, -- mutated infection [GetSpellName(70447)] = 9, -- mutated infection [GetSpellName(71265)] = 10, -- mutated infection [GetSpellName(71340)] = 9, -- mutated infection [GetSpellName(70106)] = 6, -- chill to the throne [GetSpellName(69766)] = 7, -- instability [GetSpellName(70126)] = 8, -- frost beacon [GetSpellName(70157)] = 9, -- ice bomb [GetSpellName(69766)] = 10, -- unchained magic },{ __index = function() return 0 end}) local indicatorList = { 48443, --regrowth 48440, --reju 48450, --lifebloom 53251, -- wild growth } local function CreateIndicators(self, unit) self.AuraWatch = CreateFrame('Frame', nil, self) self.AuraWatch.presentAlpha = 1 self.AuraWatch.missingAlpha = 0 self.AuraWatch.hideCooldown = false self.AuraWatch.icons = {} for i, id in pairs(indicatorList) do icon = CreateFrame('Frame', nil, self.AuraWatch) icon.spellID = id icon.anyUnit = false icon:SetWidth(oUF_Neav.units.raid.indicatorSize) icon:SetHeight(oUF_Neav.units.raid.indicatorSize) icon.icon = icon:CreateTexture(nil, 'OVERLAY') icon.icon:SetAllPoints(icon) icon.icon:SetTexture('InterfaceAddOnsoUF_NeavmediaborderIndicator') if (i == 1) then icon:SetPoint('TOPLEFT', self, 1, -1) icon.icon:SetVertexColor(0, 1, 0) elseif (i == 2) then icon:SetPoint('BOTTOMLEFT', self, 1, 1) icon.icon:SetVertexColor(1, 0, 1) local count = icon:CreateFontString(nil, 'OVERLAY') count:SetFontObject(NumberFontNormal) count:SetAlpha(0) icon.count = count elseif (i == 3) then icon:SetPoint('TOPRIGHT', self, -1, -1) icon.icon:SetVertexColor(0.196078, 0.803922, 0.196078) elseif (i == 4) then icon:SetPoint('BOTTOMRIGHT', self, -1, 1) icon.icon:SetVertexColor(0, 0.807843, 0.819608) end self.AuraWatch.icons[id] = icon end end -- -- Copyright (c) 2009, Chris Bannister (oUF_Grid - zariel) -- All rights reserved. -- local function UpdateAura(self, event, unit) if (self.unit ~= unit) then return end local cur, tex, dis, co local debuffs = debuffList for i = 1, 40 do local name, _, buffTexture, count, dtype = UnitAura(unit, i, 'HARMFUL') if (not name) then break end if (not cur or (debuffs[name] >= debuffs[cur])) then if (debuffs[name] > 0 and debuffs[name] > debuffs[cur or 1]) then cur = name tex = buffTexture dis = dtype or 'none' co = count elseif (dtype and dtype ~= 'none') then if (not dis or (dispellPriority[dtype] > dispellPriority[dis])) then tex = buffTexture dis = dtype co = count end end end end if (dis) then if (dispellClass[dis] or cur) then self.Icon:Show() self.Icon.Icon:SetTexture(tex) local col = DebuffTypeColor[dis] self.Icon.Border:SetVertexColor(col.r, col.g, col.b) self.Icon.Count:SetText(co > 0 and co or '') self.Health.value:Hide() self.Name:Hide() self.Dispell = true elseif (self.Dispell) then self.Icon:Hide() self.Health.value:Show() self.Name:Show() self.Dispell = false end else self.Icon:Hide() self.Health.value:Show() self.Name:Show() end end local function UpdateThreat(self, event, unit) if (self.unit ~= unit) then return end if (self.Aggro) then local threat = UnitThreatSituation(self.unit) if (threat == 3) then self.Aggro:SetText('|cFFFF0000AGGRO') self.Health:SetBackdropColor(0.9, 0, 0) --ColorBorder(self.Health, 1, 0, 0) --[[ for i = 1, 8 do self.Health.Border[i]:SetTexture('InterfaceAddOnsnBuffmediatextureDebuff') end --]] else self.Aggro:SetText('') self.Health:SetBackdropColor(0, 0, 0) --ColorBorder(self.Health, 1, 1, 1) --[[ for i = 1, 8 do self.Health.Border[i]:SetTexture('InterfaceAddOns!BeautycasemediatextureNormal') end --]] end end end local function UpdateHealth(self, event, unit, bar, min, max) if (self.unit ~= unit) then return end self.Name:SetText(UnitName(unit):sub(1, 4)) if (UnitIsDead(unit) or UnitIsGhost(unit) or not UnitIsConnected(unit)) then bar.value:SetText((UnitIsDead(unit) and 'Dead') or (UnitIsGhost(unit) and 'Ghost') or (not UnitIsConnected(unit) and 'Offline')) bar.value:SetTextColor(0.5, 0.5, 0.5) self.Health:SetStatusBarColor(0.5, 0.5, 0.5) else if ((min/max * 100) < 90) then bar.value:SetText(DeficitValue(max-min)) bar.value:SetTextColor(1, 0, 0) else bar.value:SetText('') bar.value:SetTextColor(1, 1, 1) end local color = RAID_CLASS_COLORS[select(2, UnitClass(unit))] if (color) then bar:SetStatusBarColor(color.r, color.g, color.b) bar.Background:SetVertexColor(color.r*0.25, color.g*0.25, color.b*0.25) end end end local function CreateRaidLayout(self, unit) self:SetScript('OnEnter', UnitFrame_OnEnter) self:SetScript('OnLeave', UnitFrame_OnLeave) self:SetAttribute('initial-height', oUF_Neav.units.raid.height) self:SetAttribute('initial-width',oUF_Neav.units.raid.width) self.Health = CreateFrame('StatusBar', nil, self) self.Health:SetStatusBarTexture(oUF_Neav.media.statusbar, 'ARTWORK') self.Health:SetFrameStrata('LOW') self.Health:SetAllPoints(self) self.Health:SetFrameLevel(1) self.Health:SetOrientation('VERTICAL') self.Health:SetBackdrop{ bgFile = 'InterfaceButtonsWHITE8x8', tile = true, tileSize = 16, insets = { left = -1, right = -1, top = -1, bottom = -1 }, } self.Health:SetBackdropColor(0, 0, 0) self.PostUpdateHealth = UpdateHealth self.Health.colorClass = true self.Health.Smooth = true self.Health.Background = self.Health:CreateTexture(nil, 'BORDER') self.Health.Background:SetAllPoints(self.Health) self.Health.Background:SetTexture(oUF_Neav.media.statusbar) self.Health.value = self.Health:CreateFontString(nil, 'OVERLAY') self.Health.value:SetPoint('BOTTOM', 0, 5) self.Health.value:SetFont(oUF_Neav.media.font, 13) self.Health.value:SetShadowOffset(1, -1) self.Name = self.Health:CreateFontString(nil, 'OVERLAY') self.Name:SetPoint('TOP', 0, -6) self.Name:SetFont(oUF_Neav.media.font, 12) self.Name:SetShadowOffset(1, -1) self.Name:SetTextColor(1, 1, 1) self.Aggro = self.Health:CreateFontString(nil, 'OVERLAY') self.Aggro:SetPoint('CENTER', self, 'TOP') self.Aggro:SetFont(oUF_Neav.media.font, 11, 'OUTLINE') self.Aggro:SetShadowColor(0, 0, 0, 0) self.Aggro:SetTextColor(1, 1, 1) self.HealCommBar = CreateFrame('StatusBar', nil, self.Health) self.HealCommBar:SetHeight(0) self.HealCommBar:SetWidth(0) self.HealCommBar:SetStatusBarTexture(self.Health:GetStatusBarTexture():GetTexture()) self.HealCommBar:SetStatusBarColor(0, 1, 0, 0.25) self.HealCommBar:SetPoint('LEFT', self.Health, 'LEFT') -- optional flag to show overhealing self.allowHealCommOverflow = false self.HealCommOthersOnly = true table.insert(self.__elements, UpdateThreat) self:RegisterEvent('PLAYER_TARGET_CHANGED', UpdateThreat) self:RegisterEvent('UNIT_THREAT_LIST_UPDATE', UpdateThreat) self:RegisterEvent('UNIT_THREAT_SITUATION_UPDATE', UpdateThreat) -- masterlooter icons self.MasterLooter = self.Health:CreateTexture('$parentMasterLooterIcon', 'OVERLAY', self) self.MasterLooter:SetHeight(11) self.MasterLooter:SetWidth(11) self.MasterLooter:SetPoint('RIGHT', self.Health, 'TOPRIGHT', -1, 1) -- leader icons self.Leader = self.Health:CreateTexture('$parentLeaderIcon', 'OVERLAY', self) self.Leader:SetHeight(12) self.Leader:SetWidth(12) self.Leader:SetPoint('LEFT', self.Health, 'TOPLEFT', 1, 0) -- raid icons self.RaidIcon = self.Health:CreateTexture(nil, 'OVERLAY') self.RaidIcon:SetHeight(18) self.RaidIcon:SetWidth(18) self.RaidIcon:SetPoint('CENTER', self, 'TOP') self.RaidIcon:SetTexture('InterfaceTargetingFrameUI-RaidTargetingIcons') -- readycheck icons self.ReadyCheck = self.Health:CreateTexture(nil, 'OVERLAY') self.ReadyCheck:SetPoint('TOPRIGHT', self.Health, -7, -7) self.ReadyCheck:SetPoint('BOTTOMLEFT', self.Health, 7, 7) self.ReadyCheck.delayTime = 4 self.ReadyCheck.fadeTime = 1 --[[ local size = 1.5 CreateBorder(self.Health, 10, 1, 1, 1, size, size, size, size, size, size, size, size) for i = 1, 8 do self.Health.Border[i]:SetDrawLayer('ARTWORK') end --]] -- debuff icons self.Icon = CreateFrame('Frame') self.Icon:SetParent(self) self.Icon:SetFrameStrata('MEDIUM') self.Icon.Icon = self.Icon:CreateTexture(nil, 'ARTWORK', self.Icon) self.Icon.Icon:SetPoint('CENTER', self.Health) self.Icon.Icon:SetHeight(oUF_Neav.units.raid.iconSize) self.Icon.Icon:SetWidth(oUF_Neav.units.raid.iconSize) self.Icon.Icon:SetTexCoord(0.07, 0.93, 0.07, 0.93) self.Icon.Count = self.Icon:CreateFontString(nil, 'OVERLAY', self.Icon) self.Icon.Count:SetPoint('BOTTOMRIGHT', self.Icon.Icon, 1, 0) self.Icon.Count:SetFont(oUF_Neav.media.font, 14, 'OUTLINE') self.Icon.Count:SetShadowColor(0, 0, 0, 0) self.Icon.Count:SetTextColor(1, 1, 1) self.Icon.Border = self.Icon:CreateTexture(nil, 'BORDER', self.Icon) self.Icon.Border:SetPoint('CENTER', self.Health) self.Icon.Border:SetHeight(oUF_Neav.units.raid.iconSize + 7) self.Icon.Border:SetWidth(oUF_Neav.units.raid.iconSize + 7) self.Icon.Border:SetTexture('InterfaceAddonsoUF_NeavmediaborderIcon') self.Icon.Border:SetVertexColor(1, 1, 1) table.insert(self.__elements, UpdateAura) self:RegisterEvent('UNIT_AURA', UpdateAura) self:RegisterEvent('UNIT_DEAD', UpdateAura) if (select(2, UnitClass('player')) == 'DRUID') then CreateIndicators(self, unit) end self.Range = true self.inRangeAlpha = 1 self.outsideRangeAlpha = 0.35 self.SpellRange = true return self end oUF:RegisterStyle('oUF_Neav_Raid', CreateRaidLayout) oUF:SetActiveStyle('oUF_Neav_Raid') local raid = {} for i = 1, oUF_Neav.units.raid.numGroups do table.insert(raid, oUF:Spawn('header', 'oUF_Neav_Raid'..i)) if (i == 1) then raid[i]:SetPoint(unpack(oUF_Neav.units.raid.position)) else raid[i]:SetPoint('TOPLEFT', raid[i-1], 'BOTTOMLEFT', 0, -7) -- was TOPLEFT, TOPRIGHT, 7, 0 end raid[i]:SetScale(oUF_Neav.units.scaleRaid) raid[i]:SetManyAttributes( 'showParty', true, 'showPlayer', true, 'showSolo', false, 'showRaid', true, 'columnSpacing', 7, 'unitsPerColumn', 1, 'maxColumns', 5, 'columnAnchorPoint', 'LEFT', -- was TOP 'groupFilter', i ) raid[i]:Show() end Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Baalzebub Mesaj tarihi: Şubat 8, 2010 Paylaş Mesaj tarihi: Şubat 8, 2010 hmm, kodları direk kopyaladığımda raid frameleri kaybetti. druid hotlarının olduğu kısmı aldım, raid frameleri geri geldi ancak hotları göstermedi. böyle ilginçlikler de hep beni buluyor :P Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
pekaziz Mesaj tarihi: Şubat 8, 2010 Paylaş Mesaj tarihi: Şubat 8, 2010 Hotların bulunduğu yer dışında bir de altlara doğru "class = DRUID" diye bir satır olacak. Muhtemelen sende orijinal kodda bulunana Shaman yazıyor. :) Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
pekaziz Mesaj tarihi: Şubat 8, 2010 Paylaş Mesaj tarihi: Şubat 8, 2010 Tam olarak bu kısım. if (select(2, UnitClass('player')) == 'DRUID') then CreateIndicators(self, unit) end Koyu bölgenin druid olduğundan emin ol. :) Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Baalzebub Mesaj tarihi: Şubat 8, 2010 Paylaş Mesaj tarihi: Şubat 8, 2010 Eheh, öyleymiş gerçekten. orjinal Neav'ın raid dosyasının aynısına druid hot kodlarını ekledim, üstüne class'ı shaman yerine druid yapınca pek güzel çalıştı. teşekkürler :) edit: garip bir sorun var yalnız. tüm spellerim mouseover. frame üstüne cursor'u getirip hot bırakırsam, nokta çıkmıyor frame üstünde. ancak hot atacağım adamın frameine tıklayıp hot'u bırakırsam nokta çıkıyor. edit2: kendiliğinden çözüldü eheh. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
pekaziz Mesaj tarihi: Şubat 8, 2010 Paylaş Mesaj tarihi: Şubat 8, 2010 Rica ederim ;) Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Rotweiler Mesaj tarihi: Şubat 10, 2010 Paylaş Mesaj tarihi: Şubat 10, 2010 Yaw aadımda denk gelemedim bu topicde. Keywordlerim yanlış olabilir; Bu blizzardın default çıkan dmglerinin fontunu nasıl değiştiricez? Böyle köşeli güzel fontlar hoş gözükür. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
pekaziz Mesaj tarihi: Şubat 10, 2010 Paylaş Mesaj tarihi: Şubat 10, 2010 said: You can use a mod to change in game fonts. Or you can replace the original game fonts with the fonts you want to use. Create the following folder: Fonts Create four copies of the font file of your choice, place them in the above folder, and rename them to the following names: FRIZQT__.ttf (the main UI font) ARIALN.ttf (the normal number font) skurri.ttf (the 'huge' number font) MORPHEUS.ttf (Mail, Quest Log font) Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Spidee Mesaj tarihi: Şubat 10, 2010 Paylaş Mesaj tarihi: Şubat 10, 2010 pekaziz seni kaçırıp çeşit çeşit UIler yaptırtmak istiyorum. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
pekaziz Mesaj tarihi: Şubat 10, 2010 Paylaş Mesaj tarihi: Şubat 10, 2010 Ben de Neav ve tekkub'u kaçırmak istiyorum. :D Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Rotweiler Mesaj tarihi: Şubat 10, 2010 Paylaş Mesaj tarihi: Şubat 10, 2010 Dediğini yaptım ama işe yaramadı. Windowsdakileride mi değiştircem? Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
pekaziz Mesaj tarihi: Şubat 10, 2010 Paylaş Mesaj tarihi: Şubat 10, 2010 Kullanmak istediğin fontu internetten indirip yukarıda yazılan 4 farklı isim olarak kaydetmen ve wow içindeki Fonts klasörüne koyman lazım. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Rotweiler Mesaj tarihi: Şubat 10, 2010 Paylaş Mesaj tarihi: Şubat 10, 2010 Onu yaptımda olmadı işte. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Rotweiler Mesaj tarihi: Şubat 10, 2010 Paylaş Mesaj tarihi: Şubat 10, 2010 Tamam oldu sanırım. Font yazmışım Fonts yerine.Teşekürler usta. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Rotweiler Mesaj tarihi: Şubat 10, 2010 Paylaş Mesaj tarihi: Şubat 10, 2010 Portredekiler değişti ama target üzerindekiler(dmglar) değişmedi. Onu nasıl yapıcaz pekaziz fikrin varı? Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Öne çıkan mesajlar