找回密码
 点一下
楼主: Renee

[教程]一个函数击败War3,SC2 xml模板数据通用读取函数CatalogFieldValueGet()

[复制链接]
发表于 2010-3-11 09:27:46 | 显示全部楼层
膜拜~[s:193]
回复

使用道具 举报

发表于 2010-6-9 15:48:21 | 显示全部楼层
此函数甚为牛X,居然在面向过程里用出可以和面向对象相抗的设计。。。。。太猛了
回复

使用道具 举报

发表于 2010-8-1 16:11:17 | 显示全部楼层
学习中吧!!!
回复

使用道具 举报

发表于 2011-1-17 11:51:50 | 显示全部楼层
我如果想获取单位子菜单的里面的按钮信息的话。又该怎么做?

<CardLayouts CardId="TBl1">
            <LayoutButtons Face="Cancel" Type="CancelSubmenu" AbilCmd="TerranBuild,Build1" Row="2" Column="4"/>
        </CardLayouts>

这里实在不知道怎么获取啊·
回复

使用道具 举报

 楼主| 发表于 2011-1-17 12:30:20 | 显示全部楼层
这个很简单,CardLayouts本质上依然是数组属性,只是没有显式地标明index而已。

所以要获取子属性的话必须写明下标

CardLayouts[1].CardId

LayoutButtons依然是数组属性,故而这样获取:

CardLayouts[1].LayoutButtons[0].AbilCmd


如果你只知道CardId而不知道index,那么可以循环0-i来比对CardLayouts.CardId是否符合。
回复

使用道具 举报

发表于 2011-1-17 16:56:59 | 显示全部楼层
引用楼主Renee于2010-03-02 19:02发表的 [教程]一个函数击败War3,SC2 xml模板数据通用读取函数

对SC2来说,XML数据文件中,XML元素的XML属性,与该XML元素的子XML元素其实是等价的,因此我在那篇规范文中将他们统称为“属性”。


.......

第一次看到教程的时候还不能理解头目所说的所有的话,这句话也是后来才发现的。

就如头目举例说的
[codes=xml]
<InfoArray index="Build1" Unit="TechLab" Time="30">

<InfoArray index="Build1">
            <Unit value="TechLab"/>
            <Time value="30"/>
</InfoArry>
[/codes]
上面两句是完全等同的。

在更早的教程里面头目已经把id、default、value三个属性排除在这个描述之外了,不过我现在有一个疑问,下面的写法好像是不正确的,不过我倒是不确定我是否针对这个写法做过实验,忘掉了,该死。


<CAbilBuild default="1" id="TerranAddOns">
    <Alert value="AddOnComplete"/>
</CAbilBuild>
写成
<CAbilBuild default="1" id="TerranAddOns" Alert="AddOnComplete">
</CAbilBuild>

请头目帮我解答下这个疑问吧。
回复

使用道具 举报

发表于 2012-3-3 13:52:57 | 显示全部楼层
真讨厌
回复

使用道具 举报

发表于 2012-3-9 23:21:25 | 显示全部楼层
第三个
回复

使用道具 举报

发表于 2012-3-12 10:37:12 | 显示全部楼层
模板数据通用读 滴几个i饿了?
回复

使用道具 举报

发表于 2012-8-12 10:06:39 | 显示全部楼层
玻璃渣什么时候公布所有的函数啊
回复

使用道具 举报

发表于 2012-8-12 23:43:33 | 显示全部楼层

回 Renee 的帖子

Renee:
要是这都称不上足以,我是已经不知道ls的足以概念素啥咯。

而且这不是方便不方便的问题,事实就是war3根本做不到。
比如...
1.JPG
这是一个普通的unitdata数据表,经过下面几道工序
2.JPG
填零...
3.JPG
这一类数据可以复制到txt再复制回来用excel文本向导进行分列处理
4.JPG
再插入会原表中
5.JPG
将其他列简单处理下...
丢进记事本,将<tab>、_ 、-  什么的替换掉,弄成一个合乎jass语法的东西...
6.JPG
再手写一个输入函数... 把这些数据存好,游戏里就可以调用了...
XXXunitfunc.txt其实也是用这个方法处理...
回复

使用道具 举报

发表于 2012-8-12 23:46:01 | 显示全部楼层

回 Conflux 的帖子

Conflux:

比如...

这是一个普通的unitdata数据表,经过下面几道工序

.......
未命名.gif
回复

使用道具 举报

发表于 2012-8-12 23:47:38 | 显示全部楼层
7.JPG
不过是用等号来分列
8.JPG
弄到这一步以后,参考楼上即可...
回复

使用道具 举报

发表于 2012-8-13 00:02:47 | 显示全部楼层
>,< 不过war3为什么不能直接读取呢... 这样子又蠢又笨又低效... 还一点也不美观的说
回复

使用道具 举报

发表于 2012-8-13 00:15:08 | 显示全部楼层
小白素小白!
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-24 14:52 , Processed in 0.227201 second(s), 20 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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