Huge rewrite. Seriously.
This commit is contained in:
parent
2aa5cd4927
commit
f9b3a5f162
7
README
7
README
|
@ -8,12 +8,7 @@ https://github.com/minetest-technic/unified_inventory
|
||||||
|
|
||||||
This is the "u_skindb" branch, it is ment to download the skins from addi's skin database (http://minetest.fensta.bplaced.net).
|
This is the "u_skindb" branch, it is ment to download the skins from addi's skin database (http://minetest.fensta.bplaced.net).
|
||||||
|
|
||||||
To re-download the latest skins you have 2 ways:
|
Run the script "update_from_db.py" to update the skins.
|
||||||
1, if you have blender) Run the script "update_from_db.py" OR "update_from_db2.py"
|
|
||||||
and then "./generate_previews.sh"
|
|
||||||
|
|
||||||
2, if you are lazy) Run the script "update_from_db_hacky.py"
|
|
||||||
and then make sure, you have set "u_skins.used_hacky" to "true" in "./u_skins/init.lua"
|
|
||||||
|
|
||||||
Credits:
|
Credits:
|
||||||
MirceaKitsune (WTFPL) + bundled script by Zeg9 (WTFPL too):
|
MirceaKitsune (WTFPL) + bundled script by Zeg9 (WTFPL too):
|
||||||
|
|
|
@ -1,48 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
# This script is used to generate the previews needed by the mod
|
|
||||||
# It requires blender with the latest python API (2.6x is tested)
|
|
||||||
# A script that works with older blenders and, maybe, without python, is available in older commits.
|
|
||||||
# This script can also use pngcrush and imagemagick to reduce output size,
|
|
||||||
# please enable them if you want to push to the git repository of the mod.
|
|
||||||
# Pngcrush output will be written to .previews/pngcrush_output
|
|
||||||
# Warning: any file in .previews/ and u_skins/textures might be deleted without asking.
|
|
||||||
PNGCRUSH=true
|
|
||||||
IMAGEMAGICK=true
|
|
||||||
cd .previews
|
|
||||||
rm ../u_skins/textures/*_preview*.png # Remove all previous previews
|
|
||||||
blender -b skin_previews.blend --python-text "Generate previews" > /dev/null
|
|
||||||
if $IMAGEMAGICK
|
|
||||||
then echo "Stripping metadata from generated files..."
|
|
||||||
else echo "Moving files..."
|
|
||||||
fi
|
|
||||||
rm -rf output # remove my output
|
|
||||||
mkdir -p output
|
|
||||||
for i in blender_out/character_*_00.png;
|
|
||||||
do
|
|
||||||
out_name=$(basename $i | sed -e 's/_00.png//g')
|
|
||||||
out_file=output/"$out_name"_preview.png
|
|
||||||
if $IMAGEMAGICK
|
|
||||||
then
|
|
||||||
convert -strip $i $out_file
|
|
||||||
else
|
|
||||||
mv $i $out_file
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
for i in blender_out/character_*_01.png;
|
|
||||||
do
|
|
||||||
out_name=$(basename $i | sed -e 's/_01.png//g')
|
|
||||||
out_file=output/"$out_name"_preview_back.png
|
|
||||||
if $IMAGEMAGICK
|
|
||||||
then
|
|
||||||
convert -strip $i $out_file
|
|
||||||
else
|
|
||||||
mv $i $out_file
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
if $PNGCRUSH
|
|
||||||
then
|
|
||||||
echo "Running pngcrush..."
|
|
||||||
pngcrush -d ../u_skins/textures/ output/*_preview*.png 2> pngcrush_output
|
|
||||||
else mv output/*_preview*.png ../u_skins/textures/
|
|
||||||
fi
|
|
||||||
echo "Done !"
|
|
59
set_meta.sh
59
set_meta.sh
|
@ -1,59 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
SPRITES=$(find -regextype sed -regex '.*/player_[0-9]\{1,\}.png' | sort -V)
|
|
||||||
MODELS=$(find -regextype sed -regex '.*/character_[0-9]\{1,\}.png' | sort -V)
|
|
||||||
function ask_for_meta {
|
|
||||||
convert $2 -scale 100x200 /tmp/skins_set_meta
|
|
||||||
SNAME=$(basename $1)
|
|
||||||
SNAME=${SNAME%.*}
|
|
||||||
METAFILE=u_skins/meta/$SNAME.txt
|
|
||||||
FORCE=$3
|
|
||||||
if $FORCE || ! [ -f $METAFILE ]
|
|
||||||
then
|
|
||||||
echo $METAFILE
|
|
||||||
YADOUT=$(yad --form --image=/tmp/skins_set_meta --field $SNAME:LBL --field=Name --field=Author --field=Description --field=Comment)
|
|
||||||
if [ -z "$YADOUT" ]; then exit; fi # canceled
|
|
||||||
OIFS="$IFS"
|
|
||||||
IFS='|'
|
|
||||||
read -a VALUES <<< "$YADOUT"
|
|
||||||
IFS="$OIFS"
|
|
||||||
NAME=${VALUES[1]}
|
|
||||||
AUTHOR=${VALUES[2]}
|
|
||||||
DESCRIPTION=${VALUES[3]}
|
|
||||||
COMMENT=${VALUES[4]}
|
|
||||||
if [ -n "$NAME" ] && [ -n "$AUTHOR" ]
|
|
||||||
then
|
|
||||||
echo -n > $METAFILE # clear it
|
|
||||||
echo 'name = "'$NAME'",' >> $METAFILE
|
|
||||||
echo 'author = "'$AUTHOR'",' >> $METAFILE
|
|
||||||
# only write description and comment if they are specified
|
|
||||||
if [ -n "$DESCRIPTION" ]
|
|
||||||
then
|
|
||||||
echo 'description = "'$DESCRIPTION'",' >> $METAFILE
|
|
||||||
fi
|
|
||||||
if [ -n "$COMMENT" ]
|
|
||||||
then
|
|
||||||
echo 'comment = "'$COMMENT'",' >> $METAFILE
|
|
||||||
fi
|
|
||||||
echo "Saved !"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
if [ -z $1 ]
|
|
||||||
then
|
|
||||||
for i in $SPRITES
|
|
||||||
do
|
|
||||||
ask_for_meta $i $i false
|
|
||||||
done
|
|
||||||
for i in $MODELS
|
|
||||||
do
|
|
||||||
ask_for_meta $i ${i%.*}_preview.png false
|
|
||||||
done
|
|
||||||
else
|
|
||||||
if [ -f ${1%.*}_preview.png ]
|
|
||||||
then
|
|
||||||
ask_for_meta $1 ${1%.*}_preview.png true
|
|
||||||
else
|
|
||||||
ask_for_meta $1 $1 true
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
rm /tmp/skins_set_meta
|
|
|
@ -1,2 +1,2 @@
|
||||||
unified_inventory?
|
unified_inventory
|
||||||
default
|
default
|
||||||
|
|
|
@ -3,36 +3,44 @@
|
||||||
-- Copyright (c) 2012 cornernote, Dean Montgomery
|
-- Copyright (c) 2012 cornernote, Dean Montgomery
|
||||||
-- License: GPLv3
|
-- License: GPLv3
|
||||||
u_skins = {}
|
u_skins = {}
|
||||||
u_skins.type = { SPRITE=0, MODEL=1 }
|
u_skins.type = { SPRITE=0, MODEL=1, ERROR=99 }
|
||||||
u_skins.pages = {}
|
u_skins.pages = {}
|
||||||
u_skins.u_skins = {}
|
u_skins.u_skins = {}
|
||||||
u_skins.used_hacky = false -- set to true if used hacky way to update skins
|
u_skins.file_save = false
|
||||||
|
|
||||||
u_skins.get_type = function(texture)
|
u_skins.get_type = function(texture)
|
||||||
if not texture then return end
|
if not texture then return u_skins.type.ERROR end
|
||||||
|
if not u_skins.meta[texture] then
|
||||||
|
return u_skins.type.ERROR
|
||||||
|
end
|
||||||
if string.sub(texture,0,string.len("character")) == "character" then
|
if string.sub(texture,0,string.len("character")) == "character" then
|
||||||
return u_skins.type.MODEL
|
return u_skins.type.MODEL
|
||||||
end
|
end
|
||||||
if string.sub(texture,0,string.len("player")) == "player" then
|
if string.sub(texture,0,string.len("player")) == "player" then
|
||||||
return u_skins.type.SPRITE
|
return u_skins.type.SPRITE
|
||||||
end
|
end
|
||||||
|
return u_skins.type.ERROR
|
||||||
end
|
end
|
||||||
|
|
||||||
u_skins.modpath = minetest.get_modpath("u_skins")
|
u_skins.modpath = minetest.get_modpath("u_skins")
|
||||||
dofile(u_skins.modpath.."/skinlist.lua")
|
dofile(u_skins.modpath.."/skinlist.lua")
|
||||||
dofile(u_skins.modpath.."/meta.lua")
|
|
||||||
dofile(u_skins.modpath.."/players.lua")
|
dofile(u_skins.modpath.."/players.lua")
|
||||||
|
|
||||||
|
|
||||||
u_skins.update_player_skin = function(player)
|
u_skins.update_player_skin = function(player)
|
||||||
name = player:get_player_name()
|
local name = player:get_player_name()
|
||||||
if u_skins.get_type(u_skins.u_skins[name]) == u_skins.type.SPRITE then
|
local skin_type = u_skins.get_type(u_skins.u_skins[name])
|
||||||
|
if skin_type == u_skins.type.ERROR then
|
||||||
|
u_skins.u_skins[name] = "character_1"
|
||||||
|
skin_type = u_skins.type.MODEL
|
||||||
|
end
|
||||||
|
if skin_type == u_skins.type.SPRITE then
|
||||||
player:set_properties({
|
player:set_properties({
|
||||||
visual = "upright_sprite",
|
visual = "upright_sprite",
|
||||||
textures = {u_skins.u_skins[name]..".png",u_skins.u_skins[name].."_back.png"},
|
textures = {u_skins.u_skins[name]..".png",u_skins.u_skins[name].."_back.png"},
|
||||||
visual_size = {x=1, y=2},
|
visual_size = {x=1, y=2},
|
||||||
})
|
})
|
||||||
elseif u_skins.get_type(u_skins.u_skins[name]) == u_skins.type.MODEL then
|
elseif skin_type == u_skins.type.MODEL then
|
||||||
player:set_properties({
|
player:set_properties({
|
||||||
visual = "mesh",
|
visual = "mesh",
|
||||||
mesh = "character.x",
|
mesh = "character.x",
|
||||||
|
@ -40,22 +48,20 @@ u_skins.update_player_skin = function(player)
|
||||||
visual_size = {x=1, y=1},
|
visual_size = {x=1, y=1},
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
u_skins.save()
|
u_skins.file_save = true
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Display Current Skin
|
-- Display Current Skin
|
||||||
unified_inventory.register_page("u_skins", {
|
unified_inventory.register_page("u_skins", {
|
||||||
get_formspec = function(player)
|
get_formspec = function(player)
|
||||||
name = player:get_player_name()
|
local name = player:get_player_name()
|
||||||
local formspec = "background[0.06,0.99;7.92,7.52;ui_misc_form.png]"
|
local formspec = "background[0.06,0.99;7.92,7.52;ui_misc_form.png]"
|
||||||
if u_skins.get_type(u_skins.u_skins[name]) == u_skins.type.MODEL then
|
if u_skins.get_type(u_skins.u_skins[name]) == u_skins.type.MODEL then
|
||||||
formspec = formspec.."image[0,.75;1,2;"..u_skins.u_skins[name].."_preview.png]"
|
formspec = formspec
|
||||||
if not u_skins.used_hacky then
|
.. "image[0,.75;1,2;"..u_skins.u_skins[name].."_preview.png]"
|
||||||
-- player back view
|
--.. "image[1,.75;1,2;"..u_skins.u_skins[name].."_preview_back.png]"
|
||||||
formspec = formspec.."image[1,.75;1,2;"..u_skins.u_skins[name].."_preview_back.png]"
|
.. "label[6,.5;Raw texture:]"
|
||||||
end
|
.. "image[6,1;2,1;"..u_skins.u_skins[name]..".png]"
|
||||||
formspec = formspec.."label[6,.5;Raw texture:]"
|
|
||||||
.."image[6,1;2,1;"..u_skins.u_skins[name]..".png]"
|
|
||||||
|
|
||||||
else
|
else
|
||||||
formspec = formspec
|
formspec = formspec
|
||||||
|
@ -64,17 +70,17 @@ unified_inventory.register_page("u_skins", {
|
||||||
end
|
end
|
||||||
local meta = u_skins.meta[u_skins.u_skins[name]]
|
local meta = u_skins.meta[u_skins.u_skins[name]]
|
||||||
if meta then
|
if meta then
|
||||||
if meta.name then
|
if meta.name ~= "" then
|
||||||
formspec = formspec .. "label[2,.5;Name: "..meta.name.."]"
|
formspec = formspec .. "label[2,.5;Name: "..minetest.formspec_escape(meta.name).."]"
|
||||||
end
|
end
|
||||||
if meta.author then
|
if meta.author ~= "" then
|
||||||
formspec = formspec .. "label[2,1;Author: "..meta.author.."]"
|
formspec = formspec .. "label[2,1;Author: "..minetest.formspec_escape(meta.author).."]"
|
||||||
end
|
end
|
||||||
if meta.description then
|
if meta.description ~= "" then
|
||||||
formspec = formspec .. "label[2,1.5;"..meta.description.."]"
|
formspec = formspec .. "label[2,1.5;"..minetest.formspec_escape(meta.description).."]"
|
||||||
end
|
end
|
||||||
if meta.comment then
|
if meta.comment ~= "" then
|
||||||
formspec = formspec .. 'label[2,2;"'..meta.comment..'"]'
|
formspec = formspec .. 'label[2,2;"'..minetest.formspec_escape(meta.comment)..'"]'
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -101,7 +107,7 @@ for x = 0, math.floor(#u_skins.list/16+1) do
|
||||||
for i, skin in ipairs(u_skins.list) do
|
for i, skin in ipairs(u_skins.list) do
|
||||||
if skip < page*16 then skip = skip + 1 else
|
if skip < page*16 then skip = skip + 1 else
|
||||||
if index < 16 then
|
if index < 16 then
|
||||||
formspec = formspec .. "image_button["..(index%8)..","..((math.floor(index/8))*2)..";1,2;"..skin
|
formspec = formspec .. "image_button["..(index%8)..","..((math.floor(index/8))*2-0.2)..";1,2;"..skin
|
||||||
if u_skins.get_type(skin) == u_skins.type.MODEL then
|
if u_skins.get_type(skin) == u_skins.type.MODEL then
|
||||||
formspec = formspec .. "_preview"
|
formspec = formspec .. "_preview"
|
||||||
end
|
end
|
||||||
|
@ -112,15 +118,15 @@ for x = 0, math.floor(#u_skins.list/16+1) do
|
||||||
end
|
end
|
||||||
-- prev next page buttons
|
-- prev next page buttons
|
||||||
if page > 0 then
|
if page > 0 then
|
||||||
formspec = formspec .. "button[0,4;1,.5;u_skins_page_"..(page-1)..";<<]"
|
formspec = formspec .. "button[0,3.8;1,.5;u_skins_page_"..(page-1)..";<<]"
|
||||||
else
|
else
|
||||||
formspec = formspec .. "button[0,4;1,.5;u_skins_page_"..page..";<<]"
|
formspec = formspec .. "button[0,3.8;1,.5;u_skins_page_"..page..";<<]"
|
||||||
end
|
end
|
||||||
formspec = formspec .. "button[.75,4;6.5,.5;u_skins_page_"..page..";Page "..(page+1).."/"..math.floor(#u_skins.list/16+1).."]" -- a button is used so text is centered
|
formspec = formspec .. "button[.75,3.8;6.5,.5;u_skins_page_"..page..";Page "..(page+1).."/"..math.floor(#u_skins.list/16+1).."]" -- a button is used so text is centered
|
||||||
if index > 16 then
|
if index > 16 then
|
||||||
formspec = formspec .. "button[7,4;1,.5;u_skins_page_"..(page+1)..";>>]"
|
formspec = formspec .. "button[7,3.8;1,.5;u_skins_page_"..(page+1)..";>>]"
|
||||||
else
|
else
|
||||||
formspec = formspec .. "button[7,4;1,.5;u_skins_page_"..page..";>>]"
|
formspec = formspec .. "button[7,3.8;1,.5;u_skins_page_"..page..";>>]"
|
||||||
end
|
end
|
||||||
return {formspec=formspec}
|
return {formspec=formspec}
|
||||||
end,
|
end,
|
||||||
|
@ -147,9 +153,13 @@ end)
|
||||||
|
|
||||||
-- set defaults
|
-- set defaults
|
||||||
minetest.register_on_joinplayer(function(player)
|
minetest.register_on_joinplayer(function(player)
|
||||||
if not u_skins.u_skins[player:get_player_name()] then
|
local player_name = player:get_player_name()
|
||||||
u_skins.u_skins[player:get_player_name()] = "character_1"
|
if not u_skins.u_skins[player_name] then
|
||||||
|
u_skins.u_skins[player_name] = "character_1"
|
||||||
|
end
|
||||||
|
if not u_skins.meta[u_skins.u_skins[player_name]] then
|
||||||
|
u_skins.u_skins[player_name] = "character_1"
|
||||||
|
minetest.chat_send_player(player_name, "Skin error: Your skin does no longer exist, please switch to an other!")
|
||||||
end
|
end
|
||||||
u_skins.update_player_skin(player)
|
u_skins.update_player_skin(player)
|
||||||
end)
|
end)
|
||||||
|
|
||||||
|
|
|
@ -1,15 +0,0 @@
|
||||||
u_skins.meta = {}
|
|
||||||
for _, i in ipairs(u_skins.list) do
|
|
||||||
u_skins.meta[i] = {}
|
|
||||||
local f = io.open(u_skins.modpath.."/meta/"..i..".txt")
|
|
||||||
local data = nil
|
|
||||||
if f then
|
|
||||||
data = minetest.deserialize("return {"..f:read('*all').."}")
|
|
||||||
f:close()
|
|
||||||
end
|
|
||||||
data = data or {}
|
|
||||||
u_skins.meta[i].name = data.name or ""
|
|
||||||
u_skins.meta[i].author = data.author or ""
|
|
||||||
u_skins.meta[i].description = data.description or nil
|
|
||||||
u_skins.meta[i].comment = data.comment or nil
|
|
||||||
end
|
|
|
@ -1,3 +1,3 @@
|
||||||
name = "Sam 0",
|
Sam 0
|
||||||
author = "Jordach",
|
Jordach
|
||||||
comment = "CC BY-SA 3.0",
|
CC BY-SA 3.0
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Tuxedo Sam",
|
|
||||||
author = "Jordach",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Ladyvioletkitty",
|
|
||||||
author = "lordphoenixmh",
|
|
||||||
comment = "CC BY 4.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "4°district",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Chop",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Franklin",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Trevor",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Bart Simpson",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Creeper",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "War Machine",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Gangnam Style",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Sonic The Hedgehog",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Semmett9",
|
|
||||||
author = "Infinatum",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Charizard",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Scarlet Spider-man",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Ferdi Napoli",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Finn The Adventured",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Jake",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Ferdi Napoli Reserve",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Joker",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Bleau Steve",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Deadpool Bleau",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Seth Rollins",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "John",
|
|
||||||
author = "Evergreen",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Daffy Duck",
|
|
||||||
author = "LuxAtheris",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "DareDevil",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Clone",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Banana Guy",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Rubber",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Gothic Sam",
|
|
||||||
author = "GingerHunter797",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Tails",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Aguia Explorer",
|
|
||||||
author = "Davizinho",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Toad",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "oOChainLynxOo",
|
|
||||||
author = "oOChainLynxOo",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "rotor112",
|
|
||||||
author = "rotor112",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "amazing spiderman",
|
|
||||||
author = "mateus",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "black spiderman",
|
|
||||||
author = "mateus",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Sam Mese Tee",
|
|
||||||
author = "oOChainLynxOo",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Jesus",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Wires",
|
|
||||||
author = "Geopbyte",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Vector",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Fire Mario",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "skin minecraft",
|
|
||||||
author = "lestouem",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "santa",
|
|
||||||
author = "https://dl.dropbox.com/s/cs0vhq8kkzpcvre/santa.zip?dl=1",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "PenguinDad",
|
|
||||||
author = "PenguinDad",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Older Man Sam",
|
|
||||||
author = "philipbenr",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Army",
|
|
||||||
author = "Ragnar",
|
|
||||||
comment = "CC BY-NC-SA 4.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "New Ferdi Napoli Skin",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Mcc457",
|
|
||||||
author = "Ferdi Napoli",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Jan",
|
|
||||||
author = "Jan",
|
|
||||||
comment = "CC BY 4.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "PilzAdam",
|
|
||||||
author = "PilzAdam",
|
|
||||||
comment = "CC BY 4.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Renan123",
|
|
||||||
author = "sou o melhor",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "PenguinDad with Cape",
|
|
||||||
author = "PenguinDad",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Adarqet",
|
|
||||||
author = "Adarqet",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Adarqet(Cape)",
|
|
||||||
author = "Adarqet",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "wither",
|
|
||||||
author = "mario alberto",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "G-Robo v5000",
|
|
||||||
author = "philipbenr",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Cywalk Sam",
|
|
||||||
author = "w_laenger",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "rantathe",
|
|
||||||
author = "ranta",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "ranta mk 2",
|
|
||||||
author = "ranta",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "jojoa1997",
|
|
||||||
author = "jojoa1997",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Zenohelds default player",
|
|
||||||
author = "sdzen",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Sdzen",
|
|
||||||
author = "sdzen",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "horrible spring sdzen",
|
|
||||||
author = "sdzen",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +1,3 @@
|
||||||
name = "Sam I",
|
Sam I
|
||||||
author = "Jordach",
|
Jordach
|
||||||
comment = "CC BY-SA 3.0",
|
CC BY-SA 3.0
|
|
@ -1,3 +0,0 @@
|
||||||
name = "B",
|
|
||||||
author = "sdzen",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Demon Farmer Sam (ray8888 server)",
|
|
||||||
author = "sdzen",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Tree",
|
|
||||||
author = "Evergreen",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Interstella 5555 guitarist",
|
|
||||||
author = "philipbenr",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Brett Favre",
|
|
||||||
author = "philipbenr",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Summer Sam",
|
|
||||||
author = "philipbenr",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Female Sam II",
|
|
||||||
author = "philipbenr",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Space Sam",
|
|
||||||
author = "philipbenr",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Tree",
|
|
||||||
author = "Evergreen",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "steel man",
|
|
||||||
author = "rotor112",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Sam II",
|
|
||||||
author = "Jordach",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "philipbenr",
|
|
||||||
author = "philipbenr",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "vf",
|
|
||||||
author = "vf",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Summer",
|
|
||||||
author = "lizzie",
|
|
||||||
comment = "CC BY-NC-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "jojoa1997 2",
|
|
||||||
author = "jojoa1997",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "warrior",
|
|
||||||
author = "DJOZZY",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "NERD",
|
|
||||||
author = "DJOZZY",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "pj time",
|
|
||||||
author = "DJOZZY",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "adventure",
|
|
||||||
author = "DJOZZY",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "marthon",
|
|
||||||
author = "DJOZZY",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "DASHING",
|
|
||||||
author = "DJOZZY",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "Zeg9",
|
|
||||||
author = "Zeg9",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "ALTNINJA",
|
|
||||||
author = "DJOZZY",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "NK",
|
|
||||||
author = "DJOZZY",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "BORN",
|
|
||||||
author = "DJOZZY",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "DJSTEREO",
|
|
||||||
author = "DJOZZY",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "aaaaaaaaaahh",
|
|
||||||
author = "DJOZZY",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "villiantest",
|
|
||||||
author = "marshrover",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
|
@ -1,3 +0,0 @@
|
||||||
name = "villiantest II",
|
|
||||||
author = "marshrover",
|
|
||||||
comment = "CC BY-SA 3.0",
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue