UNPKG

dcl-npc-toolkit-ai-version

Version:

A collection of tools for creating Non-Player-Characters (NPCs). These are capable of having conversations with the player, and play different animations. AI usage is added atop of it

69 lines 10.4 kB
import 'core-js/features/url'; import { TextEncoder } from 'text-encoding'; import { XMLHttpRequest } from './compatibility/polyfill/xmlhttprequest'; Object.assign(globalThis, { FormData: class FormData { } }); globalThis.TextEncoder = TextEncoder; class FormData { } class InvalidCharacterError extends Error { } var error = function (message) { throw new InvalidCharacterError(message); }; var TABLE = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'; var REGEX_SPACE_CHARACTERS = /<%= spaceCharacters %>/g; const btoaEncode = function (input) { input = String(input); if (/[^\0-\xFF]/.test(input)) { error('The string to be encoded contains characters outside of the ' + 'Latin1 range.'); } var padding = input.length % 3; var output = ''; var position = -1; var a; var b; var c; var buffer; var length = input.length - padding; while (++position < length) { a = input.charCodeAt(position) << 16; b = input.charCodeAt(++position) << 8; c = input.charCodeAt(++position); buffer = a + b + c; output += (TABLE.charAt(buffer >> 18 & 0x3F) + TABLE.charAt(buffer >> 12 & 0x3F) + TABLE.charAt(buffer >> 6 & 0x3F) + TABLE.charAt(buffer & 0x3F)); } if (padding == 2) { a = input.charCodeAt(position) << 8; b = input.charCodeAt(++position); buffer = a + b; output += (TABLE.charAt(buffer >> 10) + TABLE.charAt((buffer >> 4) & 0x3F) + TABLE.charAt((buffer << 2) & 0x3F) + '='); } else if (padding == 1) { buffer = input.charCodeAt(position); output += (TABLE.charAt(buffer >> 2) + TABLE.charAt((buffer << 4) & 0x3F) + '=='); } return output; }; export const base64 = { 'encode': btoaEncode, }; Object.assign(globalThis, { FormData: FormData, XMLHttpRequest: XMLHttpRequest, btoa: btoaEncode, }); if (console != null && !console.warn) console.warn = (...args) => console.log('WARNING', ...args); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjbGFyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZGVjbGFyZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxzQkFBc0IsQ0FBQTtBQUM3QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUV6RSxNQUFNLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRTtJQUN6QixRQUFRLEVBQUUsTUFBTSxRQUFRO0tBQUc7Q0FDekIsQ0FBQyxDQUFBO0FBT0gsVUFBZ0MsQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO0FBRTVELE1BQU0sUUFBUTtDQUFFO0FBV1osTUFBTSxxQkFBc0IsU0FBUSxLQUFLO0NBQUU7QUFFM0MsSUFBSSxLQUFLLEdBQUcsVUFBUyxPQUFXO0lBRzVCLE1BQU0sSUFBSSxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUM3QyxDQUFDLENBQUM7QUFFRixJQUFJLEtBQUssR0FBRyxrRUFBa0UsQ0FBQztBQUUvRSxJQUFJLHNCQUFzQixHQUFHLHlCQUF5QixDQUFDO0FBRzFELE1BQU0sVUFBVSxHQUFHLFVBQVMsS0FBWTtJQUN2QyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RCLElBQUksWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBRzlCLEtBQUssQ0FDSiw4REFBOEQ7WUFDOUQsZUFBZSxDQUNmLENBQUM7SUFDSCxDQUFDO0lBQ0QsSUFBSSxPQUFPLEdBQUcsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDL0IsSUFBSSxNQUFNLEdBQUcsRUFBRSxDQUFDO0lBQ2hCLElBQUksUUFBUSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLElBQUksQ0FBQyxDQUFDO0lBQ04sSUFBSSxDQUFDLENBQUM7SUFDTixJQUFJLENBQUMsQ0FBQztJQUNOLElBQUksTUFBTSxDQUFDO0lBRVgsSUFBSSxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUM7SUFFcEMsT0FBTyxFQUFFLFFBQVEsR0FBRyxNQUFNLEVBQUUsQ0FBQztRQUU1QixDQUFDLEdBQUcsS0FBSyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDckMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUMsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdEMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUNqQyxNQUFNLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7UUFHbkIsTUFBTSxJQUFJLENBQ1QsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQztZQUNqQyxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDO1lBQ2pDLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUM7WUFDaEMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLENBQzNCLENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBSSxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDbEIsQ0FBQyxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BDLENBQUMsR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDakMsTUFBTSxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDZixNQUFNLElBQUksQ0FDVCxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUM7WUFDMUIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUM7WUFDbEMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUM7WUFDbEMsR0FBRyxDQUNILENBQUM7SUFDSCxDQUFDO1NBQU0sSUFBSSxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDekIsTUFBTSxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDcEMsTUFBTSxJQUFJLENBQ1QsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFDO1lBQ3pCLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDO1lBQ2xDLElBQUksQ0FDSixDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU8sTUFBTSxDQUFDO0FBQ2YsQ0FBQyxDQUFDO0FBQ0MsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHO0lBQ3hCLFFBQVEsRUFBRSxVQUFVO0NBR3BCLENBQUM7QUFPSCxNQUFNLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRTtJQUN0QixRQUFRLEVBQUUsUUFBUTtJQUNsQixjQUFjLEVBQUUsY0FBYztJQUM5QixJQUFJLEVBQUUsVUFBVTtDQUNuQixDQUFDLENBQUE7QUFFRixJQUFJLE9BQU8sSUFBSSxJQUFJLElBQUksQ0FBRSxPQUFlLENBQUMsSUFBSTtJQUFHLE9BQWUsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxHQUFHLElBQVcsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAnY29yZS1qcy9mZWF0dXJlcy91cmwnXG5pbXBvcnQgeyBUZXh0RW5jb2RlciB9IGZyb20gJ3RleHQtZW5jb2RpbmcnO1xuaW1wb3J0IHsgWE1MSHR0cFJlcXVlc3QgfSBmcm9tICcuL2NvbXBhdGliaWxpdHkvcG9seWZpbGwveG1saHR0cHJlcXVlc3QnO1xuXG5PYmplY3QuYXNzaWduKGdsb2JhbFRoaXMsIHtcblx0Rm9ybURhdGE6IGNsYXNzIEZvcm1EYXRhIHt9XG4gIH0pXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBHbG9iYWwge1xuICAgIFRleHRFbmNvZGVyOiB0eXBlb2YgVGV4dEVuY29kZXI7XG4gIH1cbn1cblxuKGdsb2JhbFRoaXMgYXMgdW5rbm93biBhcyBHbG9iYWwpLlRleHRFbmNvZGVyID0gVGV4dEVuY29kZXI7XG5cbmNsYXNzIEZvcm1EYXRhe30gXG5cbi8vaHR0cHM6Ly9naXRodWIuY29tL21hdGhpYXNieW5lbnMvYmFzZTY0L2Jsb2IvbWFzdGVyL3NyYy9iYXNlNjQuanNcbi8vc3RhcnQgYmFzZTY0IGVuY29kZVxuICAgIC8qdmFyIEludmFsaWRDaGFyYWN0ZXJFcnJvciA9IGZ1bmN0aW9uKG1lc3NhZ2U6YW55KSB7XG4gICAgICAgIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2U7XG4gICAgfTtcbiAgICBcbiAgICBJbnZhbGlkQ2hhcmFjdGVyRXJyb3IucHJvdG90eXBlID0gbmV3IEVycm9yO1xuICAgIEludmFsaWRDaGFyYWN0ZXJFcnJvci5wcm90b3R5cGUubmFtZSA9ICdJbnZhbGlkQ2hhcmFjdGVyRXJyb3InO1xuICAgICovXG4gICAgY2xhc3MgSW52YWxpZENoYXJhY3RlckVycm9yIGV4dGVuZHMgRXJyb3J7fVxuXG4gICAgdmFyIGVycm9yID0gZnVuY3Rpb24obWVzc2FnZTphbnkpIHtcbiAgICAgICAgLy8gTm90ZTogdGhlIGVycm9yIG1lc3NhZ2VzIHVzZWQgdGhyb3VnaG91dCB0aGlzIGZpbGUgbWF0Y2ggdGhvc2UgdXNlZCBieVxuICAgICAgICAvLyB0aGUgbmF0aXZlIGBhdG9iYC9gYnRvYWAgaW1wbGVtZW50YXRpb24gaW4gQ2hyb21pdW0uXG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkQ2hhcmFjdGVyRXJyb3IobWVzc2FnZSk7XG4gICAgfTtcblxuICAgIHZhciBUQUJMRSA9ICdBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvJztcbiAgICAvLyBodHRwOi8vd2hhdHdnLm9yZy9odG1sL2NvbW1vbi1taWNyb3N5bnRheGVzLmh0bWwjc3BhY2UtY2hhcmFjdGVyXG4gICAgdmFyIFJFR0VYX1NQQUNFX0NIQVJBQ1RFUlMgPSAvPCU9IHNwYWNlQ2hhcmFjdGVycyAlPi9nO1xuICAgIC8vIGBlbmNvZGVgIGlzIGRlc2lnbmVkIHRvIGJlIGZ1bGx5IGNvbXBhdGlibGUgd2l0aCBgYnRvYWAgYXMgZGVzY3JpYmVkIGluIHRoZVxuXHQvLyBIVE1MIFN0YW5kYXJkOiBodHRwOi8vd2hhdHdnLm9yZy9odG1sL3dlYmFwcGFwaXMuaHRtbCNkb20td2luZG93YmFzZTY0LWJ0b2Fcblx0Y29uc3QgYnRvYUVuY29kZSA9IGZ1bmN0aW9uKGlucHV0OnN0cmluZykge1xuXHRcdGlucHV0ID0gU3RyaW5nKGlucHV0KTtcblx0XHRpZiAoL1teXFwwLVxceEZGXS8udGVzdChpbnB1dCkpIHtcblx0XHRcdC8vIE5vdGU6IG5vIG5lZWQgdG8gc3BlY2lhbC1jYXNlIGFzdHJhbCBzeW1ib2xzIGhlcmUsIGFzIHN1cnJvZ2F0ZXMgYXJlXG5cdFx0XHQvLyBtYXRjaGVkLCBhbmQgdGhlIGlucHV0IGlzIHN1cHBvc2VkIHRvIG9ubHkgY29udGFpbiBBU0NJSSBhbnl3YXkuXG5cdFx0XHRlcnJvcihcblx0XHRcdFx0J1RoZSBzdHJpbmcgdG8gYmUgZW5jb2RlZCBjb250YWlucyBjaGFyYWN0ZXJzIG91dHNpZGUgb2YgdGhlICcgK1xuXHRcdFx0XHQnTGF0aW4xIHJhbmdlLidcblx0XHRcdCk7XG5cdFx0fVxuXHRcdHZhciBwYWRkaW5nID0gaW5wdXQubGVuZ3RoICUgMztcblx0XHR2YXIgb3V0cHV0ID0gJyc7XG5cdFx0dmFyIHBvc2l0aW9uID0gLTE7XG5cdFx0dmFyIGE7XG5cdFx0dmFyIGI7XG5cdFx0dmFyIGM7XG5cdFx0dmFyIGJ1ZmZlcjtcblx0XHQvLyBNYWtlIHN1cmUgYW55IHBhZGRpbmcgaXMgaGFuZGxlZCBvdXRzaWRlIG9mIHRoZSBsb29wLlxuXHRcdHZhciBsZW5ndGggPSBpbnB1dC5sZW5ndGggLSBwYWRkaW5nO1xuXG5cdFx0d2hpbGUgKCsrcG9zaXRpb24gPCBsZW5ndGgpIHtcblx0XHRcdC8vIFJlYWQgdGhyZWUgYnl0ZXMsIGkuZS4gMjQgYml0cy5cblx0XHRcdGEgPSBpbnB1dC5jaGFyQ29kZUF0KHBvc2l0aW9uKSA8PCAxNjtcblx0XHRcdGIgPSBpbnB1dC5jaGFyQ29kZUF0KCsrcG9zaXRpb24pIDw8IDg7XG5cdFx0XHRjID0gaW5wdXQuY2hhckNvZGVBdCgrK3Bvc2l0aW9uKTtcblx0XHRcdGJ1ZmZlciA9IGEgKyBiICsgYztcblx0XHRcdC8vIFR1cm4gdGhlIDI0IGJpdHMgaW50byBmb3VyIGNodW5rcyBvZiA2IGJpdHMgZWFjaCwgYW5kIGFwcGVuZCB0aGVcblx0XHRcdC8vIG1hdGNoaW5nIGNoYXJhY3RlciBmb3IgZWFjaCBvZiB0aGVtIHRvIHRoZSBvdXRwdXQuXG5cdFx0XHRvdXRwdXQgKz0gKFxuXHRcdFx0XHRUQUJMRS5jaGFyQXQoYnVmZmVyID4+IDE4ICYgMHgzRikgK1xuXHRcdFx0XHRUQUJMRS5jaGFyQXQoYnVmZmVyID4+IDEyICYgMHgzRikgK1xuXHRcdFx0XHRUQUJMRS5jaGFyQXQoYnVmZmVyID4+IDYgJiAweDNGKSArXG5cdFx0XHRcdFRBQkxFLmNoYXJBdChidWZmZXIgJiAweDNGKVxuXHRcdFx0KTtcblx0XHR9XG5cblx0XHRpZiAocGFkZGluZyA9PSAyKSB7XG5cdFx0XHRhID0gaW5wdXQuY2hhckNvZGVBdChwb3NpdGlvbikgPDwgODtcblx0XHRcdGIgPSBpbnB1dC5jaGFyQ29kZUF0KCsrcG9zaXRpb24pO1xuXHRcdFx0YnVmZmVyID0gYSArIGI7XG5cdFx0XHRvdXRwdXQgKz0gKFxuXHRcdFx0XHRUQUJMRS5jaGFyQXQoYnVmZmVyID4+IDEwKSArXG5cdFx0XHRcdFRBQkxFLmNoYXJBdCgoYnVmZmVyID4+IDQpICYgMHgzRikgK1xuXHRcdFx0XHRUQUJMRS5jaGFyQXQoKGJ1ZmZlciA8PCAyKSAmIDB4M0YpICtcblx0XHRcdFx0Jz0nXG5cdFx0XHQpO1xuXHRcdH0gZWxzZSBpZiAocGFkZGluZyA9PSAxKSB7XG5cdFx0XHRidWZmZXIgPSBpbnB1dC5jaGFyQ29kZUF0KHBvc2l0aW9uKTtcblx0XHRcdG91dHB1dCArPSAoXG5cdFx0XHRcdFRBQkxFLmNoYXJBdChidWZmZXIgPj4gMikgK1xuXHRcdFx0XHRUQUJMRS5jaGFyQXQoKGJ1ZmZlciA8PCA0KSAmIDB4M0YpICtcblx0XHRcdFx0Jz09J1xuXHRcdFx0KTtcblx0XHR9XG5cblx0XHRyZXR1cm4gb3V0cHV0O1xuXHR9O1xuICAgIGV4cG9ydCBjb25zdCBiYXNlNjQgPSB7XG5cdFx0J2VuY29kZSc6IGJ0b2FFbmNvZGUsXG5cdFx0Ly8nZGVjb2RlJzogZGVjb2RlLFxuXHRcdC8vJ3ZlcnNpb24nOiAnPCU9IHZlcnNpb24gJT4nXG5cdH07XG4vL2VuZCBiYXNlNjQgZW5jb2RlXG5cbi8qKlxuICogVGhpcyBpcyBhIHdvcmthcm91bmQgdG8gc29sdmUgYSBydW50aW1lIGlzc3Vlc1xuICogXG4gKi9cbk9iamVjdC5hc3NpZ24oZ2xvYmFsVGhpcywge1xuICAgIEZvcm1EYXRhOiBGb3JtRGF0YSxcbiAgICBYTUxIdHRwUmVxdWVzdDogWE1MSHR0cFJlcXVlc3QsXG4gICAgYnRvYTogYnRvYUVuY29kZSxcbn0pXG5cbmlmIChjb25zb2xlICE9IG51bGwgJiYgIShjb25zb2xlIGFzIGFueSkud2FybikgKGNvbnNvbGUgYXMgYW55KS53YXJuID0gKC4uLmFyZ3M6IGFueVtdKSA9PiBjb25zb2xlLmxvZygnV0FSTklORycsIC4uLmFyZ3MpIl19