| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- package player
- import (
- "f1-game/internal/code"
- "f1-game/internal/enum"
- nameRemote "f1-game/internal/name/remote"
- "f1-game/internal/pb"
- "f1-game/nodes/game/player/asset"
- "f1-game/nodes/game/player/gm"
- "strings"
- )
- func (p *actorPlayer) initGM() {
- p.Remote().Register(nameRemote.Player_SendGM, p.sendGM)
- p.Remote().Register(nameRemote.Player_GetInfo, p.getPlayerInfo)
- }
- // gm操作
- func (p *actorPlayer) sendGM(req *pb.Str) int32 {
- gmStr := req.Value
- if !strings.HasPrefix(gmStr, "/gm ") {
- return code.RequestParamsError
- }
- return gm.Service().SendGM(p.playerID, gmStr)
- }
- // 获取玩家信息
- func (p *actorPlayer) getPlayerInfo(req *pb.I64) (*pb.PlayerDetailInfo, int32) {
- playerDetail := &pb.PlayerDetailInfo{}
- playerTable := p.PlayerTable()
- // 获取账号信息
- account := &pb.AccountInfo{}
- account.AccountID = playerTable.OpenID
- playerDetail.Account = account
- // 获取玩家信息
- playerDetail.Player = playerTable.ToPlayerInfo()
- playerDetail.Player.IsOnline = p.isOnline
- // 获取玩家资产
- for _, itemID := range enum.OpsItemInfoList {
- count := asset.Service().Get(p.playerID, itemID)
- item := &pb.I32I64{
- Key: itemID,
- Value: count,
- }
- playerDetail.Items = append(playerDetail.Items, item)
- }
- // 获取英雄列表
- heroTable := p.HeroTable()
- playerDetail.Heroes = heroTable.Heroes.HeroGroupMap()
- // TODO 充值数据
- return playerDetail, code.OK
- }
|