432
edits
(getHexMasteryBonusTable: Added to generate table of hex mastery bonuses) |
No edit summary |
||
(2 intermediate revisions by the same user not shown) | |||
Line 12: | Line 12: | ||
for i, POI in pairs(SkillData.Cartography.worldMaps[1].pointsOfInterest) do | for i, POI in pairs(SkillData.Cartography.worldMaps[1].pointsOfInterest) do | ||
if POI.id == id then | if POI.id == id then | ||
return POI | |||
end | |||
end | |||
return nil | |||
end | |||
function p.getPointOfInterestByXY(X, Y) | |||
local hex = p.getHexByXY(X, Y) | |||
if hex == nil then | |||
return nil | |||
end | |||
for i, POI in pairs(SkillData.Cartography.worldMaps[1].pointsOfInterest) do | |||
if (POI.coords.q == hex.coordinates.q and | |||
POI.coords.r == hex.coordinates.r) then | |||
return POI | return POI | ||
end | end | ||
Line 263: | Line 277: | ||
end | end | ||
function p._getDiscoveryRewardsTable( | function p._getDiscoveryRewardsTable(items) | ||
local POIs = {} | local POIs = {} | ||
for i, POI in ipairs(SkillData.Cartography.worldMaps[1].pointsOfInterest) do | for i, POI in ipairs(SkillData.Cartography.worldMaps[1].pointsOfInterest) do | ||
if POI.discoveryRewards ~= nil and POI.discoveryRewards.items ~= nil then | if POI.discoveryRewards ~= nil and POI.discoveryRewards.items ~= nil then | ||
for i, reward in ipairs(POI.discoveryRewards.items) do | for i, reward in ipairs(POI.discoveryRewards.items) do | ||
if reward.id == item.id then | for j, item in ipairs(items) do | ||
if reward.id == item.id then | |||
table.insert(POIs, POI) | |||
break | |||
end | |||
end | end | ||
end | end | ||
Line 304: | Line 321: | ||
function p.getDiscoveryRewardsTable(frame) | function p.getDiscoveryRewardsTable(frame) | ||
local | local itemNames = frame.args ~= nil and frame.args or frame | ||
local item = Items.getItem(itemName) | local items = {} | ||
if | for i, itemName in ipairs(itemNames) do | ||
return Shared.printError('No | item = Items.getItem(itemName) | ||
if item ~= nil then | |||
items[i] = item | |||
end | |||
end | |||
if #items == nil then | |||
return Shared.printError('No items found for with names: "' .. itemNames .. '"') | |||
end | end | ||
local resultTable = p._getDiscoveryRewardsTable( | local resultTable = p._getDiscoveryRewardsTable(items) | ||
if resultTable == '' then | if resultTable == '' then | ||
return '' | return '' | ||
Line 322: | Line 345: | ||
if POI.discoveryRewards ~= nil and POI.discoveryRewards.items ~= nil then | if POI.discoveryRewards ~= nil and POI.discoveryRewards.items ~= nil then | ||
local item = Items.getItemByID(POI.discoveryRewards.items[1].id) | local item = Items.getItemByID(POI.discoveryRewards.items[1].id) | ||
table.insert(testTable, p._getDiscoveryRewardsTable(item)) | table.insert(testTable, p._getDiscoveryRewardsTable({item})) | ||
end | end | ||
end | end |
edits