Merge pull request 'master' (#3) from master into develop

Reviewed-on: #3
This commit is contained in:
Milan Meduna 2020-10-29 20:25:39 +01:00
commit f03b1c4f2d
12 changed files with 117 additions and 78 deletions

View file

@ -1,9 +1,9 @@
# textdomain: basic_materials # textdomain: basic_materials
Silicon lump=Silikonklumpen Silicon lump=Siliziumklumpen
Simple Integrated Circuit=einfacher Integrierter Schaltkreis Simple Integrated Circuit=Einfacher Integrierter Schaltkreis
Simple Motor=einfacher Motor Simple Motor=Einfacher Motor
Heating element=Heizelement Heating element=Heizelement
Simple energy crystal=einfacher Energiekristall Simple energy crystal=Einfacher Energiekristall
Spool of steel wire=Spule mit Stahldraht Spool of steel wire=Spule mit Stahldraht
Spool of copper wire=Spule mit Kupferdraht Spool of copper wire=Spule mit Kupferdraht
@ -12,22 +12,22 @@ Spool of gold wire=Spule mit Golddraht
Steel Strip=Stahlstreifen Steel Strip=Stahlstreifen
Copper Strip=Kupferstreifen Copper Strip=Kupferstreifen
Steel Bar=Stahlstab Steel Bar=Stahlstab
Chainlinks (brass)=Messing-Kettenglieder Chainlinks (brass)=Messingkettenglieder
Chainlinks (steel)=Stahl-Kettenglieder Chainlinks (steel)=Stahlkettenglieder
Brass Ingot=Messingbarren Brass Ingot=Messingbarren
Steel gear=Stahlzahnrad Steel gear=Stahlzahnrad
Padlock=Vorhängeschloss Padlock=Vorhängeschloss
Chain (steel, hanging)=Stahlkette Chain (steel, hanging)=Hängende Stahlkette
Chain (brass, hanging)=Messingkette Chain (brass, hanging)=Hängende Messingkette
Brass Block=Messingblock Brass Block=Messingblock
Oil extract=raffiniertes Öl Oil extract=Ölextrakt
Unprocessed paraffin=unbearbeitetes Paraffin Unprocessed paraffin=Unverarbeitetes Paraffin
Uncooked Terracotta Base=ungebranntes Terrakotta Uncooked Terracotta Base=Ungebranntes Terrakotta
Wet Cement=nasser Zement Wet Cement=Nasser Zement
Cement=Zement Cement=Zement
Concrete Block=Betonblock Concrete Block=Betonblock
Plastic sheet=Kunststoffplatte Plastic sheet=Kunststoffplatte
Plastic strips=Kunststoffstreifen Plastic strips=Kunststoffstreifen
Empty wire spool=leere Drahtspule Empty wire spool=Leere Drahtspule

View file

@ -8,7 +8,7 @@ local use_cmi = minetest.global_exists("cmi")
mobs = { mobs = {
mod = "redo", mod = "redo",
version = "20201003", version = "20201029",
intllib = S, intllib = S,
invis = minetest.global_exists("invisibility") and invisibility or {} invis = minetest.global_exists("invisibility") and invisibility or {}
} }
@ -3594,6 +3594,68 @@ local count_mobs = function(pos, type)
end end
-- do we have enough space to spawn mob? (thanks wuzzy)
local can_spawn = function(pos, name)
local ent = minetest.registered_entities[name]
local width_x = max(1, ceil(ent.collisionbox[4] - ent.collisionbox[1]))
local min_x, max_x
if width_x % 2 == 0 then
max_x = floor(width_x / 2)
min_x = -(max_x - 1)
else
max_x = floor(width_x / 2)
min_x = -max_x
end
local width_z = max(1, ceil(ent.collisionbox[6] - ent.collisionbox[3]))
local min_z, max_z
if width_z % 2 == 0 then
max_z = floor(width_z / 2)
min_z = -(max_z - 1)
else
max_z = floor(width_z / 2)
min_z = -max_z
end
local max_y = max(0, ceil(ent.collisionbox[5] - ent.collisionbox[2]) - 1)
local pos2
for y = 0, max_y do
for x = min_x, max_x do
for z = min_z, max_z do
pos2 = {x = pos.x + x, y = pos.y + y, z = pos.z + z}
if minetest.registered_nodes[node_ok(pos2).name].walkable == true then
return nil
end
end
end
end
-- spawn mob 1/2 node above ground
pos.y = pos.y + 0.5
-- tweak X/Z spawn pos
if width_x % 2 == 0 then
pos.x = pos.x + 0.5
end
if width_z % 2 == 0 then
pos.z = pos.z + 0.5
end
return pos
end
function mobs:can_spawn(pos, name)
return can_spawn(pos, name)
end
-- global functions -- global functions
function mobs:add_mob(pos, def) function mobs:add_mob(pos, def)
@ -3841,69 +3903,22 @@ function mobs:spawn_specific(name, nodes, neighbors, min_light, max_light, inter
end end
end end
-- do we have enough space to spawn mob? (thanks wuzzy) -- returns position if we have enough space to spawn mob
local ent = minetest.registered_entities[name] pos = can_spawn(pos, name)
local width_x = max(1, ceil(ent.collisionbox[4] - ent.collisionbox[1]))
local min_x, max_x
if width_x % 2 == 0 then if pos then
max_x = floor(width_x / 2)
min_x = -(max_x - 1)
else
max_x = floor(width_x / 2)
min_x = -max_x
end
local width_z = max(1, ceil(ent.collisionbox[6] - ent.collisionbox[3])) local mob = minetest.add_entity(pos, name)
local min_z, max_z
if width_z % 2 == 0 then
max_z = floor(width_z / 2)
min_z = -(max_z - 1)
else
max_z = floor(width_z / 2)
min_z = -max_z
end
local max_y = max(0, ceil(ent.collisionbox[5] - ent.collisionbox[2]) - 1)
for y = 0, max_y do
for x = min_x, max_x do
for z = min_z, max_z do
local pos2 = {
x = pos.x + x,
y = pos.y + y,
z = pos.z + z}
if minetest.registered_nodes[node_ok(pos2).name].walkable == true then
--print("--- not enough space to spawn", name)
return
end
end
end
end
-- spawn mob 1/2 node above ground
pos.y = pos.y + 0.5
-- tweak X/Z spawn pos
if width_x % 2 == 0 then
pos.x = pos.x + 0.5
end
if width_z % 2 == 0 then
pos.z = pos.z + 0.5
end
local mob = minetest.add_entity(pos, name)
-- print("[mobs] Spawned " .. name .. " at " -- print("[mobs] Spawned " .. name .. " at "
-- .. minetest.pos_to_string(pos) .. " on " -- .. minetest.pos_to_string(pos) .. " on "
-- .. node.name .. " near " .. neighbors[1]) -- .. node.name .. " near " .. neighbors[1])
if on_spawn then if on_spawn then
on_spawn(mob:get_luaentity(), pos) on_spawn(mob:get_luaentity(), pos)
end
else
--print("--- not enough space to spawn", name)
end end
end end

View file

@ -660,6 +660,13 @@ Use this instead:
mob_class:line_of_sight(pos1, pos2, stepsize) mob_class:line_of_sight(pos1, pos2, stepsize)
mobs:can_spawn(pos, name)
This function checks the surrounding area at [pos] to see if there is enough empty
space to spawn mob [name], if so then a new position is returned for use,
otherwise nil is returned.
External Settings for "minetest.conf" External Settings for "minetest.conf"
------------------------------------ ------------------------------------

View file

@ -1,7 +1,8 @@
repos: repos:
- repo: https://github.com/pre-commit/pre-commit-hooks - repo: https://github.com/pre-commit/pre-commit-hooks
rev: v2.3.0 rev: v3.3.0
hooks: hooks:
- id: fix-byte-order-marker
- id: end-of-file-fixer - id: end-of-file-fixer
- id: trailing-whitespace - id: trailing-whitespace

View file

@ -1,7 +1,8 @@
repos: repos:
- repo: https://github.com/pre-commit/pre-commit-hooks - repo: https://github.com/pre-commit/pre-commit-hooks
rev: v2.3.0 rev: v3.3.0
hooks: hooks:
- id: fix-byte-order-marker
- id: end-of-file-fixer - id: end-of-file-fixer
- id: trailing-whitespace - id: trailing-whitespace

View file

@ -0,0 +1,3 @@
NELSON_764
nelson
CC 0 (1.0)

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

View file

@ -1,7 +1,7 @@
# Template for translations of wine mod # Template for translations of wine mod
# textdomain: wine # textdomain: wine
# author: ? # author: ?
# last update: 2020/May/12 # last update: 2020/October/27
Glass of Wine= Glass of Wine=
Bottle of Wine= Bottle of Wine=
@ -23,7 +23,10 @@ Glass of Cider=
Bottle of Cider= Bottle of Cider=
Glass of Honey-Mead= Glass of Honey-Mead=
Bottle of Honey-Mead= Bottle of Honey-Mead=
Glass of Mint Julep=
Bottle of Mint Julep=
Blue Agave= Blue Agave=
Agave Syrup=
Fermenting Barrel= Fermenting Barrel=
Fermenting Barrel (FULL)= Fermenting Barrel (FULL)=
Fermenting Barrel (@1% Done)= Fermenting Barrel (@1% Done)=

View file

@ -2,7 +2,7 @@
# textdomain: wine # textdomain: wine
# author: Xanthin # author: Xanthin
# author: TheDarkTiger # author: TheDarkTiger
# last update: 2020/May/12 # last update: 2020/October/27
Glass of Wine=Glas Wein Glass of Wine=Glas Wein
Bottle of Wine=Flasche Wein Bottle of Wine=Flasche Wein
@ -24,7 +24,10 @@ Glass of Cider=Apfelwein
Bottle of Cider=Flasche Apfelwein Bottle of Cider=Flasche Apfelwein
Glass of Honey-Mead=Honigwein Glass of Honey-Mead=Honigwein
Bottle of Honey-Mead=Flasche Honigwein Bottle of Honey-Mead=Flasche Honigwein
Glass of Mint Julep=Minze Julep
Bottle of Mint Julep=Flasch Minze Julep
Blue Agave=Agave Blue Agave=Agave
Agave Syrup=Agavendicksaft
Fermenting Barrel=Gärfass Fermenting Barrel=Gärfass
Fermenting Barrel (FULL)=Gärfass (VOLL) Fermenting Barrel (FULL)=Gärfass (VOLL)
Fermenting Barrel (@1% Done)=Gärfass (@1% erledigt) Fermenting Barrel (@1% Done)=Gärfass (@1% erledigt)

View file

@ -3,7 +3,7 @@
# author: Unknown # author: Unknown
# author: TenPlus1 # author: TenPlus1
# author: TheDarkTiger # author: TheDarkTiger
# last update: 2020/May/12 # last update: 2020/October/27
Glass of Wine=Copa de vino Glass of Wine=Copa de vino
Bottle of Wine=Botella de vino Bottle of Wine=Botella de vino
@ -25,7 +25,10 @@ Glass of Cider=Sidra de Manzana
Bottle of Cider=Botella de Sidra de Manzana Bottle of Cider=Botella de Sidra de Manzana
Glass of Honey-Mead=Bebida de Miel Glass of Honey-Mead=Bebida de Miel
Bottle of Honey-Mead=Botella de Bebida de Miel Bottle of Honey-Mead=Botella de Bebida de Miel
Glass of Mint Julep=Julepe de menta
Bottle of Mint Julep=Botella de Julepe de menta
Blue Agave=Agave Tequilana Blue Agave=Agave Tequilana
Agave Syrup=jarabe de agave
Fermenting Barrel=Barril de fermentación Fermenting Barrel=Barril de fermentación
Fermenting Barrel (FULL)=Barril de fermentación (Lleno) Fermenting Barrel (FULL)=Barril de fermentación (Lleno)
Fermenting Barrel (@1% Done)=Barril de fermentación (@1% completado) Fermenting Barrel (@1% Done)=Barril de fermentación (@1% completado)

View file

@ -1,7 +1,7 @@
# Traduction Française du mod Wine par TenPlus1 # Traduction Française du mod Wine par TenPlus1
# textdomain: wine # textdomain: wine
# author: TheDarkTiger # author: TheDarkTiger
# last update: 2020/May/12 # last update: 2020/October/27
Glass of Wine=Verre de Vin Glass of Wine=Verre de Vin
Bottle of Wine=Bouteille de Vin Bottle of Wine=Bouteille de Vin
@ -19,11 +19,14 @@ Glass of Bourbon=Bourbon
Bottle of Bourbon=Bouteille de Bourbon Bottle of Bourbon=Bouteille de Bourbon
Glass of Vodka=Vodka Glass of Vodka=Vodka
Bottle of Vodka=Bouteille de Vodka Bottle of Vodka=Bouteille de Vodka
Glass of Cider=Cidre Brut Glass of Cider=Cidre
Bottle of Cider=Bouteille de Cidre Bottle of Cider=Bouteille de Cidre
Glass of Honey-Mead=Hydromel Glass of Honey-Mead=Hydromel
Bottle of Honey-Mead=Bouteille d'Hydromel Bottle of Honey-Mead=Bouteille d'Hydromel
Glass of Mint Julep=Mint Julep
Bottle of Mint Julep=Bouteille de Mint Julep
Blue Agave=Agave Bleue Blue Agave=Agave Bleue
Agave Syrup=Sirop d'Agave
Fermenting Barrel=Baril de fermentation Fermenting Barrel=Baril de fermentation
Fermenting Barrel (FULL)=Baril de fermentation (PLEIN) Fermenting Barrel (FULL)=Baril de fermentation (PLEIN)
Fermenting Barrel (@1% Done)=Baril de fermentation (En cours @1%) Fermenting Barrel (@1% Done)=Baril de fermentation (En cours @1%)