Class "EntityLaser"⚓︎
Info
You can get this class by using the following function:
- Entity.ToLaser()
- EntityPlayer.FireBrimstone()
- EntityPlayer.FireDelayedBrimstone()
- EntityPlayer.FireTechLaser()
- EntityPlayer.FireTechXLaser()
Example Code
local brimstoneEntity = Isaac.GetPlayer():FireBrimstone(Vector(1, 0))
Class Diagram⚓︎
classDiagram
class Entity:::diagramCurrentPage
class EntityBomb
class EntityEffect
class EntityFamiliar
class EntityKnife
class EntityLaser
class EntityNPC
class EntityPickup
class EntityPlayer
class EntityProjectile
class EntityTear
Entity <|-- EntityBomb
Entity <|-- EntityEffect
Entity <|-- EntityFamiliar
Entity <|-- EntityKnife
Entity <|-- EntityLaser
Entity <|-- EntityNPC
Entity <|-- EntityPickup
Entity <|-- EntityPlayer
Entity <|-- EntityProjectile
Entity <|-- EntityTear
link Entity "Entity.html" "Go to page for 'Entity' class"
link EntityBomb "EntityBomb.html" "Go to page for 'EntityBomb' class"
link EntityEffect "EntityEffect.html" "Go to page for 'EntityEffect' class"
link EntityFamiliar "EntityFamiliar.html" "Go to page for 'EntityFamiliar' class"
link EntityKnife "EntityKnife.html" "Go to page for 'EntityKnife' class"
link EntityLaser "EntityLaser.html" "Go to page for 'EntityLaser' class"
link EntityNPC "EntityNPC.html" "Go to page for 'EntityNPC' class"
link EntityPickup "EntityPickup.html" "Go to page for 'EntityPickup' class"
link EntityPlayer "EntityPlayer.html" "Go to page for 'EntityPlayer' class"
link EntityProjectile "EntityProjectile.html" "Go to page for 'EntityProjectile' class"
link EntityTear "EntityTear.html" "Go to page for 'EntityTear' class"
Functions⚓︎
Add·Tear·Flags ()⚓︎
void AddTearFlags ( TearFlags Flags )⚓︎
Calculate·End·Point ()⚓︎
static Vector CalculateEndPoint ( Vector Start, Vector Dir, Vector PositionOffset, Entity Parent, float Margin )⚓︎
Clear·Tear·Flags ()⚓︎
void ClearTearFlags ( TearFlags Flags )⚓︎
Get·End·Point ()⚓︎
const Vector GetEndPoint ( )⚓︎
Get·Non·Optimized·Samples ()⚓︎
const VectorList GetNonOptimizedSamples ( )⚓︎
返回一个向量表(VectorList)用于表达激光的路径。通常会返回沿激光路径均匀分布的51个点,相对于GetSamples()
只返回表示激光路径所需的最少点。
Example Usage
1 2 3 4 5 6 |
|
Get·Render·Z ()⚓︎
int GetRenderZ ( )⚓︎
Get·Samples ()⚓︎
const VectorList GetSamples ( )⚓︎
返回一个向量表(VectorList)表示激光的路径。与 GetNonOptimizedSamples()
不同,此函数返回尽可能少的点,同时仍然正确表示激光的路径。
例如,对于完全直的激光,GetNonOptimizedSamples()
将始终返回 51 个点,但此函数仅返回 2 个。
Example Usage
1 2 3 4 5 6 |
|
Has·Tear·Flags ()⚓︎
boolean HasTearFlags ( TearFlags Flags )⚓︎
Is·Circle·Laser ()⚓︎
boolean IsCircleLaser ( )⚓︎
Note
此函数无法区分不同类型的圆形激光,但可以通过其子类型进行识别:
- 0 - 线性激光(典型的激光,具有起点和终点)
- 1 - 环形鲁多维科(用于鲁多维科科技协同的受控激光环)
- 2 - 环形投射物(科技X)
- 3 - 环形跟随父物体(虚空之喉)
- 4 - 无碰撞(无碰撞溅射,例如科技零)
Is·Sample·Laser ()⚓︎
boolean IsSampleLaser ( )⚓︎
Set·Active·Rotation ()⚓︎
void SetActiveRotation ( int Delay, float AngleDegrees, float RotationSpd, boolean TimeoutComplete )⚓︎
Set·Black·Hp·Drop·Chance ()⚓︎
void SetBlackHpDropChance ( float Chance )⚓︎
Set·Homing·Type ()⚓︎
void SetHomingType ( LaserHomingType Type )⚓︎
Set·Max·Distance ()⚓︎
void SetMaxDistance ( float Distance )⚓︎
Set·Multidimensional·Touched ()⚓︎
void SetMultidimensionalTouched ( boolean Value )⚓︎
Set·One·Hit ()⚓︎
void SetOneHit ( boolean Value )⚓︎
Set·Timeout ()⚓︎
void SetTimeout ( int Value )⚓︎
Shoot·Angle ()⚓︎
static EntityLaser ShootAngle ( int Variant, Vector SourcePos, float AngleDegrees, int Timeout, Vector PosOffset, Entity Source )⚓︎
简单化静态助手以简化激光的生成
Variables⚓︎
Angle⚓︎
float Angle⚓︎
Angle·Degrees⚓︎
float AngleDegrees⚓︎
Black·Hp·Drop·Chance⚓︎
float BlackHpDropChance⚓︎
For maw of void.
Bounce·Laser⚓︎
Entity BounceLaser⚓︎
Curve·Strength⚓︎
float CurveStrength⚓︎
My Reflection.
Disable·Follow·Parent⚓︎
boolean DisableFollowParent⚓︎
设置为其他激光的子项时使用,例如橡胶胶水的反弹。禁用 m_ParentOffset。
End·Point⚓︎
Vector EndPoint⚓︎
将会保存终点,以便在外部访问时不需要重新计算。
First·Update⚓︎
boolean FirstUpdate⚓︎
Grid·Hit⚓︎
boolean GridHit⚓︎
返回 true
如果激光可以被网格实体阻挡,并且在该帧被阻挡。
Homing·Laser⚓︎
HomingLaser HomingLaser⚓︎
Homing·Type⚓︎
LaserHomingType HomingType⚓︎
Is·Active·Rotating⚓︎
boolean IsActiveRotating⚓︎
Laser·Length⚓︎
float LaserLength⚓︎
Last·Angle·Degrees⚓︎
float LastAngleDegrees⚓︎
Max·Distance⚓︎
float MaxDistance⚓︎
Used to trim brimstone for Azazel (0 - off)
One·Hit⚓︎
boolean OneHit⚓︎
Laser hits only once.
Parent·Offset⚓︎
Vector ParentOffset⚓︎
Radius⚓︎
float Radius⚓︎
Rotation·Degrees⚓︎
float RotationDegrees⚓︎
Rotation·Delay⚓︎
int RotationDelay⚓︎
Rotation·Spd⚓︎
float RotationSpd⚓︎
Sample·Laser⚓︎
boolean SampleLaser⚓︎
Shrink⚓︎
boolean Shrink⚓︎
Start·Angle·Degrees⚓︎
float StartAngleDegrees⚓︎
一些激光在旋转时会有随机变化,因此它们需要记住起始点。
Tear·Flags⚓︎
TearFlags TearFlags⚓︎
Timeout⚓︎
int Timeout⚓︎
Last update:
September 6, 2025