player.go 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. package mapCall
  2. import (
  3. capp "f1-game/internal/cherry_app"
  4. "f1-game/internal/code"
  5. "f1-game/internal/enum"
  6. nameActor "f1-game/internal/name/actor"
  7. nameRemote "f1-game/internal/name/remote"
  8. "f1-game/internal/pb"
  9. "f1-game/internal/types"
  10. assetOrigin "f1-game/nodes/game/player/asset/origin"
  11. cfacade "github.com/cherry-game/cherry/facade"
  12. )
  13. var (
  14. Player = &playerCall{}
  15. )
  16. type playerCall struct{}
  17. func (p *playerCall) NotifyRebornPush(playerID int64, x, y int32) {
  18. targetPath := cfacade.NewChildPath("", nameActor.Map_Player, playerID)
  19. capp.Call(targetPath, nameRemote.MapPlayer_NotifyRebornPush, &pb.Point{
  20. X: x,
  21. Y: y,
  22. })
  23. }
  24. func (p *playerCall) AutoDefendRequest(playerID, buildObjectID int64, teamIDs []int32) {
  25. targetPath := cfacade.NewChildPath("", nameActor.Map_Player, playerID)
  26. capp.Call(targetPath, nameRemote.MapPlayer_AutoDefendRequest, &pb.AutoDefendRequest{
  27. BuildObjectID: buildObjectID,
  28. TeamIDs: teamIDs,
  29. })
  30. }
  31. func (p *playerCall) UpdateTeam(playerID int64, req *pb.UpdateTeam) {
  32. targetPath := cfacade.NewChildPath("", nameActor.Map_Player, playerID)
  33. capp.Call(targetPath, nameRemote.MapPlayer_UpdateTeam, req)
  34. }
  35. func (p *playerCall) AddAsset(playerID int64, itemID int32, itemCount int64, ao assetOrigin.Origin) int32 {
  36. addAssets := types.Assets{
  37. {
  38. ID: itemID,
  39. Num: itemCount,
  40. },
  41. }
  42. return p.AddAssets(playerID, addAssets, ao)
  43. }
  44. func (p *playerCall) AddAssets(playerID int64, addAssets types.Assets, ao assetOrigin.Origin) int32 {
  45. return p.AddPBAssets(playerID, addAssets.ToProto(), ao)
  46. }
  47. func (p *playerCall) AddPBAssets(playerID int64, addAssets []*pb.Asset, ao assetOrigin.Origin) int32 {
  48. targetPath := cfacade.NewChildPath("", nameActor.Map_Player, playerID)
  49. capp.Call(targetPath, nameRemote.MapPlayer_AssetAdd, &pb.PlayerAddAssets{
  50. AddAssets: addAssets,
  51. Origin: ao.ID,
  52. })
  53. return code.OK
  54. }
  55. func (p *playerCall) UpdateWatcherPoint(playerID int64, point *pb.Point) {
  56. targetPath := cfacade.NewChildPath("", nameActor.Map_Player, playerID)
  57. capp.Call(targetPath, nameRemote.MapPlayer_UpdateWatcherPoint, point)
  58. }
  59. func (p *playerCall) MainCitySiege(playerID int64, mainCityObjectID int64) {
  60. targetPath := cfacade.NewChildPath("", nameActor.Map_Player, playerID)
  61. capp.Call(targetPath, nameRemote.MapPlayer_MainCitySiege, &pb.I64{
  62. Value: mainCityObjectID,
  63. })
  64. }
  65. func (p *playerCall) AutoDefendQuit(playerID int64, teamIDList ...int32) {
  66. targetPath := cfacade.NewChildPath("", nameActor.Map_Player, playerID)
  67. capp.Call(targetPath, nameRemote.MapPlayer_AutoDefendQuit, &pb.I32List{
  68. List: teamIDList,
  69. })
  70. }
  71. // AutoReborn 玩家自动重生
  72. func (p *playerCall) AutoReborn(playerID int64) {
  73. targetPath := cfacade.NewChildPath("", nameActor.Map_Player, playerID)
  74. capp.Call(targetPath, nameRemote.MapPlayer_AutoReborn, nil)
  75. }
  76. func (p *playerCall) AutoRetreat(playerID int64, teamID int32, retreatState enum.MarchState, isRemoveRedeploy bool) {
  77. req := &pb.AutoRetreat{
  78. TeamID: teamID,
  79. MarchState: int32(retreatState),
  80. IsRemoveRedeploy: isRemoveRedeploy,
  81. }
  82. targetPath := cfacade.NewChildPath("", nameActor.Map_Player, playerID)
  83. capp.Call(targetPath, nameRemote.MapPlayer_AutoRetreat, req)
  84. }
  85. func (p *playerCall) MapPlayerBattleStart(playerID int64, req *pb.BattleReq) {
  86. targetPath := cfacade.NewChildPath("", nameActor.Map_Player, playerID)
  87. capp.Call(targetPath, nameRemote.MapPlayer_BattleStart, req)
  88. }
  89. func (p *playerCall) MapPlayerUpdateTeamState(playerID int64, teamID int32, teamState enum.TeamState) {
  90. target := cfacade.NewChildPath("", nameActor.Map_Player, playerID)
  91. req := &pb.I32I32{Key: teamID, Value: int32(teamState)}
  92. capp.Call(target, nameRemote.MapPlayer_UpdateTeamState, req)
  93. }
  94. func (p *playerCall) BattleReportAdd(playerID int64, req *pb.ReportGroup) {
  95. targetPath := cfacade.NewChildPath("", nameActor.Map_Player, playerID)
  96. capp.Call(targetPath, nameRemote.MapPlayer_ReportAdd, req)
  97. }
  98. func (p *playerCall) SubTeamTroopsNum(playerID int64, req *pb.TeamBattleDamage) {
  99. targetPath := cfacade.NewChildPath("", nameActor.Map_Player, playerID)
  100. capp.Call(targetPath, nameRemote.MapPlayer_SubTeamTroopsNum, req)
  101. }
  102. func (p *playerCall) ExchangeItemDeliver(req *pb.PlayerExchangeItemDeliver) int32 {
  103. targetPath := cfacade.NewChildPath("", nameActor.Map_Player, req.PlayerID)
  104. return capp.Call(targetPath, nameRemote.MapPlayerExchange_ItemDeliver, req)
  105. }
  106. func (p *playerCall) ExchangeItemRetrieve(playerID int64, req *pb.ExchangeDetail) {
  107. targetPath := cfacade.NewChildPath("", nameActor.Map_Player, playerID)
  108. capp.Call(targetPath, nameRemote.MapPlayerExchange_ItemRetrieve, req)
  109. }
  110. func (p *playerCall) ExchangeItemCanceled(playerID int64, req *pb.ExchangeDetail) {
  111. targetPath := cfacade.NewChildPath("", nameActor.Map_Player, playerID)
  112. capp.Call(targetPath, nameRemote.MapPlayerExchange_ItemCanceled, req)
  113. }
  114. func (p *playerCall) ExchangeItemRemove(playerID int64, actType enum.ExchangeActType, transactionID string) {
  115. req := &pb.I32Str{
  116. Key: int32(actType),
  117. Value: transactionID,
  118. }
  119. targetPath := cfacade.NewChildPath("", nameActor.Map_Player, playerID)
  120. capp.Call(targetPath, nameRemote.MapPlayerExchange_ItemRemove, req)
  121. }
  122. func (p *playerCall) ScoutSearch(queueID int32, playerID, targetPlayerID int64) {
  123. req := &pb.I32I64{
  124. Key: queueID,
  125. Value: playerID,
  126. }
  127. targetPath := cfacade.NewChildPath("", nameActor.Map_Player, targetPlayerID)
  128. capp.Call(targetPath, nameRemote.MapScout_Seach, req)
  129. }
  130. func (p *playerCall) ScoutSearchResult(queueID int32, playerID, targetPlayerID int64, targetPlayerName string, assets *types.Assets) {
  131. proto := assets.ToAssetListProto()
  132. req := &pb.ScoutSearchResult{
  133. QueueID: queueID,
  134. TargetPlayerID: targetPlayerID,
  135. TargetPlayerName: targetPlayerName,
  136. Assets: &proto,
  137. }
  138. targetPath := cfacade.NewChildPath("", nameActor.Map_Player, playerID)
  139. capp.Call(targetPath, nameRemote.MapScout_SeachResult, req)
  140. }