My Project v1
Project
载入中...
搜索中...
未找到
Game.ComponentMiner
类 Game.ComponentMiner 继承关系图:
Game.ComponentMiner 的协作图:

Public 成员函数

virtual void Poke (bool forceRestart)
 
bool Dig (TerrainRaycastResult raycastResult)
 
bool Place (TerrainRaycastResult raycastResult)
 
bool Place (TerrainRaycastResult raycastResult, int value)
 
bool Use (Ray3 ray)
 
bool Interact (TerrainRaycastResult raycastResult)
 
bool Interact (MovingBlocksRaycastResult raycastResult)
 
void Hit (ComponentBody componentBody, Vector3 hitPoint, Vector3 hitDirection)
 
bool Aim (Ray3 aim, AimState state)
 
virtual object Raycast (Ray3 ray, RaycastMode mode, bool raycastTerrain=true, bool raycastBodies=true, bool raycastMovingBlocks=true, float? Reach=null)
 发出射线检测,检测玩家点击到的目标
 
T? Raycast< T > (Ray3 ray, RaycastMode mode, bool raycastTerrain=true, bool raycastBodies=true, bool raycastMovingBlocks=true, float? reach=null)
 
virtual void RemoveActiveTool (int removeCount)
 
virtual void DamageActiveTool (int damageCount)
 
void Update (float dt)
 
override void Load (ValuesDictionary valuesDictionary, IdToEntityMap idToEntityMap)
 
override void Save (ValuesDictionary valuesDictionary, EntityToIdMap entityToIdMap)
 
virtual float CalculateDigTime (int digValue, int toolValue)
 
virtual bool IsLevelSufficientForTool (int toolValue)
 
virtual int FindBestInventoryToolForDigging (int digValue)
 
- Public 成员函数 继承自 Game.IUpdateable

静态 Public 成员函数

static void AttackBody (Attackment attackment)
 
static void AttackBody (ComponentBody target, ComponentCreature attacker, Vector3 hitPoint, Vector3 hitDirection, float attackPower, bool isMeleeAttack)
 
static void AddHitValueParticleSystem (float damage, Entity attacker, Entity attacked, Vector3 hitPoint, Vector3 hitDirection)
 
static bool IsBlockPlacingAllowed (ComponentBody componentBody)
 

Public 属性

SubsystemTerrain m_subsystemTerrain
 
SubsystemBodies m_subsystemBodies
 
SubsystemMovingBlocks m_subsystemMovingBlocks
 
SubsystemGameInfo m_subsystemGameInfo
 
SubsystemTime m_subsystemTime
 
SubsystemAudio m_subsystemAudio
 
SubsystemSoundMaterials m_subsystemSoundMaterials
 
SubsystemBlockBehaviors m_subsystemBlockBehaviors
 
Random m_random = new()
 
double m_digStartTime
 
float m_digProgress
 
double m_lastHitTime
 
int m_lastDigFrameIndex
 
float m_lastPokingPhase
 
double m_basicHitInterval
 
bool m_digSpeedBasedOnStrengthFactor = true
 挖掘速度是否受玩家力量属性加成
 
bool m_canSqueezeBlock = true
 
bool m_canJumpToPlace = false
 

静态 Public 属性

static Random s_random = new()
 
static string fName = "ComponentMiner"
 

属性

virtual double HitInterval [get, set]
 伤害间隔(原版为0.66f)
 
ComponentCreature ComponentCreature [get, set]
 
ComponentPlayer ComponentPlayer [get, set]
 
ComponentFactors ComponentFactors [get, set]
 
IInventory Inventory [get, set]
 
int ActiveBlockValue [get]
 
float AttackPower [get, set]
 
float AutoInteractRate [get, set]
 
float StrengthFactor [get]
 
float DigSpeedFactor [get]
 
float PokingPhase [get, set]
 
CellFaceDigCellFace [get, set]
 
float DigTime [get]
 
float DigProgress [get]
 
UpdateOrder UpdateOrder [get]
 
- 属性 继承自 Game.IUpdateable
float FloatUpdateOrder [get]
 

Private 属性

ComponentHealth m_componentHealth
 
double m_lastToolHintTime
 

成员函数说明

◆ AddHitValueParticleSystem()

static void Game.ComponentMiner.AddHitValueParticleSystem ( float damage,
Entity attacker,
Entity attacked,
Vector3 hitPoint,
Vector3 hitDirection )
static
函数调用图:

◆ Aim()

bool Game.ComponentMiner.Aim ( Ray3 aim,
AimState state )
函数调用图:
这是这个函数的调用关系图:

◆ AttackBody() [1/2]

static void Game.ComponentMiner.AttackBody ( Attackment attackment)
static
函数调用图:
这是这个函数的调用关系图:

◆ AttackBody() [2/2]

static void Game.ComponentMiner.AttackBody ( ComponentBody target,
ComponentCreature attacker,
Vector3 hitPoint,
Vector3 hitDirection,
float attackPower,
bool isMeleeAttack )
static
函数调用图:

◆ CalculateDigTime()

virtual float Game.ComponentMiner.CalculateDigTime ( int digValue,
int toolValue )
virtual
函数调用图:
这是这个函数的调用关系图:

◆ DamageActiveTool()

virtual void Game.ComponentMiner.DamageActiveTool ( int damageCount)
virtual
函数调用图:
这是这个函数的调用关系图:

◆ Dig()

bool Game.ComponentMiner.Dig ( TerrainRaycastResult raycastResult)
函数调用图:

◆ FindBestInventoryToolForDigging()

virtual int Game.ComponentMiner.FindBestInventoryToolForDigging ( int digValue)
virtual
函数调用图:
这是这个函数的调用关系图:

◆ Hit()

void Game.ComponentMiner.Hit ( ComponentBody componentBody,
Vector3 hitPoint,
Vector3 hitDirection )
函数调用图:
这是这个函数的调用关系图:

◆ Interact() [1/2]

bool Game.ComponentMiner.Interact ( MovingBlocksRaycastResult raycastResult)
函数调用图:

◆ Interact() [2/2]

bool Game.ComponentMiner.Interact ( TerrainRaycastResult raycastResult)
函数调用图:
这是这个函数的调用关系图:

◆ IsBlockPlacingAllowed()

static bool Game.ComponentMiner.IsBlockPlacingAllowed ( ComponentBody componentBody)
static
函数调用图:
这是这个函数的调用关系图:

◆ IsLevelSufficientForTool()

virtual bool Game.ComponentMiner.IsLevelSufficientForTool ( int toolValue)
virtual
函数调用图:
这是这个函数的调用关系图:

◆ Load()

override void Game.ComponentMiner.Load ( ValuesDictionary valuesDictionary,
IdToEntityMap idToEntityMap )

◆ Place() [1/2]

bool Game.ComponentMiner.Place ( TerrainRaycastResult raycastResult)
函数调用图:
这是这个函数的调用关系图:

◆ Place() [2/2]

bool Game.ComponentMiner.Place ( TerrainRaycastResult raycastResult,
int value )
函数调用图:

◆ Poke()

virtual void Game.ComponentMiner.Poke ( bool forceRestart)
virtual
这是这个函数的调用关系图:

◆ Raycast()

virtual object Game.ComponentMiner.Raycast ( Ray3 ray,
RaycastMode mode,
bool raycastTerrain = true,
bool raycastBodies = true,
bool raycastMovingBlocks = true,
float? Reach = null )
virtual

发出射线检测,检测玩家点击到的目标

参数
ray
mode发出射线的意图
raycastTerrain该射线是否和地形交互,为false时则忽略地形
raycastBodies该射线是否和生物等实体交互,为false时则忽略实体
raycastMovingBlocks该射线是否和移动方块交互,为false时则忽略移动方块
Reach进行Raycast的距离
返回
函数调用图:
这是这个函数的调用关系图:

◆ Raycast< T >()

T? Game.ComponentMiner.Raycast< T > ( Ray3 ray,
RaycastMode mode,
bool raycastTerrain = true,
bool raycastBodies = true,
bool raycastMovingBlocks = true,
float? reach = null )
类型限制
T :struct 
函数调用图:

◆ RemoveActiveTool()

virtual void Game.ComponentMiner.RemoveActiveTool ( int removeCount)
virtual
函数调用图:
这是这个函数的调用关系图:

◆ Save()

override void Game.ComponentMiner.Save ( ValuesDictionary valuesDictionary,
EntityToIdMap entityToIdMap )

◆ Update()

void Game.ComponentMiner.Update ( float dt)

实现了 Game.IUpdateable.

函数调用图:

◆ Use()

bool Game.ComponentMiner.Use ( Ray3 ray)
函数调用图:
这是这个函数的调用关系图:

类成员变量说明

◆ fName

string Game.ComponentMiner.fName = "ComponentMiner"
static

◆ m_basicHitInterval

double Game.ComponentMiner.m_basicHitInterval

◆ m_canJumpToPlace

bool Game.ComponentMiner.m_canJumpToPlace = false

◆ m_canSqueezeBlock

bool Game.ComponentMiner.m_canSqueezeBlock = true

◆ m_componentHealth

ComponentHealth Game.ComponentMiner.m_componentHealth
private

◆ m_digProgress

float Game.ComponentMiner.m_digProgress

◆ m_digSpeedBasedOnStrengthFactor

bool Game.ComponentMiner.m_digSpeedBasedOnStrengthFactor = true

挖掘速度是否受玩家力量属性加成

◆ m_digStartTime

double Game.ComponentMiner.m_digStartTime

◆ m_lastDigFrameIndex

int Game.ComponentMiner.m_lastDigFrameIndex

◆ m_lastHitTime

double Game.ComponentMiner.m_lastHitTime

◆ m_lastPokingPhase

float Game.ComponentMiner.m_lastPokingPhase

◆ m_lastToolHintTime

double Game.ComponentMiner.m_lastToolHintTime
private

◆ m_random

Random Game.ComponentMiner.m_random = new()

◆ m_subsystemAudio

SubsystemAudio Game.ComponentMiner.m_subsystemAudio

◆ m_subsystemBlockBehaviors

SubsystemBlockBehaviors Game.ComponentMiner.m_subsystemBlockBehaviors

◆ m_subsystemBodies

SubsystemBodies Game.ComponentMiner.m_subsystemBodies

◆ m_subsystemGameInfo

SubsystemGameInfo Game.ComponentMiner.m_subsystemGameInfo

◆ m_subsystemMovingBlocks

SubsystemMovingBlocks Game.ComponentMiner.m_subsystemMovingBlocks

◆ m_subsystemSoundMaterials

SubsystemSoundMaterials Game.ComponentMiner.m_subsystemSoundMaterials

◆ m_subsystemTerrain

SubsystemTerrain Game.ComponentMiner.m_subsystemTerrain

◆ m_subsystemTime

SubsystemTime Game.ComponentMiner.m_subsystemTime

◆ s_random

Random Game.ComponentMiner.s_random = new()
static

属性说明

◆ ActiveBlockValue

int Game.ComponentMiner.ActiveBlockValue
get

◆ AttackPower

float Game.ComponentMiner.AttackPower
getset

◆ AutoInteractRate

float Game.ComponentMiner.AutoInteractRate
getset

◆ ComponentCreature

ComponentCreature Game.ComponentMiner.ComponentCreature
getset

◆ ComponentFactors

ComponentFactors Game.ComponentMiner.ComponentFactors
getset

◆ ComponentPlayer

ComponentPlayer Game.ComponentMiner.ComponentPlayer
getset

◆ DigCellFace

CellFace? Game.ComponentMiner.DigCellFace
getset

◆ DigProgress

float Game.ComponentMiner.DigProgress
get

◆ DigSpeedFactor

float Game.ComponentMiner.DigSpeedFactor
get

◆ DigTime

float Game.ComponentMiner.DigTime
get

◆ HitInterval

virtual double Game.ComponentMiner.HitInterval
getset

伤害间隔(原版为0.66f)

◆ Inventory

IInventory Game.ComponentMiner.Inventory
getset

◆ PokingPhase

float Game.ComponentMiner.PokingPhase
getset

◆ StrengthFactor

float Game.ComponentMiner.StrengthFactor
get

◆ UpdateOrder

UpdateOrder Game.ComponentMiner.UpdateOrder
get

实现了 Game.IUpdateable.


该类的文档由以下文件生成: