diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 802b0d0..7c9e6ef 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -15,7 +15,7 @@ build-job: script: # 拷贝到GOPATH - echo '拷贝到GOPATH' - - cp -rfvp ./* $GOPATH/src/$ProjectPath + - cp -rfp ./* $GOPATH/src/$ProjectPath # 进入项目目录 - cd $GOPATH/src/$ProjectPath # 编译 diff --git a/worldsrv/action_server.go b/worldsrv/action_server.go index f3f2f91..ece3850 100644 --- a/worldsrv/action_server.go +++ b/worldsrv/action_server.go @@ -236,7 +236,7 @@ func init() { netlib.RegisterHandler(int(serverproto.SSPacketID_PACKET_GW_SCENESTART), netlib.HandlerWrapper(func(s *netlib.Session, packetid int, pack interface{}) error { logger.Logger.Trace("receive SSPacketID_PACKET_GW_SCENESTART GWSceneStart:", pack) if msg, ok := pack.(*serverproto.GWSceneStart); ok { - scene := SceneMgrSingleton.GetScene(int(msg.GetRoomId())) + scene := SceneMgrSingleton.GetScene(int(msg.GetRoomId()), true) if scene != nil { scene.starting = msg.GetStart() scene.currRound = msg.GetCurrRound() @@ -264,7 +264,7 @@ func init() { netlib.RegisterHandler(int(serverproto.SSPacketID_PACKET_GW_SCENESTATE), netlib.HandlerWrapper(func(s *netlib.Session, packetid int, pack interface{}) error { logger.Logger.Trace("receive SSPacketID_PACKET_GW_SCENESTATE GWSceneState:", pack) if msg, ok := pack.(*serverproto.GWSceneState); ok { - scene := SceneMgrSingleton.GetScene(int(msg.GetRoomId())) + scene := SceneMgrSingleton.GetScene(int(msg.GetRoomId()), true) if scene != nil { scene.sp.OnSceneState(scene, int(msg.GetRoomState())) } @@ -339,7 +339,7 @@ func init() { netlib.RegisterHandler(int(serverproto.SSPacketID_PACKET_GW_PLAYERFORCELEAVE), netlib.HandlerWrapper(func(s *netlib.Session, packetid int, pack interface{}) error { if msg, ok := pack.(*serverproto.GWPlayerForceLeave); ok { logger.Logger.Warn("receive GWPlayerForceLeave:", msg) - scene := SceneMgrSingleton.GetScene(int(msg.GetRoomId())) + scene := SceneMgrSingleton.GetScene(int(msg.GetRoomId()), true) if scene != nil { p := PlayerMgrSington.GetPlayerBySnId(msg.GetPlayerId()) if p != nil { @@ -384,7 +384,7 @@ func init() { netlib.RegisterHandler(int(serverproto.SSPacketID_PACKET_GW_PLAYERDATA), netlib.HandlerWrapper(func(s *netlib.Session, packetid int, pack interface{}) error { logger.Logger.Trace("receive GWPlayerBet:", pack) if msg, ok := pack.(*serverproto.GWPlayerData); ok { - scene := SceneMgrSingleton.GetScene(int(msg.GetSceneId())) + scene := SceneMgrSingleton.GetScene(int(msg.GetSceneId()), true) if scene == nil { return nil } diff --git a/worldsrv/coinscenemgr.go b/worldsrv/coinscenemgr.go index c29ebfb..c84f6d1 100644 --- a/worldsrv/coinscenemgr.go +++ b/worldsrv/coinscenemgr.go @@ -175,7 +175,7 @@ func (m *CoinSceneMgr) PlayerLeave(p *Player, reason int) bool { // 游戏服解散房间消息触发 // sceneId 房间id func (m *CoinSceneMgr) OnDestroyScene(sceneId int) { - if s := SceneMgrSingleton.GetScene(sceneId); s != nil && s.csp != nil { + if s := SceneMgrSingleton.GetScene(sceneId, true); s != nil && s.csp != nil { s.csp.onDestroyScene(sceneId) } } diff --git a/worldsrv/hundredscenemgr.go b/worldsrv/hundredscenemgr.go index e39066a..4c70db9 100644 --- a/worldsrv/hundredscenemgr.go +++ b/worldsrv/hundredscenemgr.go @@ -111,7 +111,7 @@ func (this *HundredSceneMgr) PlayerTryLeave(p *Player) gamehallproto.OpResultCod // OnDestroyScene 房间销毁 func (this *HundredSceneMgr) OnDestroyScene(sceneId int) { - s := SceneMgrSingleton.GetScene(sceneId) + s := SceneMgrSingleton.GetScene(sceneId, true) if s == nil { return } @@ -416,7 +416,7 @@ func (this *HundredSceneMgr) OnPlatformDestroyByGameFreeId(p *Platform, gameFree } func init() { - module.RegisteModule(HundredSceneMgrSingleton, time.Second*5, 0) + module.RegisteModule(HundredSceneMgrSingleton, time.Hour, 0) PlatformMgrSingleton.RegisterObserver(HundredSceneMgrSingleton) PlatformGameGroupMgrSington.RegisteObserver(HundredSceneMgrSingleton) } diff --git a/worldsrv/scenemgr.go b/worldsrv/scenemgr.go index 4f98278..3699a4e 100644 --- a/worldsrv/scenemgr.go +++ b/worldsrv/scenemgr.go @@ -94,7 +94,7 @@ func (m *SceneMgr) GenPassword() string { } func (m *SceneMgr) GetPlatformBySceneId(sceneId int) string { - s := m.GetScene(sceneId) + s := m.GetScene(sceneId, true) if s != nil && s.platform != nil { return s.platform.IdStr }