//Set icon item
setIcon(<soulshardsrespawn:soul_cage>)

//Set title String
setTitle("Soul Shard")

//Set description String
setDescription("Get the Soul Cage, and one Unbound Soul Shard.")

//Add a parent advancement. The syntax is "modid:folder/path/to/the/advancement/then/filename"
addParent("challenges:challenges/root")

//Set the position
setPos(-1029,-277)

//Hide the connection lines, so I can have a pretty shape
hideLines()

//Adds criteria named "hasFlint" with the trigger type "minecraft:inventory_changed". This function returns the criteria as an object
criteria = addCriteria("hasSoulcage", "minecraft:inventory_changed")
criteria1 = addCriteria("hasSoulshard", "minecraft:inventory_changed")

//Adds the required item for the criteria. This is the item that needs to be in the player inventory.
criteria.addItem(<soulshardsrespawn:soul_cage>)
criteria1.addItem(<soulshardsrespawn:soul_shard>)

//Adds a function to fire upon completion. Any number of these can be added.
addRewardFunction("triumph:happy_birthday")

//Sets the experience to reward upon completion. This can only be set once.
setRewardExperience(42)

//Adds an item to be rewarded upon completion. Only one of these can be set currently.
setRewardItem(<amnesia:memories>)