Survivalcraft API 1.8.2.3 v1.8.2.3
Survivalcraft 2.4
载入中...
搜索中...
未找到
GameWidget
类 GameWidget 继承关系图:
GameWidget 的协作图:

Public 成员函数

 GameWidget (PlayerData playerData, int gameViewIndex)
FindCamera< T > (bool throwOnError=true)
Camera FindCamera (Type type, bool throwOnError=true)
Camera FindCamera (Type type, out bool isEnable, bool throwOnError=true)
void AddCamera (Camera camera, Func< GameWidget, bool > isEnable=null)
 此方法建议在ModLoader.ManageCameras接口中使用,避免重复添加。若无需结合条件判断摄像机是否可用(比如调试视角仅创造模式可用),则isEnable可传null
bool IsEntityTarget (Entity entity)
bool IsEntityFirstPersonTarget (Entity entity)
override void Update ()
WidgetInputDevice DetermineInputDevices ()
bool IsCameraAllowed (Camera camera)
Public 成员函数 继承自 Game.CanvasWidget
Vector2GetWidgetPosition (Widget widget)
void SetWidgetPosition (Widget widget, Vector2? position)
override void WidgetRemoved (Widget widget)
override void MeasureOverride (Vector2 parentAvailableSize)
override void ArrangeOverride ()
Public 成员函数 继承自 Game.ContainerWidget
 ContainerWidget ()
override void UpdateCeases ()
void AddChildren (Widget widget)
void RemoveChildren (Widget widget)
void ClearChildren ()
virtual void WidgetAdded (Widget widget)
override void MeasureOverride (Vector2 parentAvailableSize)
override void ArrangeOverride ()
override void Dispose ()
Public 成员函数 继承自 Game.Widget
 Widget ()
virtual void LoadContents (object eventsTarget, XElement node)
virtual void LoadProperties (object eventsTarget, XElement node)
virtual void LoadChildren (object eventsTarget, XElement node)
virtual bool IsChildWidgetOf (ContainerWidget containerWidget)
virtual void ChangeParent (ContainerWidget parentWidget)
virtual void Measure (Vector2 parentAvailableSize)
virtual void Arrange (Vector2 position, Vector2 parentActualSize)
virtual void Draw (DrawContext dc)
virtual void Overdraw (DrawContext dc)
virtual bool HitTest (Vector2 point)
virtual Widget HitTestGlobal (Vector2 point, Func< Widget, bool > predicate=null)
virtual Vector2 ScreenToWidget (Vector2 p)
virtual Vector2 WidgetToScreen (Vector2 p)
virtual BoundingRectangle TransformBoundsToParent (Vector2 size)
virtual BoundingRectangle TransformBoundsToGlobal (Vector2 size)

Public 属性

List< Cameram_cameras = new()
Dictionary< Camera, Func< GameWidget, bool > > m_isCameraEnable = new()
Camera m_activeCamera
Public 属性 继承自 Game.CanvasWidget
Dictionary< Widget, Vector2m_positions = []
Public 属性 继承自 Game.ContainerWidget
readonly WidgetsList Children
Public 属性 继承自 Game.Widget
Action< Vector2MeasureOverride1
Action Update1
bool m_isVisible
bool m_isEnabled
Vector2 m_actualSize
Vector2 m_desiredSize
Vector2 m_parentDesiredSize
BoundingRectangle m_globalBounds
Vector2 m_parentOffset
bool m_isLayoutTransformIdentity = true
bool m_isRenderTransformIdentity = true
Matrix m_layoutTransform = Matrix.Identity
Matrix m_renderTransform = Matrix.Identity
Matrix m_globalTransform = Matrix.Identity
Matrixm_invertedGlobalTransform
float? m_globalScale
Color m_colorTransform = Color.White
Color m_globalColorTransform
WidgetInput m_widgetsHierarchyInput

属性

ViewWidget ViewWidget [get, set]
ContainerWidget GuiWidget [get, set]
int GameWidgetIndex [get, set]
SubsystemGameWidgets SubsystemGameWidgets [get, set]
PlayerData PlayerData [get, set]
ReadOnlyList< CameraCameras [get]
Camera ActiveCamera [get, set]
ComponentCreature Target [get, set]
属性 继承自 Game.CanvasWidget
Vector2 Size = new(-1f) [get, set]
属性 继承自 Game.ContainerWidget
IEnumerable< WidgetAllChildren [get]
属性 继承自 Game.Widget
WidgetInput WidgetsHierarchyInput [get, set]
WidgetInput Input [get]
Matrix LayoutTransform [get, set]
Matrix RenderTransform [get, set]
Matrix GlobalTransform [get]
float GlobalScale [get]
Matrix InvertedGlobalTransform [get]
BoundingRectangle GlobalBounds [get]
Color ColorTransform [get, set]
Color GlobalColorTransform [get]
virtual string Name [get, set]
object Tag [get, set]
object ExtraData [get, set]
virtual bool IsVisible [get, set]
virtual bool IsEnabled [get, set]
virtual bool IsHitTestVisible [get, set]
bool IsVisibleGlobal [get]
bool IsEnabledGlobal [get]
bool ClampToBounds [get, set]
virtual Vector2 Margin [get, set]
virtual float MarginLeft [get, set]
virtual float MarginRight [get, set]
virtual float MarginTop [get, set]
virtual float MarginBottom [get, set]
virtual Vector4 Margin4 [get, set]
virtual float MarginHorizontalSum [get]
virtual float MarginVerticalSum [get]
virtual Vector2 MarginHorizontalSumAndVerticalSum [get]
virtual WidgetAlignment HorizontalAlignment [get, set]
virtual WidgetAlignment VerticalAlignment [get, set]
Vector2 ActualSize [get]
Vector2 DesiredSize [get, set]
Vector2 ParentDesiredSize [get]
bool IsUpdateEnabled = true [get, set]
bool IsDrawEnabled = true [get, set]
bool IsDrawRequired [get, set]
bool IsOverdrawRequired [get, set]
XElement Style [set]
ContainerWidget ParentWidget [get, set]
Widget RootWidget [get]

额外继承的成员函数

静态 Public 成员函数 继承自 Game.CanvasWidget
static void SetPosition (Widget widget, Vector2 position)
静态 Public 成员函数 继承自 Game.ContainerWidget
static void ArrangeChildWidgetInCell (Vector2 c1, Vector2 c2, Widget widget)
静态 Public 成员函数 继承自 Game.Widget
static Widget LoadWidget (object eventsTarget, XElement node, ContainerWidget parentWidget)
static bool TestOverlap (Widget w1, Widget w2)
static bool IsNodeIncludedOnCurrentPlatform (XElement node)
static void UpdateWidgetsHierarchy (Widget rootWidget)
static void LayoutWidgetsHierarchy (Widget rootWidget, Vector2 availableSize)
static void DrawWidgetsHierarchy (Widget rootWidget)
static Type FindTypeFromXmlName (string name, string namespaceName)
static Widget HitTestGlobal (Widget widget, Vector2 point, Func< Widget, bool > predicate)
static void UpdateWidgetsHierarchy (Widget widget, ref bool isMouseCursorVisible)
静态 Public 属性 继承自 Game.Widget
static Queue< DrawContextm_drawContextsCache = new()
static int LayersLimit = -1
static bool DrawWidgetBounds = false

详细描述

在文件 GameWidget.cs6 行定义.

构造及析构函数说明

◆ GameWidget()

GameWidget.GameWidget ( PlayerData playerData,
int gameViewIndex )

在文件 GameWidget.cs44 行定义.

函数调用图:

成员函数说明

◆ AddCamera()

void GameWidget.AddCamera ( Camera camera,
Func< GameWidget, bool > isEnable = null )

此方法建议在ModLoader.ManageCameras接口中使用,避免重复添加。若无需结合条件判断摄像机是否可用(比如调试视角仅创造模式可用),则isEnable可传null

参数
camera
isEnable在Func中进行判断,若输出false,则表示该摄像机目前不可用

在文件 GameWidget.cs116 行定义.

这是这个函数的调用关系图:

◆ DetermineInputDevices()

WidgetInputDevice GameWidget.DetermineInputDevices ( )

在文件 GameWidget.cs158 行定义.

这是这个函数的调用关系图:

◆ FindCamera() [1/2]

Camera GameWidget.FindCamera ( Type type,
bool throwOnError = true )

在文件 GameWidget.cs87 行定义.

这是这个函数的调用关系图:

◆ FindCamera() [2/2]

Camera GameWidget.FindCamera ( Type type,
out bool isEnable,
bool throwOnError = true )
参数
type
isEnable用于判定当前摄像机是否可用,比如在非创造模式中调试视角不可用
throwOnError
返回

在文件 GameWidget.cs102 行定义.

函数调用图:

◆ FindCamera< T >()

T GameWidget.FindCamera< T > ( bool throwOnError = true)
类型限制
T :Camera 

在文件 GameWidget.cs78 行定义.

◆ IsCameraAllowed()

bool GameWidget.IsCameraAllowed ( Camera camera)

在文件 GameWidget.cs192 行定义.

◆ IsEntityFirstPersonTarget()

bool GameWidget.IsEntityFirstPersonTarget ( Entity entity)

在文件 GameWidget.cs133 行定义.

函数调用图:
这是这个函数的调用关系图:

◆ IsEntityTarget()

bool GameWidget.IsEntityTarget ( Entity entity)

在文件 GameWidget.cs126 行定义.

这是这个函数的调用关系图:

◆ Update()

override void GameWidget.Update ( )
virtual

重载 Game.Widget .

在文件 GameWidget.cs140 行定义.

函数调用图:

类成员变量说明

◆ m_activeCamera

Camera GameWidget.m_activeCamera

在文件 GameWidget.cs10 行定义.

◆ m_cameras

List<Camera> GameWidget.m_cameras = new()

在文件 GameWidget.cs7 行定义.

◆ m_isCameraEnable

Dictionary<Camera, Func<GameWidget, bool> > GameWidget.m_isCameraEnable = new()

在文件 GameWidget.cs8 行定义.

属性说明

◆ ActiveCamera

Camera GameWidget.ActiveCamera
getset

在文件 GameWidget.cs24 行定义.

◆ Cameras

ReadOnlyList<Camera> GameWidget.Cameras
get

在文件 GameWidget.cs22 行定义.

◆ GameWidgetIndex

int GameWidget.GameWidgetIndex
getset

在文件 GameWidget.cs16 行定义.

◆ GuiWidget

ContainerWidget GameWidget.GuiWidget
getset

在文件 GameWidget.cs14 行定义.

◆ PlayerData

PlayerData GameWidget.PlayerData
getset

在文件 GameWidget.cs20 行定义.

◆ SubsystemGameWidgets

SubsystemGameWidgets GameWidget.SubsystemGameWidgets
getset

在文件 GameWidget.cs18 行定义.

◆ Target

ComponentCreature GameWidget.Target
getset

在文件 GameWidget.cs42 行定义.

◆ ViewWidget

ViewWidget GameWidget.ViewWidget
getset

在文件 GameWidget.cs12 行定义.


该类的文档由以下文件生成:
  • E:/sc/doxygen/SurvivalcraftApi 1.8.2.3/Survivalcraft.Windows/Widget/GameWidget.cs