709 lines
25 KiB
Go
709 lines
25 KiB
Go
package comm
|
|
|
|
import (
|
|
"go_dreamfactory/pb"
|
|
cfg "go_dreamfactory/sys/configure/structs"
|
|
)
|
|
|
|
type (
|
|
//红点获取接口
|
|
IGetReddot interface {
|
|
Reddot(session IUserSession, rid ...ReddotType) (reddot map[ReddotType]*pb.ReddotItem)
|
|
}
|
|
//埋点中心更新通知
|
|
IBuriedUpdateNotify interface {
|
|
BuriedsNotify(session IUserSession, condis []*pb.ConIProgress)
|
|
}
|
|
//任务完成
|
|
ITaskComplete interface {
|
|
TaskComplete(session IUserSession, taskid ...int32)
|
|
}
|
|
//功能开启通知
|
|
IOpenCmdNotice interface {
|
|
OpenCmdNotice(session IUserSession, keys ...string)
|
|
}
|
|
// 活动通知
|
|
IActivityNotice interface {
|
|
//活动开启通知
|
|
ActivityOpenNotice(hdlist *pb.DBHuodong)
|
|
//活动关闭通知
|
|
ActivityCloseNotice(hdlist *pb.DBHuodong)
|
|
}
|
|
//支付发布接口
|
|
IPayDelivery interface {
|
|
Delivery(session IUserSession, pId int32) (errdata *pb.ErrorData, items []*pb.UserAtno)
|
|
}
|
|
)
|
|
|
|
/*
|
|
业务模块 对外接口定义处
|
|
*/
|
|
|
|
type (
|
|
ISys interface {
|
|
CheckOpenCond(session IUserSession, itype OpencondType, value int32)
|
|
|
|
// 查询opencond 配置
|
|
CheckOpenCondCfgById(uid string, id string) (bOpen bool, errdata *pb.ErrorData)
|
|
QueryOpenCondData(uid string) (data map[string]int32, errdata *pb.ErrorData) // 查询玩家当前已开启的功能
|
|
GMOpenAllCondition(uid string)
|
|
}
|
|
|
|
//邮件业务模块对外接口定义 提供给其他模块使用的
|
|
Imail interface {
|
|
IGetReddot
|
|
// 注意 此接口逐步废弃
|
|
SendMailByCid(session IUserSession, cid string, res []*pb.UserAssets) bool
|
|
SendNewMail(mail *pb.DBMailData, uid ...string) bool // 批量发送邮件 支持跨服
|
|
SendMailByUID(uid string, cid string, res []*cfg.Gameatn, Param []string) bool
|
|
// 所有邮件奖励统一调这个接口
|
|
SendRewardMailByCid(session IUserSession, cid string, res []*cfg.Gameatn) bool
|
|
// 批量发邮件结果: cid 邮件表ID, 没有附件 res 传空
|
|
SendMailToUsers(uids []string, cid string, res []*cfg.Gameatn, param []string) bool // 批量发送邮件 支持跨服
|
|
}
|
|
//道具背包接口
|
|
IItems interface {
|
|
//查询用户背包物品数量
|
|
QueryItemAmount(uId string, itemid string) (amount uint32)
|
|
//查询用户背包多个物品数量
|
|
QueryItemsAmount(uId string, itemid ...string) (result map[string]uint32)
|
|
//查询用户背包
|
|
QueryUserPack(uId string) (itmes []*pb.DB_UserItemData, errdata *pb.ErrorData)
|
|
///添加单个物品到背包 (可以加物品和减物品)
|
|
AddItem(session IUserSession, itemid string, addnum int32, bPush bool) (errdata *pb.ErrorData)
|
|
///添加多个物品到背包 (可以加物品和减物品)
|
|
AddItems(session IUserSession, items map[string]int32, bPush bool) (change []*pb.UserAtno, errdata *pb.ErrorData)
|
|
///清理道具
|
|
CleanItems(session IUserSession) (errdata *pb.ErrorData)
|
|
///购买统一入场券
|
|
BuyUnifiedTicket(session IUserSession, buynum int32) (errdata *pb.ErrorData)
|
|
///刷新恢复入场券
|
|
RecoverTicket(session IUserSession) (errdata *pb.ErrorData)
|
|
//出售道具
|
|
SellItem(session IUserSession, items map[string]int32, bPush bool) (errdata *pb.ErrorData, atno []*pb.UserAtno)
|
|
//使用物品 slt 0合成 1分解
|
|
UseItem(session IUserSession, gid string, amount int32, slt int32) (errdata *pb.ErrorData)
|
|
//清理物品
|
|
CleanItemById(session IUserSession, t string) (errdata *pb.ErrorData)
|
|
//
|
|
InitItemBagData(session IUserSession) (errdata *pb.ErrorData)
|
|
}
|
|
|
|
//英雄
|
|
IHero interface {
|
|
//查询用户卡片数量
|
|
QueryHeroByConfId(uId string, heroCfgId string) (hero *pb.DBHero)
|
|
|
|
// 批量创建英雄
|
|
CreateRepeatHeros(session IUserSession, heros map[string]int32, bPush bool) (atno []*pb.UserAtno, errdata *pb.ErrorData)
|
|
// 获取英雄
|
|
// heroId 英雄ID
|
|
GetHeroByObjID(uid, heroId string) (hero *pb.DBHero, errdata *pb.ErrorData)
|
|
// 佩戴装备
|
|
UpdateEquipment(session IUserSession, hero *pb.DBHero, equip []*pb.DB_Equipment) (errdata *pb.ErrorData)
|
|
//获取玩家英雄列表
|
|
GetHeroList(uid string) []*pb.DBHero
|
|
//清理玩家英雄数据
|
|
CleanData(uid string)
|
|
|
|
// 英雄加经验
|
|
AddHerosExp(session IUserSession, heroObjs []string, exp int32) (curAddExp []int32, errdata *pb.ErrorData)
|
|
// 英雄练功
|
|
KungFuHero(session IUserSession, heroObjID string, bKongfu bool, kongfuUid string) (errdata *pb.ErrorData)
|
|
|
|
//Create Monster
|
|
CreateMonster(heroCid string, star, lv int32) (hero *pb.DBHero)
|
|
// 跨服查询英雄详细信息
|
|
QueryCrossHeroinfo(oid string) (hero *pb.DBHero, err error)
|
|
|
|
GetHeroListByUse(uid string) []*pb.DBHero // 非初始状态的英雄列表
|
|
// 推送属性变化
|
|
PushHeroProperty(session IUserSession, heros []*pb.DBHero) (err error)
|
|
|
|
// 拥有N个X级英雄
|
|
CheckLvNum(uid string, lv int32) int32
|
|
|
|
// 激活X个英雄图鉴
|
|
GetTujianHeroNum(uid string) int32
|
|
//拥有觉醒至A级的B星英雄N个 Rtype123
|
|
CheckJuexingHeroNum(uid string, juexingLv int32, star int32) int32
|
|
|
|
// 获取所有满星满级满觉醒的英雄
|
|
GetAllMaxHero(session IUserSession, bTalent bool) (errdata *pb.ErrorData)
|
|
|
|
// 教习登记
|
|
RegisterInstructor(session IUserSession, heroOid []string, registerId int32) (errdata *pb.ErrorData)
|
|
|
|
// 跨服查询英雄详细信息
|
|
QueryCrossMultipleHeroinfo(oid []string) (hero []*pb.DBHero, err error)
|
|
|
|
AddHeroFetterAttribute(session IUserSession, attr map[string][]*cfg.Gameatr)
|
|
|
|
// 查询指定共鸣次数的英雄数量
|
|
QueryHeroTelnetByCount(uid string, count int) (hids []string)
|
|
// key 英雄唯一id value 是否传功
|
|
PassonHero(session IUserSession, heroObjID map[string]bool) (errdata *pb.ErrorData)
|
|
|
|
GetVirtualHero(hero *pb.DBHero, lv int32) *pb.DBHero
|
|
|
|
// 检查圣桃树奖励是否发放
|
|
CheckPeachReward(session IUserSession, ctime int64)
|
|
|
|
CreateOneHero(session IUserSession, heroCfgId string) (hero *pb.DBHero, atno []*pb.UserAtno, errdata *pb.ErrorData)
|
|
|
|
// 通过卡池随机获取指定数量的英雄卡
|
|
GetRandomCardByCardPool(uid string, count int32) (cards []string, err error)
|
|
}
|
|
|
|
//玩家
|
|
IUser interface {
|
|
IGetReddot
|
|
//获取本服用户数据
|
|
GetUser(uid string) (user *pb.DBUser, err error)
|
|
//批量获取用户信息
|
|
GetCrossUsers(uid []string) (user []*pb.DBUser, err error)
|
|
//获取用户回话
|
|
GetUserSession(uid string) *pb.CacheUser
|
|
//批量查询用户会话数据
|
|
GetUserSessions(uids []string) []*pb.CacheUser
|
|
//查询用户属性值 例如 金币 经验
|
|
QueryAttributeValue(uid string, attr string) (value int64)
|
|
//添加/减少属性值 第四个参数控制是否推送给前端
|
|
// AddAttributeValue(session IUserSession, attr string, add int32, bPush bool) (errdata *pb.ErrorData)
|
|
// 批量处理
|
|
AddAttributeValues(session IUserSession, attrs map[string]int32, bPush bool) (atno []*pb.UserAtno, errdata *pb.ErrorData)
|
|
//用户改变事件
|
|
// EventUserChanged(session IUserSession)
|
|
// EventUserVipChanged(session IUserSession)
|
|
//获取用户expand
|
|
GetUserExpand(uid string) (result *pb.DBUserExpand, err error)
|
|
//更新用户expand
|
|
ChangeUserExpand(uid string, value map[string]interface{}) error
|
|
// 本服在线玩家列表
|
|
UserOnlineList() ([]*pb.CacheUser, error)
|
|
//是否在线
|
|
IsOnline(uid string) bool
|
|
// 跨服在线玩家列表
|
|
CrossUserOnlineList() ([]*pb.CacheUser, error)
|
|
// 跨服用户会话
|
|
CrossUserSession(uid string) *pb.CacheUser
|
|
// 跨服搜索玩家
|
|
CrossSearchUser(nickname string) ([]*pb.DBUser, error)
|
|
// 搜索远程用户
|
|
SearchRmoteUser(nickname string) ([]*pb.DBUser, error)
|
|
// 检查是不是新获得的英雄
|
|
CheckTujianHero(session IUserSession, heros []string) []bool
|
|
// bingo设置玩家等级
|
|
BingoSetUserLv(session IUserSession, lv int32) error
|
|
BingoSetUserVipLv(session IUserSession, lv int32) (errdata *pb.ErrorData)
|
|
//添加皮肤资源接口
|
|
AddPer(session IUserSession, pers map[string]int32, bPush bool) (errdata *pb.ErrorData)
|
|
|
|
//消耗体力加经验
|
|
ConsumePsAddExp(session IUserSession, ps int32) (atno []*pb.UserAtno, errdata *pb.ErrorData)
|
|
// 体力差
|
|
RemainingPS(uid string) int32
|
|
// 清除玩家的虚拟币
|
|
CleanUserMerchantmoney(session IUserSession) (err error)
|
|
ChangeUserCaravanLv(session IUserSession, lv int32) (errdata *pb.ErrorData)
|
|
AddTitle(session IUserSession, pers map[string]int32, bPush bool) (errdata *pb.ErrorData)
|
|
|
|
ChangeUserMoonLv(session IUserSession, lv int32) (errdata *pb.ErrorData)
|
|
//GM创号
|
|
GMCreatePlayer(session IUserSession, req *pb.UserCreateReq) (errdata *pb.ErrorData)
|
|
// 清除玩家赛季积分
|
|
CleanUserConsumeexp(session IUserSession) (err error)
|
|
}
|
|
//武器模块
|
|
IEquipment interface {
|
|
//查询服务资源数量
|
|
QueryEquipments(uid string) (equipment []*pb.DB_Equipment, errdata *pb.ErrorData)
|
|
//查询服务资源数量 db id
|
|
QueryEquipment(uid string, Ids ...string) (equipment []*pb.DB_Equipment, errdata *pb.ErrorData)
|
|
//查询服务资源数量 参数武器配置id
|
|
QueryEquipmentAmount(uid string, equipmentId string) (amount uint32)
|
|
//添加新武器
|
|
AddNewEquipments(session IUserSession, cIds map[string]uint32, bPush bool) (change []*pb.DB_Equipment, errdata *pb.ErrorData)
|
|
//添加所有装备
|
|
AddAllEquipments(session IUserSession) (errdata *pb.ErrorData)
|
|
//创建装备
|
|
NewEquipment(uid, cid string) (errdata *pb.ErrorData, equip *pb.DB_Equipment)
|
|
//添加装备
|
|
AddEquipment(session IUserSession, equip *pb.DB_Equipment) (errdata *pb.ErrorData)
|
|
//出售装备
|
|
SellEquipments(session IUserSession, equs []string) (errdata *pb.ErrorData, atno []*pb.UserAtno)
|
|
//回收装备接口
|
|
RecycleEquipments(session IUserSession, equs []string, discount int32) (errdata *pb.ErrorData, atno []*pb.UserAtno)
|
|
//获得可操作用户装备列表
|
|
GetActionableEquipments(uid string) (errdata *pb.ErrorData, eruips []*pb.DB_Equipment)
|
|
//获取可用套装 (铁匠铺使用)
|
|
GetActionableSuit(uid string) (errdata *pb.ErrorData, Suit []int32)
|
|
// 随机获得一件N级的装备装备
|
|
/*
|
|
suiteId: 套装id
|
|
pos: 位置(-1 表示随机位置 大于0 表示获得指定位置 )
|
|
lv: 装备等级
|
|
dyweight: 动态权重
|
|
isepic:是否史诗 与 dyweight 互斥
|
|
*/
|
|
GetForgeEquip(session IUserSession, suiteId int32, pos int32, lv int32, dyweight []int32, isepic bool) (eruip *pb.DB_Equipment, errdata *pb.ErrorData)
|
|
|
|
//GM接口 获取全部装备
|
|
GMGetAllEquip(session IUserSession, ismaxlv bool) (errdata *pb.ErrorData)
|
|
//创建最高名字装备
|
|
NewMaxQualityEquipment(session IUserSession, cid []string) (eruips []*pb.DB_Equipment, errdata *pb.ErrorData)
|
|
}
|
|
|
|
//任务
|
|
ITask interface {
|
|
///红点
|
|
IGetReddot
|
|
}
|
|
|
|
//好友
|
|
IFriend interface {
|
|
// 重置点赞列表和每日友情点
|
|
ResetFriend(uid string)
|
|
// 获取好友数量
|
|
GetFriendCount(uid string) int32
|
|
// 获取好友列表
|
|
GetFriendList(uid string) []string
|
|
// 使用好友助战英雄 好友ID:friendId
|
|
UseAssistHero(uid, friendId string) (*pb.DBHero, error)
|
|
// 切磋结束通知
|
|
QiecuoFinishNotify(redUid, matchId string) error
|
|
// 红点
|
|
IGetReddot
|
|
}
|
|
|
|
//聊天系统
|
|
IChat interface {
|
|
//推送消息到世界频道
|
|
SendWorldChat(msg *pb.DBChat) (errdata *pb.ErrorData)
|
|
//推送聊天消息到工会
|
|
SendUnionChat(msg *pb.DBChat) (errdata *pb.ErrorData)
|
|
//推送消息到用户
|
|
SendUserChat(msg *pb.DBChat) (errdata *pb.ErrorData)
|
|
//广播系统消息
|
|
SendSysChatToWorld(ctype ChatSystemType, appenddata interface{}, value0, value1 int32, agrs ...string) (errdata *pb.ErrorData)
|
|
//广播系统消息
|
|
SendSysChatToUser(session IUserSession, ctype ChatSystemType, value0, value1 int32, agrs ...string) (errdata *pb.ErrorData)
|
|
}
|
|
|
|
//战斗系统
|
|
IBattle interface {
|
|
//创建eve战斗
|
|
CreateEveBattle(session IUserSession, req *pb.BattleEVEReq) (errdata *pb.ErrorData, record *pb.DBBattleRecord)
|
|
///创建pve战斗
|
|
CreatePveBattle(session IUserSession, req *pb.BattlePVEReq) (errdata *pb.ErrorData, record *pb.DBBattleRecord)
|
|
CreateHeroPveBattle(session IUserSession, req *pb.BattleHeroPVEReq) (errdata *pb.ErrorData, record *pb.DBBattleRecord)
|
|
///创建pvb战斗
|
|
CreatePvbBattle(session IUserSession, req *pb.BattlePVBReq) (errdata *pb.ErrorData, record *pb.DBBattleRecord)
|
|
///创建pvp战斗
|
|
CreatePvpBattle(session IUserSession, req *pb.BattlePVPReq) (errdata *pb.ErrorData, record *pb.DBBattleRecord)
|
|
///同步pvp战斗
|
|
CreateRtPvpBattle(req *pb.BattleRTPVPReq) (errdata *pb.ErrorData, record *pb.DBBattleRecord)
|
|
///连续pve战斗
|
|
CreateLPVEBattle(session IUserSession, req *pb.BattleLPVEReq) (errdata *pb.ErrorData, record *pb.DBBattleRecord)
|
|
///获取战斗详情
|
|
GetBattleInfo(req *pb.BattleGetInfoReq) (errdata *pb.ErrorData, resp *pb.BattleGetInfoResp)
|
|
///创建战斗角色
|
|
CreateRolesByFormat(fid int32) (captain int32, roles []*pb.BattleRole, errdata *pb.ErrorData)
|
|
///创建战斗角色
|
|
CreateRolesByHeros(heros []*pb.DBHero) (roles []*pb.BattleRole, errdata *pb.ErrorData)
|
|
///创建战斗服务
|
|
CreateBattleServer(req *pb.BattleInfo) (errdata *pb.ErrorData)
|
|
///战斗指令输入
|
|
InCmdBattle(req *pb.BattleInCmdReq) (errdata *pb.ErrorData)
|
|
///战斗认输请求
|
|
ConcedeBattle(req *pb.BattleConcedeReq) (errdata *pb.ErrorData)
|
|
//校验战报
|
|
CheckBattleReport(session IUserSession, report *pb.BattleReport) (errdata *pb.ErrorData, iswin bool)
|
|
///创建石阵秘境战斗
|
|
CreateStoneBattle(session IUserSession, stoneBattle *pb.StroneBattleReq) (errdata *pb.ErrorData, record *pb.DBBattleRecord)
|
|
}
|
|
IGm interface {
|
|
CreateCmd(session IUserSession, cmd string) (errdata *pb.ErrorData)
|
|
}
|
|
// 修改爬塔
|
|
IPagoda interface {
|
|
ModifyPagodaFloor(session IUserSession, d1 int32, d2 int32) (errdata *pb.ErrorData)
|
|
CheckUserBasePagodaInfo(uid string) (data *pb.DBPagodaRecord) // 查询玩家最佳通关记录
|
|
CheckCompletePagoda(uid string) (bComplete bool) // 校验是否通关普通塔
|
|
GMModifyRacePagoda(uid string, key int32, floor int32)
|
|
///红点
|
|
IGetReddot
|
|
}
|
|
|
|
IHeroFetter interface {
|
|
AddHeroFetterData(uid string, heroConfId string) (errdata *pb.ErrorData) // 创建一条羁绊信息
|
|
SendRpcAddHero(uid string, heroConfId []string, serverTag string) (err error)
|
|
AddHerosFetterData(uid string, heroConfIds []string) (errdata *pb.ErrorData)
|
|
}
|
|
//月子秘境
|
|
IMoonFantasy interface {
|
|
//触发月之秘境
|
|
Trigger(session IUserSession, source *pb.BattleReport)
|
|
//GM触发月之秘境
|
|
TriggerMF(session IUserSession, Boosid string) (err error)
|
|
}
|
|
IViking interface {
|
|
CompleteAllLevel(session IUserSession) (errdata *pb.ErrorData)
|
|
CheckUserBaseVikingInfo(uid string) (data []*pb.DBVikingRank) // 查询玩家最佳通关记录
|
|
IGetReddot
|
|
}
|
|
IHunting interface {
|
|
IGetReddot
|
|
CompleteAllLevel(session IUserSession) (errdata *pb.ErrorData)
|
|
CheckUserBaseHuntingInfo(uid string) (data []*pb.DBHuntingRank) // 查询玩家最佳通关记录
|
|
}
|
|
// 公会
|
|
ISociaty interface {
|
|
// 任务条件达成通知
|
|
IBuriedUpdateNotify
|
|
// 红点
|
|
IGetReddot
|
|
GetSociaty(uid string) *pb.DBSociaty
|
|
//查询工会信息
|
|
GetSociatys(sociatyIds []string) (result []*pb.DBSociaty, errdata *pb.ErrorData)
|
|
|
|
// 会长弹劾处理
|
|
ProcessAccuse(uid, sociatyId string)
|
|
// 获取我的公会成员
|
|
MembersByUid(uid string) (list []*pb.SociatyMemberInfo)
|
|
// 获取公会成员
|
|
MembersBySociatyId(sociatyId string) (list []*pb.SociatyMemberInfo, errdata *pb.ErrorData)
|
|
// 设置工会经验
|
|
BingoSetExp(session IUserSession, exp int32) error
|
|
// 设置工会活跃度
|
|
BingoSetActivity(session IUserSession, activity int32) error
|
|
//修改公会等级
|
|
ModifySociatyLv(uid string, lv int32) (err error)
|
|
}
|
|
//星座图
|
|
IHoroscope interface {
|
|
//计算新作图属性
|
|
ComputeHeroNumeric(uid string, hero ...*pb.DBHero)
|
|
///红点
|
|
IGetReddot
|
|
GMFulllevel(session IUserSession) (errdata *pb.ErrorData)
|
|
}
|
|
IPrivilege interface {
|
|
// 创建一个新的特权卡
|
|
IPayDelivery
|
|
// 续费特权卡
|
|
RenewPrivilegeCard(session IUserSession, cId int32) (errdata *pb.ErrorData)
|
|
// 检查特权 参数 计费点 返回值 是否有特权
|
|
CheckPrivilege(session IUserSession, cId int32) bool
|
|
// 检查每日特权邮件
|
|
CheckDailyPrivilegeMail(session IUserSession)
|
|
// 获得vip
|
|
AddVipData(session IUserSession, oldVip, newVip int32)
|
|
// 查询所有特权 key 对应comm.PrivilegeType1类型
|
|
CheckAllPrivilege(session IUserSession) map[int32]*pb.PrivilegeList
|
|
// 通过特权类型获取特权对应的增加数量
|
|
GetCountByPrivilegeId(uid string, pType int32) (count int32)
|
|
}
|
|
//武馆
|
|
IMartialhall interface {
|
|
///红点
|
|
IGetReddot
|
|
}
|
|
// 世界任务
|
|
IWorldtask interface {
|
|
IOpenCmdNotice
|
|
// bingo任务
|
|
BingoJumpTask(session IUserSession, groupId, rtaskId int32) error
|
|
// 通过任务ID bingo
|
|
JumpTaskByTaskId(session IUserSession, rtaskId int32) error
|
|
// 查询我的世界任务
|
|
GetMyWorldtask(uid string) *pb.DBWorldtask
|
|
//接取商队任务 //接口废弃
|
|
AcceptCaravanTask(session IUserSession, groupId int32) (task *pb.Worldtask, errdata *pb.ErrorData)
|
|
//更新接取任务
|
|
UpdateTaskStatus(uid string, taskId int32)
|
|
}
|
|
// 支线剧情任务
|
|
ILinestory interface {
|
|
// 任务完成通知
|
|
TaskFinishNotify(uid string, taskId, groupId int32) error
|
|
}
|
|
|
|
//竞技场
|
|
IArena interface {
|
|
///红点
|
|
IGetReddot
|
|
//设置用户积分
|
|
SetUserIntegral(session IUserSession, Integral int32) (err error)
|
|
//获取匹配战斗角色列表
|
|
GetMatcheBattleRoles(uid string) (captain int32, rules []*pb.BattleRole, err error)
|
|
}
|
|
IGourmet interface {
|
|
///红点
|
|
IGetReddot
|
|
GMCreateAltas(uid string)
|
|
}
|
|
ILibrary interface {
|
|
|
|
// 任务完成通知
|
|
TaskFinishNotify(uid string, taskId, fetterId int32) error
|
|
IGetReddot
|
|
GMCreateFavorability(uid string)
|
|
}
|
|
// 个人成长任务
|
|
IGrowtask interface {
|
|
BingoAllGrowTask(session IUserSession) error
|
|
}
|
|
//支付模块
|
|
IPay interface {
|
|
//模拟发货
|
|
// ModulePayDelivery(session IUserSession, Productid string, Price int32) (errdata *pb.ErrorData)
|
|
IActivityNotice
|
|
}
|
|
|
|
//实时Pvp
|
|
IPvp interface {
|
|
//查询战斗数
|
|
QueryBattle(id string) (battle *pb.DBPvpBattle, err error)
|
|
//创建实时Pvp
|
|
CreateRoom(sessions []IUserSession, rulesStr string) (roomid string, err error)
|
|
//推送战斗输出指令
|
|
PvpOutCmdPush(out *pb.PvpOutCmdPush)
|
|
//推送战斗结束
|
|
PvpFinishPush(out *pb.BattleFinishPush)
|
|
//用户离线
|
|
UserOffline(roomid string, uid string) (err error)
|
|
}
|
|
|
|
ISmithy interface {
|
|
CheckActivateAtlasCollect(uid string, id string)
|
|
IBuriedUpdateNotify
|
|
IGetReddot // 铁匠铺红点
|
|
GmProficiency(uid string)
|
|
GmSmithyAtlas(session IUserSession)
|
|
}
|
|
|
|
IPandaAtlas interface {
|
|
CheckActivatePandaAtlasCollect(uid string, id string) (err error)
|
|
}
|
|
//练功房
|
|
IPractice interface {
|
|
IGetReddot
|
|
ITaskComplete
|
|
IOpenCmdNotice
|
|
//添加武馆资源
|
|
AddItems(session IUserSession, items map[string]int32, bPush bool) (errdata *pb.ErrorData)
|
|
//pvp切磋结果通知
|
|
ChallengeResults(bid, red, bule string, winSide int32)
|
|
|
|
// 清除玩家踢馆状态
|
|
CleanUpNpc(uid string)
|
|
GetAllJxRes() (res []string, err error)
|
|
}
|
|
|
|
//捕羊大赛
|
|
IParkour interface {
|
|
}
|
|
|
|
ITools interface {
|
|
GetGroupDataByLottery(lotteryId int32, vipLv int32, lv int32) (items []*cfg.Gameatn)
|
|
GetGlobalConf() *cfg.GameGlobalData
|
|
GetPriceGroupCost(pricegroupId int32, purchase int32) (res []*cfg.Gameatn, err error)
|
|
|
|
RandRobotConfig(num int32) (confs []*cfg.GameRobotData, err error)
|
|
GetHeroConfig(heroCfgId string) (conf *cfg.GameHeroData, err error)
|
|
GetPriceGroupLen(pricegroupId int32) (count int32, err error)
|
|
GetGrormetLlame(id string) (data int32, err error)
|
|
GetGroupDataByLotteryId(id int32) (data *cfg.GameLotteryData, err error)
|
|
|
|
//获取用户等级配置
|
|
GetPlayerlvConf(uid string) (conf *cfg.GamePlayerlvData, errdata *pb.ErrorData)
|
|
|
|
//读取全局表 db层
|
|
GetGlobalData(key string, v interface{}) (err error)
|
|
//更新全局表 db层
|
|
UpdateGlobalData(key string, v interface{}) (err error)
|
|
}
|
|
|
|
IReputation interface {
|
|
// 声望升级 返回声望等级
|
|
Upgrade(session IUserSession, raceType int32, fv int32) (lv int32)
|
|
}
|
|
|
|
// 关卡编辑器
|
|
ICombat interface {
|
|
// 获取关卡状态
|
|
GetLevels(uid string) (levels map[int32]*pb.DBCombatLevel)
|
|
}
|
|
|
|
ICaravan interface {
|
|
ITaskComplete
|
|
TaskGroupComplete(session IUserSession, group int32)
|
|
}
|
|
//埋点中心
|
|
IBuried interface {
|
|
//完成任务埋点
|
|
CompleteCondition(uid string, condiId int32) (err error)
|
|
//埋点中心触发
|
|
TriggerBuried(session IUserSession, burieds ...*pb.BuriedParam)
|
|
//校验条件是否达成 返回未完成列表
|
|
CheckCondition(uid string, condiIds ...int32) (condis []*pb.ConIProgress, err error)
|
|
//激活条件
|
|
ActiveCondition(uid string, condiIds ...int32) (errdata *pb.ErrorData)
|
|
//完成任务并校验接口
|
|
FinishConditionAndCheck(uid string, finishcondiIds []int32, condiIds ...int32) (condis []*pb.ConIProgress, err error)
|
|
//重置埋点 按类型
|
|
ResetBuriedByType(uid string, types ...TaskType) (err error)
|
|
}
|
|
//红点模块接口
|
|
IReddot interface {
|
|
//推送红点
|
|
PushReddot(session IUserSession, reddot ...*pb.ReddotItem) (errdata *pb.ErrorData)
|
|
}
|
|
//练功房
|
|
IPasson interface {
|
|
//英雄升级
|
|
HeroUpLv(session IUserSession, heroid string, lv int32)
|
|
}
|
|
// 世界任务
|
|
IWtask interface {
|
|
IBuriedUpdateNotify
|
|
IOpenCmdNotice
|
|
AcceptCaravanTask(session IUserSession, groupId int32) (tid, groud int32, errdata *pb.ErrorData)
|
|
ClearCaravanTask(session IUserSession, task int32)
|
|
// bingo任务
|
|
BingoJumpTask(session IUserSession, rtaskId int32) (errdata *pb.ErrorData)
|
|
//重置日常任务
|
|
ResetDailytaskTask(session IUserSession, dailytaskid int32, groupId ...int32) (results map[int32][]int32, errdata *pb.ErrorData)
|
|
//查询任务进度
|
|
InquireTaskProgress(session IUserSession, tasks ...int32) (progress []*pb.DBWTaskItem, errdata *pb.ErrorData)
|
|
//查询完成列表
|
|
InquireCompletes(uid string) []int32
|
|
}
|
|
//战令
|
|
IWarorder interface {
|
|
IPayDelivery
|
|
IActivityNotice
|
|
}
|
|
|
|
IActivity interface {
|
|
GetHdInfoByHdId(oid string) (result *pb.DBHuodong, err error) // 通过活动id 获取活动信息
|
|
GetAllHdInfo() (hdList map[pb.HdType]*pb.DBHuodong) // 获取所有活动信息
|
|
GetHdInfoByItype(itype pb.HdType) (result *pb.DBHuodong, err error) //
|
|
|
|
// 庆典活动
|
|
HDCelebration(session IUserSession, systemtype int32, bosstype int32) bool
|
|
}
|
|
//每日任务
|
|
IDailytask interface {
|
|
IOpenCmdNotice
|
|
IGetReddot
|
|
//任务组完成
|
|
TaskGroupComplete(session IUserSession, group int32)
|
|
}
|
|
//新主线
|
|
IMainline interface {
|
|
///红点
|
|
IGetReddot
|
|
// bingo 关卡
|
|
BingoJumpLevel(session IUserSession, level int32) (errdata *pb.ErrorData)
|
|
//查询主线通关进度
|
|
InquireMainLinePassLevel(uid string) (levels map[int32]int32)
|
|
// 任务条件达成通知
|
|
IBuriedUpdateNotify
|
|
}
|
|
//工会boos战
|
|
IGuildgve interface {
|
|
///红点
|
|
IGetReddot
|
|
ModifyBooslv(session IUserSession, lv int32) (errdata *pb.ErrorData)
|
|
}
|
|
|
|
//购物中心
|
|
IShopcenter interface {
|
|
IActivityNotice
|
|
IPayDelivery
|
|
}
|
|
//累充接口
|
|
IAddrecharge interface {
|
|
IActivityNotice
|
|
//积分充值
|
|
RechargeIntegral(session IUserSession, integral int32)
|
|
}
|
|
//推送礼包
|
|
IPushgiftbag interface {
|
|
IBuriedUpdateNotify
|
|
IPayDelivery
|
|
}
|
|
IUiGame interface {
|
|
HDPSTodayConsum(uid string, ps int32) // 今日消耗的体力
|
|
}
|
|
|
|
IStonehenge interface {
|
|
GmAddStoneEvent(uid string, eventid int32)
|
|
}
|
|
//战斗记录模块
|
|
IBattleRecord interface {
|
|
WrietBattleRecord(uid string, report *pb.BattleReport, expire int64)
|
|
}
|
|
IDragon interface {
|
|
//获取玩家坐骑列表
|
|
GetDragonList(uid string) (dragon []*pb.DBDragon, err error)
|
|
// 创建坐骑
|
|
CreateDragon(session IUserSession, dragons map[string]int32, bPush bool) (errdata *pb.ErrorData)
|
|
// 机器人 坐骑
|
|
CreateRobotDragon(dragonid string, lv int32) (dragon *pb.DBDragon, err error)
|
|
// 查询所有成龙
|
|
QueryBigDragonList(uid string) (dragon []*pb.DBDragon, err error)
|
|
// 通过ID 查询龙的信息
|
|
QueryDragonById(uid string, dragonid string) (dragon *pb.DBDragon, err error)
|
|
|
|
// 跨服接口 通过 服务器标签和唯一id 获取坐骑信息
|
|
QueryDragonByTagAndOid(tag string, objId []string) (dragon []*pb.DBDragon, err error)
|
|
|
|
// Gm 调整龙的等级
|
|
GMModifyDragonLv(uid string, cid string, lv int32) (dragon *pb.DBDragon, err error)
|
|
}
|
|
IMainCity interface {
|
|
//添加同屏好友
|
|
AddMainCityFriends(uid string, users []string)
|
|
}
|
|
//游戏邀请
|
|
IGameInvite interface {
|
|
GameInviteEnd(gtype int32, uid string)
|
|
}
|
|
//游戏邀请
|
|
IDColor interface {
|
|
CreateRoom(sessions []IUserSession, rulesStr string) (roomid string, err error)
|
|
UserOffline(roomid string, uid string) (err error)
|
|
//主动认输
|
|
AdmitDefeat(roomid string, uid string) (err error)
|
|
}
|
|
//犬兔大战
|
|
ICanineRabbit interface {
|
|
CreateRoom(sessions []IUserSession, rulesStr string) (roomid string, err error)
|
|
UserOffline(roomid string, uid string) (err error)
|
|
//主动认输
|
|
AdmitDefeat(roomid string, uid string) (err error)
|
|
}
|
|
IEntertainment interface {
|
|
// 添加三消卡片资源
|
|
AddXxlCard(session IUserSession, cards map[string]int32, bPush bool) (errdata *pb.ErrorData)
|
|
}
|
|
IMoonlv interface {
|
|
IBuriedUpdateNotify
|
|
}
|
|
//捉虫子
|
|
ICatchBugs interface {
|
|
CreateRoom(sessions []IUserSession, rulesStr string) (roomid string, err error)
|
|
//用户离线
|
|
UserOffline(roomid string, uid string) (err error)
|
|
//主动认输
|
|
AdmitDefeat(roomid string, uid string) (err error)
|
|
}
|
|
//海岛
|
|
IIsland interface {
|
|
IPayDelivery
|
|
}
|
|
)
|