little_fixes

This commit is contained in:
root 2024-12-19 15:03:11 +01:00
parent 0c7172b177
commit 92b6efc971
3976 changed files with 6 additions and 7686 deletions

View file

@ -150,8 +150,13 @@ echo "This fix can be removed after some time"
sed -i 's/run_at_every_load = false,/run_at_every_load = true,/' homedecor_modpack/homedecor_kitchen/init.lua sed -i 's/run_at_every_load = false,/run_at_every_load = true,/' homedecor_modpack/homedecor_kitchen/init.lua
fi fi
#2
sed -i 's/homedecor/homedecor?/' plasticbox/depends.txt sed -i 's/homedecor/homedecor?/' plasticbox/depends.txt
#3
sed -i 's/loadfile(minetest.get_modpath(minetest.get_current_modname()) .. "\/car.lua")(table.copy(car_def))//' cloud_items/init.lua
rm -f cloud_items/car.lua
#update skins-db #update skins-db
cd skinsdb/updater cd skinsdb/updater
python3 update_skins.py python3 update_skins.py

View file

@ -1,151 +0,0 @@
#!/bin/bash
rm -rf mods
mkdir mods
cd mods
git clone --depth 1 --branch master https://github.com/minetest-mods/3d_armor.git
git clone --depth 1 --branch master https://github.com/minetest-mods/unified_inventory.git
git clone --depth 1 --branch master https://github.com/minetest-mods/unifiedbricks.git
git clone --depth 1 --branch master https://github.com/minetest-mods/moreblocks.git
git clone --depth 1 --branch master https://github.com/minetest-mods/moreores.git
git clone --depth 1 --branch master https://github.com/minetest-mods/mywalls.git
git clone --depth 1 --branch master https://github.com/minetest-mods/xdecor.git
git clone --depth 1 --branch master https://github.com/minetest-mods/vehicle_mash.git
git clone --depth 1 --branch master https://github.com/minetest-mods/lib_mount
git clone --depth 1 --branch master https://github.com/minetest-mods/workbench.git
git clone --depth 1 --branch master https://github.com/minetest-mods/ts_furniture.git
git clone --depth 1 --branch master https://github.com/minetest-mods/playeranim.git
git clone --depth 1 --branch master https://github.com/minetest-mods/skinsdb.git
git clone --depth 1 --branch master https://github.com/minetest-mods/letters.git
git clone --depth 1 --branch master https://github.com/minetest-mods/ts_doors.git
git clone --depth 1 --branch master https://github.com/minetest-mods/trash_can.git
git clone --depth 1 --branch master https://github.com/minetest-mods/throwing_arrows.git
git clone --depth 1 --branch master https://github.com/minetest-mods/throwing.git
git clone --depth 1 --branch master https://github.com/minetest-mods/stained_glass.git
git clone --depth 1 --branch master https://github.com/minetest-mods/xban2.git
git clone --depth 1 --branch master https://github.com/minetest-mods/drinks.git
git clone --depth 1 --branch master https://github.com/minetest-mods/jukebox.git
git clone --depth 1 --branch master https://github.com/minetest-mods/carpets.git
git clone --depth 1 --branch master https://github.com/minetest-mods/chat2.git
git clone --depth 1 --branch master https://github.com/minetest-mods/mymillwork.git
git clone --depth 1 --branch master https://github.com/minetest-mods/signs_api.git
git clone --depth 1 --branch master https://github.com/minetest-mods/crops.git
git clone --depth 1 --branch master https://github.com/minetest-mods/mtfoods.git
git clone --depth 1 --branch master https://github.com/minetest-mods/mysheetmetal.git
git clone --depth 1 --branch master https://github.com/minetest-mods/ts_workshop.git
git clone --depth 1 --branch master https://github.com/minetest-mods/myroofs.git
git clone --depth 1 --branch master https://github.com/minetest-mods/ts_paper.git
git clone --depth 1 --branch master https://github.com/minetest-mods/mydeck.git
git clone --depth 1 --branch master https://github.com/minetest-mods/enchanting.git
git clone --depth 1 --branch master https://github.com/minetest-mods/interact.git
git clone --depth 1 --branch master https://github.com/minetest-mods/stargate.git
git clone --depth 1 --branch master https://github.com/minetest-mods/mypaths.git
git clone --depth 1 --branch master https://github.com/minetest-mods/mycorners.git
git clone --depth 1 --branch master https://github.com/minetest-mods/mymasonhammer.git
git clone --depth 1 --branch master https://github.com/minetest-mods/mywoodslopes.git
git clone --depth 1 --branch master https://github.com/minetest-mods/display_api.git
git clone --depth 1 --branch master https://github.com/minetest-mods/font_api.git
git clone --depth 1 --branch master https://github.com/minetest-mods/trees_lib.git
git clone --depth 1 --branch master https://github.com/minetest-mods/intllib.git
git clone --depth 1 --branch master https://github.com/minetest-mods/more_chests.git
git clone --depth 1 --branch master https://github.com/minetest-mods/flowerpot.git
git clone --depth 1 --branch master https://github.com/minetest-mods/cloud_items.git
git clone --depth 1 --branch master https://github.com/minetest-mods/compost.git
git clone --depth 1 --branch master https://github.com/minetest-mods/death_compass.git
git clone --depth 1 --branch master https://github.com/minetest-mods/smartfs.git
git clone --depth 1 --branch master https://gitlab.com/VanessaE/unifieddyes.git
git clone --depth 1 --branch master https://gitlab.com/VanessaE/basic_materials.git
git clone --depth 1 --branch master https://gitlab.com/VanessaE/biome_lib.git
git clone --depth 1 --branch master https://gitlab.com/VanessaE/moretrees.git
git clone --depth 1 --branch master https://gitlab.com/VanessaE/homedecor_modpack.git
git clone --depth 1 --branch master https://gitlab.com/VanessaE/signs_lib.git
git clone --depth 1 --branch master https://gitlab.com/VanessaE/currency.git
git clone --depth 1 --branch master https://gitlab.com/VanessaE/plantlife_modpack.git
git clone --depth 1 --branch master https://gitlab.com/VanessaE/new_campfire.git
git clone --depth 1 --branch master https://gitlab.com/VanessaE/coloredwood.git
git clone --depth 1 --branch master https://gitlab.com/VanessaE/basic_signs.git
git clone --depth 1 --branch master https://gitlab.com/VanessaE/roads.git
git clone --depth 1 --branch master https://gitlab.com/VanessaE/blox.git
git clone --depth 1 --branch master https://gitlab.com/VanessaE/plasticbox.git
git clone --depth 1 --branch master https://gitlab.com/VanessaE/charcoal.git
git clone --depth 1 --branch master https://github.com/Sokomine/windmill.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/farming.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/protector.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/playerplus.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/mobs_npc.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/mobs_redo.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/mobs_water.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/mobs_monster.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/mobs_animal.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/mob_horse.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/bows.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/builtin_item.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/bonemeal.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/stamina.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/wine.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/bees.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/wool.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/regrow.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/ambience.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/bakedclay.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/stairs.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/anvils.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/carts.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/doors.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/pie.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/castle.git
git clone --depth 1 --branch master https://notabug.org/TenPlus1/mobs_sky.git
git clone --depth 1 --branch master https://github.com/Uberi/Minetest-WorldEdit.git
git clone --depth 1 --branch master https://github.com/minetest-mods/realchess.git
git clone --depth 1 --branch master https://github.com/Grizzly-Adam/BBQ.git
git clone --depth 1 --branch master https://github.com/minetest-mods/mydoors.git
git clone --depth 1 --branch master https://github.com/TumeniNodes/angledwalls.git
git clone --depth 1 --branch master https://github.com/pyrollo/display_modpack.git
git clone --depth 1 --branch master https://github.com/Sokomine/cottages.git
git clone --depth 1 --branch master https://github.com/joe7575/techpack.git
git clone --depth 1 --branch master https://github.com/random-geek/morelights.git
git clone --depth 1 --branch master https://repo.or.cz/minetest_mtg_plus.git
git clone --depth 1 --branch master https://github.com/minetest-mods/spectator_mode.git
git clone --depth 1 --branch master https://github.com/Extex101/christmas.git
git clone --depth 1 --branch master https://gitlab.com/VanessaE/gloopblocks.git
git clone --depth 1 --branch master https://github.com/minetest-mods/mylandscaping.git
git clone --depth 1 --branch master https://gitlab.com/VanessaE/minislots.git
git clone --depth 1 --branch master https://github.com/v-rob/bridger.git
git clone --depth 1 --branch master https://github.com/AiTechEye/smartshop.git
git clone --depth 1 --branch master https://repo.or.cz/minetest_colorcubes.git
git clone --depth 1 --branch master https://github.com/DonBatman/myboardgames.git
git clone --depth 1 --branch master https://gitlab.com/VanessaE/ilights.git
git clone --depth 1 --branch master https://github.com/TumeniNodes/angledstairs.git
git clone --depth 1 --branch master https://github.com/TumeniNodes/artdeco.git
git clone --depth 1 --branch master https://github.com/TumeniNodes/facade.git
git clone --depth 1 --branch master https://github.com/TumeniNodes/stoneworks.git
git clone --depth 1 --branch master https://github.com/Delaroyas/simplyslopes.git
git clone --depth 1 --branch master https://github.com/joe7575/tubelib2.git
git clone --depth 1 --branch master https://github.com/Ezhh/abriflame.git
git clone --depth 1 --branch master https://github.com/Ezhh/abriglass.git
git clone --depth 1 --branch master https://github.com/brittm3/Minetest-lpanes.git
git clone --depth 1 --branch master https://github.com/qwrwed/lightsplus.git
git clone --depth 1 --branch master https://github.com/khonkhortisan/rubiks.git
git clone --branch master https://git.bananach.space/advtrains.git
git clone --depth 1 --branch master https://github.com/Dragonop/claycrafter
git clone --depth 1 --branch master https://notabug.org/NetherEran/hot_air_balloons.git
git clone --branch master https://cheapiesystems.com/git/prefab_redo
git clone --branch master https://cheapiesystems.com/git/mail
git clone --branch master https://gitlab.com/VanessaE/home_workshop_modpack.git
git clone --branch master https://git.bananach.space/basic_trains.git
#Clean git stuff
rm -rf $(find . -name .git*)
#Make some fixes
#1
if [[ $(grep -R "run_at_every_load = false" homedecor_modpack/homedecor_kitchen/init.lua | wc -l) = 1 ]]
then
echo "Applying fix for unknown kitchen_cabinet blocks: https://git.my-web.xyz/milan/minetest-mm/issues/34"
echo "This fix can be removed after some time"
sed -i 's/run_at_every_load = false,/run_at_every_load = true,/' homedecor_modpack/homedecor_kitchen/init.lua
fi
#update skins-db
cd skinsdb/updater
python3 update_skins.py

View file

@ -1,274 +0,0 @@
load_mod_interact = false
load_mod_christmas = false
load_mod_advtrains_luaautomation = false
load_mod_advtrains_interlocking = false
load_mod_advtrains_line_automation = false
load_mod_advtrains_signals_ks = false
load_mod_workbench = true
load_mod_wool = true
load_mod_wine = true
load_mod_mobs_birds = true
load_mod_plasticbox = true
load_mod_minislots_golden7s_deluxe = true
load_mod_mail = true
load_mod_worldedit = true
load_mod_letters = true
load_mod_trafficlight = true
load_mod_jukebox = true
load_mod_tubelib_addons1 = true
load_mod_plasmascreen = true
load_mod_mobs_npc = true
load_mod_my_future_doors = true
load_mod_itemframes = true
load_mod_homedecor_office = true
load_mod_stargate = true
load_mod_charcoal = true
load_mod_homedecor_lighting = true
load_mod_angledwalls = true
load_mod_builtin_item = true
load_mod_homedecor_exterior = true
load_mod_flowerpot = true
load_mod_3d_armor_stand = true
load_mod_junglegrass = true
load_mod_mobs_crocs = true
load_mod_homedecor_electrical = true
load_mod_homedecor_doors_and_gates = true
load_mod_homedecor_common = true
load_mod_homedecor_furniture_medieval = true
load_mod_morelights = true
load_mod_homedecor_bedroom = true
load_mod_homedecor_laundry = true
load_mod_blox = true
load_mod_homedecor_3d_extras = true
load_mod_mymillwork = true
load_mod_drinks = true
load_mod_angledstairs = true
load_mod_nature_classic = true
load_mod_homedecor_clocks = true
load_mod_signs_road = true
load_mod_homedecor_cobweb = true
load_mod_along_shore = true
load_mod_artdeco = true
load_mod_carts = true
load_mod_mobs_butterfly = true
load_mod_mobs_animal = true
load_mod_mobs_monster = true
load_mod_lavalamp = true
load_mod_mtg_plus = true
load_mod_homedecor_gastronomy = true
load_mod_anvils = true
load_mod_moreblocks = true
load_mod_molehills = true
load_mod_ontime_clocks = true
load_mod_mtfoods = true
load_mod_sl_controller = true
load_mod_intllib = true
load_mod_display_api = true
load_mod_worldedit_gui = true
load_mod_bridger = true
load_mod_homedecor_trash_cans = true
load_mod_3d_armor_ui = true
load_mod_gloopblocks = true
load_mod_mobs = true
load_mod_worldedit_shortcommands = true
load_mod_worldedit_brush = true
load_mod_bbq = true
load_mod_wieldview = true
load_mod_death_compass = true
load_mod_facade = true
load_mod_inbox = true
load_mod_cloud_items = true
load_mod_flowers_plus = true
load_mod_bows = true
load_mod_3dmushrooms = true
load_mod_minislots_engine = true
load_mod_ambience = true
load_mod_lib_mount = true
load_mod_streetshotfix = true
load_mod_carpets = true
load_mod_windmill = true
load_mod_chat2 = true
load_mod_xban2 = true
load_mod_coloredwood = true
load_mod_homedecor_misc = true
load_mod_3d_armor_ip = true
load_mod_techpack_stairway = true
load_mod_shields = true
load_mod_morelights_extras = true
load_mod_homedecor_roofing = true
load_mod_mys_n_l = true
load_mod_smartfs = true
load_mod_steles = true
load_mod_homedecor_seating = true
load_mod_enchanting = true
load_mod_mycanadiancheckers = true
load_mod_mychess = true
load_mod_asphaltstairs = true
load_mod_manholes = true
load_mod_building_blocks = true
load_mod_3d_armor = true
load_mod_doors = true
load_mod_dryplants = true
load_mod_stoneworks = true
load_mod_bees = true
load_mod_mymasonhammer = true
load_mod_minislots_golden7s = true
load_mod_3d_armor_sfinv = true
load_mod_morelights_vintage = true
load_mod_infrastructure = true
load_mod_bakedclay = true
load_mod_ilights = true
load_mod_castle = true
load_mod_currency = true
load_mod_basic_signs = true
load_mod_youngtrees = true
load_mod_bonemeal = true
load_mod_minislots_work_files = true
load_mod_mylittle_bg = true
load_mod_vines = true
load_mod_ts_doors = true
load_mod_moretrees = true
load_mod_smartshop = true
load_mod_mobs_fish = true
load_mod_homedecor_foyer = true
load_mod_colorcubes = true
load_mod_fake_fire = true
load_mod_compost = true
load_mod_concretestairs = true
load_mod_signs_api = true
load_mod_mytrouble = true
load_mod_more_chests = true
load_mod_ts_paper = true
load_mod_crops = true
load_mod_boards = true
load_mod_trees_lib = true
load_mod_mydiamondblock = true
load_mod_signs_lib = true
load_mod_homedecor_climate_control = true
load_mod_protector = true
load_mod_font_metro = true
load_mod_homedecor_kitchen = true
load_mod_homedecor_electronics = true
load_mod_signs = true
load_mod_mobs_jellyfish = true
load_mod_mobs_sharks = true
load_mod_mobs_turtles = true
load_mod_safer_lua = true
load_mod_morelights_modern = true
load_mod_homedecor_pictures_and_paintings = true
load_mod_moreores = true
load_mod_my_game_pieces = true
load_mod_mydraughts = true
load_mod_my_saloon_doors = true
load_mod_throwing_arrows = true
load_mod_basic_materials = true
load_mod_mygomoku = true
load_mod_worldedit_commands = true
load_mod_regrow = true
load_mod_gravelsieve = true
load_mod_homedecor_tables = true
load_mod_mycorners = true
load_mod_homedecor_furniture = true
load_mod_homedecor_fences = true
load_mod_mypachisi = true
load_mod_homedecor_books = true
load_mod_mypirinola = true
load_mod_unified_inventory = true
load_mod_mypitfall = true
load_mod_mys_n_l_mini = true
load_mod_labels = true
load_mod_myuno = true
load_mod_mydeck = true
load_mod_my_castle_doors = true
load_mod_biome_lib = true
load_mod_my_misc_doors = true
load_mod_my_cottage_doors = true
load_mod_woodsoils = true
load_mod_lcdlib = true
load_mod_ts_workshop = true
load_mod_my_default_doors = true
load_mod_ferns = true
load_mod_my_door_wood = true
load_mod_my_fancy_doors = true
load_mod_my_garage_door = true
load_mod_emergencyphone = true
load_mod_my_hidden_doors = true
load_mod_homedecor_wardrobe = true
load_mod_my_old_doors = true
load_mod_homedecor_bathroom = true
load_mod_my_sliding_doors = true
load_mod_homedecor_windows_and_treatments = true
load_mod_bushes = true
load_mod_mylandscaping = true
load_mod_streetsmod = true
load_mod_mypaths = true
load_mod_mob_horse = true
load_mod_streetsawards = true
load_mod_myroofs = true
load_mod_pie = true
load_mod_mysheetmetal = true
load_mod_skinsdb = true
load_mod_mywalls = true
load_mod_mywoodslopes = true
load_mod_tubelib_addons3 = true
load_mod_new_campfire = true
load_mod_bushes_classic = true
load_mod_farming = true
load_mod_cavestuff = true
load_mod_font_api = true
load_mod_poisonivy = true
load_mod_xdecor = true
load_mod_trunks = true
load_mod_playeranim = true
load_mod_playerplus = true
load_mod_prefab_redo = true
load_mod_realchess = true
load_mod_asphalt = true
load_mod_constructionarea = true
load_mod_delineator = true
load_mod_roadsigns = true
load_mod_steelsupport = true
load_mod_streetlamps = true
load_mod_streetsconcrete = true
load_mod_mymazes = true
load_mod_streetspoles = true
load_mod_simplyslopes = true
load_mod_spectator_mode = true
load_mod_stained_glass = true
load_mod_stairs = true
load_mod_tubelib_addons2 = true
load_mod_stamina = true
load_mod_smartline = true
load_mod_techpack_warehouse = true
load_mod_tubelib = true
load_mod_throwing = true
load_mod_cottages = true
load_mod_trash_can = true
load_mod_myconnect4 = true
load_mod_ts_furniture = true
load_mod_tubelib2 = true
load_mod_mycheckers = true
load_mod_unifiedbricks = true
load_mod_unifieddyes = true
load_mod_vehicle_mash = true
load_mod_rubiks = true
load_mod_lightsplus = true
load_mod_abriflame = true
load_mod_lpanes = true
load_mod_abriglass = true
load_mod_advtrains_train_track = true
load_mod_advtrains = true
load_mod_advtrains_itrainmap = true
load_mod_claycrafter = true
load_mod_serialize_lib = true
load_mod_hot_air_balloons = true
load_mod_mobs_bat = true
load_mod_home_workshop_machines = true
load_mod_home_workshop_common = true
load_mod_home_workshop_misc = true
load_mod_computers = true
load_mod_advtrains_assets = true
load_mod_advtrains_train_subway = true
load_mod_advtrains_train_japan = true
load_mod_advtrains_train_industrial = true
load_mod_advtrains_train_steam = true

View file

@ -1,19 +0,0 @@
-- Code from the Vehicle Mash mod (WTFPL license)
-- Translation support
local S = minetest.get_translator("cloud_items")
local name = "car_cloud"
local definition = ...
definition.description = S("Cloud car")
definition.inventory_image = "cloud_items_car_cloud_inventory.png"
definition.wield_image = "cloud_items_car_cloud_inventory.png"
definition.textures = {"cloud_items_car_cloud.png"}
definition.recipe = {
{"vehicle_mash:tire", "vehicle_mash:windshield", "vehicle_mash:tire"},
{"cloud_items:cloudblock", "vehicle_mash:motor", "cloud_items:cloudblock"},
{"vehicle_mash:tire", "vehicle_mash:battery", "vehicle_mash:tire"},
}
vehicle_mash.register_vehicle("cloud_items:" .. name, definition)

View file

@ -596,7 +596,7 @@ local car_def = {
-- Cloud car (similar from the CAR01 from Vehicle Mash) -- Cloud car (similar from the CAR01 from Vehicle Mash)
local car_enabled = minetest.settings:get_bool("cloud_items.enable_cloud_car") local car_enabled = minetest.settings:get_bool("cloud_items.enable_cloud_car")
if car_enabled or car_enabled == nil then if car_enabled or car_enabled == nil then
loadfile(minetest.get_modpath(minetest.get_current_modname()) .. "/car.lua")(table.copy(car_def))
end end
------------- -------------

View file

@ -1,92 +0,0 @@
# Skinsdb Interface
## skins.get_player_skin(player)
Return the skin object assigned to the player. Returns default if nothing assigned
## skins.assign_player_skin(player, skin)
Check if allowed and assign the skin for the player without visual updates. The "skin" parameter could be the skin key or the skin object
Returns false if skin is not valid or applicable to player
## skins.update_player_skin(player)
Update selected skin visuals on player
## skins.set_player_skin(player, skin)
Function for external usage on skin selection. This function assign the skin, call the skin:set_skin(player) hook to update dynamic skins, then update the visuals
## skins.get_skin_format(file)
Returns the skin format version ("1.0" or "1.8"). File is an open file handle to the texture file
## skins.get_skinlist(assignment, select_unassigned)
Obsolete - use get_skinlist_for_player() or get_skinlist_with_meta() instead
## skins.get_skinlist_for_player(playername)
Get all allowed skins for player. All public and all player's private skins. If playername not given only public skins returned
## skins.get_skinlist_with_meta(key, value)
Get all skins with metadata key is set to value. Example:
skins.get_skinlist_with_meta("playername", playername) - Get all private skins (w.o. public) for playername
## skins.new(key, object)
Create and register a new skin object for given key
- key: Unique skins key, like "character_1"
- object: Optional. Could be a prepared object with redefinitions
## skins.get(key)
Get existing skin object
HINT: During build-up phase maybe the next statement is usefull
```
local skin = skins.get(name) or skins.new(name)
```
# Skin object
## skin:get_key()
Get the unique skin key
## skin:set_texture(texture)
Set the skin texture - usually at the init time only
## skin:get_texture()
Get the skin texture for any reason. Note to apply them the skin:set_skin() should be used
Could be redefined for dynamic texture generation
## skin:set_preview(texture)
Set the skin preview - usually at the init time only
## skin:get_preview()
Get the skin preview
Could be redefined for dynamic preview texture generation
## skin:set_skin(player)
Hook for dynamic skins updates on select. Is called in skins.set_player_skin()
In skinsdb the default implementation for this function is empty.
skin:apply_skin_to_player(player)
Apply the skin to the player. Called in skins.update_player_skin() to update visuals
## skin:set_meta(key, value)
Add a meta information to the skin object
Note: the information is not stored, therefore should be filled each time during skins registration
## skin:get_meta(key)
The next metadata keys are filled or/and used interally in skinsdb framework
- name - A name for the skin
- author - The skin author
- license - THe skin texture license
- assignment - (obsolete) is "player:playername" in case the skin is assigned to be privat for a player
- playername - Player assignment for private skin. Set false for skins not usable by all players (like NPC-Skins), true or nothing for all player skins
- in_inventory_list - If set to false the skin is not visible in inventory skins selection but can be still applied to the player
- _sort_id - Thi skins lists are sorted by this field for output (internal key)
## skin:get_meta_string(key)
Same as get_meta() but does return "" instead of nil if the meta key does not exists
## skin:is_applicable_for_player(playername)
Returns whether this skin is applicable for player "playername" or not, like private skins

View file

@ -1,64 +0,0 @@
# skinsdb
This Minetest mod offers changeable player skins with a graphical interface for multiple inventory mods.
## Features
- Flexible skins API to manage the database
- [character_creator](https://github.com/minetest-mods/character_creator) support for custom skins
- Skin change menu for sfinv (in minetest_game) and [unified_inventory](https://forum.minetest.net/viewtopic.php?t=12767)
- Skins change menu and command line using chat command /skinsdb (set | show | list | list private | list public | ui)
- Supported by [smart_inventory](https://forum.minetest.net/viewtopic.php?t=16597) for the skin selection
- Supported by [i3](https://github.com/minetest-mods/i3) inventory mod
- Skin previews supported in selection
- Additional information for each skin
- Support for different skins lists: public and a per-player list are currently implemented
- Full [3d_armor](https://forum.minetest.net/viewtopic.php?t=4654) support
- Compatible to 1.0 and 1.8 Minecraft skins format
## Installing skins
### Download from the [database](http://minetest.fensta.bplaced.net/)
#### Ingame Downloader
1) Get Minetest 5.1.0-dev-cb00632 or newer
2) Start your world
3) Run `/skinsdb_download_skins <skindb start page> <amount of pages>`
4) Wait for the Minetest server to shut down
5) Start the server again
You might want to run `minetest` in a Terminal/Console window to check the log output instantly.
#### Python Download script
**Requirements:**
* Python 3
* `requests` library: `pip3 install requests`
Go to the updater folder of this mod and run `python3 update_skins.py`
The Script will download all the skins from the database for you.
### Manual addition
1) Copy your skin textures to `textures` as documented in `textures/readme.txt`
2) Create `meta/character_<name>.txt` with the following fields (separated by new lines):
* Skin name
* Author
* Skin license
## License:
- GPLv3
- skin texture licenses: See "meta" folder
### Credits
- RealBadAngel (unified_inventory)
- Zeg9 (skinsdb)
- cornernote (source code)
- Krock (source code)
- bell07 (source code)
- stujones11 (player models)

View file

@ -1,81 +0,0 @@
-- get current skin
local storage = minetest.get_mod_storage()
function skins.get_player_skin(player)
local meta = player:get_meta()
if meta:get("skinsdb:skin_key") then
-- Move player data prior July 2018 to mod storage
storage:set_string(player:get_player_name(), meta:get_string("skinsdb:skin_key"))
meta:set_string("skinsdb:skin_key", "")
end
local skin = storage:get_string(player:get_player_name())
return skins.get(skin) or skins.get(skins.default)
end
-- Assign skin to player
function skins.assign_player_skin(player, skin)
local skin_obj
if type(skin) == "string" then
skin_obj = skins.get(skin)
else
skin_obj = skin
end
if not skin_obj then
return false
end
if skin_obj:is_applicable_for_player(player:get_player_name()) then
local skin_key = skin_obj:get_key()
if skin_key == skins.default then
skin_key = ""
end
storage:set_string(player:get_player_name(), skin_key)
else
return false
end
return true
end
-- update visuals
function skins.update_player_skin(player)
if skins.armor_loaded then
-- all needed is wrapped and implemented in 3d_armor mod
armor:set_player_armor(player)
else
-- do updates manually without 3d_armor
skins.get_player_skin(player):apply_skin_to_player(player)
if minetest.global_exists("sfinv") and sfinv.enabled then
sfinv.set_player_inventory_formspec(player)
end
end
end
-- Assign and update - should be used on selection externally
function skins.set_player_skin(player, skin)
local success = skins.assign_player_skin(player, skin)
if success then
skins.get_player_skin(player):set_skin(player)
skins.update_player_skin(player)
end
return success
end
-- Check Skin format (code stohlen from stu's multiskin)
function skins.get_skin_format(file)
file:seek("set", 1)
if file:read(3) == "PNG" then
file:seek("set", 16)
local ws = file:read(4)
local hs = file:read(4)
local w = ws:sub(3, 3):byte() * 256 + ws:sub(4, 4):byte()
local h = hs:sub(3, 3):byte() * 256 + hs:sub(4, 4):byte()
if w >= 64 then
if w == h then
return "1.8"
elseif w == h * 2 then
return "1.0"
end
end
end
end

View file

@ -1,103 +0,0 @@
local S = minetest.get_translator("skinsdb")
local function show_selection_formspec(player)
local context = skins.get_formspec_context(player)
local name = player:get_player_name()
local skin = skins.get_player_skin(player)
local formspec = "size[8,8]"..skins.get_skin_info_formspec(skin)
formspec = formspec..skins.get_skin_selection_formspec(player, context, 3.5)
minetest.show_formspec(name, 'skinsdb_show_ui', formspec)
end
minetest.register_chatcommand("skinsdb", {
params = "[set] <skin key> | show [<skin key>] | list | list private | list public | [ui]",
description = S("Show, list or set player's skin"),
func = function(name, param)
local player = minetest.get_player_by_name(name)
if not player then
return false, S("Player not found")
end
-- parse command line
local command, parameter
local words = param:split(" ")
local word = words[1]
if word == 'set' or word == 'list' or word == 'show' or word == 'ui' then
command = word
parameter = words[2]
elseif skins.get(word) then
command = 'set'
parameter = word
elseif not word then
command = 'ui'
else
return false, S("unknown command").." "..word..", "..S("see /help skinsdb for supported parameters")
end
if command == "set" then
if parameter then
local success = skins.set_player_skin(player, parameter)
if success then
return true, S("skin set to").." "..parameter
else
return false, S("invalid skin").." "..parameter
end
else return false, S("Requires skin key")
end
elseif command == "list" then
local list
if parameter == "private" then
list = skins.get_skinlist_with_meta("playername", name)
elseif parameter == "public" then
list = skins.get_skinlist_for_player()
elseif not parameter then
list = skins.get_skinlist_for_player(name)
else
return false, S("unknown parameter"), parameter
end
local current_skin_key = skins.get_player_skin(player):get_key()
for _, skin in ipairs(list) do
local info = skin:get_key().." - "
..S("Name").."="..skin:get_meta_string("name").." "
..S("Author").."="..skin:get_meta_string("author").." "
..S("License").."="..skin:get_meta_string("license")
if skin:get_key() == current_skin_key then
info = minetest.colorize("#00FFFF", info)
end
minetest.chat_send_player(name, info)
end
elseif command == "show" then
local skin
if parameter then
skin = skins.get(parameter)
else
skin = skins.get_player_skin(player)
end
if not skin then
return false, S("invalid skin")
end
local formspec = "size[8,3]"..skins.get_skin_info_formspec(skin)
minetest.show_formspec(name, 'skinsdb_show_skin', formspec)
elseif command == "ui" then
show_selection_formspec(player)
end
end,
})
minetest.register_on_player_receive_fields(function(player, formname, fields)
if formname ~= "skinsdb_show_ui" then
return
end
local context = skins.get_formspec_context(player)
local action = skins.on_skin_selection_receive_fields(player, context, fields)
if action == 'set' then
minetest.close_formspec(player:get_player_name(), formname)
elseif action == 'page' then
show_selection_formspec(player)
end
end)

View file

@ -1,172 +0,0 @@
local S = minetest.get_translator("skinsdb")
local ui = unified_inventory
function skins.get_formspec_context(player)
if player then
local playername = player:get_player_name()
skins.ui_context[playername] = skins.ui_context[playername] or {}
return skins.ui_context[playername]
else
return {}
end
end
-- Show skin info
function skins.get_skin_info_formspec(skin, perplayer_formspec)
local texture = skin:get_texture()
local m_name = skin:get_meta_string("name")
local m_author = skin:get_meta_string("author")
local m_license = skin:get_meta_string("license")
local m_format = skin:get_meta("format")
-- overview page
local raw_size = m_format == "1.8" and "2,2" or "2,1"
local lxoffs = 0.8
local cxoffs = 2
local rxoffs = 5.5
if type(perplayer_formspec) == "table" then -- we're using Unified Inventory
lxoffs = 1.5
cxoffs = 3.75
rxoffs = 7.5
end
local formspec = "image["..lxoffs..",.6;1,2;"..minetest.formspec_escape(skin:get_preview()).."]"
if texture then
formspec = formspec.."label["..rxoffs..",.5;"..S("Raw texture")..":]"
.."image["..rxoffs..",1;"..raw_size..";"..texture.."]"
end
if m_name ~= "" then
formspec = formspec.."label["..cxoffs..",.5;"..S("Name")..": "..minetest.formspec_escape(m_name).."]"
end
if m_author ~= "" then
formspec = formspec.."label["..cxoffs..",1;"..S("Author")..": "..minetest.formspec_escape(m_author).."]"
end
if m_license ~= "" then
formspec = formspec.."label["..cxoffs..",1.5;"..S("License")..": "..minetest.formspec_escape(m_license).."]"
end
return formspec
end
function skins.get_skin_selection_formspec(player, context, perplayer_formspec)
context.skins_list = skins.get_skinlist_for_player(player:get_player_name())
context.total_pages = 1
local xoffs = 0
local yoffs = 4
local xspc = 1
local yspc = 2
local skinwidth = 1
local skinheight = 2
local xscale = 1
local btn_y = 8.15
local drop_y = 8
local btn_width = 1
local droppos = 1
local droplen = 6.25
local btn_right = 7
local maxdisp = 16
local ctrls_height = 0.5
if type(perplayer_formspec) == "table" then -- it's being used under Unified Inventory
xoffs = perplayer_formspec.std_inv_x
xspc = ui.imgscale
yspc = ui.imgscale*2
skinwidth = ui.imgscale*0.9
skinheight = ui.imgscale*1.9
xscale = ui.imgscale
btn_width = ui.imgscale
droppos = xoffs + btn_width + 0.1
droplen = ui.imgscale * 6 - 0.2
btn_right = droppos + droplen + 0.1
if perplayer_formspec.pagecols == 4 then -- and we're in lite mode
yoffs = 1
maxdisp = 8
drop_y = yoffs + skinheight + 0.1
else
yoffs = 0.2
drop_y = yoffs + skinheight*2 + 0.2
end
btn_y = drop_y
end
for i, skin in ipairs(context.skins_list ) do
local page = math.floor((i-1) / maxdisp)+1
skin:set_meta("inv_page", page)
skin:set_meta("inv_page_index", (i-1)%maxdisp+1)
context.total_pages = page
end
context.skins_page = context.skins_page or skins.get_player_skin(player):get_meta("inv_page") or 1
context.dropdown_values = nil
local page = context.skins_page
local formspec = ""
for i = (page-1)*maxdisp+1, page*maxdisp do
local skin = context.skins_list[i]
if not skin then
break
end
local index_p = skin:get_meta("inv_page_index")
local x = ((index_p-1) % 8) * xspc + xoffs
local y
if index_p > 8 then
y = yoffs + yspc
else
y = yoffs
end
formspec = formspec..
string.format("image_button[%f,%f;%f,%f;%s;skins_set$%i;]",
x, y, skinwidth, skinheight,
minetest.formspec_escape(skin:get_preview()), i)..
"tooltip[skins_set$"..i..";"..minetest.formspec_escape(skin:get_meta_string("name")).."]"
end
if context.total_pages > 1 then
local page_prev = page - 1
local page_next = page + 1
if page_prev < 1 then
page_prev = context.total_pages
end
if page_next > context.total_pages then
page_next = 1
end
local page_list = ""
context.dropdown_values = {}
for pg=1, context.total_pages do
local pagename = S("Page").." "..pg.."/"..context.total_pages
context.dropdown_values[pagename] = pg
if pg > 1 then page_list = page_list.."," end
page_list = page_list..pagename
end
formspec = formspec..
string.format("button[%f,%f;%f,%f;skins_page$%i;<<]",
xoffs, btn_y, btn_width, ctrls_height, page_prev)..
string.format("button[%f,%f;%f,%f;skins_page$%i;>>]",
btn_right, btn_y, btn_width, ctrls_height, page_next)..
string.format("dropdown[%f,%f;%f,%f;skins_selpg;%s;%i]",
droppos, drop_y, droplen, ctrls_height, page_list, page)
end
return formspec
end
function skins.on_skin_selection_receive_fields(player, context, fields)
for field, _ in pairs(fields) do
local current = string.split(field, "$", 2)
if current[1] == "skins_set" then
skins.set_player_skin(player, context.skins_list[tonumber(current[2])])
return 'set'
elseif current[1] == "skins_page" then
context.skins_page = tonumber(current[2])
return 'page'
end
end
if fields.skins_selpg then
context.skins_page = tonumber(context.dropdown_values[fields.skins_selpg])
return 'page'
end
end

View file

@ -1,94 +0,0 @@
-- Unified Skins for Minetest - based modified Bags from unfied_inventory and skins from inventory_plus
-- Copyright (c) 2012 cornernote, Dean Montgomery
-- Rework 2017 by bell07
-- License: GPLv3
skins = {}
skins.modpath = minetest.get_modpath(minetest.get_current_modname())
skins.default = "character"
dofile(skins.modpath.."/skin_meta_api.lua")
dofile(skins.modpath.."/api.lua")
dofile(skins.modpath.."/skinlist.lua")
dofile(skins.modpath.."/formspecs.lua")
dofile(skins.modpath.."/chatcommands.lua")
-- Unified inventory page/integration
if minetest.get_modpath("unified_inventory") then
dofile(skins.modpath.."/unified_inventory_page.lua")
end
if minetest.get_modpath("sfinv") then
dofile(skins.modpath.."/sfinv_page.lua")
end
-- ie.loadfile does not exist?
skins.ie = minetest.request_insecure_environment()
skins.http = minetest.request_http_api()
dofile(skins.modpath.."/skins_updater.lua")
skins.ie = nil
skins.http = nil
-- 3d_armor compatibility
if minetest.global_exists("armor") then
skins.armor_loaded = true
armor.get_player_skin = function(self, name)
local skin = skins.get_player_skin(minetest.get_player_by_name(name))
return skin:get_texture()
end
armor.get_preview = function(self, name)
local skin = skins.get_player_skin(minetest.get_player_by_name(name))
return skin:get_preview()
end
armor.update_player_visuals = function(self, player)
if not player then
return
end
local skin = skins.get_player_skin(player)
skin:apply_skin_to_player(player)
armor:run_callbacks("on_update", player)
end
end
if minetest.global_exists("clothing") and clothing.player_textures then
skins.clothing_loaded = true
clothing:register_on_update(skins.update_player_skin)
end
-- Update skin on join
skins.ui_context = {}
minetest.register_on_joinplayer(function(player)
skins.update_player_skin(player)
end)
minetest.register_on_leaveplayer(function(player)
skins.ui_context[player:get_player_name()] = nil
end)
player_api.register_model("skinsdb_3d_armor_character_5.b3d", {
animation_speed = 30,
textures = {
"blank.png",
"blank.png",
"blank.png",
"blank.png"
},
animations = {
stand = {x=0, y=79},
lay = {x=162, y=166},
walk = {x=168, y=187},
mine = {x=189, y=198},
walk_mine = {x=200, y=219},
sit = {x=81, y=160},
},
})
-- Register default character.png if not part of this mod
local default_skin_obj = skins.get(skins.default)
if not default_skin_obj then
default_skin_obj = skins.new(skins.default)
default_skin_obj:set_texture("character.png")
default_skin_obj:set_meta("format", '1.0')
default_skin_obj:set_meta("_sort_id", 0)
default_skin_obj:set_meta("name", "Sam")
end

View file

@ -1,19 +0,0 @@
# textdomain: skinsdb
# Translation by Xanthin
Raw texture=Rohtextur
Name=Name
Author=Autor
Change=Wechseln
Page=Seite
License=Lizenz
Description=Beschreibung
Show, list or set player's skin=Anzeigen oder setzen der Spieler-Skins
Player not found=Spieler nicht da
unknown command=unbekannter Befehl
see /help skinsdb for supported parameters=Lese /help für erlaubte Parameter
skin set to=Skin ist jetzt
invalid skin=unbekannter Skin
unknown parameter=unbekannter Parameter
Skins=Aussehen
Requires skin key=Benötigt Skin-Name

View file

@ -1,18 +0,0 @@
# textdomain: skinsdb
Raw texture=Texture
Name=Nom
Author=Auteur
Change=Changer
Page=Page
License=Licence
Description=Description
Show, list or set player's skin=Afficher, lister ou définir le skin du joueur
Player not found=Joueur non trouvé
unknown command=commande inconnue
see /help skinsdb for supported parameters=voir /help skinsdb pour les paramètres supportés
skin set to=skin définie sur
invalid skin=skin peau invalide
unknown parameter=paramètre inconnu
unknown skin=skin inconnue

View file

@ -1,18 +0,0 @@
# textdomain: skinsdb
# Malay translation by muhdnurhidayat
Raw texture=Tekstur mentah
Name=Nama
Author=Pencipta
Change=Ubah
Page=Halaman
License=Lesen
Description=Keterangan
Show, list or set player's skin=Tunjukkan, senaraikan atau tetapkan kulit pemain
Player not found=Pemain tidak dijumpai
unknown command=perintah tidak diketahui
see /help skinsdb for supported parameters=lihat /help skinsdb untuk parameter yang disokong
skin set to=kulit ditetapkan kepada
invalid skin=kulit tidak sah
unknown parameter=parameter tidak diketahui
unknown skin=kulit tidak diketahui

View file

@ -1,20 +0,0 @@
# textdomain: skinsdb
#Translation by IFRFSX(BingFengFSX)
Raw texture=自然状态的纹理
Name=名称
Author=作者
Change=更换
Page=页面
License=许可证
Description=说明
Show, list or set player's skin=显示,列出或者设置玩家的皮肤
Player not found=玩家未找到
unknown command=未知命令
see /help skinsdb for supported parameters=有关skinsdb支持的参数参见 /help
skin set to=皮肤设置为
invalid skin=无效皮肤
unknown parameter=未知参数
unknown skin=未知皮肤
Downloads the specified range of skins and shuts down the server=下载指定范围的皮肤并关闭服务器
Skins=皮肤

View file

@ -1,19 +0,0 @@
# textdomain: skinsdb
#Translation by IFRFSXBingFengFSX
Raw texture=自然狀態的紋理
Name=名稱
Author=作者
Change=更換
Page=頁面
License=許可證
Description=說明
Showlist or set player's skin=顯示,列出或者設定玩家的皮膚
Player not found=玩家未找到
unknown command=未知命令
see /help skinsdb for supported parameters=有關skinsdb支持的參數參見/help
skin set to=皮膚設定為
invalid skin=無效皮膚
unknown parameter=未知參數
unknown skin=未知皮膚
Downloads the specified range of skins and shuts down the server=下載指定範圍的皮膚並關閉服務器
Skins=皮膚

View file

@ -1,20 +0,0 @@
# textdomain: skinsdb
Raw texture=
Name=
Author=
Change=
Page=
License=
Description=
Show, list or set player's skin=
Player not found=
unknown command=
see /help skinsdb for supported parameters=
skin set to=
invalid skin=
unknown parameter=
unknown skin=
Downloads the specified range of skins and shuts down the server=
Skins=
Requires skin key=

View file

@ -1,3 +0,0 @@
Sam 0
Jordach
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Tuxedo Sam
Jordach
CC BY-NC-SA 3.0

View file

@ -1,3 +0,0 @@
Obito
TheGamer
CC BY-NC-SA 4.0

View file

@ -1,3 +0,0 @@
Shadow
TheGamer
CC BY-NC-SA 3.0

View file

@ -1,3 +0,0 @@
fred-fnafhs
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Springtrap-FNAFHS
Michuu
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Mai-FNAFHS
Michuu
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
REDboycool
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
FoxyMinecraft
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
MLP-Fluttershy
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
MLP-Sonata
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Sans-UNDERTALE
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Emma
Cidney7760
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Flash
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Chica-FNAFHS
Michuu
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Venom-Ultimate spiderman
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Hatsune Miku-VOCALOID
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
fin raro
raroooooos
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Baby-SisterLocation
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
MiniReena-SisterLocation
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Bonnie-FNAFHS
Michuu
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
BomBom-FNAFHS
Michuu
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Mario normal-Super mario
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
iron man(skin iron man 1)
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
iron man(skin iron man 2)
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
iron man(skin iron man 3)
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Chiantos
Chiantos
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Goku (normal)
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Goku (super saiyan)
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Venom (arreglado)
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Minireena (arreglada)
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Flower Girl
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Super Nerd
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Super Nerd (arreglado)
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
julito (sin sombras)
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Carolina
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
carolina (con chaleco)
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
ROBLOX Noob
Fedora P
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
ROBLOX Guest
Fedora P
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Mermaid 2
loupicate
CC BY-SA 4.0

View file

@ -1,3 +0,0 @@
Space Noob
Fedora P
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
:O
Fedora P
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
:I
Fedora P
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Rainbow Cubey
Fedora P
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Shadow Shadow Shadow XD
Fedora P
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Wilber the Coyote
Fedora P
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
ni&ntilde;o cool
daniel pereira
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Le_Thug
Kris0
CC BY-NC-SA 3.0

View file

@ -1,3 +0,0 @@
Funtime foxy-Sister location
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
TwilightWolf
Rin
CC BY-NC-SA 3.0

View file

@ -1,3 +0,0 @@
Rin-chan 1
Rin
CC BY-NC-SA 3.0

View file

@ -1,3 +0,0 @@
Rin-chan 2
Rin
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Ocd guy
Oscar
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
alien7u7
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
destroyed bot
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
claw alien
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
bad bot
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
good bot
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
bad bot2
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
good bot2
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Hello Neighbor
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
KOOPA
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
police
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
miku en biquini (VOCALOID)
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Steven Universe
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Peridot-Steven Universe
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Lapiz lazuli-Steven Universe
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Rose-Steven Universe
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Amatista-Stevev Universe
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Amatista-Steven Universe
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Perla-Steven Universe
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Garnet-Steven Universe
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Jasper-Steven Universe
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
diamond armor
oscar
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
omgchad
oscar
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Purple Armor
julito
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
ScratchCat
Fedora P
CC BY-SA 3.0

View file

@ -1,3 +0,0 @@
Zonard
ektor
CC 0 (1.0)

View file

@ -1,3 +0,0 @@
Keupon
ektor
CC 0 (1.0)

View file

@ -1,3 +0,0 @@
Minato namikazi
TheGamer
CC BY-NC-SA 4.0

View file

@ -1,3 +0,0 @@
Killua
TheGamer
CC BY-NC-SA 3.0

View file

@ -1,3 +0,0 @@
Yagami Light
TheGamer
CC BY-NC-SA 3.0

View file

@ -1,3 +0,0 @@
Wants
Wants
CC BY-SA 3.0

Some files were not shown because too many files have changed in this diff Show more