review
This commit is contained in:
parent
c226024401
commit
92bf5fe16e
|
@ -73,7 +73,7 @@ func HandleWGBuyRecTimeItem(session *netlib.Session, packetId int, data interfac
|
|||
// return nil
|
||||
//}
|
||||
|
||||
func CreateSceneHandler(session *netlib.Session, packetId int, data interface{}) error {
|
||||
func CreateScene(session *netlib.Session, packetId int, data interface{}) error {
|
||||
logger.Logger.Tracef("receive CreateScene %v", data)
|
||||
msg, ok := data.(*server.WGCreateScene)
|
||||
if !ok {
|
||||
|
@ -86,52 +86,53 @@ func CreateSceneHandler(session *netlib.Session, packetId int, data interface{})
|
|||
return nil
|
||||
}
|
||||
|
||||
func DestroyScene(session *netlib.Session, packetId int, data interface{}) error {
|
||||
logger.Logger.Trace("receive WGDestroyScene:", data)
|
||||
msg, ok := data.(*server.WGDestroyScene)
|
||||
if !ok {
|
||||
return nil
|
||||
}
|
||||
|
||||
if !msg.IsGrace {
|
||||
// 立刻删除,不管游戏是否结束
|
||||
for _, v := range msg.Ids {
|
||||
s := base.SceneMgrSington.GetScene(int(v))
|
||||
if s == nil {
|
||||
continue
|
||||
}
|
||||
if gameScene, ok := s.ExtraData.(base.GameScene); ok {
|
||||
gameScene.SceneDestroy(true)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// 游戏结束后删除房间
|
||||
for _, v := range msg.Ids {
|
||||
s := base.SceneMgrSington.GetScene(int(v))
|
||||
if s == nil {
|
||||
continue
|
||||
}
|
||||
if s.IsHundredScene() || s.Gaming {
|
||||
s.SetGraceDestroy()
|
||||
} else {
|
||||
if s.IsMatchScene() {
|
||||
s.SetGraceDestroy()
|
||||
}
|
||||
if gameScene, ok := s.ExtraData.(base.GameScene); ok {
|
||||
gameScene.SceneDestroy(true)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func init() {
|
||||
// 创建房间
|
||||
netlib.Register(int(server.SSPacketID_PACKET_WG_CREATESCENE), &server.WGCreateScene{}, CreateSceneHandler)
|
||||
|
||||
//删除场景
|
||||
// 立刻删除,不管游戏是否结束
|
||||
netlib.RegisterFactory(int(server.SSPacketID_PACKET_WG_DESTROYSCENE), netlib.PacketFactoryWrapper(func() interface{} {
|
||||
return &server.WGDestroyScene{}
|
||||
}))
|
||||
netlib.RegisterHandler(int(server.SSPacketID_PACKET_WG_DESTROYSCENE), netlib.HandlerWrapper(func(s *netlib.Session, packetid int, pack interface{}) error {
|
||||
logger.Logger.Trace("receive WGDestroyScene:", pack)
|
||||
msg, ok := pack.(*server.WGDestroyScene)
|
||||
if !ok {
|
||||
return nil
|
||||
}
|
||||
if !msg.IsGrace {
|
||||
// 立刻删除,不管游戏是否结束
|
||||
for _, v := range msg.Ids {
|
||||
s := base.SceneMgrSington.GetScene(int(v))
|
||||
if s != nil {
|
||||
if gameScene, ok := s.ExtraData.(base.GameScene); ok {
|
||||
gameScene.SceneDestroy(true)
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// 游戏结束后删除房间
|
||||
for _, v := range msg.Ids {
|
||||
s := base.SceneMgrSington.GetScene(int(v))
|
||||
if s != nil {
|
||||
if s.IsHundredScene() || s.Gaming {
|
||||
s.SetGraceDestroy(true)
|
||||
} else {
|
||||
if s.IsMatchScene() {
|
||||
s.SetGraceDestroy(true)
|
||||
}
|
||||
if gameScene, ok := s.ExtraData.(base.GameScene); ok {
|
||||
gameScene.SceneDestroy(true)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
}))
|
||||
netlib.Register(int(server.SSPacketID_PACKET_WG_CREATESCENE), &server.WGCreateScene{}, CreateScene)
|
||||
// 删除房间
|
||||
netlib.Register(int(server.SSPacketID_PACKET_WG_DESTROYSCENE), &server.WGDestroyScene{}, DestroyScene)
|
||||
|
||||
//玩家进入
|
||||
netlib.RegisterFactory(int(server.SSPacketID_PACKET_WG_PLAYERENTER), netlib.PacketFactoryWrapper(func() interface{} {
|
||||
|
|
|
@ -297,8 +297,8 @@ func (this *Scene) SetScenePolicy(sp ScenePolicy) {
|
|||
func (this *Scene) GetGraceDestroy() bool {
|
||||
return this.graceDestroy
|
||||
}
|
||||
func (this *Scene) SetGraceDestroy(graceDestroy bool) {
|
||||
this.graceDestroy = graceDestroy
|
||||
func (this *Scene) SetGraceDestroy() {
|
||||
this.graceDestroy = true
|
||||
}
|
||||
|
||||
func (this *Scene) GetCpControlled() bool {
|
||||
|
|
Loading…
Reference in New Issue