diff --git a/worldsrv/action_game.go b/worldsrv/action_game.go index 2e66760..06a7551 100644 --- a/worldsrv/action_game.go +++ b/worldsrv/action_game.go @@ -1355,6 +1355,13 @@ func CSCreatePrivateRoomHandler(s *netlib.Session, packetId int, data interface{ // 创建房间 csp := CoinSceneMgrSingleton.GetCoinScenePool(p.GetPlatform().IdStr, msg.GetGameFreeId()) + + if afterCoin <= 0 || (csp.dbGameFree.GetLimitCoin() > 0 && afterCoin < csp.dbGameFree.GetLimitCoin()) { + code = gamehall.OpResultCode_Game_OPRC_CoinNotEnough_Game + send() + return nil + } + roomId := SceneMgrSingleton.GenOnePrivateSceneId() scene := SceneMgrSingleton.CreateScene(&CreateSceneParam{ CreateId: p.SnId, @@ -1387,12 +1394,6 @@ func CSCreatePrivateRoomHandler(s *netlib.Session, packetId int, data interface{ return nil } - if afterCoin <= 0 || (scene.dbGameFree.GetLimitCoin() > 0 && afterCoin < scene.dbGameFree.GetLimitCoin()) { - code = gamehall.OpResultCode_Game_OPRC_CoinNotEnough_Game - send() - return nil - } - csp.AddScene(scene) sp.CostPayment(scene, p.SnId)