(转载)虚幻引擎3--【UnrealScript教程】章节一:5.boolean

UnrealScript有很多数据类型,选择用什么数据类型取决于我们想做什么。

因为百科已经写的很详细了,有的地方我就不说那么多了。

 

变量
变量类型
内置类型 (Built-in types)
这里有一些在 UnrealScript 中宣告变量的例子:
var int a; // 宣告一个名称为"A"的整数变量。
var byte Table[64]; // 宣告一个长度64的静态 1-byte 阵列。
var string PlayerName; // 宣告一个名称为"PlayerName"的字串变量。
var actor Other; // 实体化 Actor 类别,并命名为"Other"。
var() float MaxTargetDist; // 宣告一个名称为"MaxTargetDist"的浮点数变量,并且它的值可以从 UnrealEd 的属性窗口中修改。
变量在 UnrealScript 能出现在两种地方:实体变量,它可以在整个类别内使用,在宣告完类别或 struct 后立即出现。局部变量,出现在函数中,只有在函数执行时有效。实体变量使用关键字 var 宣告。局部变量用关键字 local 宣告,
但在声明局部变量的时候,必须在声明全部局部后,才能编写功能函数.
以下是 UnrealScript 中支持的内置变量类型:
byte: 1-byte 值,范围从 0 到 255。
int: 32-bit 整数值。
bool: 布林运算值: 不是 true 就是 false。
float: 32-bit 浮点数值。
string: 一个字串(see Unreal Strings)。
constant: 不能修改的变量。
enumeration: 一个能够代表多个预先设定的整数值中的其中一个值。例如:在 Actor 内定义为 enumeration 的变量ELightType 描述了一个动态光源,它的值可以像 LT_None、LT_Pulse、LT_Strobe,等等...。

数组
数组使用以下语法声明:
var int MyArray[20];
UnrealScript仅支持一维数组,但你可以通过自己来设置 行/列 的数学处理来模拟多维数组。
动态数组
声明一个叫IntList的动态整型数组:
var array<int> IntList;
声明一个类型为 class<PlayerController> 、名称为Players的动态数组:
var array<class<PlayerController> > Players;

 

这节我们首先来讲解Boolean(布尔值)
布尔值是“真” true 或“假” false 中的一个。动作脚本也会在适当时将值 true 和 false 转换为 1 和 0。
我们来声明一个布尔变量
var bool bIsSunday;
var是我们要声明一个变量。什么变量?变量是bool。变量的名字是什么?变量名是bIsSunday。
(关于变量名的命名规则,大家可以百度下,大多数也是通用的。建议用简单易看懂的英文字母,实在不懂英文用拼音也行)
比如我的这个变量名,b? 即布尔, 是否。 Is 是 Sunday星期天,比如一看就知道意思是是否星期天了。
现在我们要把布尔值取到调试信息面板进行输出。

 

我们学过用`log进行输出,现在我们要用@号进行取变量名
这时代码应该是
Class MyUSGame extends actor
placeable;

var bool bIsSunday;

function postbeginplay()
{
`log("Is it Sunday today?"@bIsSunday);


@,我们贴吧常用的@某个人时用的符号 比如@电锯糖心 @乐乐570929726
他们就会过来,现在我要@变量名,它就会过来,取而代之显示的就是它的值。

 

好了我们编译一下


这时`log内” ”引号内内容原样输出,@后面的值显示,即False

为什么是FALSE如果真的是星期天那不应该是TRUE吗?

我们每次声明变量的时候它都会有一个默认的值,布尔的默认值就是FALSE

 

那么我们试着让它今天变成星期天

这时函数应该是
function postbeginplay()
{
bIsSunday=true;
`log("Is it Sunday today?"@bIsSunday);
}
编译运行后


如果看到True 那么今天就会变成星期天了

 

标识符和关键字
修饰符是程序员为他们想引用的项所取的名称,比如类、变量及函数名。在UnrealScript中,所有的修饰符都是大小写不敏感的,这意味着RegenPerSecond、REGENperSECOND和 ReGeNpErSeCoNd都被认为是同一个标识符。
当提到标示符名称时,有几个需要知道的规则:
1.所有的标示符必须以字母或下划线(_)开始。
2.后面可以跟随任何字母、数字或下划线的组合物。
3.标识符不能包含空格。
4.标示符不能和关键字一样。
有效标识符的几个例子:

___ValidIdentifierValid_IdentifierValid123Identifier456
无效标识符的几个例子:

3_InvalidInv@lidInvalid Identifierclass
关键字是编译器保留的特殊单词,它们对应着特定的功能。在我们的示例脚本中,我们看到了几个不同的关键字:class function var defaultproperties。和标识符一样,关键字也是大小写不敏感的。

转载于:https://www.cnblogs.com/wodehao0808/p/6104641.html

UnrealScript语言参考 介绍  快速链接  本文档的目的  UnrealScript的设计目标  虚幻引擎3中UnrealScript的新功能  代码结构示例  Unreal虚拟机  对象层次 o 类 变量 变量类型  内置类型  集合数据类型  Unreal类型  变量修饰符  可编辑性  数组 Structs  修饰符  枚举  常量  Object和actor引用变量  类引用变量 表达式  赋值  在类之间转换对象引用 函数  声明函数  函数参数修饰符  函数重载  高级函数修饰符 控制结构 循环结构  循环  Do循环  While 循环  Continue  Break 选择结构  If-Then-Else语句  Case语句  Goto 语言功能  内置的操作符和它们的优先级 通用函数  创建对象  整型函数  浮点型数据函数  字符串函数  Vector函数  计时器函数  调试函数  UnrealScript处理器 UnrealScript工具和使用  Script Profiler(脚本分析器)  脚本调试器  虚幻开发环境(UDE) 高级的语言功能  计时器 状态  状态概述  状态标签和Latent函数  状态继承和范围规则 高级的状态编程  状态栈  Replication(复制)  Iteration(迭代)(ForEach)  函数调用限制符  在一个变量类中访问静态函数 变量的默认值  访问变量的默认值  通过一个类的引用来访问变量的默认值 使用defaultproperties(默认属性)语句块指定默认值  语法  Struct默认值 动态数组  长度变量  迭代动态数组  接口类  函数Delegates  Native类 元数据支持  元数据概要  使用多个元数据说明  提供的元数据说明 高级技术问题  UnrealScript的实现  UnrealScript的二进制兼容问题  技术注意事项  UnrealScript编程策略
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值