Initial how_progression baseline

This commit is contained in:
2026-09-20 17:12:20 +00:00
commit 890a250270
22 changed files with 7258 additions and 0 deletions
+27
View File
@@ -0,0 +1,27 @@
-- Passive definitions. Requiring this module does not create world entities.
local byId = {
unknown = require 'shared.contacts.unknown',
crowbar = require 'shared.contacts.crowbar',
mack = require 'shared.contacts.mack',
gabe = require 'shared.contacts.gabe',
deke = require 'shared.contacts.deke',
vinny = require 'shared.contacts.vinny',
cosmic_dave = require 'shared.contacts.cosmic_dave',
}
local phoneOwners = {}
for id, contact in pairs(byId) do
assert(contact.id == id, 'contact ID mismatch: ' .. id)
local number = contact.phone and contact.phone.number
if number then
assert(number:match('^555%-%d%d%d%d$'), 'invalid contact number: ' .. id)
assert(not phoneOwners[number], 'duplicate contact number: ' .. number)
phoneOwners[number] = id
end
end
return {
byId = byId,
get = function(id) return byId[id] end,
phoneOwner = function(number) return phoneOwners[number] end,
}