2015-09-30 01:48:09 +02:00
|
|
|
Minetest Game mod: doors
|
|
|
|
========================
|
New mesh door models, and extensive door API
This patch replaces the default door nodes with a new mesh model
and nodes.
Two new models were added that are 2 blocks high. One for left-hinge
and one for right-hinge doors. This allows us to make a single texture
fit on both models. The alternative would have been 1 model and 2
unmapped textures, which is more work for mod developers.
Doors work exactly like the old doors, including ownership, breaking
doors, opening and closing.
Under the hood, we can prevent the top part of the door from being
obstructed by placing an invisible node. This prevents liquids from
flowing through doors or people placing sand or other blocks in the
top half. The door code automatically places and removes these as
needed.
Metadata is used to store door state, just like the old version.
A doors API is added, it allows mods to use the API to open/close or
toggle door states without worrying about sounds, permissions and
other details. This is intended for e.g. mesecons. This API allows
mods to manipulate or inspect doors for players or for themselves.
In-game old door nodes are automatically converted using an ABM and
preserve ownership and orientation and state.
TNT blows up all doors and trapdoors except for the steel ones,
who can survive a blast. We return an itemstack in on_blast(),
which requires a TNT API patch which is also pending.
We enable backface culling for most of these doors, as this gives
the identical visual appearance that the old doors had. In the case
of the glass door, there's a slight twist.
The texture files used by the new doors have new names that do
not conflict with previous texture file names to avoid texture
pack conflicts.
Thanks to red-001 <red-001@users.noreply.github.com> for some
of the conversion code, cleanups, and extra textures.
2016-01-16 03:50:32 +01:00
|
|
|
version: 2.0
|
2013-05-18 16:05:16 +02:00
|
|
|
|
|
|
|
License of source code:
|
|
|
|
-----------------------
|
|
|
|
Copyright (C) 2012 PilzAdam
|
2014-04-16 16:31:30 +02:00
|
|
|
modified by BlockMen (added sounds, glassdoors[glass, obsidian glass], trapdoor)
|
2015-12-15 08:35:14 +01:00
|
|
|
Steel trapdoor added by sofar.
|
Add a simple, but stylish fence gate.
This fence gate builds on NDT_CONNECTED by assuming fence nodes will
automatically connect to it's sides properly. The fence gate will
open and close just like doors, with sounds, but it only opens one
way. The gate sticks out quite a bit and can be bumped into, so the
fence may be used as some sort of path switch.
The fence gate offers no form of protection and can be opened and
closed by anyone. This is done on purpose - the fencegate isn't
meant to provide protection from players, as fences can be
trivially jumped over. Instead, these fences should be used for
protecting crops from hungry sheep, or keeping rabbits in their
pen, or just decoration. Mods can also modify the mod to add
protection, of course.
A recipe is added to make these. It's 4 sticks and 2 wood (any)
as follows:
stick wood stick
stick wood stick
The collision box of the open gate is such that if two gates are
connected but mirrored (making an M shape) then you can walk a large
entity that's larger than 1.0 wide through the opening. The gate of
an opened fence can also be stood upon or bumped into.
I've mixed together some sounds to provide a somewhat light sound
experience, one that one would expect from a small gate latching open
and close.
This change requires #873, otherwise it doesn't connect to fences.
2016-02-26 16:30:38 +01:00
|
|
|
Copyright (C) 2016 sofar@foo-projects.org
|
New mesh door models, and extensive door API
This patch replaces the default door nodes with a new mesh model
and nodes.
Two new models were added that are 2 blocks high. One for left-hinge
and one for right-hinge doors. This allows us to make a single texture
fit on both models. The alternative would have been 1 model and 2
unmapped textures, which is more work for mod developers.
Doors work exactly like the old doors, including ownership, breaking
doors, opening and closing.
Under the hood, we can prevent the top part of the door from being
obstructed by placing an invisible node. This prevents liquids from
flowing through doors or people placing sand or other blocks in the
top half. The door code automatically places and removes these as
needed.
Metadata is used to store door state, just like the old version.
A doors API is added, it allows mods to use the API to open/close or
toggle door states without worrying about sounds, permissions and
other details. This is intended for e.g. mesecons. This API allows
mods to manipulate or inspect doors for players or for themselves.
In-game old door nodes are automatically converted using an ABM and
preserve ownership and orientation and state.
TNT blows up all doors and trapdoors except for the steel ones,
who can survive a blast. We return an itemstack in on_blast(),
which requires a TNT API patch which is also pending.
We enable backface culling for most of these doors, as this gives
the identical visual appearance that the old doors had. In the case
of the glass door, there's a slight twist.
The texture files used by the new doors have new names that do
not conflict with previous texture file names to avoid texture
pack conflicts.
Thanks to red-001 <red-001@users.noreply.github.com> for some
of the conversion code, cleanups, and extra textures.
2016-01-16 03:50:32 +01:00
|
|
|
Re-implemented most of the door algorithms, added meshes, UV wrapped texture
|
|
|
|
Added doors API to facilitate coding mods accessing and operating doors.
|
Add a simple, but stylish fence gate.
This fence gate builds on NDT_CONNECTED by assuming fence nodes will
automatically connect to it's sides properly. The fence gate will
open and close just like doors, with sounds, but it only opens one
way. The gate sticks out quite a bit and can be bumped into, so the
fence may be used as some sort of path switch.
The fence gate offers no form of protection and can be opened and
closed by anyone. This is done on purpose - the fencegate isn't
meant to provide protection from players, as fences can be
trivially jumped over. Instead, these fences should be used for
protecting crops from hungry sheep, or keeping rabbits in their
pen, or just decoration. Mods can also modify the mod to add
protection, of course.
A recipe is added to make these. It's 4 sticks and 2 wood (any)
as follows:
stick wood stick
stick wood stick
The collision box of the open gate is such that if two gates are
connected but mirrored (making an M shape) then you can walk a large
entity that's larger than 1.0 wide through the opening. The gate of
an opened fence can also be stood upon or bumped into.
I've mixed together some sounds to provide a somewhat light sound
experience, one that one would expect from a small gate latching open
and close.
This change requires #873, otherwise it doesn't connect to fences.
2016-02-26 16:30:38 +01:00
|
|
|
Added Fence Gate model, code, and sounds
|
2013-05-18 16:05:16 +02:00
|
|
|
|
|
|
|
This program is free software. It comes without any warranty, to
|
|
|
|
the extent permitted by applicable law. You can redistribute it
|
|
|
|
and/or modify it under the terms of the Do What The Fuck You Want
|
|
|
|
To Public License, Version 2, as published by Sam Hocevar. See
|
|
|
|
http://sam.zoy.org/wtfpl/COPYING for more details.
|
|
|
|
|
2014-04-16 16:31:30 +02:00
|
|
|
License of textures
|
2013-05-18 16:05:16 +02:00
|
|
|
--------------------------------------
|
2014-04-16 16:31:30 +02:00
|
|
|
following Textures created by Fernando Zapata (CC BY-SA 3.0):
|
2013-05-18 16:05:16 +02:00
|
|
|
door_wood.png
|
|
|
|
door_wood_a.png
|
|
|
|
door_wood_a_r.png
|
|
|
|
door_wood_b.png
|
|
|
|
door_wood_b_r.png
|
|
|
|
|
2014-04-16 16:31:30 +02:00
|
|
|
following Textures created by BlockMen (WTFPL):
|
|
|
|
door_trapdoor.png
|
|
|
|
door_obsidian_glass_side.png
|
|
|
|
|
|
|
|
following textures created by celeron55 (CC BY-SA 3.0):
|
|
|
|
door_glass_a.png
|
|
|
|
door_glass_b.png
|
2015-12-15 08:35:14 +01:00
|
|
|
|
2014-04-16 16:31:30 +02:00
|
|
|
following Textures created by PenguinDad (CC BY-SA 4.0):
|
|
|
|
door_glass.png
|
|
|
|
door_obsidian_glass.png
|
|
|
|
|
2016-01-16 23:53:27 +01:00
|
|
|
following textures created by sofar (CC-BY-SA-3.0)
|
2015-12-15 08:35:14 +01:00
|
|
|
doors_trapdoor_steel.png
|
|
|
|
doors_trapdoor_steel_side.png
|
2016-01-16 23:53:27 +01:00
|
|
|
door_trapdoor_side.png
|
2015-12-15 08:35:14 +01:00
|
|
|
|
New mesh door models, and extensive door API
This patch replaces the default door nodes with a new mesh model
and nodes.
Two new models were added that are 2 blocks high. One for left-hinge
and one for right-hinge doors. This allows us to make a single texture
fit on both models. The alternative would have been 1 model and 2
unmapped textures, which is more work for mod developers.
Doors work exactly like the old doors, including ownership, breaking
doors, opening and closing.
Under the hood, we can prevent the top part of the door from being
obstructed by placing an invisible node. This prevents liquids from
flowing through doors or people placing sand or other blocks in the
top half. The door code automatically places and removes these as
needed.
Metadata is used to store door state, just like the old version.
A doors API is added, it allows mods to use the API to open/close or
toggle door states without worrying about sounds, permissions and
other details. This is intended for e.g. mesecons. This API allows
mods to manipulate or inspect doors for players or for themselves.
In-game old door nodes are automatically converted using an ABM and
preserve ownership and orientation and state.
TNT blows up all doors and trapdoors except for the steel ones,
who can survive a blast. We return an itemstack in on_blast(),
which requires a TNT API patch which is also pending.
We enable backface culling for most of these doors, as this gives
the identical visual appearance that the old doors had. In the case
of the glass door, there's a slight twist.
The texture files used by the new doors have new names that do
not conflict with previous texture file names to avoid texture
pack conflicts.
Thanks to red-001 <red-001@users.noreply.github.com> for some
of the conversion code, cleanups, and extra textures.
2016-01-16 03:50:32 +01:00
|
|
|
|
|
|
|
Obsidian door textures by red-001 based on textures by Pilzadam and BlockMen: WTFPL
|
|
|
|
door_obsidian_glass.png
|
|
|
|
|
|
|
|
Glass door textures by red-001 based on textures by celeron55: CC BY-SA 3.0
|
|
|
|
door_glass.png
|
2013-05-18 16:05:16 +02:00
|
|
|
All other textures (created by PilzAdam): WTFPL
|
2014-04-16 16:31:30 +02:00
|
|
|
|
New mesh door models, and extensive door API
This patch replaces the default door nodes with a new mesh model
and nodes.
Two new models were added that are 2 blocks high. One for left-hinge
and one for right-hinge doors. This allows us to make a single texture
fit on both models. The alternative would have been 1 model and 2
unmapped textures, which is more work for mod developers.
Doors work exactly like the old doors, including ownership, breaking
doors, opening and closing.
Under the hood, we can prevent the top part of the door from being
obstructed by placing an invisible node. This prevents liquids from
flowing through doors or people placing sand or other blocks in the
top half. The door code automatically places and removes these as
needed.
Metadata is used to store door state, just like the old version.
A doors API is added, it allows mods to use the API to open/close or
toggle door states without worrying about sounds, permissions and
other details. This is intended for e.g. mesecons. This API allows
mods to manipulate or inspect doors for players or for themselves.
In-game old door nodes are automatically converted using an ABM and
preserve ownership and orientation and state.
TNT blows up all doors and trapdoors except for the steel ones,
who can survive a blast. We return an itemstack in on_blast(),
which requires a TNT API patch which is also pending.
We enable backface culling for most of these doors, as this gives
the identical visual appearance that the old doors had. In the case
of the glass door, there's a slight twist.
The texture files used by the new doors have new names that do
not conflict with previous texture file names to avoid texture
pack conflicts.
Thanks to red-001 <red-001@users.noreply.github.com> for some
of the conversion code, cleanups, and extra textures.
2016-01-16 03:50:32 +01:00
|
|
|
Door textures were converted to the new texture map by sofar, paramat and
|
|
|
|
red-001, under the same license as the originals.
|
|
|
|
|
Add a simple, but stylish fence gate.
This fence gate builds on NDT_CONNECTED by assuming fence nodes will
automatically connect to it's sides properly. The fence gate will
open and close just like doors, with sounds, but it only opens one
way. The gate sticks out quite a bit and can be bumped into, so the
fence may be used as some sort of path switch.
The fence gate offers no form of protection and can be opened and
closed by anyone. This is done on purpose - the fencegate isn't
meant to provide protection from players, as fences can be
trivially jumped over. Instead, these fences should be used for
protecting crops from hungry sheep, or keeping rabbits in their
pen, or just decoration. Mods can also modify the mod to add
protection, of course.
A recipe is added to make these. It's 4 sticks and 2 wood (any)
as follows:
stick wood stick
stick wood stick
The collision box of the open gate is such that if two gates are
connected but mirrored (making an M shape) then you can walk a large
entity that's larger than 1.0 wide through the opening. The gate of
an opened fence can also be stood upon or bumped into.
I've mixed together some sounds to provide a somewhat light sound
experience, one that one would expect from a small gate latching open
and close.
This change requires #873, otherwise it doesn't connect to fences.
2016-02-26 16:30:38 +01:00
|
|
|
Models:
|
|
|
|
--------------------------------------
|
|
|
|
Door 3d models by sofar (CC-BY-SA-3.0)
|
|
|
|
- door_a.obj
|
|
|
|
- door_b.obj
|
|
|
|
Fence gate models by sofar (CC-BY-SA-3.0)
|
|
|
|
- fencegate_open.obj
|
|
|
|
- fencegate_closed.obj
|
2014-04-16 16:31:30 +02:00
|
|
|
|
|
|
|
License of sounds
|
|
|
|
--------------------------------------
|
|
|
|
Opening-Sound created by CGEffex (CC BY 3.0), modified by BlockMen
|
|
|
|
door_open.ogg
|
|
|
|
Closing-Sound created by bennstir (CC BY 3.0)
|
|
|
|
door_close.ogg
|
Add a simple, but stylish fence gate.
This fence gate builds on NDT_CONNECTED by assuming fence nodes will
automatically connect to it's sides properly. The fence gate will
open and close just like doors, with sounds, but it only opens one
way. The gate sticks out quite a bit and can be bumped into, so the
fence may be used as some sort of path switch.
The fence gate offers no form of protection and can be opened and
closed by anyone. This is done on purpose - the fencegate isn't
meant to provide protection from players, as fences can be
trivially jumped over. Instead, these fences should be used for
protecting crops from hungry sheep, or keeping rabbits in their
pen, or just decoration. Mods can also modify the mod to add
protection, of course.
A recipe is added to make these. It's 4 sticks and 2 wood (any)
as follows:
stick wood stick
stick wood stick
The collision box of the open gate is such that if two gates are
connected but mirrored (making an M shape) then you can walk a large
entity that's larger than 1.0 wide through the opening. The gate of
an opened fence can also be stood upon or bumped into.
I've mixed together some sounds to provide a somewhat light sound
experience, one that one would expect from a small gate latching open
and close.
This change requires #873, otherwise it doesn't connect to fences.
2016-02-26 16:30:38 +01:00
|
|
|
fencegate_open.ogg:
|
|
|
|
http://www.freesound.org/people/mhtaylor67/sounds/126041/ - CC0
|
|
|
|
fencegate_close.ogg:
|
|
|
|
http://www.freesound.org/people/BarkersPinhead/sounds/274807/ - CC-BY-3.0
|
|
|
|
http://www.freesound.org/people/rivernile7/sounds/249573/ - CC-BY-3.0
|
|
|
|
|