Unit
单位
add_ability
(method) Unit:add_ability(type: y3.Const.AbilityType|y3.Const.AbilityTypeAlias, id: py.AbilityKey, slot?: y3.Const.AbilityIndex, level?: integer)
-> Ability?添加技能
@param type — 技能类型
@param id — 物编id
@param slot — 技能位
@param level — 等级
type:
| '隐藏'
| '普通'
| '命令'
| '英雄'add_ability_point
(method) Unit:add_ability_point(skill_point: integer)增加技能点
@param skill_point — 技能点
add_attr
(method) Unit:add_attr(attr_name: string|y3.Const.UnitAttr, value: number, attr_type?: string|y3.Const.UnitAttrType)增加属性
@param attr_name — 属性名
@param value — 属性值
@param attr_type — 属性类型,默认为“增益”
add_attr_gc
(method) Unit:add_attr_gc(attr_name: string|y3.Const.UnitAttr, value: number, attr_type: string|y3.Const.UnitAttrType)
-> GCNode增加属性
@param attr_name — 属性名
@param value — 属性值
@param attr_type — 属性类型
add_buff
(method) Unit:add_buff(data: Buff.AddData)
-> Buff?给单位添加魔法效果
add_exp
(method) Unit:add_exp(exp: number)增加经验值
@param exp — 经验
add_goods
(method) Unit:add_goods(tag_name: py.TabName, item_key: py.ItemKey)添加可贩卖的商品
@param tag_name — 标签名
@param item_key — 物品id
add_hp
(method) Unit:add_hp(hp: number)增加当前生命值
@param hp — 当前生命值
add_item
(method) Unit:add_item(item_id: py.ItemKey, slot_type?: y3.Const.ShiftSlotTypeAlias)
-> Item?单位添加物品
@param item_id — 物品id
@param slot_type — 槽位类型
slot_type:
| '物品栏'
| '背包栏'add_level
(method) Unit:add_level(level: integer)增加等级
@param level — 等级
add_mp
(method) Unit:add_mp(mp: number)增加当前魔法值
@param mp — 当前魔法值
add_multi_state
(method) Unit:add_multi_state(state_enum: integer)添加多个状态
使用 y3.const.UnitEnumState 中的枚举值
@param state_enum — 状态
add_state
(method) Unit:add_state(state_enum: integer|y3.Const.UnitEnumState)添加状态
@param state_enum — 状态名
add_state_gc
(method) Unit:add_state_gc(state_enum: integer|y3.Const.UnitEnumState)
-> GCNode添加状态
@param state_enum — 状态名
add_tag
(method) Unit:add_tag(tag: string)添加标签
@param tag — 标签
add_tech
(method) Unit:add_tech(tech_id: py.TechKey)单位添加科技
@param tech_id — 科技id
attack_move
(method) Unit:attack_move(point: Point, range?: number)
-> py.UnitCommand命令攻击移动
@param point — 点
@param range — 范围
@return — 命令
attack_target
(method) Unit:attack_target(target: Unit, range: number)
-> py.UnitCommand命令攻击目标
@param target — 目标
@param range — 范围
@return — 命令
attr_to_name
function Unit.attr_to_name(key: string)
-> 属性名字: string单位属性转单位属性名字
@param key — 属性key
blink
(method) Unit:blink(point: Point)传送到点
@param point — 点
break_mover
(method) Unit:break_mover()打断运动器
buy
(method) Unit:buy(unit: Unit, tag_num: py.TabIdx, item_key: py.ItemKey)从商店购买商品
@param unit — 单位
@param tag_num — 页签id
@param item_key — 物品id
can_blink_to
(method) Unit:can_blink_to(point: Point)
-> can_teleport: boolean能否传送到点
@param point — 点
@return can_teleport — 能否传送到点
can_visible
(method) Unit:can_visible(target_unit: Unit)
-> visibility: boolean是否可见
@param target_unit — 目标单位
@return visibility — 目标是否可见
can_walk_to
(method) Unit:can_walk_to(start_point: Point, end_point: Point)
-> is_reach: boolean是否寻路可达
@param start_point — 起始点
@param end_point — 终点
@return is_reach — 是否寻路可达
cancel_change_animation
(method) Unit:cancel_change_animation(replace_anim_name: string, bereplace_anim_name: string)取消动画替换
@param replace_anim_name — 动画名
@param bereplace_anim_name — 动画名
cancel_replace_model
(method) Unit:cancel_replace_model(model_id: py.ModelKey)取消模型替换
@param model_id — 模型id
cast
(method) Unit:cast(ability: Ability, target?: Destructible|Item|Point|Unit, extra_target?: Point)
-> py.UnitCommand命令发动技能
@param ability — 技能
@param target — 目标
@param extra_target — 额外目标
change_animation
(method) Unit:change_animation(replace_anim_name: string, bereplace_anim_name: string)替换动画
@param replace_anim_name — 动画名
@param bereplace_anim_name — 动画名
change_owner
(method) Unit:change_owner(player: Player)改变所属玩家
@param player — 所属玩家
check_precondition_by_key
function Unit.check_precondition_by_key(player: Player, unit_key: py.UnitKey)
-> unit_precondition: boolean单位类型前置条件是否通过
@param player — 玩家
@param unit_key — 单位类型
@return unit_precondition — 单位类型前置条件是否通过
clear_change_animation
(method) Unit:clear_change_animation(anim_name: string)重置动画替换
@param anim_name — 动画名
command
(method) Unit:command(command: py.UnitCommand)发布命令
@param command — 命令
create_illusion
function Unit.create_illusion(illusion_unit: Unit, call_unit: Unit, player: Player, point: Point, direction: number, clone_hp_mp: boolean)
-> Unit?创建幻象
@param illusion_unit — 幻象复制的单位
@param call_unit — 召唤单位
@param player — 玩家
@param point — 点
@param direction — 方向
@param clone_hp_mp — 复制当前的生命值和魔法值
create_unit
function Unit.create_unit(owner: Player|Unit, unit_id: py.UnitKey, point: Point, direction: number)
-> Unit创建单位
@param unit_id — 单位类型
@param point — 点
@param direction — 方向
custom_event_manager
EventManager?damage
(method) Unit:damage(data: Unit.DamageData)drop_item
(method) Unit:drop_item(item: Item, point: Point)
-> py.UnitCommand命令丢弃物品
event
fun(self: Unit, event: "单位-研发科技", callback: fun(trg: Trigger, data: EventParam.单位-研发科技)):Triggerevent_dispatch
(method) CustomEvent:event_dispatch(event_name: string, ...any)
-> any
2. any
3. any
4. any发起自定义事件(回执模式),与通知模式不同,允许插入结算。
可以接受到事件的返回值,有多处注册事件时会按照注册顺序调用,
当任何事件回调返回了非 nil 的值后,后续触发器将不再调用。
Obj:event_on('获取', function (trigger,...)
print('获取1')
return 1
end)
Obj:event_on('获取', function (trigger,...)
print('获取2')
return 2
end)
local result = Obj:event_dispatch('获取')
print('结果为:', result)以上代码会打印:
获取1
结果为: 1event_dispatch_with_args
(method) CustomEvent:event_dispatch_with_args(event_name: string, args: any, ...any)
-> any
2. any
3. any
4. any发起带事件参数的自定义事件(回执模式)
event_notify
(method) CustomEvent:event_notify(event_name: string, ...any)发起自定义事件(通知模式),同一个对象身上只会有一个正在执行的事件, 当发生插入结算时,后面的事件会进入队列
Obj:event_on('获得', function ()
print('触发获得')
print('发起移除前')
Obj:event_notify('移除') -- 实际业务中,可能你获得的buff把你自己杀死了,而死亡会清除buff
print('发起移除后')
end)
Obj:event_on('移除', function ()
print('触发移除')
end)
Obj:event_notify('获得')这段代码会打印:
触发获得
发起移除前
发起移除后
触发移除event_notify_with_args
(method) CustomEvent:event_notify_with_args(event_name: string, args: any[], ...any)发起带事件参数的自定义事件(通知模式)
event_on
(method) CustomEvent:event_on(...any)
-> Trigger注册自定义事件,当触发时,会执行回调函数。
Obj:event_on('输入', function (trigger, ...)
print('触发了输入事件', ...)
end)
Obj:event_notify('输入', '123', '456')以上会打印:
触发了输入事件 123 456注册时可以指定事件的参数:
Obj:event_on('输入', {'123'}, function (trigger, ...)
print('触发了输入事件', ...)
end)
Obj:event_notify('输入', 1) -- 不能触发事件
Obj:event_notify_with_args('输入', {'123'}, 2) -- 可以触发事件
Obj:event_notify_with_args('输入', {'456'}, 3) -- 不能触发事件
Obj:event_notify_with_args('输入', {'123', '666'}, 4) -- 可以触发事件exchange_item
(method) Unit:exchange_item(item: Item, type: y3.Const.ShiftSlotTypeAlias, index: integer)交换物品 如果目标位置是空的,则相当于把物品移动了过去
@param item — 物品
@param index — 槽位
type:
| '物品栏'
| '背包栏'find_ability
(method) Unit:find_ability(type: y3.Const.AbilityType|y3.Const.AbilityTypeAlias, id: py.AbilityKey)
-> ability: Ability?通过技能名寻找技能
@param type — 技能类型
@param id — 物编id
@return ability — 技能
type:
| '隐藏'
| '普通'
| '命令'
| '英雄'find_buff
(method) Unit:find_buff(buff_key: py.ModifierKey, index?: integer)
-> Buff?获取单位指定id的魔法效果
@param buff_key — 魔法效果id
@param index — 第几个
@return — 单位指定类型的魔法效果
follow
(method) Unit:follow(target: Unit, refresh_interval?: number, near_offset?: number, far_offset?: number, follow_angle?: number, follow_dead_target?: boolean)
-> py.UnitCommand命令跟随单位
@param refresh_interval — 刷新间隔
@param near_offset — 跟随距离
@param far_offset — 重新跟随距离
@param follow_angle — 跟随角度
@param follow_dead_target — 是否跟随死亡单位
get_abilities_by_type
(method) Unit:get_abilities_by_type(type: y3.Const.AbilityType)
-> Ability[]获取指定类型的所有技能
get_ability_by_seq
(method) Unit:get_ability_by_seq(seq: py.AbilitySeq)
-> Ability?根据技能序号获取技能
get_ability_by_slot
(method) Unit:get_ability_by_slot(type: y3.Const.AbilityType|y3.Const.AbilityTypeAlias, slot: integer)
-> ability: Ability?获得某个技能位的的技能
@param type — 技能类型
@param slot — 技能位
@return ability — 技能
type:
| '隐藏'
| '普通'
| '命令'
| '英雄'get_ability_point
(method) Unit:get_ability_point()
-> hero_ability_point_number: integer获取英雄的技能点数量
@return hero_ability_point_number — 英雄的技能点数量
get_affect_techs
(method) Unit:get_affect_techs()
-> py.TechKey[]获取单位受到影响的所有科技
get_alert_range
(method) Unit:get_alert_range()
-> alert_range: number获取单位警戒范围
@return alert_range — 单位警戒范围
get_all_items
(method) Unit:get_all_items()
-> item_group: ItemGroup单位的所有物品
@return item_group — 所有物品
get_armor_type
(method) Unit:get_armor_type()
-> DAMAGE_ARMOR_TYPE: integer获得护甲类型
@return DAMAGE_ARMOR_TYPE — 护甲类型
get_attack_type
(method) Unit:get_attack_type()
-> DAMAGE_ATTACK_TYPE: integer获得攻击类型
@return DAMAGE_ATTACK_TYPE — 攻击类型
get_attr
(method) Unit:get_attr(attr_name: y3.Const.UnitAttr, attr_type?: '实际'|'额外'|y3.Const.UnitAttrType)
-> number获取属性(默认为实际属性)
attr_type:
| '实际'
| '额外'get_attr_all_ratio
(method) Unit:get_attr_all_ratio(attr_name: string|y3.Const.UnitAttr)
-> number获取属性(最终加成)
get_attr_base
(method) Unit:get_attr_base(attr_name: string|y3.Const.UnitAttr)
-> attr_base: number获取单属性(基础)
@return attr_base — 单位基础属性类型的属性
get_attr_base_ratio
(method) Unit:get_attr_base_ratio(attr_name: string|y3.Const.UnitAttr)
-> number获取属性(基础加成)
get_attr_bonus
(method) Unit:get_attr_bonus(attr_name: string|y3.Const.UnitAttr)
-> number获取属性(增益)
get_attr_bonus_ratio
(method) Unit:get_attr_bonus_ratio(attr_name: string|y3.Const.UnitAttr)
-> number获取属性(增益加成)
get_attr_growth_by_key
function Unit.get_attr_growth_by_key(unit_key: py.UnitKey, attr_name: string|y3.Const.UnitAttr)
-> unit_attribute_growth: number获取单位属性成长
@return unit_attribute_growth — 单位属性成长
get_attr_other
(method) Unit:get_attr_other(attr_name: string|y3.Const.UnitAttr)
-> number获取属性(额外)
@param attr_name — 属性名
get_bar_cnt
(method) Unit:get_bar_cnt()
-> slot_number: integer获取单位物品栏的槽位数
@return slot_number — 单位物品栏的槽位数
get_buffs
(method) Unit:get_buffs()
-> Buff[]获取单位身上的魔法效果
@return — 魔法效果表
get_by_handle
function Unit.get_by_handle(py_unit: py.Unit)
-> Unit?通过py层的单位实例获取lua层的单位实例
get_by_id
function Unit.get_by_id(id: py.UnitID)
-> Unit?根据唯一ID获取单位。
get_by_res_id
function Unit.get_by_res_id(res_id: integer)
-> Unit获取摆放在场景上的单位
get_by_string
function Unit.get_by_string(str: string)
-> Unit?根据字符串获取单位,字符串是通过 tostring(Unit)
或是使用ECA中的“任意变量转化为字符串”获得的。
get_camp_id
(method) Unit:get_camp_id()
-> py.CampID获取单位阵营ID
get_cancel_alert_range
(method) Unit:get_cancel_alert_range()
-> cancel_alert_range: number获取单位取消警戒的范围
@return cancel_alert_range — 单位取消警戒的范围
get_collision_radius
(method) Unit:get_collision_radius()
-> collision_radius: number获取单位碰撞半径
@return collision_radius — 单位碰撞半径
get_common_attack
(method) Unit:get_common_attack()
-> Ability?comment 获取普攻技能
get_custom_event_manager
(method) CustomEvent:get_custom_event_manager()
-> EventManager?get_description
(method) Unit:get_description()
-> unit_description: string获取单位的描述
@return unit_description — 单位的描述
get_description_by_key
function Unit.get_description_by_key(unit_key: py.UnitKey)
-> des: string获取单位类型的描述
@param unit_key — 单位类型
@return des — 单位类型的描述
get_exp
(method) Unit:get_exp()
-> exp: integer获取单位当前的经验值
@return exp — 单位当前的经验值
get_exp_reward
(method) Unit:get_exp_reward()
-> exp: integer获取单位被击杀经验
@return exp — 单位被击杀经验
get_facing
(method) Unit:get_facing()
-> angle: number获取单位的朝向
@return angle — 单位的朝向
get_final_attr
(method) Unit:get_final_attr(attr_name: string|y3.Const.UnitAttr)
-> number获取最终属性
@param attr_name — 属性名
get_goods_cd
(method) Unit:get_goods_cd(page: py.TabIdx, index: integer)
-> cd: number获取商店商品的库存间隔
@param page — 页签id
@param index — 序号
@return cd — 默认间隔时间
get_goods_key
(method) Unit:get_goods_key(tag_index: py.TabIdx, item_index: integer)
-> item: py.ItemKey获取商店的物品id
@param tag_index — 页签
@param item_index — 序号
@return item — 物品类型
get_goods_remaining_cd
(method) Unit:get_goods_remaining_cd(page: py.TabIdx, index: integer)
-> recovery_time: number获取商店商品的剩余恢复时间
@param page — 页签id
@param index — 序号
@return recovery_time — 剩余恢复时间
get_goods_stack
(method) Unit:get_goods_stack(tag_index: py.TabIdx, item_key: py.ItemKey)
-> item_stock: integer获取商店的物品商品库存
@param tag_index — 页签
@param item_key — 物品类型
@return item_stock — 商品库存
get_height
(method) Unit:get_height()
-> height: number获取单位飞行高度
@return height — 单位飞行高度
get_hp
(method) Unit:get_hp()
-> current_unit_hp: number获取当前生命值
@return current_unit_hp — 当前生命值
get_icon
(method) Unit:get_icon()
-> image: py.Texture获取单位的头像
@return image — 单位的头像
get_icon_by_key
function Unit.get_icon_by_key(unit_key: py.UnitKey)
-> image: py.Texture获取单位类型的头像
@param unit_key — 单位类型
@return image — 单位类型的头像
get_id
(method) Unit:get_id()
-> integer获取唯一ID
get_illusion_owner
(method) Unit:get_illusion_owner()
-> unit: Unit?获取幻象的召唤者
@return unit — 幻象的召唤者
get_item_by_slot
(method) Unit:get_item_by_slot(type: y3.Const.ShiftSlotTypeAlias|y3.Const.SlotType, slot: integer)
-> item: Item?获取单位背包槽位上的物品
@param type — 槽位类型
@param slot — 位置
@return item — 物品
type:
| '物品栏'
| '背包栏'get_item_type_number_of_unit
(method) Unit:get_item_type_number_of_unit(item_key: py.ItemKey)
-> item_type_number: integer获取单位拥有的物品类型数量
@param item_key — 物品类型id
@return item_type_number — 物品类型数量
get_key
(method) Unit:get_key()
-> type_id: py.UnitKey获取单位类型的ID
@return type_id — 单位类型的ID
get_last_created_unit
function Unit.get_last_created_unit()
-> unit: Unit?最后创建的单位
@return unit — 最后创建的单位
get_level
(method) Unit:get_level()
-> unit_level: integer获取单位等级
@return unit_level — 单位等级
get_life_cycle
(method) Unit:get_life_cycle()
-> number获取单位剩余生命周期
get_main_attr
(method) Unit:get_main_attr()
-> string获取单位主属性(需要开启复合属性)
get_model
(method) Unit:get_model()
-> model: py.ModelKey获取单位的当前模型
@return model — 当前模型
get_model_by_key
function Unit.get_model_by_key(unit_key: py.UnitKey)
-> model: py.ModelKey获取单位类型的模型
@param unit_key — 单位id
@return model — 模型
get_mp
(method) Unit:get_mp()
-> current_mp: number获取当前魔法值
@return current_mp — 当前魔法值
get_name
(method) Unit:get_name()
-> unit_name: string获取单位名称
@return unit_name — 单位名称
get_name_by_key
function Unit.get_name_by_key(unit_key: py.UnitKey)
-> type_name: string获取单位类型名称
@return type_name — 单位类型名称
get_nearest_valid_point
(method) Unit:get_nearest_valid_point()
-> point: Point获取单位最近的可通行点
@return point — 单位最近的可通行点
get_owner
(method) Unit:get_owner()
-> player: Player获取单位所属玩家
@return player — 单位所属玩家
get_owner_player
(method) Unit:get_owner_player()
-> Player获取所属玩家
get_parent_unit
(method) Unit:get_parent_unit()
-> unit: Unit?获取单位的拥有者(单位)
@return unit — 单位的拥有者
get_pkg_cnt
(method) Unit:get_pkg_cnt()
-> slot_number: integer获取单位背包栏的槽位数
@return slot_number — 单位背包栏的槽位数
get_point
(method) Unit:get_point()
-> unit_point: Point获取单位所在点
@return unit_point — 单位所在点
get_reward_res
(method) Unit:get_reward_res(player_attr_name: py.RoleResKey)
-> player_attr: number获取击杀可获得的资源(玩家属性)
@param player_attr_name — 玩家属性名
@return player_attr — 单位被击杀玩家属性
get_scale
(method) Unit:get_scale()
-> model_scale: number获取单位缩放
@return model_scale — 单位缩放
get_shield
(method) Unit:get_shield(shield_type: integer)
-> shield_value: integer获取单位指定护盾类型的护盾值
@param shield_type — 护盾类型
@return shield_value — 护盾类型的护盾值
get_shop_item_list
(method) Unit:get_shop_item_list(page: py.TabIdx)
-> py.ItemKey[]获取所有的商店物品
@param page — 页签
get_shop_range
(method) Unit:get_shop_range()
-> purchase_range: number获取商店的购买范围
@return purchase_range — 购买范围
get_shop_tab_name
(method) Unit:get_shop_tab_name(tag_index: py.TabIdx)
-> tab_name: string获取商店的页签名
@param tag_index — 页签
@return tab_name — 页签名
get_shop_tab_number
(method) Unit:get_shop_tab_number()
-> tab_number: number获取商店页签数量
@return tab_number — 页签数量
get_source_model
(method) Unit:get_source_model()
-> model: py.ModelKey获取单位的原本模型
@return model — 原本模型
get_subtype
(method) Unit:get_subtype()
-> unit_subtype: py.UnitType获取单位分类
@return unit_subtype — 单位分类
get_team
(method) Unit:get_team()
-> team: py.Camp获取单位的队伍
@return team — 获取单位的队伍
get_tech_list
(method) Unit:get_tech_list()
-> py.TechKey[]获取单位可研究的所有科技
get_turning_speed
(method) Unit:get_turning_speed()
-> turning_speed: number获取单位转身速度
@return turning_speed — 单位转身速度
get_type
(method) Unit:get_type()
-> unit_type: py.UnitType获取单位的单位类型ID
@return unit_type — 单位类型ID
get_type_by_id
function Unit.get_type_by_id(unit_key: py.UnitKey)
-> integer获取单位类型的分类
@param unit_key — 单位id
get_unit_resource_cost
(method) Unit:get_unit_resource_cost(unit_id: py.UnitKey, player_attr_name: py.RoleResKey)
-> player_attr: integer获取建造此单位消耗的资源(玩家属性)
@param unit_id — 单位类型
@param player_attr_name — 玩家属性名
@return player_attr — 单位被击杀玩家属性
get_unit_selection_range_scale
(method) Unit:get_unit_selection_range_scale()
-> range_scale: number获取单位选择圈缩放
@return range_scale — 选择圈缩放
get_upgrade_exp
(method) Unit:get_upgrade_exp()
-> exp: number获取单位当前升级所需经验
@return exp — 单位当前升级所需经验
get_x_scale
(method) Unit:get_x_scale()
-> xaxis: number获取单位的X轴缩放
@return xaxis — X轴缩放
get_y_scale
(method) Unit:get_y_scale()
-> yaxis: number获取单位的Y轴缩放
@return yaxis — Y轴缩放
get_z_scale
(method) Unit:get_z_scale()
-> zaxis: number获取单位的Z轴缩放
@return zaxis — Z轴缩放
give_item
(method) Unit:give_item(item: Item, target: Unit)
-> py.UnitCommand命令给予物品
handle
py.Unitpy层的单位对象
has_ability_by_key
(method) Unit:has_ability_by_key(ability_key: py.AbilityKey)
-> has_ability_type: boolean是否有指定id的技能
@param ability_key — 技能类型
@return has_ability_type — 有指定类型的技能
has_buff_by_effect_type
(method) Unit:has_buff_by_effect_type(effect_type: y3.Const.EffectType)
-> has_modifier_style: boolean是否有指定类型的魔法效果
@param effect_type — 魔法效果类型
@return has_modifier_style — 有指定类型的魔法效果
has_buff_by_key
(method) Unit:has_buff_by_key(buff_key: py.ModifierKey)
-> has_modifier: boolean是否有指定id的魔法效果
@param buff_key — 魔法效果id
@return has_modifier — 有魔法效果
has_buff_status
(method) Unit:has_buff_status(state_name: integer)
-> has_buff_status: boolean是否有指定状态
请改用
has_state方法
@param state_name — 状态
@return has_buff_status — 有指定状态
has_item
(method) Unit:has_item(item: Item)
-> has_item: boolean是否有指定物品
@param item — 物品
@return has_item — 有物品
has_item_by_key
(method) Unit:has_item_by_key(item_key: py.ItemKey)
-> has_item_name: boolean是否有指定类型的物品
@param item_key — 物品类型
@return has_item_name — 有指定类型的物品
has_move_collision
(method) Unit:has_move_collision(collision_layer: integer|y3.Const.CollisionLayers)
-> boolean是否拥有指定碰撞类型
@param collision_layer — 碰撞类型
@return — 是否拥有指定碰撞类型
has_state
(method) Unit:has_state(state_enum: integer|y3.Const.UnitEnumState)
-> boolean?是否有某个状态
@param state_enum — 状态名
has_tag
(method) Unit:has_tag(tag_name: string)
-> has_tag: boolean是否具有标签
@param tag_name — 标签
@return has_tag — 具有标签
heals
(method) Unit:heals(value: number, skill?: Ability, source_unit?: Unit, text_type?: string)造成治疗
@param value — 治疗值
@param skill — 技能
@param source_unit — 单位
@param text_type — 跳字类型
hold
(method) Unit:hold(point: Point)
-> py.UnitCommand命令驻守
@param point — 点
@return — 命令
id
integeris_alive
(method) Unit:is_alive()
-> alive: boolean是否存活
@return alive — 是否存活
is_ally
(method) Unit:is_ally(target_unit: Unit)
-> is_enemy: boolean是否是友方
@param target_unit — 目标单位
@return is_enemy — 是敌对关系
is_building
(method) Unit:is_building()
-> boolean是否是建筑
is_casting
(method) Unit:is_casting()
-> boolean单位是否有正在释放的技能
is_collided_with_point
(method) Unit:is_collided_with_point(point: Point, range: number)
-> can_collide: boolean是否与点碰撞
@param point — 点
@param range — 范围
@return can_collide — 是否与点碰撞
is_destroyed
(method) Unit:is_destroyed()
-> booleanis_enemy
(method) Unit:is_enemy(target_unit: Unit)
-> is_enemy: boolean是否是敌人
@param target_unit — 目标单位
@return is_enemy — 是敌对关系
is_exist
(method) Unit:is_exist()
-> is_exist: boolean是否存在
@return is_exist — 是否存在
is_hero
(method) Unit:is_hero()
-> boolean是否是英雄
is_illusion
(method) Unit:is_illusion()
-> illusion: boolean是否是幻象单位
@return illusion — 是幻象单位
is_in_battle
(method) Unit:is_in_battle()
-> in_battle: boolean是否在战斗状态
@return in_battle — 在战斗状态
is_in_group
(method) Unit:is_in_group(group: UnitGroup)
-> in_group: boolean是否在单位组中
@param group — 单位组
@return in_group — 在单位组中
is_in_radius
(method) Unit:is_in_radius(other: Point|Unit, range: number)
-> in_radius: boolean是否在另一个单位或点附近
@param other — 单位/点
@param range — 范围
@return in_radius — 在单位附近
is_moving
(method) Unit:is_moving()
-> is_moving: boolean是否正在移动
@return is_moving — 正在移动
is_shop
(method) Unit:is_shop()
-> is_shop: boolean是否是商店
@return is_shop — 是商店
key
integer?kill_by
(method) Unit:kill_by(killer: Unit)杀死单位
@param killer — 凶手单位
kv_has
(method) KV:kv_has(key: string)
-> boolean是否拥有指定键值对。可以与ECA互通。
kv_key
string?kv_load
(method) KV:kv_load(key: string, lua_type: 'boolean'|'integer'|'number'|'string'|'table'...(+1))
-> anylua_type:
| 'boolean'
| 'number'
| 'integer'
| 'string'
| 'table'kv_remove
(method) KV:kv_remove(key: any)kv_save
(method) KV:kv_save(key: string, value: KV.SupportType)保存自定义键值对。可以与ECA互通。
learn
(method) Unit:learn(ability_key: py.AbilityKey)学习技能
@param ability_key — 技能id
move_along_road
(method) Unit:move_along_road(road: Road, patrol_mode: integer, can_attack: boolean, start_from_nearest: boolean, back_to_nearest: boolean)
-> py.UnitCommand命令沿路径移动
@param road — 路径
@param patrol_mode — 移动模式
@param can_attack — 是否自动攻击
@param start_from_nearest — 就近选择起始点
@param back_to_nearest — 偏离后就近返回
@return — 命令
move_to_pos
(method) Unit:move_to_pos(point: Point, range?: number)
-> py.UnitCommand命令移动
@param point — 点
@param range — 范围
@return — 命令
mover_curve
(method) Unit:mover_curve(mover_data: Mover.CreateData.Curve)
-> Mover创建曲线运动器
mover_line
(method) Unit:mover_line(mover_data: Mover.CreateData.Line)
-> Mover创建直线运动器
mover_round
(method) Unit:mover_round(mover_data: Mover.CreateData.Round)
-> Mover创建环绕运动器
mover_target
(method) Unit:mover_target(mover_data: Mover.CreateData.Target)
-> Mover创建追踪运动器
object_event_manager
EventManager?pause_life_cycle
(method) Unit:pause_life_cycle(is_stop: boolean)设置生命周期暂停状态
@param is_stop — 生命周期暂停状态
phandle
py.Unit代理的对象,用这个调用引擎的方法会快得多
pick_item
(method) Unit:pick_item(item: Item)
-> py.UnitCommand命令拾取物品
play_animation
(method) Unit:play_animation(anim_name: string, speed?: number, start_time?: number, end_time?: number, is_loop?: boolean, is_back_normal?: boolean)*******************播放动画全局统一 播放动画
@param anim_name — 动画名
@param speed — 速度
@param start_time — 开始时间
@param end_time — 结束时间(默认-1表示播到最后)
@param is_loop — 是否循环
@param is_back_normal — 是否返回默认状态
player_shop_check
(method) Unit:player_shop_check(player: Player)
-> boolean玩家是否可以购买商店的物品
reborn
(method) Unit:reborn(point?: Point)复活单位
@param point — 点
ref_manager
unknownremove
(method) Unit:remove()删除单位
remove_abilitiy_by_key
(method) Unit:remove_abilitiy_by_key(type: y3.Const.AbilityType|y3.Const.AbilityTypeAlias, ability_key: py.AbilityKey)移除技能(指定类型)
拼错了,请改用
Unit:remove_ability_by_key
@param type — 技能类型
@param ability_key — 物编id
type:
| '隐藏'
| '普通'
| '命令'
| '英雄'remove_ability
(method) Unit:remove_ability(type: y3.Const.AbilityType, slot: y3.Const.AbilityIndex)移除技能
@param type — 技能类型
@param slot — 技能位
remove_ability_by_key
(method) Unit:remove_ability_by_key(type: y3.Const.AbilityType|y3.Const.AbilityTypeAlias, ability_key: py.AbilityKey)移除技能(指定类型)
@param type — 技能类型
@param ability_key — 物编id
type:
| '隐藏'
| '普通'
| '命令'
| '英雄'remove_buffs_by_effect_type
(method) Unit:remove_buffs_by_effect_type(effect_type: y3.Const.EffectType)单位移除所有指定类型的魔法效果
@param effect_type — 影响类型的魔法效果
remove_buffs_by_key
(method) Unit:remove_buffs_by_key(buff_key: py.ModifierKey)单位移除所有指定id的魔法效果
@param buff_key — 影响类型的魔法效果
remove_goods
(method) Unit:remove_goods(item_name: py.TabName, item_key: py.ItemKey)移除可贩卖的商品
@param item_name — 物品名
@param item_key — 物品id
remove_item
(method) Unit:remove_item(item_id: py.ItemKey, num?: integer)单位移除物品
@param item_id — 物品id
@param num — 数量
remove_mover
(method) Unit:remove_mover()移除运动器
remove_multi_state
(method) Unit:remove_multi_state(state_enum: integer)移除多个状态
使用 y3.const.UnitEnumState 中的枚举值
@param state_enum — 状态
remove_state
(method) Unit:remove_state(state_enum: integer|y3.Const.UnitEnumState)移除状态 只有移除次数等同添加次数时才能移除状态
@param state_enum — 状态名
remove_tag
(method) Unit:remove_tag(tag: string)移除标签
@param tag — 标签
remove_tech
(method) Unit:remove_tech(tech_id: py.TechKey)单位删除科技
@param tech_id — 科技id
replace_model
(method) Unit:replace_model(model_id: py.ModelKey)替换模型
@param model_id — 模型id
research_tech
(method) Unit:research_tech(tech_id: py.TechKey)研究科技
@param tech_id — 科技id
sell
(method) Unit:sell(unit: Unit, item: Item)单位向商店出售物品
@param unit — 单位
@param item — 物品
set_Xray_is_open
(method) Unit:set_Xray_is_open(is_open: boolean)设置透视状态
@param is_open — 是否透视
set_ability_point
(method) Unit:set_ability_point(skill_point: integer)设置技能点
@param skill_point — 技能点
set_afterimage_time
(method) Unit:set_afterimage_time(interval: number, duration: number, start_time: number, end_time: number)设置残影时间
@param interval — 间隔时间
@param duration — 显示时间
@param start_time — 开始时间
@param end_time — 结束时间
set_alert_range
(method) Unit:set_alert_range(range: number)设置警戒范围
@param range — 范围
set_animation_speed
(method) Unit:set_animation_speed(speed: number)设置动画播放速率
@param speed — 速度
set_armor_type
(method) Unit:set_armor_type(armor_type: integer)设置护甲类型
@param armor_type — 护甲类型
set_attack_type
(method) Unit:set_attack_type(attack_type: integer)设置攻击类型
@param attack_type — 攻击类型
set_attr
(method) Unit:set_attr(attr_name: string|y3.Const.UnitAttr, value: number, attr_type?: string|y3.Const.UnitAttrType)设置属性
@param attr_name — 属性名
@param value — 属性值
@param attr_type — 属性类型,默认为“基础”
set_attr_growth
function Unit.set_attr_growth(unit_key: py.UnitKey, attr_name: string, value: number)设置属性成长
@param unit_key — 单位id
@param attr_name — 属性名
@param value — 属性成长
set_bar_cnt
(method) Unit:set_bar_cnt(number: integer)设置物品栏的槽位数
@param number — 槽位数
set_base_speed
(method) Unit:set_base_speed(speed: number)设置走路动画基准速度
@param speed — 速度
set_behavior
(method) Unit:set_behavior(behavior: py.UnitBehavior)设置默认单位行为
@param behavior — 单位行为
set_blood_bar_type
(method) Unit:set_blood_bar_type(bar_type: integer)设置血条样式
@param bar_type — 血条样式
set_cancel_alert_range
(method) Unit:set_cancel_alert_range(range: number)设置取消警戒范围
@param range — 取消警戒范围
set_collision_radius
(method) Unit:set_collision_radius(radius: number)设置单位碰撞半径
set_day_vision
(method) Unit:set_day_vision(value: number)设置白天的视野范围
set_description
(method) Unit:set_description(description: string)设置描述
@param description — 描述
set_enemy_minimap_icon
(method) Unit:set_enemy_minimap_icon(img_id: py.Texture)设置敌方单位小地图头像
@param img_id — 敌方单位小地图头像
set_exp
(method) Unit:set_exp(exp: number)设置经验
@param exp — 经验
set_facing
(method) Unit:set_facing(direction: number, turn_time: number)设置朝向
@param direction — 朝向
@param turn_time — 转向时间
set_ghost_color
(method) Unit:set_ghost_color(red: number, green: number, blue: number, alpha: number)设置残影颜色
@param red — 绿
@param green — 绿
@param blue — 蓝
@param alpha — 透明度
set_goods_stack
(method) Unit:set_goods_stack(tag_name: py.TabName, item_key: py.ItemKey, number: integer)设置商品库存
@param tag_name — 标签名
@param item_key — 物品id
@param number — 物品库存
set_health_bar_display
(method) Unit:set_health_bar_display(bar_show_type: integer)设置血条显示方式
@param bar_show_type — 血条显示方式
set_height
(method) Unit:set_height(height: number, trans_time: number)设置飞行高度
@param height — 高度
@param trans_time — 过渡时间
set_hp
(method) Unit:set_hp(hp: number)设置当前生命值
@param hp — 当前生命值
set_icon
(method) Unit:set_icon(img_id: py.Texture)设置单位头像
@param img_id — 单位头像
set_level
(method) Unit:set_level(level: integer)设置等级
@param level — 等级
set_life_cycle
(method) Unit:set_life_cycle(time: number)设置生命周期
@param time — 生命周期
set_minimap_icon
(method) Unit:set_minimap_icon(img_id: py.Texture)***************敌我合并一条 设置单位小地图头像
@param img_id — 单位小地图头像
set_move_channel_air
(method) Unit:set_move_channel_air(air_limitation?: boolean)设置单位的移动类型为空中
@param air_limitation — 空中限制
set_move_channel_land
(method) Unit:set_move_channel_land(land_limitation?: boolean, item_limitation?: boolean, water_limitation?: boolean)设置单位的移动类型为地面
@param land_limitation — 陆地限制
@param item_limitation — 物件限制
@param water_limitation — 海洋限制
set_move_collision
(method) Unit:set_move_collision(collision_layer: integer|y3.Const.CollisionLayers, enable: boolean)设置单位是否计算某种碰撞类型
@param collision_layer — 碰撞mask
@param enable — 开启状态
set_mp
(method) Unit:set_mp(mp: number)设置当前魔法值
@param mp — 当前魔法值
set_name
(method) Unit:set_name(name: string)设置名称
@param name — 名称
set_night_value
(method) Unit:set_night_value(value: number)设置夜晚的视野范围
set_outline_visible
(method) Unit:set_outline_visible(bool: boolean)设置单位描边开启
@param bool — 布尔值
set_outlined_color
(method) Unit:set_outlined_color(color_r: number, color_g: number, color_b: number)设置单位描边颜色
@param color_r — R
@param color_g — G
@param color_b — B
set_pkg_cnt
(method) Unit:set_pkg_cnt(number: integer)设置背包栏的槽位数
@param number — 槽位数
set_point
(method) Unit:set_point(point: Point, isSmooth: boolean)强制传送到点
@param point — 点
@param isSmooth — 是否丝滑
set_recycle_on_remove
(method) Unit:set_recycle_on_remove(is_recycle: boolean)设置尸体消失后是否回收
@param is_recycle — 是否回收
set_reward_exp
(method) Unit:set_reward_exp(exp: number)设置被击杀的经验值奖励
@param exp — 经验
set_reward_res
(method) Unit:set_reward_res(player_attr_name: py.RoleResKey, value: number)设置被击杀的玩家属性奖励
@param player_attr_name — 属性名
@param value — 属性奖励
set_scale
(method) Unit:set_scale(scale: number)设置模型缩放
@param scale — 模型缩放
set_select_effect_visible
(method) Unit:set_select_effect_visible(bool: boolean)设置单位选择框的可见性
@param bool — 布尔值
set_transparent_when_invisible
(method) Unit:set_transparent_when_invisible(is_visible: boolean)**********************这是啥 设置隐身可见时是否半透明
@param is_visible — 是否半透明
set_turning_speed
(method) Unit:set_turning_speed(speed: number)设置转身速度
@param speed — 转身速度
set_unit_scale
(method) Unit:set_unit_scale(sx: number, sy: number, sz: number)设置单位三轴缩放
@param sx — X轴缩放
@param sy — Y轴缩放
@param sz — Z轴缩放
shift_item
(method) Unit:shift_item(item: Item, type: y3.Const.ShiftSlotTypeAlias, index?: integer, force?: boolean)移动物品
@param item — 物品
@param index — 槽位
@param force — 是否强制移动,true: 如果目标有物品,则移动到另一个空格中;false: 如果目标有物品,则要移动的物品会掉落
type:
| '物品栏'
| '背包栏'start_ghost
(method) Unit:start_ghost(red: number, green: number, blue: number, alpha: number, interval: number, duration: number, start_time: number, end_time: number, is_origin_martial: boolean)************************残影优化 开启残影
@param red — 红
@param green — 绿
@param blue — 蓝
@param alpha — 透明度
@param interval — 间隔时间
@param duration — 显示时间
@param start_time — 开始时间
@param end_time — 结束时间
@param is_origin_martial — 使用原生材质
stop
(method) Unit:stop()
-> py.UnitCommand命令停止
@return — 命令
stop_all_abilities
(method) Unit:stop_all_abilities()停止所有技能
stop_animation
(method) Unit:stop_animation(anim_name: string)停止动画
@param anim_name — 动画名
stop_cur_animation
(method) Unit:stop_cur_animation()停止当前正在播放的动画
stop_ghost
(method) Unit:stop_ghost()关闭残影
storage_all
(method) Storage:storage_all()
-> table获取存储数据的容器
storage_get
(method) Storage:storage_get(key: any)
-> any获取存储的值
storage_set
(method) Storage:storage_set(key: any, value: any)存储任意值
storage_table
tablesubscribe_event
(method) ObjectEvent:subscribe_event(event_name: string, ...any)
-> any[]?
2. Trigger.CallBack
3. Unsubscribe: functionswitch_ability
(method) Unit:switch_ability(ability_1: Ability, ability_2: Ability)交换技能位置
@param ability_1 — 第一个技能
@param ability_2 — 第二个技能
switch_ability_by_slot
(method) Unit:switch_ability_by_slot(type_1: y3.Const.AbilityType, slot_1: y3.Const.AbilityIndex, type_2: y3.Const.AbilityType, slot_2: y3.Const.AbilityIndex)根据坑位交换技能
@param type_1 — 第一个技能类型
@param slot_1 — 第一个技能坑位
@param type_2 — 第二个技能类型
@param slot_2 — 第二个技能坑位
type
stringunit_gains_tech
(method) Unit:unit_gains_tech(tech_key: py.TechKey)单位获得科技
@param tech_key — 科技类型
unit_has_modifier_tag
(method) Unit:unit_has_modifier_tag(tag_name: string)
-> has_modifier_tag: boolean是否有指定标签的魔法效果
@param tag_name — 标签
@return has_modifier_tag — 有指定标签的魔法效果
use_item
(method) Unit:use_item(item: Item, target?: Destructible|Item|Point|Unit, extra_target?: Point)
-> py.UnitCommand命令使用物品
Unit.DamageData
造成伤害
ability
Ability关联技能
common_attack
boolean视为普攻
critical
boolean必定暴击
damage
numberno_miss
boolean必定命中
particle
py.SfxKey特效
socket
string特效挂点
target
Destructible|Item|Unit单位
text_track
integer跳字轨迹类型
text_type
y3.Const.DamageTextType跳字类型
type
integer|y3.Const.DamageType也可以传任意数字

