From b65e0ae812b2ad9890f5d0a5793b4811439b4a9c Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Wed, 4 Feb 2015 20:43:39 +0100 Subject: [PATCH] Add optional compability with hudbars mod --- README.txt | 6 ++++++ depends.txt | 1 + init.lua | 29 ++++++++++++++++++++++------- textures/mana_bar.png | Bin 0 -> 80 bytes textures/mana_icon.png | Bin 0 -> 2994 bytes 5 files changed, 29 insertions(+), 7 deletions(-) create mode 100644 README.txt create mode 100644 depends.txt create mode 100644 textures/mana_bar.png create mode 100644 textures/mana_icon.png diff --git a/README.txt b/README.txt new file mode 100644 index 0000000..b8f88ea --- /dev/null +++ b/README.txt @@ -0,0 +1,6 @@ +License information: + +textures/mana_icon.png: CC-BY by Buch . +textures/mana_bar.png: WTFPL by Wuzzy. + +Everything else: WTFPL. diff --git a/depends.txt b/depends.txt new file mode 100644 index 0000000..3e1d5c2 --- /dev/null +++ b/depends.txt @@ -0,0 +1 @@ +hudbars? diff --git a/init.lua b/init.lua index f6acda4..dc0a216 100644 --- a/init.lua +++ b/init.lua @@ -151,10 +151,14 @@ minetest.register_on_joinplayer(function(player) if mana.playerlist[playername] == nil then mana.playerlist[playername] = {} mana.playerlist[playername].mana = 0 - mana.playerlist[playername].maxmana = 20 + mana.playerlist[playername].maxmana = 100 end - mana.hud_add(playername) + if minetest.get_modpath("hudbars") ~= nil then + hud.hudtables.mana.add_all(player, mana.get(playername), mana.getmax(playername)) + else + mana.hud_add(playername) + end end) @@ -163,6 +167,16 @@ end) HUD functions ]===] +if minetest.get_modpath("hudbars") ~= nil then + hud.register_hudbar("mana", 0xFFFFFF, "Mana", { bar = "mana_bar.png", icon = "mana_icon.png" }, 0, 100, false) + + function mana.hud_update(playername) + local player = minetest.get_player_by_name(playername) + hud.change_hudbar(player, hud.hudtables.mana, mana.get(playername), mana.getmax(playername)) + end + +else + function mana.manastring(playername) return string.format("Mana: %d/%d", mana.get(playername), mana.getmax(playername)) end @@ -171,14 +185,13 @@ function mana.hud_add(playername) local player = minetest.get_player_by_name(playername) id = player:hud_add({ hud_elem_type = "text", - position = { x = 1, y=0.3 }, - name = "mana", + position = { x = 0.5, y=0.9 }, text = mana.manastring(playername), scale = { x = 0, y = 0 }, - alignment = { x = -1, y = 0}, + alignment = { x = 1, y = 0}, direction = 1, number = 0xFFFFFF, - offset = { x = 0, y = 0} + offset = { x = -200, y = 15} }) mana.playerlist[playername].hudid = id return id @@ -186,10 +199,12 @@ end function mana.hud_update(playername) local player = minetest.get_player_by_name(playername) - player:hud_change(mana.playerlist[playername].hudid, "text", mana.manastring(playername)) + player:hud_change(mana.playerlist[playername].hudid, "number", mana.get(playername)) end function mana.hud_remove(playername) local player = minetest.get_player_by_name(playername) player:hud_remove(mana.playerlist[playername].hudid) end + +end diff --git a/textures/mana_bar.png b/textures/mana_bar.png new file mode 100644 index 0000000000000000000000000000000000000000..135f3bdf2c944b69b989be21a58204f195dd6e60 GIT binary patch literal 80 zcmeAS@N?(olHy`uVBq!ia0vp^Oh7Ea!3HF4R;=3sq{Ka4978y+C#MAb{6D`D2s#EX>4Tx07!|QmUmQC*A|D*y?1({%`g-xL+`x}AiX!K z(nMjH8DJ;_4l^{dA)*2iMMMM@L4qO%jD{kyB8r88V8I@cAfUux6j4!mGqP56<>kGX zm){>}eQTe+_dRFteb%}Fki7l5ymVL!fHa~vAmcQ7uoQ$&mudEnVrUCi&%W-40ak@%snFBnkD3j81WZzQ5Khz zE#g}u)=U+qaYg)A9Gk{rW&(gBiR}UoD@nwrA|~;}Lfk~W6aXA4@hgu1iUph;f%sBx z=^43vZeo&vuFKM+o7vhj=-!;{RE|Jk6vSkuF!^k{TY6dsla~v?;+;QBMqFFEsL0l4 zw$|20=Ei1U73#lk{!NK{yGXBsKlcox^?kAZm0x;20E}5tZFYRI#qR~6V>1Bq_rKUQ z4+0=5>RbE3SNEZb=OsxX$gndp$O~2}Gii1cZ;QLyD0~q#kKOx{zMvCNhFdBkxcc6a_^`8KLY^ z-l*j$7HTzW9jX*njXHvANA;j?qDE0Os847zS_y4{wnO`%BhiWIY;+O265WVyLtjGQ zMvtT4U@#aOMh9bq@y0}9k}+#ArI`JgR?K_yPPl zex4vr&>=Vw!U)NPjf5&f3*i#sA>kE~NK_}<5`&3c;s# zLeh59VbXchJ<=;OnXFBACP$M6>atgt3H=1Y2UgM2$qd#E`@bNxY<% zq>JP#$vnwQ$&-=;lG9RnDQzh?DW=pqsT!$MQo~ZS(iCYk=|Jf;=~C&V(pRM?Ww0{Z zG9EH)nL?REG8bjWC@3{{8fLrtcZP`{)0Q)gslWG!XGWpiX} zWY5Ts&=8t7&4-psE2EvD-J!jgQfv(`8 zkfN|tp+n)3B1%zTF<3EM@qpqb#pxx~CH6~LONy7ASaM$pR?=4rQCg#PNU2Y0R#`>a zOF2V%ukuCZX%(7^vr4i`h00l#DOHN9qbgUmLiL>LGrBC@g`P^UqW92e)Rfe`)r4ww zYW-^S>N@Jn)eF>H)gNgPG#DBQ8WkGd8Z(-zngN>mn$4Q`weVUDtt72ITD@9x+B(`1 z+FP_cv?q1sb$oR4beeS@>XLPxbXV)v>)z7C=rQzC^!DrB(1-P{^po^!^al)J18W1W z!G425L$sl-Ayeeqo|%5^b{6q}Sw=sg-G}X@ltl zGZ`~qvjVd&v)|42%~|F(=C>@!7M>RCEjle;S{hh#EDu=TwW3%BSZ%TDw)$voW6ig2 zv7WNgw28CXXEV&8GJ+VTj4QTiTUXolwx@01*;(5O>`vJIW^ZJlVt>?ra;eTz&eDdZ zV-D&LOouv$5l6aXoZ~^q5hpb#rc=Gs6K4%)wsWKNgo~a_vdb}-7p|tReAhPDIX64E zwQlF#5qB^5V)uRz8IR>2)gF&M)jbnEn>}Z|ti0BEo%cq2`+4v59`;f8Vfi%q%=p^) zuJ!HlBl(5;Rr@{h*Z1f9cLl%!z5%-e9xl^b##`1A2m*ZqcLhEQ(g|7}^kXn4I4HO# z_-Tk)NPb9fC?zyD^l0dtFxRlMum{U^mkXD7hf9XXgg1rHMYuc#Ks{QOuo{IxBNlUR|ZQDs|PFSjkvs?8!KETtwW_xDU)g zW<7H@-Y0%v{0z&DwTJbb?aZ!VPjMVL<(!EGhlKKk$wY_5U5QgkPDzzX(_A-hHTPw* zcXDm=TuNZd;gp5ch}70JTv}Y(DV_{3h1Zj=lAe=3m|>7nlrgf}ZuRcfGkiaOVz}3Y2Bx^Z`;1P{p|fi2b>SI)GF7O)V@E+J$SdytFFCXyT0-e=1|t5rw!o^z27pv zZE93(ENT3Bn0I*ONXU_%CYz?Fqe@51n&D<)^VG4JV>iBY|E{yesHLuz)>?8L92Xvc z_I=#J{_+2=_${t8_!le8-Jehe15v28mBOpTuPtA9&j!stev|fQey;ef!rLS781H)DN4%ey&;Ee@ zQ1wyoW7j9YPY)N;78d>m1DNyt6gNdX0000WV@Og>004R>004l5008;`004mK004C` z008P>0026e000+ooVrmw00032Nkl#V4CC985k7#7#O5Q85uU5hKAvSY2N@14PIz|_fypaCWe2{de)@1DV%kQx~n7$9-}`4J(_jW7lyib6