就是我希望北京大兴保留村目录TUKUI的 玩家 和目...

[CWLK3.2.2] TukUI 10.28修改整合包(更新sFilter等)
[img]./mon_/200_4c.jpg[/img]未经RAID,DPS_Layout 和 Heal_Layout,未测,可以取消,反正偶是用GRID的。。。插件包经TuiUI 10.28包修改而来,所有字体指向全部指向为Fonts/ARIALN.TTF 字体文件,请确保此字体文件的存在。设置文件为Tukui\config\config.lua,简单汉化。[size=110%][i]----====下载地址====----[/i][/size][size=120%]插件自动更新程序下载地址:[url]http://wow.ljxx.net/update.exe[/url] (怕有毒的别用)[/size](若修改过config.lua请先行备份,另最近插件未定型,调整较大,为防止冲突,更新提示版本号后面带N的,需要你清空Addons目录内插件,若有需要,请先行保存。)[color=red]完整包下载[/color][url]/filebox/down/fc/d8bafc50ba[/url]解压密码: cadcamzy[size=110%][i]----====更新日志====----[/i][/size]鼠标提示中加入天赋和公会会阶显示。请使用自动更新器更新。[color=red]0910 更新[/color]1.国服GS党开始胜形...增加了GearScoreLite插件,可以看分了.2.偷的别人包里的sFilter,嗯,可以正常使用,显示一些触发的BUFF显示。(未放完整包,请用自动更新程序。)0908 更新1.增加了BUFF施法姓名的提示2.更新了DBM为0908最新的修改版3.更新Clearfont的为3.2.2版(感谢[i]亡心灵 (166912)[/i])4.放了个完整包包(DBM和cleanfont的修正未来得及放入完整包,使用插件自动更新器可获最新版本)。5.有提示进出副本有点卡顿的朋友,把任务插件QuestHerlper禁用掉即可,此插件在切换地图时会重新生成任务列表,配置不好的机器是有点卡的。0907 更新1.更新DBM为callmejames汉化的语音中文版,完全可用了。2.小插件合集里添加炼金巡逻日常,ACP插件管理等小插件,详见cadcamzy.toc3.删除了伤害统计和仇恨统计的插件Recount+Omen,更改为Skade4.添加了排卖行排序的小插件BaudAuction.5. 添加了GS评分插件6.Tukui_calssTime,暂无法修正,大家可用classtime r322这个版本(没放在插件,大家可以随意搜下)完整包就不先放了,大家可以用插件更新器下载.0902 更新1.增加了一些小功能的单体插件包,开关部份插件功能请打开Interface/Addons/Cadcamzy/Cadcamzy.toc,对不用的模块(XXX.lua)前加##来关闭。2.补增了采集助手的数据库。3.对Tukui的鼠标提示修了下,提升提示位置到右边聊天框上方,以免挡住了物品拾取的信息。鼠标跟随不受影响。4.对于小屏分辨率如之类的,可以修改Inerface/Addons/Tukui/Config/Config.lua,[code]TukuiDB[&general&] = {&&[&autoscale&] = true, -- 自动缩放UI,防止有人搞乱设置&&[&uiscale&] = 0.71, -- 设置UI缩放比例(0.64至1),前提是自动缩放关闭&&[&overridelowtohigh&] = true, -- 注意:实验设置!将低分辨率设置强制转成高分辨率设置.[/code]将overridelowtohigh改为true,强制缩放界面至屏幕分辨率。当然后果就是框框都变小了,但界面完整。5.修正了低分辨率头像的一个错误。6.默认快捷焦点设置是Shift+鼠标中键,上次写错了,这个可以在config.lua中修改。7.压缩包里增加了字体文件夹,将压缩包内的Fonts和Interface目录解压到World of Warcraft***目录下(和Wow.exe平级)。打开Fonts目录,运行双击复制字体.bat,即可完成字体复制。8.提供插件更新工具-已更换为ep'ui另一个版本了,这个版本的,不提供插件更新了。9.分配方式的问题,只提供了三种,自由,队伍绿色,队长蓝色,正在想如何添加其它分配界限,,,0831 修正两处BUG1.小地图中键寻求组队菜单无法打开2.单人时,仇恨插件报错[url]/filebox/down/fc/57a557f38fb04bcbf805c0ba[/url][color=blue]0831 独家修正QuestHelp任务插件[/color][url]/filebox/down/fc/fd4d3fbbbb0ffce7079fd2[/url]解压密码:cadcamzy08.29 更新增加了几个常用插件FriendsMenuXP,Omen,ora2,recount,MapsterRaidAlerter(汉化了几个国服的合剂翻译,但遺忘諸王祝福,北方精鍊仍未找到国服上的翻译,留待开服后测试了。)下载地址:[url]/filebox/down/fc/21ed25d876beafe748bb5b9[/url][color=blue]解密压缩: cadcamzy[/color][size=110%][i]----====插件列表====----[/i][/size]AtlasLoot 副本掉落BaudAuction 拍卖排序DBM BOSS技能预警Cadcamzy 小插件合集ClearFont 字体大小修正FriendsMenuXP 右键菜单增强GRID 团队框架GearScoreLite 简化版GS评分Decursive 一键解GatherMate 采集助手MSBT 战斗指示器Mapster 地图增强ORA2 团队助手RaidAlerter 团队警报QuestHelper 任务助手Skada 伤害,治疗,仇恨,死亡综合统计Tukui 核心Tukui_DPS_Layout 团(小)队框架,可取消用GRIDTukui_Heal_layout 团(小)队框架,可取消用GRID[size=110%][i]----====使用说明====----[/i][/size][color=red]简单使用提示:[/color]1.移动光环(姿态,变形)条,/MSS,解锁后可拖动,拖好后再打/MSS锁定。2.系统菜单项,法术书,天赋,寻求组队,在小地图中键。界面,视频,返回人物等请按ESC。3.设置焦点Shift+中键4.底部动作和右边动作条的总动作条数最多为3,如果你底部动作条为2条,右边最多只能有1条。5.分辨率小于(1680)的,请打开Interface/Addons/Tukui/config/config.lua,修改第三行为 [b][&overridelowtohigh&] = true[/b](即把false改为true).6.经验条(声望条)请移鼠标至人物血量显示上。7.不要和其它的整合插件同时使用,如大脚,精灵等。
8.插件内存占用较大的插件是AtlasLoot,GatherMate,QuestHelper,不需要的话,请关闭。
9.压缩包里增加了字体文件夹,将压缩包内的Fonts和Interface目录解压到World of Warcraft***目录下(和Wow.exe平级)。打开Fonts目录,运行双击复制字体.bat,即可完成字体复制。
10.更换包包你要右键点打开包之后右上角的X11.要找钥匙的话输入 /script ToggleKeyRing()
[size=110%][i]----====常用命令====----[/i][/size](感谢ljtudbfhie (109990)的收集整理)/uihelp - 命令表/tacker - Tukui 竞技场敌方冷却监视器 - 一个精简的PVP冷却监视器 (Icon only) /rl - 重载您的使用者界面/gm - 联系GM或开启魔兽世界帮助信息/frame - 侦测你滑鼠位置上的框架名称(对于lua编辑者有很大帮助)/heal - 启用治疗者的ouf界面 /dps - 启用dps/tank的使用界面/frame - 启动或禁用移动ouf框架/bags - 分类及排序背包,购买银行背包栏位或重新堆叠背包/银行内的物品/resetui - 重置Tukui的设定 /rd - 解散团队/wf - 解锁任务追踪框架/mss - 移动变形列和图腾列/ainv - 输入关键字(预设:/ainv)以启用密语自动邀请,你可以自行设定关键字,指令为/aunv 关键字在Tukui.绑定按键也非常简单,命令为:/ bindkey / hoverbind 或 / hb,使用鼠标移动至动作条按键位,按下你所要修改的按键即可,最后按&Save bindings& 以保存按键修改。移动头像例框架,只需输入/ uf ,就可解锁每项框架。(玩家 目标 焦点 宠物,玩家的目标 目标的目标 焦点的目标 宠物的目标 团队框架。。。)-插件帮助: /uihelp-背包: /bags-重置为默认设置: /resetui-移动任务框架: /wf-自动调整UI比例: /SetScale-头像框架移动: /uf-解散队伍或团队: /rd-背包右键点击背包右上角的X可以选择自动排序,堆叠等功能打开钥匙链/script ToggleKeyRing()
凌晨两点2楼
终于出了!!!!!!!!
哇,这么快就出来了。
終於出了 感謝
tukui终于有人发了顶下
标记下。。等更新了,下试试
感谢楼主,这个必须顶一下。
开始用的时候全是问号……原来是因为字体的原因……下次用之前保证仔细阅读说明……
頂一個~ 感謝、樓主~~
用lr号通过了,但是用sm的号,那个原始动作条不能隐藏。不知道原因
终于出了么。。。谢谢楼主另。。楼主的伤害字体是什么?
[quote][pid=][b]Post by 女大学生 ( 11:34):[/b][/pid]用lr号通过了,但是用sm的号,那个原始动作条不能隐藏。不知道原因[/quote]这个问题10.25的时候就有了。。。貌似一直没有解决。。
[img]./mon_/200_4c79e09d31fa1.jpg[/img]SM号我测试了下,正常呀,不知你说的不正常在哪?不要把别人的Tukui的修改版的测试结果发我这儿,嘿嘿。这个伤害字体是Tukui自带的,想要的话,修改Tukui\config\config.lua文件[&dmgfont&] = [[Fonts\ARIALN.ttf]]改为[&dmgfont&] = [[Interface\Addons\Tukui\media\combat_font.ttf]]
感谢楼主啊!!!
等TUKUI 好久啦!!
额 对了 这个字体 可以改成自己喜欢的字体吗如何改呢 是不是还是用那个FONTSHOW?
标记测试~大芒果
请问,LR的守护姿态栏怎么设置出来呀
感谢。。收藏了先~[MOP小玩意儿] 分享一些Tukui的修改技巧 (未完工,添加分离焦点施法条和团队框体)
[align=center][b][color=red][size=200%]综述[/size][/color][/b][/align]最近看到论坛很多朋友求Tukui的分离施法条的那个插件,或者有个可以自定义动作条布局的插件,但有些插件已经不更新了。其实Tukui有很灵活的定制性,稍微懂点编程,不用会不会LUA,参照着写就能修改出想要的效果。先上几张自己的界面,点击展开看[collapse]1.40人团队样式[img]/153/1533384/month_4f97a0ede27210.jpg[/img]2.施法条样式,其中从上往下依次为,焦点施法条,目标施法条和玩家施法条[img]/153/1533384/month_e4cc9e60572f3.jpg[/img]3.小队样式,法师能量条监视与奥冲层数监视[img]/153/1533384/month_ee25ec47fbe69fd2dd3f08b50e29e.jpg[/img]4.冰法能量条监视,无奥冲层数[img]/153/1533384/month_c6fce3d539c179d714.jpg[/img][/collapse]基本上和插件的默认布局已经完全不一样,是我按照自己的习惯去调整后的结果。大的部分包括:1:分离施法条2:中间部分法师的奥冲层数监视不是使用的Tukui_classmonitor那个插件,是使用的Tukui内置OUF的oUF_ArcaneCharge插件实现的。并加上了一些函数实现脱战隐藏,进入战斗显示,无论是否进入战斗如果蓝未满也显示中间部分的法力条和奥冲层数监视框。同样的也可以显示盗贼连击点等需要的职业条。3:修改小队框体,如果为小队或者团队未满5人显示大框体,否则显示小框体。4: 重新布局动作条我不想放包的原因是我把tukui改的很厉害,后台都已经被我删的七七八八了,我只留了我需要的部分,我不玩儿的职业那些功能我都给删没了。。。而且也只支持我自己的的分辨率,我怕给了你们也用不了。如果你们还是想要我就放上去。修改前应该先了解一些概念,已经明了的人可以越过不看。[align=center][b][color=red][size=200%]基本概念[/size][/color][/b][/align][b]1.Tukui的文件结构及其功能[/b][list][*]config
-- 配置文件[list][*]config.lua
-- 通用的配置文件,如果你没有把只为该用户什么什么的勾打上,就使用的是这份配置文件[*]profiles.lua
-- 如果你需要为特别的职业或者指定名字的游戏人物单独配置的话,需要在这里添加,其实很少人用得到[/list][*]core
-- 核心文件[list][*]api.lua
-- 程序接口文件,里面定义了Tukui提供给用户改写Tukui时使用的一些方法,主要是材质样式的公用函数,高级用户可以研究,也不用我啰嗦。普通修改用户可以无视。[*]config.lua
-- 为用户生成配置文件的,比如说A角色和B角色需要独立配置的时候,在WTF文件夹中生成不同的配置文件就是它做的工作,普通用户可以无视。[*]customconfig.lua
-- 如果你需要在后台添加一些自定义的开关,比如说把所有施法条独立配置开关的话,就需要在这里添加一些内容,如果有需要我再讲,一般没有多大的需求。[*]deprecated.lua
-- 无视[*]fonts.lua
-- 根据客户端把Tukui字体文件从外部映射到内部[*]functions.lua
-- 核心函数文件,包括很多方法,基本上所有模块的运行都依赖于该文件,这里是我们需要留意和修改的地方,以后会讲如何修改。[*]init.lua
-- 无视[*]install.lua
-- 无视[*]move.lua
-- 无视,主要是模块移动用的,鼠标哪儿有用代码坐标定位来的准确好用[*]popup.lua
-- 没太细看,应该是弹出窗口的一些内容,目前没发现需要修改的。[*]protection.lua
-- 插件自我保护文件,这里实现了Tukui与一些插件不能同时出现的功能,比如说你没关闭使用Tukui内置的动作条就不可以使用Bartender4之类的,打开看看,很简单。[*]update.lua
-- 更新提醒,如果发现其他玩家的Tukui版本比你的新,会提醒你更新[*]video.lua
-- 这里用了一大堆的函数去判定玩家分辨率属于高分辨率还是低分辨率,给之后的布局进行判断用[/list][*]developer
无视[*]docs
无视[*]licenses
无视[*]locales
本地文件,如果你觉得哪个翻译让你不爽就该这里,比如说我界面有人掉线时候我不想看到“离线”这俩字儿,我想用英文的OFFLINE,就改这里。你可以参照英文版的修改字段。[*]medias
媒体文件,素材,字体都出自这里,如果你发现Tukui劫持了你的系统字体,就是它在起作用,在以后的修改界面布局我会讲如何修改。[*]modules --
展开此文件夹可以看到各个模块的样式,功能定义都在这,根据文件名你能知道是干什么的,不再拆开来讲,如果有需要后面会讲。[*]Tukui.toc
版本声明文件,无视[*]Tukui.xml
这个该怎么叫。。插件的文件列表引用文件?不晓得,反正是你用了哪个文件就要到这里写上一行,不写客户端就不载入。[/list]从该列表能在修改的时候有的放矢,比如说我要修改头像布局,那么我应该修改Tukui/moudules/unitframes/layouts/tukui.lua文件,如果想修改小地图部分,就在moudules/maps/minimap.lua这个文件里。[b]2.一些基本知识[/b]1.界面的Frame(框架)层的概念。所有可见元素都由是一个个的Frame,这些框架可以相互重叠从而产生想要的效果。下面以施法条举例:[img]/153/1533384/month_6e20c414b48ae59a6b311177e.jpg[/img](1)主框体castbar在图中可以看到,并参照后面我修改施法条的代码来看,我们生成施法条的时候首先需要生成一个施法条的主框体,这个框体就是castbar,也就是图中橘***的部分和没读到头的那部分,完整的样式是施法条读到头的那一条。castbar这个名字随便起的,但在注册给ouf的时候一定要注册给self.castbar,告诉ouf这个框架是施法条。在OUF中,self可以指代多个单元,谁调用了函数,谁就是self的实例,每个实例包含有固定的东西,比如说施法条self.castbar,生命条self.health,能量条self.power。这有点抽象,你只要理解在定义玩家的时候这个self指代的就是玩家框体,注册给OUF的意义就在于告诉OUF你在给哪个元素做样式,换句话说,你在把样式套用在哪个地方。主框体castbar是个局部的父框体,其余子框体要围绕着它来定位,如果父框体隐藏了,子框体跟着隐藏,但子框体隐藏了,不会影响到父框体。我们给主框体定位的时候,就要把castbar看成其他框体的子框体,将其依附于其他需要的父框体上。(2)施法条背景castbar.bg这个框架就是在施法条外面那一圈带边框和施法条底层的部分,你可以拿两张纸,一张大的一张小的,把大的放在小的下面,小的那张就是castbar,大的那张就是castbar.bg。我们给他定义了带边框的样式,并且定位在左上角离父框体2像素,右下角离父框体2像素的位置,只要定义左上角和右下角, 那么图形就有了完整的矩形形态。其余部分不再赘述,参考代码就能知道他们的依附关系。(3)框架的层次,从castbar和castbar.bg上来看,一个在上面一个在下面,如何安排这两个的层次关系需要用到SetFrameLevel()方法,最下面的那层是1,以后网上每高一层加1castbar:SetFrameLevel(2)castbar.bg:SetFrameLevel(1)这两行就把castbar和castbar.bg的上下层关系定义了出来,产生图中的效果。同时,当你是用一些方法去生成一些元素的时候也要考虑他们的层位置,比如说生成中间的时间字符串:castbar.time = T.SetFontString(castbar, font2, 12)。这个方法是在castbar上生成的字符串,同样的字符串层级也为2,如果你将其生成在castbar.bg上的时候,就会被其上的castbar给遮住。以上就是框架的基本概念。2.颜色在颜色函数的调用中,参数一般是三个和四个,(r,g,b)或者(r,g,b,alpha)每个色彩都是由R,G,B三个数值来决定的,这三个数决定了一种颜色,普通的RGB取值在0-255之间,魔兽中使用的是小数的形式,需要把普通的取值除以255得到一个小数,你也可以写成,R/255,G/255.B/255,这样计算机会自动为你计算小数。第四个参数alpha是透明度,1为不透明,0为完全透明。 比如说castbar:SetStatusBarColor(0.22, 0.55, 0, 1) 这行,需要改颜色的话,依次填入三个RGB值,最后一个值为透明度, 次序不能出错。附WOWWIKI上的职业颜色表不上表了,排版很乱,自己去WOWWIKI上看:[url]/Class_colors[/url]我这里先讲一下如何分离施法条。看看效果[align=center][b][color=red][size=200%]分离玩家施法条,目标施法条,焦点施法条[/size][/color][/b][/align]1.分离玩家和目标的施法条:打开\Interface\AddOns\Tukui\modules\unitframes\layouts\tukui.lua文件,这个文件定义了全部页面元素,我们要修改的也是这部分内容。在第1034行找到注释部分:&&-- cast bar for player and target 从这里往下到1099行的end为止,该部分为我们要修改的内容这里施法条默认是带图标的,Tukui自带的后台参数是否显示施法图标不控制这里,因为没有if C[&unitframes&].cbicons == true then的判断。为了使不会改的人能用,我加了通用的处理办法,在后台加上了配置选项。重新添加了一些内容。修改后的代码:[code]&&-- cast bar for player and target 玩家和目标的施法条,是两者共用的!!&&if (C[&unitframes&].unitcastbar == true) then
--如果显示施法条(Tukui后台选项能够控制)&&&&&&&&local width = C[&unitframes&].unitcastbarwidth&&&&local height = C[&unitframes&].unitcastbarheight&&&&-- 后台配置施法条的宽与高,包括玩家施法条和目标施法条,如果你想单独配置,就需要单独为两个施法条设置宽和高&&&&&&&&local castbar = CreateFrame(&StatusBar&, self:GetName()..&CastBar&, self)
&&&&-- 创建施法条框架,框架名称为self框体后追加CastBar字段。比如玩家施法条,名字为:TukuiPlayerCastBar。&&&&castbar:SetHeight(height)
&&&&-- 施法条高度&&&&castbar:SetWidth(width - height - 9) &&&&-- 施法条的宽度。 注意,这个宽度不是施法条的总宽度,施法条的总宽度还包括图标的宽度,图标与施法条之间的宽度。请参考上面讲解框架时候用到的图。&&&&castbar:SetStatusBarTexture(normTex) &&&&-- 给施法条覆盖材质&&&&castbar:SetFrameLevel(2) &&&&-- 设定施法条层级为2&&&&castbar:SetStatusBarColor(0.22, 0.55, 0, 1) &&&&-- 施法条颜色,这个颜色是我自己定义的,那个偏黑的橘***。&&&&&&&&castbar.bg = CreateFrame(&Frame&, nil, castbar)&&&&-- 创建施法条的背景,这个背景就是施法条下面那层带边框的部分。其中第三个参数定义了该背景所属的父框架castbar上。&&&&castbar.bg:SetTemplate(&Default&)&&&&-- 使用Tukui的API为施法条的背景套用模板样式&&&&castbar.bg:SetBackdropBorderColor(bdcr * 0.7, bdcg * 0.7, bdcb * 0.7)&&&&-- 设置边框颜色,这个颜色是能根据全局边框颜色变动的色彩,比如说法师是蓝色,其他各职业颜色请参考WOWWIKI上颜色代码,下面会贴出&&&&castbar.bg:Point(&TOPLEFT&, -2, 2)&&&&castbar.bg:Point(&BOTTOMRIGHT&, 2, -2)&&&&--给施法条背景定位,位置为该背景的坐上点依附给父框架的左上点,X轴左便宜2个像素,Y轴向上偏移两个像素。同理右下,X轴右偏移两个像素,下偏移两个像素。&&&&-- 如果不懂的朋友可以闭着眼睛想一下,父框架castbar,下面放上背景层castbar.bg,背景层的左上角在castbar的外面,&&&&-- 距离各两个像素,右下角也在外面,距离同样2像素,就把castbar给包围了起来。&&&&castbar.bg:SetFrameLevel(1)&&&&-- 由于背景层不能遮盖到父框架施法条,所以要比施法条的层级低,设为1&&&&castbar.time = T.SetFontString(castbar, font2, 12)&&&&-- 施法时间,T.SetFontString是函数名,调用该函数需要3个参数,第一个参数表示要在哪里显示文字,第二个是字体,第三个是字体大小。&&&&-- 这个函数运行的结果就是我们在施法条之上创建了一行字体为font2,字体大小为12的字。&&&&castbar.time:SetTextColor(0.84, 0.75, 0.65)&&&&-- 施法时间的颜色。&&&&castbar.Text = T.SetFontString(castbar, font2, 12)&&&&-- 法术名称&&&&castbar.Text:SetTextColor(0.84, 0.75, 0.65)&&&&-- 法术名称颜色&&&&&&&&castbar.CustomTimeText = T.CustomCastTimeText&&&&castbar.CustomDelayText = T.CustomCastDelayText&&&&castbar.PostCastStart = T.CheckCast&&&&castbar.PostChannelStart = T.CheckChannel&&&&-- 以上四行是调用tukui/core/function.lua文件中的函数,不做过多解释。&&&&&&&&&&&&&&&&&&&&castbar.button = CreateFrame(&Frame&, nil, castbar)&&&&-- 创建button框架,你可以理解为图标的边框,没有这部分图标是没有边框的,光秃秃的。&&&&castbar.button:Height(height + 4)&&&&-- 为啥是+4 因为边框距离图标四周各2像素,所以边框的高应该是图标的高+4&&&&castbar.button:Width(height + 4)&&&&castbar.button:Point(&RIGHT&, castbar.bg, &LEFT&, -1, 0)&&&&--图标边框距离背景边框左移一个像素,间距为1&&&&castbar.button:SetTemplate(&Default&)&&&&castbar.button:SetBackdropBorderColor(bdcr * 0.7, bdcg * 0.7, bdcb * 0.7)&&&&-- 设定宽和高,定位,边框颜色等,可参考上面castbar部分函数功能&&&&castbar.icon = castbar.button:CreateTexture(nil, &ARTWORK&)&&&&castbar.icon:Point(&TOPLEFT&, castbar.button, 2, -2)&&&&castbar.icon:Point(&BOTTOMRIGHT&, castbar.button, -2, 2)&&&&castbar.icon:SetTexCoord(0.08, 0.92, 0.08, .92)&&&&-- 图标的一些设定&&&&&&&&if unit == &player& then&&&&-- 由于在我的样式中,玩家施法条和目标施法条的样式是不一样的,所以有些部分要单独定义&&&&&&castbar:SetPoint(&BOTTOMRIGHT&,TukuiBar3,&TOPRIGHT&, -2, 35)&&&&&&-- 施法条的位置,施法条框架的右下角定位在TukuiBar3的左上角,TukuiBar3就是屏幕中间那两排12个动作条,相对位置为向左两个像素,向上35个像素&&&&&&-- 这里就能看出边框的位置造成的偏差,如果不向左2个像素的话,边框部分就会落在tukuibar3的偏右2像素位置,因为边框向外延展了2个像素。&&&&&&castbar.time:Point(&CENTER&, castbar, &CENTER&)&&&&&&-- 施法时间的定位,放在施法条的中间&&&&&&castbar.Text:Hide()&&&&&&-- 玩家施法条我不需要文字&&&&&&&&&&&&castbar.safezone = castbar:CreateTexture(nil, &ARTWORK&)&&&&&&castbar.safezone:SetTexture(normTex)&&&&&&castbar.safezone:SetVertexColor(1, 0, 0, 1)&&&&&&castbar.safezone:SetAlpha(0.5)&&&&&&castbar.SafeZone = castbar.safezone&&&&&&--以上五行为延迟部分材质,如果有延迟会显示红色的那部分,不需要可删掉,没有开关,如果加开关也行,自己参考原版样式文件&&&&else&&&&&&castbar:SetPoint(&CENTER&, TukuiPetBattleHider,&CENTER&, 10 , -30)&&&&&&castbar.time:Point(&RIGHT&, castbar, &RIGHT&, -4, 0)&&&&&&castbar.Text:SetPoint(&LEFT&, castbar, &LEFT&, 4, 0)&&&&&&以上三条为目标施法条样式,参考玩家施法条部分&&&&end&&&&self.Castbar = castbar&&&&self.Castbar.Icon = castbar.icon&&&&self.Castbar.Time = castbar.time&&&&castbar.CustomTimeText = T.CustomCastTimeText&&&&将各个部分的元素注册给OUF组件&&end[/code] 为什么这里只是玩家和目标的施法条,往上看该函数部分的外层,第73行代码:if (unit == &player& or unit == &target&) then 这里就说明了,如果单位是玩家或者目标的时候才往下执行。添加后台控制项,打开Tukui\config\config.lua在C[&unitframes&] = {&&-- general options之下的任意行添加&&[&unitcastbarwidth&] = 190,&&[&unitcastbarheight&] = 14,保存退出。之后你就可以在后台定义他的宽和高了,位置也一样可以,我只提供一个思路,因为这种方法很麻烦,还不如直接改代码来的快。补充焦点施法条部分,替换位置为\Interface\AddOns\Tukui\modules\unitframes\layouts\tukui.lua文件的1466 - 1509行[code]&&&&local castbar = CreateFrame(&StatusBar&, self:GetName()..&CastBar&, self)&&&&local width = C[&unitframes&].unitcastbarwidth&&&&local height = C[&unitframes&].unitcastbarheight&&&&castbar:SetHeight(height)&&&&castbar:SetWidth(width - height - 9)&&&&castbar:SetPoint(&BOTTOMLEFT&,TukuiTargetCastBar.icon,&TOPLEFT&, 0, 6)&&&&castbar:SetStatusBarTexture(normTex)&&&&castbar:SetFrameLevel(2)&&&&&&&&castbar.bg = CreateFrame(&Frame&, nil, castbar)&&&&castbar.bg:SetTemplate(&Default&)&&&&castbar.bg:SetBackdropBorderColor(bdcr * 0.7, bdcg * 0.7, bdcb * 0.7)&&&&castbar.bg:Point(&TOPLEFT&, -2, 2)&&&&castbar.bg:Point(&BOTTOMRIGHT&, 2, -2)&&&&castbar.bg:SetFrameLevel(1)&&&&castbar.time = T.SetFontString(castbar, font2, 12)&&&&castbar.time:SetTextColor(0.84, 0.75, 0.65)&&&&castbar.time:Point(&RIGHT&, castbar, &RIGHT&, -4, 0)&&&&castbar.time:SetJustifyH(&RIGHT&)&&&&castbar.Text = T.SetFontString(castbar, font2, 12)&&&&castbar.Text:SetTextColor(0.84, 0.75, 0.65)&&&&castbar.Text:SetPoint(&LEFT&, castbar, &LEFT&, 4, 0)&&&&&&&&castbar.CustomTimeText = T.CustomCastTimeText&&&&castbar.CustomDelayText = T.CustomCastDelayText&&&&castbar.PostCastStart = T.CheckCast&&&&castbar.PostChannelStart = T.CheckChannel&&&&&&&&&&&&&&&&&&&&castbar.button = CreateFrame(&Frame&, nil, castbar)&&&&castbar.button:Height(height + 4)&&&&castbar.button:Width(height + 4)&&&&castbar.button:Point(&LEFT&, castbar.bg, &RIGHT&, 1, 0)&&&&castbar.button:SetTemplate(&Default&)&&&&castbar.button:SetBackdropBorderColor(bdcr * 0.7, bdcg * 0.7, bdcb * 0.7)&&&&castbar.icon = castbar.button:CreateTexture(nil, &ARTWORK&)&&&&castbar.icon:Point(&TOPLEFT&, castbar.button, 2, -2)&&&&castbar.icon:Point(&BOTTOMRIGHT&, castbar.button, -2, 2)&&&&castbar.icon:SetTexCoord(0.08, 0.92, 0.08, .92)&&&&self.Castbar = castbar&&&&self.Castbar.Icon = castbar.icon&&&&self.Castbar.Time = castbar.time&&&&castbar.CustomTimeText = T.CustomCastTimeText[/code]以上部分你可以替换原版文件中相应部分来看效果。
下面稍微讲解一下,施法条宽度的问题,对理解层概念会有一些帮助:[img]/153/1533384/month_af8f2f7aa9e1ef0378.png[/img]
[align=center][b][color=red][size=200%]团队框体和小队框体样式[/size][/color][/b][/align]我需要的团队框体样式是在5人小队中显示大的队友框,在团队中未满5人显示大的队友框,如果超过5人显示小的队友框。需要说明的是,这里删掉了所有关于队友宠物的显示问题,我把他们全删了,因为个人不需要。先上代码1,打开\Interface\AddOns\Tukui\modules\unitframes\layouts\tukui.lua 替换掉2114行起一直到最后[code]-------------------------------------------------------------------------- Raid Frames------------------------------------------------------------------------if C.unitframes.raid == true then&&local font1 = C[&media&].uffont&&local font2 = C[&media&].font&&local normTex = C[&media&].normTex&&local bdcr, bdcg, bdcb = unpack(C[&media&].bordercolor)&&local backdrop = {&&&&bgFile = C[&media&].blank,&&&&insets = {top = -T.mult, left = -T.mult, bottom = -T.mult, right = -T.mult},&&}&&local function SharedParty(self, unit)&&&&self.colors = T.UnitColor&&&&self:RegisterForClicks(&AnyUp&)&&&&self:SetScript(&OnEnter&, UnitFrame_OnEnter)&&&&self:SetScript(&OnLeave&, UnitFrame_OnLeave)&&&&&&&&self.menu = T.SpawnMenu&&&&&&&&self:SetBackdrop({bgFile = C[&media&].blank, insets = {top = -T.mult, left = -T.mult, bottom = -T.mult, right = -T.mult}})&&&&self:SetBackdropColor(0, 0, 0)&&&&&&&&local panel = CreateFrame(&Frame&, nil, self)&&&&panel:SetTemplate()&&&&panel:Size(186, 21)&&&&panel:Point(&TOP&, self, &TOP&, 0, 0)&&&&panel:SetBackdropBorderColor(bdcr * 0.7, bdcg * 0.7, bdcb * 0.7)&&&&self.panel = panel&&&&&&&&local health = CreateFrame(&StatusBar&, nil, self)&&&&health:Height(20)&&&&health:SetPoint(&TOPLEFT&, panel, &BOTTOMLEFT&, 0, -1)&&&&health:SetPoint(&TOPRIGHT&, panel, &BOTTOMRIGHT&, 0, -1)&&&&health:SetStatusBarTexture(normTex)&&&&self.Health = health&&&&&&&&health.bg = health:CreateTexture(nil, &BORDER&)&&&&health.bg:SetAllPoints(health)&&&&health.bg:SetTexture(normTex)&&&&health.bg:SetTexture(0.3, 0.3, 0.3)&&&&health.bg.multiplier = (0.3)&&&&self.Health.bg = health.bg&&&&&&&&&&health.value = health:CreateFontString(nil, &OVERLAY&)&&&&health.value:Point(&RIGHT&, -3, 0)&&&&health.value:SetFont(font1, 17, &OUTLINE&)&&&&health.value:SetShadowColor(0, 0, 0)&&&&health.value:SetTextColor(1,1,1)&&&&health.value:SetShadowOffset(1, -1)&&&&self.Health.value = health.value&&&&&&&&health.PostUpdate = T.PostUpdateHealthRaid&&&&&&&&health.frequentUpdates = true&&&&health.Smooth = true&&&&health.colorDisconnected = true&&&&&&health.colorClass = true&&&&local power = CreateFrame(&StatusBar&, nil, self)&&&&power:Height(4)&&&&power:Point(&TOPLEFT&, health, &BOTTOMLEFT&, 0, -1)&&&&power:Point(&TOPRIGHT&, health, &BOTTOMRIGHT&, 0, -1)&&&&power:SetStatusBarTexture(normTex)&&&&self.Power = power&&&&power.bg = power:CreateTexture(nil, &BORDER&)&&&&power.bg:SetAllPoints(power)&&&&power.bg:SetTexture(normTex)&&&&power.bg:SetAlpha(1)&&&&power.bg.multiplier = 0.3&&&&self.Power.bg = power.bg&&&&&&&&power.value = panel:CreateFontString(nil, &OVERLAY&)&&&&power.value = T.SetFontString(panel, font1, 15)&&&&power.value:Point(&RIGHT&, -5, -1)&&&&self.Power.value = power.value&&&&&&&&power.PreUpdate = T.PreUpdatePower&&&&power.PostUpdate = T.PostUpdatePowerRaid&&&&&&&&power.frequentUpdates = true&&&&power.Smooth = true&&&&power.colorDisconnected = true&&&&power.colorPower = true&&&&&&&&local name = panel:CreateFontString(nil, &OVERLAY&)&&&&name:SetPoint(&LEFT&, 6, 0)&&&&name:SetFont(font2, 11, &THINOUTLINE&)&&&&self:Tag(name, '[level] [Tukui:getnamecolor][Tukui:namemedium] [Tukui:dead][Tukui:afk]')&&&&self.Name = name&&&&&&&&table.insert(self.__elements, T.UpdateThreat)&&&&self:RegisterEvent(&PLAYER_TARGET_CHANGED&, T.UpdateThreat)&&&&self:RegisterEvent(&UNIT_THREAT_LIST_UPDATE&, T.UpdateThreat)&&&&self:RegisterEvent(&UNIT_THREAT_SITUATION_UPDATE&, T.UpdateThreat)&&&&&&&&local ReadyCheck = health:CreateTexture(nil, &OVERLAY&)&&&&ReadyCheck:Height(18*C[&unitframes&].gridscale*T.raidscale)&&&&ReadyCheck:Width(18*C[&unitframes&].gridscale*T.raidscale)&&&&ReadyCheck:SetPoint(&CENTER&) &&&&&&self.ReadyCheck = ReadyCheck&&&&&&&&local RaidIcon = panel:CreateTexture(nil, &OVERLAY&)&&&&RaidIcon:Height(20)&&&&RaidIcon:Width(20)&&&&RaidIcon:SetPoint(&CENTER& ,0 ,11)&&&&RaidIcon:SetTexture(&Interface\\AddOns\\Tukui\\medias\\textures\\raidicons.blp&) -- thx hankthetank for texture&&&&RaidIcon.SetTexture = T.dummy -- idk why but RaidIcon:GetTexture() is returning nil in oUF, resetting icons to default ... stop it!&&&&self.RaidIcon = RaidIcon&&&&&&&&local LFDRole = health:CreateTexture(nil, &OVERLAY&)&&&&LFDRole:Height(8*T.raidscale)&&&&LFDRole:Width(12*T.raidscale)&&&&LFDRole:Point(&TOPLEFT&,2,-2)&&&&LFDRole:SetTexture(&Interface\\AddOns\\Tukui\\medias\\textures\\lfdicons.blp&)&&&&self.LFDRole = LFDRole&&&&&&&&local Leader = panel:CreateTexture(nil, &OVERLAY&)&&&&Leader:Height(14)&&&&Leader:Width(14)&&&&Leader:Point(&TOPLEFT&, 2, 8)&&&&self.Leader = Leader&&&&&&&&&&&&local MasterLooter = panel:CreateTexture(nil, &OVERLAY&)&&&&MasterLooter:Height(11)&&&&MasterLooter:Width(14)&&&&self.MasterLooter = MasterLooter&&&&self:RegisterEvent(&PARTY_LEADER_CHANGED&, T.MLAnchorUpdate)&&&&self:RegisterEvent(&GROUP_ROSTER_UPDATE&, T.MLAnchorUpdate)&&&&&&&&local range = {insideAlpha = 1, outsideAlpha = C[&unitframes&].raidalphaoor}&&&&self.Range = range&&&&health.Smooth = true&&&&power.Smooth = true&&&&&&&&if C[&unitframes&].healcomm then&&&&&&local mhpb = CreateFrame(&StatusBar&, nil, self.Health)&&&&&&if C[&unitframes&].gridhealthvertical then&&&&&&&&mhpb:SetOrientation(&VERTICAL&)&&&&&&&&mhpb:SetPoint(&BOTTOM&, self.Health:GetStatusBarTexture(), &TOP&, 0, 0)&&&&&&&&mhpb:Width(66*C[&unitframes&].gridscale*T.raidscale)&&&&&&&&mhpb:Height(50*C[&unitframes&].gridscale*T.raidscale)&&&&&&&&&&else&&&&&&&&mhpb:SetPoint(&TOPLEFT&, self.Health:GetStatusBarTexture(), &TOPRIGHT&, 0, 0)&&&&&&&&mhpb:SetPoint(&BOTTOMLEFT&, self.Health:GetStatusBarTexture(), &BOTTOMRIGHT&, 0, 0)&&&&&&&&mhpb:Width(66*C[&unitframes&].gridscale*T.raidscale)&&&&&&end&&&&&&&&&&&&&&mhpb:SetStatusBarTexture(normTex)&&&&&&mhpb:SetStatusBarColor(0, 1, 0.5, 0.25)&&&&&&local ohpb = CreateFrame(&StatusBar&, nil, self.Health)&&&&&&if C[&unitframes&].gridhealthvertical then&&&&&&&&ohpb:SetOrientation(&VERTICAL&)&&&&&&&&ohpb:SetPoint(&BOTTOM&, mhpb:GetStatusBarTexture(), &TOP&, 0, 0)&&&&&&&&ohpb:Width(66*C[&unitframes&].gridscale*T.raidscale)&&&&&&&&ohpb:Height(50*C[&unitframes&].gridscale*T.raidscale)&&&&&&else&&&&&&&&ohpb:SetPoint(&TOPLEFT&, mhpb:GetStatusBarTexture(), &TOPRIGHT&, 0, 0)&&&&&&&&ohpb:SetPoint(&BOTTOMLEFT&, mhpb:GetStatusBarTexture(), &BOTTOMRIGHT&, 0, 0)&&&&&&&&ohpb:Width(6*C[&unitframes&].gridscale*T.raidscale)&&&&&&end&&&&&&ohpb:SetStatusBarTexture(normTex)&&&&&&ohpb:SetStatusBarColor(0, 1, 0, 0.25)&&&&&&self.HealPrediction = {&&&&&&&&myBar = mhpb,&&&&&&&&otherBar = ohpb,&&&&&&&&maxOverflow = 1,&&&&&&}&&&&end&&&&&&&&local debuffs = CreateFrame(&Frame&, nil, self)&&&&&&&&&&debuffs:SetHeight(21.5)&&&&debuffs:SetWidth(186)&&&&debuffs:SetPoint(&TOPLEFT&, self, &BOTTOMLEFT&, 0, -4)&&&&debuffs.size = 21.5&&&&&&debuffs.num = 16&&&&&&&&&&&&&&&&&&&&&&&&debuffs.spacing = 2&&&&debuffs.initialAnchor = 'TOPLEFT'&&&&debuffs[&growth-y&] = &DOWN&&&&&debuffs.PostCreateIcon = T.PostCreateAura&&&&debuffs.PostUpdateIcon = T.PostUpdateAura&&&&&&&&self.Debuffs = debuffs&&&&&&&&self.DebuffHighlightAlpha = 1&&&&self.DebuffHighlightBackdrop = true&&&&self.DebuffHighlightFilter = true&&&&&&&&-- for editors, easy way to edit raid unit frames&&&&local header = self:GetParent():GetName()&&&&self.PostUpdateRaidUnit = T.PostUpdateRaidUnit or T.dummy&&&&self:PostUpdateRaidUnit(unit, header)&&&&&&&&-- highlight&&&&self:HighlightUnit(218/255, 197/255, 92/255)&&&&return self&&end&&&&oUF:RegisterStyle(&TukuiParty&, SharedParty)&&oUF:SetActiveStyle(&TukuiParty&)&&&&local TukuiParty = oUF:SpawnHeader(&&&&&TukuiParty&, &&&&nil, &&&&&custom [@raid6,noexists]hide&,&&&&&oUF-initialConfigFunction&, [[&&&&&&local header = self:GetParent()&&&&&&self:SetWidth(header:GetAttribute(&initial-width&))&&&&&&self:SetHeight(header:GetAttribute(&initial-height&))&&&&]],&&&&&initial-width&, T.Scale(186),&&&&&initial-height&, T.Scale(47),&&&&&showParty&, true,&&&&&showRaid&, true,&&&&&showPlayer&,true,&&&&&xoffset&, T.Scale(3),&&&&&yOffset&, T.Scale(-55)&&)&&&&TukuiParty:SetParent(TukuiPetBattleHider)&&TukuiParty:Point(&TOPLEFT&, TukuiPetBattleHider, &TOPLEFT&, 8, -8)&&&&local function SharedRaid40(self, unit)&&&&self.colors = T.UnitColor&&&&self:RegisterForClicks(&AnyUp&)&&&&self:SetScript(&OnEnter&, UnitFrame_OnEnter)&&&&self:SetScript(&OnLeave&, UnitFrame_OnLeave)&&&&&&&&self.menu = T.SpawnMenu&&&&&&&&self:SetBackdrop({bgFile = C[&media&].blank, insets = {top = -T.mult, left = -T.mult, bottom = -T.mult, right = -T.mult}})&&&&self:SetBackdropColor(0, 0, 0)&&&&&&&&local health = CreateFrame(&StatusBar&, nil, self)&&&&health:SetPoint(&TOPLEFT&)&&&&health:SetPoint(&TOPRIGHT&)&&&&health:Height(11)&&&&health:SetStatusBarTexture(normTex)&&&&self.Health = health&&&&&&&&health.bg = health:CreateTexture(nil, &BORDER&)&&&&health.bg:SetAllPoints(health)&&&&health.bg:SetTexture(normTex)&&&&health.bg:SetTexture(0.3, 0.3, 0.3)&&&&health.bg.multiplier = (0.3)&&&&self.Health.bg = health.bg&&&&&&&&health.frequentUpdates = true&&&&&&&&health.colorDisconnected = true&&&&health.colorClass = true&&&&health.colorReaction = true&&&&&&&&&&&&&&&&local power = CreateFrame(&StatusBar&, nil, self)&&&&power:Height(2)&&&&power:Point(&TOPLEFT&, self.Health, &BOTTOMLEFT&, 0, -1)&&&&power:Point(&TOPRIGHT&, self.Health, &BOTTOMRIGHT&, 0, -1)&&&&power:SetStatusBarTexture(normTex)&&&&self.Power = power&&&&power.bg = power:CreateTexture(nil, &BORDER&)&&&&power.bg:SetAllPoints(power)&&&&power.bg:SetTexture(normTex)&&&&power.bg:SetAlpha(1)&&&&power.bg.multiplier = 0.4&&&&&&&&power.frequentUpdates = true&&&&power.colorDisconnected = true&&&&power.colorPower = true&&&&&&&&local name = health:CreateFontString(nil, &OVERLAY&)&&&&name:SetFont(font2, 11, &THINOUTLINE&)&&&&name:Point(&LEFT&, self, &RIGHT&, 5, 0)&&&&self:Tag(name, '[Tukui:namemedium] [Tukui:dead][Tukui:afk]')&&&&self.Name = name&&&&table.insert(self.__elements, T.UpdateThreat)&&&&self:RegisterEvent(&PLAYER_TARGET_CHANGED&, T.UpdateThreat)&&&&self:RegisterEvent(&UNIT_THREAT_LIST_UPDATE&, T.UpdateThreat)&&&&self:RegisterEvent(&UNIT_THREAT_SITUATION_UPDATE&, T.UpdateThreat)&&&&&&&&local RaidIcon = health:CreateTexture(nil, &OVERLAY&)&&&&RaidIcon:Height(11)&&&&RaidIcon:Width(11)&&&&RaidIcon:SetPoint(&CENTER& ,0 ,0)&&&&RaidIcon:SetTexture(&Interface\\AddOns\\Tukui\\medias\\textures\\raidicons.blp&) -- thx hankthetank for texture&&&&RaidIcon.SetTexture = T.dummy -- idk why but RaidIcon:GetTexture() is returning nil in oUF, resetting icons to default ... stop it!&&&&self.RaidIcon = RaidIcon&&&&&&&&local LFDRole = health:CreateTexture(nil, &OVERLAY&)&&&&LFDRole:Height(4*T.raidscale)&&&&LFDRole:Width(6*T.raidscale)&&&&LFDRole:Point(&TOPLEFT&,2,-2)&&&&LFDRole:SetTexture(&Interface\\AddOns\\Tukui\\medias\\textures\\lfdicons.blp&)&&&&self.LFDRole = LFDRole&&&&&&&&local Leader = health:CreateTexture(nil, &OVERLAY&)&&&&Leader:Height(11)&&&&Leader:Width(11)&&&&Leader:Point(&TOPLEFT&,1 ,0)&&&&self.Leader = Leader&&&&&&&&local MasterLooter = health:CreateTexture(nil, 'OVERLAY')&&&&MasterLooter:SetSize(10, 10)&&&&MasterLooter:SetPoint('TOPRIGHT', -1 ,0)&&&&self.MasterLooter = MasterLooter&&&&&&&&local ReadyCheck = health:CreateTexture(nil, &OVERLAY&)&&&&ReadyCheck:Height(11*C[&unitframes&].gridscale*T.raidscale)&&&&ReadyCheck:Width(11*C[&unitframes&].gridscale*T.raidscale)&&&&ReadyCheck:SetPoint(&CENTER&) &&&&&&self.ReadyCheck = ReadyCheck&&&&&&&&local range = {insideAlpha = 1, outsideAlpha = C[&unitframes&].raidalphaoor}&&&&self.Range = range&&&&health.Smooth = true&&&&power.Smooth = true&&&&&&&&if C[&unitframes&].healcomm then&&&&&&local mhpb = CreateFrame(&StatusBar&, nil, self.Health)&&&&&&if C[&unitframes&].gridhealthvertical then&&&&&&&&mhpb:SetOrientation(&VERTICAL&)&&&&&&&&mhpb:SetPoint(&BOTTOM&, self.Health:GetStatusBarTexture(), &TOP&, 0, 0)&&&&&&&&mhpb:Width(66*C[&unitframes&].gridscale*T.raidscale)&&&&&&&&mhpb:Height(50*C[&unitframes&].gridscale*T.raidscale)&&&&&&&&&&else&&&&&&&&mhpb:SetPoint(&TOPLEFT&, self.Health:GetStatusBarTexture(), &TOPRIGHT&, 0, 0)&&&&&&&&mhpb:SetPoint(&BOTTOMLEFT&, self.Health:GetStatusBarTexture(), &BOTTOMRIGHT&, 0, 0)&&&&&&&&mhpb:Width(66*C[&unitframes&].gridscale*T.raidscale)&&&&&&end&&&&&&&&&&&&&&mhpb:SetStatusBarTexture(normTex)&&&&&&mhpb:SetStatusBarColor(0, 1, 0.5, 0.25)&&&&&&local ohpb = CreateFrame(&StatusBar&, nil, self.Health)&&&&&&ohpb:SetPoint(&TOPLEFT&, mhpb:GetStatusBarTexture(), &TOPRIGHT&, 0, 0)&&&&&&ohpb:SetPoint(&BOTTOMLEFT&, mhpb:GetStatusBarTexture(), &BOTTOMRIGHT&, 0, 0)&&&&&&ohpb:Width(6*C[&unitframes&].gridscale*T.raidscale)&&&&&&ohpb:SetStatusBarTexture(normTex)&&&&&&ohpb:SetStatusBarColor(0, 1, 0, 0.25)&&&&&&self.HealPrediction = {&&&&&&&&myBar = mhpb,&&&&&&&&otherBar = ohpb,&&&&&&&&maxOverflow = 1,&&&&&&}&&&&end&&&&&&&&if C[&unitframes&].raidunitdebuffwatch == true then&&&&&&-- AuraWatch (corner icon)&&&&&&T.createAuraWatch(self,unit)&&&&&&&&&&&&-- Raid Debuffs (big middle icon)&&&&&&local RaidDebuffs = CreateFrame(&Frame&, nil, self)&&&&&&RaidDebuffs:Height(14*C[&unitframes&].gridscale)&&&&&&RaidDebuffs:Width(14*C[&unitframes&].gridscale)&&&&&&RaidDebuffs:Point(&LEFT&, name, &RIGHT&, 2, 0)&&&&&&RaidDebuffs:SetFrameStrata(health:GetFrameStrata())&&&&&&RaidDebuffs:SetFrameLevel(health:GetFrameLevel() + 2)&&&&&&&&&&&&RaidDebuffs:SetTemplate(&Default&)&&&&&&&&&&&&RaidDebuffs.icon = RaidDebuffs:CreateTexture(nil, &OVERLAY&)&&&&&&RaidDebuffs.icon:SetTexCoord(.1,.9,.1,.9)&&&&&&RaidDebuffs.icon:Point(&TOPLEFT&, 2, -2)&&&&&&RaidDebuffs.icon:Point(&BOTTOMRIGHT&, -2, 2)&&&&&&&&&&&&-- just in case someone want to add this feature, uncomment to enable it&&&&&&--[[&&&&&&if C[&unitframes&].auratimer then&&&&&&&&RaidDebuffs.cd = CreateFrame(&Cooldown&, nil, RaidDebuffs)&&&&&&&&RaidDebuffs.cd:Point(&TOPLEFT&, 2, -2)&&&&&&&&RaidDebuffs.cd:Point(&BOTTOMRIGHT&, -2, 2)&&&&&&&&RaidDebuffs.cd.noOCC = true -- remove this line if you want cooldown number on it&&&&&&end&&&&&&--]]&&&&&&&&&&&&RaidDebuffs.count = RaidDebuffs:CreateFontString(nil, &OVERLAY&)&&&&&&RaidDebuffs.count:SetFont(C[&media&].uffont, 9*C[&unitframes&].gridscale, &THINOUTLINE&)&&&&&&RaidDebuffs.count:SetPoint(&BOTTOMRIGHT&, RaidDebuffs, &BOTTOMRIGHT&, 0, 2)&&&&&&RaidDebuffs.count:SetTextColor(1, .9, 0)&&&&&&&&&&&&RaidDebuffs:FontString(&time&, C[&media&].uffont, 9*C[&unitframes&].gridscale, &THINOUTLINE&)&&&&&&RaidDebuffs.time:SetPoint(&CENTER&)&&&&&&RaidDebuffs.time:SetTextColor(1, .9, 0)&&&&&&&&&&&&self.RaidDebuffs = RaidDebuffs&&&&end&&&&&&&&self.DebuffHighlightAlpha = 1&&&&self.DebuffHighlightBackdrop = true&&&&self.DebuffHighlightFilter = true&&&&&&&&if T.myclass == &PRIEST& and C[&unitframes&].weakenedsoulbar then&&&&&&local ws = CreateFrame(&StatusBar&, self:GetName()..&_WeakenedSoul&, power)&&&&&&ws:SetAllPoints(power)&&&&&&ws:SetStatusBarTexture(C.media.normTex)&&&&&&ws:GetStatusBarTexture():SetHorizTile(false)&&&&&&ws:SetBackdrop(backdrop)&&&&&&ws:SetBackdropColor(unpack(C.media.backdropcolor))&&&&&&ws:SetStatusBarColor(191/255, 10/255, 10/255)&&&&&&&&&&&&self.WeakenedSoul = ws&&&&end&&&&&&&&-- for editors, easy way to edit raid unit frames&&&&local header = self:GetParent():GetName()&&&&self.PostUpdateRaidUnit = T.PostUpdateRaidUnit or T.dummy&&&&self:PostUpdateRaidUnit(unit, header)&&&&&&&&-- highlight&&&&self:HighlightUnit(218/255, 197/255, 92/255)&&&&return self&&end&&&&&&oUF:RegisterStyle(&TukuiRaid40&, SharedRaid40)&&oUF:SetActiveStyle(&TukuiRaid40&)&&&&local TukuiRaid40 = oUF:SpawnHeader(&&&&&TukuiRaid40&, &&&&nil, &&&&&custom [@raid6,exists]hide&,&&&&&oUF-initialConfigFunction&, [[&&&&&&local header = self:GetParent()&&&&&&self:SetWidth(header:GetAttribute(&initial-width&))&&&&&&self:SetHeight(header:GetAttribute(&initial-height&))&&&&]],&&&&&initial-width&, T.Scale(70),&&&&&initial-height&, T.Scale(14),&&&&&showParty&, true,&&&&&showRaid&, true,&&&&&showPlayer&, true,&&&&&xoffset&, T.Scale(3),&&&&&yOffset&, T.Scale(-3),&&&&&groupFilter&, &1,2,3,4,5,6,7,8&,&&&&&groupingOrder&, &1,2,3,4,5,6,7,8&,&&&&&groupBy&, &GROUP&&&)&&&&TukuiRaid40:SetParent(TukuiPetBattleHider)&&TukuiRaid40:Point(&TOPLEFT&, TukuiPetBattleHider, &TOPLEFT&, 3, -3)end[/code]然后打开\Tukui\core\function.lua文件,在第607行的end之后添加如下代码这个原因是由于我在做中间法力监视的时候会需要一个百分比的数值,会与小队时候的大框体引起一些冲突,所以要单独写一个方法刷新法力值。[code]T.PostUpdatePowerRaid = function(power, unit, min, max)&&local self = power:GetParent()&&local pType, pToken = UnitPowerType(unit)&&local color = T.UnitColor.power[pToken]&&if color then&&&&power.value:SetTextColor(color[1], color[2], color[3])&&end&&if not UnitIsPlayer(unit) and not UnitPlayerControlled(unit) or not UnitIsConnected(unit) then&&&&power.value:SetText()&&elseif UnitIsDead(unit) or UnitIsGhost(unit) then&&&&power.value:SetText()&&else&&&&power.value:SetText(&|cffFFFFFF&..ShortValue(max - (max - min))..&|r&)&&endend[/code]
呀,我是沙发,喜欢这种类似教程贴,楼主辛苦了,感谢分享~ [s:27]
对楼主的改动赞一个,静待续文,嘎嘎!
楼主,你左边的团队成员列表是什么插件呀~~~ 谢谢
[quote][pid=]Reply[/pid] [b]Post by blizzzard ( 09:14):[/b]楼主,你左边的团队成员列表是什么插件呀~~~ 谢谢[/quote]来,把标题最前面方括号里的字母读一遍
楼主发个包撒~简单粗暴
[b]Reply to [pid=]Reply[/pid] Post by blizzzard ( 09:14)[/b]不是插件,同样是修改TUKUI的布局文件得到的
标题多了个i
赞美楼主。比我的渣界面强多了。。。。 [img]http://img.ngacn.cc/attachments/mon_/-7_4fa52ee2f2dbe.gif[/img]
另外求重新修改动作条教程。。这样就不用batender 了!!
[quote][pid=]Reply[/pid] [b]Post by 文煦 ( 10:56):[/b]不是插件,同样是修改TUKUI的布局文件得到的[/quote]我用的也是TUKUI,但是没有显示出这个,是TUKUI里面的团队插件吗?或者怎么设置?
我的显示是GRID
[quote][pid=]Reply[/pid] [b]Post by blizzzard ( 12:04):[/b]我的显示是GRID[/quote][@blizzzard]去掉 tukui 选项中的仅使用 grid 框架。在有 grid 时会关掉 tukui 自己的团队框架。[url=/store/apps/details?id=gov.pianzong.androidnga]----sent from my samsung SCH-i909,Android 2.3.6[/url]
[quote][pid=]Reply[/pid] [b]Post by blizzzard ( 09:14):[/b]楼主,你左边的团队成员列表是什么插件呀~~~ 谢谢[/quote]*** Tukui_SimpleRaid 后就这样了
小白表示没看明白。。。我只是想把那个施法条弄的小一些。tukui这次更新之后,施法条分离了。,也变大了。怎么改的跟楼主一样大小
弱弱的问下那个分离施法还得依赖TUKUI才能用滴么?
[quote][pid=]Reply[/pid] [b]Post by dofine ( 12:23):[/b][@blizzzard]去掉 tukui 选项中的仅使用 grid 框架。在有 grid 时会关掉 tukui 自己的团队框架。[url=/store/apps/details?id=gov.pianzong.androidnga]----sent from my samsung SCH-i909,Android 2.3.6[/url][/quote]谢谢指教
[quote][pid=]Reply[/pid] [b]Post by guo2easy ( 19:01):[/b]*** Tukui_SimpleRaid 后就这样了[/quote]谢谢指教
[b]Reply to [pid=]Reply[/pid] Post by qcriser ( 20:01)[/b]是的
[b]Reply to [pid=]Reply[/pid] Post by 爱我别走丶 ( 19:23)[/b]你应该装tukui_castbar 2的插件了吧,Tukui本身没有分离施法条
[quote][pid=]Reply[/pid] [b]Post by 爱我别走丶 ( 19:23):[/b]小白表示没看明白。。。我只是想把那个施法条弄的小一些。tukui这次更新之后,施法条分离了。,也变大了。怎么改的跟楼主一样大小[/quote][code=lua]local addon, ns = ...ns.config={&&[&separateplayer&] = true, -- 分离玩家施法条&&[&separatetarget&] = true, -- 分离目标施法条&&[&separatefocus&] = false, -- 分离焦点施法条&&[&separatefocustarget&]
= false, -- 分离焦点的目标的施法条
--上面四个选项 true 表示开启, false 表示关闭&&player = {&&&&[&width&] = 250, -- 玩家施法条宽度&&&&[&height&] = 26, -- 玩家施法条高度&&},&&target = {&&&&[&width&] = 250, -- 目标施法条宽度&&&&[&height&] = 26, -- 目标施法条高度&&},&&focus = {&&&&[&width&] = 350, -- 焦点施法条宽度&&&&[&height&] = 26, -- 焦点施法条高度&&},&&focustarget = {&&&&[&width&] = 250, -- 焦点的目标的施法条宽度&&&&[&height&] = 21, -- 焦点的目标的施法条高度&&}}[/code] lua我觉得 这很简单了吧?\Tukui_Castbar\Config.lua
[b]Reply to [pid=]Reply[/pid] Post by guo2easy ( 20:47)[/b]多谢。多谢~~~

参考资料

 

随机推荐