2023-12-07 16:28:29 +08:00
|
|
|
package entity
|
|
|
|
|
|
|
|
import (
|
|
|
|
"joylink.club/ecs"
|
|
|
|
"joylink.club/rtsssimulation/component"
|
|
|
|
)
|
|
|
|
|
|
|
|
// NewThreePositionSwitchEntity 创建三工位隔离开关实体
|
|
|
|
func NewThreePositionSwitchEntity(w ecs.World, id string) *ecs.Entry {
|
2023-12-12 13:23:51 +08:00
|
|
|
wd := GetWorldData(w)
|
|
|
|
e, ok := wd.EntityMap[id]
|
|
|
|
if !ok {
|
|
|
|
e := w.Entry(w.Create(component.UidType, component.ThreePositionSwitchType))
|
|
|
|
component.UidType.SetValue(e, component.Uid{Id: id})
|
|
|
|
component.ThreePositionSwitchType.Set(e, &component.ThreePositionSwitch{Position: component.StpOpened})
|
|
|
|
wd.EntityMap[id] = e
|
|
|
|
}
|
2023-12-07 16:28:29 +08:00
|
|
|
return e
|
|
|
|
}
|
|
|
|
|
|
|
|
// NewHandcartSwitchEntity 创建手车实体
|
|
|
|
func NewHandcartSwitchEntity(w ecs.World, id string) *ecs.Entry {
|
2023-12-12 13:23:51 +08:00
|
|
|
wd := GetWorldData(w)
|
|
|
|
e, ok := wd.EntityMap[id]
|
|
|
|
if !ok {
|
|
|
|
e := w.Entry(w.Create(component.UidType, component.HandcartSwitchType))
|
|
|
|
component.UidType.SetValue(e, component.Uid{Id: id})
|
|
|
|
component.HandcartSwitchType.Set(e, &component.HandcartSwitch{Position: component.HpOpened})
|
|
|
|
wd.EntityMap[id] = e
|
|
|
|
}
|
2023-12-07 16:28:29 +08:00
|
|
|
return e
|
|
|
|
}
|