[minetest-mod-3d-armor] 01/03: New upstream version 0.4.8

Julien Puydt julien.puydt at laposte.net
Tue Mar 14 21:49:01 UTC 2017


This is an automated email from the git hooks/post-receive script.

jpuydt-guest pushed a commit to branch master
in repository minetest-mod-3d-armor.

commit 559c787e60a14b6a1c21eba8787952ddcde18f98
Author: Julien Puydt <julien.puydt at laposte.net>
Date:   Tue Mar 14 15:25:23 2017 +0100

    New upstream version 0.4.8
---
 3d_armor/LICENSE.txt                               |   4 +-
 3d_armor/README.txt                                |   3 +-
 3d_armor/armor.lua                                 | 213 ++++++----
 3d_armor/depends.txt                               |   3 +
 3d_armor/init.lua                                  |   2 +-
 3d_armor/textures/3d_armor_boots_admin.png         | Bin 291 -> 2980 bytes
 3d_armor/textures/3d_armor_boots_admin_preview.png | Bin 1413 -> 242 bytes
 3d_armor/textures/3d_armor_boots_bronze.png        | Bin 321 -> 2958 bytes
 .../textures/3d_armor_boots_bronze_preview.png     | Bin 1446 -> 208 bytes
 3d_armor/textures/3d_armor_boots_cactus.png        | Bin 308 -> 3120 bytes
 .../textures/3d_armor_boots_cactus_preview.png     | Bin 1413 -> 264 bytes
 3d_armor/textures/3d_armor_boots_crystal.png       | Bin 494 -> 2971 bytes
 .../textures/3d_armor_boots_crystal_preview.png    | Bin 2009 -> 248 bytes
 3d_armor/textures/3d_armor_boots_diamond.png       | Bin 295 -> 2969 bytes
 .../textures/3d_armor_boots_diamond_preview.png    | Bin 1460 -> 242 bytes
 3d_armor/textures/3d_armor_boots_gold.png          | Bin 287 -> 2946 bytes
 3d_armor/textures/3d_armor_boots_gold_preview.png  | Bin 1413 -> 206 bytes
 3d_armor/textures/3d_armor_boots_mithril.png       | Bin 216 -> 2958 bytes
 .../textures/3d_armor_boots_mithril_preview.png    | Bin 1387 -> 210 bytes
 3d_armor/textures/3d_armor_boots_steel.png         | Bin 316 -> 2943 bytes
 3d_armor/textures/3d_armor_boots_steel_preview.png | Bin 1460 -> 196 bytes
 3d_armor/textures/3d_armor_boots_wood.png          | Bin 274 -> 2997 bytes
 3d_armor/textures/3d_armor_boots_wood_preview.png  | Bin 1424 -> 282 bytes
 3d_armor/textures/3d_armor_chestplate_admin.png    | Bin 782 -> 3158 bytes
 .../textures/3d_armor_chestplate_admin_preview.png | Bin 1269 -> 314 bytes
 3d_armor/textures/3d_armor_chestplate_bronze.png   | Bin 556 -> 3077 bytes
 .../3d_armor_chestplate_bronze_preview.png         | Bin 1296 -> 280 bytes
 3d_armor/textures/3d_armor_chestplate_cactus.png   | Bin 712 -> 3476 bytes
 .../3d_armor_chestplate_cactus_preview.png         | Bin 1269 -> 456 bytes
 3d_armor/textures/3d_armor_chestplate_crystal.png  | Bin 1313 -> 3147 bytes
 .../3d_armor_chestplate_crystal_preview.png        | Bin 1738 -> 318 bytes
 3d_armor/textures/3d_armor_chestplate_diamond.png  | Bin 475 -> 3152 bytes
 .../3d_armor_chestplate_diamond_preview.png        | Bin 1221 -> 300 bytes
 3d_armor/textures/3d_armor_chestplate_gold.png     | Bin 430 -> 3075 bytes
 .../textures/3d_armor_chestplate_gold_preview.png  | Bin 1187 -> 276 bytes
 3d_armor/textures/3d_armor_chestplate_mithril.png  | Bin 669 -> 3077 bytes
 .../3d_armor_chestplate_mithril_preview.png        | Bin 1425 -> 284 bytes
 3d_armor/textures/3d_armor_chestplate_steel.png    | Bin 537 -> 3059 bytes
 .../textures/3d_armor_chestplate_steel_preview.png | Bin 1296 -> 281 bytes
 3d_armor/textures/3d_armor_chestplate_wood.png     | Bin 453 -> 3146 bytes
 .../textures/3d_armor_chestplate_wood_preview.png  | Bin 1192 -> 362 bytes
 3d_armor/textures/3d_armor_helmet_admin.png        | Bin 463 -> 3035 bytes
 .../textures/3d_armor_helmet_admin_preview.png     | Bin 883 -> 192 bytes
 3d_armor/textures/3d_armor_helmet_bronze.png       | Bin 583 -> 3094 bytes
 .../textures/3d_armor_helmet_bronze_preview.png    | Bin 891 -> 225 bytes
 3d_armor/textures/3d_armor_helmet_cactus.png       | Bin 533 -> 3310 bytes
 .../textures/3d_armor_helmet_cactus_preview.png    | Bin 883 -> 253 bytes
 3d_armor/textures/3d_armor_helmet_crystal.png      | Bin 1176 -> 3020 bytes
 .../textures/3d_armor_helmet_crystal_preview.png   | Bin 1243 -> 184 bytes
 3d_armor/textures/3d_armor_helmet_diamond.png      | Bin 508 -> 3031 bytes
 .../textures/3d_armor_helmet_diamond_preview.png   | Bin 902 -> 185 bytes
 3d_armor/textures/3d_armor_helmet_gold.png         | Bin 475 -> 3071 bytes
 3d_armor/textures/3d_armor_helmet_gold_preview.png | Bin 893 -> 215 bytes
 3d_armor/textures/3d_armor_helmet_mithril.png      | Bin 511 -> 3091 bytes
 .../textures/3d_armor_helmet_mithril_preview.png   | Bin 853 -> 226 bytes
 3d_armor/textures/3d_armor_helmet_steel.png        | Bin 549 -> 3064 bytes
 .../textures/3d_armor_helmet_steel_preview.png     | Bin 887 -> 202 bytes
 3d_armor/textures/3d_armor_helmet_wood.png         | Bin 472 -> 3203 bytes
 3d_armor/textures/3d_armor_helmet_wood_preview.png | Bin 878 -> 186 bytes
 3d_armor/textures/3d_armor_inv_boots_admin.png     | Bin 129 -> 2939 bytes
 3d_armor/textures/3d_armor_inv_boots_bronze.png    | Bin 129 -> 2933 bytes
 3d_armor/textures/3d_armor_inv_boots_cactus.png    | Bin 129 -> 3065 bytes
 3d_armor/textures/3d_armor_inv_boots_crystal.png   | Bin 200 -> 2932 bytes
 3d_armor/textures/3d_armor_inv_boots_diamond.png   | Bin 129 -> 2932 bytes
 3d_armor/textures/3d_armor_inv_boots_gold.png      | Bin 129 -> 2930 bytes
 3d_armor/textures/3d_armor_inv_boots_mithril.png   | Bin 129 -> 2933 bytes
 3d_armor/textures/3d_armor_inv_boots_steel.png     | Bin 129 -> 2916 bytes
 3d_armor/textures/3d_armor_inv_boots_wood.png      | Bin 129 -> 3037 bytes
 .../textures/3d_armor_inv_chestplate_admin.png     | Bin 142 -> 2984 bytes
 .../textures/3d_armor_inv_chestplate_bronze.png    | Bin 142 -> 2996 bytes
 .../textures/3d_armor_inv_chestplate_cactus.png    | Bin 142 -> 3155 bytes
 .../textures/3d_armor_inv_chestplate_crystal.png   | Bin 236 -> 2969 bytes
 .../textures/3d_armor_inv_chestplate_diamond.png   | Bin 142 -> 2968 bytes
 3d_armor/textures/3d_armor_inv_chestplate_gold.png | Bin 142 -> 2976 bytes
 .../textures/3d_armor_inv_chestplate_mithril.png   | Bin 142 -> 2994 bytes
 .../textures/3d_armor_inv_chestplate_steel.png     | Bin 142 -> 2986 bytes
 3d_armor/textures/3d_armor_inv_chestplate_wood.png | Bin 142 -> 3067 bytes
 3d_armor/textures/3d_armor_inv_helmet_admin.png    | Bin 140 -> 2910 bytes
 3d_armor/textures/3d_armor_inv_helmet_bronze.png   | Bin 140 -> 2907 bytes
 3d_armor/textures/3d_armor_inv_helmet_cactus.png   | Bin 140 -> 2995 bytes
 3d_armor/textures/3d_armor_inv_helmet_crystal.png  | Bin 219 -> 2897 bytes
 3d_armor/textures/3d_armor_inv_helmet_diamond.png  | Bin 140 -> 2897 bytes
 3d_armor/textures/3d_armor_inv_helmet_gold.png     | Bin 140 -> 2913 bytes
 3d_armor/textures/3d_armor_inv_helmet_mithril.png  | Bin 140 -> 2911 bytes
 3d_armor/textures/3d_armor_inv_helmet_steel.png    | Bin 140 -> 2902 bytes
 3d_armor/textures/3d_armor_inv_helmet_wood.png     | Bin 140 -> 2925 bytes
 3d_armor/textures/3d_armor_inv_leggings_admin.png  | Bin 140 -> 2947 bytes
 3d_armor/textures/3d_armor_inv_leggings_bronze.png | Bin 155 -> 2924 bytes
 3d_armor/textures/3d_armor_inv_leggings_cactus.png | Bin 184 -> 3038 bytes
 .../textures/3d_armor_inv_leggings_crystal.png     | Bin 233 -> 2943 bytes
 .../textures/3d_armor_inv_leggings_diamond.png     | Bin 155 -> 2953 bytes
 3d_armor/textures/3d_armor_inv_leggings_gold.png   | Bin 155 -> 2920 bytes
 .../textures/3d_armor_inv_leggings_mithril.png     | Bin 155 -> 2923 bytes
 3d_armor/textures/3d_armor_inv_leggings_steel.png  | Bin 155 -> 2911 bytes
 3d_armor/textures/3d_armor_inv_leggings_wood.png   | Bin 155 -> 3032 bytes
 3d_armor/textures/3d_armor_leggings_admin.png      | Bin 351 -> 3021 bytes
 .../textures/3d_armor_leggings_admin_preview.png   | Bin 1340 -> 187 bytes
 3d_armor/textures/3d_armor_leggings_bronze.png     | Bin 335 -> 2998 bytes
 .../textures/3d_armor_leggings_bronze_preview.png  | Bin 1389 -> 211 bytes
 3d_armor/textures/3d_armor_leggings_cactus.png     | Bin 424 -> 3233 bytes
 .../textures/3d_armor_leggings_cactus_preview.png  | Bin 1340 -> 317 bytes
 3d_armor/textures/3d_armor_leggings_crystal.png    | Bin 835 -> 3018 bytes
 .../textures/3d_armor_leggings_crystal_preview.png | Bin 1917 -> 184 bytes
 3d_armor/textures/3d_armor_leggings_diamond.png    | Bin 306 -> 3019 bytes
 .../textures/3d_armor_leggings_diamond_preview.png | Bin 1388 -> 183 bytes
 3d_armor/textures/3d_armor_leggings_gold.png       | Bin 298 -> 2992 bytes
 .../textures/3d_armor_leggings_gold_preview.png    | Bin 1341 -> 211 bytes
 3d_armor/textures/3d_armor_leggings_mithril.png    | Bin 497 -> 2998 bytes
 .../textures/3d_armor_leggings_mithril_preview.png | Bin 1380 -> 213 bytes
 3d_armor/textures/3d_armor_leggings_steel.png      | Bin 331 -> 2983 bytes
 .../textures/3d_armor_leggings_steel_preview.png   | Bin 1387 -> 200 bytes
 3d_armor/textures/3d_armor_leggings_wood.png       | Bin 285 -> 3081 bytes
 .../textures/3d_armor_leggings_wood_preview.png    | Bin 1399 -> 262 bytes
 3d_armor/textures/character_preview.png            | Bin 907 -> 215 bytes
 3d_armor/textures/inventory_plus_armor.png         | Bin 544 -> 3267 bytes
 3d_armor/textures/preview_index.txt                |  44 ++
 3d_armor_stand/LICENSE.txt                         |  17 +-
 3d_armor_stand/init.lua                            | 104 +++--
 3d_armor_stand/models/3d_armor_stand.obj           | 445 ++++++++++++---------
 3d_armor_stand/models/3d_armor_stand.png           | Bin 0 -> 1628 bytes
 3d_armor_stand/models/3d_armor_stand_locked.png    | Bin 0 -> 1992 bytes
 LICENSE.md                                         |   2 +-
 README.md                                          |   2 +-
 .../textures/hazmat_suit_suit_hazmat_preview.png   | Bin 1005 -> 550 bytes
 hazmat_suit/textures/preview_index.txt             |   1 +
 preview_gen.py                                     |  81 ++++
 shields/LICENSE.txt                                |   4 +-
 shields/init.lua                                   |   9 +-
 shields/textures/preview_index.txt                 |  11 +
 shields/textures/shields_inv_shield_admin.png      | Bin 461 -> 2972 bytes
 shields/textures/shields_inv_shield_bronze.png     | Bin 490 -> 2991 bytes
 shields/textures/shields_inv_shield_cactus.png     | Bin 318 -> 3135 bytes
 shields/textures/shields_inv_shield_crystal.png    | Bin 662 -> 2964 bytes
 shields/textures/shields_inv_shield_diamond.png    | Bin 477 -> 2964 bytes
 .../shields_inv_shield_enhanced_cactus.png         | Bin 322 -> 3069 bytes
 .../textures/shields_inv_shield_enhanced_wood.png  | Bin 583 -> 3075 bytes
 shields/textures/shields_inv_shield_gold.png       | Bin 449 -> 2980 bytes
 shields/textures/shields_inv_shield_mithril.png    | Bin 526 -> 2990 bytes
 shields/textures/shields_inv_shield_steel.png      | Bin 546 -> 2964 bytes
 shields/textures/shields_inv_shield_wood.png       | Bin 529 -> 3046 bytes
 shields/textures/shields_shield_admin.png          | Bin 423 -> 3022 bytes
 shields/textures/shields_shield_admin_preview.png  | Bin 609 -> 298 bytes
 shields/textures/shields_shield_bronze.png         | Bin 502 -> 3035 bytes
 shields/textures/shields_shield_bronze_preview.png | Bin 1494 -> 312 bytes
 shields/textures/shields_shield_cactus.png         | Bin 325 -> 3190 bytes
 shields/textures/shields_shield_cactus_preview.png | Bin 536 -> 462 bytes
 shields/textures/shields_shield_crystal.png        | Bin 622 -> 3011 bytes
 .../textures/shields_shield_crystal_preview.png    | Bin 1791 -> 283 bytes
 shields/textures/shields_shield_diamond.png        | Bin 489 -> 3009 bytes
 .../textures/shields_shield_diamond_preview.png    | Bin 1480 -> 289 bytes
 .../textures/shields_shield_enhanced_cactus.png    | Bin 330 -> 3126 bytes
 .../shields_shield_enhanced_cactus_preview.png     | Bin 530 -> 405 bytes
 shields/textures/shields_shield_enhanced_wood.png  | Bin 597 -> 3126 bytes
 .../shields_shield_enhanced_wood_preview.png       | Bin 787 -> 409 bytes
 shields/textures/shields_shield_gold.png           | Bin 462 -> 3024 bytes
 shields/textures/shields_shield_gold_preview.png   | Bin 1454 -> 300 bytes
 shields/textures/shields_shield_mithril.png        | Bin 489 -> 3034 bytes
 .../textures/shields_shield_mithril_preview.png    | Bin 1480 -> 312 bytes
 shields/textures/shields_shield_steel.png          | Bin 561 -> 3009 bytes
 shields/textures/shields_shield_steel_preview.png  | Bin 1545 -> 284 bytes
 shields/textures/shields_shield_wood.png           | Bin 555 -> 3095 bytes
 shields/textures/shields_shield_wood_preview.png   | Bin 2055 -> 373 bytes
 technic_armor/textures/preview_index.txt           |  41 ++
 .../textures/technic_armor_boots_brass_preview.png | Bin 309 -> 352 bytes
 .../technic_armor_boots_carbon_preview.png         | Bin 239 -> 213 bytes
 .../textures/technic_armor_boots_cast_preview.png  | Bin 309 -> 337 bytes
 .../textures/technic_armor_boots_lead_preview.png  | Bin 423 -> 297 bytes
 .../technic_armor_boots_silver_preview.png         | Bin 304 -> 305 bytes
 .../technic_armor_boots_stainless_preview.png      | Bin 2608 -> 326 bytes
 .../textures/technic_armor_boots_tin_preview.png   | Bin 304 -> 354 bytes
 .../technic_armor_chestplate_brass_preview.png     | Bin 528 -> 582 bytes
 .../technic_armor_chestplate_carbon_preview.png    | Bin 526 -> 482 bytes
 .../technic_armor_chestplate_cast_preview.png      | Bin 528 -> 555 bytes
 .../technic_armor_chestplate_lead_preview.png      | Bin 936 -> 578 bytes
 .../technic_armor_chestplate_silver_preview.png    | Bin 521 -> 445 bytes
 .../technic_armor_chestplate_stainless_preview.png | Bin 4394 -> 554 bytes
 .../technic_armor_chestplate_tin_preview.png       | Bin 512 -> 547 bytes
 .../technic_armor_helmet_brass_preview.png         | Bin 347 -> 242 bytes
 .../technic_armor_helmet_carbon_preview.png        | Bin 280 -> 176 bytes
 .../textures/technic_armor_helmet_cast_preview.png | Bin 347 -> 237 bytes
 .../textures/technic_armor_helmet_lead_preview.png | Bin 430 -> 197 bytes
 .../technic_armor_helmet_silver_preview.png        | Bin 346 -> 210 bytes
 .../technic_armor_helmet_stainless_preview.png     | Bin 2109 -> 218 bytes
 .../textures/technic_armor_helmet_tin_preview.png  | Bin 347 -> 236 bytes
 .../technic_armor_leggings_brass_preview.png       | Bin 359 -> 368 bytes
 .../technic_armor_leggings_carbon_preview.png      | Bin 265 -> 219 bytes
 .../technic_armor_leggings_cast_preview.png        | Bin 359 -> 351 bytes
 .../technic_armor_leggings_lead_preview.png        | Bin 535 -> 362 bytes
 .../technic_armor_leggings_silver_preview.png      | Bin 323 -> 308 bytes
 .../technic_armor_leggings_stainless_preview.png   | Bin 2945 -> 348 bytes
 .../technic_armor_leggings_tin_preview.png         | Bin 359 -> 359 bytes
 .../technic_armor_shield_brass_preview.png         | Bin 735 -> 632 bytes
 .../technic_armor_shield_carbon_preview.png        | Bin 773 -> 595 bytes
 .../textures/technic_armor_shield_cast_preview.png | Bin 751 -> 620 bytes
 .../textures/technic_armor_shield_lead_preview.png | Bin 1146 -> 729 bytes
 .../technic_armor_shield_silver_preview.png        | Bin 784 -> 586 bytes
 .../technic_armor_shield_stainless_preview.png     | Bin 787 -> 638 bytes
 .../textures/technic_armor_shield_tin_preview.png  | Bin 729 -> 615 bytes
 198 files changed, 690 insertions(+), 296 deletions(-)

diff --git a/3d_armor/LICENSE.txt b/3d_armor/LICENSE.txt
index c0f9da9..e1949c0 100644
--- a/3d_armor/LICENSE.txt
+++ b/3d_armor/LICENSE.txt
@@ -3,5 +3,7 @@
 
 License Source Code: (C) 2012-2017 Stuart Jones - LGPL v2.1
 
-License Textures: Copyright (C) 2013-2017 Ryan Jones - CC-BY-SA 3.0
+License Textures: Copyright (C) 2017 davidthecreator - CC-BY-SA 3.0
+
+https://github.com/daviddoesminetest/3d-armors-new-textures
 
diff --git a/3d_armor/README.txt b/3d_armor/README.txt
index 224f81c..3ec204d 100644
--- a/3d_armor/README.txt
+++ b/3d_armor/README.txt
@@ -3,7 +3,7 @@
 
 Depends: default
 
-Recommends: inventory_plus or unified_inventory (use only one)
+Recommends: sfinv, inventory_plus or unified_inventory (use only one to avoid conflicts)
 
 Adds craftable armor that is visible to other players. Each armor item worn contributes to
 a player's armor group level making them less vulnerable to weapons.
@@ -21,4 +21,3 @@ Armor can be configured by adding a file called armor.conf in 3d_armor mod and/o
 see armor.conf.example for all available options.
 
 Note: worldpath config settings override any settings made in the mod's directory.
-
diff --git a/3d_armor/armor.lua b/3d_armor/armor.lua
index 5d620d9..49c2cae 100644
--- a/3d_armor/armor.lua
+++ b/3d_armor/armor.lua
@@ -26,10 +26,15 @@ ARMOR_FIRE_NODES = {
 	{"ethereal:crystal_spike",  2, 1},
 	{"ethereal:fire_flower",    2, 1},
 	{"default:torch",           1, 1},
+	{"default:torch_ceiling",   1, 1},
+	{"default:torch_wall",      1, 1},
 }
 
 local skin_mod = nil
 local inv_mod = nil
+local use_player_monoids = minetest.global_exists("player_monoids")
+local use_armor_monoid = minetest.global_exists("armor_monoid")
+local preview_textures = {}
 
 local modpath = minetest.get_modpath(ARMOR_MOD_NAME)
 local worldpath = minetest.get_worldpath()
@@ -56,31 +61,42 @@ armor = {
 	timer = 0,
 	elements = {"head", "torso", "legs", "feet"},
 	physics = {"jump","speed","gravity"},
-	formspec = "size[8,8.5]image[2,0.75;2,4;armor_preview]"
-		.."list[current_player;main;0,4.5;8,4;]"
-		.."list[current_player;craft;4,1;3,3;]"
-		.."list[current_player;craftpreview;7,2;1,1;]"
-		.."listring[current_player;main]"
-		.."listring[current_player;craft]",
+	formspec = "size[8,8.5]"..
+		default.gui_bg..
+		default.gui_bg_img..
+		default.gui_slots..
+		default.get_hotbar_bg(0,4.25)..
+		"image[2,0.5;2,4;armor_preview]"..
+		"list[current_player;main;0,4.25;8,1;]"..
+		"list[current_player;main;0,5.5;8,3;8]"..
+		"list[current_player;craft;4,0.5;3,3;]"..
+		"list[current_player;craftpreview;7,1.5;1,1;]"..
+		"listring[current_player;main]"..
+		"listring[current_player;craft]",
 	textures = {},
 	default_skin = "character",
-	version = "0.4.7",
+	version = "0.4.8",
 }
 
+local armor_formpage = "image[2.5,0;2,4;armor_preview]"..
+	default.gui_bg..
+	default.gui_bg_img..
+	default.gui_slots..
+	default.get_hotbar_bg(0,4.25)..
+	"label[5,1;Level: armor_level]"..
+	"label[5,1.5;Heal:  armor_heal]"..
+	"label[5,2;Fire:  armor_fire]"..
+	"label[5,2.5;Radiation:  armor_radiation]"..
+	"list[current_player;main;0,4.25;8,1;]"..
+	"list[current_player;main;0,5.5;8,3;8]"
 if minetest.get_modpath("inventory_plus") then
 	inv_mod = "inventory_plus"
-	armor.formspec = "size[8,8.5]button[0,0;2,0.5;main;Back]"
-		.."image[2.5,0.75;2,4;armor_preview]"
-		.."label[5,1;Level: armor_level]"
-		.."label[5,1.5;Heal:  armor_heal]"
-		.."label[5,2;Fire:  armor_fire]"
-		.."label[5,2.5;Radiation:  armor_radiation]"
-		.."list[current_player;main;0,4.5;8,4;]"
+	armor.formspec = "size[8,8.5]button[6,0;2,0.5;main;Back]"..armor_formpage
 	if minetest.get_modpath("crafting") then
 		inventory_plus.get_formspec = function(player, page)
 		end
 	end
-elseif minetest.get_modpath("unified_inventory") then
+elseif minetest.get_modpath("unified_inventory") and not unified_inventory.sfinv_compat_layer then
 	inv_mod = "unified_inventory"
 	unified_inventory.register_button("armor", {
 		type = "image",
@@ -90,31 +106,48 @@ elseif minetest.get_modpath("unified_inventory") then
 		get_formspec = function(player, perplayer_formspec)
 			local fy = perplayer_formspec.formspec_y
 			local name = player:get_player_name()
-			local formspec = "background[0.06,"..fy..";7.92,7.52;3d_armor_ui_form.png]"
-				.."label[0,0;Armor]"
-				.."list[detached:"..name.."_armor;armor;0,"..fy..";2,3;]"
-				.."image[2.5,"..(fy - 0.25)..";2,4;"..armor.textures[name].preview.."]"
-				.."label[5.0,"..(fy + 0.0)..";Level: "..armor.def[name].level.."]"
-				.."label[5.0,"..(fy + 0.5)..";Heal:  "..armor.def[name].heal.."]"
-				.."label[5.0,"..(fy + 1.0)..";Fire:  "..armor.def[name].fire.."]"
-				.."label[5.0,"..(fy + 1.5)..";Radiation:  "..armor.def[name].radiation.."]"
-				.."listring[current_player;main]"
-				.."listring[detached:"..name.."_armor;armor]"
+			local formspec = "background[0.06,"..fy..";7.92,7.52;3d_armor_ui_form.png]"..
+				"label[0,0;Armor]"..
+				"list[detached:"..name.."_armor;armor;0,"..fy..";2,3;]"..
+				"image[2.5,"..(fy - 0.25)..";2,4;"..armor.textures[name].preview.."]"..
+				"label[5.0,"..(fy + 0.0)..";Level: "..armor.def[name].level.."]"..
+				"label[5.0,"..(fy + 0.5)..";Heal:  "..armor.def[name].heal.."]"..
+				"label[5.0,"..(fy + 1.0)..";Fire:  "..armor.def[name].fire.."]"..
+				"label[5.0,"..(fy + 1.5)..";Radiation:  "..armor.def[name].radiation.."]"..
+				"listring[current_player;main]"..
+				"listring[detached:"..name.."_armor;armor]"
 			return {formspec=formspec}
 		end,
 	})
 elseif minetest.get_modpath("inventory_enhanced") then
 	inv_mod = "inventory_enhanced"
+elseif minetest.get_modpath("smart_inventory") then
+	inv_mod = "smart_inventory"
+elseif minetest.get_modpath("sfinv") then
+	inv_mod = "sfinv"
+	armor.formspec = armor_formpage
+	sfinv.register_page("3d_armor:armor", {
+		title = "Armor",
+		get = function(self, player, context)
+			local name = player:get_player_name()
+			local formspec = armor:get_armor_formspec(name, true)
+			return sfinv.make_formspec(player, context, formspec, false)
+		end
+	})
 end
 
-if minetest.get_modpath("skins") then
-	skin_mod = "skins"
-elseif minetest.get_modpath("simple_skins") then
-	skin_mod = "simple_skins"
-elseif minetest.get_modpath("u_skins") then
-	skin_mod = "u_skins"
-elseif minetest.get_modpath("wardrobe") then
-	skin_mod = "wardrobe"
+local skin_mods = {"skins", "u_skins", "simple_skins", "wardrobe"}
+for _, mod in pairs(skin_mods) do
+	local path = minetest.get_modpath(mod)
+	if path then
+		local dir_list = minetest.get_dir_list(path.."/textures")
+		for _, fn in pairs(dir_list) do
+			if fn:find("_preview.png$") then
+				preview_textures[fn] = true
+			end
+		end
+		skin_mod = mod
+	end
 end
 
 armor.def = {
@@ -153,7 +186,7 @@ armor.set_player_armor = function(self, player)
 	local textures = {}
 	local physics_o = {speed=1,gravity=1,jump=1}
 	local material = {type=nil, count=1}
-	local preview = armor:get_preview(name) or "character_preview.png"
+	local preview = armor:get_preview(name)
 	for _,v in ipairs(self.elements) do
 		elements[v] = false
 	end
@@ -214,8 +247,23 @@ armor.set_player_armor = function(self, player)
 		armor_groups.fleshy = 100 - armor_level
 		armor_groups.radiation = 100 - armor_radiation
 	end
-	player:set_armor_groups(armor_groups)
-	player:set_physics_override(physics_o)
+	if use_armor_monoid then
+		armor_monoid.monoid:add_change(player, {
+			fleshy = armor_groups.fleshy / 100
+		}, "3d_armor:armor")
+	else
+		player:set_armor_groups(armor_groups)
+	end
+	if use_player_monoids then
+		player_monoids.speed:add_change(player, physics_o.speed,
+			"3d_armor:physics")
+		player_monoids.jump:add_change(player, physics_o.jump,
+			"3d_armor:physics")
+		player_monoids.gravity:add_change(player, physics_o.gravity,
+			"3d_armor:physics")
+	else
+		player:set_physics_override(physics_o)
+	end
 	self.textures[name].armor = armor_texture
 	self.textures[name].preview = preview
 	self.def[name].state = state
@@ -233,7 +281,7 @@ end
 
 armor.update_armor = function(self, player)
 	-- Legacy support: Called when armor levels are changed
-	-- Other mods can hook on to this function, see hud mod for example 
+	-- Other mods can hook on to this function, see hud mod for example
 end
 
 armor.get_player_skin = function(self, name)
@@ -249,12 +297,14 @@ armor.get_player_skin = function(self, name)
 end
 
 armor.get_preview = function(self, name)
-	if skin_mod == "skins" then
-		return armor:get_player_skin(name).."_preview.png"
+	local preview = armor:get_player_skin(name).."_preview.png"
+	if preview_textures[preview] then
+		return preview
 	end
+	return "character_preview.png"
 end
 
-armor.get_armor_formspec = function(self, name)
+armor.get_armor_formspec = function(self, name, listring)
 	if not armor.textures[name] then
 		minetest.log("error", "3d_armor: Player texture["..name.."] is nil [get_armor_formspec]")
 		return ""
@@ -263,12 +313,17 @@ armor.get_armor_formspec = function(self, name)
 		minetest.log("error", "3d_armor: Armor def["..name.."] is nil [get_armor_formspec]")
 		return ""
 	end
-	local formspec = armor.formspec.."list[detached:"..name.."_armor;armor;0,1;2,3;]"
+	local formspec = armor.formspec.."list[detached:"..name.."_armor;armor;0,0.5;2,3;]"
+	if listring == true then
+		formspec = formspec.."listring[current_player;main]"..
+			"listring[detached:"..name.."_armor;armor]"
+	end
 	formspec = formspec:gsub("armor_preview", armor.textures[name].preview)
 	formspec = formspec:gsub("armor_level", armor.def[name].level)
 	formspec = formspec:gsub("armor_heal", armor.def[name].heal)
 	formspec = formspec:gsub("armor_fire", armor.def[name].fire)
 	formspec = formspec:gsub("armor_radiation", armor.def[name].radiation)
+	formspec = formspec:gsub("player_name", armor.def[name].radiation)
 	return formspec
 end
 
@@ -277,20 +332,33 @@ armor.update_inventory = function(self, player)
 	if not name or inv_mod == "inventory_enhanced" then
 		return
 	end
-	if inv_mod == "unified_inventory" then
+	if inv_mod == "smart_inventory" then
+		local state = smart_inventory.get_page_state("player", name)
+		if state then
+			state:get("update_hook"):submit()
+		end
+	elseif inv_mod == "sfinv" then
+		if sfinv.set_page then
+			sfinv.set_page(player, "3d_armor:armor")
+		else
+			-- Backwards compat
+			sfinv.set_player_inventory_formspec(player, {
+				page = "3d_armor:armor"
+			})
+		end
+	elseif inv_mod == "unified_inventory" then
 		if unified_inventory.current_page[name] == "armor" then
 			unified_inventory.set_inventory_formspec(player, "armor")
 		end
 	else
-		local formspec = armor:get_armor_formspec(name)
 		if inv_mod == "inventory_plus" then
-			formspec = formspec.."listring[current_player;main]"
-				.."listring[detached:"..name.."_armor;armor]"
+			local formspec = armor:get_armor_formspec(name, true)
 			local page = player:get_inventory_formspec()
 			if page:find("detached:"..name.."_armor") then
 				inventory_plus.set_inventory_formspec(player, formspec)
 			end
 		elseif not core.setting_getbool("creative_mode") then
+			local formspec = armor:get_armor_formspec(name)
 			player:set_inventory_formspec(formspec)
 		end
 	end
@@ -323,6 +391,13 @@ armor.get_valid_player = function(self, player, msg)
 	return name, player_inv, armor_inv, pos
 end
 
+armor.drop_armor = function(pos, stack)
+	local obj = minetest.add_item(pos, stack)
+	if obj then
+		obj:setvelocity({x=math.random(-1, 1), y=5, z=math.random(-1, 1)})
+	end
+end
+
 -- Register Player Model
 
 default.player_register_model("3d_armor_character.b3d", {
@@ -350,7 +425,7 @@ minetest.register_on_player_receive_fields(function(player, formname, fields)
 		return
 	end
 	if inv_mod == "inventory_plus" and fields.armor then
-		local formspec = armor:get_armor_formspec(name)
+		local formspec = armor:get_armor_formspec(name, true)
 		inventory_plus.set_inventory_formspec(player, formspec)
 		return
 	end
@@ -406,7 +481,7 @@ minetest.register_on_joinplayer(function(player)
 	for i=1, 6 do
 		local stack = player_inv:get_stack("armor", i)
 		armor_inv:set_stack("armor", i, stack)
-	end	
+	end
 	armor.def[name] = {
 		state = 0,
 		count = 0,
@@ -446,12 +521,14 @@ minetest.register_on_joinplayer(function(player)
 			armor.textures[name].skin = skin
 		end
 	end
-	if minetest.get_modpath("player_textures") then
-		local filename = minetest.get_modpath("player_textures").."/textures/player_"..name
-		local f = io.open(filename..".png")
-		if f then
-			f:close()
-			armor.textures[name].skin = "player_"..name..".png"
+	local texture_path = minetest.get_modpath("player_textures")
+	if texture_path then
+		local dir_list = minetest.get_dir_list(texture_path.."/textures")
+		for _, fn in pairs(dir_list) do
+			if fn == "player_"..name..".png" then
+				armor.textures[name].skin = fn
+				break
+			end
 		end
 	end
 	for i=1, ARMOR_INIT_TIMES do
@@ -465,12 +542,6 @@ minetest.register_on_joinplayer(function(player)
 end)
 
 if ARMOR_DROP == true or ARMOR_DESTROY == true then
-	armor.drop_armor = function(pos, stack)
-		local obj = minetest.add_item(pos, stack)
-		if obj then
-			obj:setvelocity({x=math.random(-1, 1), y=5, z=math.random(-1, 1)})
-		end
-	end
 	minetest.register_on_dieplayer(function(player)
 		local name, player_inv, armor_inv, pos = armor:get_valid_player(player, "[on_dieplayer]")
 		if not name then
@@ -496,21 +567,21 @@ if ARMOR_DROP == true or ARMOR_DESTROY == true then
 		end
 		if ARMOR_DESTROY == false then
 			minetest.after(ARMOR_BONES_DELAY, function()
-				local node = minetest.get_node(vector.round(pos))
-				if node then
-					if node.name ~= "bones:bones" then
-						pos.y = pos.y+1
-						node = minetest.get_node(vector.round(pos))
-						if node.name ~= "bones:bones" then
-							minetest.log("warning", "Failed to add armor to bones node.")
-							return
-						end
+				local meta = nil
+				local maxp = vector.add(pos, 8)
+				local minp = vector.subtract(pos, 8)
+				local bones = minetest.find_nodes_in_area(minp, maxp, {"bones:bones"})
+				for _, p in pairs(bones) do
+					local m = minetest.get_meta(p)
+					if m:get_string("owner") == name then
+						meta = m
+						break
 					end
-					local meta = minetest.get_meta(vector.round(pos))
-					local owner = meta:get_string("owner")
+				end
+				if meta then
 					local inv = meta:get_inventory()
 					for _,stack in ipairs(drop) do
-						if name == owner and inv:room_for_item("main", stack) then
+						if inv:room_for_item("main", stack) then
 							inv:add_item("main", stack)
 						else
 							armor.drop_armor(pos, stack)
diff --git a/3d_armor/depends.txt b/3d_armor/depends.txt
index 3acf737..0d20f61 100644
--- a/3d_armor/depends.txt
+++ b/3d_armor/depends.txt
@@ -1,6 +1,9 @@
 default
+player_monoids?
+armor_monoid?
 inventory_plus?
 unified_inventory?
+sfinv?
 fire?
 ethereal?
 bakedclay?
diff --git a/3d_armor/init.lua b/3d_armor/init.lua
index 4a2116f..c73d2de 100644
--- a/3d_armor/init.lua
+++ b/3d_armor/init.lua
@@ -51,7 +51,7 @@ if ARMOR_MATERIALS.cactus then
 	minetest.register_tool("3d_armor:boots_cactus", {
 		description = "Cactus Boots",
 		inventory_image = "3d_armor_inv_boots_cactus.png",
-		groups = {armor_feet=5, armor_heal=0, armor_use=2000},
+		groups = {armor_feet=5, armor_heal=0, armor_use=1000},
 		wear = 0,
 	})
 end
diff --git a/3d_armor/textures/3d_armor_boots_admin.png b/3d_armor/textures/3d_armor_boots_admin.png
index a05e4c5..78d60d5 100644
Binary files a/3d_armor/textures/3d_armor_boots_admin.png and b/3d_armor/textures/3d_armor_boots_admin.png differ
diff --git a/3d_armor/textures/3d_armor_boots_admin_preview.png b/3d_armor/textures/3d_armor_boots_admin_preview.png
index d61ab25..46bec8f 100644
Binary files a/3d_armor/textures/3d_armor_boots_admin_preview.png and b/3d_armor/textures/3d_armor_boots_admin_preview.png differ
diff --git a/3d_armor/textures/3d_armor_boots_bronze.png b/3d_armor/textures/3d_armor_boots_bronze.png
index 7cfe378..c4337df 100644
Binary files a/3d_armor/textures/3d_armor_boots_bronze.png and b/3d_armor/textures/3d_armor_boots_bronze.png differ
diff --git a/3d_armor/textures/3d_armor_boots_bronze_preview.png b/3d_armor/textures/3d_armor_boots_bronze_preview.png
index 6da8019..5dfb5a5 100644
Binary files a/3d_armor/textures/3d_armor_boots_bronze_preview.png and b/3d_armor/textures/3d_armor_boots_bronze_preview.png differ
diff --git a/3d_armor/textures/3d_armor_boots_cactus.png b/3d_armor/textures/3d_armor_boots_cactus.png
index 7dc43e3..f651b48 100644
Binary files a/3d_armor/textures/3d_armor_boots_cactus.png and b/3d_armor/textures/3d_armor_boots_cactus.png differ
diff --git a/3d_armor/textures/3d_armor_boots_cactus_preview.png b/3d_armor/textures/3d_armor_boots_cactus_preview.png
index 33f9221..9c9787b 100644
Binary files a/3d_armor/textures/3d_armor_boots_cactus_preview.png and b/3d_armor/textures/3d_armor_boots_cactus_preview.png differ
diff --git a/3d_armor/textures/3d_armor_boots_crystal.png b/3d_armor/textures/3d_armor_boots_crystal.png
index 50bbf20..22d1fc4 100644
Binary files a/3d_armor/textures/3d_armor_boots_crystal.png and b/3d_armor/textures/3d_armor_boots_crystal.png differ
diff --git a/3d_armor/textures/3d_armor_boots_crystal_preview.png b/3d_armor/textures/3d_armor_boots_crystal_preview.png
index a3ab7d1..c76fb9b 100644
Binary files a/3d_armor/textures/3d_armor_boots_crystal_preview.png and b/3d_armor/textures/3d_armor_boots_crystal_preview.png differ
diff --git a/3d_armor/textures/3d_armor_boots_diamond.png b/3d_armor/textures/3d_armor_boots_diamond.png
index 6678b16..c291fc6 100644
Binary files a/3d_armor/textures/3d_armor_boots_diamond.png and b/3d_armor/textures/3d_armor_boots_diamond.png differ
diff --git a/3d_armor/textures/3d_armor_boots_diamond_preview.png b/3d_armor/textures/3d_armor_boots_diamond_preview.png
index eb99c4e..eee8f55 100644
Binary files a/3d_armor/textures/3d_armor_boots_diamond_preview.png and b/3d_armor/textures/3d_armor_boots_diamond_preview.png differ
diff --git a/3d_armor/textures/3d_armor_boots_gold.png b/3d_armor/textures/3d_armor_boots_gold.png
index 2de3966..164634d 100644
Binary files a/3d_armor/textures/3d_armor_boots_gold.png and b/3d_armor/textures/3d_armor_boots_gold.png differ
diff --git a/3d_armor/textures/3d_armor_boots_gold_preview.png b/3d_armor/textures/3d_armor_boots_gold_preview.png
index 5ca40ac..0f9ac5e 100644
Binary files a/3d_armor/textures/3d_armor_boots_gold_preview.png and b/3d_armor/textures/3d_armor_boots_gold_preview.png differ
diff --git a/3d_armor/textures/3d_armor_boots_mithril.png b/3d_armor/textures/3d_armor_boots_mithril.png
index 3e4173b..72f1664 100644
Binary files a/3d_armor/textures/3d_armor_boots_mithril.png and b/3d_armor/textures/3d_armor_boots_mithril.png differ
diff --git a/3d_armor/textures/3d_armor_boots_mithril_preview.png b/3d_armor/textures/3d_armor_boots_mithril_preview.png
index b0c4684..84dcc2f 100644
Binary files a/3d_armor/textures/3d_armor_boots_mithril_preview.png and b/3d_armor/textures/3d_armor_boots_mithril_preview.png differ
diff --git a/3d_armor/textures/3d_armor_boots_steel.png b/3d_armor/textures/3d_armor_boots_steel.png
index 4664be5..4028cbf 100644
Binary files a/3d_armor/textures/3d_armor_boots_steel.png and b/3d_armor/textures/3d_armor_boots_steel.png differ
diff --git a/3d_armor/textures/3d_armor_boots_steel_preview.png b/3d_armor/textures/3d_armor_boots_steel_preview.png
index 25fc47a..386467b 100644
Binary files a/3d_armor/textures/3d_armor_boots_steel_preview.png and b/3d_armor/textures/3d_armor_boots_steel_preview.png differ
diff --git a/3d_armor/textures/3d_armor_boots_wood.png b/3d_armor/textures/3d_armor_boots_wood.png
index 0ec5d6c..7e36022 100644
Binary files a/3d_armor/textures/3d_armor_boots_wood.png and b/3d_armor/textures/3d_armor_boots_wood.png differ
diff --git a/3d_armor/textures/3d_armor_boots_wood_preview.png b/3d_armor/textures/3d_armor_boots_wood_preview.png
index 53d6d15..0e76cd5 100644
Binary files a/3d_armor/textures/3d_armor_boots_wood_preview.png and b/3d_armor/textures/3d_armor_boots_wood_preview.png differ
diff --git a/3d_armor/textures/3d_armor_chestplate_admin.png b/3d_armor/textures/3d_armor_chestplate_admin.png
index 404d6e8..9dbb7e4 100644
Binary files a/3d_armor/textures/3d_armor_chestplate_admin.png and b/3d_armor/textures/3d_armor_chestplate_admin.png differ
diff --git a/3d_armor/textures/3d_armor_chestplate_admin_preview.png b/3d_armor/textures/3d_armor_chestplate_admin_preview.png
index 09325a5..3b094b6 100644
Binary files a/3d_armor/textures/3d_armor_chestplate_admin_preview.png and b/3d_armor/textures/3d_armor_chestplate_admin_preview.png differ
diff --git a/3d_armor/textures/3d_armor_chestplate_bronze.png b/3d_armor/textures/3d_armor_chestplate_bronze.png
index d9c7267..ea3adf8 100644
Binary files a/3d_armor/textures/3d_armor_chestplate_bronze.png and b/3d_armor/textures/3d_armor_chestplate_bronze.png differ
diff --git a/3d_armor/textures/3d_armor_chestplate_bronze_preview.png b/3d_armor/textures/3d_armor_chestplate_bronze_preview.png
index 90d887a..1692604 100644
Binary files a/3d_armor/textures/3d_armor_chestplate_bronze_preview.png and b/3d_armor/textures/3d_armor_chestplate_bronze_preview.png differ
diff --git a/3d_armor/textures/3d_armor_chestplate_cactus.png b/3d_armor/textures/3d_armor_chestplate_cactus.png
index ee433de..2833e17 100644
Binary files a/3d_armor/textures/3d_armor_chestplate_cactus.png and b/3d_armor/textures/3d_armor_chestplate_cactus.png differ
diff --git a/3d_armor/textures/3d_armor_chestplate_cactus_preview.png b/3d_armor/textures/3d_armor_chestplate_cactus_preview.png
index 32bf6f6..570ff85 100644
Binary files a/3d_armor/textures/3d_armor_chestplate_cactus_preview.png and b/3d_armor/textures/3d_armor_chestplate_cactus_preview.png differ
diff --git a/3d_armor/textures/3d_armor_chestplate_crystal.png b/3d_armor/textures/3d_armor_chestplate_crystal.png
index e36aa49..b652910 100644
Binary files a/3d_armor/textures/3d_armor_chestplate_crystal.png and b/3d_armor/textures/3d_armor_chestplate_crystal.png differ
diff --git a/3d_armor/textures/3d_armor_chestplate_crystal_preview.png b/3d_armor/textures/3d_armor_chestplate_crystal_preview.png
index c43015c..ee042ef 100644
Binary files a/3d_armor/textures/3d_armor_chestplate_crystal_preview.png and b/3d_armor/textures/3d_armor_chestplate_crystal_preview.png differ
diff --git a/3d_armor/textures/3d_armor_chestplate_diamond.png b/3d_armor/textures/3d_armor_chestplate_diamond.png
index 81a7b21..15e6034 100644
Binary files a/3d_armor/textures/3d_armor_chestplate_diamond.png and b/3d_armor/textures/3d_armor_chestplate_diamond.png differ
diff --git a/3d_armor/textures/3d_armor_chestplate_diamond_preview.png b/3d_armor/textures/3d_armor_chestplate_diamond_preview.png
index 17e2eb8..96fc70e 100644
Binary files a/3d_armor/textures/3d_armor_chestplate_diamond_preview.png and b/3d_armor/textures/3d_armor_chestplate_diamond_preview.png differ
diff --git a/3d_armor/textures/3d_armor_chestplate_gold.png b/3d_armor/textures/3d_armor_chestplate_gold.png
index 91b1631..962b735 100644
Binary files a/3d_armor/textures/3d_armor_chestplate_gold.png and b/3d_armor/textures/3d_armor_chestplate_gold.png differ
diff --git a/3d_armor/textures/3d_armor_chestplate_gold_preview.png b/3d_armor/textures/3d_armor_chestplate_gold_preview.png
index cb11321..2a5161a 100644
Binary files a/3d_armor/textures/3d_armor_chestplate_gold_preview.png and b/3d_armor/textures/3d_armor_chestplate_gold_preview.png differ
diff --git a/3d_armor/textures/3d_armor_chestplate_mithril.png b/3d_armor/textures/3d_armor_chestplate_mithril.png
index 2bbeab8..01d6a31 100644
Binary files a/3d_armor/textures/3d_armor_chestplate_mithril.png and b/3d_armor/textures/3d_armor_chestplate_mithril.png differ
diff --git a/3d_armor/textures/3d_armor_chestplate_mithril_preview.png b/3d_armor/textures/3d_armor_chestplate_mithril_preview.png
index eca051c..a33522a 100644
Binary files a/3d_armor/textures/3d_armor_chestplate_mithril_preview.png and b/3d_armor/textures/3d_armor_chestplate_mithril_preview.png differ
diff --git a/3d_armor/textures/3d_armor_chestplate_steel.png b/3d_armor/textures/3d_armor_chestplate_steel.png
index 23cdbda..03d0406 100644
Binary files a/3d_armor/textures/3d_armor_chestplate_steel.png and b/3d_armor/textures/3d_armor_chestplate_steel.png differ
diff --git a/3d_armor/textures/3d_armor_chestplate_steel_preview.png b/3d_armor/textures/3d_armor_chestplate_steel_preview.png
index 0e45907..9b682bf 100644
Binary files a/3d_armor/textures/3d_armor_chestplate_steel_preview.png and b/3d_armor/textures/3d_armor_chestplate_steel_preview.png differ
diff --git a/3d_armor/textures/3d_armor_chestplate_wood.png b/3d_armor/textures/3d_armor_chestplate_wood.png
index ea7a1d7..91ecaf6 100644
Binary files a/3d_armor/textures/3d_armor_chestplate_wood.png and b/3d_armor/textures/3d_armor_chestplate_wood.png differ
diff --git a/3d_armor/textures/3d_armor_chestplate_wood_preview.png b/3d_armor/textures/3d_armor_chestplate_wood_preview.png
index cdca575..bb6b2bc 100644
Binary files a/3d_armor/textures/3d_armor_chestplate_wood_preview.png and b/3d_armor/textures/3d_armor_chestplate_wood_preview.png differ
diff --git a/3d_armor/textures/3d_armor_helmet_admin.png b/3d_armor/textures/3d_armor_helmet_admin.png
index 3a75a85..8a26c81 100644
Binary files a/3d_armor/textures/3d_armor_helmet_admin.png and b/3d_armor/textures/3d_armor_helmet_admin.png differ
diff --git a/3d_armor/textures/3d_armor_helmet_admin_preview.png b/3d_armor/textures/3d_armor_helmet_admin_preview.png
index 51ecb9b..fbd6929 100644
Binary files a/3d_armor/textures/3d_armor_helmet_admin_preview.png and b/3d_armor/textures/3d_armor_helmet_admin_preview.png differ
diff --git a/3d_armor/textures/3d_armor_helmet_bronze.png b/3d_armor/textures/3d_armor_helmet_bronze.png
index 91d15d7..b620e0a 100644
Binary files a/3d_armor/textures/3d_armor_helmet_bronze.png and b/3d_armor/textures/3d_armor_helmet_bronze.png differ
diff --git a/3d_armor/textures/3d_armor_helmet_bronze_preview.png b/3d_armor/textures/3d_armor_helmet_bronze_preview.png
index 61fa1af..813578e 100644
Binary files a/3d_armor/textures/3d_armor_helmet_bronze_preview.png and b/3d_armor/textures/3d_armor_helmet_bronze_preview.png differ
diff --git a/3d_armor/textures/3d_armor_helmet_cactus.png b/3d_armor/textures/3d_armor_helmet_cactus.png
index 3021f20..6f2561f 100644
Binary files a/3d_armor/textures/3d_armor_helmet_cactus.png and b/3d_armor/textures/3d_armor_helmet_cactus.png differ
diff --git a/3d_armor/textures/3d_armor_helmet_cactus_preview.png b/3d_armor/textures/3d_armor_helmet_cactus_preview.png
index 4e3bfe2..c1291c4 100644
Binary files a/3d_armor/textures/3d_armor_helmet_cactus_preview.png and b/3d_armor/textures/3d_armor_helmet_cactus_preview.png differ
diff --git a/3d_armor/textures/3d_armor_helmet_crystal.png b/3d_armor/textures/3d_armor_helmet_crystal.png
index 7a2c774..e447f2c 100644
Binary files a/3d_armor/textures/3d_armor_helmet_crystal.png and b/3d_armor/textures/3d_armor_helmet_crystal.png differ
diff --git a/3d_armor/textures/3d_armor_helmet_crystal_preview.png b/3d_armor/textures/3d_armor_helmet_crystal_preview.png
index 451a15d..33c596b 100644
Binary files a/3d_armor/textures/3d_armor_helmet_crystal_preview.png and b/3d_armor/textures/3d_armor_helmet_crystal_preview.png differ
diff --git a/3d_armor/textures/3d_armor_helmet_diamond.png b/3d_armor/textures/3d_armor_helmet_diamond.png
index e1768b3..a6551da 100644
Binary files a/3d_armor/textures/3d_armor_helmet_diamond.png and b/3d_armor/textures/3d_armor_helmet_diamond.png differ
diff --git a/3d_armor/textures/3d_armor_helmet_diamond_preview.png b/3d_armor/textures/3d_armor_helmet_diamond_preview.png
index 33a273a..4c351b0 100644
Binary files a/3d_armor/textures/3d_armor_helmet_diamond_preview.png and b/3d_armor/textures/3d_armor_helmet_diamond_preview.png differ
diff --git a/3d_armor/textures/3d_armor_helmet_gold.png b/3d_armor/textures/3d_armor_helmet_gold.png
index 4d701b4..b07ad01 100644
Binary files a/3d_armor/textures/3d_armor_helmet_gold.png and b/3d_armor/textures/3d_armor_helmet_gold.png differ
diff --git a/3d_armor/textures/3d_armor_helmet_gold_preview.png b/3d_armor/textures/3d_armor_helmet_gold_preview.png
index d2e7ac8..655db7c 100644
Binary files a/3d_armor/textures/3d_armor_helmet_gold_preview.png and b/3d_armor/textures/3d_armor_helmet_gold_preview.png differ
diff --git a/3d_armor/textures/3d_armor_helmet_mithril.png b/3d_armor/textures/3d_armor_helmet_mithril.png
index 916e69d..fb4e457 100644
Binary files a/3d_armor/textures/3d_armor_helmet_mithril.png and b/3d_armor/textures/3d_armor_helmet_mithril.png differ
diff --git a/3d_armor/textures/3d_armor_helmet_mithril_preview.png b/3d_armor/textures/3d_armor_helmet_mithril_preview.png
index a331f6a..477c464 100644
Binary files a/3d_armor/textures/3d_armor_helmet_mithril_preview.png and b/3d_armor/textures/3d_armor_helmet_mithril_preview.png differ
diff --git a/3d_armor/textures/3d_armor_helmet_steel.png b/3d_armor/textures/3d_armor_helmet_steel.png
index e0a5afd..d7915c9 100644
Binary files a/3d_armor/textures/3d_armor_helmet_steel.png and b/3d_armor/textures/3d_armor_helmet_steel.png differ
diff --git a/3d_armor/textures/3d_armor_helmet_steel_preview.png b/3d_armor/textures/3d_armor_helmet_steel_preview.png
index 2c8721c..97f024a 100644
Binary files a/3d_armor/textures/3d_armor_helmet_steel_preview.png and b/3d_armor/textures/3d_armor_helmet_steel_preview.png differ
diff --git a/3d_armor/textures/3d_armor_helmet_wood.png b/3d_armor/textures/3d_armor_helmet_wood.png
index fd5f712..4132ce3 100644
Binary files a/3d_armor/textures/3d_armor_helmet_wood.png and b/3d_armor/textures/3d_armor_helmet_wood.png differ
diff --git a/3d_armor/textures/3d_armor_helmet_wood_preview.png b/3d_armor/textures/3d_armor_helmet_wood_preview.png
index fe1cead..b15ea19 100644
Binary files a/3d_armor/textures/3d_armor_helmet_wood_preview.png and b/3d_armor/textures/3d_armor_helmet_wood_preview.png differ
diff --git a/3d_armor/textures/3d_armor_inv_boots_admin.png b/3d_armor/textures/3d_armor_inv_boots_admin.png
index f94c844..5c9d1a4 100644
Binary files a/3d_armor/textures/3d_armor_inv_boots_admin.png and b/3d_armor/textures/3d_armor_inv_boots_admin.png differ
diff --git a/3d_armor/textures/3d_armor_inv_boots_bronze.png b/3d_armor/textures/3d_armor_inv_boots_bronze.png
index 7f5f968..4529c49 100644
Binary files a/3d_armor/textures/3d_armor_inv_boots_bronze.png and b/3d_armor/textures/3d_armor_inv_boots_bronze.png differ
diff --git a/3d_armor/textures/3d_armor_inv_boots_cactus.png b/3d_armor/textures/3d_armor_inv_boots_cactus.png
index b665eb8..5410c19 100644
Binary files a/3d_armor/textures/3d_armor_inv_boots_cactus.png and b/3d_armor/textures/3d_armor_inv_boots_cactus.png differ
diff --git a/3d_armor/textures/3d_armor_inv_boots_crystal.png b/3d_armor/textures/3d_armor_inv_boots_crystal.png
index 5709a17..715b58a 100644
Binary files a/3d_armor/textures/3d_armor_inv_boots_crystal.png and b/3d_armor/textures/3d_armor_inv_boots_crystal.png differ
diff --git a/3d_armor/textures/3d_armor_inv_boots_diamond.png b/3d_armor/textures/3d_armor_inv_boots_diamond.png
index 6bcd620..dbae53a 100644
Binary files a/3d_armor/textures/3d_armor_inv_boots_diamond.png and b/3d_armor/textures/3d_armor_inv_boots_diamond.png differ
diff --git a/3d_armor/textures/3d_armor_inv_boots_gold.png b/3d_armor/textures/3d_armor_inv_boots_gold.png
index 8598cf9..ad350b6 100644
Binary files a/3d_armor/textures/3d_armor_inv_boots_gold.png and b/3d_armor/textures/3d_armor_inv_boots_gold.png differ
diff --git a/3d_armor/textures/3d_armor_inv_boots_mithril.png b/3d_armor/textures/3d_armor_inv_boots_mithril.png
index a4c180d..91e622d 100644
Binary files a/3d_armor/textures/3d_armor_inv_boots_mithril.png and b/3d_armor/textures/3d_armor_inv_boots_mithril.png differ
diff --git a/3d_armor/textures/3d_armor_inv_boots_steel.png b/3d_armor/textures/3d_armor_inv_boots_steel.png
index 77286b5..fa81cf8 100644
Binary files a/3d_armor/textures/3d_armor_inv_boots_steel.png and b/3d_armor/textures/3d_armor_inv_boots_steel.png differ
diff --git a/3d_armor/textures/3d_armor_inv_boots_wood.png b/3d_armor/textures/3d_armor_inv_boots_wood.png
index 66993a1..5ad9662 100644
Binary files a/3d_armor/textures/3d_armor_inv_boots_wood.png and b/3d_armor/textures/3d_armor_inv_boots_wood.png differ
diff --git a/3d_armor/textures/3d_armor_inv_chestplate_admin.png b/3d_armor/textures/3d_armor_inv_chestplate_admin.png
index 29f3897..c5ddd97 100644
Binary files a/3d_armor/textures/3d_armor_inv_chestplate_admin.png and b/3d_armor/textures/3d_armor_inv_chestplate_admin.png differ
diff --git a/3d_armor/textures/3d_armor_inv_chestplate_bronze.png b/3d_armor/textures/3d_armor_inv_chestplate_bronze.png
index da2f3e0..f1256e4 100644
Binary files a/3d_armor/textures/3d_armor_inv_chestplate_bronze.png and b/3d_armor/textures/3d_armor_inv_chestplate_bronze.png differ
diff --git a/3d_armor/textures/3d_armor_inv_chestplate_cactus.png b/3d_armor/textures/3d_armor_inv_chestplate_cactus.png
index a695e78..f8ed465 100644
Binary files a/3d_armor/textures/3d_armor_inv_chestplate_cactus.png and b/3d_armor/textures/3d_armor_inv_chestplate_cactus.png differ
diff --git a/3d_armor/textures/3d_armor_inv_chestplate_crystal.png b/3d_armor/textures/3d_armor_inv_chestplate_crystal.png
index 4d23066..a57bfd9 100644
Binary files a/3d_armor/textures/3d_armor_inv_chestplate_crystal.png and b/3d_armor/textures/3d_armor_inv_chestplate_crystal.png differ
diff --git a/3d_armor/textures/3d_armor_inv_chestplate_diamond.png b/3d_armor/textures/3d_armor_inv_chestplate_diamond.png
index eee800b..09583ea 100644
Binary files a/3d_armor/textures/3d_armor_inv_chestplate_diamond.png and b/3d_armor/textures/3d_armor_inv_chestplate_diamond.png differ
diff --git a/3d_armor/textures/3d_armor_inv_chestplate_gold.png b/3d_armor/textures/3d_armor_inv_chestplate_gold.png
index 1dddc3d..1412697 100644
Binary files a/3d_armor/textures/3d_armor_inv_chestplate_gold.png and b/3d_armor/textures/3d_armor_inv_chestplate_gold.png differ
diff --git a/3d_armor/textures/3d_armor_inv_chestplate_mithril.png b/3d_armor/textures/3d_armor_inv_chestplate_mithril.png
index e4c50a7..faa9846 100644
Binary files a/3d_armor/textures/3d_armor_inv_chestplate_mithril.png and b/3d_armor/textures/3d_armor_inv_chestplate_mithril.png differ
diff --git a/3d_armor/textures/3d_armor_inv_chestplate_steel.png b/3d_armor/textures/3d_armor_inv_chestplate_steel.png
index 421b3e3..f0222e7 100644
Binary files a/3d_armor/textures/3d_armor_inv_chestplate_steel.png and b/3d_armor/textures/3d_armor_inv_chestplate_steel.png differ
diff --git a/3d_armor/textures/3d_armor_inv_chestplate_wood.png b/3d_armor/textures/3d_armor_inv_chestplate_wood.png
index 434374f..b1f2305 100644
Binary files a/3d_armor/textures/3d_armor_inv_chestplate_wood.png and b/3d_armor/textures/3d_armor_inv_chestplate_wood.png differ
diff --git a/3d_armor/textures/3d_armor_inv_helmet_admin.png b/3d_armor/textures/3d_armor_inv_helmet_admin.png
index e019702..fe388ab 100644
Binary files a/3d_armor/textures/3d_armor_inv_helmet_admin.png and b/3d_armor/textures/3d_armor_inv_helmet_admin.png differ
diff --git a/3d_armor/textures/3d_armor_inv_helmet_bronze.png b/3d_armor/textures/3d_armor_inv_helmet_bronze.png
index 53cdaf1..9bdc252 100644
Binary files a/3d_armor/textures/3d_armor_inv_helmet_bronze.png and b/3d_armor/textures/3d_armor_inv_helmet_bronze.png differ
diff --git a/3d_armor/textures/3d_armor_inv_helmet_cactus.png b/3d_armor/textures/3d_armor_inv_helmet_cactus.png
index 746c264..03e8655 100644
Binary files a/3d_armor/textures/3d_armor_inv_helmet_cactus.png and b/3d_armor/textures/3d_armor_inv_helmet_cactus.png differ
diff --git a/3d_armor/textures/3d_armor_inv_helmet_crystal.png b/3d_armor/textures/3d_armor_inv_helmet_crystal.png
index 8a29eec..2fede4a 100644
Binary files a/3d_armor/textures/3d_armor_inv_helmet_crystal.png and b/3d_armor/textures/3d_armor_inv_helmet_crystal.png differ
diff --git a/3d_armor/textures/3d_armor_inv_helmet_diamond.png b/3d_armor/textures/3d_armor_inv_helmet_diamond.png
index 2eb3a5c..46c1f58 100644
Binary files a/3d_armor/textures/3d_armor_inv_helmet_diamond.png and b/3d_armor/textures/3d_armor_inv_helmet_diamond.png differ
diff --git a/3d_armor/textures/3d_armor_inv_helmet_gold.png b/3d_armor/textures/3d_armor_inv_helmet_gold.png
index e8f83d8..d76a212 100644
Binary files a/3d_armor/textures/3d_armor_inv_helmet_gold.png and b/3d_armor/textures/3d_armor_inv_helmet_gold.png differ
diff --git a/3d_armor/textures/3d_armor_inv_helmet_mithril.png b/3d_armor/textures/3d_armor_inv_helmet_mithril.png
index abdd0ca..857d43f 100644
Binary files a/3d_armor/textures/3d_armor_inv_helmet_mithril.png and b/3d_armor/textures/3d_armor_inv_helmet_mithril.png differ
diff --git a/3d_armor/textures/3d_armor_inv_helmet_steel.png b/3d_armor/textures/3d_armor_inv_helmet_steel.png
index 4c636f2..e705974 100644
Binary files a/3d_armor/textures/3d_armor_inv_helmet_steel.png and b/3d_armor/textures/3d_armor_inv_helmet_steel.png differ
diff --git a/3d_armor/textures/3d_armor_inv_helmet_wood.png b/3d_armor/textures/3d_armor_inv_helmet_wood.png
index e8ee2fe..98f4d87 100644
Binary files a/3d_armor/textures/3d_armor_inv_helmet_wood.png and b/3d_armor/textures/3d_armor_inv_helmet_wood.png differ
diff --git a/3d_armor/textures/3d_armor_inv_leggings_admin.png b/3d_armor/textures/3d_armor_inv_leggings_admin.png
index 04b64c0..f994408 100644
Binary files a/3d_armor/textures/3d_armor_inv_leggings_admin.png and b/3d_armor/textures/3d_armor_inv_leggings_admin.png differ
diff --git a/3d_armor/textures/3d_armor_inv_leggings_bronze.png b/3d_armor/textures/3d_armor_inv_leggings_bronze.png
index b574108..32748e9 100644
Binary files a/3d_armor/textures/3d_armor_inv_leggings_bronze.png and b/3d_armor/textures/3d_armor_inv_leggings_bronze.png differ
diff --git a/3d_armor/textures/3d_armor_inv_leggings_cactus.png b/3d_armor/textures/3d_armor_inv_leggings_cactus.png
index c011db8..05f8853 100644
Binary files a/3d_armor/textures/3d_armor_inv_leggings_cactus.png and b/3d_armor/textures/3d_armor_inv_leggings_cactus.png differ
diff --git a/3d_armor/textures/3d_armor_inv_leggings_crystal.png b/3d_armor/textures/3d_armor_inv_leggings_crystal.png
index 5b3f703..0c6da1f 100644
Binary files a/3d_armor/textures/3d_armor_inv_leggings_crystal.png and b/3d_armor/textures/3d_armor_inv_leggings_crystal.png differ
diff --git a/3d_armor/textures/3d_armor_inv_leggings_diamond.png b/3d_armor/textures/3d_armor_inv_leggings_diamond.png
index 2ab1c8e..7373529 100644
Binary files a/3d_armor/textures/3d_armor_inv_leggings_diamond.png and b/3d_armor/textures/3d_armor_inv_leggings_diamond.png differ
diff --git a/3d_armor/textures/3d_armor_inv_leggings_gold.png b/3d_armor/textures/3d_armor_inv_leggings_gold.png
index 7424833..29a840b 100644
Binary files a/3d_armor/textures/3d_armor_inv_leggings_gold.png and b/3d_armor/textures/3d_armor_inv_leggings_gold.png differ
diff --git a/3d_armor/textures/3d_armor_inv_leggings_mithril.png b/3d_armor/textures/3d_armor_inv_leggings_mithril.png
index b9b1b3c..860ddae 100644
Binary files a/3d_armor/textures/3d_armor_inv_leggings_mithril.png and b/3d_armor/textures/3d_armor_inv_leggings_mithril.png differ
diff --git a/3d_armor/textures/3d_armor_inv_leggings_steel.png b/3d_armor/textures/3d_armor_inv_leggings_steel.png
index 77ee17e..ce833d0 100644
Binary files a/3d_armor/textures/3d_armor_inv_leggings_steel.png and b/3d_armor/textures/3d_armor_inv_leggings_steel.png differ
diff --git a/3d_armor/textures/3d_armor_inv_leggings_wood.png b/3d_armor/textures/3d_armor_inv_leggings_wood.png
index f162e51..b7d042c 100644
Binary files a/3d_armor/textures/3d_armor_inv_leggings_wood.png and b/3d_armor/textures/3d_armor_inv_leggings_wood.png differ
diff --git a/3d_armor/textures/3d_armor_leggings_admin.png b/3d_armor/textures/3d_armor_leggings_admin.png
index 6752256..22829ea 100644
Binary files a/3d_armor/textures/3d_armor_leggings_admin.png and b/3d_armor/textures/3d_armor_leggings_admin.png differ
diff --git a/3d_armor/textures/3d_armor_leggings_admin_preview.png b/3d_armor/textures/3d_armor_leggings_admin_preview.png
index fe47999..5c70fac 100644
Binary files a/3d_armor/textures/3d_armor_leggings_admin_preview.png and b/3d_armor/textures/3d_armor_leggings_admin_preview.png differ
diff --git a/3d_armor/textures/3d_armor_leggings_bronze.png b/3d_armor/textures/3d_armor_leggings_bronze.png
index 3394288..a7ea904 100644
Binary files a/3d_armor/textures/3d_armor_leggings_bronze.png and b/3d_armor/textures/3d_armor_leggings_bronze.png differ
diff --git a/3d_armor/textures/3d_armor_leggings_bronze_preview.png b/3d_armor/textures/3d_armor_leggings_bronze_preview.png
index c4aa7b9..19d247d 100644
Binary files a/3d_armor/textures/3d_armor_leggings_bronze_preview.png and b/3d_armor/textures/3d_armor_leggings_bronze_preview.png differ
diff --git a/3d_armor/textures/3d_armor_leggings_cactus.png b/3d_armor/textures/3d_armor_leggings_cactus.png
index 7d22404..0c253c0 100644
Binary files a/3d_armor/textures/3d_armor_leggings_cactus.png and b/3d_armor/textures/3d_armor_leggings_cactus.png differ
diff --git a/3d_armor/textures/3d_armor_leggings_cactus_preview.png b/3d_armor/textures/3d_armor_leggings_cactus_preview.png
index 1a24863..ee5ab4c 100644
Binary files a/3d_armor/textures/3d_armor_leggings_cactus_preview.png and b/3d_armor/textures/3d_armor_leggings_cactus_preview.png differ
diff --git a/3d_armor/textures/3d_armor_leggings_crystal.png b/3d_armor/textures/3d_armor_leggings_crystal.png
index cc61390..3572fd7 100644
Binary files a/3d_armor/textures/3d_armor_leggings_crystal.png and b/3d_armor/textures/3d_armor_leggings_crystal.png differ
diff --git a/3d_armor/textures/3d_armor_leggings_crystal_preview.png b/3d_armor/textures/3d_armor_leggings_crystal_preview.png
index 559d008..3d16482 100644
Binary files a/3d_armor/textures/3d_armor_leggings_crystal_preview.png and b/3d_armor/textures/3d_armor_leggings_crystal_preview.png differ
diff --git a/3d_armor/textures/3d_armor_leggings_diamond.png b/3d_armor/textures/3d_armor_leggings_diamond.png
index a646ba2..2f533e8 100644
Binary files a/3d_armor/textures/3d_armor_leggings_diamond.png and b/3d_armor/textures/3d_armor_leggings_diamond.png differ
diff --git a/3d_armor/textures/3d_armor_leggings_diamond_preview.png b/3d_armor/textures/3d_armor_leggings_diamond_preview.png
index a6ac2e2..32d594a 100644
Binary files a/3d_armor/textures/3d_armor_leggings_diamond_preview.png and b/3d_armor/textures/3d_armor_leggings_diamond_preview.png differ
diff --git a/3d_armor/textures/3d_armor_leggings_gold.png b/3d_armor/textures/3d_armor_leggings_gold.png
index d207dff..24b033c 100644
Binary files a/3d_armor/textures/3d_armor_leggings_gold.png and b/3d_armor/textures/3d_armor_leggings_gold.png differ
diff --git a/3d_armor/textures/3d_armor_leggings_gold_preview.png b/3d_armor/textures/3d_armor_leggings_gold_preview.png
index 75e6ca4..3ce1de8 100644
Binary files a/3d_armor/textures/3d_armor_leggings_gold_preview.png and b/3d_armor/textures/3d_armor_leggings_gold_preview.png differ
diff --git a/3d_armor/textures/3d_armor_leggings_mithril.png b/3d_armor/textures/3d_armor_leggings_mithril.png
index ffff3ee..b7fdfae 100644
Binary files a/3d_armor/textures/3d_armor_leggings_mithril.png and b/3d_armor/textures/3d_armor_leggings_mithril.png differ
diff --git a/3d_armor/textures/3d_armor_leggings_mithril_preview.png b/3d_armor/textures/3d_armor_leggings_mithril_preview.png
index ee99178..c3a68e9 100644
Binary files a/3d_armor/textures/3d_armor_leggings_mithril_preview.png and b/3d_armor/textures/3d_armor_leggings_mithril_preview.png differ
diff --git a/3d_armor/textures/3d_armor_leggings_steel.png b/3d_armor/textures/3d_armor_leggings_steel.png
index 78d5874..6bb2fbc 100644
Binary files a/3d_armor/textures/3d_armor_leggings_steel.png and b/3d_armor/textures/3d_armor_leggings_steel.png differ
diff --git a/3d_armor/textures/3d_armor_leggings_steel_preview.png b/3d_armor/textures/3d_armor_leggings_steel_preview.png
index 3e3ec85..f8c67c0 100644
Binary files a/3d_armor/textures/3d_armor_leggings_steel_preview.png and b/3d_armor/textures/3d_armor_leggings_steel_preview.png differ
diff --git a/3d_armor/textures/3d_armor_leggings_wood.png b/3d_armor/textures/3d_armor_leggings_wood.png
index 3880fc0..0923cd1 100644
Binary files a/3d_armor/textures/3d_armor_leggings_wood.png and b/3d_armor/textures/3d_armor_leggings_wood.png differ
diff --git a/3d_armor/textures/3d_armor_leggings_wood_preview.png b/3d_armor/textures/3d_armor_leggings_wood_preview.png
index f8ee8e8..b5f5667 100644
Binary files a/3d_armor/textures/3d_armor_leggings_wood_preview.png and b/3d_armor/textures/3d_armor_leggings_wood_preview.png differ
diff --git a/3d_armor/textures/character_preview.png b/3d_armor/textures/character_preview.png
index 4ac4602..bf8e842 100644
Binary files a/3d_armor/textures/character_preview.png and b/3d_armor/textures/character_preview.png differ
diff --git a/3d_armor/textures/inventory_plus_armor.png b/3d_armor/textures/inventory_plus_armor.png
index 6cde640..98917ef 100644
Binary files a/3d_armor/textures/inventory_plus_armor.png and b/3d_armor/textures/inventory_plus_armor.png differ
diff --git a/3d_armor/textures/preview_index.txt b/3d_armor/textures/preview_index.txt
new file mode 100644
index 0000000..9e2fe9d
--- /dev/null
+++ b/3d_armor/textures/preview_index.txt
@@ -0,0 +1,44 @@
+3d_armor/textures/3d_armor_helmet_wood.png:head
+3d_armor/textures/3d_armor_chestplate_wood.png:torso
+3d_armor/textures/3d_armor_leggings_wood.png:legs
+3d_armor/textures/3d_armor_boots_wood.png:feet
+
+3d_armor/textures/3d_armor_helmet_cactus.png:head
+3d_armor/textures/3d_armor_chestplate_cactus.png:torso
+3d_armor/textures/3d_armor_leggings_cactus.png:legs
+3d_armor/textures/3d_armor_boots_cactus.png:feet
+
+3d_armor/textures/3d_armor_helmet_steel.png:head
+3d_armor/textures/3d_armor_chestplate_steel.png:torso
+3d_armor/textures/3d_armor_leggings_steel.png:legs
+3d_armor/textures/3d_armor_boots_steel.png:feet
+
+3d_armor/textures/3d_armor_helmet_bronze.png:head
+3d_armor/textures/3d_armor_chestplate_bronze.png:torso
+3d_armor/textures/3d_armor_leggings_bronze.png:legs
+3d_armor/textures/3d_armor_boots_bronze.png:feet
+
+3d_armor/textures/3d_armor_helmet_gold.png:head
+3d_armor/textures/3d_armor_chestplate_gold.png:torso
+3d_armor/textures/3d_armor_leggings_gold.png:legs
+3d_armor/textures/3d_armor_boots_gold.png:feet
+
+3d_armor/textures/3d_armor_helmet_diamond.png:head
+3d_armor/textures/3d_armor_chestplate_diamond.png:torso
+3d_armor/textures/3d_armor_leggings_diamond.png:legs
+3d_armor/textures/3d_armor_boots_diamond.png:feet
+
+3d_armor/textures/3d_armor_helmet_mithril.png:head
+3d_armor/textures/3d_armor_chestplate_mithril.png:torso
+3d_armor/textures/3d_armor_leggings_mithril.png:legs
+3d_armor/textures/3d_armor_boots_mithril.png:feet
+
+3d_armor/textures/3d_armor_helmet_crystal.png:head
+3d_armor/textures/3d_armor_chestplate_crystal.png:torso
+3d_armor/textures/3d_armor_leggings_crystal.png:legs
+3d_armor/textures/3d_armor_boots_crystal.png:feet
+
+3d_armor/textures/3d_armor_helmet_admin.png:head
+3d_armor/textures/3d_armor_chestplate_admin.png:torso
+3d_armor/textures/3d_armor_leggings_admin.png:legs
+3d_armor/textures/3d_armor_boots_admin.png:feet
diff --git a/3d_armor_stand/LICENSE.txt b/3d_armor_stand/LICENSE.txt
index fe6dbd8..65f46c8 100644
--- a/3d_armor_stand/LICENSE.txt
+++ b/3d_armor_stand/LICENSE.txt
@@ -3,5 +3,20 @@
 
 License Source Code: (C) 2016-2017 Stuart Jones - LGPL v2.1
 
-Lecense Media: (C) 2016-2017 Stuart Jones - CC BY-SA 3.0
+Lecense Models: (C) 2016-2017 Stuart Jones - CC BY-SA 3.0
 
+UV model mapping by tobyplowy(aka toby109tt)
+
+License Textures:
+
+3d_armor_stand.png
+3d_armor_stand_locked.png
+
+(C) 2017 tobyplowy - CC BY-SA 3.0
+
+3d_armor_stand_feet.png
+3d_armor_stand_head.png
+3d_armor_stand_legs.png
+3d_armor_stand_torso.png
+
+(C) 2016-2017 Stuart Jones - CC BY-SA 3.0
diff --git a/3d_armor_stand/init.lua b/3d_armor_stand/init.lua
index 0a4e91c..7fb5c3c 100644
--- a/3d_armor_stand/init.lua
+++ b/3d_armor_stand/init.lua
@@ -16,6 +16,18 @@ local armor_stand_formspec = "size[8,7]" ..
 
 local elements = {"head", "torso", "legs", "feet"}
 
+local function drop_armor(pos)
+	local meta = minetest.get_meta(pos)
+	local inv = meta:get_inventory()
+	for _, element in pairs(elements) do
+		local stack = inv:get_stack("armor_"..element, 1)
+		if stack and stack:get_count() > 0 then
+			armor.drop_armor(pos, stack)
+			inv:set_stack("armor_"..element, 1, nil)
+		end
+	end
+end
+
 local function get_stand_object(pos)
 	local object = nil
 	local objects = minetest.get_objects_inside_radius(pos, 0.5) or {}
@@ -98,17 +110,52 @@ local function has_locked_armor_stand_privilege(meta, player)
 	return true
 end
 
+local function add_hidden_node(pos, player)
+	local p = {x=pos.x, y=pos.y + 1, z=pos.z}
+	local name = player:get_player_name()
+	local node = minetest.get_node(p)
+	if node.name == "air" and not minetest.is_protected(pos, name) then
+		minetest.set_node(p, {name="3d_armor_stand:top"})
+	end
+end
+
+local function remove_hidden_node(pos)
+	local p = {x=pos.x, y=pos.y + 1, z=pos.z}
+	local node = minetest.get_node(p)
+	if node.name == "3d_armor_stand:top" then
+		minetest.remove_node(p)
+	end
+end
+
+minetest.register_node("3d_armor_stand:top", {
+	description = "Armor stand top",
+	paramtype = "light",
+	drawtype = "plantlike",
+	sunlight_propagates = true,
+	walkable = true,
+	pointable = false,
+	diggable = false,
+	buildable_to = false,
+	drop = "",
+	groups = {not_in_creative_inventory = 1},
+	on_blast = function() end,
+	tiles = {"3d_armor_trans.png"},
+})
+
 minetest.register_node("3d_armor_stand:armor_stand", {
 	description = "Armor stand",
 	drawtype = "mesh",
 	mesh = "3d_armor_stand.obj",
-	tiles = {"default_wood.png", "default_steel_block.png"},
+	tiles = {"3d_armor_stand.png"},
 	paramtype = "light",
 	paramtype2 = "facedir",
 	walkable = false,
 	selection_box = {
 		type = "fixed",
-		fixed = {-0.5,-0.5,-0.5, 0.5,1.4,0.5}
+		fixed = {
+			{-0.25, -0.4375, -0.25, 0.25, 1.4, 0.25},
+			{-0.5, -0.5, -0.5, 0.5, -0.4375, 0.5},
+		},
 	},
 	groups = {choppy=2, oddly_breakable_by_hand=2},
 	sounds = default.node_sound_wood_defaults(),
@@ -131,8 +178,9 @@ minetest.register_node("3d_armor_stand:armor_stand", {
 		end
 		return true
 	end,
-	after_place_node = function(pos)
+	after_place_node = function(pos, placer)
 		minetest.add_entity(pos, "3d_armor_stand:armor_entity")
+		add_hidden_node(pos, placer)
 	end,
 	allow_metadata_inventory_put = function(pos, listname, index, stack)
 		local def = stack:get_definition() or {}
@@ -153,15 +201,12 @@ minetest.register_node("3d_armor_stand:armor_stand", {
 	end,
 	after_destruct = function(pos)
 		update_entity(pos)
+		remove_hidden_node(pos)
 	end,
 	on_blast = function(pos)
-		local object = get_stand_object(pos)
-		if object then
-			object:remove()
-		end
-		minetest.after(1, function(pos)
-			update_entity(pos)
-		end, pos)
+		drop_armor(pos)
+		armor.drop_armor(pos, "3d_armor_stand:armor_stand")
+		minetest.remove_node(pos)
 	end,
 })
 
@@ -169,13 +214,16 @@ minetest.register_node("3d_armor_stand:locked_armor_stand", {
 	description = "Locked Armor stand",
 	drawtype = "mesh",
 	mesh = "3d_armor_stand.obj",
-	tiles = {"default_wood.png", "default_steel_block.png"},
+	tiles = {"3d_armor_stand_locked.png"},
 	paramtype = "light",
 	paramtype2 = "facedir",
 	walkable = false,
 	selection_box = {
 		type = "fixed",
-		fixed = {-0.5,-0.5,-0.5, 0.5,1.4,0.5}
+		fixed = {
+			{-0.25, -0.4375, -0.25, 0.25, 1.4, 0.25},
+			{-0.5, -0.5, -0.5, 0.5, -0.4375, 0.5},
+		},
 	},
 	groups = {choppy=2, oddly_breakable_by_hand=2},
 	sounds = default.node_sound_wood_defaults(),
@@ -205,6 +253,7 @@ minetest.register_node("3d_armor_stand:locked_armor_stand", {
 		meta:set_string("owner", placer:get_player_name() or "")
 		meta:set_string("infotext", "Armor Stand (owned by " ..
 		meta:get_string("owner") .. ")")
+		add_hidden_node(pos, placer)
 	end,
 	allow_metadata_inventory_put = function(pos, listname, index, stack, player)
 		local meta = minetest.get_meta(pos)
@@ -236,15 +285,10 @@ minetest.register_node("3d_armor_stand:locked_armor_stand", {
 	end,
 	after_destruct = function(pos)
 		update_entity(pos)
+		remove_hidden_node(pos)
 	end,
 	on_blast = function(pos)
-		local object = get_stand_object(pos)
-		if object then
-			object:remove()
-		end
-		minetest.after(1, function(pos)
-			update_entity(pos)
-		end, pos)
+		-- Not affected by TNT
 	end,
 })
 
@@ -253,7 +297,7 @@ minetest.register_entity("3d_armor_stand:armor_entity", {
 	visual = "mesh",
 	mesh = "3d_armor_entity.obj",
 	visual_size = {x=1, y=1},
-	collisionbox = {-0.1,-0.4,-0.1, 0.1,1.3,0.1},
+	collisionbox = {0,0,0,0,0,0},
 	textures = {"3d_armor_trans.png"},
 	pos = nil,
 	timer = 0,
@@ -264,22 +308,14 @@ minetest.register_entity("3d_armor_stand:armor_entity", {
 			update_entity(pos)
 		end
 	end,
-	on_step = function(self, dtime)
-		if not self.pos then
-			return
-		end
-		self.timer = self.timer + dtime
-		if self.timer > 1 then
-			self.timer = 0
-			local pos = self.object:getpos()
-			if pos then
-				if vector.equals(vector.round(pos), self.pos) then
-					return
-				end
-			end
-			update_entity(self.pos)
+	on_blast = function(self, damage)
+		local drops = {}
+		local node = minetest.get_node(self.pos)
+		if node.name == "3d_armor_stand:armor_stand" then
+			drop_armor(self.pos)
 			self.object:remove()
 		end
+		return false, false, drops
 	end,
 })
 
diff --git a/3d_armor_stand/models/3d_armor_stand.obj b/3d_armor_stand/models/3d_armor_stand.obj
index 89f3793..0df6dc7 100644
--- a/3d_armor_stand/models/3d_armor_stand.obj
+++ b/3d_armor_stand/models/3d_armor_stand.obj
@@ -1,191 +1,280 @@
-# Blender v2.73 (sub 0) OBJ File: '3d_armor_stand.blend'
+# Blender v2.72 (sub 0) OBJ File: ''
 # www.blender.org
 mtllib 3d_armor_stand.mtl
-o Player_Cube
-v 0.062500 1.312500 -0.062500
-v 0.062500 1.312500 0.062500
-v -0.062500 1.312500 -0.062500
-v -0.062500 1.312500 0.062500
-v -0.187500 -0.437504 0.062500
-v -0.187500 -0.437504 -0.062500
-v -0.187500 0.937500 0.062500
-v -0.187500 0.937500 -0.062500
-v -0.250000 0.250000 0.062500
-v -0.250000 0.250000 -0.062500
-v -0.250000 0.125003 0.062500
-v -0.250000 0.125003 -0.062500
-v 0.250000 0.250000 0.062500
-v 0.250000 0.250000 -0.062500
-v 0.250000 0.125003 0.062500
-v 0.250000 0.125003 -0.062500
-v -0.062500 -0.437504 -0.062500
-v -0.062500 -0.437504 0.062500
-v -0.062500 0.937500 0.062500
-v -0.062500 0.937500 -0.062500
-v 0.062500 0.250000 0.062500
-v 0.062500 0.250000 -0.062500
-v 0.187500 0.250000 -0.062500
-v 0.187500 0.250000 0.062500
-v 0.187500 0.937500 -0.062500
-v 0.187500 0.937500 0.062500
-v 0.187500 -0.437504 -0.062500
-v 0.187500 -0.437504 0.062500
-v 0.062500 -0.437504 -0.062500
-v 0.062500 -0.437504 0.062500
-v 0.062500 0.937500 0.062500
-v 0.062500 0.937500 -0.062500
-v -0.062500 0.812500 -0.062500
-v -0.187500 0.812500 -0.062500
-v -0.062500 0.812500 0.062500
-v -0.187500 0.812500 0.062500
-v 0.062500 0.812500 -0.062500
-v 0.187500 0.812500 -0.062500
-v 0.187500 0.812500 0.062500
-v 0.062500 0.812500 0.062500
-v 0.375000 0.812500 0.062500
-v 0.375000 0.812500 -0.062500
-v 0.375000 0.937500 0.062500
-v 0.375000 0.937500 -0.062500
-v 0.500000 -0.437500 -0.500000
-v 0.500000 -0.437500 0.500000
+o Armor_Stand_Player_Cube_Stand
+v 0.062500 0.125002 -0.062500
+v 0.062500 -0.437500 -0.062500
+v 0.062500 -0.437500 0.062500
+v 0.062500 0.125002 0.062500
+v -0.187500 0.250004 0.062500
+v -0.187500 0.250004 -0.062500
+v -0.250000 0.250004 -0.062500
+v -0.250000 0.250004 0.062500
+v -0.062500 -0.437500 -0.062500
+v -0.062500 -0.437500 0.062500
+v -0.187500 -0.437500 0.062500
+v -0.187500 -0.437500 -0.062500
+v -0.187500 0.125002 0.062500
+v -0.187500 0.125002 -0.062500
+v -0.187500 0.937504 0.062500
+v -0.187500 0.937504 -0.062500
+v -0.375000 0.937504 -0.062500
+v -0.375000 0.937504 0.062500
+v -0.062500 0.125002 0.062500
+v 0.187500 0.125002 -0.062500
+v 0.187500 -0.437500 -0.062500
+v -0.062500 0.125002 -0.062500
+v -0.250000 0.125007 -0.062500
+v -0.250000 0.125007 0.062500
+v 0.187500 -0.437500 0.062500
+v 0.187500 0.125002 0.062500
+v -0.062500 0.937504 0.062500
+v -0.187500 0.812504 0.062500
+v -0.062500 0.812504 0.062500
+v -0.062500 0.937504 -0.062500
+v 0.187500 0.250004 -0.062500
+v 0.187500 0.250004 0.062500
+v 0.250000 0.250004 0.062500
+v 0.250000 0.250004 -0.062500
+v 0.250000 0.125007 0.062500
+v 0.250000 0.125007 -0.062500
+v 0.187500 0.812504 0.062500
+v 0.187500 0.812504 -0.062500
+v 0.375000 0.812504 -0.062500
+v 0.375000 0.812504 0.062500
+v 0.187500 0.937504 -0.062500
+v 0.187500 0.937504 0.062500
+v 0.375000 0.937504 0.062500
+v 0.375000 0.937504 -0.062500
+v 0.062500 0.937504 -0.062500
+v 0.062500 0.937504 0.062500
+v -0.062500 0.812504 -0.062500
+v -0.187500 0.812504 -0.062500
+v 0.062500 0.812504 -0.062500
+v 0.062500 0.812504 0.062500
+v -0.375000 0.812504 -0.062500
+v -0.375000 0.812504 0.062500
+v -0.062500 0.250004 0.062500
+v 0.062500 0.250004 0.062500
+v 0.062500 0.250004 -0.062500
+v -0.062500 0.250004 -0.062500
+v -0.062500 1.312504 -0.062500
+v 0.062500 1.312504 -0.062500
+v -0.062500 1.312504 0.062500
+v 0.062500 1.312504 0.062500
 v -0.500000 -0.437500 -0.500000
 v -0.500000 -0.437500 0.500000
-v -0.062500 0.250000 -0.062500
-v -0.187500 0.250000 -0.062500
-v -0.062500 0.250000 0.062500
-v -0.187500 0.250000 0.062500
-v -0.375000 0.937500 0.062500
-v -0.375000 0.937500 -0.062500
-v -0.375000 0.812500 -0.062500
-v -0.375000 0.812500 0.062500
+v 0.500000 -0.437500 0.500000
+v 0.500000 -0.437500 -0.500000
+v -0.500000 -0.500000 -0.500000
 v 0.500000 -0.500000 -0.500000
 v 0.500000 -0.500000 0.500000
-v -0.500000 -0.500000 -0.500000
 v -0.500000 -0.500000 0.500000
-v 0.187500 0.124998 0.062500
-v 0.187500 0.124998 -0.062500
-v 0.062500 0.124998 0.062500
-v 0.062500 0.124998 -0.062500
-v -0.062500 0.124998 -0.062500
-v -0.187500 0.124998 -0.062500
-v -0.062500 0.124998 0.062500
-v -0.187500 0.124998 0.062500
-vt 0.000000 0.000000
-vt 0.875000 0.000000
-vt 0.875000 0.250000
-vt 0.000000 0.250000
-vt 0.125000 0.500000
-vt 0.125000 0.750000
-vt -0.000000 0.750000
-vt -0.000000 0.500000
-vt 0.750000 0.000000
-vt 1.000000 0.000000
-vt 1.000000 0.250000
-vt 0.750000 0.250000
-vt 0.375000 0.500000
-vt 0.375000 0.750000
-vt 0.875000 0.750000
-vt 0.875000 1.000000
-vt 0.000000 1.000000
-vt 0.875000 0.500000
-vt 0.750000 0.500000
-vt 1.000000 0.500000
-vt 1.000000 0.750000
-vt 0.750000 0.750000
-vt 0.625000 1.000000
-vt 0.375000 1.000000
-vt 0.625000 0.750000
-vt 0.625000 0.500000
-vt 0.250000 0.500000
-vt 0.250000 0.750000
-vt 0.625000 0.250000
-vt 0.625000 -0.000000
-vt 0.250000 0.250000
+vt 0.062500 0.140625
+vt 0.062500 0.000000
+vt 0.093750 0.000000
+vt 0.093750 0.140625
+vt 0.140625 0.234375
+vt 0.140625 0.203125
+vt 0.156250 0.203125
+vt 0.156250 0.234375
+vt 0.093750 0.171875
+vt 0.062500 0.171875
+vt 0.218750 0.140625
+vt 0.187500 0.140625
+vt 0.187500 0.000000
+vt 0.218750 0.000000
+vt 0.078125 0.437500
+vt 0.078125 0.468750
+vt 0.031250 0.468750
+vt 0.031250 0.437500
+vt 0.250000 0.140625
 vt 0.250000 0.000000
-vt 0.375000 0.250000
+vt 0.031250 0.140625
+vt 0.031250 0.000000
+vt 0.156250 0.140625
+vt 0.156250 0.000000
+vt 0.187500 0.203125
+vt 0.156250 0.171875
+vt 0.187500 0.171875
+vt 0.125000 0.000000
+vt 0.125000 0.140625
+vt 0.000000 0.140625
+vt 0.000000 0.000000
+vt 0.328125 0.437500
+vt 0.296875 0.437500
+vt 0.296875 0.406250
+vt 0.328125 0.406250
+vt 0.109375 0.437500
+vt 0.109375 0.468750
+vt 0.046875 0.203125
+vt 0.046875 0.234375
+vt 0.031250 0.234375
+vt 0.031250 0.203125
+vt 0.000000 0.203125
+vt 0.000000 0.171875
+vt 0.031250 0.171875
+vt 0.265625 0.468750
+vt 0.265625 0.437500
+vt 0.218750 0.437500
+vt 0.218750 0.468750
+vt 0.218750 0.171875
+vt 0.171875 0.468750
+vt 0.171875 0.437500
+vt 0.078125 0.406250
+vt 0.031250 0.406250
+vt 0.140625 0.468750
+vt 0.140625 0.437500
+vt 0.140625 0.406250
+vt 0.171875 0.406250
+vt 0.109375 0.406250
+vt 0.359375 0.437500
+vt 0.359375 0.406250
+vt 0.390625 0.406250
+vt 0.390625 0.437500
+vt 0.437500 0.406250
+vt 0.437500 0.437500
+vt 0.000000 0.437500
+vt 0.000000 0.406250
+vt 0.250000 0.437500
+vt 0.218750 0.406250
+vt 0.250000 0.406250
+vt 0.359375 0.468750
+vt 0.406250 0.468750
+vt 0.406250 0.437500
+vt 0.109375 0.234375
+vt 0.078125 0.234375
+vt 0.078125 0.203125
+vt 0.109375 0.203125
+vt 0.062500 0.468750
+vt 0.062500 0.562500
+vt 0.031250 0.562500
+vt 0.328125 0.468750
+vt 0.296875 0.468750
+vt 0.062500 0.593750
+vt 0.031250 0.593750
+vt 0.093750 0.468750
+vt 0.093750 0.562500
+vt 0.125000 0.468750
+vt 0.125000 0.562500
+vt 0.000000 0.562500
+vt 0.000000 0.468750
+vt 0.078125 0.171875
+vt 0.046875 0.171875
+vt 0.265625 0.203125
+vt 0.265625 0.171875
+vt 0.296875 0.171875
+vt 0.296875 0.203125
+vt 0.265625 0.234375
+vt 0.281250 0.234375
+vt 0.281250 0.203125
+vt 0.312500 0.171875
+vt 0.312500 0.203125
+vt 0.140625 0.171875
+vt 0.171875 0.234375
+vt 0.171875 0.203125
+vt 0.109375 0.171875
+vt 0.234375 0.203125
+vt 0.203125 0.203125
+vt 0.203125 0.171875
+vt 0.234375 0.171875
+vt 0.234375 0.234375
+vt 0.203125 0.234375
+vt 0.062500 0.375000
+vt 0.062500 0.234375
+vt 0.093750 0.234375
+vt 0.093750 0.375000
+vt 0.031250 0.375000
+vt 0.125000 0.234375
+vt 0.125000 0.375000
+vt 0.000000 0.375000
+vt 0.000000 0.234375
+vt 0.218750 0.375000
+vt 0.187500 0.375000
+vt 0.187500 0.234375
+vt 0.218750 0.234375
+vt 0.250000 0.375000
+vt 0.250000 0.234375
+vt 0.156250 0.375000
 vt 0.250000 1.000000
-vt 1.000000 1.000000
+vt 0.250000 0.750000
+vt 0.500000 0.750000
+vt 0.500000 1.000000
+vt 0.750000 0.750000
 vt 0.750000 1.000000
-vt 0.375000 -0.000000
-vt 0.125000 0.250000
-vt 0.125000 1.000000
-vt 0.125000 0.000000
-vt -0.000000 0.937500
-vt 1.000000 0.937500
-vt 0.937500 0.000000
-vt 0.937500 1.000000
-vt 1.000000 0.062500
-vt 0.000000 0.062500
-vt 0.062500 0.000000
-vt 0.062500 1.000000
-g Player_Cube_Stand
+vt 0.750000 0.734375
+vt 1.000000 0.734375
+vt 1.000000 0.750000
+vt 0.000000 0.750000
+vt 0.000000 0.734375
+vt 0.250000 0.734375
+vt 0.500000 0.734375
 usemtl Stand
 s off
-f 64/1 29/2 30/3 63/4
-f 52/5 50/6 10/7 9/8
-f 17/9 18/10 5/11 6/12
-f 68/3 66/2 6/1 5/4
-f 7/13 8/14 54/7 53/8
-f 67/15 68/16 5/17 18/7
-f 62/4 27/3 29/18 64/8
-f 66/3 65/18 17/8 6/4
-f 9/19 10/20 12/21 11/22
-f 63/7 30/15 28/16 61/17
-f 65/18 67/15 18/7 17/8
-f 61/8 28/18 27/15 62/7
-f 19/23 7/24 36/14 35/25
-f 8/14 7/13 19/26 20/25
-f 23/15 24/18 13/20 14/21
-f 13/8 15/27 16/28 14/7
-f 39/29 38/30 42/10 41/11
-f 29/31 27/4 28/1 30/32
-f 25/28 26/27 43/26 44/25
-f 38/12 25/19 44/13 42/33
-f 25/28 32/7 31/8 26/27
-f 8/26 20/13 33/33 34/29
-f 25/19 38/12 37/11 32/20
-f 31/17 40/7 39/28 26/34
-f 26/34 39/28 41/25 43/23
-f 43/7 41/28 42/34 44/17
-f 53/22 54/21 55/35 56/36
-f 36/14 7/24 53/17 56/7
-f 8/26 34/29 55/11 54/20
-f 34/37 36/33 56/4 55/1
-f 51/13 21/26 22/25 49/14
-f 20/4 3/12 1/19 32/8
-f 40/15 31/16 19/23 35/25
-f 35/29 33/30 37/2 40/3
-f 33/33 20/13 32/5 37/38
-f 3/14 4/24 2/23 1/25
-f 19/12 4/4 3/1 20/9
-f 31/36 2/17 4/7 19/22
-f 32/22 1/7 2/8 31/19
-f 23/5 62/38 64/33 22/13
-f 21/14 63/24 61/39 24/6
-f 61/3 62/2 16/10 15/11
-f 62/38 23/5 14/8 16/4
-f 24/6 61/39 15/17 13/7
-f 50/18 66/3 12/11 10/20
-f 66/40 68/38 11/4 12/1
-f 50/18 49/26 65/29 66/3
-f 51/25 52/15 68/16 67/23
-f 68/16 52/15 9/21 11/35
-f 49/26 22/13 64/33 65/29
-f 51/25 67/23 63/24 21/14
-f 67/33 65/37 64/30 63/29
-f 37/1 22/2 21/3 40/4
-f 38/4 23/3 22/18 37/8
-f 40/7 21/15 24/16 39/17
-f 39/8 24/18 23/15 38/7
-f 36/2 34/3 50/4 52/1
-f 35/15 36/16 52/17 51/7
-f 34/3 33/18 49/8 50/4
-f 33/18 35/15 51/7 49/8
-g Player_Cube_Base
+f 1/1 2/2 3/3 4/4
+f 5/5 6/6 7/7 8/8
+f 9/1 10/4 11/9 12/10
+f 13/11 14/12 12/13 11/14
+f 15/15 16/16 17/17 18/18
+f 19/19 13/11 11/14 10/20
+f 2/2 1/1 20/21 21/22
+f 14/12 22/23 9/24 12/13
+f 8/25 7/7 23/26 24/27
+f 4/4 3/3 25/28 26/29
+f 22/23 19/29 10/28 9/24
+f 26/30 25/31 21/22 20/21
+f 27/32 15/33 28/34 29/35
+f 16/16 15/15 27/36 30/37
+f 31/38 32/39 33/40 34/41
+f 33/42 35/43 36/44 34/41
+f 37/45 38/46 39/47 40/48
+f 2/49 21/27 25/12 3/11
+f 41/50 42/51 43/47 44/48
+f 38/52 41/15 44/18 39/53
+f 41/50 45/54 46/55 42/51
+f 16/51 30/55 47/56 48/57
+f 41/15 38/52 49/58 45/36
+f 46/59 50/60 37/61 42/62
+f 42/62 37/61 40/63 43/64
+f 43/65 40/66 39/53 44/18
+f 18/67 17/47 51/68 52/69
+f 28/34 15/33 18/67 52/69
+f 16/51 48/57 51/68 17/47
+f 48/59 28/70 52/71 51/72
+f 53/73 54/74 55/75 56/76
+f 30/77 57/78 58/79 45/17
+f 50/60 46/59 27/32 29/35
+f 29/80 47/32 49/33 50/81
+f 47/56 30/55 45/36 49/58
+f 57/78 59/82 60/83 58/79
+f 27/84 59/85 57/78 30/77
+f 46/86 60/87 59/85 27/84
+f 45/17 58/79 60/88 46/89
+f 1/90 55/75 31/38 20/91
+f 54/92 4/93 26/94 32/95
+f 26/92 20/96 36/97 35/98
+f 20/91 31/38 34/41 36/44
+f 32/95 26/94 35/99 33/100
+f 6/6 14/101 23/26 7/7
+f 14/102 13/103 24/7 23/8
+f 6/6 56/76 22/104 14/101
+f 53/105 5/106 13/107 19/108
+f 13/107 5/106 8/25 24/27
+f 1/90 22/104 56/76 55/75
+f 53/105 19/108 4/93 54/92
+f 1/109 4/105 19/106 22/110
+f 49/111 55/112 54/113 50/114
+f 38/115 31/40 55/112 49/111
+f 50/114 54/113 32/116 37/117
+f 37/118 32/119 31/40 38/115
+f 28/120 48/121 6/122 5/123
+f 29/124 28/120 5/123 53/125
+f 48/121 47/126 56/8 6/122
+f 47/126 29/117 53/116 56/8
 usemtl Base
-f 47/17 48/1 46/10 45/35
-f 59/1 57/10 58/35 60/17
-f 48/17 60/41 58/42 46/35
-f 46/43 58/10 57/35 45/44
-f 47/1 45/10 57/45 59/46
-f 48/47 47/48 59/17 60/1
+f 61/127 62/128 63/129 64/130
+f 65/129 66/131 67/132 68/130
+f 62/131 68/133 67/134 63/135
+f 63/136 67/137 66/138 64/128
+f 61/129 64/128 66/138 65/139
+f 62/131 61/129 65/139 68/133
diff --git a/3d_armor_stand/models/3d_armor_stand.png b/3d_armor_stand/models/3d_armor_stand.png
new file mode 100644
index 0000000..aeb26de
Binary files /dev/null and b/3d_armor_stand/models/3d_armor_stand.png differ
diff --git a/3d_armor_stand/models/3d_armor_stand_locked.png b/3d_armor_stand/models/3d_armor_stand_locked.png
new file mode 100644
index 0000000..3ee08b4
Binary files /dev/null and b/3d_armor_stand/models/3d_armor_stand_locked.png differ
diff --git a/LICENSE.md b/LICENSE.md
index fd06688..18df885 100644
--- a/LICENSE.md
+++ b/LICENSE.md
@@ -3,7 +3,7 @@
 
 License Source Code: Copyright (C) 2013-2017 Stuart Jones - LGPL v2.1
 
-Armor Textures: Copyright (C) 2013-2017 Ryan Jones - CC-BY-SA 3.0
+Armor Textures: Copyright (C) 2017 davidthecreator - CC-BY-SA 3.0
 
 Special credit to Jordach and MirceaKitsune for providing the default 3d character model.
 
diff --git a/README.md b/README.md
index eef8f2f..42cd0d4 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-Modpack - 3d Armor [0.4.7]
+Modpack - 3d Armor [0.4.8]
 ==========================
 
 ### Table of Contents
diff --git a/hazmat_suit/textures/hazmat_suit_suit_hazmat_preview.png b/hazmat_suit/textures/hazmat_suit_suit_hazmat_preview.png
index 4c0ba18..ae08454 100644
Binary files a/hazmat_suit/textures/hazmat_suit_suit_hazmat_preview.png and b/hazmat_suit/textures/hazmat_suit_suit_hazmat_preview.png differ
diff --git a/hazmat_suit/textures/preview_index.txt b/hazmat_suit/textures/preview_index.txt
new file mode 100644
index 0000000..bc6f4d4
--- /dev/null
+++ b/hazmat_suit/textures/preview_index.txt
@@ -0,0 +1 @@
+hazmat_suit/textures/hazmat_suit_suit_hazmat.png:all
diff --git a/preview_gen.py b/preview_gen.py
new file mode 100755
index 0000000..a18954d
--- /dev/null
+++ b/preview_gen.py
@@ -0,0 +1,81 @@
+#!/usr/bin/python
+
+import os
+import sys
+import Image
+
+try :
+	arg = sys.argv[1]
+except IndexError :
+	print "Usage: preview_gen.py <index_file>"
+	sys.exit(1)
+
+try :
+	index = open(arg, "r")
+except IOError :
+	print "Failed to open index file%s" %s (arg)
+	sys.exit(1)
+
+preview = []
+
+for line in index.readlines() :
+	if ":" in line :
+		line = line.rstrip('\n')
+		preview.append(line.split(':'))
+
+print "Generating preview images..."
+for fn, place in preview :
+	try :
+		imi = Image.open(fn)
+	except IOError :
+		print "Failed to open %s" % (fn)
+		sys.exit(1)
+
+	w, h = imi.size
+	if h != w / 2:
+		print "Incompatible texture size %s" % (fn)
+		sys.exit(1)
+
+	s = w / 64
+	imo = Image.new("RGBA", (16 * s, 32 * s))
+	
+	if place == "all" or place == "head" :
+		face = (40 * s, 8 * s, 48 * s, 16 * s)
+		side_l = (56 * s, 8 * s, 57 * s, 16 * s)
+		side_r = (63 * s, 8 * s, 64 * s, 16 * s)
+		imo.paste(imi.crop(side_l), (4 * s, 0, 5 * s, 8 * s))
+		imo.paste(imi.crop(side_r), (11 * s, 0, 12 * s, 8 * s))
+		imo.paste(imi.crop(face), (4 * s, 0, 12 * s, 8 * s))
+
+	if place == "all" or place == "torso" :
+		arm = (44 * s, 20 * s, 48 * s, 32 * s)
+		body = (20 * s, 20 * s, 28 * s, 32 * s)
+		imo.paste(imi.crop(arm), (0 * s, 8 * s, 4 * s, 20 * s))
+		imo.paste(imi.crop(arm).transpose(Image.FLIP_LEFT_RIGHT),
+				(12 * s, 8 * s, 16 * s, 20 * s))
+		imo.paste(imi.crop(body), (4 * s, 8 * s, 12 * s, 20 * s))
+
+	if place == "all" or place == "legs" :
+		leg = (4 * s, 20 * s, 8 * s, 32 * s)
+		imo.paste(imi.crop(leg), (4 * s, 20 * s, 8 * s, 32 * s))
+		imo.paste(imi.crop(leg).transpose(Image.FLIP_LEFT_RIGHT),
+				(8 * s, 20 * s, 12 * s, 32 * s))
+
+	if place == "all" or place == "feet" :
+		boot = (20 * s, 4 * s, 24 * s, 11 * s)
+		imo.paste(imi.crop(boot), (4 * s, 25 * s, 8 * s, 32 * s))
+		imo.paste(imi.crop(boot).transpose(Image.FLIP_LEFT_RIGHT),
+				(8 * s, 25 * s, 12 * s, 32 * s))
+
+	size = (32 * s, 64 * s)
+	imo = imo.resize(size)
+
+	if place == "shield" :
+		shield = (0, 0, 16 * s, 16 * s)
+		imo.paste(imi.crop(shield), (16 * s, 32 * s, 32 * s, 48 * s))
+
+	outfile = fn.replace(".png", "_preview.png")
+	imo.save(outfile)
+	print outfile
+
+
diff --git a/shields/LICENSE.txt b/shields/LICENSE.txt
index ea64f2c..316bc89 100644
--- a/shields/LICENSE.txt
+++ b/shields/LICENSE.txt
@@ -3,4 +3,6 @@
 
 License Source Code: Copyright (C) 2013-2017 Stuart Jones - LGPL v2.1
 
-License Textures: Copyright (C) 2013-2017 Ryan Jones - CC-BY-SA 3.0
+License Textures: Copyright (C) 2017 davidthecreator - CC-BY-SA 3.0
+
+https://github.com/daviddoesminetest/3d-armors-new-textures
diff --git a/shields/init.lua b/shields/init.lua
index 2234fa4..ccc86a5 100644
--- a/shields/init.lua
+++ b/shields/init.lua
@@ -1,5 +1,9 @@
 local use_moreores = minetest.get_modpath("moreores")
 
+if minetest.global_exists("armor") and armor.elements then
+	table.insert(armor.elements, "shield")
+end
+
 -- Regisiter Shields
 
 minetest.register_tool("shields:shield_admin", {
@@ -119,8 +123,3 @@ for k, v in pairs(ARMOR_MATERIALS) do
 		},
 	})
 end
-
-minetest.after(0, function()
-	table.insert(armor.elements, "shield")
-end)
-
diff --git a/shields/textures/preview_index.txt b/shields/textures/preview_index.txt
new file mode 100644
index 0000000..4408c61
--- /dev/null
+++ b/shields/textures/preview_index.txt
@@ -0,0 +1,11 @@
+shields/textures/shields_shield_wood.png:shield
+shields/textures/shields_shield_enhanced_wood.png:shield
+shields/textures/shields_shield_cactus.png:shield
+shields/textures/shields_shield_enhanced_cactus.png:shield
+shields/textures/shields_shield_steel.png:shield
+shields/textures/shields_shield_bronze.png:shield
+shields/textures/shields_shield_gold.png:shield
+shields/textures/shields_shield_diamond.png:shield
+shields/textures/shields_shield_mithril.png:shield
+shields/textures/shields_shield_crystal.png:shield
+shields/textures/shields_shield_admin.png:shield
diff --git a/shields/textures/shields_inv_shield_admin.png b/shields/textures/shields_inv_shield_admin.png
index ae5ab7d..434adae 100644
Binary files a/shields/textures/shields_inv_shield_admin.png and b/shields/textures/shields_inv_shield_admin.png differ
diff --git a/shields/textures/shields_inv_shield_bronze.png b/shields/textures/shields_inv_shield_bronze.png
index 67bac0f..dab60e3 100644
Binary files a/shields/textures/shields_inv_shield_bronze.png and b/shields/textures/shields_inv_shield_bronze.png differ
diff --git a/shields/textures/shields_inv_shield_cactus.png b/shields/textures/shields_inv_shield_cactus.png
index 00d1d58..37d0ec6 100644
Binary files a/shields/textures/shields_inv_shield_cactus.png and b/shields/textures/shields_inv_shield_cactus.png differ
diff --git a/shields/textures/shields_inv_shield_crystal.png b/shields/textures/shields_inv_shield_crystal.png
index 1ec1981..f32e2dd 100644
Binary files a/shields/textures/shields_inv_shield_crystal.png and b/shields/textures/shields_inv_shield_crystal.png differ
diff --git a/shields/textures/shields_inv_shield_diamond.png b/shields/textures/shields_inv_shield_diamond.png
index ea7c567..bfcd1fe 100644
Binary files a/shields/textures/shields_inv_shield_diamond.png and b/shields/textures/shields_inv_shield_diamond.png differ
diff --git a/shields/textures/shields_inv_shield_enhanced_cactus.png b/shields/textures/shields_inv_shield_enhanced_cactus.png
index 39436cd..923e42d 100644
Binary files a/shields/textures/shields_inv_shield_enhanced_cactus.png and b/shields/textures/shields_inv_shield_enhanced_cactus.png differ
diff --git a/shields/textures/shields_inv_shield_enhanced_wood.png b/shields/textures/shields_inv_shield_enhanced_wood.png
index 058e042..b4d4256 100644
Binary files a/shields/textures/shields_inv_shield_enhanced_wood.png and b/shields/textures/shields_inv_shield_enhanced_wood.png differ
diff --git a/shields/textures/shields_inv_shield_gold.png b/shields/textures/shields_inv_shield_gold.png
index 8995834..cf11e2c 100644
Binary files a/shields/textures/shields_inv_shield_gold.png and b/shields/textures/shields_inv_shield_gold.png differ
diff --git a/shields/textures/shields_inv_shield_mithril.png b/shields/textures/shields_inv_shield_mithril.png
index d32665a..e377428 100644
Binary files a/shields/textures/shields_inv_shield_mithril.png and b/shields/textures/shields_inv_shield_mithril.png differ
diff --git a/shields/textures/shields_inv_shield_steel.png b/shields/textures/shields_inv_shield_steel.png
index 178b507..1b9bb00 100644
Binary files a/shields/textures/shields_inv_shield_steel.png and b/shields/textures/shields_inv_shield_steel.png differ
diff --git a/shields/textures/shields_inv_shield_wood.png b/shields/textures/shields_inv_shield_wood.png
index dcbe933..6876414 100644
Binary files a/shields/textures/shields_inv_shield_wood.png and b/shields/textures/shields_inv_shield_wood.png differ
diff --git a/shields/textures/shields_shield_admin.png b/shields/textures/shields_shield_admin.png
index 430c3e3..61e1ae0 100644
Binary files a/shields/textures/shields_shield_admin.png and b/shields/textures/shields_shield_admin.png differ
diff --git a/shields/textures/shields_shield_admin_preview.png b/shields/textures/shields_shield_admin_preview.png
index 762c2d2..b61896f 100644
Binary files a/shields/textures/shields_shield_admin_preview.png and b/shields/textures/shields_shield_admin_preview.png differ
diff --git a/shields/textures/shields_shield_bronze.png b/shields/textures/shields_shield_bronze.png
index 89d6799..d2cb2e4 100644
Binary files a/shields/textures/shields_shield_bronze.png and b/shields/textures/shields_shield_bronze.png differ
diff --git a/shields/textures/shields_shield_bronze_preview.png b/shields/textures/shields_shield_bronze_preview.png
index 5f9ca7b..1dd4747 100644
Binary files a/shields/textures/shields_shield_bronze_preview.png and b/shields/textures/shields_shield_bronze_preview.png differ
diff --git a/shields/textures/shields_shield_cactus.png b/shields/textures/shields_shield_cactus.png
index 8679aa5..36341cb 100644
Binary files a/shields/textures/shields_shield_cactus.png and b/shields/textures/shields_shield_cactus.png differ
diff --git a/shields/textures/shields_shield_cactus_preview.png b/shields/textures/shields_shield_cactus_preview.png
index ae83661..385273b 100644
Binary files a/shields/textures/shields_shield_cactus_preview.png and b/shields/textures/shields_shield_cactus_preview.png differ
diff --git a/shields/textures/shields_shield_crystal.png b/shields/textures/shields_shield_crystal.png
index 888bc5a..db53560 100644
Binary files a/shields/textures/shields_shield_crystal.png and b/shields/textures/shields_shield_crystal.png differ
diff --git a/shields/textures/shields_shield_crystal_preview.png b/shields/textures/shields_shield_crystal_preview.png
index 299776f..e3b6823 100644
Binary files a/shields/textures/shields_shield_crystal_preview.png and b/shields/textures/shields_shield_crystal_preview.png differ
diff --git a/shields/textures/shields_shield_diamond.png b/shields/textures/shields_shield_diamond.png
index e4938f9..af490ce 100644
Binary files a/shields/textures/shields_shield_diamond.png and b/shields/textures/shields_shield_diamond.png differ
diff --git a/shields/textures/shields_shield_diamond_preview.png b/shields/textures/shields_shield_diamond_preview.png
index afd004e..ebe82e4 100644
Binary files a/shields/textures/shields_shield_diamond_preview.png and b/shields/textures/shields_shield_diamond_preview.png differ
diff --git a/shields/textures/shields_shield_enhanced_cactus.png b/shields/textures/shields_shield_enhanced_cactus.png
index 50d7673..a5bea43 100644
Binary files a/shields/textures/shields_shield_enhanced_cactus.png and b/shields/textures/shields_shield_enhanced_cactus.png differ
diff --git a/shields/textures/shields_shield_enhanced_cactus_preview.png b/shields/textures/shields_shield_enhanced_cactus_preview.png
index b15df06..22413f6 100644
Binary files a/shields/textures/shields_shield_enhanced_cactus_preview.png and b/shields/textures/shields_shield_enhanced_cactus_preview.png differ
diff --git a/shields/textures/shields_shield_enhanced_wood.png b/shields/textures/shields_shield_enhanced_wood.png
index 14bd057..ebeacfe 100644
Binary files a/shields/textures/shields_shield_enhanced_wood.png and b/shields/textures/shields_shield_enhanced_wood.png differ
diff --git a/shields/textures/shields_shield_enhanced_wood_preview.png b/shields/textures/shields_shield_enhanced_wood_preview.png
index 9298383..95fed1d 100644
Binary files a/shields/textures/shields_shield_enhanced_wood_preview.png and b/shields/textures/shields_shield_enhanced_wood_preview.png differ
diff --git a/shields/textures/shields_shield_gold.png b/shields/textures/shields_shield_gold.png
index b198d18..d8d4ae3 100644
Binary files a/shields/textures/shields_shield_gold.png and b/shields/textures/shields_shield_gold.png differ
diff --git a/shields/textures/shields_shield_gold_preview.png b/shields/textures/shields_shield_gold_preview.png
index 66d8f2e..4cdac6e 100644
Binary files a/shields/textures/shields_shield_gold_preview.png and b/shields/textures/shields_shield_gold_preview.png differ
diff --git a/shields/textures/shields_shield_mithril.png b/shields/textures/shields_shield_mithril.png
index 2fb622e..76b9312 100644
Binary files a/shields/textures/shields_shield_mithril.png and b/shields/textures/shields_shield_mithril.png differ
diff --git a/shields/textures/shields_shield_mithril_preview.png b/shields/textures/shields_shield_mithril_preview.png
index 45306e3..640de99 100644
Binary files a/shields/textures/shields_shield_mithril_preview.png and b/shields/textures/shields_shield_mithril_preview.png differ
diff --git a/shields/textures/shields_shield_steel.png b/shields/textures/shields_shield_steel.png
index cfe58a1..8c77ee4 100644
Binary files a/shields/textures/shields_shield_steel.png and b/shields/textures/shields_shield_steel.png differ
diff --git a/shields/textures/shields_shield_steel_preview.png b/shields/textures/shields_shield_steel_preview.png
index 0a3d36a..c795a95 100644
Binary files a/shields/textures/shields_shield_steel_preview.png and b/shields/textures/shields_shield_steel_preview.png differ
diff --git a/shields/textures/shields_shield_wood.png b/shields/textures/shields_shield_wood.png
index baf092d..695d12b 100644
Binary files a/shields/textures/shields_shield_wood.png and b/shields/textures/shields_shield_wood.png differ
diff --git a/shields/textures/shields_shield_wood_preview.png b/shields/textures/shields_shield_wood_preview.png
index b446e4e..d7695d3 100644
Binary files a/shields/textures/shields_shield_wood_preview.png and b/shields/textures/shields_shield_wood_preview.png differ
diff --git a/technic_armor/textures/preview_index.txt b/technic_armor/textures/preview_index.txt
new file mode 100644
index 0000000..e39a0b6
--- /dev/null
+++ b/technic_armor/textures/preview_index.txt
@@ -0,0 +1,41 @@
+technic_armor/textures/technic_armor_helmet_brass.png:head
+technic_armor/textures/technic_armor_chestplate_brass.png:torso
+technic_armor/textures/technic_armor_leggings_brass.png:legs
+technic_armor/textures/technic_armor_boots_brass.png:feet
+technic_armor/textures/technic_armor_shield_brass.png:shield
+
+technic_armor/textures/technic_armor_helmet_cast.png:head
+technic_armor/textures/technic_armor_chestplate_cast.png:torso
+technic_armor/textures/technic_armor_leggings_cast.png:legs
+technic_armor/textures/technic_armor_boots_cast.png:feet
+technic_armor/textures/technic_armor_shield_cast.png:shield
+
+technic_armor/textures/technic_armor_helmet_stainless.png:head
+technic_armor/textures/technic_armor_chestplate_stainless.png:torso
+technic_armor/textures/technic_armor_leggings_stainless.png:legs
+technic_armor/textures/technic_armor_boots_stainless.png:feet
+technic_armor/textures/technic_armor_shield_stainless.png:shield
+
+technic_armor/textures/technic_armor_helmet_tin.png:head
+technic_armor/textures/technic_armor_chestplate_tin.png:torso
+technic_armor/textures/technic_armor_leggings_tin.png:legs
+technic_armor/textures/technic_armor_boots_tin.png:feet
+technic_armor/textures/technic_armor_shield_tin.png:shield
+
+technic_armor/textures/technic_armor_helmet_lead.png:head
+technic_armor/textures/technic_armor_chestplate_lead.png:torso
+technic_armor/textures/technic_armor_leggings_lead.png:legs
+technic_armor/textures/technic_armor_boots_lead.png:feet
+technic_armor/textures/technic_armor_shield_lead.png:shield
+
+technic_armor/textures/technic_armor_helmet_carbon.png:head
+technic_armor/textures/technic_armor_chestplate_carbon.png:torso
+technic_armor/textures/technic_armor_leggings_carbon.png:legs
+technic_armor/textures/technic_armor_boots_carbon.png:feet
+technic_armor/textures/technic_armor_shield_carbon.png:shield
+
+technic_armor/textures/technic_armor_helmet_silver.png:head
+technic_armor/textures/technic_armor_chestplate_silver.png:torso
+technic_armor/textures/technic_armor_leggings_silver.png:legs
+technic_armor/textures/technic_armor_boots_silver.png:feet
+technic_armor/textures/technic_armor_shield_silver.png:shield
diff --git a/technic_armor/textures/technic_armor_boots_brass_preview.png b/technic_armor/textures/technic_armor_boots_brass_preview.png
index b054d4f..f1feb76 100644
Binary files a/technic_armor/textures/technic_armor_boots_brass_preview.png and b/technic_armor/textures/technic_armor_boots_brass_preview.png differ
diff --git a/technic_armor/textures/technic_armor_boots_carbon_preview.png b/technic_armor/textures/technic_armor_boots_carbon_preview.png
index 8d7e480..360dd62 100644
Binary files a/technic_armor/textures/technic_armor_boots_carbon_preview.png and b/technic_armor/textures/technic_armor_boots_carbon_preview.png differ
diff --git a/technic_armor/textures/technic_armor_boots_cast_preview.png b/technic_armor/textures/technic_armor_boots_cast_preview.png
index 22699f2..77ff481 100644
Binary files a/technic_armor/textures/technic_armor_boots_cast_preview.png and b/technic_armor/textures/technic_armor_boots_cast_preview.png differ
diff --git a/technic_armor/textures/technic_armor_boots_lead_preview.png b/technic_armor/textures/technic_armor_boots_lead_preview.png
index a6e7690..7fab62b 100644
Binary files a/technic_armor/textures/technic_armor_boots_lead_preview.png and b/technic_armor/textures/technic_armor_boots_lead_preview.png differ
diff --git a/technic_armor/textures/technic_armor_boots_silver_preview.png b/technic_armor/textures/technic_armor_boots_silver_preview.png
index 01e0caf..616b1d3 100644
Binary files a/technic_armor/textures/technic_armor_boots_silver_preview.png and b/technic_armor/textures/technic_armor_boots_silver_preview.png differ
diff --git a/technic_armor/textures/technic_armor_boots_stainless_preview.png b/technic_armor/textures/technic_armor_boots_stainless_preview.png
index 53cc9e7..3e49437 100644
Binary files a/technic_armor/textures/technic_armor_boots_stainless_preview.png and b/technic_armor/textures/technic_armor_boots_stainless_preview.png differ
diff --git a/technic_armor/textures/technic_armor_boots_tin_preview.png b/technic_armor/textures/technic_armor_boots_tin_preview.png
index b1085af..8b08d6f 100644
Binary files a/technic_armor/textures/technic_armor_boots_tin_preview.png and b/technic_armor/textures/technic_armor_boots_tin_preview.png differ
diff --git a/technic_armor/textures/technic_armor_chestplate_brass_preview.png b/technic_armor/textures/technic_armor_chestplate_brass_preview.png
index 94c2a47..513fefa 100644
Binary files a/technic_armor/textures/technic_armor_chestplate_brass_preview.png and b/technic_armor/textures/technic_armor_chestplate_brass_preview.png differ
diff --git a/technic_armor/textures/technic_armor_chestplate_carbon_preview.png b/technic_armor/textures/technic_armor_chestplate_carbon_preview.png
index da747e5..f37eb8b 100644
Binary files a/technic_armor/textures/technic_armor_chestplate_carbon_preview.png and b/technic_armor/textures/technic_armor_chestplate_carbon_preview.png differ
diff --git a/technic_armor/textures/technic_armor_chestplate_cast_preview.png b/technic_armor/textures/technic_armor_chestplate_cast_preview.png
index bfbd4ec..0c9fa30 100644
Binary files a/technic_armor/textures/technic_armor_chestplate_cast_preview.png and b/technic_armor/textures/technic_armor_chestplate_cast_preview.png differ
diff --git a/technic_armor/textures/technic_armor_chestplate_lead_preview.png b/technic_armor/textures/technic_armor_chestplate_lead_preview.png
index 8429cbc..e13ddc2 100644
Binary files a/technic_armor/textures/technic_armor_chestplate_lead_preview.png and b/technic_armor/textures/technic_armor_chestplate_lead_preview.png differ
diff --git a/technic_armor/textures/technic_armor_chestplate_silver_preview.png b/technic_armor/textures/technic_armor_chestplate_silver_preview.png
index abf63b6..ecb5cb0 100644
Binary files a/technic_armor/textures/technic_armor_chestplate_silver_preview.png and b/technic_armor/textures/technic_armor_chestplate_silver_preview.png differ
diff --git a/technic_armor/textures/technic_armor_chestplate_stainless_preview.png b/technic_armor/textures/technic_armor_chestplate_stainless_preview.png
index 1266e6e..b478457 100644
Binary files a/technic_armor/textures/technic_armor_chestplate_stainless_preview.png and b/technic_armor/textures/technic_armor_chestplate_stainless_preview.png differ
diff --git a/technic_armor/textures/technic_armor_chestplate_tin_preview.png b/technic_armor/textures/technic_armor_chestplate_tin_preview.png
index 362a4ad..d67ca9d 100644
Binary files a/technic_armor/textures/technic_armor_chestplate_tin_preview.png and b/technic_armor/textures/technic_armor_chestplate_tin_preview.png differ
diff --git a/technic_armor/textures/technic_armor_helmet_brass_preview.png b/technic_armor/textures/technic_armor_helmet_brass_preview.png
index cd625f4..19f0704 100644
Binary files a/technic_armor/textures/technic_armor_helmet_brass_preview.png and b/technic_armor/textures/technic_armor_helmet_brass_preview.png differ
diff --git a/technic_armor/textures/technic_armor_helmet_carbon_preview.png b/technic_armor/textures/technic_armor_helmet_carbon_preview.png
index 02a67b8..ee56f04 100644
Binary files a/technic_armor/textures/technic_armor_helmet_carbon_preview.png and b/technic_armor/textures/technic_armor_helmet_carbon_preview.png differ
diff --git a/technic_armor/textures/technic_armor_helmet_cast_preview.png b/technic_armor/textures/technic_armor_helmet_cast_preview.png
index c8d30c5..ab87fc9 100644
Binary files a/technic_armor/textures/technic_armor_helmet_cast_preview.png and b/technic_armor/textures/technic_armor_helmet_cast_preview.png differ
diff --git a/technic_armor/textures/technic_armor_helmet_lead_preview.png b/technic_armor/textures/technic_armor_helmet_lead_preview.png
index ebc6454..88ec995 100644
Binary files a/technic_armor/textures/technic_armor_helmet_lead_preview.png and b/technic_armor/textures/technic_armor_helmet_lead_preview.png differ
diff --git a/technic_armor/textures/technic_armor_helmet_silver_preview.png b/technic_armor/textures/technic_armor_helmet_silver_preview.png
index a1d33d7..a40a3cd 100644
Binary files a/technic_armor/textures/technic_armor_helmet_silver_preview.png and b/technic_armor/textures/technic_armor_helmet_silver_preview.png differ
diff --git a/technic_armor/textures/technic_armor_helmet_stainless_preview.png b/technic_armor/textures/technic_armor_helmet_stainless_preview.png
index d08cc69..b4b5a74 100644
Binary files a/technic_armor/textures/technic_armor_helmet_stainless_preview.png and b/technic_armor/textures/technic_armor_helmet_stainless_preview.png differ
diff --git a/technic_armor/textures/technic_armor_helmet_tin_preview.png b/technic_armor/textures/technic_armor_helmet_tin_preview.png
index efb95be..9429071 100644
Binary files a/technic_armor/textures/technic_armor_helmet_tin_preview.png and b/technic_armor/textures/technic_armor_helmet_tin_preview.png differ
diff --git a/technic_armor/textures/technic_armor_leggings_brass_preview.png b/technic_armor/textures/technic_armor_leggings_brass_preview.png
index 05048e3..71f4c5e 100644
Binary files a/technic_armor/textures/technic_armor_leggings_brass_preview.png and b/technic_armor/textures/technic_armor_leggings_brass_preview.png differ
diff --git a/technic_armor/textures/technic_armor_leggings_carbon_preview.png b/technic_armor/textures/technic_armor_leggings_carbon_preview.png
index 9fb6391..9e059f2 100644
Binary files a/technic_armor/textures/technic_armor_leggings_carbon_preview.png and b/technic_armor/textures/technic_armor_leggings_carbon_preview.png differ
diff --git a/technic_armor/textures/technic_armor_leggings_cast_preview.png b/technic_armor/textures/technic_armor_leggings_cast_preview.png
index 67dd933..8519300 100644
Binary files a/technic_armor/textures/technic_armor_leggings_cast_preview.png and b/technic_armor/textures/technic_armor_leggings_cast_preview.png differ
diff --git a/technic_armor/textures/technic_armor_leggings_lead_preview.png b/technic_armor/textures/technic_armor_leggings_lead_preview.png
index 2777c6d..3543c92 100644
Binary files a/technic_armor/textures/technic_armor_leggings_lead_preview.png and b/technic_armor/textures/technic_armor_leggings_lead_preview.png differ
diff --git a/technic_armor/textures/technic_armor_leggings_silver_preview.png b/technic_armor/textures/technic_armor_leggings_silver_preview.png
index 0f6ecd2..ee100cd 100644
Binary files a/technic_armor/textures/technic_armor_leggings_silver_preview.png and b/technic_armor/textures/technic_armor_leggings_silver_preview.png differ
diff --git a/technic_armor/textures/technic_armor_leggings_stainless_preview.png b/technic_armor/textures/technic_armor_leggings_stainless_preview.png
index 6504d9d..4e73f8e 100644
Binary files a/technic_armor/textures/technic_armor_leggings_stainless_preview.png and b/technic_armor/textures/technic_armor_leggings_stainless_preview.png differ
diff --git a/technic_armor/textures/technic_armor_leggings_tin_preview.png b/technic_armor/textures/technic_armor_leggings_tin_preview.png
index a6d105f..80f41bd 100644
Binary files a/technic_armor/textures/technic_armor_leggings_tin_preview.png and b/technic_armor/textures/technic_armor_leggings_tin_preview.png differ
diff --git a/technic_armor/textures/technic_armor_shield_brass_preview.png b/technic_armor/textures/technic_armor_shield_brass_preview.png
index 83d65c4..450136b 100644
Binary files a/technic_armor/textures/technic_armor_shield_brass_preview.png and b/technic_armor/textures/technic_armor_shield_brass_preview.png differ
diff --git a/technic_armor/textures/technic_armor_shield_carbon_preview.png b/technic_armor/textures/technic_armor_shield_carbon_preview.png
index 2b275cf..4a19262 100644
Binary files a/technic_armor/textures/technic_armor_shield_carbon_preview.png and b/technic_armor/textures/technic_armor_shield_carbon_preview.png differ
diff --git a/technic_armor/textures/technic_armor_shield_cast_preview.png b/technic_armor/textures/technic_armor_shield_cast_preview.png
index 2d0aea6..a6444ed 100644
Binary files a/technic_armor/textures/technic_armor_shield_cast_preview.png and b/technic_armor/textures/technic_armor_shield_cast_preview.png differ
diff --git a/technic_armor/textures/technic_armor_shield_lead_preview.png b/technic_armor/textures/technic_armor_shield_lead_preview.png
index 8f29f6b..a8c71cc 100644
Binary files a/technic_armor/textures/technic_armor_shield_lead_preview.png and b/technic_armor/textures/technic_armor_shield_lead_preview.png differ
diff --git a/technic_armor/textures/technic_armor_shield_silver_preview.png b/technic_armor/textures/technic_armor_shield_silver_preview.png
index 1b04681..8830006 100644
Binary files a/technic_armor/textures/technic_armor_shield_silver_preview.png and b/technic_armor/textures/technic_armor_shield_silver_preview.png differ
diff --git a/technic_armor/textures/technic_armor_shield_stainless_preview.png b/technic_armor/textures/technic_armor_shield_stainless_preview.png
index 8bdcbb4..cd1e5b9 100644
Binary files a/technic_armor/textures/technic_armor_shield_stainless_preview.png and b/technic_armor/textures/technic_armor_shield_stainless_preview.png differ
diff --git a/technic_armor/textures/technic_armor_shield_tin_preview.png b/technic_armor/textures/technic_armor_shield_tin_preview.png
index 25fa7a0..06a181d 100644
Binary files a/technic_armor/textures/technic_armor_shield_tin_preview.png and b/technic_armor/textures/technic_armor_shield_tin_preview.png differ

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/minetest-mod-3d-armor.git



More information about the Pkg-games-commits mailing list