心愿单
This commit is contained in:
parent
f5995941af
commit
bd5176db26
@ -206,14 +206,6 @@ func GetPiggyBankChargeId() int {
|
||||
return gamedata.GetIntValue(data, "Value")
|
||||
}
|
||||
|
||||
func GetWishCount() int {
|
||||
data, err := gamedata.GetDataByKey(CFG_CHARGE_CONST, "wish_count")
|
||||
if err != nil {
|
||||
return 0
|
||||
}
|
||||
return gamedata.GetIntValue(data, "Value")
|
||||
}
|
||||
|
||||
func GetGiftReward(ChargeId int) []*item.Item {
|
||||
data, err := gamedata.GetData(CFG_CHARGE_GIFT)
|
||||
if err != nil {
|
||||
|
||||
@ -36,6 +36,14 @@ func GetShopItem(Id int) (int, []*item.Item) {
|
||||
return gamedata.GetIntValue(data, "ItemId"), gamedata.GetItemList(data, "Cost")
|
||||
}
|
||||
|
||||
func GetShopWish(Id int) int {
|
||||
data, err := gamedata.GetDataByIntKey(CFG_PLAYROOM_SHOP, Id)
|
||||
if err != nil {
|
||||
return 0
|
||||
}
|
||||
return gamedata.GetIntValue(data, "Wish")
|
||||
}
|
||||
|
||||
func GetUnLockLv() int {
|
||||
data, err := gamedata.GetDataByKey(CFG_PLAYROOM_CONST, "Lv")
|
||||
if err != nil {
|
||||
|
||||
@ -701,10 +701,12 @@ func (ad *GameLogic) RegisterNetWorkFunc() {
|
||||
RegisterMsgProcessFunc("ReqFriendList", ReqFriendList) // 请求好友列表
|
||||
RegisterMsgProcessFunc("ReqFriendApply", ReqFriendApply) // 请求申请好友列表
|
||||
RegisterMsgProcessFunc("ReqFriendCardMsg", ReqFriendCardMsg) // 请求好友卡牌申请列表
|
||||
RegisterMsgProcessFunc("ReqWishApplyList", ReqWishApplyList) // 请求好友心愿单申请列表
|
||||
RegisterMsgProcessFunc("ReqFriendTimeLine", ReqFriendTimeLine) // 请求好友时间线
|
||||
RegisterMsgProcessFunc("ReqFriendRecommend", ReqFriendRecommend) // 获取推荐好友
|
||||
RegisterMsgProcessFunc("ReqFriendTLUpvote", ReqFriendTLUpvote) // 请求时间线点赞
|
||||
RegisterMsgProcessFunc("ReqAddNpc", ReqAddNpc) // 增加npc
|
||||
RegisterMsgProcessFunc("ReqWishApply", ReqWishApply) // 同意好友心愿单请求
|
||||
|
||||
RegisterMsgProcessFunc("ReqSearchPlayer", ReqSearchPlayer) // 搜索好友
|
||||
RegisterMsgProcessFunc("ReqApplyFriend", ReqApplyFriend) // 申请好友
|
||||
|
||||
@ -256,6 +256,11 @@ func handle(p *Player, m *msg.Msg) error {
|
||||
case msg.HANDLE_TYPE_WISHLIST_SEND: // 发送愿望单请求
|
||||
FriendMod := p.PlayMod.getFriendMod()
|
||||
FriendMod.AddWishApply(int64(m.From))
|
||||
case msg.HANDLE_TYPE_WISHLIST_AGREE:
|
||||
ChargeMod := p.PlayMod.getChargeMod()
|
||||
ChargeMod.AddWishCount()
|
||||
p.AddLog(m.From, friend.LOG_TYPE_WISH, "")
|
||||
p.PushClientRes(ChargeMod.BackData())
|
||||
default:
|
||||
log.Debug("uid : %d, handle msg type : %d not exist", p.M_DwUin, m.Type)
|
||||
}
|
||||
|
||||
@ -4097,3 +4097,53 @@ func ReqSendWishBeg(player *Player, buf []byte) error {
|
||||
})
|
||||
return nil
|
||||
}
|
||||
|
||||
func ReqWishApplyList(player *Player, buf []byte) error {
|
||||
req := &msg.ReqWishApplyList{}
|
||||
proto.Unmarshal(buf, req)
|
||||
FriendMod := player.PlayMod.getFriendMod()
|
||||
List := FriendMod.GetWishApply()
|
||||
rs := make([]*msg.ResFriendApplyInfo, 0)
|
||||
for _, v := range List {
|
||||
PD := G_GameLogicPtr.GetResSimplePlayerByUid(int(v.Uid))
|
||||
if PD == nil {
|
||||
continue
|
||||
}
|
||||
rs = append(rs, &msg.ResFriendApplyInfo{
|
||||
Player: PD,
|
||||
Time: int32(v.Time),
|
||||
})
|
||||
}
|
||||
|
||||
player.PlayMod.save()
|
||||
player.PushClientRes(&msg.ResWishApplyList{
|
||||
ApplyList: rs,
|
||||
})
|
||||
return nil
|
||||
}
|
||||
|
||||
func ReqWishApply(player *Player, buf []byte) error {
|
||||
req := &msg.ReqWishApply{}
|
||||
proto.Unmarshal(buf, req)
|
||||
FriendMod := player.PlayMod.getFriendMod()
|
||||
err := FriendMod.ApplyWish(req.Uid)
|
||||
if err != nil {
|
||||
player.SendErrClienRes(&msg.ResWishApply{
|
||||
Code: msg.RES_CODE_FAIL,
|
||||
Msg: err.Error(),
|
||||
})
|
||||
return err
|
||||
}
|
||||
FriendMgrSend(&MsqMod.Msg{
|
||||
From: int(player.M_DwUin),
|
||||
To: int(req.Uid),
|
||||
Type: MsqMod.HANDLE_TYPE_WISHLIST_AGREE,
|
||||
SendT: GoUtil.Now(),
|
||||
})
|
||||
player.PlayMod.save()
|
||||
player.PushClientRes(&msg.ResWishApply{
|
||||
Code: msg.RES_CODE_SUCCESS,
|
||||
Uid: req.Uid,
|
||||
})
|
||||
return nil
|
||||
}
|
||||
|
||||
@ -337,7 +337,7 @@ func (c *ChargeMod) GetWish() ([]*item.Item, error) {
|
||||
if c.WishList.ItemId == 0 {
|
||||
return nil, fmt.Errorf("AddWishCount itemid not exist")
|
||||
}
|
||||
Max := chargeCfg.GetWishCount()
|
||||
Max := playroomCfg.GetShopWish(c.WishList.ItemId)
|
||||
if c.WishList.Count < Max {
|
||||
return nil, fmt.Errorf("AddWishCount count max")
|
||||
}
|
||||
@ -355,3 +355,14 @@ func (c *ChargeMod) SendWishBeg(Uids []int64) error {
|
||||
c.WishList.SendList = append(c.WishList.SendList, Uids...)
|
||||
return nil
|
||||
}
|
||||
|
||||
func (c *ChargeMod) AddWishCount() {
|
||||
if c.WishList.ItemId == 0 {
|
||||
return
|
||||
}
|
||||
Max := playroomCfg.GetShopWish(c.WishList.ItemId)
|
||||
if c.WishList.Count >= Max {
|
||||
return
|
||||
}
|
||||
c.WishList.Count++
|
||||
}
|
||||
|
||||
@ -49,6 +49,7 @@ const (
|
||||
LOG_TYPE_HANDBOOK_UPVOTE = 17 // 图鉴点赞
|
||||
LOG_TYPE_CHARGE_SEND = 18 // 赠送充值礼物
|
||||
LOG_TYPE_CHARGE_RECEIVE = 19 // 收到充值礼物
|
||||
LOG_TYPE_WISH = 20 // 心愿单请求
|
||||
)
|
||||
|
||||
const (
|
||||
@ -235,3 +236,25 @@ func (f *FriendMod) AddWishApply(Uid int64) error {
|
||||
})
|
||||
return nil
|
||||
}
|
||||
|
||||
func (f *FriendMod) GetWishApply() []*ApplyInfo {
|
||||
rs := []*ApplyInfo{}
|
||||
for _, v := range f.Apply {
|
||||
if v.Type == APPLY_TYPE_WISH {
|
||||
rs = append(rs, v)
|
||||
}
|
||||
}
|
||||
return rs
|
||||
}
|
||||
|
||||
func (f *FriendMod) ApplyWish(Uid int64) error {
|
||||
for k, v := range f.Apply {
|
||||
if v.Type == APPLY_TYPE_WISH && v.Uid == Uid {
|
||||
r := make([]*ApplyInfo, len(f.Apply)-1)
|
||||
copy(r, f.Apply[:k])
|
||||
f.Apply = append(r, f.Apply[k+1:]...)
|
||||
return nil
|
||||
}
|
||||
}
|
||||
return fmt.Errorf("wish apply not exist")
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user