创建公会消耗道具 Bag.createGuildConsume
This commit is contained in:
parent
083cf00b02
commit
feba3f571d
@ -58,7 +58,7 @@ func (gm *GuildMgr) loadFromDB() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// CreateGuild 创建公会
|
// CreateGuild 创建公会
|
||||||
func (gm *GuildMgr) CreateGuild(avatar int32, name *string, leaderId string,
|
func (gm *GuildMgr) CreateGuild(p *Player, avatar int32, name *string, leaderId string,
|
||||||
cb func(errCode int32, errMsg string, guild *Guild)) {
|
cb func(errCode int32, errMsg string, guild *Guild)) {
|
||||||
if gm.CheckJoinGuild(leaderId) {
|
if gm.CheckJoinGuild(leaderId) {
|
||||||
cb(ERR_CODE_JOINED_GUILD, "Joined guild", nil)
|
cb(ERR_CODE_JOINED_GUILD, "Joined guild", nil)
|
||||||
@ -74,6 +74,25 @@ func (gm *GuildMgr) CreateGuild(avatar int32, name *string, leaderId string,
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
params := map[string]string{
|
||||||
|
"c": "Bag",
|
||||||
|
"a": "createGuildConsume",
|
||||||
|
"account_id": p.GetAccountId(),
|
||||||
|
"session_id": p.GetSessionId(),
|
||||||
|
}
|
||||||
|
gm.SendRequest(params, func(errCode int32, errMsg string) {
|
||||||
|
if errCode != 0 {
|
||||||
|
cb(ERR_CODE_CREATE_GUILD_DB_FAIL, "create guild consume error ", nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
// Bag.createGuildConsume 道具使用成功,继续创建公会
|
||||||
|
gm.createGuildInternal(guildId, avatar, name, leaderId, cb)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
func (gm *GuildMgr) createGuildInternal(guildId int64, avatar int32, name *string, leaderId string,
|
||||||
|
cb func(errCode int32, errMsg string, guild *Guild)) {
|
||||||
|
|
||||||
unixSec := time.Now().Unix()
|
unixSec := time.Now().Unix()
|
||||||
fields := [][]string{
|
fields := [][]string{
|
||||||
{"guild_id", q5.ToString(guildId)},
|
{"guild_id", q5.ToString(guildId)},
|
||||||
@ -84,6 +103,7 @@ func (gm *GuildMgr) CreateGuild(avatar int32, name *string, leaderId string,
|
|||||||
{"createtime", q5.ToString(unixSec)},
|
{"createtime", q5.ToString(unixSec)},
|
||||||
{"modifytime", q5.ToString(unixSec)},
|
{"modifytime", q5.ToString(unixSec)},
|
||||||
}
|
}
|
||||||
|
|
||||||
f5.GetJsStyleDb().Insert(
|
f5.GetJsStyleDb().Insert(
|
||||||
FRIEND_DB,
|
FRIEND_DB,
|
||||||
"t_guild",
|
"t_guild",
|
||||||
@ -136,6 +156,7 @@ func (gm *GuildMgr) CreateGuild(avatar int32, name *string, leaderId string,
|
|||||||
EVENT_GUILD_CREATE,
|
EVENT_GUILD_CREATE,
|
||||||
prop,
|
prop,
|
||||||
)
|
)
|
||||||
|
|
||||||
cb(ERR_CODE_OK, "Create OK", guild)
|
cb(ERR_CODE_OK, "Create OK", guild)
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
@ -716,7 +737,15 @@ func (gm *GuildMgr) SetName(player *Player, name *string, itemId, itemNum int32,
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 扣消耗
|
// 扣消耗
|
||||||
gm.SetNameConsume(player, itemId, itemNum, func(errCode int32, errMsg string) {
|
params := map[string]string{
|
||||||
|
"c": "Bag",
|
||||||
|
"a": "useItem",
|
||||||
|
"account_id": player.GetAccountId(),
|
||||||
|
"session_id": player.GetSessionId(),
|
||||||
|
"item_id": q5.ToString(itemId),
|
||||||
|
"item_num": q5.ToString(itemNum),
|
||||||
|
}
|
||||||
|
gm.SendRequest(params, func(errCode int32, errMsg string) {
|
||||||
if errCode != 0 {
|
if errCode != 0 {
|
||||||
cb(errCode, errMsg)
|
cb(errCode, errMsg)
|
||||||
return
|
return
|
||||||
@ -752,17 +781,9 @@ func (gm *GuildMgr) SetName(player *Player, name *string, itemId, itemNum int32,
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
func (gm *GuildMgr) SetNameConsume(player *Player, itemId, itemNum int32, cb func(errCode int32, errMsg string)) {
|
func (gm *GuildMgr) SendRequest(params map[string]string, cb func(errCode int32, errMsg string)) {
|
||||||
params := map[string]string{
|
url := mt.Table.Config.GetById(0).GetGameapiUrl() + "/webapp/index.php"
|
||||||
"c": "Bag",
|
f5.GetSysLog().Info("UseItem url:%s, params:%+v\n", url, params)
|
||||||
"a": "useItem",
|
|
||||||
"account_id": player.GetAccountId(),
|
|
||||||
"session_id": player.GetSessionId(),
|
|
||||||
"item_id": q5.ToString(itemId),
|
|
||||||
"item_num": q5.ToString(itemNum),
|
|
||||||
}
|
|
||||||
url := fmt.Sprintf("%s/webapp/index.php", mt.Table.Config.GetById(0).GetGameapiUrl())
|
|
||||||
f5.GetSysLog().Info("SetNameConsume url:%s, params:%+v\n", url, params)
|
|
||||||
f5.GetHttpCliMgr().SendJsStyleRequest(
|
f5.GetHttpCliMgr().SendJsStyleRequest(
|
||||||
url,
|
url,
|
||||||
params,
|
params,
|
||||||
@ -773,8 +794,8 @@ func (gm *GuildMgr) SetNameConsume(player *Player, itemId, itemNum int32, cb fun
|
|||||||
}{}
|
}{}
|
||||||
err := json.Unmarshal([]byte(rsp.GetRawData()), &resObj)
|
err := json.Unmarshal([]byte(rsp.GetRawData()), &resObj)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
cb(ERR_CODE_GUILD_SETNAME_API_ERROR, "SetNameConsume Api服务器JSON解析错误")
|
cb(ERR_CODE_GUILD_SETNAME_API_ERROR, "SendRequest Api服务器JSON解析错误")
|
||||||
f5.GetSysLog().Info("SetNameConsume Api服务器JSON解析错误:%s\n", err)
|
f5.GetSysLog().Info("SendRequest Api服务器JSON解析错误:%s\n", err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
cb(resObj.ErrCode, resObj.ErrMsg)
|
cb(resObj.ErrCode, resObj.ErrMsg)
|
||||||
|
@ -374,7 +374,8 @@ func (p *Player) CMGetTopGuildsByTotalStars(hdr *f5.MsgHdr, msg *cs.CMGetTopGuil
|
|||||||
// CMCreateGuild 创建公会
|
// CMCreateGuild 创建公会
|
||||||
func (p *Player) CMCreateGuild(hdr *f5.MsgHdr, msg *cs.CMCreateGuild) {
|
func (p *Player) CMCreateGuild(hdr *f5.MsgHdr, msg *cs.CMCreateGuild) {
|
||||||
avatar := msg.GetAvatar()
|
avatar := msg.GetAvatar()
|
||||||
guildMgr.CreateGuild(avatar, msg.Name, p.accountId,
|
guildMgr.CreateGuild(
|
||||||
|
p, avatar, msg.Name, p.accountId,
|
||||||
func(errCode int32, errMsg string, guild *Guild) {
|
func(errCode int32, errMsg string, guild *Guild) {
|
||||||
rspMsg := new(cs.SMCreateGuild)
|
rspMsg := new(cs.SMCreateGuild)
|
||||||
if errCode != 0 {
|
if errCode != 0 {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user