From 526b4fdad3b1bfb572e1a4f33d190c1e50ff95c4 Mon Sep 17 00:00:00 2001 From: rubenwardy Date: Sun, 21 Jan 2018 20:40:41 +0000 Subject: [PATCH] Add entity nametags to hide nametags behind nodes --- mods/ctf_pvp_engine | 2 +- mods/ctf_userlimit/init.lua | 16 +-- mods/gauges/init.lua | 2 +- mods/playertag/README.md | 5 + mods/playertag/api.lua | 148 ++++++++++++++++++++++++ mods/playertag/depends.txt | 1 + mods/playertag/init.lua | 14 +++ mods/playertag/textures/0.png | Bin 0 -> 110 bytes mods/playertag/textures/1.png | Bin 0 -> 111 bytes mods/playertag/textures/10.png | Bin 0 -> 116 bytes mods/playertag/textures/11.png | Bin 0 -> 114 bytes mods/playertag/textures/12.png | Bin 0 -> 114 bytes mods/playertag/textures/13.png | Bin 0 -> 114 bytes mods/playertag/textures/14.png | Bin 0 -> 114 bytes mods/playertag/textures/15.png | Bin 0 -> 114 bytes mods/playertag/textures/16.png | Bin 0 -> 114 bytes mods/playertag/textures/17.png | Bin 0 -> 114 bytes mods/playertag/textures/18.png | Bin 0 -> 114 bytes mods/playertag/textures/19.png | Bin 0 -> 114 bytes mods/playertag/textures/2.png | Bin 0 -> 116 bytes mods/playertag/textures/20.png | Bin 0 -> 110 bytes mods/playertag/textures/3.png | Bin 0 -> 114 bytes mods/playertag/textures/4.png | Bin 0 -> 114 bytes mods/playertag/textures/5.png | Bin 0 -> 115 bytes mods/playertag/textures/6.png | Bin 0 -> 116 bytes mods/playertag/textures/7.png | Bin 0 -> 116 bytes mods/playertag/textures/8.png | Bin 0 -> 115 bytes mods/playertag/textures/9.png | Bin 0 -> 115 bytes mods/playertag/textures/B_-.png | Bin 0 -> 85 bytes mods/playertag/textures/B_0.png | Bin 0 -> 129 bytes mods/playertag/textures/B_1.png | Bin 0 -> 116 bytes mods/playertag/textures/B_2.png | Bin 0 -> 131 bytes mods/playertag/textures/B_3.png | Bin 0 -> 129 bytes mods/playertag/textures/B_4.png | Bin 0 -> 128 bytes mods/playertag/textures/B_5.png | Bin 0 -> 136 bytes mods/playertag/textures/B_6.png | Bin 0 -> 142 bytes mods/playertag/textures/B_7.png | Bin 0 -> 107 bytes mods/playertag/textures/B_8.png | Bin 0 -> 128 bytes mods/playertag/textures/B_9.png | Bin 0 -> 138 bytes mods/playertag/textures/B_UA.png | Bin 0 -> 130 bytes mods/playertag/textures/B_UB.png | Bin 0 -> 113 bytes mods/playertag/textures/B_UC.png | Bin 0 -> 131 bytes mods/playertag/textures/B_UD.png | Bin 0 -> 119 bytes mods/playertag/textures/B_UE.png | Bin 0 -> 100 bytes mods/playertag/textures/B_UF.png | Bin 0 -> 98 bytes mods/playertag/textures/B_UG.png | Bin 0 -> 136 bytes mods/playertag/textures/B_UH.png | Bin 0 -> 104 bytes mods/playertag/textures/B_UI.png | Bin 0 -> 98 bytes mods/playertag/textures/B_UJ.png | Bin 0 -> 109 bytes mods/playertag/textures/B_UK.png | Bin 0 -> 140 bytes mods/playertag/textures/B_UL.png | Bin 0 -> 98 bytes mods/playertag/textures/B_UM.png | Bin 0 -> 124 bytes mods/playertag/textures/B_UN.png | Bin 0 -> 130 bytes mods/playertag/textures/B_UO.png | Bin 0 -> 120 bytes mods/playertag/textures/B_UP.png | Bin 0 -> 117 bytes mods/playertag/textures/B_UQ.png | Bin 0 -> 130 bytes mods/playertag/textures/B_UR.png | Bin 0 -> 130 bytes mods/playertag/textures/B_US.png | Bin 0 -> 147 bytes mods/playertag/textures/B_UT.png | Bin 0 -> 93 bytes mods/playertag/textures/B_UU.png | Bin 0 -> 101 bytes mods/playertag/textures/B_UV.png | Bin 0 -> 128 bytes mods/playertag/textures/B_UW.png | Bin 0 -> 122 bytes mods/playertag/textures/B_UX.png | Bin 0 -> 114 bytes mods/playertag/textures/B_UY.png | Bin 0 -> 116 bytes mods/playertag/textures/B_UZ.png | Bin 0 -> 105 bytes mods/playertag/textures/B__.png | Bin 0 -> 83 bytes mods/playertag/textures/B_a.png | Bin 0 -> 132 bytes mods/playertag/textures/B_b.png | Bin 0 -> 128 bytes mods/playertag/textures/B_c.png | Bin 0 -> 115 bytes mods/playertag/textures/B_d.png | Bin 0 -> 123 bytes mods/playertag/textures/B_e.png | Bin 0 -> 122 bytes mods/playertag/textures/B_f.png | Bin 0 -> 102 bytes mods/playertag/textures/B_g.png | Bin 0 -> 140 bytes mods/playertag/textures/B_h.png | Bin 0 -> 113 bytes mods/playertag/textures/B_i.png | Bin 0 -> 107 bytes mods/playertag/textures/B_j.png | Bin 0 -> 112 bytes mods/playertag/textures/B_k.png | Bin 0 -> 141 bytes mods/playertag/textures/B_l.png | Bin 0 -> 107 bytes mods/playertag/textures/B_m.png | Bin 0 -> 102 bytes mods/playertag/textures/B_n.png | Bin 0 -> 112 bytes mods/playertag/textures/B_o.png | Bin 0 -> 109 bytes mods/playertag/textures/B_p.png | Bin 0 -> 138 bytes mods/playertag/textures/B_q.png | Bin 0 -> 130 bytes mods/playertag/textures/B_r.png | Bin 0 -> 103 bytes mods/playertag/textures/B_s.png | Bin 0 -> 133 bytes mods/playertag/textures/B_t.png | Bin 0 -> 112 bytes mods/playertag/textures/B_u.png | Bin 0 -> 101 bytes mods/playertag/textures/B_v.png | Bin 0 -> 105 bytes mods/playertag/textures/B_w.png | Bin 0 -> 122 bytes mods/playertag/textures/B_x.png | Bin 0 -> 119 bytes mods/playertag/textures/B_y.png | Bin 0 -> 138 bytes mods/playertag/textures/B_z.png | Bin 0 -> 108 bytes mods/playertag/textures/W_-.png | Bin 0 -> 78 bytes mods/playertag/textures/W_0.png | Bin 0 -> 107 bytes mods/playertag/textures/W_1.png | Bin 0 -> 93 bytes mods/playertag/textures/W_2.png | Bin 0 -> 101 bytes mods/playertag/textures/W_3.png | Bin 0 -> 105 bytes mods/playertag/textures/W_4.png | Bin 0 -> 110 bytes mods/playertag/textures/W_5.png | Bin 0 -> 103 bytes mods/playertag/textures/W_6.png | Bin 0 -> 114 bytes mods/playertag/textures/W_7.png | Bin 0 -> 87 bytes mods/playertag/textures/W_8.png | Bin 0 -> 105 bytes mods/playertag/textures/W_9.png | Bin 0 -> 111 bytes mods/playertag/textures/W_UA.png | Bin 0 -> 109 bytes mods/playertag/textures/W_UB.png | Bin 0 -> 95 bytes mods/playertag/textures/W_UC.png | Bin 0 -> 108 bytes mods/playertag/textures/W_UD.png | Bin 0 -> 99 bytes mods/playertag/textures/W_UE.png | Bin 0 -> 89 bytes mods/playertag/textures/W_UF.png | Bin 0 -> 88 bytes mods/playertag/textures/W_UG.png | Bin 0 -> 108 bytes mods/playertag/textures/W_UH.png | Bin 0 -> 87 bytes mods/playertag/textures/W_UI.png | Bin 0 -> 88 bytes mods/playertag/textures/W_UJ.png | Bin 0 -> 94 bytes mods/playertag/textures/W_UK.png | Bin 0 -> 118 bytes mods/playertag/textures/W_UL.png | Bin 0 -> 83 bytes mods/playertag/textures/W_UM.png | Bin 0 -> 105 bytes mods/playertag/textures/W_UN.png | Bin 0 -> 113 bytes mods/playertag/textures/W_UO.png | Bin 0 -> 100 bytes mods/playertag/textures/W_UP.png | Bin 0 -> 97 bytes mods/playertag/textures/W_UQ.png | Bin 0 -> 106 bytes mods/playertag/textures/W_UR.png | Bin 0 -> 109 bytes mods/playertag/textures/W_US.png | Bin 0 -> 110 bytes mods/playertag/textures/W_UT.png | Bin 0 -> 85 bytes mods/playertag/textures/W_UU.png | Bin 0 -> 91 bytes mods/playertag/textures/W_UV.png | Bin 0 -> 109 bytes mods/playertag/textures/W_UW.png | Bin 0 -> 110 bytes mods/playertag/textures/W_UX.png | Bin 0 -> 104 bytes mods/playertag/textures/W_UY.png | Bin 0 -> 102 bytes mods/playertag/textures/W_UZ.png | Bin 0 -> 86 bytes mods/playertag/textures/W__.png | Bin 0 -> 139 bytes mods/playertag/textures/W__OLD.png | Bin 0 -> 78 bytes mods/playertag/textures/W_a.png | Bin 0 -> 107 bytes mods/playertag/textures/W_b.png | Bin 0 -> 99 bytes mods/playertag/textures/W_c.png | Bin 0 -> 100 bytes mods/playertag/textures/W_d.png | Bin 0 -> 99 bytes mods/playertag/textures/W_e.png | Bin 0 -> 104 bytes mods/playertag/textures/W_f.png | Bin 0 -> 90 bytes mods/playertag/textures/W_g.png | Bin 0 -> 107 bytes mods/playertag/textures/W_h.png | Bin 0 -> 94 bytes mods/playertag/textures/W_i.png | Bin 0 -> 91 bytes mods/playertag/textures/W_j.png | Bin 0 -> 93 bytes mods/playertag/textures/W_k.png | Bin 0 -> 111 bytes mods/playertag/textures/W_l.png | Bin 0 -> 86 bytes mods/playertag/textures/W_m.png | Bin 0 -> 93 bytes mods/playertag/textures/W_n.png | Bin 0 -> 92 bytes mods/playertag/textures/W_o.png | Bin 0 -> 93 bytes mods/playertag/textures/W_p.png | Bin 0 -> 100 bytes mods/playertag/textures/W_q.png | Bin 0 -> 100 bytes mods/playertag/textures/W_r.png | Bin 0 -> 90 bytes mods/playertag/textures/W_s.png | Bin 0 -> 102 bytes mods/playertag/textures/W_t.png | Bin 0 -> 93 bytes mods/playertag/textures/W_u.png | Bin 0 -> 92 bytes mods/playertag/textures/W_v.png | Bin 0 -> 102 bytes mods/playertag/textures/W_w.png | Bin 0 -> 111 bytes mods/playertag/textures/W_x.png | Bin 0 -> 108 bytes mods/playertag/textures/W_y.png | Bin 0 -> 119 bytes mods/playertag/textures/W_z.png | Bin 0 -> 88 bytes mods/playertag/textures/npcf_tag_bg.png | Bin 0 -> 160 bytes mods/playertag/textures/npcf_trans.png | Bin 0 -> 146 bytes 159 files changed, 179 insertions(+), 9 deletions(-) create mode 100644 mods/playertag/README.md create mode 100644 mods/playertag/api.lua create mode 100644 mods/playertag/depends.txt create mode 100644 mods/playertag/init.lua create mode 100644 mods/playertag/textures/0.png create mode 100644 mods/playertag/textures/1.png create mode 100644 mods/playertag/textures/10.png create mode 100644 mods/playertag/textures/11.png create mode 100644 mods/playertag/textures/12.png create mode 100644 mods/playertag/textures/13.png create mode 100644 mods/playertag/textures/14.png create mode 100644 mods/playertag/textures/15.png create mode 100644 mods/playertag/textures/16.png create mode 100644 mods/playertag/textures/17.png create mode 100644 mods/playertag/textures/18.png create mode 100644 mods/playertag/textures/19.png create mode 100644 mods/playertag/textures/2.png create mode 100644 mods/playertag/textures/20.png create mode 100644 mods/playertag/textures/3.png create mode 100644 mods/playertag/textures/4.png create mode 100644 mods/playertag/textures/5.png create mode 100644 mods/playertag/textures/6.png create mode 100644 mods/playertag/textures/7.png create mode 100644 mods/playertag/textures/8.png create mode 100644 mods/playertag/textures/9.png create mode 100644 mods/playertag/textures/B_-.png create mode 100644 mods/playertag/textures/B_0.png create mode 100644 mods/playertag/textures/B_1.png create mode 100644 mods/playertag/textures/B_2.png create mode 100644 mods/playertag/textures/B_3.png create mode 100644 mods/playertag/textures/B_4.png create mode 100644 mods/playertag/textures/B_5.png create mode 100644 mods/playertag/textures/B_6.png create mode 100644 mods/playertag/textures/B_7.png create mode 100644 mods/playertag/textures/B_8.png create mode 100644 mods/playertag/textures/B_9.png create mode 100644 mods/playertag/textures/B_UA.png create mode 100644 mods/playertag/textures/B_UB.png create mode 100644 mods/playertag/textures/B_UC.png create mode 100644 mods/playertag/textures/B_UD.png create mode 100644 mods/playertag/textures/B_UE.png create mode 100644 mods/playertag/textures/B_UF.png create mode 100644 mods/playertag/textures/B_UG.png create mode 100644 mods/playertag/textures/B_UH.png create mode 100644 mods/playertag/textures/B_UI.png create mode 100644 mods/playertag/textures/B_UJ.png create mode 100644 mods/playertag/textures/B_UK.png create mode 100644 mods/playertag/textures/B_UL.png create mode 100644 mods/playertag/textures/B_UM.png create mode 100644 mods/playertag/textures/B_UN.png create mode 100644 mods/playertag/textures/B_UO.png create mode 100644 mods/playertag/textures/B_UP.png create mode 100644 mods/playertag/textures/B_UQ.png create mode 100644 mods/playertag/textures/B_UR.png create mode 100644 mods/playertag/textures/B_US.png create mode 100644 mods/playertag/textures/B_UT.png create mode 100644 mods/playertag/textures/B_UU.png create mode 100644 mods/playertag/textures/B_UV.png create mode 100644 mods/playertag/textures/B_UW.png create mode 100644 mods/playertag/textures/B_UX.png create mode 100644 mods/playertag/textures/B_UY.png create mode 100644 mods/playertag/textures/B_UZ.png create mode 100644 mods/playertag/textures/B__.png create mode 100644 mods/playertag/textures/B_a.png create mode 100644 mods/playertag/textures/B_b.png create mode 100644 mods/playertag/textures/B_c.png create mode 100644 mods/playertag/textures/B_d.png create mode 100644 mods/playertag/textures/B_e.png create mode 100644 mods/playertag/textures/B_f.png create mode 100644 mods/playertag/textures/B_g.png create mode 100644 mods/playertag/textures/B_h.png create mode 100644 mods/playertag/textures/B_i.png create mode 100644 mods/playertag/textures/B_j.png create mode 100644 mods/playertag/textures/B_k.png create mode 100644 mods/playertag/textures/B_l.png create mode 100644 mods/playertag/textures/B_m.png create mode 100644 mods/playertag/textures/B_n.png create mode 100644 mods/playertag/textures/B_o.png create mode 100644 mods/playertag/textures/B_p.png create mode 100644 mods/playertag/textures/B_q.png create mode 100644 mods/playertag/textures/B_r.png create mode 100644 mods/playertag/textures/B_s.png create mode 100644 mods/playertag/textures/B_t.png create mode 100644 mods/playertag/textures/B_u.png create mode 100644 mods/playertag/textures/B_v.png create mode 100644 mods/playertag/textures/B_w.png create mode 100644 mods/playertag/textures/B_x.png create mode 100644 mods/playertag/textures/B_y.png create mode 100644 mods/playertag/textures/B_z.png create mode 100644 mods/playertag/textures/W_-.png create mode 100644 mods/playertag/textures/W_0.png create mode 100644 mods/playertag/textures/W_1.png create mode 100644 mods/playertag/textures/W_2.png create mode 100644 mods/playertag/textures/W_3.png create mode 100644 mods/playertag/textures/W_4.png create mode 100644 mods/playertag/textures/W_5.png create mode 100644 mods/playertag/textures/W_6.png create mode 100644 mods/playertag/textures/W_7.png create mode 100644 mods/playertag/textures/W_8.png create mode 100644 mods/playertag/textures/W_9.png create mode 100644 mods/playertag/textures/W_UA.png create mode 100644 mods/playertag/textures/W_UB.png create mode 100644 mods/playertag/textures/W_UC.png create mode 100644 mods/playertag/textures/W_UD.png create mode 100644 mods/playertag/textures/W_UE.png create mode 100644 mods/playertag/textures/W_UF.png create mode 100644 mods/playertag/textures/W_UG.png create mode 100644 mods/playertag/textures/W_UH.png create mode 100644 mods/playertag/textures/W_UI.png create mode 100644 mods/playertag/textures/W_UJ.png create mode 100644 mods/playertag/textures/W_UK.png create mode 100644 mods/playertag/textures/W_UL.png create mode 100644 mods/playertag/textures/W_UM.png create mode 100644 mods/playertag/textures/W_UN.png create mode 100644 mods/playertag/textures/W_UO.png create mode 100644 mods/playertag/textures/W_UP.png create mode 100644 mods/playertag/textures/W_UQ.png create mode 100644 mods/playertag/textures/W_UR.png create mode 100644 mods/playertag/textures/W_US.png create mode 100644 mods/playertag/textures/W_UT.png create mode 100644 mods/playertag/textures/W_UU.png create mode 100644 mods/playertag/textures/W_UV.png create mode 100644 mods/playertag/textures/W_UW.png create mode 100644 mods/playertag/textures/W_UX.png create mode 100644 mods/playertag/textures/W_UY.png create mode 100644 mods/playertag/textures/W_UZ.png create mode 100644 mods/playertag/textures/W__.png create mode 100644 mods/playertag/textures/W__OLD.png create mode 100644 mods/playertag/textures/W_a.png create mode 100644 mods/playertag/textures/W_b.png create mode 100644 mods/playertag/textures/W_c.png create mode 100644 mods/playertag/textures/W_d.png create mode 100644 mods/playertag/textures/W_e.png create mode 100644 mods/playertag/textures/W_f.png create mode 100644 mods/playertag/textures/W_g.png create mode 100644 mods/playertag/textures/W_h.png create mode 100644 mods/playertag/textures/W_i.png create mode 100644 mods/playertag/textures/W_j.png create mode 100644 mods/playertag/textures/W_k.png create mode 100644 mods/playertag/textures/W_l.png create mode 100644 mods/playertag/textures/W_m.png create mode 100644 mods/playertag/textures/W_n.png create mode 100644 mods/playertag/textures/W_o.png create mode 100644 mods/playertag/textures/W_p.png create mode 100644 mods/playertag/textures/W_q.png create mode 100644 mods/playertag/textures/W_r.png create mode 100644 mods/playertag/textures/W_s.png create mode 100644 mods/playertag/textures/W_t.png create mode 100644 mods/playertag/textures/W_u.png create mode 100644 mods/playertag/textures/W_v.png create mode 100644 mods/playertag/textures/W_w.png create mode 100644 mods/playertag/textures/W_x.png create mode 100644 mods/playertag/textures/W_y.png create mode 100644 mods/playertag/textures/W_z.png create mode 100644 mods/playertag/textures/npcf_tag_bg.png create mode 100644 mods/playertag/textures/npcf_trans.png diff --git a/mods/ctf_pvp_engine b/mods/ctf_pvp_engine index 8b12a8e..87d0438 160000 --- a/mods/ctf_pvp_engine +++ b/mods/ctf_pvp_engine @@ -1 +1 @@ -Subproject commit 8b12a8e4f12ec12a076a161b7ed808ab147e785f +Subproject commit 87d0438db65a41780d02431aee5a286d65a86059 diff --git a/mods/ctf_userlimit/init.lua b/mods/ctf_userlimit/init.lua index c3b62c0..3fa8280 100644 --- a/mods/ctf_userlimit/init.lua +++ b/mods/ctf_userlimit/init.lua @@ -1,7 +1,9 @@ -minetest.register_can_bypass_userlimit(function(name, ip) - local pstat, discard = ctf_stats.player_or_nil(name) - local actual_max_users = tonumber(minetest.settings:get("max_users")) + - tonumber(minetest.settings:get("max_extra_users") or "10") - local req_score = tonumber(minetest.settings:get("userlimit_bypass_required_score") or "10000") - return pstat and pstat.score > req_score and #minetest.get_connected_players() < actual_max_users -end) +if minetest.register_can_bypass_userlimit then + minetest.register_can_bypass_userlimit(function(name, ip) + local pstat, discard = ctf_stats.player_or_nil(name) + local actual_max_users = tonumber(minetest.settings:get("max_users")) + + tonumber(minetest.settings:get("max_extra_users") or "10") + local req_score = tonumber(minetest.settings:get("userlimit_bypass_required_score") or "10000") + return pstat and pstat.score > req_score and #minetest.get_connected_players() < actual_max_users + end) +end diff --git a/mods/gauges/init.lua b/mods/gauges/init.lua index f628709..84e6daf 100644 --- a/mods/gauges/init.lua +++ b/mods/gauges/init.lua @@ -48,7 +48,7 @@ local function add_HP_gauge(name) local pos = player:get_pos() local ent = minetest.add_entity(pos, "gauges:hp_bar") if ent ~= nil then - ent:set_attach(player, "", {x = 0, y = 10, z = 0}, {x = 0, y = 0, z = 0}) + ent:set_attach(player, "", {x = 0, y = 9, z = 0}, {x = 0, y = 0, z = 0}) ent = ent:get_luaentity() ent.wielder = player:get_player_name() end diff --git a/mods/playertag/README.md b/mods/playertag/README.md new file mode 100644 index 0000000..130f369 --- /dev/null +++ b/mods/playertag/README.md @@ -0,0 +1,5 @@ +This mod hides the existing tags, and adds entity based tags that are only as visible as the player. + +Some code taken from gauges (CC0 1.0) https://forum.minetest.net/viewtopic.php?t=10250 +And also some code and textures from npcf (LGPL for code, WTFPL for textures) https://forum.minetest.net/viewtopic.php?t=7321 +My part of the code is WTFPL. \ No newline at end of file diff --git a/mods/playertag/api.lua b/mods/playertag/api.lua new file mode 100644 index 0000000..60b0dd9 --- /dev/null +++ b/mods/playertag/api.lua @@ -0,0 +1,148 @@ +local nametags = {} +local tag_settings = {} +local ATTACH_POSITION = minetest.rgba and {x=0,y=20,z=0} or {x=0,y=10,z=0} + +local TYPE_BUILTIN = 0 +local TYPE_ENTITY = 1 +playertag = { + TYPE_BUILTIN = TYPE_BUILTIN, + TYPE_ENTITY = TYPE_ENTITY, +} + +local function add_entity_tag(player) + local ent = minetest.add_entity(player:get_pos(), "playertag:tag") + + -- Build name from font texture + local color = "W" + local texture = "npcf_tag_bg.png" + local x = math.floor(134 - ((player:get_player_name():len() * 11) / 2)) + local i = 0 + player:get_player_name():gsub(".", function(char) + if char:byte() > 64 and char:byte() < 91 then + char = "U"..char + end + texture = texture.."^[combine:84x14:"..(x+i)..",0="..color.."_"..char..".png" + i = i + 11 + end) + ent:set_properties({ textures={texture} }) + + -- Attach to player + ent:set_attach(player, "", ATTACH_POSITION, {x=0,y=0,z=0}) + ent:get_luaentity().wielder = player:get_player_name() + + -- Store + nametags[player:get_player_name()] = ent + + -- Hide fixed nametag + player:set_nametag_attributes({ + color = {a = 0, r = 0, g = 0, b = 0} + }) +end + +local function remove_entity_tag(player) + tag_settings[player:get_player_name()] = nil + local tag = nametags[player:get_player_name()] + if tag then + tag:remove() + tag = nil + end +end + +local function update(player, settings) + tag_settings[player:get_player_name()] = settings + + if settings.type == TYPE_BUILTIN then + minetest.log("error", "type: builtin") + remove_entity_tag(player) + print(dump(settings.color)) + player:set_nametag_attributes({ + color = settings.color + }) + elseif settings.type == TYPE_ENTITY then + minetest.log("error", "type: entity") + add_entity_tag(player) + end +end + +function playertag.set(player, type, color) + local oldset = tag_settings[player:get_player_name()] + color = color or { a=255, r=255, g=255, b=255 } + if not oldset or oldset.type ~= type or oldset.color ~= color then + minetest.log("error", "updating") + update(player, { type = type, color = color }) + end +end + +local nametag = { + npcf_id = "nametag", + physical = false, + collisionbox = {x=0, y=0, z=0}, + visual = "sprite", + textures = {"default_dirt.png"},--{"npcf_tag_bg.png"}, + visual_size = {x=2.16, y=0.18, z=2.16},--{x=1.44, y=0.12, z=1.44}, +} + +function nametag:on_activate(staticdata, dtime_s) + if staticdata == "expired" then + minetest.log("error", "Nametag expired, removing") + local name = self.wielder and self.wielder:get_player_name() + if name and nametags[name] == self.object then + nametags[name] = nil + end + + self.object:remove() + end +end + +function nametag:get_staticdata() + return "expired" +end + +minetest.register_chatcommand("a", { + func = function(name) + playertag.set(minetest.get_player_by_name(name), TYPE_BUILTIN) + end +}) + +function nametag:on_step(dtime) + local name = self.wielder + local wielder = name and minetest.get_player_by_name(name) + if not wielder then + minetest.log("error", "no such wielder, removing") + self.object:remove() + elseif not tag_settings[name] or tag_settings[name].type ~= TYPE_ENTITY then + minetest.log("error", "wrong player setting, removing") + if name and nametags[name] == self.object then + nametags[name] = nil + end + + self.object:remove() + end +end + +minetest.register_entity("playertag:tag", nametag) + +local function step() + for _, player in pairs(minetest.get_connected_players()) do + local settings = tag_settings[player:get_player_name()] + if settings and settings.type == TYPE_ENTITY then + local ent = nametags[player:get_player_name()] + if not ent or ent:get_luaentity() == nil then + add_entity_tag(player) + else + ent:set_attach(player, "", ATTACH_POSITION, {x=0,y=0,z=0}) + end + end + end + + minetest.after(10, step) +end +minetest.after(10, step) + +minetest.register_on_joinplayer(function(player) + playertag.set(player, TYPE_ENTITY) +end) + +minetest.register_on_leaveplayer(function (player) + remove_entity_tag(player) +end) diff --git a/mods/playertag/depends.txt b/mods/playertag/depends.txt new file mode 100644 index 0000000..5e62704 --- /dev/null +++ b/mods/playertag/depends.txt @@ -0,0 +1 @@ +ctf_flag diff --git a/mods/playertag/init.lua b/mods/playertag/init.lua new file mode 100644 index 0000000..342ed8a --- /dev/null +++ b/mods/playertag/init.lua @@ -0,0 +1,14 @@ +dofile(minetest.get_modpath("playertag") .. "/api.lua") + +ctf_flag.register_on_pick_up(function(attname, flag) + playertag.set(minetest.get_player_by_name(attname), playertag.TYPE_BUILTIN, + { a=255, r=255, g=0, b=0 }) +end) + +ctf_flag.register_on_drop(function(attname, flag) + playertag.set(minetest.get_player_by_name(attname), playertag.TYPE_ENTITY) +end) + +ctf_flag.register_on_capture(function(attname, flag) + playertag.set(minetest.get_player_by_name(attname), playertag.TYPE_ENTITY) +end) diff --git a/mods/playertag/textures/0.png b/mods/playertag/textures/0.png new file mode 100644 index 0000000000000000000000000000000000000000..dcd942622d5da0fd4d2838da168b5d62bfd03a53 GIT binary patch literal 110 zcmeAS@N?(olHy`uVBq!ia0vp^B0$W@!3HGnP3ltxQY^(zo*^7SP{WbZ0pxQQctjR6 zF!0R*;!?&A4e1J?pn#`~V+hC0Z<4 literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/15.png b/mods/playertag/textures/15.png new file mode 100644 index 0000000000000000000000000000000000000000..c67add999b66f98173b082b81c76640f2ab0989d GIT binary patch literal 114 zcmeAS@N?(olHy`uVBq!ia0vp^B0$W@!3HGnP3ltxQY^(zo*^7SP{WbZ0pxQQctjR6 zF!0R*;!?&A4e1J?popi7V+hC0;<%FOVx#jXh`&*16m=d#Wz Gp$P!hB^r?c literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/17.png b/mods/playertag/textures/17.png new file mode 100644 index 0000000000000000000000000000000000000000..05e3bb68a919808bcebf4d5c93cbc4fbed6dbd58 GIT binary patch literal 114 zcmeAS@N?(olHy`uVBq!ia0vp^B0$W@!3HGnP3ltxQY^(zo*^7SP{WbZ0pxQQctjR6 zF!0R*;!?&A4e1J?popi7V+hC0f literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/20.png b/mods/playertag/textures/20.png new file mode 100644 index 0000000000000000000000000000000000000000..d00014614223cb5fa45c1825720a94300dc18a6d GIT binary patch literal 110 zcmeAS@N?(olHy`uVBq!ia0vp^B0$W@!3HGnP3ltxQY^(zo*^7SP{WbZ0pxQQctjR6 zF!0R*;!?&A4e1J?pn#`~V+hC0PyvIdtDnm{ Hr-UW|*}xgW literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/6.png b/mods/playertag/textures/6.png new file mode 100644 index 0000000000000000000000000000000000000000..ea7ea4636a2ebaadbf25595e6b27ec6e5e838881 GIT binary patch literal 116 zcmeAS@N?(olHy`uVBq!ia0vp^B0$W@!3HGnP3ltxQY^(zo*^7SP{WbZ0pxQQctjR6 zF!0R*;!?&A4e1J?pqQtNV+hC0gTe~ HDWM4f!lM|P literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_-.png b/mods/playertag/textures/B_-.png new file mode 100644 index 0000000000000000000000000000000000000000..cbabc37c3900d24760a6bac8d6a1e7cef8d100e9 GIT binary patch literal 85 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>8BZ6-kcv6U2@4^J1zkcv6U2@)a=f>VG0w-;0G znUTcv|9`U9F}1eKAt8lof4Blo4IYNKa204A%M&*BIVKgeWM&Ub2cK1pRKU+CZr?Q& bco`UG+>rh099#AhXeNWFtDnm{r-UW|_wXp+ literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_1.png b/mods/playertag/textures/B_1.png new file mode 100644 index 0000000000000000000000000000000000000000..d671e936cc1637653e9ef1809f6ae9813944da3c GIT binary patch literal 116 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>Yfl%)kcv6U2@+=>{IBP5WA(Wq zn#At2qU+!P^n`?zBTHwn9z3#^quFHaZ8kcv5PCmQlGC~z=0{`jx| zSS#}=A0OX6x1B9gXXhPwJ;PJv_!*sdy(5i~{@`peE f37h)wk@L)5_toF6?)n-BG?l^A)z4*}Q$iB}+K4YU literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_3.png b/mods/playertag/textures/B_3.png new file mode 100644 index 0000000000000000000000000000000000000000..54cceab0aada5ad4aa762fad78f61e14aa6edc41 GIT binary patch literal 129 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>4^J1zkcv6U2@)a=f>VG0w--|_ zFzuPaCAqP~@yN^q?ITY%Cxp9*{rE3`Q!~QHrBwZ<+TFVdQ&MBb@05Xg#N&o-= literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_4.png b/mods/playertag/textures/B_4.png new file mode 100644 index 0000000000000000000000000000000000000000..ffc7f0561685987878f4add52094062c99a563cd GIT binary patch literal 128 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>cTX3`kcv5PCmM1wDDW@`|NsBo zszYN|MrqLph1-SR4c80xvsHA@3C!&7-W2I@Ei~}iRmZq+>z!S@xERFN<~cnKws8OS bd=`&fj0ne;kLw$NMlyK1`njxgN@xNAGe@_?3kcv6U2@)a=f=++``#VS~ zGXnv)nPW^tr%3vQB{NuqIqv@DSf2P%Vbku!M?d~Hr3t$TzqL8hk|#QmVK!Tcp_`9q hi9?A;57Qk6hU$e<90%;%6M#lDc)I$ztaD0e0swnUDC7VD literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_6.png b/mods/playertag/textures/B_6.png new file mode 100644 index 0000000000000000000000000000000000000000..a75bec46041b812e2cadc25f15e87a6e02bf06db GIT binary patch literal 142 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$LBXP)`@fkcv6U2@)a=g26BT*PEzD zTrv3bzkj8`Y>6=8!mIzopr0Q09Sj{pDw literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_7.png b/mods/playertag/textures/B_7.png new file mode 100644 index 0000000000000000000000000000000000000000..fd55d2fff80b25b727285688066d8c092139d263 GIT binary patch literal 107 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>BTpB{kcv6U2@)a=f=++``?mzS zDV_QKf4;@x7t1Dea?E`a=|Ab@6bt5hjtgfc7dKQeFf<&O{IVrMLlmf+!PC{xWt~$( F695&gB2)kX literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_8.png b/mods/playertag/textures/B_8.png new file mode 100644 index 0000000000000000000000000000000000000000..be1e67ca91035df0dfe9f37328da87eba8063daa GIT binary patch literal 128 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>cTX3`kcv6U2@)a=f>VG0w--|_ zFzuPqB{7l5K{WkPDwmnvtfWN;|Nozn=O(KBz_BEKVuF#KBah`I8;gX62M;u;ySOoa aWMJ@{t@-heD-SQwNCr<=KbLh*2~7ZrktW>$ literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_9.png b/mods/playertag/textures/B_9.png new file mode 100644 index 0000000000000000000000000000000000000000..c1f6bc9970e65c8d510632ce4548c46cfff81533 GIT binary patch literal 138 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$LBXKu;IPkcv5PCm8ZEC~z>Z{P;iq z*hvAMWxFgZW-oO*_=a=B{CBOaYi3%{)?O=?8Fkt7@!^F(R}~wb?_JHxTxg|WvYPfr)ekcv6U2@)a=g26BT*Q;cT zRI16OB^a_e8*W-Tqeezen6<-9GFEY!h3B~h#Wx~rxIS1iE4fcH_6R!Du|ckSjp7_5 cE)52TC)(2gbN9+S0u5#GboFyt=akR{048K4pa1{> literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_UB.png b/mods/playertag/textures/B_UB.png new file mode 100644 index 0000000000000000000000000000000000000000..3363fad363c9a1b45ea66234a1faa2490908da1c GIT binary patch literal 113 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>3r`ovkcv6U2@)a=f=++`_q%f{ z&pPn`{|(axUB-eNB#x#rbpy3mlzgPnn0RgQ`A+0wN@GZ;Kw L{an^LB{Ts5Ikq26 literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_UC.png b/mods/playertag/textures/B_UC.png new file mode 100644 index 0000000000000000000000000000000000000000..a44f4066d862580f9b8ee78213a9f26fff96c937 GIT binary patch literal 131 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>FHaZ8kcv6U2@)a=f>VG0w-;0G znUTcv|9^6Lk3h20IYy1P2S%cyh7;AC@AxiB;*cmfsv+0HYUBElCz!*K$2(-v>^{?7 d?u?lX4Da}*n2)nvQvjOE;OXk;vd$@?2>`&7C7J*L literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_UD.png b/mods/playertag/textures/B_UD.png new file mode 100644 index 0000000000000000000000000000000000000000..a4789f2e4682b855ded446a885f9ebc6c6fce74b GIT binary patch literal 119 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>J5LwKkcv6U2@)a=f=++`_dCxL z>`zMZOkq}dLPw{u|y>E5izDNPoqi=EjQkJn=V7;t|c$zSW}o8+L`$zO8&0j Q2sDYo)78&qol`;+0JHxfxc~qF literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_UE.png b/mods/playertag/textures/B_UE.png new file mode 100644 index 0000000000000000000000000000000000000000..4cd84f349b88dfe57e7ee795a0b1a7c921f253dc GIT binary patch literal 100 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>ZBG}+kcv6U2@)a=f=++``?mzS wiIp(coSNxT$o5u*zncG&o{5KHg~$R1h7MIWxy06nc|dIpp00i_>zopr0AObsy#N3J literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_UF.png b/mods/playertag/textures/B_UF.png new file mode 100644 index 0000000000000000000000000000000000000000..c59146af8a01bcd5449a035bc5f34d6e9c3a68c3 GIT binary patch literal 98 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>O-~ockcv6U2@)a=f(QTnpWhJV wCYIB*V~X*_M?AMQ<-W-+nfoZv!Hj`n#|jqtlecfh05vgqy85}Sb4q9e0I&!hk^lez literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_UG.png b/mods/playertag/textures/B_UG.png new file mode 100644 index 0000000000000000000000000000000000000000..d936a436eba519f7af7de5d2ca2ebf4df84aa498 GIT binary patch literal 136 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>e@_?3kcv6U2@)a=f>VG0w-;0G znUTcv|9^6Lk3h20p&~aE=YpACTpb28eU9qfXx-S(#dq|?LD!%R1qR_&ok9 jQQh@2VsW*|1U3f$2r=Gg-O2xfMl*Q2`njxgN@xNAOy(?S literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_UH.png b/mods/playertag/textures/B_UH.png new file mode 100644 index 0000000000000000000000000000000000000000..5520b5b4b8f1c501b4e621db598b44c83168b49c GIT binary patch literal 104 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>eNPw1kcv6U2@*aJ{?~IH(?9Og zHL=;nkXuW9y81?~w3H(uO$G@QDkhY5xij8mU@+(75e(7vSPaz4;OXk;vd$@?2>=qU B93ub# literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_UI.png b/mods/playertag/textures/B_UI.png new file mode 100644 index 0000000000000000000000000000000000000000..82a957f1c026c5121b70bac0230393a34b1a93df GIT binary patch literal 98 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>O-~ockcv6U2@)a=f(QTnpWhJV vCL{F!fAZxsE?vfMqLbP0l+XkKc}W^M literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_UJ.png b/mods/playertag/textures/B_UJ.png new file mode 100644 index 0000000000000000000000000000000000000000..e575f3da157945bc395caa3bfd279ff524060dea GIT binary patch literal 109 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>6Hgb%kcv6U2@)a=g26BT*Xx|x zu;TD4!G$wBMbdjzj;=W9vhidF!`+gQ*&HtBffsGKIG7op+!tb9Zun#lP(OpGtDnm{ Hr-UW|F*zaI literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_UK.png b/mods/playertag/textures/B_UK.png new file mode 100644 index 0000000000000000000000000000000000000000..ca36d5ef841870cfab10627712a10d1abf3e8d91 GIT binary patch literal 140 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$LBXU{4pvkcv6U2@)a=f=++`^FK98 z3TK;`u9PEpNP(#PFg{NQrIw=c@@cp25@A&t;ucLK6UKt|~VG literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_UL.png b/mods/playertag/textures/B_UL.png new file mode 100644 index 0000000000000000000000000000000000000000..265ee01be688d2f681ac404feae574cbd5fde8e1 GIT binary patch literal 98 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>O-~ockcv6U2@*LE{?~IH2R>R)!lV8yHa0i6Kc5ye@G~&5yRiwGsYU$*YGUwo^>bP0l+XkKd7c`% literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_UM.png b/mods/playertag/textures/B_UM.png new file mode 100644 index 0000000000000000000000000000000000000000..b27f44e384d242bd16803dea8c45754ed9767fe9 GIT binary patch literal 124 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>XHOT$kcv6U2@)a=f=++`_p2P~ zNLbuuJTb{=X;)&HvNhxCq?GSTpH@Ch^HF~gz_VHEuBV0Xv5*dT!!if!ql+7I7#OC^ WPfr)ekcv6U2@)a=f=++`_p2P~ zSjD1t{KN^Du9FcW%D0=s4R;B1%<8#a;&r#@wq}LTu@Wx6qc?ojAEbp`{-|-xWbTp+ d609lA4Eaqw64Pwbn}CKgc)I$ztaD0e0syM@D?tDN literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_UO.png b/mods/playertag/textures/B_UO.png new file mode 100644 index 0000000000000000000000000000000000000000..9b1752fa8916e82cb13699631acd7894646e0fe8 GIT binary patch literal 120 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>drud~kcv6U2@)a=f>VG0w-;0G znUTcv|9`TUn`pAqArXs&L%Ft_(mHH}%Ummb<$}5S literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_UP.png b/mods/playertag/textures/B_UP.png new file mode 100644 index 0000000000000000000000000000000000000000..941840d19296cbe7667f85eef7bdb0934f5aa3f2 GIT binary patch literal 117 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>8&4O5^{)z4*}Q$iB}8h#_k literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_UQ.png b/mods/playertag/textures/B_UQ.png new file mode 100644 index 0000000000000000000000000000000000000000..c9b7886d6506a47be9577c4d776fffcf9ce4cdd0 GIT binary patch literal 130 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>Pfr)ekcv6U2@)a=f>VG0w-;0G znUTcv|9`TUn`pAqArXs&L%Ft_(mHH}%Ummb<$}5zopr0Q)E@G5`Po literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_UR.png b/mods/playertag/textures/B_UR.png new file mode 100644 index 0000000000000000000000000000000000000000..7bc810b1047c8e0b320e234df2363e5fc50c83bc GIT binary patch literal 130 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>Pfr)ekcv6U2@)a=f=++`_q%f{ z^Bv{j^l_GuoXHWzK}BDRk$R{BAOiG?~|e6v)t9FVdQ&MBb@03_KYEdT%j literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_US.png b/mods/playertag/textures/B_US.png new file mode 100644 index 0000000000000000000000000000000000000000..a481a1920a458b5596e29a35b45607a956fe8f0d GIT binary patch literal 147 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$LBXC{Gv1kcv5PCm8ZEC~z=0{`jx| zI6-AW!zRlcyhUqW8`N9MQpyAp3)%x%&-}d+I3?+MVwSkCYJ%rCEA42$TTwfh=N0Z% u75Qv(ne(dBTOIqUZ~6B#23Wk)4r8D2QGuoWUc_3UEexKnelF{r5}E*)$1(Q+ literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_UT.png b/mods/playertag/textures/B_UT.png new file mode 100644 index 0000000000000000000000000000000000000000..d4b1f3331511f15ad8411ce096963438f839371b GIT binary patch literal 93 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>6;Bt(kcv6U2@)a=f=++``!`Dd q|DSB!&?%zqCd%)0ba6ut0|Qeso4}tBYxe=wGkCiCxvX9Zwg>kcv6U2@*aJ{?~IH(?9Og yHF0s*%f%9$3Ei$ChHgHdB?nG)Xqs_(urMsUCB!1Usw4uakHOQ`&t;ucLK6V%8yt=R literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_UV.png b/mods/playertag/textures/B_UV.png new file mode 100644 index 0000000000000000000000000000000000000000..8bba9355b0e34c417bc7f640da883f0927777698 GIT binary patch literal 128 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>cTX3`kcv6U2@)a=6B{4?uh*C? zxZP-mlm)vh!|EipL(`Ob6rBwHgfGl((sG-0@`)Am-6)^*i{~UGl6Y@sU5QwFqgTe~DWM4fw74mK literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_UW.png b/mods/playertag/textures/B_UW.png new file mode 100644 index 0000000000000000000000000000000000000000..e954ec27b892736e12ca9ca25c061fe00f6961e9 GIT binary patch literal 122 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>M^6{Wkcv6U2@)a=6B{4?uh*C? zxZS8jN-fA|+1w?Z)oQ+we5ISrsm^0L)c)h)8_&?)+Njgp$Eh` UR!b@H0S#mDboFyt=akR{0A2JV7XSbN literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_UX.png b/mods/playertag/textures/B_UX.png new file mode 100644 index 0000000000000000000000000000000000000000..01c7f0cbb73872f27a9fb6e3ebb5587278b7d038 GIT binary patch literal 114 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>OHUWakcv6U2@*aJ{?~J;Me)s6 zSS2Ambxw1puyPr1L8eIMq&be}M-9Foy3?ioCR5~`iu-pB1zrY*oLRb0ZY-D91RBEN M>FVdQ&MBb@0Bcqu#Q*>R literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_UY.png b/mods/playertag/textures/B_UY.png new file mode 100644 index 0000000000000000000000000000000000000000..e174285cbd333951dbd2cf7fc3a1150f8e2e5a32 GIT binary patch literal 116 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>Yfl%)kcv6U2@)a=f=++`^FK98 z3TK<_E_gt|MKFEQfzTJr9&h4Z{X0N(lfX5HO~ncgD*Sw|M;ABbFfi;;l>L^yGQ=Ke O41=eupUXO@geCypDkDh% literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_UZ.png b/mods/playertag/textures/B_UZ.png new file mode 100644 index 0000000000000000000000000000000000000000..3ef4caf7e935f14289212c56e825415954a1b598 GIT binary patch literal 105 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>15X#nkcv6U2@)a=f=++``?mzS zDV_QKf4;@x7t1Dea?CZ^GA}4Sz;eb4*}IDwtQi<4`zSy6|GHZSsF%Uh)z4*}Q$iB} Dws0W> literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B__.png b/mods/playertag/textures/B__.png new file mode 100644 index 0000000000000000000000000000000000000000..0afd4ebe40ffd1e65c8daaa1d39f1d3767ba5021 GIT binary patch literal 83 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>DNh&2kcv6U2@rIDh5wiKbLh*2~7aNXcRI4 literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_a.png b/mods/playertag/textures/B_a.png new file mode 100644 index 0000000000000000000000000000000000000000..90665849534b3112fbcae68ec786e0d7179dc6a7 GIT binary patch literal 132 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>Z%-G;kcv6U2@=m51P}iCFW+sV z%*7w7sLXd(pis?bn$e=}4G$(AV2cRYdE-v+LW#?@H%u1ql-ytZp<;r{(HZZK3v2fD f?D%WM<-x-6QbR~W^y*6!ps@^|u6{1-oD!M<{Vy#3 literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_b.png b/mods/playertag/textures/B_b.png new file mode 100644 index 0000000000000000000000000000000000000000..170f2d42ef5e954806a0bc843d8641f0c6713603 GIT binary patch literal 128 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>cTX3`kcv6U2@9Bi{FiSkWL696 zQT8#ZeaAt@aO;f4yGAOEp9qpf@%x17tCd6U!U~Eplze#!Y0)q3CTj&QyL1= a3=Gzvg`}^~HZTGj$>8bg=d#Wzp$PzuP$m}u literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_c.png b/mods/playertag/textures/B_c.png new file mode 100644 index 0000000000000000000000000000000000000000..afebbedb9b36e18d0242662f636d30f452415bf2 GIT binary patch literal 115 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>D^C~4kcv6U2@=m51gHM~Z!f0W zGb4%T|NmsIV`^=&0?vJ{9MccYJ?Ii)$i%ZEX^}HaXwMxFN!BHd3_qmgzfM1Ls}yJo NgQu&X%Q~loCIIv3Bm@8e literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_d.png b/mods/playertag/textures/B_d.png new file mode 100644 index 0000000000000000000000000000000000000000..4934258d670092459756fbd8bad5dad0a5cd54b3 GIT binary patch literal 123 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>Cr=m0kcv6U2@(n){@b%SGYD%& zc?O+n%GBjCFnSco6U-6ZvPSTz{=1g UNV(&Gfu=Edy85}Sb4q9e03y91+W-In literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_e.png b/mods/playertag/textures/B_e.png new file mode 100644 index 0000000000000000000000000000000000000000..bf8af63be7a80c6bf1b7a46c4e8f9627022dbeab GIT binary patch literal 122 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>M^6{Wkcv6U2@=m51gHM~Z!f0W zGb4%T|NmsIV`^=&0?vJ%7T28^xR+_VXdineX`ygZ(nUkf$|d0FiQXxJ4pIyZSuToS Ut!MvU2{eqs)78&qol`;+0M+^>egFUf literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_f.png b/mods/playertag/textures/B_f.png new file mode 100644 index 0000000000000000000000000000000000000000..7a8ed65141b0f7e6b2dadd0f88e38f6953da38c0 GIT binary patch literal 102 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>T~8Oskcv6U2@6CMj_CdQZ!fm= z#+85n`(q86nT2PbJCG+;JI8RJ-8^U5vY;D)78&qol`;+0DE&F AssI20 literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_g.png b/mods/playertag/textures/B_g.png new file mode 100644 index 0000000000000000000000000000000000000000..ac2e1984171f526075ae48bdc0427a46ccd83bfd GIT binary patch literal 140 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$LBXU{4pvkcv5XCm!TtP~dRh{^EcA zO+LX$<5yx|9Xz(VsC}@Mi8fZ>_+5n|#dOlIjgyid|B*YBZj;mZD9Y`*;p(LqcP?JB oW5%6jvNM&xtO~ifIsPpZt9Fx=B!{&%KhSsvPgg&ebxsLQ0PuA&!vFvP literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_h.png b/mods/playertag/textures/B_h.png new file mode 100644 index 0000000000000000000000000000000000000000..82e431b782ad63cef78c6f09cb3c98a07ecba536 GIT binary patch literal 113 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>3r`ovkcv6U2@9Bi{FiSkWL696 zQT8BTpB{kcv6U2@8yW{FiSEWE4L8 zCfQ}Hl=CdXU>@dxgJ&0aO=L8=u+f#HEhtGTLnMKn!M22lJ8`b;KA>&}Pgg&ebxsLQ E0EJu~y8r+H literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_j.png b/mods/playertag/textures/B_j.png new file mode 100644 index 0000000000000000000000000000000000000000..e66205c8d77daf87adc2ef83934e9d2b3a631b27 GIT binary patch literal 112 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>b59q?kcv6U2@(t+{@b%CGYFr3 zljO2hY_*Wvn@1WAPUihuaxGnj3};rPB{Zn3+^ pPLN~1EO+Gt^CA2B=6{x4X1L@aCMGg1`zz3V22WQ%mvv4FO#t}gF}VN$ literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_l.png b/mods/playertag/textures/B_l.png new file mode 100644 index 0000000000000000000000000000000000000000..da5fda1341205387563e3cc8b091bac86071b09c GIT binary patch literal 107 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>BTpB{kcv6U2@6CMTnzsIKdyAP zL$i(X-~Z#wW_F6C_h`wrbS*6G*NsikP*t1T!}NxM;fe}}aCxanGf+2!r>mdKI;Vst E0OmFy_5c6? literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_m.png b/mods/playertag/textures/B_m.png new file mode 100644 index 0000000000000000000000000000000000000000..fd17829800068dbbd75e98896726cb795efd5a0d GIT binary patch literal 102 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>T~8Oskcv6U2@=m51fBl==YMLH zlb59q?kcv6U2@=m51P}iCFRyi^ zBjNB=Ln8wqNPPAGzr51Pjzj^mqbIs1+>8)?%(l48oiUVwVS_S<#7`He)j%T{JYD@< J);T3K0RX6`BFq2) literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_o.png b/mods/playertag/textures/B_o.png new file mode 100644 index 0000000000000000000000000000000000000000..0fcd960fcc3c6e579faac9b3b7ef31895d3dbfa8 GIT binary patch literal 109 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>6Hgb%kcv6U2@=m51gHM~Z!f0W zGb4%T|NmsIV`^=&0?vJ%7T28)1cdakaInknoM^=5!OYOKQ2ML+j*Hqr{S2P2elF{r G5}E+}iy%D! literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_p.png b/mods/playertag/textures/B_p.png new file mode 100644 index 0000000000000000000000000000000000000000..c298ac2e228ec5086e473e15c6fe058dd2368b75 GIT binary patch literal 138 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$LBXKu;IPkcv5XC!XbEP~d3Z{^D=^ zO}@VwOG~&G&26h&-2OgPo9i{wrF05bn@Tt|>Yfl3j&fw|l=d#Wzp$P!J-7xb2 literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_q.png b/mods/playertag/textures/B_q.png new file mode 100644 index 0000000000000000000000000000000000000000..9bdffb784b8dc7045ab58b12e204196617d18eb7 GIT binary patch literal 130 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>Pfr)ekcv6U2@=m51gHM~Z$C*y zx#|3g69<5xY2}28g2Box28rPv=iCB)WF!uCZDbWcx4@b0|9@wLvbP0l+XkKmC7h8 literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_r.png b/mods/playertag/textures/B_r.png new file mode 100644 index 0000000000000000000000000000000000000000..3bececceec43f6e6f85e272e6da6601440e2faac GIT binary patch literal 103 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>Jx>?Mkcv6U2@=m51gHM~Zyz#4 z@L=1=LM=B92R5H27R>EQKEW$fKYa+a;X1*_;8)Kkx}y2-1)xp_Pgg&ebxsLQ06QKY AvH$=8 literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_s.png b/mods/playertag/textures/B_s.png new file mode 100644 index 0000000000000000000000000000000000000000..c0f4031d683e22e59fd5e92386aed650ad0fc300 GIT binary patch literal 133 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>A5Ry@kcv5PCm3=u7;rEz{_;P5 zo3r@Qj#AyTX$BR76){5Y#+#IGHb=(w%`r|9>X8-^I literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_t.png b/mods/playertag/textures/B_t.png new file mode 100644 index 0000000000000000000000000000000000000000..4078cf08f84f63aa46ccd344d093203f1e2312dd GIT binary patch literal 112 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>b59q?kcv6U2@+=>{IAbh@Oj+yt4Km6iEA|Nr+aV9PUDB_a8MBj-!OF-gtE4HgUx27)}?TwH%H0F7YqboFyt I=akR{034hjM*si- literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_u.png b/mods/playertag/textures/B_u.png new file mode 100644 index 0000000000000000000000000000000000000000..741b30a6e8e39bb39932399cfbc4b1140e4672a5 GIT binary patch literal 101 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>9Zwg>kcv6U2@;kM{?~IH(>>?X yRk*mzGoVN6UC$2{NeKx_!K9vyEO$mu28KWmK8`o?%lLu%7(8A5T-G@yGywpyRT@(O literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_v.png b/mods/playertag/textures/B_v.png new file mode 100644 index 0000000000000000000000000000000000000000..a7ff8af8a6774b5762664cf163f29a45ea232b9b GIT binary patch literal 105 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>15X#nkcv6U2@;YI{?~IH(?9Ow zdO7f@htbTK^aat~FLicVGN;)Z`Cdqg5j5dC!NMT_T=u=6b@d~lUItHBKbLh*2~7ZP C#~$1O literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_w.png b/mods/playertag/textures/B_w.png new file mode 100644 index 0000000000000000000000000000000000000000..13b6cef16f49b649eeb758bd3ba3bbaa56e61ef6 GIT binary patch literal 122 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>M^6{Wkcv6U2@=m5CN@6&U#~G) zaJx~5lvOl?wAp2!4VhHZ<) Vm}HHQUIH4%;OXk;vd$@?2>_20DINd- literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_x.png b/mods/playertag/textures/B_x.png new file mode 100644 index 0000000000000000000000000000000000000000..7280d8ebecc03eda284aeaa3d720f9e4f158f00b GIT binary patch literal 119 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>J5LwKkcv6U2@;YI{?~J;Me)s6 zuyZz02^2MYST3cNaAbXlpsQT}$r%joNi#Yt?)F@M{-WW<0%gk}H^xi`hDmdD9|&vP R^Z-p_@O1TaS?83{1OOJvBh>%^ literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/B_y.png b/mods/playertag/textures/B_y.png new file mode 100644 index 0000000000000000000000000000000000000000..d1051bf2042616b46de0cc194cc7a54db3fe6cbc GIT binary patch literal 138 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$LBXKu;IPkcv6U2@;YI{?~IHQ$K&; zfXf`mBbV^0^ykcv6U2@=m51P}iCFW+zE zcBe>#?SXMi6xYm-3!d}7PMP83dS6&llZVH}?Tp3&K8777((f1hI)?$ZGkCiCxvXQBN1g5RLQ62@BTpB{5RLQ62@*9A?8O?w6%`G4 zu;@8UbQm$tmT~R6c=JlIkFEJ+krEYmF3*d$Tpp|pYCHEk-rv7a6{wrR)78&qol`;+ E01SW}djJ3c literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_1.png b/mods/playertag/textures/W_1.png new file mode 100644 index 0000000000000000000000000000000000000000..9f2928d28a89073c356dbb50ec5c10e83325f628 GIT binary patch literal 93 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>6;Bt(5RLQ62@-oA*oz3P69Zwg>5RLQ62@*9A?8O?w6%`HH yYL-3N+Gy9ca`l9S4HMT+Fgw`HZ_vZ!#lUcD()>h&_D^;|eGHzielF{r5}E+nIUR`r literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_3.png b/mods/playertag/textures/W_3.png new file mode 100644 index 0000000000000000000000000000000000000000..70162509172f886710420a1c687b20f65ff4d1b9 GIT binary patch literal 105 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>15X#n5RLQ62@*9A?8O?w74^z%i!ti=d#Wzp$P!z CpBz&F literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_4.png b/mods/playertag/textures/W_4.png new file mode 100644 index 0000000000000000000000000000000000000000..02c89d6316bada1b8c395131af189d6f02ac7d1c GIT binary patch literal 110 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>Q%@Ji5RLQ62@-c6*oz3Pov`51 z|BQwONsHz*u4&LX>QX5XE3`Z*M~FrAG4qv9ky~1FtSt--SI;bu^hxg#1{%QN>FVdQ I&MBb@07S(hTL1t6 literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_5.png b/mods/playertag/textures/W_5.png new file mode 100644 index 0000000000000000000000000000000000000000..166d7ae861e058420e3edba59ff191846c046c70 GIT binary patch literal 103 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>Jx>?M5RLQ62@*CB>=_$E4L#K^ zhZ)9wU!<*Y+s&$4Zhqb(Ww!Og9ByAV6vP=Al*QKvPMV&c1Judj>FVdQ&MBb@0I3cd Aw*UYD literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_6.png b/mods/playertag/textures/W_6.png new file mode 100644 index 0000000000000000000000000000000000000000..7b6eecd512c5615cccb1c3611f64b217130a0ca8 GIT binary patch literal 114 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>OHUWa5RLQ62@-Q2*h?K)-7!HT zrb)y3LsX}~xuf~xNk>*O&NucbGEVLCIZqeI5RHk+2@*CB>;)TCn%OoV ja!hy?P<%*3L6m{v@0sdWh5sqGK$Q%hu6{1-oD!M15X#n5RLQ62@*9A?8O?w1sx0L zEK8WI>}jaySkq=8@I~gN+U0Z2U-)_VC>n8jFfuS%oi{ulzbOK!m%-E3&t;ucLK6TB CJshGfx-C5RHk+2@*9A?8O?w6%`HN zGFdQ3Zbh&;$lgS3j3^ HP66Hgb%5RHk+2@-Q2*b6Cm85;Rs z2q`fu6?yzP*;I7C#Lupcj7`fPOg}HK2XCAJ>SyqD^>bP0 Hl+XkK%bXzd literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_UB.png b/mods/playertag/textures/W_UB.png new file mode 100644 index 0000000000000000000000000000000000000000..30f41c54efc07f719c78e12e459b4ecc1c6c31d0 GIT binary patch literal 95 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>HBT4E5RLQ62@*CB?ByDQ4Fexp s_#RYq7d=`r*HFgBn+a literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_UC.png b/mods/playertag/textures/W_UC.png new file mode 100644 index 0000000000000000000000000000000000000000..3348305b85374b29bd3f712c97d04399bca7a172 GIT binary patch literal 108 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>V^0^y5RHk+2@*9A?8O?w70n7K zi7f7TyjAFKiBnf+(IJK49!2+(3lD`qG22WQ%mvv4F FO#rusAMgMG literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_UD.png b/mods/playertag/textures/W_UD.png new file mode 100644 index 0000000000000000000000000000000000000000..06b093cbee964fd975c234763069b996a47bdc2d GIT binary patch literal 99 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>El(H65RLQ62@*CB?D-nP4fU8g ww2o=^osZ(#DY$yZiv@=>r9Cg&a-CpgXqCLITXS*GA)qb>Pgg&ebxsLQ0AaBk)c^nh literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_UE.png b/mods/playertag/textures/W_UE.png new file mode 100644 index 0000000000000000000000000000000000000000..4378c688cbaec869e431cda873a4c9146fd16b87 GIT binary patch literal 89 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>1y2{p5RLQ62@*CB>;)N|4L#NP lg^nJ+*L;P)H_(BPfx)C@voC|{9e1Ew22WQ%mvv4FO#mQu6+Qp} literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_UF.png b/mods/playertag/textures/W_UF.png new file mode 100644 index 0000000000000000000000000000000000000000..78ff7b0b292c3421fd78a697472fdf43102c0623 GIT binary patch literal 88 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>c~2L|5RHk+2@)|6>=_$E4L#NP kg^nJ+*L)@1hRcJMVe{(#!Um7dNkF9xp00i_>zopr04(bkkpKVy literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_UG.png b/mods/playertag/textures/W_UG.png new file mode 100644 index 0000000000000000000000000000000000000000..6402c9abd6f65367e8e14b7b9a336a824a5eb371 GIT binary patch literal 108 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>V^0^y5RHk+2@*9A?8O?w70n74 zi6&IZqeI5RKsE1PPl5_96nR=2Ju; jGf$amlOx*CRK&ngz;ao4!m;1kK$Q%hu6{1-oD!M<=5G|= literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_UI.png b/mods/playertag/textures/W_UI.png new file mode 100644 index 0000000000000000000000000000000000000000..d91464f46e9166a063819e1c1759708a0e053f63 GIT binary patch literal 88 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>c~2L|5RHk+2@)|6>=_*bls&ig jXvrlUO>zIOp#W63pQFEUeNN*xpi%};S3j3^P6RZkbk5RHk+2@-Q2*o!$#Iu>}e rLNs~ug1)4jNi280i%j~Nk{B4A4>i}8N6h*L)WG2B>gTe~DWM4f{yQ30 literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_UK.png b/mods/playertag/textures/W_UK.png new file mode 100644 index 0000000000000000000000000000000000000000..789d34a863220859e6bb832147b8a899b3605fe7 GIT binary patch literal 118 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>TTd6q5RHk+2@*CB>_r4r`~3~u zWb}?k9NozIs6=d6Qq4Q}K%Wzv3s_w;4?ImDNh&25RLQ62@)|6>_vLCbP0l+XkKooW*~ literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_UM.png b/mods/playertag/textures/W_UM.png new file mode 100644 index 0000000000000000000000000000000000000000..d579f045a265c5a6e63ca287e089de8c364cf656 GIT binary patch literal 105 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>15X#n5RKsE1PPl5_Cg98e)2~R zICGLTx)O6rW>s}<{J2re&1|a1(Gv+9wB%TyFfeSI&CVgb^Gg~~FN3G6pUXO@geCy( C%^dFl literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_UN.png b/mods/playertag/textures/W_UN.png new file mode 100644 index 0000000000000000000000000000000000000000..1614a51cd8e34925e1360637616da547e8e9690f GIT binary patch literal 113 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>3r`ov5RKsE1PPl5_Cg0#-FGIH z@LGr-zM-P&Hf_ngB#HSdM-A*8j~WaN}({<5w!tx4{3Cs*h49q-y6YoU<&0z3! L^>bP0l+XkK-ZBG}+5RLQ62@*9A?8O?w6%`G4 xuo$u#JlHJcoOeT8O?ysfm`_kiKT{AR!@AbPwy~Ax4S?DhJYD@<);T3K0RT4Nn)x5RHk+2@*CB?ByDQ4Fexp t_#RYquRmIG*C#L|fz>(iqlN-I0|U?d^??cvX}Ul?44$rjF6*2Ung9_o83+IX literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_UQ.png b/mods/playertag/textures/W_UQ.png new file mode 100644 index 0000000000000000000000000000000000000000..43b3824cf585112fadbab96f3336efcd1b725cd9 GIT binary patch literal 106 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>Lr)jS5RLQ62@*9A?8O?w6%`G4 zuo$u#JlHJcoOeT8O?ysfm`_lNaIR9Q>4YVj6Brp(YVRw)d}k33)Xd=N>gTe~DWM4f D{M{U# literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_UR.png b/mods/playertag/textures/W_UR.png new file mode 100644 index 0000000000000000000000000000000000000000..f7bda384ee32ced91071ca6ba64021d125abc45a GIT binary patch literal 109 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>6Hgb%5RLQ62@*CB?ByDQ4egvc zw2o=HiynmGUr@0k7ZeTKD6OF!N_nd?7X2XGoLt6KZB>MpUXO@ GgeCxi3?1_T literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_US.png b/mods/playertag/textures/W_US.png new file mode 100644 index 0000000000000000000000000000000000000000..29aca647e38b4c38b8862ba6a2120fc75d98d9ce GIT binary patch literal 110 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>Q%@Ji5RLQ62@*9A?8O?w1f7#la|Y{UpaBe?u6{1- HoD!M<@>d}M literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_UT.png b/mods/playertag/textures/W_UT.png new file mode 100644 index 0000000000000000000000000000000000000000..9e85a6749f32a76eaf7fa73f7a5743edee1b2022 GIT binary patch literal 85 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>8BZ6-5RHk+2@*CB>?bm;Pn(n@ h6>1YA+Rv24z~EwA-`KmO;44ragQu&X%Q~loCIHsk6vY4l literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_UU.png b/mods/playertag/textures/W_UU.png new file mode 100644 index 0000000000000000000000000000000000000000..aa51e2de6cb96527078a16d0fe9cadbd0c81f41f GIT binary patch literal 91 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>B~KT}5RLQ62@*CB>_r4r%~w?j oXdP4SI4`h6#VA37^$G(+`o6=q_dGOy0aY`2y85}Sb4q9e0Ap7dEdT%j literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_UV.png b/mods/playertag/textures/W_UV.png new file mode 100644 index 0000000000000000000000000000000000000000..6ab831188e2f9ce66756dfd52809f39137f6a673 GIT binary patch literal 109 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>6Hgb%5RKsE1PPf3_96mn+a|Dy zSk`nIKJf_Z@fKLFxFxtpuQOaRS5#SBX~l$;ql+6N7#QxY-|TyPv#AbHKZB>MpUXO@ GgeCx4svc7S literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_UW.png b/mods/playertag/textures/W_UW.png new file mode 100644 index 0000000000000000000000000000000000000000..6aae7bed6a6cc0dd6f23524a9f13691114f74387 GIT binary patch literal 110 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>Q%@Ji5RKsE1PPf3_96mH(8P@EC|J=6EEueD0$_2R;Udl}5i=vli`t1vG%c)78&q Iol`;+0QG+%WdHyG literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_UX.png b/mods/playertag/textures/W_UX.png new file mode 100644 index 0000000000000000000000000000000000000000..e98d8ba7cb722473f8afd7902e0674ba447344ff GIT binary patch literal 104 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>eNPw15RHk+2@*CB>_r50+kFL= zE2?O^O+T_)AePy&wb{k+qTCW+i^(!~7dM13Fzl3DAGjyurVCIjgQu&X%Q~loCIGQV B8~FeL literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_UY.png b/mods/playertag/textures/W_UY.png new file mode 100644 index 0000000000000000000000000000000000000000..2050f9efce336a634c6061bf6acc13bc4d046a5a GIT binary patch literal 102 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>T~8Os5RLQ62@*CB>_r50`@NaN z3MYvqPgZzh!&Y+CrE=PWl`hfti$waFk{B4ag|}Dkdv)+KP$PqSx*;)TCn%OoV j3Vgj%?CxR)aRvsHHPbVv&wDowsF1wj^(N7l!{JxM1({$v_d#0*}aI zph{s7W@MN(M*=9wUgGKN%Km_jRg_VX+vCU#ppb;8i(`n!`Q!u%*2M`w7>@n_|G&SD biHCtf^()hVX_HK6pc)2GS3j3^P6QBN1g5RLQ62@R``SXF0tQc4KbLh*2~7Z3cM}f) literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_a.png b/mods/playertag/textures/W_a.png new file mode 100644 index 0000000000000000000000000000000000000000..a0bb42fd290975459fb4fdc809be8f6c76db5945 GIT binary patch literal 107 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>BTpB{5RHk+2@;wQ?8O?w74^=t zh&~opzvZ^)-LaQEG4IswpB2$QCVlUQO>6jJ4Fy&PhWw4YUG+Eh0yQ%*c)I$ztaD0e F0sx4&A6@_e literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_b.png b/mods/playertag/textures/W_b.png new file mode 100644 index 0000000000000000000000000000000000000000..1fa5bb2b68051e83877cd1a84de9b32105059b3b GIT binary patch literal 99 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>El(H65RHk+2@5QL@Uu31e5_Y# v2shlsG)JnyGeK0|u*;Lrs%fGTmj^3@h0}3MUzOq~KwS);u6{1-oD!MZBG}+5RHk+2@;+U?8O?w6%`HN xH0^luAEl(H65RLQ62@(Py?P%Yqw=dlbZNqCnYTDVG3eo=+ZcC>NVwkF;EwSr>mdKI;Vst0Dg}fssI20 literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_e.png b/mods/playertag/textures/W_e.png new file mode 100644 index 0000000000000000000000000000000000000000..5f558e1110b9914032e5236c92058e7566c1cdfe GIT binary patch literal 104 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>eNPw15RHk+2@;+U?8O?w6%`HN zH0^kDBB+O7Ak`>vp0c;$MMbBO2;rV7feu;>46pfChf2ntxCzwC;OXk;vd$@?2>{>+ B96MNb#U5RHk+2@AA;^s_z)^_a9$ mCEAwZoJ6S4#z%n;IzX)n-KET}c87q989ZJ6T-G@yGywp0h8GwB literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_g.png b/mods/playertag/textures/W_g.png new file mode 100644 index 0000000000000000000000000000000000000000..415fd7c82ca091f3533905b75c4b6e38a360f882 GIT binary patch literal 107 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>BTpB{5RLQ62@;+U?1dbjJr3#c zR`zSHINH89X;Kqk?4*Px54rpqg!Nb>1zXa-L@O1TaS?83{ F1OV=TBF+E+ literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_h.png b/mods/playertag/textures/W_h.png new file mode 100644 index 0000000000000000000000000000000000000000..d6cb9604a08eda8edca784dfc80d6935f956f4a9 GIT binary patch literal 94 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>RZkbk5RHk+2@5QL@Uu31e5^NV r2sYfL;>WwgM>5nW_UPh<5C(?6isP0&>4mR>8W=oX{an^LB{Ts5<+vHT literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_i.png b/mods/playertag/textures/W_i.png new file mode 100644 index 0000000000000000000000000000000000000000..d8157ad33338116412ce87781c8ce8d240ffbd68 GIT binary patch literal 91 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>B~KT}5RLQ62@AA;@UvbC_t}zp nBB9}~%_hP!YbOkNBO?MdyGU&~(tSqu!Gu6{1-oD!M6;Bt(5RHk+2@9-$@UvbC_nG4P qqT$y$iBOvGfx-C5RHk+2@5QL@Uu2Y7`Dmi z9gR4;k@L|O-dLvf^8b<d*JKgR#SI}04A)c-+ird4wFGDagQu&X J%Q~loCII#bAi4km literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_l.png b/mods/playertag/textures/W_l.png new file mode 100644 index 0000000000000000000000000000000000000000..22ac34a69022e6f02660d8fadce3c954b9896bbc GIT binary patch literal 86 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>Sx*6;Bt(5RKsE1PRUu_973G4*%e} q!E#Y_!H17teOk+AJqmQ-V_-0D{LWeRqUIP-J%gvKpUXO@geCy|w;KTf literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_n.png b/mods/playertag/textures/W_n.png new file mode 100644 index 0000000000000000000000000000000000000000..b22fa3fadabfb06f3913595138ef8dc5f2cacac8 GIT binary patch literal 92 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>WltB!5RHk+2@;wQ>_rqdPdvIo q%Wc|`m5kFh7k8~(T_G}oi{Z}Y^?`?DDm#J789ZJ6T-G@yGywqCff{=N literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_o.png b/mods/playertag/textures/W_o.png new file mode 100644 index 0000000000000000000000000000000000000000..02b761049866f08d19337109676a747fda87ad2e GIT binary patch literal 93 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>6;Bt(5RLQ62@;+U?8O?w6%`HH qYL+FO;H^HY!YX@mq7jz|D}$Ks^2qISmvw;Z89ZJ6T-G@yGywpA3Ko9= literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_p.png b/mods/playertag/textures/W_p.png new file mode 100644 index 0000000000000000000000000000000000000000..9c35ceaeffaa297736a8c865e30d9c610796b862 GIT binary patch literal 100 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>ZBG}+5RHk+2@;wQ>_rqdPdvIo y%WayZBG}+5RLQ62@;+U?1dbjJr3#c yR`zSHINH89X;Kqk?4*Px54tZdTr#7MfuXkSvhJkkbMFGRF?hQAxvXMNb#U5RHk+2@;+U>_rqdC)UjA nD%4sKVR$l6F4Tt0gOMTRdGcI8+jFyliWxjz{an^LB{Ts5US<~; literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_s.png b/mods/playertag/textures/W_s.png new file mode 100644 index 0000000000000000000000000000000000000000..98d2f370ed2955a465445183a38606609358ba70 GIT binary patch literal 102 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>T~8Os5RLQ62@;+U?8O?w6%`Hl z2t^$I809^2_Qy=6n`WnMJ&Ha|eETf00jM{RX>n}QtkqY58W}uY{an^LB{Ts52Y(*F literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_t.png b/mods/playertag/textures/W_t.png new file mode 100644 index 0000000000000000000000000000000000000000..c6484ea414b1e97ec20412cfb560a64916964e32 GIT binary patch literal 93 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>6;Bt(5RLQ62@-oA*b4}(ov`51 q{|bgwwSKK-5r*41k|bECFfqtnDDSi@pL`prp25@A&t;ucLK6Vr!5Lrx literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_u.png b/mods/playertag/textures/W_u.png new file mode 100644 index 0000000000000000000000000000000000000000..6ecbc1018bafada25c8622b0cc461ebf50938078 GIT binary patch literal 92 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>WltB!5RLQ62@;wQ>_r4r?N-fL o)%9PQagJc~8iwVM0v&+5b$_l7?K#);8>pPY)78&qol`;+0IQi9NB{r; literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_v.png b/mods/playertag/textures/W_v.png new file mode 100644 index 0000000000000000000000000000000000000000..c4f8c061f0831b387f4902d8f8c3c83bab06ab49 GIT binary patch literal 102 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>T~8Os5RHk+2@;$S>_r4r-6ti* zG+FR2oSRhQxrZxrwZt-xnQAL$Xau`6YBDg$cuvlh{(nvmsFA_b)z4*}Q$iB}VCNaf literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_w.png b/mods/playertag/textures/W_w.png new file mode 100644 index 0000000000000000000000000000000000000000..de6dd3084985fc04f6f8ea7be205b7dc04c4001e GIT binary patch literal 111 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>Gfx-C5RKsE1c`SK>_r5Yw(aZM z`0-)ViAe@#M!kz9BO5Y~zL<64sDa31V}|8Pa~`Q^%CSCSU{L>eTUEr2_a4v$22WQ% Jmvv4FO#p{TBHsW2 literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_x.png b/mods/playertag/textures/W_x.png new file mode 100644 index 0000000000000000000000000000000000000000..50f8d4b7e95055d70eb1c6991f386e3b86458d8a GIT binary patch literal 108 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>V^0^y5RHk+2@;$S>_r50+kFM* zD@shV5M88wEL&?ATNBsGAfGA59c9KB9o>tT^e_c6GCXSSFHHOrF9g)i;OXk;vd$@? F2>=>r9S;Bi literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_y.png b/mods/playertag/textures/W_y.png new file mode 100644 index 0000000000000000000000000000000000000000..9769d2b7890ba72920b29b64e0ccdc28a2360dc4 GIT binary patch literal 119 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>J5LwK5RLQ62@;$S>_r|-R`)Ut zv#jarEaUQfzR>%@SMFUZcK(Ys6hxdPx;pua7l{bJWm#nFW*zML?ZyE{1{ay`(m6lo RKLDD<;OXk;vd$@?2>=QGBlG|O literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/W_z.png b/mods/playertag/textures/W_z.png new file mode 100644 index 0000000000000000000000000000000000000000..4376db4a1b7391edb7f438684158384f043448c9 GIT binary patch literal 88 zcmeAS@N?(olHy`uVBq!ia0vp^+(0bG!3H9qq$L9>c~2L|5RHk+2@;wQ?ByILF)}YG l(3t5p?W>6E8I1$13}(lxTQ@Um*#VU@c)I$ztaD0e0stGE6{G+F literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/npcf_tag_bg.png b/mods/playertag/textures/npcf_tag_bg.png new file mode 100644 index 0000000000000000000000000000000000000000..de69723a92892133a1e0472135fc0cecba080918 GIT binary patch literal 160 zcmeAS@N?(olHy`uVBq!ia0y~yVB`R@#W>i2q)jZ-0wBef|H(?D8gCb z5n0T@z%2~Ij105pNB{-dOFVsD*&i~>2{QBfO5Xtq>3X_2hE&{od$1A6VK}_tXR!Q3 frcg!@2Ll{1j=ILc_%Jrz3?$|0>gTe~DWM4f7H1*T literal 0 HcmV?d00001 diff --git a/mods/playertag/textures/npcf_trans.png b/mods/playertag/textures/npcf_trans.png new file mode 100644 index 0000000000000000000000000000000000000000..4b6e86daef5b277c59a6a7dbf4da45bfa9f5fd64 GIT binary patch literal 146 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|*pj^6T^Rm@ z;DWu&Cj&(|3p^r=85p>QL70(Y)*K0-AbW|YuPggq4k