mirror of
				https://repo.or.cz/minetest_hudbars.git
				synced 2025-10-30 23:25:39 +01:00 
			
		
		
		
	Compare commits
	
		
			18 Commits
		
	
	
		
			2.0.0
			...
			28dcf8af65
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 28dcf8af65 | |||
|  | a250d2a350 | ||
|  | 7993feac07 | ||
|  | b19b5f090a | ||
|  | 9a8a3f0f8c | ||
|  | 2eb2df946b | ||
| c4ddef312e | |||
|  | 2ffcd94dd6 | ||
|  | 8d3fa950f8 | ||
|  | 332aa18452 | ||
| 7f6ed309b3 | |||
|  | 99ebd71da7 | ||
|  | 699e356609 | ||
|  | 8c80745ecb | ||
|  | 1e3def3cfa | ||
|  | 48d9fd6a12 | ||
| 7cd5940c68 | |||
|  | 67ca481f7c | 
							
								
								
									
										2
									
								
								API.md
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								API.md
									
									
									
									
									
								
							| @@ -70,6 +70,8 @@ for more information. | ||||
| * `format_string_config`: Required if `format_string` is set. This allows to change which parameters to use in the format string. It's a table with these fields: | ||||
|  * `textdomain`: Text domain of the format string, used by `minetest.translate` | ||||
|  * `order`: Table that contains the order of the placeholders. It's also possible to remove placeholders. Default order: `{ "label", "value", "max_value" }` | ||||
|  * `format_value`: Format string to apply when displaying `value`. Syntax is same as in `string.format`. Default: `"%d"` | ||||
|  * `format_max_value`: Same as `format_value` but is applied to `max_value` | ||||
|  | ||||
| #### Example | ||||
| Example (mostly) from `hbarmor` mod: | ||||
|   | ||||
| @@ -11,7 +11,7 @@ this mod will place them accordingly. | ||||
| position should be displayed correctly on every screen size. | ||||
|  | ||||
| ## Current version | ||||
| The current version is 2.0.0. | ||||
| The current version is 2.2.2. | ||||
|  | ||||
| This software uses [semantic versioning](http://semver.org), as defined by version 2.0.0 of the SemVer | ||||
| standard. | ||||
| @@ -38,6 +38,8 @@ Translations: | ||||
| * Dutch: kingoscargames | ||||
| * Italian: Hamlet | ||||
| * Malay: muhdnurhidayat | ||||
| * Russian: Imk | ||||
| * Spanish: wuniversales | ||||
|  | ||||
| This program is free software. It comes without any warranty, to | ||||
| the extent permitted by applicable law. You can redistribute it | ||||
|   | ||||
							
								
								
									
										37
									
								
								init.lua
									
									
									
									
									
								
							
							
						
						
									
										37
									
								
								init.lua
									
									
									
									
									
								
							| @@ -58,11 +58,19 @@ local function make_label(format_string, format_string_config, label, start_valu | ||||
| 		if order[o] == "label" then | ||||
| 			table.insert(params, label) | ||||
| 		elseif order[o] == "value" then | ||||
| 			if format_string_config.format_value then | ||||
| 				table.insert(params, string.format(format_string_config.format_value, start_value)) | ||||
| 			else | ||||
| 				table.insert(params, start_value) | ||||
| 			end | ||||
| 		elseif order[o] == "max_value" then | ||||
| 			if format_string_config.format_max_value then | ||||
| 				table.insert(params, string.format(format_string_config.format_max_value, max_value)) | ||||
| 			else | ||||
| 				table.insert(params, max_value) | ||||
| 			end | ||||
| 		end | ||||
| 	end | ||||
| 	local ret | ||||
| 	if format_string_config.textdomain then | ||||
| 		ret = minetest.translate(format_string_config.textdomain, format_string, unpack(params)) | ||||
| @@ -148,7 +156,16 @@ function hb.register_hudbar(identifier, text_color, label, textures, default_sta | ||||
| 		format_string = N("@1: @2/@3") | ||||
| 	end | ||||
| 	if format_string_config == nil then | ||||
| 		format_string_config = { order = { "label", "value", "max_value" } } | ||||
| 		format_string_config = {} | ||||
| 	end | ||||
| 	if format_string_config.order == nil then | ||||
| 		format_string_config.order = { "label", "value", "max_value" } | ||||
| 	end | ||||
| 	if format_string_config.format_value == nil then | ||||
| 		format_string_config.format_value = "%d" | ||||
| 	end | ||||
| 	if format_string_config.format_max_value == nil then | ||||
| 		format_string_config.format_max_value = "%d" | ||||
| 	end | ||||
|  | ||||
| 	hudtable.add_all = function(player, hudtable, start_value, start_max, start_hidden) | ||||
| @@ -183,6 +200,7 @@ function hb.register_hudbar(identifier, text_color, label, textures, default_sta | ||||
| 				text = "hudbars_bar_background.png", | ||||
| 				alignment = {x=1,y=1}, | ||||
| 				offset = { x = offset.x - 1, y = offset.y - 1 }, | ||||
| 				z_index = 0, | ||||
| 			}) | ||||
| 			if textures.icon ~= nil then | ||||
| 				ids.icon = player:hud_add({ | ||||
| @@ -192,6 +210,7 @@ function hb.register_hudbar(identifier, text_color, label, textures, default_sta | ||||
| 					text = textures.icon, | ||||
| 					alignment = {x=-1,y=1}, | ||||
| 					offset = { x = offset.x - 3, y = offset.y }, | ||||
| 					z_index = 1, | ||||
| 				}) | ||||
| 			end | ||||
| 		elseif hb.settings.bar_type == "statbar_modern" then | ||||
| @@ -205,13 +224,20 @@ function hb.register_hudbar(identifier, text_color, label, textures, default_sta | ||||
| 					offset = { x = offset.x, y = offset.y }, | ||||
| 					direction = 0, | ||||
| 					size = {x=24, y=24}, | ||||
| 					z_index = 0, | ||||
| 				}) | ||||
| 			end | ||||
| 		end | ||||
| 		local bar_image, bar_size | ||||
| 		if hb.settings.bar_type == "progress_bar" then | ||||
| 			bar_image = textures.bar | ||||
| 			bar_size = {x=2, y=16} | ||||
| 			-- NOTE: Intentionally set to nil. For some reason, on some systems, | ||||
| 			-- the progress bar is displaced when the bar_size is set explicitly here. | ||||
| 			-- On the other hand, setting this to nil is deprecated in MT 5.0.0 due to | ||||
| 			-- a debug log warning, but nothing is explained in lua_api.txt. | ||||
| 			-- This section is a potential bug magnet, please watch with care! | ||||
| 			-- The size of the bar image is expected to be exactly 2×16 pixels. | ||||
| 			bar_size = nil | ||||
| 		elseif hb.settings.bar_type == "statbar_classic" or hb.settings.bar_type == "statbar_modern" then | ||||
| 			bar_image = textures.icon | ||||
| 			bar_size = {x=24, y=24} | ||||
| @@ -225,6 +251,7 @@ function hb.register_hudbar(identifier, text_color, label, textures, default_sta | ||||
| 			offset = offset, | ||||
| 			direction = 0, | ||||
| 			size = bar_size, | ||||
| 			z_index = 1, | ||||
| 		}) | ||||
| 		if hb.settings.bar_type == "progress_bar" then | ||||
| 			ids.text = player:hud_add({ | ||||
| @@ -235,6 +262,7 @@ function hb.register_hudbar(identifier, text_color, label, textures, default_sta | ||||
| 				number = text_color, | ||||
| 				direction = 0, | ||||
| 				offset = { x = offset.x + 2,  y = offset.y - 1}, | ||||
| 				z_index = 2, | ||||
| 		}) | ||||
| 		end | ||||
| 		-- Do not forget to update hb.get_hudbar_state if you add new fields to the state table | ||||
| @@ -293,6 +321,9 @@ function hb.change_hudbar(player, identifier, new_value, new_max_value, new_icon | ||||
|  | ||||
| 	local name = player:get_player_name() | ||||
| 	local hudtable = hb.get_hudtable(identifier) | ||||
| 	if not hudtable.hudstate[name] then | ||||
| 		return false | ||||
| 	end | ||||
| 	local value_changed, max_changed = false, false | ||||
|  | ||||
| 	if new_value ~= nil then | ||||
| @@ -544,3 +575,5 @@ minetest.register_globalstep(function(dtime) | ||||
| 	end | ||||
| 	if timer > 4 then timer = 0 end | ||||
| end) | ||||
|  | ||||
| minetest.log("action", "[hudbars] loaded.") | ||||
|   | ||||
							
								
								
									
										4
									
								
								locale/hudbars.es.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								locale/hudbars.es.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | ||||
| # textdomain: hudbars | ||||
| Health=Salud | ||||
| Breath=Aliento | ||||
| @1: @2/@3=@1: @2/@3 | ||||
							
								
								
									
										4
									
								
								locale/hudbars.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								locale/hudbars.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | ||||
| # textdomain: hudbars | ||||
| Health=HP | ||||
| Breath=дыхание | ||||
| @1: @2/@3=@1: @2/@3 | ||||
		Reference in New Issue
	
	Block a user