找回密码
 点一下
查看: 1049|回复: 5

自定义预设变量的预设值怎么弄

[复制链接]
发表于 2014-3-2 22:10:35 | 显示全部楼层 |阅读模式

如图,我定义了一个预设变量,里面放了两个预设值
捕获.PNG

在设定变量的界面中能看到这两个预设值
捕获2.PNG


问题是:选完预设值后,提示变量错误(参数无效,可能有不正确的变量名)
目的:在自定义函数输入参数时,可(必须)直接从“预设”中选择值填入(就像原生的函数一样)。现在操作上已经能选了,就是上面的这个错误。

发表于 2014-3-3 18:05:29 | 显示全部楼层
既然都告诉你了“可能有不正确的变量名”,那就好好去检查变量名。比如都改成纯字母什么的。
回复

使用道具 举报

 楼主| 发表于 2014-3-4 00:19:34 | 显示全部楼层
今天晚上的成果,达到能应用的范围了。

目前只明确的知道自定义(整数)可以使用。如图,写好预设的名称(值里的攻击力等)后,对应的每个 脚本值 中填整数(这是变量真实值)
捕获.PNG

这是函数调用的时候,只要函数中的参数中类型选择自定义的类型(我的是“卡牌字段”),就可以在调用函数的时候从预设中选择变量的值了(也只能从预设里选)。
捕获2.PNG


这是,源。可以看到(图小不怪我,右下角,对比上图),名称选择的是预设:攻击力,实际的填入的值是2。就是定义变量时,预设值名称对应的脚本值。这样就能给函数传输特定的参数了。
捕获3.PNG


对比:
通用方法,函数的参数选择整数,调用函数时自己知道每个数值代表的意思,准确填写。比如此例中,调用攻击力的值就自己填2进去。
此法,相当于做了个下拉表单,并且能给数值命名,对于有限个数值的时候很好用。比如我用这个来做卡牌,卡牌的字段是固定的,通过直接选择的方式很直观的写代码。防止1、记忆错乱,4代表这个,5又代表啥了?等等,先查查。2、填写错误,没报错提醒,debug的时候头疼了。等等。

其实整个图形编程系统都是在这个思想基础上做出来的。能自己再定义当然是极好的(我认为)。

目前只知道整数类型肯定能行,如果需要其他的类型的话,可以再通过反向定值函数来完成,比如2代表“单位类型-机枪兵”,那么参数得到2这个值后,再定位单位类型变量就好了。

对于原来的问题,就是发帖时的报错,新情报如下。
捕获4.PNG


捕获5.PNG


以上两图是赋值时的对比代码。
观察得出结论,数值能成功,是因为赋值时数值是可以填在脚本里的。
而其他,这里是文本则是一个链接,“param/Value/lib_^_^”
所以在定义文本变量时,脚本值里直接填文字的话,就出现变量名的错误了。
我很想知道这链接和链接指向的值如何主动创建。这样的话应该就能定义全种类的变量了。
求高手~~
回复

使用道具 举报

发表于 2014-3-4 10:39:46 | 显示全部楼层
本帖最后由 yxxiaobin 于 2014-3-4 10:43 编辑

预设类型用过几次,印象中整数肯定没问题,布尔型貌似也是可以的,其他的没用过,但理论上也应该没有任何问题。变量名错误什么的完全没有遇到过,因为星际2允许汉字,所以英文名还是汉字名纯属个人习惯了,但是如果不是英文很菜的话,最好使用英文,因为汉字会被翻译成一大串字母,比较臃肿。楼主遇到的问题,我觉得最大的可能是你的参数接受类型和定义类型不一致导致的。
回复

使用道具 举报

发表于 2014-3-4 13:49:38 | 显示全部楼层
把地图用MPQ工具打开,路径在GameStrings.txt里定制
回复

使用道具 举报

发表于 2014-3-4 18:18:32 | 显示全部楼层
四夕水的意见是,只要你认识26个字母,就不应该在触发器中使用中文。就算使用拼音也比直接写汉字要好很多。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-10-1 08:10 , Processed in 0.194199 second(s), 22 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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