#include <nodedef.h>
 Collaboration diagram for ContentFeatures:Public Member Functions | |
| ContentFeatures () | |
| ~ContentFeatures () | |
| void | reset () | 
| void | serialize (std::ostream &os, u16 protocol_version) const | 
| void | deSerialize (std::istream &is, u16 protocol_version) | 
| void | setDefaultAlphaMode () | 
| bool | isLiquid () const | 
| bool | isLiquidRender () const | 
| bool | sameLiquidRender (const ContentFeatures &f) const | 
| ContentLightingFlags | getLightingFlags () const | 
| int | getGroup (const std::string &group) const | 
Static Public Attributes | |
| static const u8 | CONTENTFEATURES_VERSION = 13 | 
Private Member Functions | |
| void | setAlphaFromLegacy (u8 legacy_alpha) | 
| u8 | getAlphaForLegacy () const | 
| ContentFeatures::ContentFeatures | ( | ) | 
| ContentFeatures::~ContentFeatures | ( | ) | 
References CF_SPECIAL_COUNT.
| void ContentFeatures::deSerialize | ( | std::istream & | is, | 
| u16 | protocol_version ) | 
References alpha, AlphaMode_END, ALPHAMODE_LEGACY_COMPAT, ALPHAMODE_OPAQUE, buildable_to, CF_SPECIAL_COUNT, climbable, collision_box, color, connect_sides, connects_to_ids, CONTENTFEATURES_VERSION, ContentParamType2_END, ContentParamType_END, CPT2_NONE, CPT_NONE, damage_per_second, NodeBox::deSerialize(), Pointabilities::deSerializePointabilityType(), SoundSpec::deSerializeSimple(), deSerializeString16(), diggable, drawtype, drowning, floodable, groups, is_ground_content, legacy_facedir_simple, legacy_wallmounted, leveled, leveled_max, LIGHT_MAX, light_propagates, light_source, liquid_alternative_flowing, liquid_alternative_source, liquid_move_physics, LIQUID_NONE, liquid_range, liquid_renewable, liquid_type, liquid_viscosity, LiquidType_END, mesh, move_resistance, MYMIN, name, NDT_NORMAL, node_box, node_dig_prediction, NodeDrawType_END, palette_name, param_type, param_type_2, pointable, post_effect_color, post_effect_color_shaded, readARGB8(), readF32(), readS16(), readU16(), readU32(), readU8(), rightclickable, selection_box, setAlphaFromLegacy(), sound_dig, sound_dug, sound_footstep, sunlight_propagates, tiledef, tiledef_overlay, tiledef_special, visual_scale, walkable, and waving.
Referenced by NodeDefManager::deSerialize(), and TEST_CASE().
 Here is the call graph for this function:
 Here is the caller graph for this function:
      
  | 
  private | 
References alpha, and ALPHAMODE_OPAQUE.
Referenced by serialize().
 Here is the caller graph for this function:
      
  | 
  inline | 
References groups, and itemgroup_get().
Referenced by MapblockMeshGenerator::isSameRail().
 Here is the call graph for this function:
 Here is the caller graph for this function:
      
  | 
  inline | 
References CPT_LIGHT, ContentLightingFlags::has_light, light_propagates, ContentLightingFlags::light_propagates, light_source, ContentLightingFlags::light_source, param_type, sunlight_propagates, and ContentLightingFlags::sunlight_propagates.
Referenced by NodeDefManager::clear(), NodeDefManager::deSerialize(), getSmoothLightCombined(), and NodeDefManager::set().
 Here is the caller graph for this function:
      
  | 
  inline | 
References LIQUID_NONE, and liquid_type.
Referenced by ServerMap::addNodeAndUpdate(), Mapgen::findLiquidSurface(), Mapgen::isLiquidHorizontallyFlowable(), isPointableNode(), MapgenSinglenode::makeChunk(), VoxelManipulator::print(), push_content_features(), ReflowScan::scanColumn(), and Mapgen::updateLiquid().
 Here is the caller graph for this function:
      
  | 
  inline | 
References drawtype, NDT_FLOWINGLIQUID, and NDT_LIQUID.
Referenced by sameLiquidRender().
 Here is the caller graph for this function:| void ContentFeatures::reset | ( | ) | 
References alpha, ALPHAMODE_OPAQUE, buildable_to, climbable, collision_box, color, connect_sides, connects_to, connects_to_ids, CONTENT_IGNORE, CPT2_NONE, CPT_NONE, damage_per_second, diggable, drawtype, drowning, floats, floodable, groups, has_after_destruct, has_on_construct, has_on_destruct, is_ground_content, legacy_facedir_simple, legacy_wallmounted, leveled, LEVELED_MAX, leveled_max, light_propagates, light_source, liquid_alternative_flowing, liquid_alternative_flowing_id, liquid_alternative_source, liquid_alternative_source_id, LIQUID_LEVEL_MAX, liquid_move_physics, LIQUID_NONE, liquid_range, liquid_renewable, liquid_type, liquid_viscosity, mesh, move_resistance, name, NDT_NORMAL, node_box, node_dig_prediction, palette, palette_name, param_type, param_type_2, POINTABLE, pointable, post_effect_color, post_effect_color_shaded, NodeBox::reset(), rightclickable, selection_box, sound_dig, sound_dug, sound_footstep, sunlight_propagates, tiledef, tiledef_special, visual_scale, walkable, and waving.
Referenced by ContentFeatures().
 Here is the call graph for this function:
 Here is the caller graph for this function:
      
  | 
  inline | 
References isLiquidRender(), liquid_alternative_flowing_id, and liquid_alternative_source_id.
 Here is the call graph for this function:| void ContentFeatures::serialize | ( | std::ostream & | os, | 
| u16 | protocol_version ) const | 
References alpha, buildable_to, CF_SPECIAL_COUNT, climbable, collision_box, color, connect_sides, connects_to_ids, CONTENTFEATURES_VERSION, damage_per_second, diggable, drawtype, drowning, floodable, getAlphaForLegacy(), groups, is_ground_content, legacy_facedir_simple, legacy_wallmounted, leveled, leveled_max, light_propagates, light_source, liquid_alternative_flowing, liquid_alternative_source, LIQUID_FLOWING, liquid_move_physics, liquid_range, liquid_renewable, LIQUID_SOURCE, liquid_type, liquid_viscosity, mesh, move_resistance, name, NDT_FLOWINGLIQUID, NDT_LIQUID, node_box, node_dig_prediction, palette_name, param_type, param_type_2, pointable, post_effect_color, post_effect_color_shaded, rightclickable, selection_box, NodeBox::serialize(), Pointabilities::serializePointabilityType(), SoundSpec::serializeSimple(), serializeString16(), sound_dig, sound_dug, sound_footstep, sunlight_propagates, tiledef, tiledef_overlay, tiledef_special, visual_scale, walkable, waving, writeARGB8(), writeF32(), writeS16(), writeU16(), writeU32(), and writeU8().
Referenced by NodeDefManager::serialize(), and TEST_CASE().
 Here is the call graph for this function:
 Here is the caller graph for this function:
      
  | 
  private | 
References alpha, ALPHAMODE_BLEND, ALPHAMODE_CLIP, ALPHAMODE_OPAQUE, drawtype, NDT_FLOWINGLIQUID, NDT_LIQUID, and NDT_NORMAL.
Referenced by deSerialize().
 Here is the caller graph for this function:
      
  | 
  inline | 
References alpha, ALPHAMODE_CLIP, ALPHAMODE_OPAQUE, drawtype, NDT_FLOWINGLIQUID, NDT_LIQUID, NDT_MESH, NDT_NODEBOX, and NDT_NORMAL.
Referenced by read_content_features().
 Here is the caller graph for this function:| AlphaMode ContentFeatures::alpha | 
| bool ContentFeatures::buildable_to | 
Referenced by NodeDefManager::clear(), deSerialize(), Game::nodePlacement(), push_content_features(), read_content_features(), reset(), and serialize().
| bool ContentFeatures::climbable | 
Referenced by deSerialize(), LocalPlayer::move(), LocalPlayer::old_move(), push_content_features(), read_content_features(), reset(), and serialize().
| NodeBox ContentFeatures::collision_box | 
Referenced by deSerialize(), MapNode::getCollisionBoxes(), push_content_features(), read_content_features(), reset(), and serialize().
| video::SColor ContentFeatures::color | 
Referenced by deSerialize(), MapNode::getColor(), push_content_features(), read_content_features(), reset(), and serialize().
| u8 ContentFeatures::connect_sides | 
Referenced by deSerialize(), NodeDefManager::nodeboxConnects(), push_content_features(), read_content_features(), reset(), and serialize().
| std::vector<std::string> ContentFeatures::connects_to | 
Referenced by push_content_features(), read_content_features(), and reset().
| std::vector<content_t> ContentFeatures::connects_to_ids | 
Referenced by deSerialize(), NodeDefManager::nodeboxConnects(), reset(), and serialize().
      
  | 
  static | 
Referenced by deSerialize(), and serialize().
| u32 ContentFeatures::damage_per_second | 
Referenced by deSerialize(), push_content_features(), read_content_features(), reset(), serialize(), and PlayerSAO::step().
| bool ContentFeatures::diggable | 
Referenced by NodeDefManager::clear(), deSerialize(), push_content_features(), read_content_features(), reset(), and serialize().
| enum NodeDrawType ContentFeatures::drawtype | 
Referenced by ParticleManager::addDiggingParticles(), NodeDefManager::clear(), createGenericNodeMesh(), deSerialize(), MapblockMeshGenerator::drawFencelikeNode(), MapblockMeshGenerator::drawNodeboxNode(), MapgenBasic::dustTopNodes(), Server::findSpawnPos(), DungeonGen::generate(), getItemMesh(), MapNode::getNeighbors(), ParticleManager::getNodeParticleParams(), MapNode::getWallMounted(), isLiquidRender(), MapblockMeshGenerator::isSameRail(), NodeDefManager::nodeboxConnects(), Game::nodePlacement(), push_content_features(), read_content_features(), reset(), serialize(), setAlphaFromLegacy(), setDefaultAlphaMode(), and WieldMeshSceneNode::setItem().
| u8 ContentFeatures::drowning | 
Referenced by deSerialize(), push_content_features(), read_content_features(), reset(), serialize(), and PlayerSAO::step().
| bool ContentFeatures::floats | 
Referenced by reset(), and ServerMap::transformLiquids().
| bool ContentFeatures::floodable | 
| ItemGroupList ContentFeatures::groups | 
Referenced by add_area_node_boxes(), TestGameDef::defineSomeNodes(), deSerialize(), NodeDefManager::deSerialize(), getGroup(), LocalPlayer::getSlipFactor(), Server::handleCommand_Interact(), isPointableNode(), LocalPlayer::move(), Game::nodePlacement(), LocalPlayer::old_move(), push_content_features(), read_content_features(), reset(), serialize(), NodeDefManager::set(), and ClientEnvironment::step().
| bool ContentFeatures::has_after_destruct | 
| bool ContentFeatures::has_on_construct | 
Referenced by push_content_features(), read_content_features(), reset(), and ServerEnvironment::setNode().
| bool ContentFeatures::has_on_destruct | 
| bool ContentFeatures::is_ground_content | 
Referenced by CavesRandomWalk::carveRoute(), CavesV6::carveRoute(), NodeDefManager::clear(), TestGameDef::defineSomeNodes(), deSerialize(), DungeonGen::generate(), CavernsNoise::generateCaverns(), CavesNoiseIntersection::generateCaves(), push_content_features(), read_content_features(), reset(), serialize(), and TEST_CASE().
| bool ContentFeatures::legacy_facedir_simple | 
Referenced by deSerialize(), MapBlock::deSerialize_pre22(), push_content_features(), read_content_features(), reset(), and serialize().
| bool ContentFeatures::legacy_wallmounted | 
Referenced by deSerialize(), MapBlock::deSerialize_pre22(), push_content_features(), read_content_features(), reset(), and serialize().
| u8 ContentFeatures::leveled | 
Referenced by deSerialize(), MapNode::getLevel(), MapNode::getMaxLevel(), push_content_features(), read_content_features(), reset(), and serialize().
| u8 ContentFeatures::leveled_max | 
| bool ContentFeatures::light_propagates | 
| u8 ContentFeatures::light_source | 
| std::string ContentFeatures::liquid_alternative_flowing | 
Referenced by deSerialize(), push_content_features(), read_content_features(), reset(), and serialize().
| content_t ContentFeatures::liquid_alternative_flowing_id | 
Referenced by reset(), sameLiquidRender(), MapNode::setLevel(), and ServerMap::transformLiquids().
| std::string ContentFeatures::liquid_alternative_source | 
Referenced by deSerialize(), push_content_features(), read_content_features(), reset(), and serialize().
| content_t ContentFeatures::liquid_alternative_source_id | 
Referenced by reset(), sameLiquidRender(), MapNode::setLevel(), and ServerMap::transformLiquids().
| bool ContentFeatures::liquid_move_physics | 
Referenced by deSerialize(), LocalPlayer::move(), LocalPlayer::old_move(), push_content_features(), read_content_features(), reset(), and serialize().
| u8 ContentFeatures::liquid_range | 
| bool ContentFeatures::liquid_renewable | 
Referenced by deSerialize(), push_content_features(), read_content_features(), reset(), serialize(), and ServerMap::transformLiquids().
| enum LiquidType ContentFeatures::liquid_type | 
Referenced by TestGameDef::defineSomeNodes(), deSerialize(), MapNode::getLevel(), MapNode::getMaxLevel(), MapgenV6::growGrass(), RollbackAction::isImportant(), isLiquid(), push_content_features(), read_content_features(), reset(), ReflowScan::scanColumn(), serialize(), MapNode::setLevel(), and ServerMap::transformLiquids().
| u8 ContentFeatures::liquid_viscosity | 
| std::string ContentFeatures::mesh | 
Referenced by deSerialize(), push_content_features(), read_content_features(), reset(), and serialize().
| u8 ContentFeatures::move_resistance = 0 | 
Referenced by deSerialize(), LocalPlayer::move(), LocalPlayer::old_move(), push_content_features(), read_content_features(), reset(), and serialize().
| std::string ContentFeatures::name | 
Referenced by RollbackNode::RollbackNode(), NodeDefManager::allocateDummy(), NodeDefManager::allocateId(), RollbackAction::applyRevert(), NodeDefManager::clear(), Schematic::condenseContentIds(), TestGameDef::defineSomeNodes(), deSerialize(), NodeDefManager::deSerialize(), ModApiEnvBase::findNodesInArea(), getBlockNodeIdMapping(), Game::handlePointingAtNode(), isPointableNode(), ModApiItem::l_get_name_from_content_id(), ModApiClient::l_get_node_def(), ModApiEnv::l_place_node(), ModApiMapgen::l_read_schematic(), ModApiItem::l_register_item_raw(), ScriptApiNode::node_after_destruct(), ScriptApiNode::node_on_construct(), ScriptApiNode::node_on_destruct(), ScriptApiNode::node_on_dig(), ScriptApiNode::node_on_flood(), ScriptApiNode::node_on_punch(), ScriptApiNode::node_on_receive_fields(), ScriptApiNode::node_on_timer(), ScriptApiNodemeta::nodemeta_inventory_AllowMove(), ScriptApiNodemeta::nodemeta_inventory_AllowPut(), ScriptApiNodemeta::nodemeta_inventory_AllowTake(), ScriptApiNodemeta::nodemeta_inventory_OnMove(), ScriptApiNodemeta::nodemeta_inventory_OnPut(), ScriptApiNodemeta::nodemeta_inventory_OnTake(), LocalPlayer::old_move(), push_content_features(), read_content_features(), reset(), serialize(), NodeDefManager::serialize(), Schematic::serializeToLua(), NodeDefManager::set(), set_node_in_block(), PlayerSAO::step(), TEST_CASE(), TEST_CASE(), TestMapBlock::testSaveLoad(), and GameUI::update().
| NodeBox ContentFeatures::node_box | 
| std::string ContentFeatures::node_dig_prediction | 
Referenced by deSerialize(), push_content_features(), read_content_features(), reset(), and serialize().
| std::vector<video::SColor>* ContentFeatures::palette | 
Referenced by MapNode::getColor(), push_content_features(), and reset().
| std::string ContentFeatures::palette_name | 
Referenced by deSerialize(), push_content_features(), read_content_features(), reset(), and serialize().
| ContentParamType ContentFeatures::param_type | 
| ContentParamType2 ContentFeatures::param_type_2 | 
Referenced by createGenericNodeMesh(), deSerialize(), MapNode::getDegRotate(), MapNode::getFaceDir(), MapNode::getLevel(), MapNode::getMaxLevel(), getNodeBoxUnion(), MapNode::getWallMounted(), NodeDefManager::nodeboxConnects(), Game::nodePlacement(), push_content_features(), read_content_features(), reset(), MapNode::rotateAlongYAxis(), serialize(), and MapNode::setLevel().
| PointabilityType ContentFeatures::pointable | 
Referenced by NodeDefManager::clear(), deSerialize(), isPointableNode(), push_content_features(), read_content_features(), reset(), and serialize().
| video::SColor ContentFeatures::post_effect_color | 
Referenced by deSerialize(), push_content_features(), read_content_features(), ClientMap::renderPostFx(), reset(), and serialize().
| bool ContentFeatures::post_effect_color_shaded | 
Referenced by deSerialize(), push_content_features(), read_content_features(), ClientMap::renderPostFx(), reset(), and serialize().
| bool ContentFeatures::rightclickable | 
Referenced by deSerialize(), Game::nodePlacement(), push_content_features(), read_content_features(), reset(), and serialize().
| NodeBox ContentFeatures::selection_box | 
| SoundSpec ContentFeatures::sound_dig | 
Referenced by deSerialize(), push_content_features(), read_content_features(), reset(), and serialize().
| SoundSpec ContentFeatures::sound_dug | 
Referenced by deSerialize(), SoundMaker::nodeDug(), push_content_features(), read_content_features(), reset(), and serialize().
| SoundSpec ContentFeatures::sound_footstep | 
Referenced by deSerialize(), push_content_features(), read_content_features(), reset(), serialize(), GenericCAO::step(), and Game::updateSound().
| bool ContentFeatures::sunlight_propagates | 
| TileDef ContentFeatures::tiledef[6] | 
| TileDef ContentFeatures::tiledef_overlay[6] | 
Referenced by deSerialize(), read_content_features(), and serialize().
| TileDef ContentFeatures::tiledef_special[CF_SPECIAL_COUNT] | 
Referenced by NodeDefManager::applyTextureOverrides(), deSerialize(), read_content_features(), reset(), and serialize().
| float ContentFeatures::visual_scale | 
Referenced by deSerialize(), push_content_features(), read_content_features(), reset(), serialize(), and WieldMeshSceneNode::setItem().
| bool ContentFeatures::walkable | 
Referenced by add_area_node_boxes(), Pathfinder::calcCost(), NodeDefManager::clear(), deSerialize(), MapgenBasic::dustTopNodes(), Mapgen::findGroundLevel(), Mapgen::findLiquidSurface(), MapgenV6::flowMud(), Pathfinder::getPath(), LocalPlayer::getSlipFactor(), Mapgen::getSurfaces(), LocalPlayer::handleAutojump(), GridNodeContainer::initNode(), Game::nodePlacement(), LocalPlayer::old_move(), push_content_features(), read_content_features(), reset(), serialize(), TEST_CASE(), Camera::update(), LocalPlayer::updateSneakNode(), and Pathfinder::walkDownwards().
| u8 ContentFeatures::waving | 
Referenced by deSerialize(), push_content_features(), read_content_features(), reset(), and serialize().