首先提醒大家: Jass2是区分大小写的, 如ABcd和ABCD是不一样的.
变量大家不陌生吧?WE中,变量是一个很实用、常用的东西…不多说了,开始教程
Jass中变量分两类,一类是全局变量,一类是局部变量
两者最大的区别是:全局变量在任何部分都能调用,局部变量只能在本次执行中调用。因此注意:使用局部变量一定要排泄。至于如何排泄,本章末尾会讲的
先放上JASS变量类型参照表
WE变量名 Jass变量类型 空值
布尔 boolean false
可破坏物 destructable null
对话 dialog null
按钮 Buttonbutton null
漂浮文字 texttag null
整数 integer 0
物品 item null
排行榜 leaderboard null
玩家 player null
玩家组 force null
点 location null
实数 real 0.00
地区 rect null
特效 effect null
字符串 string null
地形 terraindeformation null
计时器 timer null
计时器窗口 timerdialog null
单位 unit null
单位组 group null
哈希表 hashtable null
注意:
WE中的Order(命令) , Ability(技能) , Unit Type(单位类型), Destructible type(可破坏物类型) 和 Item type(物品类型) 在JASS中对应的变量类型实际上是integer。
可以用单引号'Xxxx'(Xxxx为在World Editor用View as raw data(以行数据查看)中看到的代码)表示这些类型的值
变量要使用必须先声明,全局变量与局部变量声明方式也不一样,全局变量有两种声明方式
第一种,是通过ctrl+b的对话框进行声明,这个不多说,和T中使用差不多
第二种是以Jass声明,格式如下:
globals
变量类型 变量名 //无初始值
变量类型 变量名=初始值 //有初始值
变量类型 array 变量名 //数组变量
endglobals
比如申明名为i的全局整数变量,有以下几种方式:
globals
integer i //声明一个为i的全局整数变量
integer i=0 //声明一个为i的全局整数变量并赋值为0
integer array i //声明一个为i的全局数组整数变量
endglobals
注:在ctrl+b中声明的变量在Jass中调用需要加udg_前缀
局部变量声明方式:
local 变量类型 变量名 //无初始值
local 变量类型 变量名=值 //有初始值
local 变量类型 array 变量名 //数组变量
比如申明名为i的局部整数变量,有以下几种方式:
local integer i //声明一个为i的局部整数变量
local integer i=0 //声明一个为i的局部整数变量并赋值为0
local integer array i //声明一个为i的局部数组整数变量
注意:
1) 不论是全局变量还是局部变量, 必须在程序开始部分首先声明.
即是全局变量声明总是在程序文件的最前端,
而局部变量声明总是在函数(触发)的最前面.
2) 在WE的循环GUI语句 For Loop (Integer A)和For Loop (Integer B)中的(Integer A)(Integer B)都是全局变量
****************end***********************
变量大家不陌生吧?WE中,变量是一个很实用、常用的东西…不多说了,开始教程
Jass中变量分两类,一类是全局变量,一类是局部变量
两者最大的区别是:全局变量在任何部分都能调用,局部变量只能在本次执行中调用。因此注意:使用局部变量一定要排泄。至于如何排泄,本章末尾会讲的
先放上JASS变量类型参照表
WE变量名 Jass变量类型 空值
布尔 boolean false
可破坏物 destructable null
对话 dialog null
按钮 Buttonbutton null
漂浮文字 texttag null
整数 integer 0
物品 item null
排行榜 leaderboard null
玩家 player null
玩家组 force null
点 location null
实数 real 0.00
地区 rect null
特效 effect null
字符串 string null
地形 terraindeformation null
计时器 timer null
计时器窗口 timerdialog null
单位 unit null
单位组 group null
哈希表 hashtable null
注意:
WE中的Order(命令) , Ability(技能) , Unit Type(单位类型), Destructible type(可破坏物类型) 和 Item type(物品类型) 在JASS中对应的变量类型实际上是integer。
可以用单引号'Xxxx'(Xxxx为在World Editor用View as raw data(以行数据查看)中看到的代码)表示这些类型的值
变量要使用必须先声明,全局变量与局部变量声明方式也不一样,全局变量有两种声明方式
第一种,是通过ctrl+b的对话框进行声明,这个不多说,和T中使用差不多
第二种是以Jass声明,格式如下:
globals
变量类型 变量名 //无初始值
变量类型 变量名=初始值 //有初始值
变量类型 array 变量名 //数组变量
endglobals
比如申明名为i的全局整数变量,有以下几种方式:
globals
integer i //声明一个为i的全局整数变量
integer i=0 //声明一个为i的全局整数变量并赋值为0
integer array i //声明一个为i的全局数组整数变量
endglobals
注:在ctrl+b中声明的变量在Jass中调用需要加udg_前缀
局部变量声明方式:
local 变量类型 变量名 //无初始值
local 变量类型 变量名=值 //有初始值
local 变量类型 array 变量名 //数组变量
比如申明名为i的局部整数变量,有以下几种方式:
local integer i //声明一个为i的局部整数变量
local integer i=0 //声明一个为i的局部整数变量并赋值为0
local integer array i //声明一个为i的局部数组整数变量
注意:
1) 不论是全局变量还是局部变量, 必须在程序开始部分首先声明.
即是全局变量声明总是在程序文件的最前端,
而局部变量声明总是在函数(触发)的最前面.
2) 在WE的循环GUI语句 For Loop (Integer A)和For Loop (Integer B)中的(Integer A)(Integer B)都是全局变量
****************end***********************
