Add guide for migrating to v3.0.0
parent
db6cee3647
commit
c4a8780b34
1 changed files with 45 additions and 0 deletions
45
Migrating to v3.0.0.md
Normal file
45
Migrating to v3.0.0.md
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
Text-Based Actors v3.0.0 ships with some breaking changes that might affect macros
|
||||
or custom sheets within your world. This page will go over what those breaking
|
||||
changes are, and what you can do to restore functionality.
|
||||
|
||||
**If you did not write any custom Macros or world scripts, you do not need to
|
||||
make any changes!**
|
||||
|
||||
## API Location Change
|
||||
The easiest breaking change to fix, is that the globally available `taf` constant
|
||||
now contains multiple subsections. Wherever you used `taf` previously, can be
|
||||
directly replaced with `taf.api`. As there is now a `taf.config` as well, which
|
||||
contains all of the code-configurable properties of the system.
|
||||
|
||||
You can read more about how stuff was moved in [this issue](https://git.varify.ca/Foundry/taf/issues/50)
|
||||
|
||||
## Actor Attributes into Attribute Items
|
||||
Attributes used to exist in the Actor using the following format:
|
||||
```js
|
||||
system: {
|
||||
attr: {
|
||||
attr_key: {
|
||||
name: "Attr Key",
|
||||
value: 0,
|
||||
max: 5,
|
||||
isRange: true,
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
however Attributes are now stored as an Item subtype. A one-time migration will
|
||||
be performed on all world and compendium actors that have attributes in order to
|
||||
convert them into the item subtypes. However this does not affect any macros or
|
||||
other shortcuts for creating Actors that you may have. What you should do while
|
||||
creating Actors programmatically now is to provide an `items` array with the
|
||||
required minimum-attribute-item data that you desire. There is no automatic
|
||||
migration from creating/updating actors in the old style to the embedded items.
|
||||
|
||||
There is a short-cut for updating these attributes on the Actor though by doing
|
||||
something similar to:
|
||||
```js
|
||||
let actor = game.actors.getName(`Frankie`);
|
||||
await actor.setAttributeValue("strength", 20);
|
||||
```
|
||||
Which will update the "strength" attribute on the actor named "Frankie" to 20,
|
||||
if that attribute cannot be found, it will do nothing.
|
||||
Loading…
Add table
Add a link
Reference in a new issue