- 致编者:请牢记我们的域名wiki.mcbe-dev.net!
- 致编者:欢迎加入本Wiki的官方交流QQ群或Discord服务器!
- 基岩版1.19.31现已发布!(了解更多)
- Inner Core现已支持Xbox模组联机!(了解更多)
- 如果您是第一次来到本Wiki,欢迎注册一个账户
- 点击顶部的“编辑”或“编辑源代码”按钮即可编辑当前页面
- 请知悉:在不登录时也可以编辑和新建页面,但是您当前的IP地址会记录在编辑历史中
Molang/函数表达:修订间差异
来自Minecraft基岩版开发Wiki
< Molang
添加的内容 删除的内容
小无编辑摘要 |
Miemie Method(留言 | 贡献) 小 (→查询函数清单: // Edit via Wikiplus) |
||
第259行: | 第259行: | ||
|- |
|- |
||
|[[Manual:query.get_name|query.get_name]] |
|[[Manual:query.get_name|query.get_name]] |
||
|返回实体 |
|返回实体的名称,如果有的话,否则返回<nowiki>''</nowiki>。 |
||
|- |
|- |
||
|[[Manual:query.get_root_locator_offset|query.get_root_locator_offset]] |
|[[Manual:query.get_root_locator_offset|query.get_root_locator_offset]] |
2022年1月17日 (一) 13:55的版本
数学函数
名称 | 描述 |
---|---|
math.abs(value) | value的绝对值。 |
math.acos(value) | value的反余弦值。 |
math.asin(value) | value的反正弦值。 |
math.atan(value) | value的反正切值。 |
math.atan2(y,x) | y/x的反正切值(注:注意参数的顺序)。 |
math.ceil(value) | 将value向上取整。 |
math.clamp(value,min,max) | 将value限定在最小值(min)到最大值(max)之间。 |
math.cos(value) | value的余弦值。 |
math.die_roll(num,low,high) | 返回num个随机数的总和,每个值的范围在最低(low)到最高(high)范围之间(注:生成的随机数不是像一般骰子那样的整数,若为此,请使用math.die_roll_integer )。
|
math.die_roll_integer(num,low,high) | 返回num个随机整数的总和,每个值的范围在最低(low)到最高(high)范围之间。 |
math.exp(value) | 计算value以e为底数的指数函数。 |
math.floor(value) | 将value向下取整。 |
math.hermite_blend(value) | 待补充
|
math.lerp(start,end,0_to_1) | 待补充
|
math.lerprotate(start,end,0_to_1) | 待补充
|
math.ln(value) | value的自然对数。 |
math.max(A,B) | 返回A和B中的最大值。 |
math.min(A,B) | 返回A和B中的最小值。 |
math.min_angel(value) | 将value(角度)最小化到[-180,180)的范围(单位:度)。 |
math.mod(value,denominator) | 返回value除以denominator(分母)后的余数。 |
math.pi | 返回常量π的浮点数形式。 |
math.pow(base,exponent) | 返回base(底数)的exponent(指数)次幂。 |
math.random(low,high) | 最低(low)到最高(high)范围内的随机数(注:随机数不包含low)。 |
math.random_integer(low,high) | 最低(low)到最高(high)范围内的随机整数(注:随机整数包含low和high)。 |
math.round(value) | 将value四舍五入取整。 |
math.sin(value) | value的正弦值。 |
math.sqrt(value) | value的平方根。 |
math.trunc(value) | 截短法取整。 |
查询函数
查询函数是布尔表达式,允许您查询引擎在不同情况下拥有的值。它们可以用在Molang表达式中。可用于控制位置,纹理,动画等内容。
例如:
"position": [ 0.0, "query.is_baby ? -8.0 : 0.0", "query.is_baby ? 4.0 : 0.0" ]
查询函数清单
此表格有部分描述待补充! |
名称 | 描述 |
---|---|
query.above_top_solid | 返回位于(x,z)位置正上方最高固体方块的高度。 |
query.actor_count | 返回上一帧中渲染的活动对象的数量。 |
query.all_animations_finished | (仅在动画中有效)如果当前动画控制器下的所有动画至少播放了一次则返回1.0,否则返回0.0。 |
query.all_tags | 返回物品或方块所具有的所有指定标签。 |
query.anim_time | 返回动画自开始以来的时间(以秒为单位),如果动画未被调用则返回0.0。 |
query.any_animation_finished | (仅在动画控制器中有效)如果当前动画控制器下的任意动画至少播放了一次则返回1.0,否则返回0.0。 |
query.any_tag | 返回物品或方块所具有的任意指定标签。 |
query.approx_eq | 如果所有参数都在0.000000之内,则返回1.0,否则返回0.0。 |
query.armor_color_slot | 将护甲栏编号作为参数,并返回所查询的护甲栏中护甲的颜色。 |
query.armor_material_slot | 将护甲栏编号作为参数,并返回所查询的护甲栏中护甲的材料类型。 |
query.armor_texture_slot | 将护甲栏编号作为参数,并返回所查询的护甲栏中护甲的纹理类型。 |
query.average_frame_time | 以秒为单位返回过去n帧中的平均每帧的时间。如果输入的参数已过效,则认定为您要查询的是过去的帧数。query.average_frame_time (或相同效果的query.average_frame_time(0) )将返回当前帧之前的帧的时间。query.average_frame_time(1) 将返回前两帧的平均帧的时间。目前,游戏会存储最近30帧的历史记录,但将来可能会有所变化。请求更多帧只会导致对存储的帧数进行采样。
|
query.block_face | 返回该方块的面(仅对某些触发器有效,例如minecraft:on_player_placing 或minecraft:on_interact )(下=0.0,上=1.0,北=2.0,南=3.0,西=4.0,东=5.0,未定义=6.0)。
|
query.block_property | 返回所查询的方块属性的值。 |
query.block_neighbor_has_all_tags | 查询方块边上的某个块(根据填入的x,y,z)所有tag是否等于填入的那个tag,如果是,返回1.0,否则返回0.0 |
query.block_neighbor_has_any_tag | 查询方块是否有tag等于填入的tag,如果是,返回1.0,否则返回0.0 |
query.blocking | 如果实体正在搬运或放置方块(例如末影人),则返回1.0,否则返回0.0。 |
query.body_x_rotation | 若对活动对象调用,则返回活动对象身体的x轴旋转角度,否则返回0.0。 |
query.body_y_rotation | 若对活动对象调用,则返回活动对象身体的y轴旋转角度,否则返回0.0。 |
query.camera_distance_range_lerp | 取两个距离(任意顺序),并根据相对于这两个距离范围之间的视角距离返回从0到1的数字。例如,对于小于或等于10的任何距离,query.camera_distance_range_lerp(10,20) 将返回0;对于12的距离,则返回0.2;对于15的距离,则返回0.5;对于大于等于20的距离,会返回1。如果您输入(20,10) ,则距离为20时将返回0.0。
|
query.camera_rotation | 返回视角的旋转角度。需要一个参数代表您想要的旋转轴(0=x轴,1=y轴)。 |
query.can_climb | 如果实体可以攀爬,则返回1.0,否则返回0.0。 |
query.can_damage_nearby_mobs | 如果实体可以对附近的生物造成伤害,则返回1.0,否则返回0.0。 |
query.can_fly | 如果实体可以飞行,则返回1.0,否则返回0.0。 |
query.can_power_jump | 如果实体可以蓄力跳跃,则返回1.0,否则返回0.0。 |
query.can_swim | 如果实体可以游泳,则返回1.0,否则返回0.0。 |
query.can_walk | 如果实体可以行走,则返回1.0,否则返回0.0。 |
query.cape_flap_amount | 返回0.0到1.0之间的值,其中0.0表示披风完全垂下,1.0表示披风完全飘起。 |
query.cardinal_block_face_placed_on | 已废弃(请使用query.block_face 。)
|
query.cardinal_facing | 返回玩家当前的面部朝向(下=0.0,上1.0,北=2.0,南=3.0,西=4.0,东=5.0,未定义=6.0)。 |
query.cardinal_facing_2d | 返回玩家当前面部在2D平面上的朝向(忽略上/下朝向,北=2.0,南=3.0,西=4.0,东=5.0,未定义=6.0)。 |
query.cardinal_player_facing | 返回玩家当前的面部朝向(下=0.0,上1.0,北=2.0,南=3.0,西=4.0,东=5.0,未定义=6.0)。 |
query.combine_entities | 将来自所有参数的任何有效实体引用组合到单个数组中。注意:不保留顺序,并且会删除重复值和无效值。 |
query.count | 计数读取该内容包含的值的数量(将数组计为它们包含的元素数;非数组计为1)。 |
query.current_squish_value | 返回当前实体的压缩值,如果没有意义,这返回0.0。 |
query.day | 返回当前存档中度过的天数。 |
query.debug_output | |
query.delta_time | 以秒为单位返回自上一帧以来的时间。 |
query.distance_from_camera | |
query.effect_emitter_count | |
query.effect_particle_count | |
query.equipment_count | 返回活动对象携带的装备数量。 |
query.equipped_item_all_tags | |
query.equipped_item_any_tags | |
query.equipped_item_is_attachable | 如果物品是附着物,则返回1.0,否则返回0.0。 |
query.eye_target_x_rotation | |
query.eye_target_y_rotation | |
query.frame_alpha | |
query.get_actor_info_id | 返回活动对象的数字ID,多用于配方中作为minecraft:spawn_egg 的特殊值传入。
|
query.get_animation_frame | 返回动画当前帧,如果无意义,则返回0.0 |
query.get_equipped_item_name | 返回实体手持物品名,如果无意义,则返回0.0 |
query.get_locator_offset | |
query.get_name | 返回实体的名称,如果有的话,否则返回''。 |
query.get_root_locator_offset | |
query.ground_speed | 返回实体米/每秒的速度值。 |
query.has_any_family | 如果实体携带所查询的任一家族名称,则返回1.0,否则返回0.0。该查询允许接受多个家族名称作为参数。 |
query.has_armor_slot | 将护甲栏编号作为参数,如果实体在请求的护甲栏中有护,则返回1.0,否则返回0.0 |
query.has_biome_tag | |
query.has_block_property | |
query.has_cape | 如果玩家有披风,则返回1.0,否则返回0.0。 |
query.has_collision | 如果实体有碰撞箱,则返回1.0,否则返回0.0。 |
query.has_gravity | 如果实体受重力影响,则返回1.0,否则返回0.0。 |
query.has_owner | 如果实体有主人ID,则返回true,否则返回false。 |
query.has_rider | 如果实体有乘骑者,则返回1.0,否则返回0.0。 |
query.has_target | 如果实体有目标,则返回1.0,否则返回0.0。 |
query.head_roll_angel | |
query.head_x_rotation | 让实体(如凋灵)的第N个头跟随第1个头(动画列表第1个列出的头)关于x轴旋转,如果无意义则返回0.0。 |
query.head_y_rotation | 让实体(如凋灵)的第N个头跟随第1个头(动画列表第1个列出的头)关于y轴旋转。如果无意义则返回0.0。 |
query.health | 返回当前实体的生命值,如果调用该实体的生命值没有意义,则返回0.0。 |
query.heightmap | 获取高度图。 |
query.hurt_direction | |
query.hurt_time | |
query.invulnerable_ticks | |
query.is_admiring | 如果实体羡慕你手上的物品,则返回1.0,否则返回0.0 |
query.is_alive | 如果实体正存活着,则返回1.0,否则返回0.0。 |
query.is_angry | 如果实体处于愤怒状态,则返回1.0,否则返回0.0。 |
query.is_attached_to_entity | 如果活动对象(特指附着物)正附加在实体上,则返回1.0,否则返回0.0。 |
query.is_avoiding_block | 如果实体正在避开方块,则返回1.0,否则返回0.0。 |
query.is_avoiding_mobs | 如果实体正在躲避生物,则返回1.0,否则返回0.0。 |
query.is_baby | 如果实体处于幼年,则返回1.0,否则返回0.0。 |
query.is_breathing | 如果实体正在呼吸,则返回1.0,否则返回0.0。 |
query.is_bribed | 如果实体通过投喂等为玩家做事(比如喂食海豚使之为你寻找遗迹)则返回1.0,否则返回0.0 |
query.is_carrying_block | 如果实体拿着方块,则返回1.0,否则返回0.0。 |
query.is_casting | |
query.is_celebrating | 如果实体正在庆贺,则返回1.0,否则返回0.0。 |
query.is_celebrating_special | 如果实体正在特殊庆贺,则返回1.0,否则返回0.0。 |
query.is_charged | 如果实体变为闪电苦力怕,则返回1.0,否则返回0.0。 |
query.is_charging | |
query.is_chested | 如果实体装配有箱子(例如骡、羊驼),则返回1.0,否则返回0.0。 |
query.is_critical | |
query.is_dancing | 如果实体正在跳舞,则返回1.0,否则返回0.0。 |
query.is_delayed_attacking | 如果实体携带minecraft:behavior.delayed_attack行为并处于攻击状态时,则返回1.0,否则返回0.0。 |
query.is_eating | 如果实体正在进食,则返回1.0,否则返回0.0。 |
query.is_elder | 如果实体处于成年,则返回1.0,否则返回0.0。 |
query.is_emoting | |
query.is_enchanted | 如果活动对象(特指附着物)被附魔,则返回1.0,否则返回0.0。 |
query.is_fire_immune | 如果实体对火焰免疫,则返回1.0,否则返回0.0。 |
query.is_first_person | 如果实体(特指玩家)处于第一人称视角,则返回1.0,否则返回0.0。 |
query.is_ghost | 如果实体处于死亡状态,则返回1.0,否则返回0.0。 |
query.is_gliding | 如果实体正在滑动,则返回1.0,否则返回0.0。 |
query.is_grazing | 如果实体正在吃方块(例如羊),则返回1.0,否则返回0.0。 |
query.is_idling | 如果实体处于闲置状态,则返回1.0,否则返回0.0。 |
query.is_ignited | 如果实体被点燃,则返回1.0,否则返回0.0。 |
query.is_illager_captain | 如果实体是袭击队长,则返回1.0,否则返回0.0。 |
query.is_in_love | 如果实体正在发情,则返回1.0,否则返回0.0。 |
query.is_in_ui | 如果实体正在UI中,则返回1.0,否则返回0.0。 |
query.is_in_water | 如果实体处于水中,则返回1.0,否则返回0.0。 |
query.is_in_water_or_rain | 如果实体处于水中或雨中,则返回1.0,否则返回0.0。 |
query.is_interested | 如果实体感兴趣,则返回1.0,否则返回0.0。 |
query.is_invisible | 如果实体处于隐身状态,则返回1.0,否则返回0.0。 |
query.is_item_equipped | 根据输入参数返回主手或副手是否持有物品(0或main_hand 代表主手,1或off_hand 代表副手)。
|
query.is_jumping | 如果实体正在跳跃,则返回1.0,否则返回0.0。 |
query.is_laying_down | 如果实体处于躺下的状态,则返回1.0,否则返回0.0。 |
query.is_laying_egg | 如果实体正在产卵(例如海龟),则返回1.0,否则返回0.0。 |
query.is_leashed | 如果实体被栓绳牵引,则返回1.0,否则返回0.0。 |
query.is_levitating | |
query.is_moving | 如果实体正在移动,则返回1.0,否则返回0.0。 |
query.is_on_fire | |
query.is_on_ground | 如果实体正处于地面上,则返回1.0,否则返回0.0。 |
query.is_on_screen | |
query.is_onfire | 如果实体着火了,则返回1.0,否则返回0.0 |
query.is_orphaned | 如果实体是孤儿,则返回1.0,否则返回0.0 |
query.is_persona_or_premium_skin | |
query.is_powered | 如果实体携带minecraft:is_charged组件,则返回1.0,否则返回0.0。 |
query.is_pregnant | 如果实体怀孕了(海龟怀蛋等),则返回1.0,否则返回0.0 |
query.is_ram_attacking | |
query.is_resting | 如果实体在休息(狐狸),则返回1.0,否则返回0.0 |
query.is_riding | 如果实体正处于骑乘状态,则返回1.0,否则返回0.0。 |
query.is_roaring | 如果实体携带minecraft:behavior.knockback_roar行为并处于吼叫时间时,则返回1.0,否则返回0.0。 |
query.is_rolling | |
query.is_saddled | 如果实体携带minecraft:is_saddled组件,则返回1.0,否则返回0.0。 |
query.is_scared | |
query.is_selected_item | |
query.is_shaking | |
query.is_shaking_wetness | |
query.is_sheared | 如果实体携带minecraft:is_sheared组件,则返回1.0,否则返回0.0。 |
query.is_shield_powered | |
query.is_silent | |
query.is_sitting | |
query.is_sleeping | 如果实体正在睡觉,则返回1.0,否则返回0.0。 |
query.is_sneacking | |
query.is_sneezing | |
query.is_sprinting | 如果实体正在冲刺,则返回1.0,否则返回0.0。 |
query.is_stackable | 如果实体携带minecraft:is_stackable组件,则返回1.0,否则返回0.0。 |
query.is_stalking | 如果实体携带minecraft:behavior.stalk_and_pounce_on_target行为且处于匍匐靠近的时间内,则返回1.0,否则返回0.0。 |
query.is_standing | |
query.is_stunned | 如果实体携带minecraft:is_stunned组件,则返回1.0,否则返回0.0。 |
query.is_swimming | 如果实体在游泳,则返回1.0,否则返回0.0 |
query.is_tamed | 如果实体携带minecraft:is_tamed组件,则返回1.0,否则返回0.0。 |
query.is_transforming | 如果实体在转变(僵尸村民转村民等),返回1.0,否则返回0.0 |
query.is_using_item | 如果实体正在使用一个物品,则返回1.0,否则返回0.0。 |
query.is_wall_climbing | 如果实体在爬墙(蜘蛛,玩家爬梯),则返回1.0,否则返回0.0 |
query.item_in_use_duration | |
query.item_is_charged | 如果物品被充能,则返回1.0,否则返回0.0 |
query.item_max_use_duration | |
query.item_remaining_use_duration | |
query.item_slot_to_bone_name | |
query.key_frame_lerp_time | |
query.last_frame_time | |
query.last_hit_by_player | 如果实体的上一次受伤记录是否由玩家造成,则返回1.0,否则返回0.0。 |
query.lie_amount | |
query.life_span | |
query.life_time | |
query.lod_index | |
query.log | |
query.main_hand_item_max_duration | |
query.main_hand_item_use_duration | |
query.mark_variant | 查询实体变体标记,如果无意义,则返回0.0 |
query.max_durability | 查询物品最大耐久度,若无意义,则返回0.0 |
query.max_health | 查询实体最大生命值,若无意义,则返回0.0 |
query.max_trade_tire | |
query.maximum_frame_item | |
query.minimum_frame_time | |
query.model_scale | 查询实体模型缩放比例,若无意义,则返回0.0 |
query.modified_distance_moved | 查询实体修改过的移动方向,若无意义,则返回0.0 |
query.modified_move_speed | 查询实体更改过的移速,若无意义,则返回0.0 |
query.moon_brightness | 查询当前月亮亮度,若无意义,则返回0.0 |
query.moon_phase | 查询月亮当前阶段(满月,下弦月,上弦月等),若无意义,则返回0.0 |
query.movement_direction | 查询实体运动方向,若无意义,则返回0.0 |
query.noise | 获取柏林噪声。 |
query.on_fire_time | 查询实体着火时间,若无意义则返回0.0 |
query.out_of_control | 查询实体是否失控,若无意义,则返回0.0 |
query.overlay_alpha | 已废弃(请勿使用!此函数已被废弃,并将会被删除。) |
query.owner_identifier | 返回一串父类实体携带的以"<namespace>": "<identifier>" 为格式的字符串,常用来判断物品持有者的类型。
|
query.player_level | 返回实体(特指玩家)的等级,否则返回0.0。 |
query.position | 返回实体在世界中的绝对坐标。它根据一个参数来返回对应轴的坐标,0代表x轴,1代表y轴,2代表z轴。 |
query.position_delta | 返回实体上一帧的相对位移。它接收一个参数来返回对应轴的坐标,0代表x轴,1代表y轴,2代表z轴。 |
query.previous_squish_value | |
query.remaining_durability | 返回物品的剩余耐久度。 |
query.roll_counter | |
query.rotation_to_camera | |
query.shake_angel | |
query.shack_time | |
query.shield_blocking_bob | |
query.sit_amount | |
query.skin_id | |
query.sleep_rotation | |
query.sneeze_counter | |
query.spellcolor | |
query.standing_scale | |
query.structural_integrity | |
query.swell_amount | |
query.swelling_dir | |
query.swim_amount | |
query.tail_angel | |
query.target_x_rotation | |
query.target_y_rotation | |
query.texture_frame_index | |
query.time_of_day | |
query.time_stamp | |
query.total_emitter_count | |
query.total_particle_count | |
query.trade_tier | |
query.unhappy_counter | |
query.variant | |
query.vertical_speed | |
query.walk_distance | |
query.wing_flap_position | |
query.wing_flap_speed | |
query.yaw_speed |
实验性查询函数清单
名称 | 描述 |
---|---|
query.biome_has_all_tags | |
query.biome_has_any_tag | |
query.block_has_all_tags | |
query.block_has_any_tag | |
query.bone_orientation_matrix | |
query.bone_orientation_trs | |
query.client_input_type | 根据当前客户端使用的操作方式返回"mouse" (鼠标),"touch" (触屏),"gamepad" (手柄)或"motion_controller" (运动传感器)。
|
query.get_nearby_entities | 返回当前实体周围筛选出的实体,它接收两个参数,其中第二个参数为缺省参数。第一个指代长度距离,第二个指代实体的命名空间:标识符。 |
query.get_nearby_entities_except_self | 返回当前实体周围筛选出的不包括自己的实体,它接收两个参数,其中第二个参数为缺省参数。第一个指代长度距离,第二个指代实体的命名空间:标识符。 |
query.get_ride | 如果该实体正在乘骑某实体,则返回被乘骑的实体,否则返回0.0。 |
query.get_riders | 以数组的形式返回该实体的乘骑者。 |
query.has_player_rider | 如果实体被玩家乘骑,则返回1.0,否则返回0.0。 |
query.is_attaches | 如果一个活动对象附着于另一个活动对象上,则返回1.0(例如被持有或被穿戴),否则返回0.0。 |
query.relative_block_has_all_tags | 根据相对实体坐标,如果该方块拥有所有指定的标签,则返回1.0,否则返回0.0。 |
query.relative_block_has_any_tag | 根据相对实体坐标,如果该方块拥有任意指定的标签,则返回1.0,否则返回0.0。 |
query.scoreboard | 返回当前实体的计分板信息,它接受一个参数用来指代记分项。 |
query.self | 返回当前实体。 |
query.target | 返回当前实体目标(如果存在)。 |