signal 2xh1 驱采
This commit is contained in:
parent
3e8fe93701
commit
90e373d3fd
@ -7,13 +7,16 @@ type LightDrive struct {
|
||||
Td bool
|
||||
}
|
||||
|
||||
// DsTag 灯色标签定义
|
||||
type DsTag = ecs.IComponentType
|
||||
|
||||
// 灯色标签
|
||||
var (
|
||||
LdTag = ecs.NewTag() //绿
|
||||
HdTag = ecs.NewTag() //红
|
||||
UdTag = ecs.NewTag() //黄
|
||||
BdTag = ecs.NewTag() //白
|
||||
AdTag = ecs.NewTag() //蓝
|
||||
LdTag DsTag = ecs.NewTag() //绿
|
||||
HdTag = ecs.NewTag() //红
|
||||
UdTag = ecs.NewTag() //黄
|
||||
BdTag = ecs.NewTag() //白
|
||||
AdTag = ecs.NewTag() //蓝
|
||||
)
|
||||
|
||||
// 组件
|
||||
|
@ -10,7 +10,7 @@ type SignalLights struct {
|
||||
var SignalLightsType = ecs.NewComponentType[SignalLights]()
|
||||
|
||||
// GetLightByTag 根据标签获取灯位列表中的某个灯
|
||||
func (sl *SignalLights) GetLightByTag(dTag ecs.IComponentType) *ecs.Entry {
|
||||
func (sl *SignalLights) GetLightByTag(dTag DsTag) *ecs.Entry {
|
||||
for _, light := range sl.Lights {
|
||||
if light.HasComponent(dTag) {
|
||||
return light
|
||||
|
@ -46,7 +46,7 @@ func NewLightAEntity(w ecs.World) *ecs.Entry {
|
||||
}
|
||||
|
||||
// NewLights 创建灯位列表(灯位顺序与lightTags一致)
|
||||
func NewLights(w ecs.World, lightTags ...ecs.IComponentType) []*ecs.Entry {
|
||||
func NewLights(w ecs.World, lightTags ...component.DsTag) []*ecs.Entry {
|
||||
ls := make([]*ecs.Entry, 0, len(lightTags))
|
||||
for _, lightTag := range lightTags {
|
||||
lightEntry := NewLightEntity(w)
|
||||
|
@ -74,6 +74,6 @@ func newSignalEntity(w ecs.World, uid string, worldData *component.WorldData) *e
|
||||
}
|
||||
|
||||
// 新建灯位列表
|
||||
func newSignalLights(w ecs.World, lightTags ...ecs.IComponentType) *component.SignalLights {
|
||||
func newSignalLights(w ecs.World, lightTags ...component.DsTag) *component.SignalLights {
|
||||
return &component.SignalLights{Lights: NewLights(w, lightTags...)}
|
||||
}
|
||||
|
@ -1 +1 @@
|
||||
Subproject commit e7797346722a572814539d9a453789b89ffe6bf4
|
||||
Subproject commit af605020f1bccf1f1b2ab5a4ae4966d1c6c9776c
|
Loading…
Reference in New Issue
Block a user