[minetest-mod-3d-armor] 05/08: New upstream version 0.4.10

Julien Puydt julien.puydt at laposte.net
Tue Oct 24 16:05:51 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 d6f821259c11bd51af02eb0a31ff334926401d36
Author: Julien Puydt <julien.puydt at laposte.net>
Date:   Tue Oct 24 18:02:49 2017 +0200

    New upstream version 0.4.10
---
 .gitignore                                         |   3 +
 3d_armor/api.lua                                   |  55 +--
 3d_armor/armor.lua                                 |   6 +-
 3d_armor/init.lua                                  |  41 ++-
 3d_armor/intllib.lua                               |  45 +++
 3d_armor/locale/fr.po                              | 384 +++++++++++++++++++++
 3d_armor/locale/it.po                              | 384 +++++++++++++++++++++
 3d_armor/locale/template.pot                       | 383 ++++++++++++++++++++
 3d_armor/textures/3d_armor_boots_admin.png         | Bin 2980 -> 389 bytes
 3d_armor/textures/3d_armor_boots_admin_preview.png | Bin 242 -> 356 bytes
 3d_armor/textures/3d_armor_boots_bronze.png        | Bin 2958 -> 368 bytes
 .../textures/3d_armor_boots_bronze_preview.png     | Bin 208 -> 336 bytes
 3d_armor/textures/3d_armor_boots_cactus.png        | Bin 3120 -> 405 bytes
 .../textures/3d_armor_boots_cactus_preview.png     | Bin 264 -> 355 bytes
 3d_armor/textures/3d_armor_boots_crystal.png       | Bin 2971 -> 389 bytes
 .../textures/3d_armor_boots_crystal_preview.png    | Bin 248 -> 356 bytes
 3d_armor/textures/3d_armor_boots_diamond.png       | Bin 2969 -> 389 bytes
 .../textures/3d_armor_boots_diamond_preview.png    | Bin 242 -> 356 bytes
 3d_armor/textures/3d_armor_boots_gold.png          | Bin 2946 -> 368 bytes
 3d_armor/textures/3d_armor_boots_gold_preview.png  | Bin 206 -> 336 bytes
 3d_armor/textures/3d_armor_boots_mithril.png       | Bin 2958 -> 368 bytes
 .../textures/3d_armor_boots_mithril_preview.png    | Bin 210 -> 336 bytes
 3d_armor/textures/3d_armor_boots_steel.png         | Bin 2943 -> 391 bytes
 3d_armor/textures/3d_armor_boots_steel_preview.png | Bin 196 -> 347 bytes
 3d_armor/textures/3d_armor_boots_wood.png          | Bin 2997 -> 389 bytes
 3d_armor/textures/3d_armor_boots_wood_preview.png  | Bin 282 -> 361 bytes
 3d_armor/textures/3d_armor_chestplate_admin.png    | Bin 3158 -> 508 bytes
 .../textures/3d_armor_chestplate_admin_preview.png | Bin 314 -> 431 bytes
 3d_armor/textures/3d_armor_chestplate_bronze.png   | Bin 3077 -> 440 bytes
 .../3d_armor_chestplate_bronze_preview.png         | Bin 280 -> 382 bytes
 3d_armor/textures/3d_armor_chestplate_cactus.png   | Bin 3476 -> 520 bytes
 .../3d_armor_chestplate_cactus_preview.png         | Bin 456 -> 414 bytes
 3d_armor/textures/3d_armor_chestplate_crystal.png  | Bin 3147 -> 508 bytes
 .../3d_armor_chestplate_crystal_preview.png        | Bin 318 -> 431 bytes
 3d_armor/textures/3d_armor_chestplate_diamond.png  | Bin 3152 -> 508 bytes
 .../3d_armor_chestplate_diamond_preview.png        | Bin 300 -> 431 bytes
 3d_armor/textures/3d_armor_chestplate_gold.png     | Bin 3075 -> 440 bytes
 .../textures/3d_armor_chestplate_gold_preview.png  | Bin 276 -> 382 bytes
 3d_armor/textures/3d_armor_chestplate_mithril.png  | Bin 3077 -> 440 bytes
 .../3d_armor_chestplate_mithril_preview.png        | Bin 284 -> 382 bytes
 3d_armor/textures/3d_armor_chestplate_steel.png    | Bin 3059 -> 493 bytes
 .../textures/3d_armor_chestplate_steel_preview.png | Bin 281 -> 399 bytes
 3d_armor/textures/3d_armor_chestplate_wood.png     | Bin 3146 -> 474 bytes
 .../textures/3d_armor_chestplate_wood_preview.png  | Bin 362 -> 407 bytes
 3d_armor/textures/3d_armor_helmet_admin.png        | Bin 3035 -> 431 bytes
 .../textures/3d_armor_helmet_admin_preview.png     | Bin 192 -> 343 bytes
 3d_armor/textures/3d_armor_helmet_bronze.png       | Bin 3094 -> 426 bytes
 .../textures/3d_armor_helmet_bronze_preview.png    | Bin 225 -> 343 bytes
 3d_armor/textures/3d_armor_helmet_cactus.png       | Bin 3310 -> 469 bytes
 .../textures/3d_armor_helmet_cactus_preview.png    | Bin 253 -> 352 bytes
 3d_armor/textures/3d_armor_helmet_crystal.png      | Bin 3020 -> 431 bytes
 .../textures/3d_armor_helmet_crystal_preview.png   | Bin 184 -> 343 bytes
 3d_armor/textures/3d_armor_helmet_diamond.png      | Bin 3031 -> 431 bytes
 .../textures/3d_armor_helmet_diamond_preview.png   | Bin 185 -> 343 bytes
 3d_armor/textures/3d_armor_helmet_gold.png         | Bin 3071 -> 426 bytes
 3d_armor/textures/3d_armor_helmet_gold_preview.png | Bin 215 -> 343 bytes
 3d_armor/textures/3d_armor_helmet_mithril.png      | Bin 3091 -> 426 bytes
 .../textures/3d_armor_helmet_mithril_preview.png   | Bin 226 -> 343 bytes
 3d_armor/textures/3d_armor_helmet_steel.png        | Bin 3064 -> 478 bytes
 .../textures/3d_armor_helmet_steel_preview.png     | Bin 202 -> 350 bytes
 3d_armor/textures/3d_armor_helmet_wood.png         | Bin 3203 -> 473 bytes
 3d_armor/textures/3d_armor_helmet_wood_preview.png | Bin 186 -> 337 bytes
 3d_armor/textures/3d_armor_inv_boots_admin.png     | Bin 2939 -> 379 bytes
 3d_armor/textures/3d_armor_inv_boots_bronze.png    | Bin 2933 -> 379 bytes
 3d_armor/textures/3d_armor_inv_boots_cactus.png    | Bin 3065 -> 407 bytes
 3d_armor/textures/3d_armor_inv_boots_crystal.png   | Bin 2932 -> 379 bytes
 3d_armor/textures/3d_armor_inv_boots_diamond.png   | Bin 2932 -> 379 bytes
 3d_armor/textures/3d_armor_inv_boots_gold.png      | Bin 2930 -> 379 bytes
 3d_armor/textures/3d_armor_inv_boots_mithril.png   | Bin 2933 -> 379 bytes
 3d_armor/textures/3d_armor_inv_boots_steel.png     | Bin 2916 -> 382 bytes
 3d_armor/textures/3d_armor_inv_boots_wood.png      | Bin 3037 -> 414 bytes
 .../textures/3d_armor_inv_chestplate_admin.png     | Bin 2984 -> 398 bytes
 .../textures/3d_armor_inv_chestplate_bronze.png    | Bin 2996 -> 402 bytes
 .../textures/3d_armor_inv_chestplate_cactus.png    | Bin 3155 -> 430 bytes
 .../textures/3d_armor_inv_chestplate_crystal.png   | Bin 2969 -> 398 bytes
 .../textures/3d_armor_inv_chestplate_diamond.png   | Bin 2968 -> 398 bytes
 3d_armor/textures/3d_armor_inv_chestplate_gold.png | Bin 2976 -> 402 bytes
 .../textures/3d_armor_inv_chestplate_mithril.png   | Bin 2994 -> 402 bytes
 .../textures/3d_armor_inv_chestplate_steel.png     | Bin 2986 -> 412 bytes
 3d_armor/textures/3d_armor_inv_chestplate_wood.png | Bin 3067 -> 420 bytes
 3d_armor/textures/3d_armor_inv_helmet_admin.png    | Bin 2910 -> 366 bytes
 3d_armor/textures/3d_armor_inv_helmet_bronze.png   | Bin 2907 -> 365 bytes
 3d_armor/textures/3d_armor_inv_helmet_cactus.png   | Bin 2995 -> 381 bytes
 3d_armor/textures/3d_armor_inv_helmet_crystal.png  | Bin 2897 -> 366 bytes
 3d_armor/textures/3d_armor_inv_helmet_diamond.png  | Bin 2897 -> 366 bytes
 3d_armor/textures/3d_armor_inv_helmet_gold.png     | Bin 2913 -> 365 bytes
 3d_armor/textures/3d_armor_inv_helmet_mithril.png  | Bin 2911 -> 365 bytes
 3d_armor/textures/3d_armor_inv_helmet_steel.png    | Bin 2902 -> 359 bytes
 3d_armor/textures/3d_armor_inv_helmet_wood.png     | Bin 2925 -> 364 bytes
 3d_armor/textures/3d_armor_inv_leggings_admin.png  | Bin 2947 -> 379 bytes
 3d_armor/textures/3d_armor_inv_leggings_bronze.png | Bin 2924 -> 372 bytes
 3d_armor/textures/3d_armor_inv_leggings_cactus.png | Bin 3038 -> 413 bytes
 .../textures/3d_armor_inv_leggings_crystal.png     | Bin 2943 -> 379 bytes
 .../textures/3d_armor_inv_leggings_diamond.png     | Bin 2953 -> 379 bytes
 3d_armor/textures/3d_armor_inv_leggings_gold.png   | Bin 2920 -> 372 bytes
 .../textures/3d_armor_inv_leggings_mithril.png     | Bin 2923 -> 372 bytes
 3d_armor/textures/3d_armor_inv_leggings_steel.png  | Bin 2911 -> 378 bytes
 3d_armor/textures/3d_armor_inv_leggings_wood.png   | Bin 3032 -> 414 bytes
 3d_armor/textures/3d_armor_leggings_admin.png      | Bin 3021 -> 406 bytes
 .../textures/3d_armor_leggings_admin_preview.png   | Bin 187 -> 363 bytes
 3d_armor/textures/3d_armor_leggings_bronze.png     | Bin 2998 -> 381 bytes
 .../textures/3d_armor_leggings_bronze_preview.png  | Bin 211 -> 339 bytes
 3d_armor/textures/3d_armor_leggings_cactus.png     | Bin 3233 -> 449 bytes
 .../textures/3d_armor_leggings_cactus_preview.png  | Bin 317 -> 364 bytes
 3d_armor/textures/3d_armor_leggings_crystal.png    | Bin 3018 -> 406 bytes
 .../textures/3d_armor_leggings_crystal_preview.png | Bin 184 -> 363 bytes
 3d_armor/textures/3d_armor_leggings_diamond.png    | Bin 3019 -> 406 bytes
 .../textures/3d_armor_leggings_diamond_preview.png | Bin 183 -> 363 bytes
 3d_armor/textures/3d_armor_leggings_gold.png       | Bin 2992 -> 381 bytes
 .../textures/3d_armor_leggings_gold_preview.png    | Bin 211 -> 339 bytes
 3d_armor/textures/3d_armor_leggings_mithril.png    | Bin 2998 -> 381 bytes
 .../textures/3d_armor_leggings_mithril_preview.png | Bin 213 -> 339 bytes
 3d_armor/textures/3d_armor_leggings_steel.png      | Bin 2983 -> 430 bytes
 .../textures/3d_armor_leggings_steel_preview.png   | Bin 200 -> 348 bytes
 3d_armor/textures/3d_armor_leggings_wood.png       | Bin 3081 -> 426 bytes
 .../textures/3d_armor_leggings_wood_preview.png    | Bin 262 -> 372 bytes
 3d_armor/textures/3d_armor_trans.png               | Bin 75 -> 274 bytes
 3d_armor/textures/3d_armor_ui_form.png             | Bin 8332 -> 9116 bytes
 3d_armor/textures/character_preview.png            | Bin 215 -> 349 bytes
 3d_armor/textures/inventory_plus_armor.png         | Bin 3267 -> 533 bytes
 3d_armor/tools/updatepo.sh                         |  25 ++
 3d_armor_ip/init.lua                               |  10 +-
 3d_armor_sfinv/init.lua                            |   7 +-
 3d_armor_stand/init.lua                            |  15 +-
 3d_armor_stand/textures/3d_armor_stand_feet.png    | Bin 243 -> 381 bytes
 3d_armor_stand/textures/3d_armor_stand_head.png    | Bin 262 -> 408 bytes
 3d_armor_stand/textures/3d_armor_stand_legs.png    | Bin 249 -> 387 bytes
 3d_armor_stand/textures/3d_armor_stand_torso.png   | Bin 274 -> 423 bytes
 3d_armor_ui/init.lua                               |  23 +-
 README.md                                          |   4 +-
 hazmat_suit/init.lua                               |   9 +-
 .../textures/hazmat_suit_inv_boots_hazmat.png      | Bin 198 -> 359 bytes
 .../textures/hazmat_suit_inv_chestplate_hazmat.png | Bin 160 -> 334 bytes
 .../textures/hazmat_suit_inv_helmet_hazmat.png     | Bin 248 -> 409 bytes
 .../textures/hazmat_suit_inv_leggings_hazmat.png   | Bin 189 -> 355 bytes
 .../textures/hazmat_suit_inv_sleeve_hazmat.png     | Bin 189 -> 334 bytes
 .../textures/hazmat_suit_inv_suit_hazmat.png       | Bin 302 -> 383 bytes
 hazmat_suit/textures/hazmat_suit_suit_hazmat.png   | Bin 792 -> 614 bytes
 .../textures/hazmat_suit_suit_hazmat_preview.png   | Bin 550 -> 492 bytes
 shields/init.lua                                   |   7 +-
 shields/textures/shields_inv_shield_admin.png      | Bin 2972 -> 443 bytes
 shields/textures/shields_inv_shield_bronze.png     | Bin 2991 -> 391 bytes
 shields/textures/shields_inv_shield_cactus.png     | Bin 3135 -> 442 bytes
 shields/textures/shields_inv_shield_crystal.png    | Bin 2964 -> 443 bytes
 shields/textures/shields_inv_shield_diamond.png    | Bin 2964 -> 443 bytes
 .../shields_inv_shield_enhanced_cactus.png         | Bin 3069 -> 430 bytes
 .../textures/shields_inv_shield_enhanced_wood.png  | Bin 3075 -> 428 bytes
 shields/textures/shields_inv_shield_gold.png       | Bin 2980 -> 391 bytes
 shields/textures/shields_inv_shield_mithril.png    | Bin 2990 -> 391 bytes
 shields/textures/shields_inv_shield_steel.png      | Bin 2964 -> 410 bytes
 shields/textures/shields_inv_shield_wood.png       | Bin 3046 -> 421 bytes
 shields/textures/shields_shield_admin.png          | Bin 3022 -> 456 bytes
 shields/textures/shields_shield_admin_preview.png  | Bin 298 -> 435 bytes
 shields/textures/shields_shield_bronze.png         | Bin 3035 -> 403 bytes
 shields/textures/shields_shield_bronze_preview.png | Bin 312 -> 394 bytes
 shields/textures/shields_shield_cactus.png         | Bin 3190 -> 455 bytes
 shields/textures/shields_shield_cactus_preview.png | Bin 462 -> 444 bytes
 shields/textures/shields_shield_crystal.png        | Bin 3011 -> 456 bytes
 .../textures/shields_shield_crystal_preview.png    | Bin 283 -> 435 bytes
 shields/textures/shields_shield_diamond.png        | Bin 3009 -> 456 bytes
 .../textures/shields_shield_diamond_preview.png    | Bin 289 -> 435 bytes
 .../textures/shields_shield_enhanced_cactus.png    | Bin 3126 -> 441 bytes
 .../shields_shield_enhanced_cactus_preview.png     | Bin 405 -> 428 bytes
 shields/textures/shields_shield_enhanced_wood.png  | Bin 3126 -> 442 bytes
 .../shields_shield_enhanced_wood_preview.png       | Bin 409 -> 433 bytes
 shields/textures/shields_shield_gold.png           | Bin 3024 -> 403 bytes
 shields/textures/shields_shield_gold_preview.png   | Bin 300 -> 394 bytes
 shields/textures/shields_shield_mithril.png        | Bin 3034 -> 403 bytes
 .../textures/shields_shield_mithril_preview.png    | Bin 312 -> 394 bytes
 shields/textures/shields_shield_steel.png          | Bin 3009 -> 439 bytes
 shields/textures/shields_shield_steel_preview.png  | Bin 284 -> 414 bytes
 shields/textures/shields_shield_wood.png           | Bin 3095 -> 433 bytes
 shields/textures/shields_shield_wood_preview.png   | Bin 373 -> 422 bytes
 technic_armor/init.lua                             |  13 +-
 .../textures/technic_armor_boots_brass.png         | Bin 366 -> 528 bytes
 .../textures/technic_armor_boots_brass_preview.png | Bin 352 -> 436 bytes
 .../textures/technic_armor_boots_carbon.png        | Bin 271 -> 432 bytes
 .../technic_armor_boots_carbon_preview.png         | Bin 213 -> 362 bytes
 .../textures/technic_armor_boots_cast.png          | Bin 366 -> 528 bytes
 .../textures/technic_armor_boots_cast_preview.png  | Bin 337 -> 436 bytes
 .../textures/technic_armor_boots_lead.png          | Bin 499 -> 506 bytes
 .../textures/technic_armor_boots_lead_preview.png  | Bin 297 -> 405 bytes
 .../textures/technic_armor_boots_silver.png        | Bin 339 -> 501 bytes
 .../technic_armor_boots_silver_preview.png         | Bin 305 -> 386 bytes
 .../textures/technic_armor_boots_stainless.png     | Bin 503 -> 661 bytes
 .../technic_armor_boots_stainless_preview.png      | Bin 326 -> 399 bytes
 technic_armor/textures/technic_armor_boots_tin.png | Bin 358 -> 520 bytes
 .../textures/technic_armor_boots_tin_preview.png   | Bin 354 -> 436 bytes
 .../textures/technic_armor_chestplate_brass.png    | Bin 559 -> 723 bytes
 .../technic_armor_chestplate_brass_preview.png     | Bin 582 -> 553 bytes
 .../textures/technic_armor_chestplate_carbon.png   | Bin 534 -> 698 bytes
 .../technic_armor_chestplate_carbon_preview.png    | Bin 482 -> 522 bytes
 .../textures/technic_armor_chestplate_cast.png     | Bin 559 -> 723 bytes
 .../technic_armor_chestplate_cast_preview.png      | Bin 555 -> 553 bytes
 .../textures/technic_armor_chestplate_lead.png     | Bin 1419 -> 918 bytes
 .../technic_armor_chestplate_lead_preview.png      | Bin 578 -> 549 bytes
 .../textures/technic_armor_chestplate_silver.png   | Bin 547 -> 709 bytes
 .../technic_armor_chestplate_silver_preview.png    | Bin 445 -> 465 bytes
 .../technic_armor_chestplate_stainless.png         | Bin 966 -> 867 bytes
 .../technic_armor_chestplate_stainless_preview.png | Bin 554 -> 496 bytes
 .../textures/technic_armor_chestplate_tin.png      | Bin 546 -> 710 bytes
 .../technic_armor_chestplate_tin_preview.png       | Bin 547 -> 537 bytes
 .../textures/technic_armor_helmet_brass.png        | Bin 533 -> 693 bytes
 .../technic_armor_helmet_brass_preview.png         | Bin 242 -> 405 bytes
 .../textures/technic_armor_helmet_carbon.png       | Bin 436 -> 617 bytes
 .../technic_armor_helmet_carbon_preview.png        | Bin 176 -> 335 bytes
 .../textures/technic_armor_helmet_cast.png         | Bin 533 -> 693 bytes
 .../textures/technic_armor_helmet_cast_preview.png | Bin 237 -> 405 bytes
 .../textures/technic_armor_helmet_lead.png         | Bin 893 -> 701 bytes
 .../textures/technic_armor_helmet_lead_preview.png | Bin 197 -> 343 bytes
 .../textures/technic_armor_helmet_silver.png       | Bin 506 -> 647 bytes
 .../technic_armor_helmet_silver_preview.png        | Bin 210 -> 343 bytes
 .../textures/technic_armor_helmet_stainless.png    | Bin 696 -> 680 bytes
 .../technic_armor_helmet_stainless_preview.png     | Bin 218 -> 350 bytes
 .../textures/technic_armor_helmet_tin.png          | Bin 506 -> 665 bytes
 .../textures/technic_armor_helmet_tin_preview.png  | Bin 236 -> 401 bytes
 .../textures/technic_armor_inv_boots_brass.png     | Bin 196 -> 358 bytes
 .../textures/technic_armor_inv_boots_carbon.png    | Bin 192 -> 360 bytes
 .../textures/technic_armor_inv_boots_cast.png      | Bin 192 -> 360 bytes
 .../textures/technic_armor_inv_boots_lead.png      | Bin 268 -> 385 bytes
 .../textures/technic_armor_inv_boots_silver.png    | Bin 196 -> 358 bytes
 .../textures/technic_armor_inv_boots_stainless.png | Bin 216 -> 377 bytes
 .../textures/technic_armor_inv_boots_tin.png       | Bin 196 -> 358 bytes
 .../technic_armor_inv_chestplate_brass.png         | Bin 204 -> 374 bytes
 .../technic_armor_inv_chestplate_carbon.png        | Bin 205 -> 375 bytes
 .../textures/technic_armor_inv_chestplate_cast.png | Bin 205 -> 375 bytes
 .../textures/technic_armor_inv_chestplate_lead.png | Bin 361 -> 432 bytes
 .../technic_armor_inv_chestplate_silver.png        | Bin 204 -> 374 bytes
 .../technic_armor_inv_chestplate_stainless.png     | Bin 234 -> 395 bytes
 .../textures/technic_armor_inv_chestplate_tin.png  | Bin 204 -> 374 bytes
 .../textures/technic_armor_inv_helmet_brass.png    | Bin 194 -> 361 bytes
 .../textures/technic_armor_inv_helmet_carbon.png   | Bin 198 -> 363 bytes
 .../textures/technic_armor_inv_helmet_cast.png     | Bin 198 -> 363 bytes
 .../textures/technic_armor_inv_helmet_lead.png     | Bin 293 -> 395 bytes
 .../textures/technic_armor_inv_helmet_silver.png   | Bin 194 -> 361 bytes
 .../technic_armor_inv_helmet_stainless.png         | Bin 214 -> 375 bytes
 .../textures/technic_armor_inv_helmet_tin.png      | Bin 194 -> 361 bytes
 .../textures/technic_armor_inv_leggings_brass.png  | Bin 190 -> 355 bytes
 .../textures/technic_armor_inv_leggings_carbon.png | Bin 194 -> 359 bytes
 .../textures/technic_armor_inv_leggings_cast.png   | Bin 194 -> 359 bytes
 .../textures/technic_armor_inv_leggings_lead.png   | Bin 287 -> 398 bytes
 .../textures/technic_armor_inv_leggings_silver.png | Bin 190 -> 355 bytes
 .../technic_armor_inv_leggings_stainless.png       | Bin 216 -> 377 bytes
 .../textures/technic_armor_inv_leggings_tin.png    | Bin 190 -> 355 bytes
 .../textures/technic_armor_inv_shield_brass.png    | Bin 532 -> 693 bytes
 .../textures/technic_armor_inv_shield_carbon.png   | Bin 575 -> 732 bytes
 .../textures/technic_armor_inv_shield_cast.png     | Bin 546 -> 706 bytes
 .../textures/technic_armor_inv_shield_lead.png     | Bin 707 -> 827 bytes
 .../textures/technic_armor_inv_shield_silver.png   | Bin 582 -> 743 bytes
 .../technic_armor_inv_shield_stainless.png         | Bin 591 -> 752 bytes
 .../textures/technic_armor_inv_shield_tin.png      | Bin 524 -> 684 bytes
 .../textures/technic_armor_leggings_brass.png      | Bin 379 -> 539 bytes
 .../technic_armor_leggings_brass_preview.png       | Bin 368 -> 451 bytes
 .../textures/technic_armor_leggings_carbon.png     | Bin 279 -> 449 bytes
 .../technic_armor_leggings_carbon_preview.png      | Bin 219 -> 365 bytes
 .../textures/technic_armor_leggings_cast.png       | Bin 379 -> 539 bytes
 .../technic_armor_leggings_cast_preview.png        | Bin 351 -> 451 bytes
 .../textures/technic_armor_leggings_lead.png       | Bin 586 -> 528 bytes
 .../technic_armor_leggings_lead_preview.png        | Bin 362 -> 440 bytes
 .../textures/technic_armor_leggings_silver.png     | Bin 354 -> 514 bytes
 .../technic_armor_leggings_silver_preview.png      | Bin 308 -> 391 bytes
 .../textures/technic_armor_leggings_stainless.png  | Bin 501 -> 534 bytes
 .../technic_armor_leggings_stainless_preview.png   | Bin 348 -> 406 bytes
 .../textures/technic_armor_leggings_tin.png        | Bin 371 -> 531 bytes
 .../technic_armor_leggings_tin_preview.png         | Bin 359 -> 451 bytes
 .../textures/technic_armor_shield_brass.png        | Bin 544 -> 705 bytes
 .../technic_armor_shield_brass_preview.png         | Bin 632 -> 695 bytes
 .../textures/technic_armor_shield_carbon.png       | Bin 587 -> 745 bytes
 .../technic_armor_shield_carbon_preview.png        | Bin 595 -> 734 bytes
 .../textures/technic_armor_shield_cast.png         | Bin 559 -> 720 bytes
 .../textures/technic_armor_shield_cast_preview.png | Bin 620 -> 698 bytes
 .../textures/technic_armor_shield_lead.png         | Bin 740 -> 849 bytes
 .../textures/technic_armor_shield_lead_preview.png | Bin 729 -> 842 bytes
 .../textures/technic_armor_shield_silver.png       | Bin 596 -> 756 bytes
 .../technic_armor_shield_silver_preview.png        | Bin 586 -> 734 bytes
 .../textures/technic_armor_shield_stainless.png    | Bin 605 -> 765 bytes
 .../technic_armor_shield_stainless_preview.png     | Bin 638 -> 759 bytes
 .../textures/technic_armor_shield_tin.png          | Bin 537 -> 697 bytes
 .../textures/technic_armor_shield_tin_preview.png  | Bin 615 -> 679 bytes
 wieldview/init.lua                                 |   8 +-
 280 files changed, 1330 insertions(+), 92 deletions(-)

diff --git a/.gitignore b/.gitignore
index 6e4e459..ba96b08 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,3 +6,6 @@ tags
 *.vim
 armor.conf
 
+## Eclipse project files & directories
+.project
+.settings
diff --git a/3d_armor/api.lua b/3d_armor/api.lua
index 00ec740..c0b5d83 100644
--- a/3d_armor/api.lua
+++ b/3d_armor/api.lua
@@ -1,3 +1,6 @@
+-- support for i18n
+local S = armor_i18n.gettext
+
 local skin_previews = {}
 local use_player_monoids = minetest.global_exists("player_monoids")
 local use_armor_monoid = minetest.global_exists("armor_monoid")
@@ -69,7 +72,7 @@ armor = {
 		on_damage = {},
 		on_destroy = {},
 	},
-	version = "0.4.9",
+	version = "0.4.10",
 }
 
 armor.config = {
@@ -167,6 +170,7 @@ armor.update_player_visuals = function(self, player)
 			self.textures[name].wielditem,
 		})
 	end
+	self:run_callbacks("on_update", player)
 end
 
 armor.set_player_armor = function(self, player)
@@ -196,6 +200,9 @@ armor.set_player_armor = function(self, player)
 		levels[group] = 0
 	end
 	local list = player_inv:get_list("armor")
+	if type(list) ~= "table" then
+		return
+	end
 	for i, stack in pairs(list) do
 		if stack:get_count() == 1 then
 			local def = stack:get_definition()
@@ -286,7 +293,6 @@ armor.set_player_armor = function(self, player)
 	self.def[name].state = state
 	self.def[name].count = count
 	self:update_player_visuals(player)
-	self:run_callbacks("on_update", player)
 end
 
 armor.punch = function(self, player, hitter, time_from_last_punch, tool_capabilities)
@@ -366,7 +372,7 @@ end
 armor.damage = function(self, player, index, stack, use)
 	local old_stack = ItemStack(stack)
 	stack:add_wear(use)
-	self:run_callbacks("on_damage", player, i, stack)
+	self:run_callbacks("on_damage", player, index, stack)
 	self:set_inventory_stack(player, index, stack)
 	if stack:get_count() == 0 then
 		self:run_callbacks("on_unequip", player, index, old_stack)
@@ -376,18 +382,14 @@ armor.damage = function(self, player, index, stack, use)
 end
 
 armor.get_player_skin = function(self, name)
-	local skin = nil
-	if self.skin_mod == "skins" or self.skin_mod == "simple_skins" then
-		skin = skins.skins[name]
-	elseif self.skin_mod == "u_skins" then
-		skin = u_skins.u_skins[name]
-	elseif self.skin_mod == "wardrobe" then
-		local skins = wardrobe.playerSkins or {}
-		if skins[name] then
-			skin = string.gsub(skins[name], "%.png$","")
-		end
-	end
-	return skin or armor.default_skin
+	if (self.skin_mod == "skins" or self.skin_mod == "simple_skins") and skins.skins[name] then
+		return skins.skins[name]..".png"
+	elseif self.skin_mod == "u_skins" and u_skins.u_skins[name] then
+		return u_skins.u_skins[name]..".png"
+	elseif self.skin_mod == "wardrobe" and wardrobe.playerSkins and wardrobe.playerSkins[name] then
+		return wardrobe.playerSkins[name]
+	end
+	return armor.default_skin..".png"
 end
 
 armor.add_preview = function(self, preview)
@@ -395,7 +397,7 @@ armor.add_preview = function(self, preview)
 end
 
 armor.get_preview = function(self, name)
-	local preview = armor:get_player_skin(name).."_preview.png"
+	local preview = string.gsub(armor:get_player_skin(name), ".png", "_preview.png")
 	if skin_previews[preview] then
 		return preview
 	end
@@ -431,16 +433,16 @@ armor.set_inventory_stack = function(self, player, i, stack)
 	local msg = "[set_inventory_stack]"
 	local name = player:get_player_name()
 	if not name then
-		minetest.log("warning", "3d_armor: Player name is nil "..msg)
+		minetest.log("warning", S("3d_armor: Player name is nil @1", msg))
 		return
 	end
 	local player_inv = player:get_inventory()
 	local armor_inv = minetest.get_inventory({type="detached", name=name.."_armor"})
 	if not player_inv then
-		minetest.log("warning", "3d_armor: Player inventory is nil "..msg)
+		minetest.log("warning", S("3d_armor: Player inventory is nil @1", msg))
 		return
 	elseif not armor_inv then
-		minetest.log("warning", "3d_armor: Detached armor inventory is nil "..msg)
+		minetest.log("warning", S("3d_armor: Detached armor inventory is nil @1", msg))
 		return
 	end
 	player_inv:set_stack("armor", i, stack)
@@ -450,25 +452,28 @@ end
 armor.get_valid_player = function(self, player, msg)
 	msg = msg or ""
 	if not player then
-		minetest.log("warning", "3d_armor: Player reference is nil "..msg)
+		minetest.log("warning", S("3d_armor: Player reference is nil @1", msg))
 		return
 	end
 	local name = player:get_player_name()
 	if not name then
-		minetest.log("warning", "3d_armor: Player name is nil "..msg)
+		minetest.log("warning", S("3d_armor: Player name is nil @1", msg))
 		return
 	end
 	local inv = player:get_inventory()
 	if not inv then
-		minetest.log("warning", "3d_armor: Player inventory is nil "..msg)
+		minetest.log("warning", S("3d_armor: Player inventory is nil @1", msg))
 		return
 	end
 	return name, inv
 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)})
+	local node = minetest.get_node_or_nil(pos)
+	if node then
+		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
 end
diff --git a/3d_armor/armor.lua b/3d_armor/armor.lua
index 306a687..85d120a 100644
--- a/3d_armor/armor.lua
+++ b/3d_armor/armor.lua
@@ -1,7 +1,5 @@
-local S = function(s) return s end
-if minetest.global_exists("intllib") then
-	S = intllib.Getter()
-end
+-- support for i18n
+local S = armor_i18n.gettext
 
 armor:register_armor("3d_armor:helmet_admin", {
 	description = S("Admin Helmet"),
diff --git a/3d_armor/init.lua b/3d_armor/init.lua
index a96f480..1a0651a 100644
--- a/3d_armor/init.lua
+++ b/3d_armor/init.lua
@@ -1,7 +1,13 @@
-local S = function(s) return s end
-if minetest.global_exists("intllib") then
-	S = intllib.Getter()
-end
+-- support for i18n
+armor_i18n = { }
+local MP = minetest.get_modpath(minetest.get_current_modname())
+armor_i18n.gettext, armor_i18n.ngettext = dofile(MP.."/intllib.lua")
+-- escaping formspec
+armor_i18n.fgettext = function(...) return minetest.formspec_escape(armor_i18n.gettext(...)) end
+-- local functions
+local S = armor_i18n.gettext
+local F = armor_i18n.fgettext
+
 local modname = minetest.get_current_modname()
 local modpath = minetest.get_modpath(modname)
 local worldpath = minetest.get_worldpath()
@@ -41,11 +47,11 @@ end
 -- Load Configuration
 
 for name, config in pairs(armor.config) do
-	local setting = minetest.setting_get("armor_"..name)
+	local setting = minetest.settings:get("armor_"..name)
 	if type(config) == "number" then
 		setting = tonumber(setting)
 	elseif type(config) == "boolean" then
-		setting = minetest.setting_getbool("armor_"..name)
+		setting = minetest.settings:get_bool("armor_"..name)
 	end
 	if setting ~= nil then
 		armor.config[name] = setting
@@ -58,13 +64,11 @@ for material, _ in pairs(armor.materials) do
 	end
 end
 
-dofile(modpath.."/armor.lua")
-
 -- Mod Compatibility
 
 if minetest.get_modpath("technic") then
 	armor.formspec = armor.formspec..
-		"label[5,2.5;"..S("Radiation")..":  armor_group_radiation]"
+		"label[5,2.5;"..F("Radiation")..":  armor_group_radiation]"
 	armor:register_armor_group("radiation")
 end
 local skin_mods = {"skins", "u_skins", "simple_skins", "wardrobe"}
@@ -87,20 +91,21 @@ if not minetest.get_modpath("ethereal") then
 	armor.materials.crystal = nil
 end
 
+dofile(modpath.."/armor.lua")
+
 -- Armor Initialization
 
 armor.formspec = armor.formspec..
-	"label[5,1;"..S("Level")..": armor_level]"..
-	"label[5,1.5;"..S("Heal")..":  armor_attr_heal]"
+	"label[5,1;"..F("Level")..": armor_level]"..
+	"label[5,1.5;"..F("Heal")..":  armor_attr_heal]"
 if armor.config.fire_protect then
-	armor.formspec = armor.formspec.."label[5,2;"..S("Fire")..":  armor_fire]"
+	armor.formspec = armor.formspec.."label[5,2;"..F("Fire")..":  armor_fire]"
 end
 armor:register_on_destroy(function(player, index, stack)
 	local name = player:get_player_name()
 	local def = stack:get_definition()
 	if name and def and def.description then
-		minetest.chat_send_player(name, S("Your").." "..def.description.." "..
-			S("got destroyed").."!")
+		minetest.chat_send_player(name, S("Your @1 got destroyed!", def.description))
 	end
 end)
 
@@ -177,7 +182,7 @@ local function init_player_armor(player)
 	end
 	local skin = armor:get_player_skin(name)
 	armor.textures[name] = {
-		skin = skin..".png",
+		skin = skin,
 		armor = "3d_armor_trans.png",
 		wielditem = "3d_armor_trans.png",
 		preview = armor.default_skin.."_preview.png",
@@ -224,7 +229,7 @@ minetest.register_on_player_receive_fields(function(player, formname, fields)
 		if string.find(field, "skins_set") then
 			minetest.after(0, function(player)
 				local skin = armor:get_player_skin(name)
-				armor.textures[name].skin = skin..".png"
+				armor.textures[name].skin = skin
 				armor:set_player_armor(player)
 			end, player)
 		end
@@ -335,7 +340,7 @@ minetest.register_globalstep(function(dtime)
 			local remove = init_player_armor(player) == true
 			pending_players[player] = count + 1
 			if remove == false and count > armor.config.init_times then
-				minetest.log("warning", "3d_armor: Failed to initialize player")
+				minetest.log("warning", S("3d_armor: Failed to initialize player"))
 				remove = true
 			end
 			if remove == true then
@@ -356,7 +361,7 @@ if armor.config.fire_protect == true then
 		end
 	end
 else
-	print ("[3d_armor] Fire Nodes disabled")
+	print (S("[3d_armor] Fire Nodes disabled"))
 end
 
 if armor.config.water_protect == true or armor.config.fire_protect == true then
diff --git a/3d_armor/intllib.lua b/3d_armor/intllib.lua
new file mode 100644
index 0000000..6669d72
--- /dev/null
+++ b/3d_armor/intllib.lua
@@ -0,0 +1,45 @@
+
+-- Fallback functions for when `intllib` is not installed.
+-- Code released under Unlicense <http://unlicense.org>.
+
+-- Get the latest version of this file at:
+--   https://raw.githubusercontent.com/minetest-mods/intllib/master/lib/intllib.lua
+
+local function format(str, ...)
+	local args = { ... }
+	local function repl(escape, open, num, close)
+		if escape == "" then
+			local replacement = tostring(args[tonumber(num)])
+			if open == "" then
+				replacement = replacement..close
+			end
+			return replacement
+		else
+			return "@"..open..num..close
+		end
+	end
+	return (str:gsub("(@?)@(%(?)(%d+)(%)?)", repl))
+end
+
+local gettext, ngettext
+if minetest.get_modpath("intllib") then
+	if intllib.make_gettext_pair then
+		-- New method using gettext.
+		gettext, ngettext = intllib.make_gettext_pair()
+	else
+		-- Old method using text files.
+		gettext = intllib.Getter()
+	end
+end
+
+-- Fill in missing functions.
+
+gettext = gettext or function(msgid, ...)
+	return format(msgid, ...)
+end
+
+ngettext = ngettext or function(msgid, msgid_plural, n, ...)
+	return format(n==1 and msgid or msgid_plural, ...)
+end
+
+return gettext, ngettext
diff --git a/3d_armor/locale/fr.po b/3d_armor/locale/fr.po
new file mode 100644
index 0000000..013e961
--- /dev/null
+++ b/3d_armor/locale/fr.po
@@ -0,0 +1,384 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL at ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: \n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2017-08-06 18:20+0200\n"
+"PO-Revision-Date: 2017-08-06 18:20+0200\n"
+"Last-Translator: fat115 <fat115 at framasoft.org>\n"
+"Language-Team: \n"
+"Language: fr\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.12\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+
+#: ../3d_armor/api.lua
+msgid "3d_armor: Player name is nil @1"
+msgstr "3d_armor : Nom du joueur non trouvé @1"
+
+#: ../3d_armor/api.lua
+msgid "3d_armor: Player inventory is nil @1"
+msgstr "3d_armor : Inventaire du joueur non trouvé @1"
+
+#: ../3d_armor/api.lua
+msgid "3d_armor: Detached armor inventory is nil @1"
+msgstr "3d_armor : Inventaire détaché pour l'armure non trouvé @1"
+
+#: ../3d_armor/api.lua
+msgid "3d_armor: Player reference is nil @1"
+msgstr "3d_armor : Référence au joueur non trouvée @1"
+
+#: ../3d_armor/armor.lua
+msgid "Admin Helmet"
+msgstr "Casque d'admin"
+
+#: ../3d_armor/armor.lua
+msgid "Admin Chestplate"
+msgstr "Cuirasse d'admin"
+
+#: ../3d_armor/armor.lua
+msgid "Admin Leggings"
+msgstr "Jambières d'admin"
+
+#: ../3d_armor/armor.lua
+msgid "Admin Boots"
+msgstr "Bottes d'admin"
+
+#: ../3d_armor/armor.lua
+msgid "Wood Helmet"
+msgstr "Casque en bois"
+
+#: ../3d_armor/armor.lua
+msgid "Wood Chestplate"
+msgstr "Cuirasse en bois"
+
+#: ../3d_armor/armor.lua
+msgid "Wood Leggings"
+msgstr "Jambières en bois"
+
+#: ../3d_armor/armor.lua
+msgid "Wood Boots"
+msgstr "Bottes en bois"
+
+#: ../3d_armor/armor.lua
+msgid "Cactus Helmet"
+msgstr "Casque en cactus"
+
+#: ../3d_armor/armor.lua
+msgid "Cactus Chestplate"
+msgstr "Cuirasse en cactus"
+
+#: ../3d_armor/armor.lua
+msgid "Cactus Leggings"
+msgstr "Jambières en cactus"
+
+#: ../3d_armor/armor.lua
+msgid "Cactus Boots"
+msgstr "Bottes en cactus"
+
+#: ../3d_armor/armor.lua
+msgid "Steel Helmet"
+msgstr "Casque en acier"
+
+#: ../3d_armor/armor.lua
+msgid "Steel Chestplate"
+msgstr " = Cuirasse en acier"
+
+#: ../3d_armor/armor.lua
+msgid "Steel Leggings"
+msgstr "Jambières en acier"
+
+#: ../3d_armor/armor.lua
+msgid "Steel Boots"
+msgstr "Bottes en acier"
+
+#: ../3d_armor/armor.lua
+msgid "Bronze Helmet"
+msgstr "Casque en bronze"
+
+#: ../3d_armor/armor.lua
+msgid "Bronze Chestplate"
+msgstr "Cuirasse en bronze"
+
+#: ../3d_armor/armor.lua
+msgid "Bronze Leggings"
+msgstr "Jambières en bronze"
+
+#: ../3d_armor/armor.lua
+msgid "Bronze Boots"
+msgstr "Bottes en bronze"
+
+#: ../3d_armor/armor.lua
+msgid "Diamond Helmet"
+msgstr "Casque en diamant"
+
+#: ../3d_armor/armor.lua
+msgid "Diamond Chestplate"
+msgstr "Cuirasse en diamant"
+
+#: ../3d_armor/armor.lua
+msgid "Diamond Leggings"
+msgstr "Jambières en diamant"
+
+#: ../3d_armor/armor.lua
+msgid "Diamond Boots"
+msgstr "Bottes en diamant"
+
+#: ../3d_armor/armor.lua
+msgid "Gold Helmet"
+msgstr "Casque en or"
+
+#: ../3d_armor/armor.lua
+msgid "Gold Chestplate"
+msgstr "Cuirasse en or"
+
+#: ../3d_armor/armor.lua
+msgid "Gold Leggings"
+msgstr "Jambières en or"
+
+#: ../3d_armor/armor.lua
+msgid "Gold Boots"
+msgstr "Bottes en or"
+
+#: ../3d_armor/armor.lua
+msgid "Mithril Helmet"
+msgstr "Casque en mithril"
+
+#: ../3d_armor/armor.lua
+msgid "Mithril Chestplate"
+msgstr "Cuirasse en mithril"
+
+#: ../3d_armor/armor.lua
+msgid "Mithril Leggings"
+msgstr "Jambières en mithril"
+
+#: ../3d_armor/armor.lua
+msgid "Mithril Boots"
+msgstr "Bottes en mithril"
+
+#: ../3d_armor/armor.lua
+msgid "Crystal Helmet"
+msgstr "Casque en cristal"
+
+#: ../3d_armor/armor.lua
+msgid "Crystal Chestplate"
+msgstr "Cuirasse en cristal"
+
+#: ../3d_armor/armor.lua
+msgid "Crystal Leggings"
+msgstr "Jambières en cristal"
+
+#: ../3d_armor/armor.lua
+msgid "Crystal Boots"
+msgstr "Bottes en cristal"
+
+#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
+msgid "Radiation"
+msgstr "Radiation"
+
+#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
+msgid "Level"
+msgstr "Niveau"
+
+#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
+msgid "Heal"
+msgstr "Soins"
+
+#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
+msgid "Fire"
+msgstr "Fire"
+
+#: ../3d_armor/init.lua
+msgid "Your @1 got destroyed!"
+msgstr "Une partie de votre armure a été détruite : @1 !"
+
+#: ../3d_armor/init.lua
+msgid "3d_armor: Failed to initialize player"
+msgstr "3d_armor : Impossible d'initialiser le joueur"
+
+#: ../3d_armor/init.lua
+msgid "[3d_armor] Fire Nodes disabled"
+msgstr "[3d_armor] Noeuds de type feu désactivés"
+
+#: ../3d_armor_ip/init.lua
+msgid "3d_armor_ip: Mod loaded but unused."
+msgstr "3d_armor_ip : Mod chargé mais inutilisé."
+
+#: ../3d_armor_ip/init.lua
+msgid "Back"
+msgstr "Retour"
+
+#: ../3d_armor_ip/init.lua ../3d_armor_sfinv/init.lua ../3d_armor_ui/init.lua
+msgid "Armor"
+msgstr "Armure"
+
+#: ../3d_armor_sfinv/init.lua
+msgid "3d_armor_sfinv: Mod loaded but unused."
+msgstr "3d_armor_sfinv : Mod chargé mais inutilisé."
+
+#: ../3d_armor_stand/init.lua
+msgid "Armor stand top"
+msgstr "Haut de support d'armure"
+
+#: ../3d_armor_stand/init.lua
+msgid "Armor stand"
+msgstr "Support d'armure"
+
+#: ../3d_armor_stand/init.lua
+msgid "Armor Stand"
+msgstr "Support d'armure"
+
+#: ../3d_armor_stand/init.lua
+msgid "Locked Armor stand"
+msgstr "Support d'armure verrouillé"
+
+#: ../3d_armor_stand/init.lua
+msgid "Armor Stand (owned by @1)"
+msgstr "Support d'armure (propriété de @1)"
+
+#: ../3d_armor_ui/init.lua
+msgid "3d_armor_ui: Mod loaded but unused."
+msgstr "3d_armor_ui : Mod chargé mais inutilisé."
+
+#: ../3d_armor_ui/init.lua
+msgid "3d Armor"
+msgstr "Armure 3d"
+
+#: ../3d_armor_ui/init.lua
+msgid "Armor not initialized!"
+msgstr "Armure non initialisée !"
+
+#: ../hazmat_suit/init.lua
+msgid "hazmat_suit: Mod loaded but unused."
+msgstr "hazmat_suit : Mod chargé mais non utilisé."
+
+#: ../hazmat_suit/init.lua
+msgid "Hazmat Helmet"
+msgstr "Casque 'Hazmat'"
+
+#: ../hazmat_suit/init.lua
+msgid "Hazmat Chestplate"
+msgstr "Cuirasse 'Hazmat'"
+
+#: ../hazmat_suit/init.lua
+msgid "Hazmat Sleeve"
+msgstr "Manches 'Hazmat'"
+
+#: ../hazmat_suit/init.lua
+msgid "Hazmat Leggins"
+msgstr "Jambières 'Hazmat'"
+
+#: ../hazmat_suit/init.lua
+msgid "Hazmat Boots"
+msgstr "Bottes 'Hazmat'"
+
+#: ../hazmat_suit/init.lua
+msgid "Hazmat Suit"
+msgstr "Combinaison 'Hazmat'"
+
+#: ../shields/init.lua
+msgid "Admin Shield"
+msgstr "Bouclier d'admin"
+
+#: ../shields/init.lua
+msgid "Wooden Shield"
+msgstr "Bouclier en bois"
+
+#: ../shields/init.lua
+msgid "Enhanced Wood Shield"
+msgstr "Bouclier en bois amélioré"
+
+#: ../shields/init.lua
+msgid "Cactus Shield"
+msgstr "Bouclier en cactus"
+
+#: ../shields/init.lua
+msgid "Enhanced Cactus Shield"
+msgstr "Bouclier en cactus amélioré"
+
+#: ../shields/init.lua
+msgid "Steel Shield"
+msgstr "Bouclier en acier"
+
+#: ../shields/init.lua
+msgid "Bronze Shield"
+msgstr "Bouclier en bronze"
+
+#: ../shields/init.lua
+msgid "Diamond Shield"
+msgstr "Bouclier en diamant"
+
+#: ../shields/init.lua
+msgid "Gold Shield"
+msgstr "Bouclier en or"
+
+#: ../shields/init.lua
+msgid "Mithril Shield"
+msgstr "Bouclier en mithril"
+
+#: ../shields/init.lua
+msgid "Crystal Shield"
+msgstr "Bouclier en cristal"
+
+#: ../technic_armor/init.lua
+msgid "technic_armor: Mod loaded but unused."
+msgstr "technic_armor : Mod chargé mais non utilisé."
+
+#: ../technic_armor/init.lua
+msgid "Lead"
+msgstr "plomb"
+
+#: ../technic_armor/init.lua
+msgid "Brass"
+msgstr "laiton"
+
+#: ../technic_armor/init.lua
+msgid "Cast Iron"
+msgstr "fonte"
+
+#: ../technic_armor/init.lua
+msgid "Carbon Steel"
+msgstr "acier au carbone"
+
+#: ../technic_armor/init.lua
+msgid "Stainless Steel"
+msgstr "acier inoxydable"
+
+#: ../technic_armor/init.lua
+msgid "Tin"
+msgstr "étain"
+
+#: ../technic_armor/init.lua
+msgid "Silver"
+msgstr "argent"
+
+#: ../technic_armor/init.lua
+msgid "Helmet"
+msgstr "Casque"
+
+#: ../technic_armor/init.lua
+msgid "Chestplate"
+msgstr "Cuirasse"
+
+#: ../technic_armor/init.lua
+msgid "Leggings"
+msgstr "Jambières"
+
+#: ../technic_armor/init.lua
+msgid "Boots"
+msgstr "Bottes"
+
+#: ../technic_armor/init.lua
+msgid "Shield"
+msgstr "Bouclier"
+
+#. Translators: @1 stands for material and @2 for part of the armor, so that you could use a conjunction if in your language part name comes first then material (e.g. in french 'Silver Boots' is translated in 'Bottes en argent' by using '@2 en @1' as translated string)
+#: ../technic_armor/init.lua
+msgid "@1 @2"
+msgstr "@2 en @1"
diff --git a/3d_armor/locale/it.po b/3d_armor/locale/it.po
new file mode 100644
index 0000000..9e44322
--- /dev/null
+++ b/3d_armor/locale/it.po
@@ -0,0 +1,384 @@
+# ITALIAN LOCALE FILE FOR THE 3D ARMOR MODULE
+# Copyright (C) 2012-2017 Stuart Jones
+# This file is distributed under the same license as the 3D ARMOR package.
+# Hamlet <h4mlet at riseup.net>, 2017.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Italian localization file for the 3D Armor module\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2017-08-06 18:20+0200\n"
+"PO-Revision-Date: 2017-08-18 00:36+0100\n"
+"Last-Translator: H4mlet <h4mlet at riseup.net>\n"
+"Language-Team: ITALIANO\n"
+"Language: it\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Poedit 1.6.10\n"
+
+#: ../3d_armor/api.lua
+msgid "3d_armor: Player name is nil @1"
+msgstr "3d_armor: Il nome della/del gicatrice/tore è nullo @1"
+
+#: ../3d_armor/api.lua
+msgid "3d_armor: Player inventory is nil @1"
+msgstr "3d_armor: L'inventario della/del giocatrice/tore è nullo @1"
+
+#: ../3d_armor/api.lua
+msgid "3d_armor: Detached armor inventory is nil @1"
+msgstr "3d_armor: L'inventario staccato dell'armatura è nullo @1"
+
+#: ../3d_armor/api.lua
+msgid "3d_armor: Player reference is nil @1"
+msgstr "3d_armor: Il riferimento alla/al giocatrice/tore è nullo @1"
+
+#: ../3d_armor/armor.lua
+msgid "Admin Helmet"
+msgstr "Elmo dell'amministratrice/tore"
+
+#: ../3d_armor/armor.lua
+msgid "Admin Chestplate"
+msgstr "Corazza dell'amministratrice/tore"
+
+#: ../3d_armor/armor.lua
+msgid "Admin Leggings"
+msgstr "Gambali dell'amministratrice/tore"
+
+#: ../3d_armor/armor.lua
+msgid "Admin Boots"
+msgstr "Stivali dell'amministratrice/tore"
+
+#: ../3d_armor/armor.lua
+msgid "Wood Helmet"
+msgstr "Elmo di legno"
+
+#: ../3d_armor/armor.lua
+msgid "Wood Chestplate"
+msgstr "Corazza di legno"
+
+#: ../3d_armor/armor.lua
+msgid "Wood Leggings"
+msgstr "Gambali di legno"
+
+#: ../3d_armor/armor.lua
+msgid "Wood Boots"
+msgstr "Stivali di legno"
+
+#: ../3d_armor/armor.lua
+msgid "Cactus Helmet"
+msgstr "Elmo di cactus"
+
+#: ../3d_armor/armor.lua
+msgid "Cactus Chestplate"
+msgstr "Corazza di cactus"
+
+#: ../3d_armor/armor.lua
+msgid "Cactus Leggings"
+msgstr "Gambali di cactus"
+
+#: ../3d_armor/armor.lua
+msgid "Cactus Boots"
+msgstr "Stivali di cactus"
+
+#: ../3d_armor/armor.lua
+msgid "Steel Helmet"
+msgstr "Elmo di acciaio"
+
+#: ../3d_armor/armor.lua
+msgid "Steel Chestplate"
+msgstr "Corazza di acciaio"
+
+#: ../3d_armor/armor.lua
+msgid "Steel Leggings"
+msgstr "Gambali di acciaio"
+
+#: ../3d_armor/armor.lua
+msgid "Steel Boots"
+msgstr "Stivali di acciaio"
+
+#: ../3d_armor/armor.lua
+msgid "Bronze Helmet"
+msgstr "Elmo di bronzo"
+
+#: ../3d_armor/armor.lua
+msgid "Bronze Chestplate"
+msgstr "Corazza di bronzo"
+
+#: ../3d_armor/armor.lua
+msgid "Bronze Leggings"
+msgstr "Gambali di bronzo"
+
+#: ../3d_armor/armor.lua
+msgid "Bronze Boots"
+msgstr "Stivali di bronzo"
+
+#: ../3d_armor/armor.lua
+msgid "Diamond Helmet"
+msgstr "Elmo di diamante"
+
+#: ../3d_armor/armor.lua
+msgid "Diamond Chestplate"
+msgstr "Corazza di diamante"
+
+#: ../3d_armor/armor.lua
+msgid "Diamond Leggings"
+msgstr "Gambali di diamante"
+
+#: ../3d_armor/armor.lua
+msgid "Diamond Boots"
+msgstr "Stivali di diamante"
+
+#: ../3d_armor/armor.lua
+msgid "Gold Helmet"
+msgstr "Elmo d'oro"
+
+#: ../3d_armor/armor.lua
+msgid "Gold Chestplate"
+msgstr "Corazza d'oro"
+
+#: ../3d_armor/armor.lua
+msgid "Gold Leggings"
+msgstr "Gambali d'oro"
+
+#: ../3d_armor/armor.lua
+msgid "Gold Boots"
+msgstr "Stivali d'oro"
+
+#: ../3d_armor/armor.lua
+msgid "Mithril Helmet"
+msgstr "Elmo di mithril"
+
+#: ../3d_armor/armor.lua
+msgid "Mithril Chestplate"
+msgstr "Corazza di mithril"
+
+#: ../3d_armor/armor.lua
+msgid "Mithril Leggings"
+msgstr "Gambali di mithril"
+
+#: ../3d_armor/armor.lua
+msgid "Mithril Boots"
+msgstr "Stivali di mithril"
+
+#: ../3d_armor/armor.lua
+msgid "Crystal Helmet"
+msgstr "Elmo di cristallo"
+
+#: ../3d_armor/armor.lua
+msgid "Crystal Chestplate"
+msgstr "Corazza di cristallo"
+
+#: ../3d_armor/armor.lua
+msgid "Crystal Leggings"
+msgstr "Gambali di cristallo"
+
+#: ../3d_armor/armor.lua
+msgid "Crystal Boots"
+msgstr "Stivali di cristallo"
+
+#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
+msgid "Radiation"
+msgstr "Radiazione"
+
+#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
+msgid "Level"
+msgstr "Livello"
+
+#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
+msgid "Heal"
+msgstr "Guarigione"
+
+#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
+msgid "Fire"
+msgstr "Fuoco"
+
+#: ../3d_armor/init.lua
+msgid "Your @1 got destroyed!"
+msgstr "Il/i vostro/i @1 è/sono stato/i distrutto/i!"
+
+#: ../3d_armor/init.lua
+msgid "3d_armor: Failed to initialize player"
+msgstr "3d_armor: Inizializzazione della/del giocatrice/tore fallita"
+
+#: ../3d_armor/init.lua
+msgid "[3d_armor] Fire Nodes disabled"
+msgstr "[3d_armor] Nodi fuoco disabilitati"
+
+#: ../3d_armor_ip/init.lua
+msgid "3d_armor_ip: Mod loaded but unused."
+msgstr "3d_armor_ip: Mod caricato ma inutilizzato."
+
+#: ../3d_armor_ip/init.lua
+msgid "Back"
+msgstr "Indietro"
+
+#: ../3d_armor_ip/init.lua ../3d_armor_sfinv/init.lua ../3d_armor_ui/init.lua
+msgid "Armor"
+msgstr "Armatura"
+
+#: ../3d_armor_sfinv/init.lua
+msgid "3d_armor_sfinv: Mod loaded but unused."
+msgstr "3d_armor_sfinv: Mod caricato ma inutilizzato."
+
+#: ../3d_armor_stand/init.lua
+msgid "Armor stand top"
+msgstr "Parte superiore del supporto per armatura"
+
+#: ../3d_armor_stand/init.lua
+msgid "Armor stand"
+msgstr "Supporto per armatura"
+
+#: ../3d_armor_stand/init.lua
+msgid "Armor Stand"
+msgstr "Supporto per armatura"
+
+#: ../3d_armor_stand/init.lua
+msgid "Locked Armor stand"
+msgstr "Supporto per armatura chiuso a chiave"
+
+#: ../3d_armor_stand/init.lua
+msgid "Armor Stand (owned by @1)"
+msgstr "Supporto per armatura (di proprietà di @1)"
+
+#: ../3d_armor_ui/init.lua
+msgid "3d_armor_ui: Mod loaded but unused."
+msgstr "3d_armor_ui: Mod caricato ma inutilizzato."
+
+#: ../3d_armor_ui/init.lua
+msgid "3d Armor"
+msgstr "Armatura 3D"
+
+#: ../3d_armor_ui/init.lua
+msgid "Armor not initialized!"
+msgstr "Armatura non inizializzata!"
+
+#: ../hazmat_suit/init.lua
+msgid "hazmat_suit: Mod loaded but unused."
+msgstr "hazmat_suit: Mod caricato ma inutilizzato."
+
+#: ../hazmat_suit/init.lua
+msgid "Hazmat Helmet"
+msgstr "Elmo hazmat"
+
+#: ../hazmat_suit/init.lua
+msgid "Hazmat Chestplate"
+msgstr "Corazza hazmat"
+
+#: ../hazmat_suit/init.lua
+msgid "Hazmat Sleeve"
+msgstr "Manica hazmat"
+
+#: ../hazmat_suit/init.lua
+msgid "Hazmat Leggins"
+msgstr "Gambali hazmat"
+
+#: ../hazmat_suit/init.lua
+msgid "Hazmat Boots"
+msgstr "Stivali hazmat"
+
+#: ../hazmat_suit/init.lua
+msgid "Hazmat Suit"
+msgstr "Completo hazmat"
+
+#: ../shields/init.lua
+msgid "Admin Shield"
+msgstr "Scudo dell'amministratrice/tore"
+
+#: ../shields/init.lua
+msgid "Wooden Shield"
+msgstr "Scudo di legno"
+
+#: ../shields/init.lua
+msgid "Enhanced Wood Shield"
+msgstr "Scudo di legno migliorato"
+
+#: ../shields/init.lua
+msgid "Cactus Shield"
+msgstr "Scudo di cactus"
+
+#: ../shields/init.lua
+msgid "Enhanced Cactus Shield"
+msgstr "Scudo di cactus migliorato"
+
+#: ../shields/init.lua
+msgid "Steel Shield"
+msgstr "Scudo di acciaio"
+
+#: ../shields/init.lua
+msgid "Bronze Shield"
+msgstr "Scudo di bronzo"
+
+#: ../shields/init.lua
+msgid "Diamond Shield"
+msgstr "Scudo di diamante"
+
+#: ../shields/init.lua
+msgid "Gold Shield"
+msgstr "Scudo d'oro"
+
+#: ../shields/init.lua
+msgid "Mithril Shield"
+msgstr "Scudo di mithril"
+
+#: ../shields/init.lua
+msgid "Crystal Shield"
+msgstr "Scudo di cristallo"
+
+#: ../technic_armor/init.lua
+msgid "technic_armor: Mod loaded but unused."
+msgstr "technic_armor: Mod caricato ma inutilizzato."
+
+#: ../technic_armor/init.lua
+msgid "Lead"
+msgstr "Piombo"
+
+#: ../technic_armor/init.lua
+msgid "Brass"
+msgstr "Ottone"
+
+#: ../technic_armor/init.lua
+msgid "Cast Iron"
+msgstr "Ghisa"
+
+#: ../technic_armor/init.lua
+msgid "Carbon Steel"
+msgstr "Acciaio al carbonio"
+
+#: ../technic_armor/init.lua
+msgid "Stainless Steel"
+msgstr "Acciaio inossidabile"
+
+#: ../technic_armor/init.lua
+msgid "Tin"
+msgstr "Stagno"
+
+#: ../technic_armor/init.lua
+msgid "Silver"
+msgstr "Argento"
+
+#: ../technic_armor/init.lua
+msgid "Helmet"
+msgstr "Elmo"
+
+#: ../technic_armor/init.lua
+msgid "Chestplate"
+msgstr "Corazza"
+
+#: ../technic_armor/init.lua
+msgid "Leggings"
+msgstr "Gambali"
+
+#: ../technic_armor/init.lua
+msgid "Boots"
+msgstr "Stivali"
+
+#: ../technic_armor/init.lua
+msgid "Shield"
+msgstr "Scudo"
+
+#. Translators: @1 stands for material and @2 for part of the armor, so that you could use a conjunction if in your language part name comes first then material (e.g. in french 'Silver Boots' is translated in 'Bottes en argent' by using '@2 en @1' as translated string)
+#: ../technic_armor/init.lua
+msgid "@1 @2"
+msgstr "@2 di @1"
diff --git a/3d_armor/locale/template.pot b/3d_armor/locale/template.pot
new file mode 100644
index 0000000..20b7504
--- /dev/null
+++ b/3d_armor/locale/template.pot
@@ -0,0 +1,383 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL at ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2017-08-06 18:20+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL at ADDRESS>\n"
+"Language-Team: LANGUAGE <LL at li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../3d_armor/api.lua
+msgid "3d_armor: Player name is nil @1"
+msgstr ""
+
+#: ../3d_armor/api.lua
+msgid "3d_armor: Player inventory is nil @1"
+msgstr ""
+
+#: ../3d_armor/api.lua
+msgid "3d_armor: Detached armor inventory is nil @1"
+msgstr ""
+
+#: ../3d_armor/api.lua
+msgid "3d_armor: Player reference is nil @1"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Admin Helmet"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Admin Chestplate"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Admin Leggings"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Admin Boots"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Wood Helmet"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Wood Chestplate"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Wood Leggings"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Wood Boots"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Cactus Helmet"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Cactus Chestplate"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Cactus Leggings"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Cactus Boots"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Steel Helmet"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Steel Chestplate"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Steel Leggings"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Steel Boots"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Bronze Helmet"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Bronze Chestplate"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Bronze Leggings"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Bronze Boots"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Diamond Helmet"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Diamond Chestplate"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Diamond Leggings"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Diamond Boots"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Gold Helmet"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Gold Chestplate"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Gold Leggings"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Gold Boots"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Mithril Helmet"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Mithril Chestplate"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Mithril Leggings"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Mithril Boots"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Crystal Helmet"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Crystal Chestplate"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Crystal Leggings"
+msgstr ""
+
+#: ../3d_armor/armor.lua
+msgid "Crystal Boots"
+msgstr ""
+
+#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
+msgid "Radiation"
+msgstr ""
+
+#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
+msgid "Level"
+msgstr ""
+
+#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
+msgid "Heal"
+msgstr ""
+
+#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
+msgid "Fire"
+msgstr ""
+
+#: ../3d_armor/init.lua
+msgid "Your @1 got destroyed!"
+msgstr ""
+
+#: ../3d_armor/init.lua
+msgid "3d_armor: Failed to initialize player"
+msgstr ""
+
+#: ../3d_armor/init.lua
+msgid "[3d_armor] Fire Nodes disabled"
+msgstr ""
+
+#: ../3d_armor_ip/init.lua
+msgid "3d_armor_ip: Mod loaded but unused."
+msgstr ""
+
+#: ../3d_armor_ip/init.lua
+msgid "Back"
+msgstr ""
+
+#: ../3d_armor_ip/init.lua ../3d_armor_sfinv/init.lua ../3d_armor_ui/init.lua
+msgid "Armor"
+msgstr ""
+
+#: ../3d_armor_sfinv/init.lua
+msgid "3d_armor_sfinv: Mod loaded but unused."
+msgstr ""
+
+#: ../3d_armor_stand/init.lua
+msgid "Armor stand top"
+msgstr ""
+
+#: ../3d_armor_stand/init.lua
+msgid "Armor stand"
+msgstr ""
+
+#: ../3d_armor_stand/init.lua
+msgid "Armor Stand"
+msgstr ""
+
+#: ../3d_armor_stand/init.lua
+msgid "Locked Armor stand"
+msgstr ""
+
+#: ../3d_armor_stand/init.lua
+msgid "Armor Stand (owned by @1)"
+msgstr ""
+
+#: ../3d_armor_ui/init.lua
+msgid "3d_armor_ui: Mod loaded but unused."
+msgstr ""
+
+#: ../3d_armor_ui/init.lua
+msgid "3d Armor"
+msgstr ""
+
+#: ../3d_armor_ui/init.lua
+msgid "Armor not initialized!"
+msgstr ""
+
+#: ../hazmat_suit/init.lua
+msgid "hazmat_suit: Mod loaded but unused."
+msgstr ""
+
+#: ../hazmat_suit/init.lua
+msgid "Hazmat Helmet"
+msgstr ""
+
+#: ../hazmat_suit/init.lua
+msgid "Hazmat Chestplate"
+msgstr ""
+
+#: ../hazmat_suit/init.lua
+msgid "Hazmat Sleeve"
+msgstr ""
+
+#: ../hazmat_suit/init.lua
+msgid "Hazmat Leggins"
+msgstr ""
+
+#: ../hazmat_suit/init.lua
+msgid "Hazmat Boots"
+msgstr ""
+
+#: ../hazmat_suit/init.lua
+msgid "Hazmat Suit"
+msgstr ""
+
+#: ../shields/init.lua
+msgid "Admin Shield"
+msgstr ""
+
+#: ../shields/init.lua
+msgid "Wooden Shield"
+msgstr ""
+
+#: ../shields/init.lua
+msgid "Enhanced Wood Shield"
+msgstr ""
+
+#: ../shields/init.lua
+msgid "Cactus Shield"
+msgstr ""
+
+#: ../shields/init.lua
+msgid "Enhanced Cactus Shield"
+msgstr ""
+
+#: ../shields/init.lua
+msgid "Steel Shield"
+msgstr ""
+
+#: ../shields/init.lua
+msgid "Bronze Shield"
+msgstr ""
+
+#: ../shields/init.lua
+msgid "Diamond Shield"
+msgstr ""
+
+#: ../shields/init.lua
+msgid "Gold Shield"
+msgstr ""
+
+#: ../shields/init.lua
+msgid "Mithril Shield"
+msgstr ""
+
+#: ../shields/init.lua
+msgid "Crystal Shield"
+msgstr ""
+
+#: ../technic_armor/init.lua
+msgid "technic_armor: Mod loaded but unused."
+msgstr ""
+
+#: ../technic_armor/init.lua
+msgid "Lead"
+msgstr ""
+
+#: ../technic_armor/init.lua
+msgid "Brass"
+msgstr ""
+
+#: ../technic_armor/init.lua
+msgid "Cast Iron"
+msgstr ""
+
+#: ../technic_armor/init.lua
+msgid "Carbon Steel"
+msgstr ""
+
+#: ../technic_armor/init.lua
+msgid "Stainless Steel"
+msgstr ""
+
+#: ../technic_armor/init.lua
+msgid "Tin"
+msgstr ""
+
+#: ../technic_armor/init.lua
+msgid "Silver"
+msgstr ""
+
+#: ../technic_armor/init.lua
+msgid "Helmet"
+msgstr ""
+
+#: ../technic_armor/init.lua
+msgid "Chestplate"
+msgstr ""
+
+#: ../technic_armor/init.lua
+msgid "Leggings"
+msgstr ""
+
+#: ../technic_armor/init.lua
+msgid "Boots"
+msgstr ""
+
+#: ../technic_armor/init.lua
+msgid "Shield"
+msgstr ""
+
+#. Translators: @1 stands for material and @2 for part of the armor, so that you could use a conjunction if in your language part name comes first then material (e.g. in french 'Silver Boots' is translated in 'Bottes en argent' by using '@2 en @1' as translated string)
+#: ../technic_armor/init.lua
+msgid "@1 @2"
+msgstr ""
diff --git a/3d_armor/textures/3d_armor_boots_admin.png b/3d_armor/textures/3d_armor_boots_admin.png
index 78d60d5..23be004 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 46bec8f..77acce6 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 c4337df..2f4fd83 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 5dfb5a5..1f83af3 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 f651b48..f370644 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 9c9787b..e4cbf13 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 22d1fc4..3ca8899 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 c76fb9b..0c6b3e4 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 c291fc6..ef40206 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 eee8f55..7575fbd 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 164634d..f431d9b 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 0f9ac5e..9daae14 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 72f1664..b6c65d6 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 84dcc2f..21de8c1 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 4028cbf..72ec88b 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 386467b..170d094 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 7e36022..411ce9c 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 0e76cd5..d9f192c 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 9dbb7e4..a17d0a4 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 3b094b6..5395810 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 ea3adf8..ac43ddb 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 1692604..ab1d1ce 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 2833e17..0dd7eb0 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 570ff85..9523ef7 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 b652910..e4981b1 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 ee042ef..801dc2a 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 15e6034..3538496 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 96fc70e..92909b3 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 962b735..cc3e910 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 2a5161a..df47bf0 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 01d6a31..b06b2a8 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 a33522a..4859295 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 03d0406..bccb99d 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 9b682bf..804e785 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 91ecaf6..bae4817 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 bb6b2bc..8f75f26 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 8a26c81..0a04251 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 fbd6929..9f44921 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 b620e0a..7ef5595 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 813578e..9a62f82 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 6f2561f..e48ec34 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 c1291c4..c8be84a 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 e447f2c..e63a63f 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 33c596b..dddbbc0 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 a6551da..611dc9f 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 4c351b0..ed52aed 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 b07ad01..24da53b 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 655db7c..d4d9d0c 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 fb4e457..57e579e 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 477c464..be50523 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 d7915c9..8d21e8a 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 97f024a..774d284 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 4132ce3..01e243a 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 b15ea19..0e0c3b1 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 5c9d1a4..69fc00a 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 4529c49..448f41d 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 5410c19..3f57f22 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 715b58a..e311893 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 dbae53a..0a866e7 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 ad350b6..55d78b7 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 91e622d..00c26f9 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 fa81cf8..82fc591 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 5ad9662..53bb557 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 c5ddd97..dafef2c 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 f1256e4..8fc2f17 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 f8ed465..7f5bc70 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 a57bfd9..b9593bf 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 09583ea..f5ca3aa 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 1412697..efe76ca 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 faa9846..6ca9231 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 f0222e7..47ef4f2 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 b1f2305..dac3b06 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 fe388ab..494cc84 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 9bdc252..c0028dd 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 03e8655..10a2b39 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 2fede4a..565383e 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 46c1f58..6df57bd 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 d76a212..6820d8f 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 857d43f..ce4e910 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 e705974..1c8bfe8 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 98f4d87..fbb3e3f 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 f994408..e652ef1 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 32748e9..f194f9f 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 05f8853..f7c1a28 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 0c6da1f..d466b20 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 7373529..c4cd85c 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 29a840b..2e4b244 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 860ddae..ffe972c 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 ce833d0..1ca9975 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 b7d042c..9e73b72 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 22829ea..bedfbc1 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 5c70fac..1d32265 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 a7ea904..bcba372 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 19d247d..c378148 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 0c253c0..88aa32d 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 ee5ab4c..9dab482 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 3572fd7..754bd0f 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 3d16482..7808496 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 2f533e8..a57cf07 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 32d594a..84976c4 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 24b033c..dfdd094 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 3ce1de8..ff2e3d0 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 b7fdfae..2143572 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 c3a68e9..178054a 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 6bb2fbc..cca4e31 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 f8c67c0..dbcfcf2 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 0923cd1..eb61034 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 b5f5667..1545b4b 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/3d_armor_trans.png b/3d_armor/textures/3d_armor_trans.png
index 4d7beb8..4a31242 100644
Binary files a/3d_armor/textures/3d_armor_trans.png and b/3d_armor/textures/3d_armor_trans.png differ
diff --git a/3d_armor/textures/3d_armor_ui_form.png b/3d_armor/textures/3d_armor_ui_form.png
index 6e5cfee..993809f 100644
Binary files a/3d_armor/textures/3d_armor_ui_form.png and b/3d_armor/textures/3d_armor_ui_form.png differ
diff --git a/3d_armor/textures/character_preview.png b/3d_armor/textures/character_preview.png
index bf8e842..82a0ae4 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 98917ef..f317c70 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/tools/updatepo.sh b/3d_armor/tools/updatepo.sh
new file mode 100755
index 0000000..21ca5b5
--- /dev/null
+++ b/3d_armor/tools/updatepo.sh
@@ -0,0 +1,25 @@
+#! /bin/bash
+
+# To create a new translation:
+#   msginit --locale=ll_CC -o locale/ll_CC.po -i locale/template.pot
+
+cd "$(dirname "${BASH_SOURCE[0]}")/..";
+
+# Extract translatable strings.
+xgettext --from-code=UTF-8 \
+		--language=Lua \
+		--sort-by-file \
+		--keyword=S \
+		--keyword=NS:1,2 \
+		--keyword=N_ \
+		--keyword=F \
+		--add-comments='Translators:' \
+		--add-location=file \
+		-o locale/template.pot \
+		$(find .. -name '*.lua')
+
+# Update translations.
+find locale -name '*.po' | while read -r file; do
+	echo $file
+	msgmerge --update $file locale/template.pot;
+done
diff --git a/3d_armor_ip/init.lua b/3d_armor_ip/init.lua
index 59c21c3..ea6fa57 100644
--- a/3d_armor_ip/init.lua
+++ b/3d_armor_ip/init.lua
@@ -1,9 +1,13 @@
+-- support for i18n
+local S = armor_i18n.gettext
+local F = armor_i18n.fgettext
+
 if not minetest.global_exists("inventory_plus") then
-	minetest.log("warning", "3d_armor_ip: Mod loaded but unused.")
+	minetest.log("warning", S("3d_armor_ip: Mod loaded but unused."))
 	return
 end
 
-armor.formspec = "size[8,8.5]button[6,0;2,0.5;main;Back]"..armor.formspec
+armor.formspec = "size[8,8.5]button[6,0;2,0.5;main;"..F("Back").."]"..armor.formspec
 armor:register_on_update(function(player)
 	local name = player:get_player_name()
 	local formspec = armor:get_armor_formspec(name, true)
@@ -19,7 +23,7 @@ if minetest.get_modpath("crafting") then
 end
 
 minetest.register_on_joinplayer(function(player)
-	inventory_plus.register_button(player,"armor", "Armor")
+	inventory_plus.register_button(player,"armor", S("Armor"))
 end)
 
 minetest.register_on_player_receive_fields(function(player, formname, fields)
diff --git a/3d_armor_sfinv/init.lua b/3d_armor_sfinv/init.lua
index ede9007..a937127 100644
--- a/3d_armor_sfinv/init.lua
+++ b/3d_armor_sfinv/init.lua
@@ -1,10 +1,13 @@
+-- support for i18n
+local S = armor_i18n.gettext
+
 if not minetest.global_exists("sfinv") then
-	minetest.log("warning", "3d_armor_sfinv: Mod loaded but unused.")
+	minetest.log("warning", S("3d_armor_sfinv: Mod loaded but unused."))
 	return
 end
 
 sfinv.register_page("3d_armor:armor", {
-	title = "Armor",
+	title = S("Armor"),
 	get = function(self, player, context)
 		local name = player:get_player_name()
 		local formspec = armor:get_armor_formspec(name, true)
diff --git a/3d_armor_stand/init.lua b/3d_armor_stand/init.lua
index 8ebc851..df4380d 100644
--- a/3d_armor_stand/init.lua
+++ b/3d_armor_stand/init.lua
@@ -1,7 +1,6 @@
-local S = function(s) return s end
-if minetest.global_exists("intllib") then
-	S = intllib.Getter()
-end
+-- support for i18n
+local S = armor_i18n.gettext
+
 local armor_stand_formspec = "size[8,7]" ..
 	default.gui_bg ..
 	default.gui_bg_img ..
@@ -166,7 +165,7 @@ minetest.register_node("3d_armor_stand:armor_stand", {
 	on_construct = function(pos)
 		local meta = minetest.get_meta(pos)
 		meta:set_string("formspec", armor_stand_formspec)
-		meta:set_string("infotext", "Armor Stand")
+		meta:set_string("infotext", S("Armor Stand"))
 		local inv = meta:get_inventory()
 		for _, element in pairs(elements) do
 			inv:set_size("armor_"..element, 1)
@@ -234,7 +233,7 @@ minetest.register_node("3d_armor_stand:locked_armor_stand", {
 	on_construct = function(pos)
 		local meta = minetest.get_meta(pos)
 		meta:set_string("formspec", armor_stand_formspec)
-		meta:set_string("infotext", "Armor Stand")
+		meta:set_string("infotext", S("Armor Stand"))
 		meta:set_string("owner", "")
 		local inv = meta:get_inventory()
 		for _, element in pairs(elements) do
@@ -255,8 +254,7 @@ minetest.register_node("3d_armor_stand:locked_armor_stand", {
 		minetest.add_entity(pos, "3d_armor_stand:armor_entity")
 		local meta = minetest.get_meta(pos)
 		meta:set_string("owner", placer:get_player_name() or "")
-		meta:set_string("infotext", "Armor Stand (owned by " ..
-		meta:get_string("owner") .. ")")
+		meta:set_string("infotext", S("Armor Stand (owned by @1)", meta:get_string("owner")))
 		add_hidden_node(pos, placer)
 	end,
 	allow_metadata_inventory_put = function(pos, listname, index, stack, player)
@@ -338,4 +336,3 @@ minetest.register_craft({
 		{"3d_armor_stand:armor_stand", "default:steel_ingot"},
 	}
 })
-
diff --git a/3d_armor_stand/textures/3d_armor_stand_feet.png b/3d_armor_stand/textures/3d_armor_stand_feet.png
index d04f9e3..2427a60 100644
Binary files a/3d_armor_stand/textures/3d_armor_stand_feet.png and b/3d_armor_stand/textures/3d_armor_stand_feet.png differ
diff --git a/3d_armor_stand/textures/3d_armor_stand_head.png b/3d_armor_stand/textures/3d_armor_stand_head.png
index 228c08e..5676e0b 100644
Binary files a/3d_armor_stand/textures/3d_armor_stand_head.png and b/3d_armor_stand/textures/3d_armor_stand_head.png differ
diff --git a/3d_armor_stand/textures/3d_armor_stand_legs.png b/3d_armor_stand/textures/3d_armor_stand_legs.png
index 66ec357..1d8d4c1 100644
Binary files a/3d_armor_stand/textures/3d_armor_stand_legs.png and b/3d_armor_stand/textures/3d_armor_stand_legs.png differ
diff --git a/3d_armor_stand/textures/3d_armor_stand_torso.png b/3d_armor_stand/textures/3d_armor_stand_torso.png
index af95ec7..ef134f8 100644
Binary files a/3d_armor_stand/textures/3d_armor_stand_torso.png and b/3d_armor_stand/textures/3d_armor_stand_torso.png differ
diff --git a/3d_armor_ui/init.lua b/3d_armor_ui/init.lua
index 763e731..69eee9e 100644
--- a/3d_armor_ui/init.lua
+++ b/3d_armor_ui/init.lua
@@ -1,11 +1,11 @@
+-- support for i18n
+local S = armor_i18n.gettext
+local F = armor_i18n.fgettext
+
 if not minetest.global_exists("unified_inventory") then
-	minetest.log("warning", "3d_armor_ui: Mod loaded but unused.")
+	minetest.log("warning", S("3d_armor_ui: Mod loaded but unused."))
 	return
 end
-local S = function(s) return s end
-if minetest.global_exists("intllib") then
-	S = intllib.Getter()
-end
 
 if unified_inventory.sfinv_compat_layer then
 	return
@@ -21,6 +21,7 @@ end)
 unified_inventory.register_button("armor", {
 	type = "image",
 	image = "inventory_plus_armor.png",
+	tooltip = S("3d Armor")
 })
 
 unified_inventory.register_page("armor", {
@@ -28,23 +29,23 @@ unified_inventory.register_page("armor", {
 		local fy = perplayer_formspec.formspec_y
 		local name = player:get_player_name()
 		if armor.def[name].init_time == 0 then
-			return {formspec="label[0,0;Armor not initialized!]"}
+			return {formspec="label[0,0;"..F("Armor not initialized!").."]"}
 		end
 		local formspec = "background[0.06,"..fy..";7.92,7.52;3d_armor_ui_form.png]"..
-			"label[0,0;Armor]"..
+			"label[0,0;"..F("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)..";"..S("Level")..": "..armor.def[name].level.."]"..
-			"label[5.0,"..(fy + 0.5)..";"..S("Heal")..":  "..armor.def[name].heal.."]"..
+			"label[5.0,"..(fy + 0.0)..";"..F("Level")..": "..armor.def[name].level.."]"..
+			"label[5.0,"..(fy + 0.5)..";"..F("Heal")..":  "..armor.def[name].heal.."]"..
 			"listring[current_player;main]"..
 			"listring[detached:"..name.."_armor;armor]"
 		if armor.config.fire_protect then
 			formspec = formspec.."label[5.0,"..(fy + 1.0)..";"..
-				S("Fire")..":  "..armor.def[name].fire.."]"
+				F("Fire")..":  "..armor.def[name].fire.."]"
 		end
 		if minetest.global_exists("technic") then
 			formspec = formspec.."label[5.0,"..(fy + 1.5)..";"..
-				S("Radiation")..":  "..armor.def[name].groups["radiation"].."]"
+				F("Radiation")..":  "..armor.def[name].groups["radiation"].."]"
 		end
 		return {formspec=formspec}
 	end,
diff --git a/README.md b/README.md
index 443c70b..9e21c6c 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-Modpack - 3d Armor [0.4.9]
+Modpack - 3d Armor [0.4.10]
 ==========================
 
 ### Table of Contents
@@ -46,6 +46,8 @@ and [simple_skins] by TenPlus1.
 Armor can be configured by adding a file called armor.conf in 3d_armor mod or world directory.
 see armor.conf.example for all available options.
 
+For mod installation instructions, please visit: http://wiki.minetest.com/wiki/Installing_Mods
+
 [mod] Visible Wielded Items [wieldview]
 ---------------------------------------
 
diff --git a/hazmat_suit/init.lua b/hazmat_suit/init.lua
index df1d74e..0e914c5 100644
--- a/hazmat_suit/init.lua
+++ b/hazmat_suit/init.lua
@@ -1,11 +1,10 @@
+-- support for i18n
+local S = armor_i18n.gettext
+
 if not minetest.get_modpath("technic") then
-	minetest.log("warning", "hazmat_suit: Mod loaded but unused.")
+	minetest.log("warning", S("hazmat_suit: Mod loaded but unused."))
 	return
 end
-local S = function(s) return s end
-if minetest.global_exists("intllib") then
-	S = intllib.Getter()
-end
 
 minetest.register_craftitem("hazmat_suit:helmet_hazmat", {
 		description = S("Hazmat Helmet"),
diff --git a/hazmat_suit/textures/hazmat_suit_inv_boots_hazmat.png b/hazmat_suit/textures/hazmat_suit_inv_boots_hazmat.png
index 5f737e7..f4afb67 100644
Binary files a/hazmat_suit/textures/hazmat_suit_inv_boots_hazmat.png and b/hazmat_suit/textures/hazmat_suit_inv_boots_hazmat.png differ
diff --git a/hazmat_suit/textures/hazmat_suit_inv_chestplate_hazmat.png b/hazmat_suit/textures/hazmat_suit_inv_chestplate_hazmat.png
index 2421d54..b6b83a5 100644
Binary files a/hazmat_suit/textures/hazmat_suit_inv_chestplate_hazmat.png and b/hazmat_suit/textures/hazmat_suit_inv_chestplate_hazmat.png differ
diff --git a/hazmat_suit/textures/hazmat_suit_inv_helmet_hazmat.png b/hazmat_suit/textures/hazmat_suit_inv_helmet_hazmat.png
index 39a39ea..b8e3132 100644
Binary files a/hazmat_suit/textures/hazmat_suit_inv_helmet_hazmat.png and b/hazmat_suit/textures/hazmat_suit_inv_helmet_hazmat.png differ
diff --git a/hazmat_suit/textures/hazmat_suit_inv_leggings_hazmat.png b/hazmat_suit/textures/hazmat_suit_inv_leggings_hazmat.png
index 1ca9d25..9bd2247 100644
Binary files a/hazmat_suit/textures/hazmat_suit_inv_leggings_hazmat.png and b/hazmat_suit/textures/hazmat_suit_inv_leggings_hazmat.png differ
diff --git a/hazmat_suit/textures/hazmat_suit_inv_sleeve_hazmat.png b/hazmat_suit/textures/hazmat_suit_inv_sleeve_hazmat.png
index 0503bb0..771fa07 100644
Binary files a/hazmat_suit/textures/hazmat_suit_inv_sleeve_hazmat.png and b/hazmat_suit/textures/hazmat_suit_inv_sleeve_hazmat.png differ
diff --git a/hazmat_suit/textures/hazmat_suit_inv_suit_hazmat.png b/hazmat_suit/textures/hazmat_suit_inv_suit_hazmat.png
index 57ccd6d..df9838e 100644
Binary files a/hazmat_suit/textures/hazmat_suit_inv_suit_hazmat.png and b/hazmat_suit/textures/hazmat_suit_inv_suit_hazmat.png differ
diff --git a/hazmat_suit/textures/hazmat_suit_suit_hazmat.png b/hazmat_suit/textures/hazmat_suit_suit_hazmat.png
index 97311fe..421cd60 100644
Binary files a/hazmat_suit/textures/hazmat_suit_suit_hazmat.png and b/hazmat_suit/textures/hazmat_suit_suit_hazmat.png differ
diff --git a/hazmat_suit/textures/hazmat_suit_suit_hazmat_preview.png b/hazmat_suit/textures/hazmat_suit_suit_hazmat_preview.png
index ae08454..bc1c5df 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/shields/init.lua b/shields/init.lua
index 3128eff..baed822 100644
--- a/shields/init.lua
+++ b/shields/init.lua
@@ -1,7 +1,6 @@
-local S = function(s) return s end
-if minetest.global_exists("intllib") then
-	S = intllib.Getter()
-end
+-- support for i18n
+local S = armor_i18n.gettext
+
 local use_moreores = minetest.get_modpath("moreores")
 local function play_sound_effect(player, name)
 	if player then
diff --git a/shields/textures/shields_inv_shield_admin.png b/shields/textures/shields_inv_shield_admin.png
index 434adae..0b0637e 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 dab60e3..af47896 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 37d0ec6..d5c9ae4 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 f32e2dd..ebb73db 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 bfcd1fe..0e79d97 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 923e42d..c5dc4d0 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 b4d4256..13baede 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 cf11e2c..d0bd027 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 e377428..a55fb00 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 1b9bb00..5417632 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 6876414..407533f 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 61e1ae0..764c3bb 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 b61896f..1d64766 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 d2cb2e4..d2a3561 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 1dd4747..3942471 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 36341cb..889ac94 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 385273b..1b46f1e 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 db53560..03882e8 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 e3b6823..8dc632e 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 af490ce..d1641b7 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 ebe82e4..87fd958 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 a5bea43..13884ff 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 22413f6..d8227a8 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 ebeacfe..64f5331 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 95fed1d..97ca378 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 d8d4ae3..e1aecfd 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 4cdac6e..103e0bc 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 76b9312..2e14503 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 640de99..8adb978 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 8c77ee4..22ddb07 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 c795a95..96fbf9a 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 695d12b..129f9f0 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 d7695d3..d167738 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/init.lua b/technic_armor/init.lua
index b06d7bf..ddbaad9 100644
--- a/technic_armor/init.lua
+++ b/technic_armor/init.lua
@@ -1,11 +1,11 @@
+-- support for i18n
+local S = armor_i18n.gettext
+local F = armor_i18n.fgettext
+
 if not minetest.get_modpath("technic_worldgen") then
-	minetest.log("warning", "technic_armor: Mod loaded but unused.")
+	minetest.log("warning", S("technic_armor: Mod loaded but unused."))
 	return
 end
-local S = function(s) return s end
-if minetest.global_exists("intllib") then
-	S = intllib.Getter()
-end
 
 local stats = {
 	lead = { name=S("Lead"), material="technic:lead_ingot", armor=1.6, heal=0, use=500, radiation=80*1.1 },
@@ -52,7 +52,8 @@ for key, armor in pairs(stats) do
 	for partkey, part in pairs(parts) do
 		local partname = "technic_armor:"..partkey.."_"..key
 		minetest.register_tool(partname, {
-			description = armor.name.." "..part.name,
+			-- Translators: @1 stands for material and @2 for part of the armor, so that you could use a conjunction if in your language part name comes first then material (e.g. in french 'Silver Boots' is translated in 'Bottes en argent' by using '@2 en @1' as translated string)
+			description = S("@1 @2", armor.name, part.name),
 			inventory_image = "technic_armor_inv_"..partkey.."_"..key..".png",
 			groups = {["armor_"..part.place]=math.floor(part.level*armor.armor), armor_heal=armor.heal, armor_use=armor.use, armor_radiation=math.floor(part.radlevel*armor.radiation)},
 			wear = 0,
diff --git a/technic_armor/textures/technic_armor_boots_brass.png b/technic_armor/textures/technic_armor_boots_brass.png
index a54b970..0f6e822 100644
Binary files a/technic_armor/textures/technic_armor_boots_brass.png and b/technic_armor/textures/technic_armor_boots_brass.png differ
diff --git a/technic_armor/textures/technic_armor_boots_brass_preview.png b/technic_armor/textures/technic_armor_boots_brass_preview.png
index f1feb76..0f9f6f7 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.png b/technic_armor/textures/technic_armor_boots_carbon.png
index 379cc8e..0002401 100644
Binary files a/technic_armor/textures/technic_armor_boots_carbon.png and b/technic_armor/textures/technic_armor_boots_carbon.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 360dd62..98dfe59 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.png b/technic_armor/textures/technic_armor_boots_cast.png
index 5aa0aaa..b0bfd55 100644
Binary files a/technic_armor/textures/technic_armor_boots_cast.png and b/technic_armor/textures/technic_armor_boots_cast.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 77ff481..2a1cdba 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.png b/technic_armor/textures/technic_armor_boots_lead.png
index a809e62..05eff68 100644
Binary files a/technic_armor/textures/technic_armor_boots_lead.png and b/technic_armor/textures/technic_armor_boots_lead.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 7fab62b..fde3271 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.png b/technic_armor/textures/technic_armor_boots_silver.png
index 1af5ccc..18b296e 100644
Binary files a/technic_armor/textures/technic_armor_boots_silver.png and b/technic_armor/textures/technic_armor_boots_silver.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 616b1d3..a1c56ed 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.png b/technic_armor/textures/technic_armor_boots_stainless.png
index eaa86c4..e35dc42 100644
Binary files a/technic_armor/textures/technic_armor_boots_stainless.png and b/technic_armor/textures/technic_armor_boots_stainless.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 3e49437..500c8ad 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.png b/technic_armor/textures/technic_armor_boots_tin.png
index 11c740a..bd19ee1 100644
Binary files a/technic_armor/textures/technic_armor_boots_tin.png and b/technic_armor/textures/technic_armor_boots_tin.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 8b08d6f..52763fa 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.png b/technic_armor/textures/technic_armor_chestplate_brass.png
index d123aff..09acd52 100644
Binary files a/technic_armor/textures/technic_armor_chestplate_brass.png and b/technic_armor/textures/technic_armor_chestplate_brass.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 513fefa..5f8c044 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.png b/technic_armor/textures/technic_armor_chestplate_carbon.png
index 7f2b9f1..581d5d7 100644
Binary files a/technic_armor/textures/technic_armor_chestplate_carbon.png and b/technic_armor/textures/technic_armor_chestplate_carbon.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 f37eb8b..73fd662 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.png b/technic_armor/textures/technic_armor_chestplate_cast.png
index 6fa0628..3e5f743 100644
Binary files a/technic_armor/textures/technic_armor_chestplate_cast.png and b/technic_armor/textures/technic_armor_chestplate_cast.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 0c9fa30..e4c85d8 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.png b/technic_armor/textures/technic_armor_chestplate_lead.png
index 8b91c7e..1b39c9f 100644
Binary files a/technic_armor/textures/technic_armor_chestplate_lead.png and b/technic_armor/textures/technic_armor_chestplate_lead.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 e13ddc2..2142d2e 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.png b/technic_armor/textures/technic_armor_chestplate_silver.png
index 6790049..4b6f0fa 100644
Binary files a/technic_armor/textures/technic_armor_chestplate_silver.png and b/technic_armor/textures/technic_armor_chestplate_silver.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 ecb5cb0..1ae19e7 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.png b/technic_armor/textures/technic_armor_chestplate_stainless.png
index c2db5f6..802aaa6 100644
Binary files a/technic_armor/textures/technic_armor_chestplate_stainless.png and b/technic_armor/textures/technic_armor_chestplate_stainless.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 b478457..f63ea19 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.png b/technic_armor/textures/technic_armor_chestplate_tin.png
index 562354e..907725b 100644
Binary files a/technic_armor/textures/technic_armor_chestplate_tin.png and b/technic_armor/textures/technic_armor_chestplate_tin.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 d67ca9d..6732b18 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.png b/technic_armor/textures/technic_armor_helmet_brass.png
index 9107a10..3e3e378 100644
Binary files a/technic_armor/textures/technic_armor_helmet_brass.png and b/technic_armor/textures/technic_armor_helmet_brass.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 19f0704..8afdabf 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.png b/technic_armor/textures/technic_armor_helmet_carbon.png
index 2a6eb6f..dbbd5f7 100644
Binary files a/technic_armor/textures/technic_armor_helmet_carbon.png and b/technic_armor/textures/technic_armor_helmet_carbon.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 ee56f04..243770d 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.png b/technic_armor/textures/technic_armor_helmet_cast.png
index 87ec50b..2fffc0d 100644
Binary files a/technic_armor/textures/technic_armor_helmet_cast.png and b/technic_armor/textures/technic_armor_helmet_cast.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 ab87fc9..12867ac 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.png b/technic_armor/textures/technic_armor_helmet_lead.png
index 251a95e..dee6eec 100644
Binary files a/technic_armor/textures/technic_armor_helmet_lead.png and b/technic_armor/textures/technic_armor_helmet_lead.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 88ec995..4fb5c27 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.png b/technic_armor/textures/technic_armor_helmet_silver.png
index 413625e..7244f69 100644
Binary files a/technic_armor/textures/technic_armor_helmet_silver.png and b/technic_armor/textures/technic_armor_helmet_silver.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 a40a3cd..7639027 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.png b/technic_armor/textures/technic_armor_helmet_stainless.png
index b37bfcb..e662b7e 100644
Binary files a/technic_armor/textures/technic_armor_helmet_stainless.png and b/technic_armor/textures/technic_armor_helmet_stainless.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 b4b5a74..ae20233 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.png b/technic_armor/textures/technic_armor_helmet_tin.png
index 4e0dae2..d12c593 100644
Binary files a/technic_armor/textures/technic_armor_helmet_tin.png and b/technic_armor/textures/technic_armor_helmet_tin.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 9429071..1f5c040 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_inv_boots_brass.png b/technic_armor/textures/technic_armor_inv_boots_brass.png
index 145d6c3..386a0b4 100644
Binary files a/technic_armor/textures/technic_armor_inv_boots_brass.png and b/technic_armor/textures/technic_armor_inv_boots_brass.png differ
diff --git a/technic_armor/textures/technic_armor_inv_boots_carbon.png b/technic_armor/textures/technic_armor_inv_boots_carbon.png
index dbf043f..0ec5008 100644
Binary files a/technic_armor/textures/technic_armor_inv_boots_carbon.png and b/technic_armor/textures/technic_armor_inv_boots_carbon.png differ
diff --git a/technic_armor/textures/technic_armor_inv_boots_cast.png b/technic_armor/textures/technic_armor_inv_boots_cast.png
index ba33d07..7f05b93 100644
Binary files a/technic_armor/textures/technic_armor_inv_boots_cast.png and b/technic_armor/textures/technic_armor_inv_boots_cast.png differ
diff --git a/technic_armor/textures/technic_armor_inv_boots_lead.png b/technic_armor/textures/technic_armor_inv_boots_lead.png
index 5fb7067..6b98300 100644
Binary files a/technic_armor/textures/technic_armor_inv_boots_lead.png and b/technic_armor/textures/technic_armor_inv_boots_lead.png differ
diff --git a/technic_armor/textures/technic_armor_inv_boots_silver.png b/technic_armor/textures/technic_armor_inv_boots_silver.png
index 7af9003..595a138 100644
Binary files a/technic_armor/textures/technic_armor_inv_boots_silver.png and b/technic_armor/textures/technic_armor_inv_boots_silver.png differ
diff --git a/technic_armor/textures/technic_armor_inv_boots_stainless.png b/technic_armor/textures/technic_armor_inv_boots_stainless.png
index 6d114e7..f3c0832 100644
Binary files a/technic_armor/textures/technic_armor_inv_boots_stainless.png and b/technic_armor/textures/technic_armor_inv_boots_stainless.png differ
diff --git a/technic_armor/textures/technic_armor_inv_boots_tin.png b/technic_armor/textures/technic_armor_inv_boots_tin.png
index 6fbc5b3..17dd7d9 100644
Binary files a/technic_armor/textures/technic_armor_inv_boots_tin.png and b/technic_armor/textures/technic_armor_inv_boots_tin.png differ
diff --git a/technic_armor/textures/technic_armor_inv_chestplate_brass.png b/technic_armor/textures/technic_armor_inv_chestplate_brass.png
index 4984954..f37c441 100644
Binary files a/technic_armor/textures/technic_armor_inv_chestplate_brass.png and b/technic_armor/textures/technic_armor_inv_chestplate_brass.png differ
diff --git a/technic_armor/textures/technic_armor_inv_chestplate_carbon.png b/technic_armor/textures/technic_armor_inv_chestplate_carbon.png
index b921799..b65a494 100644
Binary files a/technic_armor/textures/technic_armor_inv_chestplate_carbon.png and b/technic_armor/textures/technic_armor_inv_chestplate_carbon.png differ
diff --git a/technic_armor/textures/technic_armor_inv_chestplate_cast.png b/technic_armor/textures/technic_armor_inv_chestplate_cast.png
index 5e6749e..ab07e33 100644
Binary files a/technic_armor/textures/technic_armor_inv_chestplate_cast.png and b/technic_armor/textures/technic_armor_inv_chestplate_cast.png differ
diff --git a/technic_armor/textures/technic_armor_inv_chestplate_lead.png b/technic_armor/textures/technic_armor_inv_chestplate_lead.png
index b2ca61d..5d996b7 100644
Binary files a/technic_armor/textures/technic_armor_inv_chestplate_lead.png and b/technic_armor/textures/technic_armor_inv_chestplate_lead.png differ
diff --git a/technic_armor/textures/technic_armor_inv_chestplate_silver.png b/technic_armor/textures/technic_armor_inv_chestplate_silver.png
index 442caa2..989f66a 100644
Binary files a/technic_armor/textures/technic_armor_inv_chestplate_silver.png and b/technic_armor/textures/technic_armor_inv_chestplate_silver.png differ
diff --git a/technic_armor/textures/technic_armor_inv_chestplate_stainless.png b/technic_armor/textures/technic_armor_inv_chestplate_stainless.png
index 5462100..792782e 100644
Binary files a/technic_armor/textures/technic_armor_inv_chestplate_stainless.png and b/technic_armor/textures/technic_armor_inv_chestplate_stainless.png differ
diff --git a/technic_armor/textures/technic_armor_inv_chestplate_tin.png b/technic_armor/textures/technic_armor_inv_chestplate_tin.png
index eeb7328..3218188 100644
Binary files a/technic_armor/textures/technic_armor_inv_chestplate_tin.png and b/technic_armor/textures/technic_armor_inv_chestplate_tin.png differ
diff --git a/technic_armor/textures/technic_armor_inv_helmet_brass.png b/technic_armor/textures/technic_armor_inv_helmet_brass.png
index e56ec30..1538cd1 100644
Binary files a/technic_armor/textures/technic_armor_inv_helmet_brass.png and b/technic_armor/textures/technic_armor_inv_helmet_brass.png differ
diff --git a/technic_armor/textures/technic_armor_inv_helmet_carbon.png b/technic_armor/textures/technic_armor_inv_helmet_carbon.png
index fc2a592..0556bdc 100644
Binary files a/technic_armor/textures/technic_armor_inv_helmet_carbon.png and b/technic_armor/textures/technic_armor_inv_helmet_carbon.png differ
diff --git a/technic_armor/textures/technic_armor_inv_helmet_cast.png b/technic_armor/textures/technic_armor_inv_helmet_cast.png
index 15092c1..b01edbc 100644
Binary files a/technic_armor/textures/technic_armor_inv_helmet_cast.png and b/technic_armor/textures/technic_armor_inv_helmet_cast.png differ
diff --git a/technic_armor/textures/technic_armor_inv_helmet_lead.png b/technic_armor/textures/technic_armor_inv_helmet_lead.png
index 5e54cd6..28d0237 100644
Binary files a/technic_armor/textures/technic_armor_inv_helmet_lead.png and b/technic_armor/textures/technic_armor_inv_helmet_lead.png differ
diff --git a/technic_armor/textures/technic_armor_inv_helmet_silver.png b/technic_armor/textures/technic_armor_inv_helmet_silver.png
index 4a17003..07464a6 100644
Binary files a/technic_armor/textures/technic_armor_inv_helmet_silver.png and b/technic_armor/textures/technic_armor_inv_helmet_silver.png differ
diff --git a/technic_armor/textures/technic_armor_inv_helmet_stainless.png b/technic_armor/textures/technic_armor_inv_helmet_stainless.png
index 1cc480e..32e0064 100644
Binary files a/technic_armor/textures/technic_armor_inv_helmet_stainless.png and b/technic_armor/textures/technic_armor_inv_helmet_stainless.png differ
diff --git a/technic_armor/textures/technic_armor_inv_helmet_tin.png b/technic_armor/textures/technic_armor_inv_helmet_tin.png
index c37cb75..d691d27 100644
Binary files a/technic_armor/textures/technic_armor_inv_helmet_tin.png and b/technic_armor/textures/technic_armor_inv_helmet_tin.png differ
diff --git a/technic_armor/textures/technic_armor_inv_leggings_brass.png b/technic_armor/textures/technic_armor_inv_leggings_brass.png
index 876bf7c..9457cf1 100644
Binary files a/technic_armor/textures/technic_armor_inv_leggings_brass.png and b/technic_armor/textures/technic_armor_inv_leggings_brass.png differ
diff --git a/technic_armor/textures/technic_armor_inv_leggings_carbon.png b/technic_armor/textures/technic_armor_inv_leggings_carbon.png
index e4673a9..e18bcc2 100644
Binary files a/technic_armor/textures/technic_armor_inv_leggings_carbon.png and b/technic_armor/textures/technic_armor_inv_leggings_carbon.png differ
diff --git a/technic_armor/textures/technic_armor_inv_leggings_cast.png b/technic_armor/textures/technic_armor_inv_leggings_cast.png
index df61ca6..612a4b6 100644
Binary files a/technic_armor/textures/technic_armor_inv_leggings_cast.png and b/technic_armor/textures/technic_armor_inv_leggings_cast.png differ
diff --git a/technic_armor/textures/technic_armor_inv_leggings_lead.png b/technic_armor/textures/technic_armor_inv_leggings_lead.png
index 6e456a3..c8bb05e 100644
Binary files a/technic_armor/textures/technic_armor_inv_leggings_lead.png and b/technic_armor/textures/technic_armor_inv_leggings_lead.png differ
diff --git a/technic_armor/textures/technic_armor_inv_leggings_silver.png b/technic_armor/textures/technic_armor_inv_leggings_silver.png
index ad8c91b..995f137 100644
Binary files a/technic_armor/textures/technic_armor_inv_leggings_silver.png and b/technic_armor/textures/technic_armor_inv_leggings_silver.png differ
diff --git a/technic_armor/textures/technic_armor_inv_leggings_stainless.png b/technic_armor/textures/technic_armor_inv_leggings_stainless.png
index 7e4feaf..81ba007 100644
Binary files a/technic_armor/textures/technic_armor_inv_leggings_stainless.png and b/technic_armor/textures/technic_armor_inv_leggings_stainless.png differ
diff --git a/technic_armor/textures/technic_armor_inv_leggings_tin.png b/technic_armor/textures/technic_armor_inv_leggings_tin.png
index bbaeb6a..dab14cf 100644
Binary files a/technic_armor/textures/technic_armor_inv_leggings_tin.png and b/technic_armor/textures/technic_armor_inv_leggings_tin.png differ
diff --git a/technic_armor/textures/technic_armor_inv_shield_brass.png b/technic_armor/textures/technic_armor_inv_shield_brass.png
index dbb63cd..42e9fea 100644
Binary files a/technic_armor/textures/technic_armor_inv_shield_brass.png and b/technic_armor/textures/technic_armor_inv_shield_brass.png differ
diff --git a/technic_armor/textures/technic_armor_inv_shield_carbon.png b/technic_armor/textures/technic_armor_inv_shield_carbon.png
index c6ae42a..9fe96b0 100644
Binary files a/technic_armor/textures/technic_armor_inv_shield_carbon.png and b/technic_armor/textures/technic_armor_inv_shield_carbon.png differ
diff --git a/technic_armor/textures/technic_armor_inv_shield_cast.png b/technic_armor/textures/technic_armor_inv_shield_cast.png
index f1bcfb9..f359686 100644
Binary files a/technic_armor/textures/technic_armor_inv_shield_cast.png and b/technic_armor/textures/technic_armor_inv_shield_cast.png differ
diff --git a/technic_armor/textures/technic_armor_inv_shield_lead.png b/technic_armor/textures/technic_armor_inv_shield_lead.png
index 751e050..633528f 100644
Binary files a/technic_armor/textures/technic_armor_inv_shield_lead.png and b/technic_armor/textures/technic_armor_inv_shield_lead.png differ
diff --git a/technic_armor/textures/technic_armor_inv_shield_silver.png b/technic_armor/textures/technic_armor_inv_shield_silver.png
index 39dd7f4..4efbac6 100644
Binary files a/technic_armor/textures/technic_armor_inv_shield_silver.png and b/technic_armor/textures/technic_armor_inv_shield_silver.png differ
diff --git a/technic_armor/textures/technic_armor_inv_shield_stainless.png b/technic_armor/textures/technic_armor_inv_shield_stainless.png
index 2455726..40dddb5 100644
Binary files a/technic_armor/textures/technic_armor_inv_shield_stainless.png and b/technic_armor/textures/technic_armor_inv_shield_stainless.png differ
diff --git a/technic_armor/textures/technic_armor_inv_shield_tin.png b/technic_armor/textures/technic_armor_inv_shield_tin.png
index e6fb9d8..1d559f9 100644
Binary files a/technic_armor/textures/technic_armor_inv_shield_tin.png and b/technic_armor/textures/technic_armor_inv_shield_tin.png differ
diff --git a/technic_armor/textures/technic_armor_leggings_brass.png b/technic_armor/textures/technic_armor_leggings_brass.png
index f9c84fd..4fdea7a 100644
Binary files a/technic_armor/textures/technic_armor_leggings_brass.png and b/technic_armor/textures/technic_armor_leggings_brass.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 71f4c5e..adad003 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.png b/technic_armor/textures/technic_armor_leggings_carbon.png
index 2c83e23..1925292 100644
Binary files a/technic_armor/textures/technic_armor_leggings_carbon.png and b/technic_armor/textures/technic_armor_leggings_carbon.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 9e059f2..b65d7a6 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.png b/technic_armor/textures/technic_armor_leggings_cast.png
index e7ca67f..91f3f48 100644
Binary files a/technic_armor/textures/technic_armor_leggings_cast.png and b/technic_armor/textures/technic_armor_leggings_cast.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 8519300..4d9f723 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.png b/technic_armor/textures/technic_armor_leggings_lead.png
index 75be6c9..d15b560 100644
Binary files a/technic_armor/textures/technic_armor_leggings_lead.png and b/technic_armor/textures/technic_armor_leggings_lead.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 3543c92..e2bd330 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.png b/technic_armor/textures/technic_armor_leggings_silver.png
index 6ae30f3..22518e4 100644
Binary files a/technic_armor/textures/technic_armor_leggings_silver.png and b/technic_armor/textures/technic_armor_leggings_silver.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 ee100cd..ebe8914 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.png b/technic_armor/textures/technic_armor_leggings_stainless.png
index 5eab543..7b9c43c 100644
Binary files a/technic_armor/textures/technic_armor_leggings_stainless.png and b/technic_armor/textures/technic_armor_leggings_stainless.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 4e73f8e..7224231 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.png b/technic_armor/textures/technic_armor_leggings_tin.png
index 5973135..9ad2e74 100644
Binary files a/technic_armor/textures/technic_armor_leggings_tin.png and b/technic_armor/textures/technic_armor_leggings_tin.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 80f41bd..244c321 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.png b/technic_armor/textures/technic_armor_shield_brass.png
index 7ffdb63..85e7f55 100644
Binary files a/technic_armor/textures/technic_armor_shield_brass.png and b/technic_armor/textures/technic_armor_shield_brass.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 450136b..dffd356 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.png b/technic_armor/textures/technic_armor_shield_carbon.png
index f78e1a9..1a16c8c 100644
Binary files a/technic_armor/textures/technic_armor_shield_carbon.png and b/technic_armor/textures/technic_armor_shield_carbon.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 4a19262..0fe4cdc 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.png b/technic_armor/textures/technic_armor_shield_cast.png
index 0911277..f41e9a2 100644
Binary files a/technic_armor/textures/technic_armor_shield_cast.png and b/technic_armor/textures/technic_armor_shield_cast.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 a6444ed..9820ce9 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.png b/technic_armor/textures/technic_armor_shield_lead.png
index 96a82b5..89d9fdb 100644
Binary files a/technic_armor/textures/technic_armor_shield_lead.png and b/technic_armor/textures/technic_armor_shield_lead.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 a8c71cc..6520808 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.png b/technic_armor/textures/technic_armor_shield_silver.png
index 8573eec..42cc5b1 100644
Binary files a/technic_armor/textures/technic_armor_shield_silver.png and b/technic_armor/textures/technic_armor_shield_silver.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 8830006..446fdee 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.png b/technic_armor/textures/technic_armor_shield_stainless.png
index 6d6adb3..f7878f9 100644
Binary files a/technic_armor/textures/technic_armor_shield_stainless.png and b/technic_armor/textures/technic_armor_shield_stainless.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 cd1e5b9..6bba8d4 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.png b/technic_armor/textures/technic_armor_shield_tin.png
index 048927c..0538e51 100644
Binary files a/technic_armor/textures/technic_armor_shield_tin.png and b/technic_armor/textures/technic_armor_shield_tin.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 06a181d..ef32164 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
diff --git a/wieldview/init.lua b/wieldview/init.lua
index 8fcf001..45f9fca 100644
--- a/wieldview/init.lua
+++ b/wieldview/init.lua
@@ -1,13 +1,13 @@
 local time = 0
-local update_time = tonumber(minetest.setting_get("wieldview_update_time"))
+local update_time = tonumber(minetest.settings:get("wieldview_update_time"))
 if not update_time then
 	update_time = 2
-	minetest.setting_set("wieldview_update_time", tostring(update_time))
+	minetest.settings:set("wieldview_update_time", tostring(update_time))
 end
-local node_tiles = minetest.setting_getbool("wieldview_node_tiles")
+local node_tiles = minetest.settings:get_bool("wieldview_node_tiles")
 if not node_tiles then
 	node_tiles = false
-	minetest.setting_set("wieldview_node_tiles", "false")
+	minetest.settings:set("wieldview_node_tiles", "false")
 end
 
 wieldview = {

-- 
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