export default class KHHooks { static async onCreateActor(actor, options, userId) { if (actor.data.type == "character") { // Load Skills Compendium skills let skillIndex; let actorbaseSkills; if(game.settings.get("kopparhavet", "gameSystem") === "hjaltarnas-tid") { // Set currency name actor.update({ "data.currency.shekel.label": "CURRENCY.SILVER" }); actorbaseSkills = CONFIG.KH.baseSkillsHT skillIndex = await game.packs.get("kopparhavet.skills-ht").getDocuments(); } else { actorbaseSkills = CONFIG.KH.baseSkills; skillIndex = await game.packs.get("kopparhavet.skills").getDocuments(); } // Check if skill already exists by some chance const existingSkills = actor.items.filter((i) => i.type === ItemType.Skill).map((i) => i.name); const skillsToAdd = actorbaseSkills.filter((s) => !existingSkills.includes(s)); // Filter skillIndex array to include only skills for Actor Type. let _skillsList = skillIndex.filter((i) => skillsToAdd.includes(i.data.name)); let _sl = []; _skillsList.forEach((s) => { //s.data._source.data["creatureType"] = actor.data.type; //s.data._source.data["coreSkill"] = true; _sl.push(s.data); }); await actor.createEmbeddedDocuments("Item", _sl); //await actor.createEmbeddedDocuments("Item", [_skillsList.toObject()]); } else { setTimeout(async function () { await actor.sheet.render(true); }, 500); } } }