| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- package player
- import (
- "f1-game/internal/code"
- "f1-game/internal/enum"
- nameEvent "f1-game/internal/name/event"
- nameRemote "f1-game/internal/name/remote"
- "f1-game/internal/pb"
- "f1-game/internal/types"
- "f1-game/nodes/game/player/asset"
- assetOrigin "f1-game/nodes/game/player/asset/origin"
- "f1-game/nodes/game/player/currency"
- cfacade "github.com/cherry-game/cherry/facade"
- )
- func (p *actorPlayer) initAsset() {
- p.Remote().Register(nameRemote.Player_AssetAdd, p.assetAdd)
- p.Remote().Register(nameRemote.Player_AssetSub, p.assetSub)
- p.Remote().Register(nameRemote.Player_AssetCheck, p.assetCheck)
- p.EventRegister(nameEvent.Vip_LevelUp, p.refreshItemLimit)
- p.EventRegister(nameEvent.Vip_Status, p.refreshItemLimit)
- }
- // assetAdd 添加资产
- func (p *actorPlayer) assetAdd(req *pb.PlayerAddAssets) (*pb.AssetList, int32) {
- addAssets := types.Assets{}
- addAssets.FillProto(req.AddAssets)
- ao := assetOrigin.Get(req.Origin)
- retAssets, errCode := asset.Service().Adds(p.playerID, addAssets, ao, true)
- if code.IsFail(errCode) {
- return nil, errCode
- }
- rsp := retAssets.ToAssetListProto()
- return &rsp, errCode
- }
- // assetSub 扣除资产
- func (p *actorPlayer) assetSub(req *pb.PlayerAddAssets) (*pb.AssetList, int32) {
- addAssets := types.Assets{}
- addAssets.FillProto(req.AddAssets)
- ao := assetOrigin.Get(req.Origin)
- retAssets, errCode := asset.Service().Subs(p.playerID, addAssets, ao)
- if code.IsFail(errCode) {
- return nil, errCode
- }
- rsp := retAssets.ToAssetListProto()
- return &rsp, errCode
- }
- // assetSub 检测资产
- func (p *actorPlayer) assetCheck(req *pb.AssetList) int32 {
- assets := types.Assets{}
- assets.FillProto(req.List)
- return asset.Service().IsAllEnough(p.playerID, assets)
- }
- // 刷新货币上限
- func (p *actorPlayer) refreshItemLimit(e cfacade.IEventData) {
- currency.Service().RefreshCurrencyMax(p.playerID, true, enum.GameItemMaxNumList...)
- }
|