package actorRemote import ( capp "f1-game/internal/cherry_app" "f1-game/internal/code" nameActor "f1-game/internal/name/actor" nameRemote "f1-game/internal/name/remote" "f1-game/internal/pb" "f1-game/internal/types" assetOrigin "f1-game/nodes/game/player/asset/origin" cfacade "github.com/cherry-game/cherry/facade" clog "github.com/cherry-game/cherry/logger" ) type mapPlayer struct { } func newMapPlayer() *mapPlayer { return &mapPlayer{} } func (p *mapPlayer) AddAssets(mapNodeID string, playerID int64, addAssets types.Assets, ao assetOrigin.Origin) int32 { if len(mapNodeID) <= 0 { clog.Warnf("[AddAssets] map node not found. playerID = %d, addAssets = %+v, ao=%+v", playerID, addAssets, ao) return code.NodeMapNotFound } target := cfacade.NewChildPath(mapNodeID, nameActor.Map_Player, playerID) capp.Call(target, nameRemote.MapPlayer_AssetAdd, &pb.PlayerAddAssets{ AddAssets: addAssets.ToProto(), Origin: ao.ID, }) return code.OK } func (p *mapPlayer) LeagueJoin(playerID int64, req *pb.LeagueJoinNotice) int32 { // 通知map_player 玩家加入联盟 targetPath := cfacade.NewChildPath(capp.NodeID(), nameActor.Map_Player, playerID) return capp.CallWait(targetPath, nameRemote.MapLeague_JoinNotice, req, nil) }