Files
dndbeyond_src/ddb_main/packages/rules-engine/es/engine/Campaign/utils.js
T

33 lines
1.1 KiB
JavaScript

import { getCharacters } from './accessors';
/**
*
* @param campaign
* @param characterId
* @returns {CampaignDataContract | null}
*/
export function getCharacterById(campaign, characterId) {
var _a, _b;
return (_b = (_a = getCharacters(campaign)) === null || _a === void 0 ? void 0 : _a.find((character) => character.characterId === characterId)) !== null && _b !== void 0 ? _b : null;
}
/**
*
* @param campaign
* @param characterId
* @returns {string}
*/
export function getCharacterName(campaign, characterId) {
var _a, _b;
return (_b = (_a = getCharacterById(campaign, characterId)) === null || _a === void 0 ? void 0 : _a.characterName) !== null && _b !== void 0 ? _b : '';
}
/**
* @description Given a character id, this determines whether or not that character in the campaign is assigned
* to a player.
* @param campaign
* @param characterId
* @returns {boolean}
*/
export function isCharacterAssignedToAPlayer(campaign, characterId) {
var _a;
return !!((_a = getCharacterById(campaign, characterId)) === null || _a === void 0 ? void 0 : _a.isAssigned);
}