modify 结算
This commit is contained in:
parent
990e211d0d
commit
d481ee25b9
|
@ -74,6 +74,7 @@ type TienLenSceneData struct {
|
||||||
RoundLogId []string // 每局牌局记录id
|
RoundLogId []string // 每局牌局记录id
|
||||||
CustomLogSave bool // 是否已经保存日志
|
CustomLogSave bool // 是否已经保存日志
|
||||||
PlayerAward map[int32]*[]*model.Item // 房卡场最终奖励
|
PlayerAward map[int32]*[]*model.Item // 房卡场最终奖励
|
||||||
|
Bill *tienlen.SCTienLenGameBilled // 结算信息
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewTienLenSceneData(s *base.Scene) *TienLenSceneData {
|
func NewTienLenSceneData(s *base.Scene) *TienLenSceneData {
|
||||||
|
|
|
@ -1743,7 +1743,6 @@ func (this *SceneBilledStateTienLen) OnEnter(s *base.Scene) {
|
||||||
}()
|
}()
|
||||||
//在这里执行结算
|
//在这里执行结算
|
||||||
if sceneEx, ok := s.GetExtraData().(*TienLenSceneData); ok {
|
if sceneEx, ok := s.GetExtraData().(*TienLenSceneData); ok {
|
||||||
|
|
||||||
addItems := func(billData *tienlen.TienLenPlayerGameBilled, sceneTypeScore, vipAdd, vipScore, roleAdd, roleScore, weekCardScore, skinAdd, skinScore int64) {
|
addItems := func(billData *tienlen.TienLenPlayerGameBilled, sceneTypeScore, vipAdd, vipScore, roleAdd, roleScore, weekCardScore, skinAdd, skinScore int64) {
|
||||||
// 场次加成配置
|
// 场次加成配置
|
||||||
if sceneTypeScore > 0 {
|
if sceneTypeScore > 0 {
|
||||||
|
@ -2706,6 +2705,7 @@ func (this *SceneBilledStateTienLen) OnEnter(s *base.Scene) {
|
||||||
proto.SetDefaults(pack)
|
proto.SetDefaults(pack)
|
||||||
s.Broadcast(int(tienlen.TienLenPacketID_PACKET_SCTienLenGameBilled), pack, 0)
|
s.Broadcast(int(tienlen.TienLenPacketID_PACKET_SCTienLenGameBilled), pack, 0)
|
||||||
logger.Logger.Trace("TienLenPacketID_PACKET_SCTienLenGameBilled gameFreeId:", sceneEx.GetGameFreeId(), ";pack:", pack)
|
logger.Logger.Trace("TienLenPacketID_PACKET_SCTienLenGameBilled gameFreeId:", sceneEx.GetGameFreeId(), ";pack:", pack)
|
||||||
|
sceneEx.Bill = pack
|
||||||
|
|
||||||
//if sceneEx.IsCustom() && sceneEx.TotalOfGames > 0 {
|
//if sceneEx.IsCustom() && sceneEx.TotalOfGames > 0 {
|
||||||
// for _, v := range tienlenType.PlayerData {
|
// for _, v := range tienlenType.PlayerData {
|
||||||
|
@ -2943,6 +2943,7 @@ func (this *SceneBilledStateTienLen) OnLeave(s *base.Scene) {
|
||||||
if len(sceneEx.tianHuSnids) != sceneEx.GetGameingPlayerCnt() { //非和局
|
if len(sceneEx.tianHuSnids) != sceneEx.GetGameingPlayerCnt() { //非和局
|
||||||
sceneEx.lastWinSnid = sceneEx.winSnids[0]
|
sceneEx.lastWinSnid = sceneEx.winSnids[0]
|
||||||
}
|
}
|
||||||
|
sceneEx.Bill = nil
|
||||||
hasLeave := false
|
hasLeave := false
|
||||||
//剔除下线玩家
|
//剔除下线玩家
|
||||||
for i := 0; i < sceneEx.GetPlayerNum(); i++ {
|
for i := 0; i < sceneEx.GetPlayerNum(); i++ {
|
||||||
|
@ -3038,6 +3039,16 @@ func (this *SceneBilledStateTienLen) OnPlayerOp(s *base.Scene, p *base.Player, o
|
||||||
// 玩家事件
|
// 玩家事件
|
||||||
func (this *SceneBilledStateTienLen) OnPlayerEvent(s *base.Scene, p *base.Player, evtcode int, params []int64) {
|
func (this *SceneBilledStateTienLen) OnPlayerEvent(s *base.Scene, p *base.Player, evtcode int, params []int64) {
|
||||||
this.SceneBaseStateTienLen.OnPlayerEvent(s, p, evtcode, params)
|
this.SceneBaseStateTienLen.OnPlayerEvent(s, p, evtcode, params)
|
||||||
|
sceneEx, ok := s.GetExtraData().(*TienLenSceneData)
|
||||||
|
if !ok {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
switch evtcode {
|
||||||
|
case base.PlayerEventRehold, base.PlayerEventReturn:
|
||||||
|
if sceneEx.Bill != nil && !p.IsMarkFlag(base.PlayerState_Ready) {
|
||||||
|
p.SendToClient(int(tienlen.TienLenPacketID_PACKET_SCTienLenGameBilled), sceneEx.Bill)
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (this *SceneBilledStateTienLen) OnTick(s *base.Scene) {
|
func (this *SceneBilledStateTienLen) OnTick(s *base.Scene) {
|
||||||
|
|
Loading…
Reference in New Issue