It might be required for you to import the package if you encounter any issues (like casting an Array), so better be safe than sorry and add the import at the very top of the file.

ZenScript
Copy
import mods.pmmo.CTUtils;

Name: registerPerk

Registers a perk for use in pmmo-Perks.toml.

ZenScript
Copy
CTUtils.registerPerk(perkID as ResourceLocation, defaults as MapData, customConditions as CTPerkPredicate, onExecute as CTPerkFunction, onConclude as CTPerkFunction, side as int)
参数类型描述
参数
perkID
类型
资源位置
描述
the Perk ID
参数
defaults
类型
MapData #地图数据
描述
the default settings for your perk. These
are provided to your execution if no manual user configuration
is present. This allows you to ignore null checks and
displays to users what settings are valid for your perk.
(NOTE: you are not required to add settings here for them
to work. It is permitted to have "hidden" settings.)
参数
customConditions
类型
CTPerkPredicate
描述
used to check for conditions in which
a perk is allowed to execute in addition to pmmo's default
checks. For example, if the player is the correct dimension.
参数
onExecute
类型
CTPerkFunction
描述
the logic executed by this perk
参数
onConclude
类型
CTPerkFunction
描述
if an event has an end state, this executes
参数
side
类型
int
描述
which logical side this fires on CLIENT=0, SERVER=1, BOTH=2

Name: setBonus

registers a configuration setting for bonuses to xp gains.

ZenScript
Copy
// CTUtils.setBonus(objectType as invalid, objectID as ResourceLocation, type as invalid, bonus as double?[string])

CTUtils.setBonus(<constant:pmmo:objecttype:value>, <resource:namespace:path>, <constant:pmmo:modifierdatatype:value>, {skillname: 0.0 as double?, otherskillname: 0.0 as double?});
参数类型描述
参数
objectType
类型
invalid
描述
a value of [item, block, entity, dimension, or biome]
参数
objectID
类型
资源位置
描述
the object linked to the bonus
参数
类型
类型
invalid
描述
the relation to the object which predicates the bonus
参数
bonus
类型
double?[string]
描述
a map of skills and multipliers (1.0 = no bonus)

Name: setEffectXp

Registers a configuration setting for xp gained from active effects

ZenScript
Copy
CTUtils.setEffectXp(effectID as ResourceLocation, effectLevel as int, xpGains as int?[string])
参数类型描述
参数
effectID
类型
资源位置
描述
the key for the effect
参数
effectLevel
类型
int
描述
the level of the effect
参数
xpGains
类型
int?[string]
描述
a map of the skills and xp awarded when this effect is active

Name: setEnchantment

sets the requirements for a given enchantment and enchantment level

ZenScript
Copy
// CTUtils.setEnchantment(enchantID as ResourceLocation, enchantLevel as int, reqs as int?[string])

CTUtils.setEnchantment(<resource:namespace:path>, 1, {skillname: 00 as int?, otherskillname: 00 as int?});
参数类型描述
参数
enchantID
类型
资源位置
描述
the key for the enchantment
参数
enchantLevel
类型
int
描述
the level of the enchantment
参数
reqs
类型
int?[string]
描述
a map of the skills and levels needed to use this enchantment

Name: setMobModifier

registers a configuration setting for mob modifiers to a biome or dimension.

Attribute types for the inner map of mob_modifiers can be referenced
using the static strings in this class prefixed with "MOB_"

ZenScript
Copy
CTUtils.setMobModifier(objectType as invalid, locationID as ResourceLocation, mobID as ResourceLocation, modifiers as double?[string])
参数类型描述
参数
objectType
类型
invalid
描述
a value of [item, block, entity, dimension, or biome]
参数
locationID
类型
资源位置
描述
the biome or dimension key
参数
mobID
类型
资源位置
描述
the key for the mob being set
参数
modifiers
类型
double?[string]
描述
a map of attributes (health, speed, or damage) and modifiers

Link to setNegativeEffect

Name: setNegativeEffect

registers a configuration setting for what status effects should be applied to the player
if they attempt to wear/hold and item they are not skilled enough to use.

ZenScript
Copy
// CTUtils.setNegativeEffect(objectType as invalid, objectID as ResourceLocation, effects as int?[ResourceLocation])

CTUtils.setNegativeEffect(<constant:pmmo:objecttype:value>, <resource:namespace:path>, {<resource:namespace:path>: 00 as int?, <resource:othernamespace:otherpath>: 00 as int?});
参数类型描述
参数
objectType
类型
invalid
描述
a value of [item, block, entity, dimension, or biome]
参数
objectID
类型
资源位置
描述
参数
effects
类型
int?[ResourceLocation]
描述
a map of effect ids and levels

Link to setPositiveEffect

Name: setPositiveEffect

registers a configuration setting for what status effects should be applied to the player
based on their meeting or not meeting the requirements for the specified location.
Note: a "negative" effect on a dimension will have no use in-game

ZenScript
Copy
// CTUtils.setPositiveEffect(objectType as invalid, objectID as ResourceLocation, effects as int?[ResourceLocation])

CTUtils.setPositiveEffect(<constant:pmmo:objecttype:value>, <resource:namespace:path>, {<resource:namespace:path>: 00 as int?, <resource:othernamespace:otherpath>: 00 as int?});
参数类型描述
参数
objectType
类型
invalid
描述
a value of [item, block, entity, dimension, or biome]
参数
objectID
类型
资源位置
描述
参数
effects
类型
int?[ResourceLocation]
描述
a map of effect ids and levels

Name: setReq

sets a configuration setting for a requirement to perform
and action for the specified item.

ZenScript
Copy
// CTUtils.setReq(objectType as invalid, objectID as ResourceLocation, type as invalid, requirements as int?[string])

CTUtils.setReq(<constant:pmmo:objecttype:value>, <resource:namespace:path>, <constant:pmmo:reqtype:value>, {skillname: 00 as int?, otherskillname: 00 as int?});
参数类型描述
参数
objectType
类型
invalid
描述
a value of [item, block, entity, dimension, or biome]
参数
objectID
类型
资源位置
描述
the key for the item being configured
参数
类型
类型
invalid
描述
the requirement category
参数
requirements
类型
int?[string]
描述
a map of skills and levels needed to perform the action

Name: setSalvage

registers a configuration setting for items which can be obtained
via salvage from the item supplied.
This class provides SalvageBuilder as a means to construct
the salvage settings for each output object

ZenScript
Copy
// CTUtils.setSalvage(item as ResourceLocation, salvage as SalvageBuilder[ResourceLocation])

CTUtils.setSalvage(<resource:namespace:path>, {<resource:namespace:path>:builderInstance, <resource:othernamespace:otherpath>:otherbuilderInstance});
参数类型描述
参数
item
类型
资源位置
描述
a key for the item to be consumed by the salvage operation
参数
salvage
类型
SalvageBuilder[ResourceLocation]
描述
a map of output item keys and the conditions for salvage

Name: setXpAward

registers a configuration setting for experience that should be awarded
to a player for performing an action with/on a specific object.

ZenScript
Copy
// CTUtils.setXpAward(objectType as invalid, objectID as ResourceLocation, type as invalid, award as long?[string])

CTUtils.setXpAward(<constant:pmmo:objecttype:value>, <resource:namespace:path>, <constant:pmmo:eventtype:value>, {skillname: 00 as long?, otherskillname: 00 as long?});
参数类型描述
参数
objectType
类型
invalid
描述
a value of [item, block, entity, dimension, or biome]
参数
objectID
类型
资源位置
描述
the key for the item being configured
参数
类型
类型
invalid
描述
the event which awards the experience
参数
award
类型
long?[string]
描述
a map of skills and experience values to be awarded