添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

这些表函数同样可以参考Lua函数库(他们都是以 math. 开头 , 详情参阅 数学库 了解更多信息).

三角函数是没有参考的, 包括角度->弧度的转换.暴雪的版本使用角度.而Lua的标准数学库则使用的弧度.

abs (value) - 返回当前数值的绝对值

acos (value) - 返回此角度值的弧余弦值.

asin (value) - 返回此角度值的弧正弦值

atan (value) - 返回此角度值的弧正切值

atan2 (y, x) - 在角度中, 返回Y/X的弧正切值.

ceil (value) - 返回一个整数, 不管小数点后面是多少, 整数部分都进1

cos (degrees) - 返回角度的余弦值

deg (radians) - 弧度转换角度

exp (value) - 返回此值的指数值

floor (value) - 返回此值的整数值

frexp (num) - 返回当前数字小数点后的数值以及小数点后的位数

ldexp (value, 倍数) - 输出此数值的倍数

log (value) - 返回此值的自然对数 (以e为底数)

log10 (value) - 返回以10为底数的值

max (value[, values...]) - 在一堆值中查找最大值

min (value[,values...]) - 在一堆值中查找最小值

mod (value,modulus) - 返回此值的余数

rad (degrees) - 角度转换弧度

random ([ [lower,] upper]) - 返回一个随机数字 (可选界限为整数值)

randomseed (seed) - 为伪随机数字生成器设定种子

sin (degrees) - 返回当前角度的正弦值

sqrt (value) - 返回数值的平方根值(比如100的平方根为10)

tan (degrees) - 返回当前角度的正切值

这些表函数同样可以参考Lua字符串库(他们都是以 string. 开头 , 参考 字符串库 了解更多信息)

format (formatstring[, value[, ...]]) - 格式化字符串

gsub (string,pattern,replacement[, limitCount]) - 全局替换

strbyte (string[, index]) - 转换字符串为整数值(可以指定某个字符).

strchar (asciiCode[, ...]) - 转换整数为相对应的字符

strfind (string, pattern[, initpos[, plain]]) - 在一个指定的目标字符串中搜索指定的内容(第三个参数为索引),返回其具体位置.

strlen (string) - 返回当前字符串的字符数

strlower (string) - 将字符串的字母转换为小写格式

strmatch (string, pattern[, initpos]) - 与strfind不同的是,macth返回的是具体值,而find返回的是此值的位置

strrep (seed,count) - 返回一个字符串种子副本的个数

strsub (string, index[, endIndex]) - 返回字符串指定位置的值.

strupper (string) - 将字符串的字母转为大写格式

tonumber (arg[, base]) - 若参数能转为数字则返回一个数值.可以指定转换的类型.默认为十进制整数

tostring (arg) - 转换参数为字符串

下面的字符串函数是wow独有的

strtrim (string) - 去除字符串前后空格

strsplit (delimiter, string) - 分割字符串

strjoin (delimiter, string, string[, ...]) - 根据定界符将字符串连接起来

这些表函数同样可以参考Lua表库 (他们都是以" table. 开头", 查阅 Table库 f了解更多信息).

也知道, 很多表都被设计为只有数字索引, 开始于1并且没有结尾(如like {[1] = "foo", [3] = "bar"} --- [2]是不存在的所以为nil值).工作时,与任何其他表并没有差别,但很可能会产生意想不到的结果. 在编写lua中, 这个也就是通常所说的bug

foreach (table,function) - 为表中的每个元素执行函数

foreachi (table,function) - 为表中的每个元素执行函数, 按顺序访问(不推荐, 可以使用ipairs代替)

getn (table) - 当作为一个聊表时, 返回当前表的大小. 现在已经废弃了, 你可以直接使用#符号.使用#(table)代替table.getn(table)

ipairs (table) - 返回一个迭代型整数遍历表。

pairs (table) - 返回一个迭代遍历表

sort (table[, comp]) - 对一个数组进行排序, 还可以指定一个可选的次序函数

tinsert (table[, pos], value) - 将一个元素插入指定的位置(默认在表的最后)

tremove (table[, pos]) - 删除指定位置的元素(默认表最后一个)

Bit Functions

魔兽世界包含了Lua BitLib 库(他们都是以 " bit. "开头). 与C的位运算相同. 位运算库 并非Lua标准函数库的一部分, 但是在WoW 1.9中得到了应用

bit.bnot (a) - 返回一个a的补充

bit.band (w1,...) - 返回w的位与

bit.bor (w1,...) - 返回w的位或

bit.bxor (w1,...) - 返回w的位异或

bit.lshift (a,b) - 返回a向左偏移到b位

bit.rshift (a,b) - 返回a逻辑右偏移到b位

bit.arshift (a,b) - 返回a算术偏移到b位

bit.mod (a,b) - 返回a除以b的整数余数

Lua是一个脚本语言, 使用这些函数来对你的数据结构进行比对是十分慢的. 除非你有一个非常大的数据库以及需要保护的RAM使用, 保存你的信息到几个或个别的变量中.