define([ ], function ( ) { return { accounts: { waffle: { level: 10, messageStyle: 'color-cyan', messagePrefix: '(dev) ', items: [{ type: 'key', name: 'Key to the world', sprite: [12, 0], keyId: 'world' }], skins: [ '1.1', '1.2', '1.3', '1.4', '1.5' ] } }, onBeforePlayerEnterGame: function (obj, blueprint) { var account = obj.account; var config = this.accounts[account] || {}; if (config.items) { var blueprintInventory = blueprint.components.find(c => (c.type == 'inventory')); if (!blueprintInventory) { blueprint.components.push({ type: 'inventory', items: [] }); return; } else if (!blueprintInventory.items) blueprintInventory.items = []; var items = blueprintInventory.items; config.items.forEach(function (item) { var hasItem = items.find(i => (i.name == item.name)); if (hasItem) return; items.push(item); }, this); } }, getRoleLevel: function (player) { var account = player.account; var level = this.accounts[account] ? this.accounts[account].level : 0; return level; }, isRoleLevel: function (player, requireLevel, message) { var account = player.account; var level = this.accounts[account] ? this.accounts[account].level : 0; var success = (level >= requireLevel); if ((!success) && (message)) this.sendMessage(player, message); return success; }, getRoleMessageStyle: function (player) { var account = player.account; return this.accounts[account] ? this.accounts[account].messageStyle : null; }, getRoleMessagePrefix: function (player) { var account = player.account; return this.accounts[account] ? this.accounts[account].messagePrefix : null; }, getSkins: function (account) { return this.accounts[account] ? this.accounts[account].skins : []; }, sendMessage: function (player, msg) { msg = 'Only certain roles can ' + msg + ' at the moment'; player.instance.syncer.queue('onGetMessages', { id: player.id, messages: { class: 'color-green', message: msg } }, [player.serverId]); } }; });