Made AuriInventory dependancy optional, use new AInv api

master
Aurailus 2017-12-26 00:19:16 -08:00
parent 2ca2c62c42
commit a0f76e2e0f
4 changed files with 60 additions and 1 deletions

21
auriinventory.lua Normal file
View File

@ -0,0 +1,21 @@
local path = minetest.get_modpath("auriskins")
dofile(path .. "/formspecs/formspec_skins.lua")
ainv.register_inventory_screen("skins", auriskins.gen_formspec_skins, {
name = "Skins",
image = "auriinventory_tab_icon_12.png",
image_hover = "auriinventory_tab_icon_13.png"
})
ainv.register_callback("skins", function (player, fields)
if fields.skinlist then
local datatable = minetest.explode_textlist_event(fields.skinlist)
if datatable.type == "CHG" then
auriskins.playerskins[player:get_player_name()] = datatable.index
auriskins.update_skin(player)
ainv.reloadInventory(player)
return false --End iterating
end
end
end)

View File

@ -1,3 +1,4 @@
default
player_api
3d_armor?
3d_armor?
auriinventory?

View File

@ -0,0 +1,33 @@
function auriskins.gen_formspec_skins (player)
local fs = ainv.formspec_base(player)
fs = fs .. ainv.create_tabs()
--Labels
fs = fs .. [[
label[7,0;Available Skins]
]]
local playerdata = auriskins.get_skin_data(player)
if playerdata.preview then
fs = fs .. "image[3.5,1;3,6;" .. playerdata.preview .. "]"
else
fs = fs .. "image[2.6,2.6;5,2.5;" .. playerdata.skin .. "]"
end
fs = fs .. "textlist[7,0.5;4,7;skinlist;"
for i = 1, auriskins.skinsloaded do
if auriskins.skindata[i].name then
fs = fs .. auriskins.skindata[i].name .. " (" .. auriskins.skindata[i].author .. ")"
else
fs = fs .. "#ff9999Skin " .. i .. " (No Metadata)"
end
if i ~= auriskins.skinsloaded then
fs = fs .. ","
end
end
fs = fs .. "]" .. ainv.formspec_base_end(player)
return fs
end

View File

@ -4,6 +4,10 @@ auriskins.skindata = {}
auriskins.skinsloaded = 0
if minetest.get_modpath("auriinventory") ~= nil then
dofile(minetest.get_modpath("auriskins") .. "/auriinventory.lua")
end
local i = 0
while true do
i = i + 1