# 生物管理接口 Creature

继承自 Actor

在使用生物接口前需先创建生物管理对象,方法如下:

local Creature = class.Creature.new()

具体函数名及描述如下:

序号 函数名 函数描述
1 getAttr(...) 生物属性设置获取
2 setAttr(...) 生物属性获取
3 isAdult(...) 判断该生物是否成年
4 setOxygenNeed(...) 设置是否依赖氧气
5 getTamedOwnerID(...) 获取驯养主ID
6 setPanic(...) 设置是否正在惊慌
7 setAIActive(...) 设置AI是否生效
8 getActorID(...) 获取生物actorID
9 getActorName(...) 获取生物名称
10 addModAttrib(...) 增加模组属性
11 getModAttrib(...) 获取模组属性
12 setTeam(...) 设置生物队伍
13 getTeam(...) 获取生物队伍
14 getMaxFood(...) 获取最大饥饿度
15 getFood(...) 获取饥饿度
16 setFood(...) 设置饥饿度
17 getHpRecover(...) HP恢复
18 getMaxOxygen(...) 最大氧气值
19 getWalkSpeed(...) 行走速度
20 getSwimSpeed(...) 游泳速度(水中速度)
21 getJumpPower(...) 跳跃力
22 getMass(...) 重量
23 getDodge(...) 闪避
24 getPunchAttack(...) 近程攻击
25 getRangeAttack(...) 远程攻击
26 getPunchDefense(...) 近程防御
27 getRangeDefense(...) 远程防御
28 setMaxHp(...) 设置血量
29 setHP(...) 设置血量
30 setHpRecover(...) 设置HP恢复
31 setOxygen(...) 设置氧气
32 setWalkSpeed(...) 设置行走速度
33 setSwimSpeed(...) 设置游泳速度(水中速度)
34 setJumpPower(...) 设置跳跃力
35 setDodge(...) 设置闪避
36 setPunchAttack(...) 设置近程攻击
37 setRangeAttack(...) 设置远程攻击
38 setPunchDefense(...) 设置近程防御
39 setRangeDefense(...) 设置远程防御

# getAttr

local result = Creature:getAttr(objid, attrtype)

# setAttr

local result = Creature:setAttr(objid, attrtype, val)

# isAdult

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:判断该生物是否成年
  • 具体使用案例如下:
local result = Creature:isAdult(objId)
if result == ErrorCode.OK then print("该生物已成年") end

# setOxygenNeed

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:设置是否依赖氧气
  • 具体使用案例如下:
local result = Creature:setOxygenNeed(objId, true)
if result == ErrorCode.OK then print("该生物依赖氧气生存!") end

# getTamedOwnerID

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:获取驯养主ID
  • 具体使用案例如下:
local result, ownerId = Creature:getTamedOwnerID(objId)
if result == ErrorCode.OK and ownerId ~= 0 then
	local result, nickName = Player:getNickname(ownerId)
	if result == ErrorCode.OK then print('玩家<'+nickName+'>的宠物。。。')
end

# setPanic

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:设置是否正在惊慌
  • 具体使用案例如下:
local result = Creature:setPanic(objId, true)
if result == ErrorCode.OK then print("该生物正在恐慌中") end

# setAIActive

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:设置AI是否生效
  • 具体使用案例如下:
local result = Creature:setAIActive(objId, true)
if result == ErrorCode.OK then print("该生物的AI已经生效") end

# getActorID

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:获取生物actorID
  • 具体使用案例如下:
local wolfId, dogId = 3407, 3408 --狼/狗的资源Id
local result, actorId = Creature:getActorID(objId)
if result == ErrorCode.OK then
	if actorId == dogId then print("The creature is A Dog!") end
	if actorId == wolfId then print("The creature is A Wolf!") end
end

# getActorName

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:获取生物名称
  • 具体使用案例如下:
local result = Creature:getActorName(objid)

# addModAttrib

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:增加模组属性
  • 具体使用案例如下:
local modAttrType = MODATTRIB_TYPE.MODATTR_MOVE_SPEED
local result = Creature:addModAttrib(objid, modAttrType, 5)
if result == ErrorCode.OK then print('增加怪物移动速度') end

# getModAttrib

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:获取模组属性
  • 具体使用案例如下:
local modAttrType = MODATTRIB_TYPE.MODATTR_MOVE_SPEED
local result, modAttrVal = Creature:getModAttrib(objid, modAttrType)
if result == ErrorCode.OK then print('怪物的移动速度为', modAttrVal) end

# setTeam

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:设置生物队伍
  • 具体使用案例如下:
local result = Creature:setTeam(objids, teamid)

# getTeam

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:获取生物队伍
  • 具体使用案例如下:
local result = Creature:getTeam(objid)

# getMaxFood

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:获取最大饥饿度
  • 具体使用案例如下:
local result = Creature:getMaxFood(objid)

# getFood

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:获取饥饿度
  • 具体使用案例如下:
local result = Creature:getFood(objid)

# setFood

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:设置饥饿度
  • 具体使用案例如下:
local result = Creature:setFood(objid, val)

# getHpRecover

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:HP恢复
  • 具体使用案例如下:
local result = Creature:getHpRecover(objid)

# getMaxOxygen

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:最大氧气值
  • 具体使用案例如下:
local result = Creature:getMaxOxygen(objid)

# getWalkSpeed

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:行走速度
  • 具体使用案例如下:
local result = Creature:getWalkSpeed(objid)

# getSwimSpeed

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:游泳速度(水中速度)
  • 具体使用案例如下:
local result = Creature:getSwimSpeed(objid)

# getJumpPower

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:跳跃力
  • 具体使用案例如下:
local result = Creature:getJumpPower(objid)

# getMass

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:重量
  • 具体使用案例如下:
local result = Creature:getMass(objid)

# getDodge

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:闪避
  • 具体使用案例如下:
local result = Creature:getDodge(objid)

# getPunchAttack

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:近程攻击
  • 具体使用案例如下:
local result = Creature:getPunchAttack(objid)

# getRangeAttack

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:远程攻击
  • 具体使用案例如下:
local result = Creature:getRangeAttack(objid)

# getPunchDefense

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:近程防御
  • 具体使用案例如下:
local result = Creature:getPunchDefense(objid)

# getRangeDefense

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:远程防御
  • 具体使用案例如下:
local result = Creature:getRangeDefense(objid)

# setMaxHp

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:设置血量
  • 具体使用案例如下:
local result = Creature:setMaxHp(objid, val)

# setHP

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:设置血量
  • 具体使用案例如下:
local result = Creature:setHP(objid, val)

# setHpRecover

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:设置HP恢复
  • 具体使用案例如下:
local result = Creature:setHpRecover(objid)

# setOxygen

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:设置氧气
  • 具体使用案例如下:
local result = Creature:setOxygen(objid, val)

# setWalkSpeed

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:设置行走速度
  • 具体使用案例如下:
local result = Creature:setWalkSpeed(objid, val)

# setSwimSpeed

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:设置游泳速度(水中速度)
  • 具体使用案例如下:
local result = Creature:setSwimSpeed(objid, val)

# setJumpPower

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:设置跳跃力
  • 具体使用案例如下:
local result = Creature:setJumpPower(objid, val)

# setDodge

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:设置闪避
  • 具体使用案例如下:
local result = Creature:setDodge(objid, val)

# setPunchAttack

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:设置近程攻击
  • 具体使用案例如下:
local result = Creature:setPunchAttack(objid, val)

# setRangeAttack

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:设置远程攻击
  • 具体使用案例如下:
local result = Creature:setRangeAttack(objid, val)

# setPunchDefense

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:设置近程防御
  • 具体使用案例如下:
local result = Creature:setPunchDefense(objid, val)

# setRangeDefense

  • 参数及类型:
  • 返回值及类型:
  • 该方法的主要作用:设置远程防御
  • 具体使用案例如下:
local result = Creature:setRangeDefense(objid, val)
上次更新: 2019-11-22 11:51:08