找回密码
 点一下
查看: 2742|回复: 19

[自定义UI]自定义血条演示

[复制链接]
发表于 2012-12-11 18:37:37 | 显示全部楼层 |阅读模式
这是一个自定义血条的简单演示,没有任何一句触发器,纯粹是UI文件+Actor构成的。

关于血条UI的问题国内外的提问者都很多,所以我就稍微做个小演示。

由于时间关系没法多作说明不过打开地图然后看UI编辑器和Actor部分应该就能明白了。


Screenshot2012-12-11 18_36_12.jpg


ATT.SC2Map

106.15 KB, 下载次数: 248

发表于 2012-12-11 18:38:35 | 显示全部楼层
沙发?
回复

使用道具 举报

发表于 2012-12-11 18:38:51 | 显示全部楼层
哦也
回复

使用道具 举报

 楼主| 发表于 2012-12-11 18:39:21 | 显示全部楼层
附件都还没传呢~~

于是OK了~~
回复

使用道具 举报

发表于 2012-12-12 17:49:27 | 显示全部楼层
啊……头目终于发演示了~
头目威武~顶一下拖走。
回复

使用道具 举报

发表于 2012-12-12 19:07:56 来自手机 | 显示全部楼层
头目发教程了!去研究研究。
回复

使用道具 举报

发表于 2012-12-12 19:19:12 | 显示全部楼层
应该会有用~谢谢头目了
回复

使用道具 举报

发表于 2012-12-13 10:17:20 | 显示全部楼层
本帖最后由 cccty1l 于 2012-12-13 10:21 编辑

看过头目的演示了,也在 TriggerDialogFrame.SC2Layout 文件中找到这个窗体定义的原型了。

现在的疑问是,如果我想添加其他的条,应该怎么做呢?

现在只试出来能量条的类型是UnitStatusEnergyBar,那么再除去生命条,应该还有护盾条、载物条、进度条等等5个条的类型不清楚,头目能告知一下么?

ATT测试.SC2Map

106.47 KB, 下载次数: 39

回复

使用道具 举报

发表于 2012-12-13 10:27:36 | 显示全部楼层
本帖最后由 chilled 于 2012-12-13 10:33 编辑

UnitStatusShieldsBar
UnitStatusLifeBar
UnitStatusEnergyBar

以下的不一定有~猜測
UnitStatusCargoBar
UnitStatusProgressBar
UnitStatusDurationBar
UnitStatusMagazineBar

--------------------
Actor中有類似的定義,猜測一下

        <StatusColors index="Shields" BackgroundColor="255,0,0,0" EmptyColor="255,80,80,80">
            <ColorArray value="255,0,0,255"/>
        </StatusColors>
        <StatusColors index="Life" BackgroundColor="255,0,0,0" EmptyColor="255,80,80,80">
            <ColorArray value="255,208,34,0"/>
            <ColorArray value="255,208,34,0"/>
            <ColorArray value="255,229,129,0"/>
            <ColorArray value="255,229,129,0"/>
            <ColorArray value="255,229,221,0"/>
            <ColorArray value="255,229,221,0"/>
            <ColorArray value="255,22,229,0"/>
            <ColorArray value="255,22,229,0"/>
        </StatusColors>
        <StatusColors index="Energy" BackgroundColor="255,0,0,0" EmptyColor="255,80,80,80">
            <ColorArray value="255,150,40,220"/>
        </StatusColors>
        <StatusColors index="Cargo" BackgroundColor="255,0,0,0" EmptyColor="255,77,60,15">
            <ColorArray value="255,255,255,255"/>
        </StatusColors>
        <StatusColors index="Progress" BackgroundColor="255,0,0,0" EmptyColor="255,80,80,80">
            <ColorArray value="255,0,200,200"/>
        </StatusColors>
        <StatusColors index="Duration" BackgroundColor="255,0,0,0" EmptyColor="255,40,40,40">
            <ColorArray value="255,120,120,120"/>
        </StatusColors>
        <StatusColors index="Magazine" BackgroundColor="255,0,0,0" EmptyColor="255,77,60,15">
            <ColorArray value="255,128,128,64"/>
        </StatusColors>
回复

使用道具 举报

发表于 2012-12-13 10:31:00 | 显示全部楼层
UnitStatusShieldsBar这个,我UnitStatusShieldBar、UnitStatuShieldsBar、UnitStatushieldsBar,都试验过了,全部都不行...

所以其他的还没有尝试,还是请教头目好了

点评

這些本身就是實體條狀,沒有自定義接口也是有可能。 反彙編看看字符串中有沒有吧。  详情 回复 发表于 2012-12-13 10:34
回复

使用道具 举报

发表于 2012-12-13 10:34:29 | 显示全部楼层
cccty1l 发表于 2012-12-13 10:31
UnitStatusShieldsBar这个,我UnitStatusShieldBar、UnitStatuShieldsBar、UnitStatushieldsBar,都试验过了 ...

這些本身就是實體條狀,沒有自定義接口也是有可能。
反彙編看看字符串中有沒有吧。
回复

使用道具 举报

 楼主| 发表于 2012-12-13 10:34:50 | 显示全部楼层
护盾生命条是UnitStatusShieldedHealthBar

进度条UnitStatusProgressBar

行为栏UnitStatusDurationBar

点评

看到了,多谢头目  详情 回复 发表于 2012-12-13 10:38
回复

使用道具 举报

发表于 2012-12-13 10:36:46 | 显示全部楼层
在 TriggerDialogFrame.SC2Layout 文件中的定义是这样的,跟Actor中的差别还是很大的。

[codes=xml]
    <Frame type="UnitStatusFrame" name="TriggerControlUnitStatusTemplate">
        <Frame type="UnitStatusHealthBar" name="HealthBar">
            <Anchor side="Top" relative="$parent" pos="Min" offset="0"/>
            <Anchor side="Left" relative="$parent" pos="Min" offset="0"/>
            <Height val="10"/>
            <Width val="100"/>
            <Texture val="@UI/HealthBar"/>
            <OwnerColor val="135, 255, 135"/>
            <AllyColor val="0, 200, 0"/>
            <EnemyColor val="150, 15, 50"/>
            <ReductionColor val="255, 0, 0"/>
            <ReductionShown val="true"/>
            <IncreaseDuration val="0"/>
            <DecreaseDuration val="3000"/>
        </Frame>
    </Frame>
[/codes]

而且我试验了下,在这个窗体中,SC2仅对它子窗体的类型敏感,名称随意就好。
但是我找护盾类型完全失败了...

点评

肯定是有差別的,只是接口推測而已。  详情 回复 发表于 2012-12-13 10:39
回复

使用道具 举报

发表于 2012-12-13 10:38:37 | 显示全部楼层
麦德三世 发表于 2012-12-13 10:34
护盾生命条是UnitStatusShieldedHealthBar

进度条UnitStatusProgressBar

看到了,多谢头目
回复

使用道具 举报

发表于 2012-12-13 10:39:15 | 显示全部楼层
cccty1l 发表于 2012-12-13 10:36
在 TriggerDialogFrame.SC2Layout 文件中的定义是这样的,跟Actor中的差别还是很大的。

[codes=xml]

肯定是有差別的,只是接口推測而已。
回复

使用道具 举报

发表于 2012-12-13 19:05:31 | 显示全部楼层
本帖最后由 dandelionshot 于 2012-12-13 19:09 编辑

怎样将血条显示在单位下方,就像sc1一样,总感觉显示在上方有点挡视线,想看看显示在下方是什么效果,
就是这样,好像也不能完全说是在单位的下方 screen07.jpg

点评

默认血条的偏移位置在单位actor中可以指定,字段名叫做“状态条偏移”。不过这个和头目的演示没啥关系啦。  详情 回复 发表于 2012-12-17 10:45
回复

使用道具 举报

发表于 2012-12-16 15:56:54 | 显示全部楼层
身为E文盲……不怎么能看懂
不过学会怎么抄袭了……
回复

使用道具 举报

发表于 2012-12-17 10:45:33 | 显示全部楼层
dandelionshot 发表于 2012-12-13 19:05
怎样将血条显示在单位下方,就像sc1一样,总感觉显示在上方有点挡视线,想看看显示在下方是什么效果,
就是这样 ...

默认血条的偏移位置在单位actor中可以指定,字段名叫做“状态条偏移”。不过这个和头目的演示没啥关系啦。
回复

使用道具 举报

发表于 2013-1-24 16:48:16 | 显示全部楼层
mark
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-11-24 22:38 , Processed in 0.099844 second(s), 24 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表