Files
bl/logic/controller/room_buy.go
昔念 502d497dce ```
refactor(controller): 重构控制器函数命名和代码注释

- 重命名 EGG 函数为 EggGamePlay,更新宠物生成逻辑
- 重命名 Leiyi 函数为 GetLeiyiTrainStatus
- 重命名 Cacthpet 函数为 CatchPet,添加详细函数注释
- 为 ArenaSetOwner、ArenaFightOwner、ArenaGetInfo、ArenaUpfight、ArenaOwnerAcce
  等擂台相关函数添加注释前缀
- 重命名 PETKing 函数为 PetKing
- 重命名 FRESH_CHOICE_FIGHT_LEVEL 函数为 FreshChoiceFightLevel,添加详细参数说明
- 重命名 BuyMItem 函数为 BuyMultipleItems
- 重命名 ITEM_S
2025-12-24 19:03:11 +08:00

29 lines
810 B
Go

package controller
import (
"blazing/common/data/xmlres"
"blazing/common/socket/errorcode"
"blazing/logic/service/player"
"blazing/logic/service/room"
)
// BuyFitment 购买基地家具
// data: 包含家具ID和购买数量的输入信息
// c: 当前玩家对象
// 返回: 购买结果和错误码
func (h Controller) BuyFitment(data *room.C2S_BUY_FITMENT, c *player.Player) (result *room.S2C_BUY_FITMENT, err errorcode.ErrorCode) {
result = &room.S2C_BUY_FITMENT{}
itemConfig := xmlres.ItemsMAP[int(data.ID)]
totalCost := itemConfig.Price * int(data.Count)
if !c.UseCoins(uint32(totalCost)) {
return nil, errorcode.ErrorCodes.ErrSunDouInsufficient10016
}
c.Service.Room.Add(data.ID, data.Count)
c.Info.Coins -= uint32(totalCost)
result.ID = data.ID
result.Coins = c.Info.Coins
return
}