队伍
- 类型:TeamChild
简介
有需要队伍玩法的游戏可增加队伍对象,设置游戏拥有的队伍数量和队伍人数、队伍关系等。
作用
TeamChild对象是当游戏中需要分组或队伍时可以增加的对象,将玩家分成几组互相对抗或竞争的队伍。
创建和使用
TeamChild对象只会在玩家主动增加时创建,可以通过编辑器或代码创建。
当有新的玩家连接入游戏时,玩家的GameUi中会增加一个让你选择队伍的UI,在选择完成后会将玩家实体加入到队伍当中,队伍中的玩家实体对象会被删除。
玩家可以通过下列方法操作TeamChild对象:
- 利用队伍对象的
AddPlayer(PlayerId)
函数来将给定的对象加入队伍中。 - 利用队伍对象的
RemovePlayer(PlayerId)
函数将给定的对象从队列中移除。
其他相关
队伍列表Team
属性
TeamColor 队伍颜色 Vector3
队伍的颜色
TeamName 队伍名称 string [只读]
队伍的名称
StartSpawnRelation 关联出生点 RWObject
点击选择关联的出生点
TeamNumber 队伍最大人数 int
队伍中最大的人数,队伍最大人数的总和不能少于游戏最小人数
TeamId 队伍id int [只读]
队伍id
Players 队员列表 Array [只读]
队员列表
继承自RWObject:
Name 名称 string
该对象的自定义名称
ClassName 类型 string
该对象对应的对象类型名称
Parent 父级 RWObject
该对象的父级对象
函数
AddPlayer(PlayerId)
添加给定的玩家
RemovePlayer(PlayerId)
移除给定的玩家
继承自RWObject:
DelAllChild()
删除所有子对象
Available()
检查对象是否可用
Clone(parent)
复制自身,若有参数则以参数为父级
Destroy()
删除自身
GetAncestorByName(Name)
通过对象名字寻找父级对象
GetAncestorByClassName(className)
通过对象类型寻找父级对象
GetChildByName(Name,recursive)
通过对象名字寻找子级对象
GetChildByClassName(className,recursive)
通过对象类型寻找子级对象
GetAllChild()
寻找自身所有子级对象,并作为一个列表返回
GetAllDescendant()
递归寻找自身所有后代,并作为一个列表返回
IsAncestor(TarObj)
判断自身是否为目标对象的祖先
IsDescendant(TarObj)
判断自身是否为目标对象的后代
WaitForChild(childName,timeout)
寻找自身的子对象。如果没有子对象,在没有填写timeout参数时,会暂停进程直到找到子对象;如果填写了timeout参数,会根据参数时间暂停进程,超出参数时间后,进程照常进行
Child(childName)
根据给定的名字寻找自身的子对象
Equals(TarObj)
判断自身是否为目标对象,结果为真返回True,结果为假返回False;注意克隆、新建同类型、同名对象,equal结果均为假
IsClass(className)
判断自身是否为给定的对象类型
事件
PlayerJoined(Player)
添加给定的玩家触发
PlayerRemoved(Player)
移除给定的玩家触发
继承自RWObject:
Destroyed()
删除自身时触发
ChildAdded(childobject)
添加子对象时触发
ChildRemoved(childobject)
移除子对象时触发
DescendantAdded(descendantobject)
添加后代时触发
DescendantRemoved(descendantobject)
移除后代时触发
AncestryChanged(AncestryChanged)
祖先变更时触发