天赋系统

This commit is contained in:
meixiongfeng 2022-10-24 18:51:07 +08:00
parent 3f32c57814
commit b3d7379f75
8 changed files with 2100 additions and 738 deletions

View File

@ -0,0 +1,662 @@
[
{
"id": 1,
"type": [
0
],
"talentid": 40101,
"before": [
0
],
"thing": [
{
"a": "attr",
"t": "glod",
"n": 20000
},
{
"a": "attr",
"t": "diamond",
"n": 5000
}
],
"position": [
1,
1
]
},
{
"id": 2,
"type": [
0
],
"talentid": 40102,
"before": [
0
],
"thing": [
{
"a": "attr",
"t": "glod",
"n": 20000
},
{
"a": "attr",
"t": "diamond",
"n": 5000
}
],
"position": [
1,
3
]
},
{
"id": 3,
"type": [
0
],
"talentid": 40103,
"before": [
0
],
"thing": [
{
"a": "attr",
"t": "glod",
"n": 20000
},
{
"a": "attr",
"t": "diamond",
"n": 5000
}
],
"position": [
1,
5
]
},
{
"id": 4,
"type": [
1
],
"talentid": 10101,
"before": [
1
],
"thing": [
{
"a": "attr",
"t": "glod",
"n": 15000
},
{
"a": "hero",
"t": "44911",
"n": 1
}
],
"position": [
3,
1
]
},
{
"id": 5,
"type": [
1
],
"talentid": 10102,
"before": [
4
],
"thing": [
{
"a": "attr",
"t": "glod",
"n": 15000
},
{
"a": "hero",
"t": "44911",
"n": 1
}
],
"position": [
5,
1
]
},
{
"id": 6,
"type": [
1
],
"talentid": 10103,
"before": [
5
],
"thing": [
{
"a": "attr",
"t": "glod",
"n": 15000
},
{
"a": "hero",
"t": "44911",
"n": 1
}
],
"position": [
7,
1
]
},
{
"id": 7,
"type": [
1
],
"talentid": 10104,
"before": [
6,
23
],
"thing": [
{
"a": "attr",
"t": "glod",
"n": 15000
},
{
"a": "hero",
"t": "44911",
"n": 1
}
],
"position": [
9,
1
]
},
{
"id": 8,
"type": [
1
],
"talentid": 10105,
"before": [
7
],
"thing": [
{
"a": "attr",
"t": "glod",
"n": 15000
},
{
"a": "hero",
"t": "44911",
"n": 1
}
],
"position": [
11,
1
]
},
{
"id": 9,
"type": [
1
],
"talentid": 10106,
"before": [
8
],
"thing": [
{
"a": "attr",
"t": "glod",
"n": 15000
},
{
"a": "hero",
"t": "44911",
"n": 1
}
],
"position": [
13,
1
]
},
{
"id": 10,
"type": [
2
],
"talentid": 20101,
"before": [
2
],
"thing": [
{
"a": "attr",
"t": "glod",
"n": 15000
},
{
"a": "hero",
"t": "44911",
"n": 1
}
],
"position": [
3,
3
]
},
{
"id": 11,
"type": [
2
],
"talentid": 20102,
"before": [
10
],
"thing": [
{
"a": "attr",
"t": "glod",
"n": 15000
},
{
"a": "hero",
"t": "44911",
"n": 1
}
],
"position": [
5,
3
]
},
{
"id": 12,
"type": [
2
],
"talentid": 20103,
"before": [
11,
5,
18
],
"thing": [
{
"a": "attr",
"t": "glod",
"n": 15000
},
{
"a": "hero",
"t": "44911",
"n": 1
}
],
"position": [
7,
3
]
},
{
"id": 13,
"type": [
2
],
"talentid": 20104,
"before": [
23,
24
],
"thing": [
{
"a": "attr",
"t": "glod",
"n": 15000
},
{
"a": "hero",
"t": "44911",
"n": 1
}
],
"position": [
9,
3
]
},
{
"id": 14,
"type": [
2
],
"talentid": 20105,
"before": [
7,
13,
20
],
"thing": [
{
"a": "attr",
"t": "glod",
"n": 15000
},
{
"a": "hero",
"t": "44911",
"n": 1
}
],
"position": [
11,
3
]
},
{
"id": 15,
"type": [
2
],
"talentid": 20106,
"before": [
14
],
"thing": [
{
"a": "attr",
"t": "glod",
"n": 15000
},
{
"a": "hero",
"t": "44911",
"n": 1
}
],
"position": [
13,
3
]
},
{
"id": 16,
"type": [
2
],
"talentid": 20107,
"before": [
10
],
"thing": [
{
"a": "attr",
"t": "glod",
"n": 15000
},
{
"a": "hero",
"t": "44911",
"n": 1
}
],
"position": [
4,
2
]
},
{
"id": 17,
"type": [
3
],
"talentid": 30101,
"before": [
3
],
"thing": [
{
"a": "attr",
"t": "glod",
"n": 15000
},
{
"a": "hero",
"t": "44911",
"n": 1
}
],
"position": [
3,
5
]
},
{
"id": 18,
"type": [
3
],
"talentid": 30102,
"before": [
17
],
"thing": [
{
"a": "attr",
"t": "glod",
"n": 15000
},
{
"a": "hero",
"t": "44911",
"n": 1
}
],
"position": [
5,
5
]
},
{
"id": 19,
"type": [
3
],
"talentid": 30103,
"before": [
18
],
"thing": [
{
"a": "attr",
"t": "glod",
"n": 15000
},
{
"a": "hero",
"t": "44911",
"n": 1
}
],
"position": [
7,
5
]
},
{
"id": 20,
"type": [
3
],
"talentid": 30104,
"before": [
24
],
"thing": [
{
"a": "attr",
"t": "glod",
"n": 15000
},
{
"a": "hero",
"t": "44911",
"n": 1
}
],
"position": [
9,
5
]
},
{
"id": 21,
"type": [
3
],
"talentid": 30105,
"before": [
20
],
"thing": [
{
"a": "attr",
"t": "glod",
"n": 15000
},
{
"a": "hero",
"t": "44911",
"n": 1
}
],
"position": [
11,
5
]
},
{
"id": 22,
"type": [
3
],
"talentid": 30106,
"before": [
21
],
"thing": [
{
"a": "attr",
"t": "glod",
"n": 15000
},
{
"a": "hero",
"t": "44911",
"n": 1
}
],
"position": [
13,
5
]
},
{
"id": 23,
"type": [
999
],
"talentid": 99101,
"before": [
6,
12
],
"thing": [
{
"a": "attr",
"t": "glod",
"n": 40000
},
{
"a": "attr",
"t": "diamond",
"n": 5000
}
],
"position": [
8,
2
]
},
{
"id": 24,
"type": [
999
],
"talentid": 99102,
"before": [
12,
19
],
"thing": [
{
"a": "attr",
"t": "glod",
"n": 40000
},
{
"a": "attr",
"t": "diamond",
"n": 5000
}
],
"position": [
8,
4
]
},
{
"id": 25,
"type": [
999
],
"talentid": 99103,
"before": [
9,
15,
22
],
"thing": [
{
"a": "attr",
"t": "glod",
"n": 40000
},
{
"a": "attr",
"t": "diamond",
"n": 5000
}
],
"position": [
15,
3
]
}
]

View File

@ -0,0 +1,434 @@
[
{
"skillid": 40101,
"skilltyp": 0,
"skillname": "生命核心",
"skilltxt": "这是生命天赋的描述tips",
"skillicon": "jn_icon_006",
"hp": -1,
"atk": -1,
"def": -1,
"crt": -1,
"speed": -1
},
{
"skillid": 40102,
"skilltyp": 0,
"skillname": "攻击核心",
"skilltxt": "这是攻击天赋的描述tips",
"skillicon": "jn_icon_004",
"hp": -1,
"atk": -1,
"def": -1,
"crt": -1,
"speed": -1
},
{
"skillid": 40103,
"skilltyp": 0,
"skillname": "防御核心",
"skilltxt": "这是防御天赋的描述tips",
"skillicon": "jn_icon_005",
"hp": -1,
"atk": -1,
"def": -1,
"crt": -1,
"speed": -1
},
{
"skillid": 10101,
"skilltyp": 1,
"skillname": "生命天赋",
"skilltxt": "这是生命天赋的描述tips",
"skillicon": "jn_dzj_0001",
"hp": 1800,
"atk": -1,
"def": -1,
"crt": -1,
"speed": -1
},
{
"skillid": 10102,
"skilltyp": 1,
"skillname": "生命天赋",
"skilltxt": "这是生命天赋的描述tips",
"skillicon": "jn_dzj_0001",
"hp": 1800,
"atk": -1,
"def": -1,
"crt": -1,
"speed": -1
},
{
"skillid": 10103,
"skilltyp": 1,
"skillname": "生命天赋",
"skilltxt": "这是生命天赋的描述tips",
"skillicon": "jn_dzj_0001",
"hp": 1800,
"atk": -1,
"def": -1,
"crt": -1,
"speed": -1
},
{
"skillid": 10104,
"skilltyp": 1,
"skillname": "生命天赋",
"skilltxt": "这是生命天赋的描述tips",
"skillicon": "jn_dzj_0001",
"hp": 1800,
"atk": -1,
"def": -1,
"crt": -1,
"speed": -1
},
{
"skillid": 10105,
"skilltyp": 1,
"skillname": "生命天赋",
"skilltxt": "这是生命天赋的描述tips",
"skillicon": "jn_dzj_0001",
"hp": 1800,
"atk": -1,
"def": -1,
"crt": -1,
"speed": -1
},
{
"skillid": 10106,
"skilltyp": 1,
"skillname": "生命天赋",
"skilltxt": "这是生命天赋的描述tips",
"skillicon": "jn_dzj_0001",
"hp": 1800,
"atk": -1,
"def": -1,
"crt": -1,
"speed": -1
},
{
"skillid": 10107,
"skilltyp": 1,
"skillname": "生命天赋",
"skilltxt": "这是生命天赋的描述tips",
"skillicon": "jn_dzj_0001",
"hp": 1800,
"atk": -1,
"def": -1,
"crt": -1,
"speed": -1
},
{
"skillid": 10108,
"skilltyp": 1,
"skillname": "生命天赋",
"skilltxt": "这是生命天赋的描述tips",
"skillicon": "jn_dzj_0001",
"hp": 1800,
"atk": -1,
"def": -1,
"crt": -1,
"speed": -1
},
{
"skillid": 10109,
"skilltyp": 1,
"skillname": "生命天赋",
"skilltxt": "这是生命天赋的描述tips",
"skillicon": "jn_dzj_0001",
"hp": 1800,
"atk": -1,
"def": -1,
"crt": -1,
"speed": -1
},
{
"skillid": 10110,
"skilltyp": 1,
"skillname": "生命天赋",
"skilltxt": "这是生命天赋的描述tips",
"skillicon": "jn_dzj_0001",
"hp": 1800,
"atk": -1,
"def": -1,
"crt": -1,
"speed": -1
},
{
"skillid": 20101,
"skilltyp": 1,
"skillname": "攻击天赋",
"skilltxt": "这是攻击天赋的描述tips",
"skillicon": "jn_dzj_0002",
"hp": -1,
"atk": -1,
"def": 1500,
"crt": -1,
"speed": -1
},
{
"skillid": 20102,
"skilltyp": 1,
"skillname": "攻击天赋",
"skilltxt": "这是攻击天赋的描述tips",
"skillicon": "jn_dzj_0003",
"hp": -1,
"atk": -1,
"def": 1500,
"crt": -1,
"speed": -1
},
{
"skillid": 20103,
"skilltyp": 1,
"skillname": "攻击天赋",
"skilltxt": "这是攻击天赋的描述tips",
"skillicon": "jn_dzj_0004",
"hp": -1,
"atk": -1,
"def": 1500,
"crt": -1,
"speed": -1
},
{
"skillid": 20104,
"skilltyp": 1,
"skillname": "攻击天赋",
"skilltxt": "这是攻击天赋的描述tips",
"skillicon": "jn_dzj_0005",
"hp": -1,
"atk": -1,
"def": 1500,
"crt": -1,
"speed": -1
},
{
"skillid": 20105,
"skilltyp": 1,
"skillname": "攻击天赋",
"skilltxt": "这是攻击天赋的描述tips",
"skillicon": "jn_dzj_0006",
"hp": -1,
"atk": -1,
"def": 1500,
"crt": -1,
"speed": -1
},
{
"skillid": 20106,
"skilltyp": 1,
"skillname": "攻击天赋",
"skilltxt": "这是攻击天赋的描述tips",
"skillicon": "jn_dzj_0007",
"hp": -1,
"atk": -1,
"def": 1500,
"crt": -1,
"speed": -1
},
{
"skillid": 20107,
"skilltyp": 1,
"skillname": "攻击天赋",
"skilltxt": "这是攻击天赋的描述tips",
"skillicon": "jn_dzj_0008",
"hp": -1,
"atk": -1,
"def": 1500,
"crt": -1,
"speed": -1
},
{
"skillid": 20108,
"skilltyp": 1,
"skillname": "攻击天赋",
"skilltxt": "这是攻击天赋的描述tips",
"skillicon": "jn_dzj_0009",
"hp": -1,
"atk": -1,
"def": 1500,
"crt": -1,
"speed": -1
},
{
"skillid": 20109,
"skilltyp": 1,
"skillname": "攻击天赋",
"skilltxt": "这是攻击天赋的描述tips",
"skillicon": "jn_dzj_0010",
"hp": -1,
"atk": -1,
"def": 1500,
"crt": -1,
"speed": -1
},
{
"skillid": 20110,
"skilltyp": 1,
"skillname": "攻击天赋",
"skilltxt": "这是攻击天赋的描述tips",
"skillicon": "jn_dzj_0011",
"hp": -1,
"atk": -1,
"def": 1500,
"crt": -1,
"speed": -1
},
{
"skillid": 30101,
"skilltyp": 1,
"skillname": "防御天赋",
"skilltxt": "这是防御天赋的描述tips",
"skillicon": "jn_dzj_0012",
"hp": -1,
"atk": 1500,
"def": -1,
"crt": -1,
"speed": -1
},
{
"skillid": 30102,
"skilltyp": 1,
"skillname": "防御天赋",
"skilltxt": "这是防御天赋的描述tips",
"skillicon": "jn_dzj_0013",
"hp": -1,
"atk": 1500,
"def": -1,
"crt": -1,
"speed": -1
},
{
"skillid": 30103,
"skilltyp": 1,
"skillname": "防御天赋",
"skilltxt": "这是防御天赋的描述tips",
"skillicon": "jn_dzj_0014",
"hp": -1,
"atk": 1500,
"def": -1,
"crt": -1,
"speed": -1
},
{
"skillid": 30104,
"skilltyp": 1,
"skillname": "防御天赋",
"skilltxt": "这是防御天赋的描述tips",
"skillicon": "jn_dzj_0015",
"hp": -1,
"atk": 1500,
"def": -1,
"crt": -1,
"speed": -1
},
{
"skillid": 30105,
"skilltyp": 1,
"skillname": "防御天赋",
"skilltxt": "这是防御天赋的描述tips",
"skillicon": "jn_dzj_0016",
"hp": -1,
"atk": 1500,
"def": -1,
"crt": -1,
"speed": -1
},
{
"skillid": 30106,
"skilltyp": 1,
"skillname": "防御天赋",
"skilltxt": "这是防御天赋的描述tips",
"skillicon": "jn_dzj_0017",
"hp": -1,
"atk": 1500,
"def": -1,
"crt": -1,
"speed": -1
},
{
"skillid": 30107,
"skilltyp": 1,
"skillname": "防御天赋",
"skilltxt": "这是防御天赋的描述tips",
"skillicon": "jn_dzj_0018",
"hp": -1,
"atk": 1500,
"def": -1,
"crt": -1,
"speed": -1
},
{
"skillid": 30108,
"skilltyp": 1,
"skillname": "防御天赋",
"skilltxt": "这是防御天赋的描述tips",
"skillicon": "jn_dzj_0019",
"hp": -1,
"atk": 1500,
"def": -1,
"crt": -1,
"speed": -1
},
{
"skillid": 30109,
"skilltyp": 1,
"skillname": "防御天赋",
"skilltxt": "这是防御天赋的描述tips",
"skillicon": "jn_dzj_0020",
"hp": -1,
"atk": 1500,
"def": -1,
"crt": -1,
"speed": -1
},
{
"skillid": 30110,
"skilltyp": 1,
"skillname": "防御天赋",
"skilltxt": "这是防御天赋的描述tips",
"skillicon": "jn_dzj_0021",
"hp": -1,
"atk": 1500,
"def": -1,
"crt": -1,
"speed": -1
},
{
"skillid": 99101,
"skilltyp": 2,
"skillname": "攻速天赋",
"skilltxt": "这是攻速天赋的描述tips",
"skillicon": "jn_icon_027",
"hp": -1,
"atk": -1,
"def": -1,
"crt": -1,
"speed": 3000
},
{
"skillid": 99102,
"skilltyp": 2,
"skillname": "攻速天赋",
"skilltxt": "这是攻速天赋的描述tips",
"skillicon": "jn_icon_027",
"hp": -1,
"atk": -1,
"def": -1,
"crt": -1,
"speed": 4000
},
{
"skillid": 99103,
"skilltyp": 2,
"skillname": "暴击天赋",
"skilltxt": "这是暴击天赋的描述tips",
"skillicon": "jn_icon_008",
"hp": -1,
"atk": -1,
"def": -1,
"crt": 10000,
"speed": -1
}
]

View File

@ -11,22 +11,24 @@ import (
)
const (
new_hero = "game_hero.json" //英雄
hero_stargrow = "game_herostargrow.json" //英雄品质系数
hero_levelgrow = "game_herolevelgrow.json" //英雄成长系数
hero_starup = "game_herostarup.json" // 升星
hero_levelup = "game_herolevelup.json" //英雄等级基础属性
hero_exp = "game_heroexp.json" // 升级
hero_skillup = "game_heroskilllevel.json" // 英雄技能升级
game_skillatk = "game_skillatk.json" // 英雄技能
hero_resonance = "game_heroresonance.json" // 英雄共鸣
hero_comatn = "game_comatn.json" // 英雄共鸣重置
hero_awaken = "game_heroawaken.json" // 英雄觉醒
hero_drawcard = "game_drawcard.json" // 抽卡
hero_drawupdraw = "game_drawupdraw.json" // 抽卡概率调整
hero_drawcost = "game_drawcost.json" // 抽卡消耗
hero_fusion = "game_herofusion.json" // 卡牌融合
hero_starupsp = "game_herostarupsp.json" // 精灵升星
new_hero = "game_hero.json" //英雄
hero_stargrow = "game_herostargrow.json" //英雄品质系数
hero_levelgrow = "game_herolevelgrow.json" //英雄成长系数
hero_starup = "game_herostarup.json" // 升星
hero_levelup = "game_herolevelup.json" //英雄等级基础属性
hero_exp = "game_heroexp.json" // 升级
hero_skillup = "game_heroskilllevel.json" // 英雄技能升级
game_skillatk = "game_skillatk.json" // 英雄技能
hero_resonance = "game_heroresonance.json" // 英雄共鸣
hero_comatn = "game_comatn.json" // 英雄共鸣重置
hero_awaken = "game_heroawaken.json" // 英雄觉醒
hero_drawcard = "game_drawcard.json" // 抽卡
hero_drawupdraw = "game_drawupdraw.json" // 抽卡概率调整
hero_drawcost = "game_drawcost.json" // 抽卡消耗
hero_fusion = "game_herofusion.json" // 卡牌融合
hero_starupsp = "game_herostarupsp.json" // 精灵升星
hero_talentskill = "game_talentskill.json" // 天赋
hero_talent = "game_herotalent.json" // 天赋详细数据
)
///配置管理组件
@ -46,17 +48,19 @@ func (this *configureComp) Init(service core.IService, module core.IModule, comp
err = this.MCompConfigure.Init(service, module, comp, options)
this.module = module.(*Hero)
err = this.LoadMultiConfigure(map[string]interface{}{
new_hero: cfg.NewGameHero,
hero_stargrow: cfg.NewGameHeroStargrow,
hero_levelgrow: cfg.NewGameHeroLevelgrow,
hero_levelup: cfg.NewGameHeroLevelup,
hero_exp: cfg.NewGameHeroExp,
hero_skillup: cfg.NewGameHeroSkillLevel,
game_skillatk: cfg.NewGameSkillAtk,
hero_comatn: cfg.NewGameComAtn,
hero_drawcard: cfg.NewGameDrawCard,
hero_fusion: cfg.NewGameHerofusion,
hero_starupsp: cfg.NewGameHeroStarupSp,
new_hero: cfg.NewGameHero,
hero_stargrow: cfg.NewGameHeroStargrow,
hero_levelgrow: cfg.NewGameHeroLevelgrow,
hero_levelup: cfg.NewGameHeroLevelup,
hero_exp: cfg.NewGameHeroExp,
hero_skillup: cfg.NewGameHeroSkillLevel,
game_skillatk: cfg.NewGameSkillAtk,
hero_comatn: cfg.NewGameComAtn,
hero_drawcard: cfg.NewGameDrawCard,
hero_fusion: cfg.NewGameHerofusion,
hero_starupsp: cfg.NewGameHeroStarupSp,
hero_talentskill: cfg.NewGameTalentSkill,
hero_talent: cfg.NewGameHeroTalent,
})
this.drawCardCfg = make(map[string]map[int32][]*cfg.GameDrawCardData, 0)
@ -416,3 +420,17 @@ func (this *configureComp) GetHeroSpriteStar(cid string) (hid string) {
}
return
}
func (this *configureComp) GetHeroTalent(id int32) (data *cfg.GameHeroTalentData) {
if v, err := this.GetConfigure(hero_talent); err == nil {
if configure, ok := v.(*cfg.GameHeroTalent); !ok {
err = fmt.Errorf("%T no is *cfg.GameHerofusionData", v)
return
} else {
data = configure.Get(id)
}
} else {
err = fmt.Errorf("%T no is *cfg.GameHerofusionData", v)
}
return
}

View File

@ -0,0 +1,42 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
type GameHeroTalent struct {
_dataMap map[int32]*GameHeroTalentData
_dataList []*GameHeroTalentData
}
func NewGameHeroTalent(_buf []map[string]interface{}) (*GameHeroTalent, error) {
_dataList := make([]*GameHeroTalentData, 0, len(_buf))
dataMap := make(map[int32]*GameHeroTalentData)
for _, _ele_ := range _buf {
if _v, err2 := DeserializeGameHeroTalentData(_ele_); err2 != nil {
return nil, err2
} else {
_dataList = append(_dataList, _v)
dataMap[_v.Id] = _v
}
}
return &GameHeroTalent{_dataList:_dataList, _dataMap:dataMap}, nil
}
func (table *GameHeroTalent) GetDataMap() map[int32]*GameHeroTalentData {
return table._dataMap
}
func (table *GameHeroTalent) GetDataList() []*GameHeroTalentData {
return table._dataList
}
func (table *GameHeroTalent) Get(key int32) *GameHeroTalentData {
return table._dataMap[key]
}

View File

@ -0,0 +1,97 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
import "errors"
type GameHeroTalentData struct {
Id int32
Type []int32
Talentid int32
Before []int32
Thing []*Gameatn
Position []int32
}
const TypeId_GameHeroTalentData = 1749022668
func (*GameHeroTalentData) GetTypeId() int32 {
return 1749022668
}
func (_v *GameHeroTalentData)Deserialize(_buf map[string]interface{}) (err error) {
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["id"].(float64); !_ok_ { err = errors.New("id error"); return }; _v.Id = int32(_tempNum_) }
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["type"].([]interface{}); !_ok_ { err = errors.New("type error"); return }
_v.Type = make([]int32, 0, len(_arr_))
for _, _e_ := range _arr_ {
var _list_v_ int32
{ var _ok_ bool; var _x_ float64; if _x_, _ok_ = _e_.(float64); !_ok_ { err = errors.New("_list_v_ error"); return }; _list_v_ = int32(_x_) }
_v.Type = append(_v.Type, _list_v_)
}
}
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["talentid"].(float64); !_ok_ { err = errors.New("talentid error"); return }; _v.Talentid = int32(_tempNum_) }
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["before"].([]interface{}); !_ok_ { err = errors.New("before error"); return }
_v.Before = make([]int32, 0, len(_arr_))
for _, _e_ := range _arr_ {
var _list_v_ int32
{ var _ok_ bool; var _x_ float64; if _x_, _ok_ = _e_.(float64); !_ok_ { err = errors.New("_list_v_ error"); return }; _list_v_ = int32(_x_) }
_v.Before = append(_v.Before, _list_v_)
}
}
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["thing"].([]interface{}); !_ok_ { err = errors.New("thing error"); return }
_v.Thing = make([]*Gameatn, 0, len(_arr_))
for _, _e_ := range _arr_ {
var _list_v_ *Gameatn
{ var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _e_.(map[string]interface{}); !_ok_ { err = errors.New("_list_v_ error"); return }; if _list_v_, err = DeserializeGameatn(_x_); err != nil { return } }
_v.Thing = append(_v.Thing, _list_v_)
}
}
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["position"].([]interface{}); !_ok_ { err = errors.New("position error"); return }
_v.Position = make([]int32, 0, len(_arr_))
for _, _e_ := range _arr_ {
var _list_v_ int32
{ var _ok_ bool; var _x_ float64; if _x_, _ok_ = _e_.(float64); !_ok_ { err = errors.New("_list_v_ error"); return }; _list_v_ = int32(_x_) }
_v.Position = append(_v.Position, _list_v_)
}
}
return
}
func DeserializeGameHeroTalentData(_buf map[string]interface{}) (*GameHeroTalentData, error) {
v := &GameHeroTalentData{}
if err := v.Deserialize(_buf); err == nil {
return v, nil
} else {
return nil, err
}
}

View File

@ -0,0 +1,42 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
type GameTalentSkill struct {
_dataMap map[int32]*GameTalentSkillData
_dataList []*GameTalentSkillData
}
func NewGameTalentSkill(_buf []map[string]interface{}) (*GameTalentSkill, error) {
_dataList := make([]*GameTalentSkillData, 0, len(_buf))
dataMap := make(map[int32]*GameTalentSkillData)
for _, _ele_ := range _buf {
if _v, err2 := DeserializeGameTalentSkillData(_ele_); err2 != nil {
return nil, err2
} else {
_dataList = append(_dataList, _v)
dataMap[_v.Skillid] = _v
}
}
return &GameTalentSkill{_dataList:_dataList, _dataMap:dataMap}, nil
}
func (table *GameTalentSkill) GetDataMap() map[int32]*GameTalentSkillData {
return table._dataMap
}
func (table *GameTalentSkill) GetDataList() []*GameTalentSkillData {
return table._dataList
}
func (table *GameTalentSkill) Get(key int32) *GameTalentSkillData {
return table._dataMap[key]
}

View File

@ -0,0 +1,53 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
import "errors"
type GameTalentSkillData struct {
Skillid int32
Skilltyp int32
Skillname string
Skilltxt string
Skillicon string
Hp int32
Atk int32
Def int32
Crt int32
Speed int32
}
const TypeId_GameTalentSkillData = -1949022189
func (*GameTalentSkillData) GetTypeId() int32 {
return -1949022189
}
func (_v *GameTalentSkillData)Deserialize(_buf map[string]interface{}) (err error) {
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["skillid"].(float64); !_ok_ { err = errors.New("skillid error"); return }; _v.Skillid = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["skilltyp"].(float64); !_ok_ { err = errors.New("skilltyp error"); return }; _v.Skilltyp = int32(_tempNum_) }
{ var _ok_ bool; if _v.Skillname, _ok_ = _buf["skillname"].(string); !_ok_ { err = errors.New("skillname error"); return } }
{ var _ok_ bool; if _v.Skilltxt, _ok_ = _buf["skilltxt"].(string); !_ok_ { err = errors.New("skilltxt error"); return } }
{ var _ok_ bool; if _v.Skillicon, _ok_ = _buf["skillicon"].(string); !_ok_ { err = errors.New("skillicon error"); return } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["hp"].(float64); !_ok_ { err = errors.New("hp error"); return }; _v.Hp = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["atk"].(float64); !_ok_ { err = errors.New("atk error"); return }; _v.Atk = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["def"].(float64); !_ok_ { err = errors.New("def error"); return }; _v.Def = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["crt"].(float64); !_ok_ { err = errors.New("crt error"); return }; _v.Crt = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["speed"].(float64); !_ok_ { err = errors.New("speed error"); return }; _v.Speed = int32(_tempNum_) }
return
}
func DeserializeGameTalentSkillData(_buf map[string]interface{}) (*GameTalentSkillData, error) {
v := &GameTalentSkillData{}
if err := v.Deserialize(_buf); err == nil {
return v, nil
} else {
return nil, err
}
}

File diff suppressed because it is too large Load Diff