赛季挑战任务
This commit is contained in:
parent
7504a2dcdf
commit
1123fe94ab
|
@ -710,6 +710,7 @@ const (
|
|||
TaskTypeTienlenLoseCoin = 28 // Tienlen输的金币数量
|
||||
TaskTypeTienlenWinCoin = 29 // Tienlen赢取金币数量
|
||||
TaskTypeRankMatchWinTimes = 30 // 排位胜利次数
|
||||
TaskTypeBuyPermit = 31 // 购买典藏通行证
|
||||
)
|
||||
|
||||
const (
|
||||
|
@ -720,12 +721,13 @@ const (
|
|||
)
|
||||
|
||||
const (
|
||||
TaskActivityTypeEveryDay = 1 // 每日任务
|
||||
TaskActivityTypeWeek = 2 // 每周任务
|
||||
TaskActivityTypeNovice = 3 // 新手任务
|
||||
TaskActivityTypeInvite = 4 // 邀请任务
|
||||
TaskActivityTypeAchieve = 5 // 成就任务
|
||||
TaskActivityTypePermit = 6 // 赛季通行证任务
|
||||
TaskActivityTypeEveryDay = 1 // 每日任务
|
||||
TaskActivityTypeWeek = 2 // 每周任务
|
||||
TaskActivityTypeNovice = 3 // 新手任务
|
||||
TaskActivityTypeInvite = 4 // 邀请任务
|
||||
TaskActivityTypeAchieve = 5 // 成就任务
|
||||
TaskActivityTypePermitEveryDay = 6 // 赛季通行证每日任务
|
||||
TaskActivityTypePermit = 7 // 赛季通行证任务
|
||||
)
|
||||
|
||||
const HeadRange = 3 // 机器人头像id范围
|
||||
|
|
Binary file not shown.
|
@ -2950,6 +2950,38 @@
|
|||
"Location": "0",
|
||||
"Describe": "用途:话费兑换码\n产出途径:七日累签进阶奖励",
|
||||
"Num": 10
|
||||
},
|
||||
{
|
||||
"Id": 300000,
|
||||
"Name": "财神送福",
|
||||
"ShowLocation": [
|
||||
0,
|
||||
0
|
||||
],
|
||||
"Classify": [
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
"Type": 20,
|
||||
"Effect0": [
|
||||
1,
|
||||
0,
|
||||
1,
|
||||
0
|
||||
],
|
||||
"Effect": [
|
||||
1,
|
||||
0,
|
||||
1,
|
||||
0
|
||||
],
|
||||
"SaleType": 1,
|
||||
"SaleGold": 5000,
|
||||
"Composition": 1,
|
||||
"CompositionMax": 9999,
|
||||
"Location": "0",
|
||||
"Describe": "作用:解锁角色皮肤-财神送福,可在皮肤功能界面使用"
|
||||
}
|
||||
]
|
||||
}
|
Binary file not shown.
|
@ -0,0 +1,3 @@
|
|||
|
||||
-á§mangoicon_300001"活力芒果*mg_01
|
||||
7â§mangoicon_300002"财神é€<C3A9>ç¦<C3A7>*mg_060:à§
|
|
@ -0,0 +1,22 @@
|
|||
{
|
||||
"Arr": [
|
||||
{
|
||||
"Id": 300001,
|
||||
"Model": "mango",
|
||||
"SkinPic": "icon_300001",
|
||||
"SkinName": "活力芒果",
|
||||
"SkinType": "mg_01"
|
||||
},
|
||||
{
|
||||
"Id": 300002,
|
||||
"Model": "mango",
|
||||
"SkinPic": "icon_300002",
|
||||
"SkinName": "财神送福",
|
||||
"SkinType": "mg_06",
|
||||
"UnlockType": 1,
|
||||
"UnlockItem": {
|
||||
"300000": 1
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
|
||||
б§
|
||||
б§"б§
|
||||
б§"б§
|
||||
б§"б§
|
||||
б§"б§
|
||||
б§"б§
|
||||
в§
|
||||
в§"в§
|
||||
в§"в§
|
||||
|
||||
в§"в§
|
||||
в§"в§
|
||||
в§"в§
|
||||
в§"в§
|
||||
в§"в§
|
||||
в§ "в§
|
||||
в§
|
||||
"в§
|
|
@ -0,0 +1,126 @@
|
|||
{
|
||||
"Arr": [
|
||||
{
|
||||
"Id": 1,
|
||||
"SkinId": 300001,
|
||||
"Level": 1
|
||||
},
|
||||
{
|
||||
"Id": 2,
|
||||
"SkinId": 300001,
|
||||
"Level": 2,
|
||||
"UpItem": {
|
||||
"300001": 20
|
||||
}
|
||||
},
|
||||
{
|
||||
"Id": 3,
|
||||
"SkinId": 300001,
|
||||
"Level": 3,
|
||||
"UpItem": {
|
||||
"300001": 21
|
||||
}
|
||||
},
|
||||
{
|
||||
"Id": 4,
|
||||
"SkinId": 300001,
|
||||
"Level": 4,
|
||||
"UpItem": {
|
||||
"300001": 22
|
||||
}
|
||||
},
|
||||
{
|
||||
"Id": 5,
|
||||
"SkinId": 300001,
|
||||
"Level": 5,
|
||||
"UpItem": {
|
||||
"300001": 23
|
||||
}
|
||||
},
|
||||
{
|
||||
"Id": 6,
|
||||
"SkinId": 300001,
|
||||
"Level": 6,
|
||||
"UpItem": {
|
||||
"300001": 24
|
||||
}
|
||||
},
|
||||
{
|
||||
"Id": 7,
|
||||
"SkinId": 300002,
|
||||
"Level": 1
|
||||
},
|
||||
{
|
||||
"Id": 8,
|
||||
"SkinId": 300002,
|
||||
"Level": 2,
|
||||
"UpItem": {
|
||||
"300002": 20
|
||||
}
|
||||
},
|
||||
{
|
||||
"Id": 9,
|
||||
"SkinId": 300002,
|
||||
"Level": 3,
|
||||
"UpItem": {
|
||||
"300002": 21
|
||||
}
|
||||
},
|
||||
{
|
||||
"Id": 10,
|
||||
"SkinId": 300002,
|
||||
"Level": 4,
|
||||
"UpItem": {
|
||||
"300002": 22
|
||||
}
|
||||
},
|
||||
{
|
||||
"Id": 11,
|
||||
"SkinId": 300002,
|
||||
"Level": 5,
|
||||
"UpItem": {
|
||||
"300002": 23
|
||||
}
|
||||
},
|
||||
{
|
||||
"Id": 12,
|
||||
"SkinId": 300002,
|
||||
"Level": 6,
|
||||
"UpItem": {
|
||||
"300002": 24
|
||||
}
|
||||
},
|
||||
{
|
||||
"Id": 13,
|
||||
"SkinId": 300002,
|
||||
"Level": 7,
|
||||
"UpItem": {
|
||||
"300002": 25
|
||||
}
|
||||
},
|
||||
{
|
||||
"Id": 14,
|
||||
"SkinId": 300002,
|
||||
"Level": 8,
|
||||
"UpItem": {
|
||||
"300002": 26
|
||||
}
|
||||
},
|
||||
{
|
||||
"Id": 15,
|
||||
"SkinId": 300002,
|
||||
"Level": 9,
|
||||
"UpItem": {
|
||||
"300002": 27
|
||||
}
|
||||
},
|
||||
{
|
||||
"Id": 16,
|
||||
"SkinId": 300002,
|
||||
"Level": 10,
|
||||
"UpItem": {
|
||||
"300002": 28
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
BIN
data/DB_Task.dat
BIN
data/DB_Task.dat
Binary file not shown.
|
@ -942,11 +942,7 @@
|
|||
"FinishTimes": 1,
|
||||
"Award": {
|
||||
"100011": 20
|
||||
},
|
||||
"Position": [
|
||||
1,
|
||||
1
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"Id": 11003,
|
||||
|
@ -1059,11 +1055,7 @@
|
|||
"FinishTimes": 1,
|
||||
"Award": {
|
||||
"100011": 80
|
||||
},
|
||||
"Position": [
|
||||
1,
|
||||
1
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"Id": 11011,
|
||||
|
@ -1081,6 +1073,107 @@
|
|||
1,
|
||||
1
|
||||
]
|
||||
},
|
||||
{
|
||||
"Id": 12001,
|
||||
"Order": 1,
|
||||
"Name": "通行证",
|
||||
"Des": "累计领取转盘签到奖励7天",
|
||||
"ActivityType": 7,
|
||||
"TaskType": 17,
|
||||
"TargetTimes": 7,
|
||||
"FinishTimes": 1,
|
||||
"Award": {
|
||||
"100011": 50
|
||||
}
|
||||
},
|
||||
{
|
||||
"Id": 12002,
|
||||
"Order": 2,
|
||||
"Name": "通行证",
|
||||
"Des": "购买进阶典藏通行证",
|
||||
"ActivityType": 7,
|
||||
"TaskType": 31,
|
||||
"TargetTimes": 1,
|
||||
"FinishTimes": 1,
|
||||
"Award": {
|
||||
"100011": 50
|
||||
}
|
||||
},
|
||||
{
|
||||
"Id": 12003,
|
||||
"Order": 3,
|
||||
"Name": "通行证",
|
||||
"Des": "累计充值$9.99",
|
||||
"ActivityType": 7,
|
||||
"TaskType": 7,
|
||||
"TargetTimes": 999,
|
||||
"FinishTimes": 1,
|
||||
"Award": {
|
||||
"100011": 50
|
||||
},
|
||||
"Position": [
|
||||
1,
|
||||
1
|
||||
]
|
||||
},
|
||||
{
|
||||
"Id": 12004,
|
||||
"Order": 4,
|
||||
"Name": "通行证",
|
||||
"Des": "累计充值$19.99",
|
||||
"ActivityType": 7,
|
||||
"TaskType": 7,
|
||||
"TargetTimes": 1999,
|
||||
"FinishTimes": 1,
|
||||
"Award": {
|
||||
"100011": 100
|
||||
},
|
||||
"Position": [
|
||||
1,
|
||||
1
|
||||
]
|
||||
},
|
||||
{
|
||||
"Id": 12005,
|
||||
"Order": 5,
|
||||
"Name": "通行证",
|
||||
"Des": "累计赚取10B金币",
|
||||
"ActivityType": 7,
|
||||
"TaskType": 11,
|
||||
"TargetTimes": 10000000000,
|
||||
"FinishTimes": 1,
|
||||
"Award": {
|
||||
"100011": 50
|
||||
},
|
||||
"GameType": 1
|
||||
},
|
||||
{
|
||||
"Id": 12006,
|
||||
"Order": 6,
|
||||
"Name": "通行证",
|
||||
"Des": "成功参加任意比赛20次",
|
||||
"ActivityType": 7,
|
||||
"TaskType": 25,
|
||||
"TargetTimes": 20,
|
||||
"FinishTimes": 1,
|
||||
"Award": {
|
||||
"100011": 50
|
||||
},
|
||||
"GameType": 1
|
||||
},
|
||||
{
|
||||
"Id": 12007,
|
||||
"Order": 7,
|
||||
"Name": "通行证",
|
||||
"Des": "累计在线时长1200分钟",
|
||||
"ActivityType": 7,
|
||||
"TaskType": 21,
|
||||
"TargetTimes": 72000,
|
||||
"FinishTimes": 1,
|
||||
"Award": {
|
||||
"100011": 50
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
|
@ -216,10 +216,11 @@ type ShopTotal struct {
|
|||
AdLookedNum int32 //已经观看的次数
|
||||
AdReceiveNum int32 //已经领取的次数
|
||||
}
|
||||
|
||||
type RolePetInfo struct {
|
||||
ModUnlock map[int32]int32 //已经解锁的id
|
||||
ModUnlock map[int32]int32 //已经解锁的id:等级
|
||||
ModId int32 //使用中的id
|
||||
SkillInfo map[int32]map[int32]int32 //宠物技能 key1 - petId key2 - skillId value - level
|
||||
SkillInfo map[int32]map[int32]int32 //技能等级 宠物id:技能id:技能等级
|
||||
}
|
||||
|
||||
// 七日签到数据
|
||||
|
@ -435,6 +436,7 @@ type PlayerData struct {
|
|||
ShopLastLookTime map[int32]int64 //商品上一次的观看时间
|
||||
Roles *RolePetInfo //人物
|
||||
Pets *RolePetInfo //宠物
|
||||
Skin *RolePetInfo //皮肤
|
||||
WelfData *WelfareData //活动数据
|
||||
*SignData
|
||||
VipMatchTimes int32 //VIP比赛场参与次数
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1513,6 +1513,44 @@ message DB_Sensitive_WordsArray {
|
|||
repeated DB_Sensitive_Words Arr = 1;
|
||||
}
|
||||
|
||||
message DB_Skin {
|
||||
|
||||
int32 Id = 1;
|
||||
|
||||
string Model = 2;
|
||||
|
||||
string SkinPic = 3;
|
||||
|
||||
string SkinName = 4;
|
||||
|
||||
string SkinType = 5;
|
||||
|
||||
int32 UnlockType = 6;
|
||||
|
||||
map<int64, int64> UnlockItem = 7;
|
||||
|
||||
}
|
||||
|
||||
message DB_SkinArray {
|
||||
repeated DB_Skin Arr = 1;
|
||||
}
|
||||
|
||||
message DB_SkinLevel {
|
||||
|
||||
int32 Id = 1;
|
||||
|
||||
int32 SkinId = 2;
|
||||
|
||||
int32 Level = 3;
|
||||
|
||||
map<int64, int64> UpItem = 4;
|
||||
|
||||
}
|
||||
|
||||
message DB_SkinLevelArray {
|
||||
repeated DB_SkinLevel Arr = 1;
|
||||
}
|
||||
|
||||
message DB_SlotRateWeight {
|
||||
|
||||
int32 Id = 1;
|
||||
|
|
|
@ -64,7 +64,7 @@ message TienLenPlayerData {
|
|||
int64 Level = 27; //玩家等级
|
||||
int64 Exp = 28; //玩家经验
|
||||
int64 PigBankCoin = 29; //存钱罐金币
|
||||
repeated PetSkillInfo SkillInfo = 30;//宠物技能信息
|
||||
repeated PetSkillInfo SkillInfo = 30;//宠物技能信息
|
||||
}
|
||||
|
||||
//宠物技能
|
||||
|
|
2
public
2
public
|
@ -1 +1 @@
|
|||
Subproject commit 20147d9ef04cb8f6f1df630ced583280c0361312
|
||||
Subproject commit e23e35def8bf29736c1e4c3ed56781f51ed94773
|
|
@ -0,0 +1,77 @@
|
|||
|
||||
// Code generated by xlsx2proto.
|
||||
// DO NOT EDIT!
|
||||
|
||||
package srvdata
|
||||
|
||||
import (
|
||||
"google.golang.org/protobuf/proto"
|
||||
|
||||
"mongo.games.com/game/protocol/server"
|
||||
)
|
||||
|
||||
var PBDB_SkinMgr = &DB_SkinMgr{
|
||||
Datas: &server.DB_SkinArray{},
|
||||
pool: make(map[int32]*server.DB_Skin),
|
||||
|
||||
}
|
||||
|
||||
type DB_SkinMgr struct {
|
||||
Datas *server.DB_SkinArray
|
||||
pool map[int32]*server.DB_Skin
|
||||
|
||||
}
|
||||
|
||||
func (this *DB_SkinMgr) unmarshal(data []byte) error {
|
||||
err := proto.Unmarshal(data, this.Datas)
|
||||
if err == nil {
|
||||
this.arrangeData()
|
||||
}
|
||||
return err
|
||||
}
|
||||
|
||||
func (this *DB_SkinMgr) reunmarshal(data []byte) error {
|
||||
newDatas := &server.DB_SkinArray{}
|
||||
err := proto.Unmarshal(data, newDatas)
|
||||
if err == nil {
|
||||
for _, item := range newDatas.Arr {
|
||||
existItem := this.GetData(item.GetId())
|
||||
if existItem == nil {
|
||||
this.pool[item.GetId()] = item
|
||||
this.Datas.Arr = append(this.Datas.Arr, item)
|
||||
|
||||
} else {
|
||||
*existItem = *item
|
||||
}
|
||||
}
|
||||
}
|
||||
return err
|
||||
}
|
||||
|
||||
func (this *DB_SkinMgr) arrangeData() {
|
||||
if this.Datas == nil {
|
||||
return
|
||||
}
|
||||
|
||||
dataArr := this.Datas.GetArr()
|
||||
if dataArr == nil {
|
||||
return
|
||||
}
|
||||
|
||||
for _, data := range dataArr {
|
||||
this.pool[data.GetId()] = data
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
func (this *DB_SkinMgr) GetData(id int32) *server.DB_Skin {
|
||||
if data, ok := this.pool[id]; ok {
|
||||
return data
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
|
||||
func init() {
|
||||
DataMgr.register("DB_Skin.dat", &ProtobufDataLoader{dh: PBDB_SkinMgr})
|
||||
}
|
|
@ -0,0 +1,77 @@
|
|||
|
||||
// Code generated by xlsx2proto.
|
||||
// DO NOT EDIT!
|
||||
|
||||
package srvdata
|
||||
|
||||
import (
|
||||
"google.golang.org/protobuf/proto"
|
||||
|
||||
"mongo.games.com/game/protocol/server"
|
||||
)
|
||||
|
||||
var PBDB_SkinLevelMgr = &DB_SkinLevelMgr{
|
||||
Datas: &server.DB_SkinLevelArray{},
|
||||
pool: make(map[int32]*server.DB_SkinLevel),
|
||||
|
||||
}
|
||||
|
||||
type DB_SkinLevelMgr struct {
|
||||
Datas *server.DB_SkinLevelArray
|
||||
pool map[int32]*server.DB_SkinLevel
|
||||
|
||||
}
|
||||
|
||||
func (this *DB_SkinLevelMgr) unmarshal(data []byte) error {
|
||||
err := proto.Unmarshal(data, this.Datas)
|
||||
if err == nil {
|
||||
this.arrangeData()
|
||||
}
|
||||
return err
|
||||
}
|
||||
|
||||
func (this *DB_SkinLevelMgr) reunmarshal(data []byte) error {
|
||||
newDatas := &server.DB_SkinLevelArray{}
|
||||
err := proto.Unmarshal(data, newDatas)
|
||||
if err == nil {
|
||||
for _, item := range newDatas.Arr {
|
||||
existItem := this.GetData(item.GetId())
|
||||
if existItem == nil {
|
||||
this.pool[item.GetId()] = item
|
||||
this.Datas.Arr = append(this.Datas.Arr, item)
|
||||
|
||||
} else {
|
||||
*existItem = *item
|
||||
}
|
||||
}
|
||||
}
|
||||
return err
|
||||
}
|
||||
|
||||
func (this *DB_SkinLevelMgr) arrangeData() {
|
||||
if this.Datas == nil {
|
||||
return
|
||||
}
|
||||
|
||||
dataArr := this.Datas.GetArr()
|
||||
if dataArr == nil {
|
||||
return
|
||||
}
|
||||
|
||||
for _, data := range dataArr {
|
||||
this.pool[data.GetId()] = data
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
func (this *DB_SkinLevelMgr) GetData(id int32) *server.DB_SkinLevel {
|
||||
if data, ok := this.pool[id]; ok {
|
||||
return data
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
|
||||
func init() {
|
||||
DataMgr.register("DB_SkinLevel.dat", &ProtobufDataLoader{dh: PBDB_SkinLevelMgr})
|
||||
}
|
|
@ -52,7 +52,7 @@ func IsTaskReward(p *Player, id int32) bool {
|
|||
if data := p.WelfData.Task[id]; data != nil && data.Ts > 0 {
|
||||
t := srvdata.PBDB_TaskMgr.GetData(id)
|
||||
switch t.ActivityType {
|
||||
case common.TaskActivityTypeEveryDay, common.TaskActivityTypePermit:
|
||||
case common.TaskActivityTypeEveryDay, common.TaskActivityTypePermitEveryDay:
|
||||
if common.TsInSameDay(time.Now().Unix(), data.Ts) {
|
||||
return true
|
||||
}
|
||||
|
@ -66,6 +66,13 @@ func IsTaskReward(p *Player, id int32) bool {
|
|||
if data.Ts > 0 {
|
||||
return true
|
||||
}
|
||||
case common.TaskActivityTypePermit:
|
||||
startTs := PlatformMgrSingleton.GetConfig(p.Platform).PermitStartTs
|
||||
endTs := PlatformMgrSingleton.GetConfig(p.Platform).PermitEndTs
|
||||
if startTs > 0 {
|
||||
return data.Ts >= startTs && data.Ts < endTs
|
||||
}
|
||||
return true
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2258,7 +2258,7 @@ func (this *Player) OnDayTimer(login, continuous bool, t int) {
|
|||
for _, v := range srvdata.TaskMgr.GetActivityType(common.TaskActivityTypeEveryDay) {
|
||||
this.WelfData.Task[v.GetId()] = &model.TaskData{}
|
||||
}
|
||||
for _, v := range srvdata.TaskMgr.GetActivityType(common.TaskActivityTypePermit) {
|
||||
for _, v := range srvdata.TaskMgr.GetActivityType(common.TaskActivityTypePermitEveryDay) {
|
||||
this.WelfData.Task[v.GetId()] = &model.TaskData{}
|
||||
}
|
||||
}
|
||||
|
@ -2299,6 +2299,12 @@ func (this *Player) ResetPermit() {
|
|||
}
|
||||
this.WelfData.PermitAward = make(map[int32]int64)
|
||||
this.WelfData.PermitExchange = make(map[int32][]int64)
|
||||
if this.WelfData.Task != nil {
|
||||
for _, v := range srvdata.TaskMgr.GetActivityType(common.TaskActivityTypePermit) {
|
||||
this.WelfData.Task[v.GetId()] = &model.TaskData{}
|
||||
}
|
||||
}
|
||||
|
||||
this.dirty = true
|
||||
// 清理数据
|
||||
bag := BagMgrSingleton.GetBagInfo(this.SnId)
|
||||
|
@ -3950,6 +3956,10 @@ func (this *Player) GetPayGoodsInfo() {
|
|||
SnId: this.SnId,
|
||||
Ts: time.Now().Unix(),
|
||||
})
|
||||
TaskSubjectSingleton.Touch(common.TaskTypeBuyPermit, &TaskData{
|
||||
SnId: this.SnId,
|
||||
Num: 1,
|
||||
})
|
||||
}
|
||||
switch info.Remark {
|
||||
case "BlindBox":
|
||||
|
|
|
@ -260,4 +260,5 @@ func init() {
|
|||
TaskSubjectSingleton.Attach(common.TaskTypeTienlenLoseCoin, taskHandle)
|
||||
TaskSubjectSingleton.Attach(common.TaskTypeTienlenWinCoin, taskHandle)
|
||||
TaskSubjectSingleton.Attach(common.TaskTypeRankMatchWinTimes, taskHandle)
|
||||
TaskSubjectSingleton.Attach(common.TaskTypeBuyPermit, taskHandle)
|
||||
}
|
||||
|
|
|
@ -3473,6 +3473,10 @@ func init() {
|
|||
SnId: player.SnId,
|
||||
Ts: time.Now().Unix(),
|
||||
})
|
||||
TaskSubjectSingleton.Touch(common.TaskTypeBuyPermit, &TaskData{
|
||||
SnId: player.SnId,
|
||||
Num: 1,
|
||||
})
|
||||
}
|
||||
switch info.Remark {
|
||||
case "BlindBox":
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue