模拟城市中文网

 找回密码
 入住
搜索
查看: 2386|回复: 3

对插件做了一点UI的改动并邀探讨

[复制链接]
发表于 2013-1-23 14:17 | 显示全部楼层 |阅读模式
上回rszxh提到了LTEXT FILE文件中关于对游戏引用的观点,目前本人还没有什么经验,对里面的参数如何引用还一无所知,只知道了两个公式
$game.g_XXX$用来引用全局变量
#game.g_XXX#用来引用类常量(人口办公室的实例)
下面是对一个插件的初步改动,里面引用了类常量,但实质是完全复制了人口办公室的参数和引用,因为不知道该如何引用及引用的对象都有哪些,只看到了这个population的对象。

本来想对"上访人数、项目审批”使用全局变量引用,一开始尝试写
$game.g_city_cirme$以便动态表示上访人数,crime表示城市的罪犯数,测试后不行,又无法知道除了population之外还有哪些可以引用,只好复制人口办公室的那个population了,项目审批一栏同样如此。不同之处只是一个引用了IH的,一个是CO3的。
希望插件高手多予以指导。
下面是附件,有兴趣可以拿来研究。这个是LOT档,下载后放入原先的“霓虹灯系列第三季市政府”的文件夹中。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?入住

x
发表于 2013-1-23 15:03 | 显示全部楼层
不好意思,可能上个帖子我说的有点问题,导致了你的误解
ltext中对参数的调用,使用##标记,调用通常有两种:
①形如#game.xxxxx#。写过游戏的人多数都会晓得,通常会定义一个全局的实例叫$game,这里引用的是$game的实例变量。但通常情况下,$game只有一个(或者说所属的类有且只有这样一个实例),所以可以认为引用的是全局变量。至于可以引用哪些变量,迄今没有公开的文档,可以通过两条路去寻找。
  其一是找现有的UI File,游戏里不仅建筑有UI File,游戏界面也有,尤其去找那些描述控制面板图表的UI File引用的LText,应该会找到一些;
  其二是找LUA File,当然这个前提是你能读懂script。打个比方,0xca63e2a3-0x4a5e8ef6-0xff1d93c8的第二段:
    a.trigger  = "game.g_pollution_funding_p > tuning_constants.FUNDING_HIGH and (game.g_watered_building_count+game.g_unwatered_building_count > 50)" --    added building count check to keep this message from coming up at city start
   这里game打头的几个参数应该可以引用的,当然含义得靠注释去猜了。
 当然,这里的全局实例估计不限于$game。
②形如#0x11111111#。有没有0x我记不清了,但肯定是十六进制表示。这里引用的是LOT的静态参数。我们制作插件,定义的LOT可以在城市里建造n个,那么LOT就是类,根据它建造出的每一个建筑就是实例(这里应该可以理解我说的类和实例的区别了吧)。那么LOT的静态参数就可以认为是类常量。至于可以引用哪些,感觉上是LOT-Building中的property都可以,当然这个没验证过,八位的十六进制参数就是Property的id。

评分

参与人数 1威望 +1 收起 理由
lrdcq + 1 热心助人

查看全部评分

回复 支持 反对

使用道具 举报

发表于 2013-1-23 15:53 | 显示全部楼层
补充一点
GID 4A5E8EF6 IID FFBF9CCF  的lua里面声明了大量的全局函数和变量
如果无误的话这应该是全部的可用项了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-1-24 22:04 | 显示全部楼层

回复 3# 的帖子

正在慢慢研究,还需要时间,感谢两位的指导。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 入住

本版积分规则

小黑屋|手机版|模拟城市中文网

GMT+8, 2024-5-6 00:13 , Processed in 0.034661 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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