aboutsummaryrefslogtreecommitdiff
path: root/assets/schild.blend1
diff options
context:
space:
mode:
authorGabriel Pérez-Cerezo <gabriel@gpcf.eu>2019-12-01 12:08:28 +0100
committerGabriel Pérez-Cerezo <gabriel@gpcf.eu>2019-12-01 12:08:28 +0100
commitb71c72b4ab4d50c8f3a3a6ccbe15427548e1d2ff (patch)
tree184aca3f96b14432db63a4d365c42c20bbfa87a7 /assets/schild.blend1
parentca4d65050ccb6ac7f7a54c491250c632a50b6d23 (diff)
downloadadvtrains-b71c72b4ab4d50c8f3a3a6ccbe15427548e1d2ff.tar.gz
advtrains-b71c72b4ab4d50c8f3a3a6ccbe15427548e1d2ff.tar.bz2
advtrains-b71c72b4ab4d50c8f3a3a6ccbe15427548e1d2ff.zip
Add experimental liveries feature
Please do not use this in your train mods yet, this may be subject to changes!
Diffstat (limited to 'assets/schild.blend1')
0 files changed, 0 insertions, 0 deletions
='#n128'>128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164
/*
Minetest
Copyright (C) 2013 celeron55, Perttu Ahola <celeron55@gmail.com>

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation; either version 2.1 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/


/******************************************************************************/
/******************************************************************************/
/* WARNING!!!! do NOT add this header in any include file or any code file    */
/*             not being a script/modapi file!!!!!!!!                         */
/******************************************************************************/
/******************************************************************************/

#ifndef C_CONTENT_H_
#define C_CONTENT_H_

extern "C" {
#include <lua.h>
}

#include <iostream>
#include <map>
#include <vector>

#include "irrlichttypes_bloated.h"
#include "util/string.h"

namespace Json { class Value; }

struct MapNode;
class INodeDefManager;
struct PointedThing;
struct ItemStack;
struct ItemDefinition;
struct ToolCapabilities;
struct ObjectProperties;
struct SimpleSoundSpec;
struct ServerSoundParams;
class Inventory;
struct NodeBox;
struct ContentFeatures;
struct TileDef;
class Server;
struct DigParams;
struct HitParams;
struct EnumString;
struct NoiseParams;
class Schematic;


ContentFeatures    read_content_features     (lua_State *L, int index);
TileDef            read_tiledef              (lua_State *L, int index,
                                              u8 drawtype);
void               read_soundspec            (lua_State *L, int index,
                                              SimpleSoundSpec &spec);
NodeBox            read_nodebox              (lua_State *L, int index);

void               read_server_sound_params  (lua_State *L, int index,
                                              ServerSoundParams &params);

void               push_dig_params           (lua_State *L,
                                              const DigParams &params);
void               push_hit_params           (lua_State *L,
                                              const HitParams &params);

ItemStack          read_item                 (lua_State *L, int index, Server *srv);


ToolCapabilities   read_tool_capabilities    (lua_State *L, int table);
void               push_tool_capabilities    (lua_State *L,
                                              const ToolCapabilities &prop);

ItemDefinition     read_item_definition      (lua_State *L, int index,
                                              ItemDefinition default_def);
void               read_object_properties    (lua_State *L, int index,
                                              ObjectProperties *prop);
void               push_object_properties    (lua_State *L,
                                              ObjectProperties *prop);

void               push_inventory_list       (lua_State *L,
                                              Inventory *inv,
                                              const char *name);
void               read_inventory_list       (lua_State *L, int tableindex,
                                              Inventory *inv, const char *name,
                                              Server *srv, int forcesize=-1);

MapNode            readnode                  (lua_State *L, int index,
                                              INodeDefManager *ndef);
void               pushnode                  (lua_State *L, const MapNode &n,
                                              INodeDefManager *ndef);

NodeBox            read_nodebox              (lua_State *L, int index);

void               read_groups               (lua_State *L, int index,
                                              std::map<std::string, int> &result);

void               push_groups               (lua_State *L,
                                              const std::map<std::string, int> &groups);