-- Bundled by luabundle {"version":"1.6.0"} local __bundle_require, __bundle_loaded, __bundle_register, __bundle_modules = (function(superRequire) local loadingPlaceholder = {[{}] = true} local register local modules = {} local require local loaded = {} register = function(name, body) if not modules[name] then modules[name] = body end end require = function(name) local loadedModule = loaded[name] if loadedModule then if loadedModule == loadingPlaceholder then return nil end else if not modules[name] then if not superRequire then local identifier = type(name) == 'string' and '\"' .. name .. '\"' or tostring(name) error('Tried to require ' .. identifier .. ', but no such module has been registered') else return superRequire(name) end end loaded[name] = loadingPlaceholder loadedModule = modules[name](require, loaded, register, modules) loaded[name] = loadedModule end return loadedModule end return require, loaded, register, modules end)(nil) __bundle_register("__root", function(require, _LOADED, __bundle_register, __bundle_modules) require("playercards/ScriptedTarot") end) __bundle_register("playercards/ScriptedTarot", function(require, _LOADED, __bundle_register, __bundle_modules) CARD_OFFSET = Vector(0, 0.1, -2) ORIENTATIONS = { {0, 270, 0}, { 0, 90, 0} } READING = { "Temperance", "Justice", "Hermit", "Hanged Man", "Hierophant", "Lovers", "Chariot", "Wheel of Fortune" } function onLoad() self.addContextMenuItem("Chaos", chaos, false) self.addContextMenuItem("Balance", balance, false) self.addContextMenuItem("Choice", choice, false) self.addContextMenuItem("Destiny (Campaign)", destiny, false) self.addContextMenuItem("Accept Your Fate", fate, false) math.randomseed(os.time()) end function chaos(color) self.shuffle() self.takeObject({ position = self.getPosition() + CARD_OFFSET, rotation = ORIENTATIONS[math.random(2)], smooth = true }) end function balance(color) self.shuffle() for i = 1, 2 do self.takeObject({ position = self.getPosition() + i * CARD_OFFSET, rotation = ORIENTATIONS[i], smooth = true }) end end function choice(color) self.shuffle() for i = 1, 3 do self.takeObject({ position = self.getPosition() + i * CARD_OFFSET, rotation = ORIENTATIONS[1], smooth = true }) end broadcastToColor("Choose and reverse two of the cards.", color) end function destiny(color) self.shuffle() for i = 1, 8 do self.takeObject({ position = self.getPosition() + i * CARD_OFFSET, rotation = ORIENTATIONS[1], smooth = true }) end broadcastToColor("Each card corresponds to one scenario, leftmost is first. Choose and reverse half of the cards (rounded up).", color) end function fate(color) local i = 0 for _, card in ipairs(self.getObjects()) do for _, reading in ipairs(READING) do if string.match(card.name, reading) ~= nil then i = i + 1 self.takeObject({ guid = card.guid, position = self.getPosition() + i * CARD_OFFSET, rotation = ORIENTATIONS[1], smooth = true }) end end end broadcastToColor("Each card corresponds to one scenario, leftmost is first. Choose and reverse half of the cards (rounded up).", color) end end) return __bundle_require("__root")