Fixed casting broken by refactoring

This commit is contained in:
Stefan Zermatten
2021-02-11 10:13:35 +02:00
parent 5b9bb6e4bc
commit 25fd5c18e8

View File

@@ -1,11 +1,13 @@
import SimpleSchema from 'simpl-schema'; import SimpleSchema from 'simpl-schema';
import { ValidatedMethod } from 'meteor/mdg:validated-method'; import { ValidatedMethod } from 'meteor/mdg:validated-method';
import { RateLimiterMixin } from 'ddp-rate-limiter-mixin'; import { RateLimiterMixin } from 'ddp-rate-limiter-mixin';
import CreatureProperties, { getCreature } from '/imports/api/creature/creatureProperties/CreatureProperties.js'; import CreatureProperties from '/imports/api/creature/creatureProperties/CreatureProperties.js';
import Creatures from '/imports/api/creature/Creatures.js';
import { damagePropertyWork } from '/imports/api/creature/creatureProperties/methods/damageProperty.js'; import { damagePropertyWork } from '/imports/api/creature/creatureProperties/methods/damageProperty.js';
import { assertEditPermission } from '/imports/api/creature/creaturePermissions.js'; import { assertEditPermission } from '/imports/api/creature/creaturePermissions.js';
import { recomputeCreatureByDoc } from '/imports/api/creature/computation/methods/recomputeCreature.js'; import { recomputeCreatureByDoc } from '/imports/api/creature/computation/methods/recomputeCreature.js';
import { doActionWork } from '/imports/api/creature/actions/doAction.js'; import { doActionWork } from '/imports/api/creature/actions/doAction.js';
import getRootCreatureAncestor from '/imports/api/creature/creatureProperties/getRootCreatureAncestor.js';
const castSpellWithSlot = new ValidatedMethod({ const castSpellWithSlot = new ValidatedMethod({
name: 'creatureProperties.castSpellWithSlot', name: 'creatureProperties.castSpellWithSlot',
@@ -30,11 +32,11 @@ const castSpellWithSlot = new ValidatedMethod({
run({spellId, slotId, targetId}) { run({spellId, slotId, targetId}) {
let spell = CreatureProperties.findOne(spellId); let spell = CreatureProperties.findOne(spellId);
// Check permissions // Check permissions
let creature = getCreature(spell); let creature = getRootCreatureAncestor(spell);
assertEditPermission(creature, this.userId); assertEditPermission(creature, this.userId);
let target = undefined; let target = undefined;
if (targetId) { if (targetId) {
target = getCreature(targetId); target = Creatures.findOne(targetId);
assertEditPermission(target, this.userId); assertEditPermission(target, this.userId);
} }
let slotLevel = spell.level || 0; let slotLevel = spell.level || 0;