天赋配置调整 新增解锁技能需求
This commit is contained in:
parent
44c8a89e2b
commit
6ccc98d308
@ -1,12 +1,26 @@
|
|||||||
[
|
[
|
||||||
{
|
{
|
||||||
"id": 1,
|
"skillid": 40101,
|
||||||
"type": 1,
|
"hid": "25001",
|
||||||
"typeline": 1,
|
"skilltyp": 0,
|
||||||
"talentid": 40101,
|
|
||||||
"before": [
|
"before": [
|
||||||
0
|
0
|
||||||
],
|
],
|
||||||
|
"skillname": {
|
||||||
|
"key": "hppower",
|
||||||
|
"text": "生命核心"
|
||||||
|
},
|
||||||
|
"skilltxt": {
|
||||||
|
"key": "Life increased by 1.6%",
|
||||||
|
"text": "这是生命天赋的描述tips"
|
||||||
|
},
|
||||||
|
"skillicon": "js_jx_img_icon03",
|
||||||
|
"hp": 16,
|
||||||
|
"atk": -1,
|
||||||
|
"def": -1,
|
||||||
|
"cri": -1,
|
||||||
|
"speed": -1,
|
||||||
|
"skill": 0,
|
||||||
"thing": [
|
"thing": [
|
||||||
{
|
{
|
||||||
"a": "attr",
|
"a": "attr",
|
||||||
@ -22,13 +36,27 @@
|
|||||||
"point": 20
|
"point": 20
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": 2,
|
"skillid": 40102,
|
||||||
"type": 0,
|
"hid": "25001",
|
||||||
"typeline": 1,
|
"skilltyp": 0,
|
||||||
"talentid": 10101,
|
|
||||||
"before": [
|
"before": [
|
||||||
1
|
40101
|
||||||
],
|
],
|
||||||
|
"skillname": {
|
||||||
|
"key": "atkpower",
|
||||||
|
"text": "攻击核心"
|
||||||
|
},
|
||||||
|
"skilltxt": {
|
||||||
|
"key": "Attack increased by 1.0%",
|
||||||
|
"text": "这是攻击天赋的描述tips"
|
||||||
|
},
|
||||||
|
"skillicon": "js_jx_img_icon01",
|
||||||
|
"hp": -1,
|
||||||
|
"atk": 10,
|
||||||
|
"def": -1,
|
||||||
|
"cri": -1,
|
||||||
|
"speed": -1,
|
||||||
|
"skill": 0,
|
||||||
"thing": [
|
"thing": [
|
||||||
{
|
{
|
||||||
"a": "attr",
|
"a": "attr",
|
||||||
@ -39,13 +67,27 @@
|
|||||||
"point": 10
|
"point": 10
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": 3,
|
"skillid": 40103,
|
||||||
"type": 0,
|
"hid": "25001",
|
||||||
"typeline": 1,
|
"skilltyp": 0,
|
||||||
"talentid": 10102,
|
|
||||||
"before": [
|
"before": [
|
||||||
2
|
40102
|
||||||
],
|
],
|
||||||
|
"skillname": {
|
||||||
|
"key": "defpower",
|
||||||
|
"text": "防御核心"
|
||||||
|
},
|
||||||
|
"skilltxt": {
|
||||||
|
"key": "Defence increased by 1.0%",
|
||||||
|
"text": "这是防御天赋的描述tips"
|
||||||
|
},
|
||||||
|
"skillicon": "js_jx_img_icon02",
|
||||||
|
"hp": -1,
|
||||||
|
"atk": -1,
|
||||||
|
"def": 10,
|
||||||
|
"cri": -1,
|
||||||
|
"speed": -1,
|
||||||
|
"skill": 0,
|
||||||
"thing": [
|
"thing": [
|
||||||
{
|
{
|
||||||
"a": "attr",
|
"a": "attr",
|
||||||
@ -56,13 +98,27 @@
|
|||||||
"point": 10
|
"point": 10
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": 4,
|
"skillid": 10101,
|
||||||
"type": 0,
|
"hid": "25001",
|
||||||
"typeline": 1,
|
"skilltyp": 1,
|
||||||
"talentid": 10103,
|
|
||||||
"before": [
|
"before": [
|
||||||
3
|
40103
|
||||||
],
|
],
|
||||||
|
"skillname": {
|
||||||
|
"key": "hppower",
|
||||||
|
"text": "生命天赋"
|
||||||
|
},
|
||||||
|
"skilltxt": {
|
||||||
|
"key": "Life increased by 1.8%",
|
||||||
|
"text": "这是生命天赋的描述tips"
|
||||||
|
},
|
||||||
|
"skillicon": "js_jx_img_icon03",
|
||||||
|
"hp": 10,
|
||||||
|
"atk": -1,
|
||||||
|
"def": -1,
|
||||||
|
"cri": -1,
|
||||||
|
"speed": -1,
|
||||||
|
"skill": 0,
|
||||||
"thing": [
|
"thing": [
|
||||||
{
|
{
|
||||||
"a": "attr",
|
"a": "attr",
|
||||||
@ -73,13 +129,27 @@
|
|||||||
"point": 10
|
"point": 10
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": 5,
|
"skillid": 10102,
|
||||||
"type": 0,
|
"hid": "25001",
|
||||||
"typeline": 1,
|
"skilltyp": 1,
|
||||||
"talentid": 10104,
|
|
||||||
"before": [
|
"before": [
|
||||||
4
|
10101
|
||||||
],
|
],
|
||||||
|
"skillname": {
|
||||||
|
"key": "hppower",
|
||||||
|
"text": "生命天赋"
|
||||||
|
},
|
||||||
|
"skilltxt": {
|
||||||
|
"key": "Life increased by 1.8%",
|
||||||
|
"text": "这是生命天赋的描述tips"
|
||||||
|
},
|
||||||
|
"skillicon": "js_jx_img_icon03",
|
||||||
|
"hp": 10,
|
||||||
|
"atk": -1,
|
||||||
|
"def": -1,
|
||||||
|
"cri": -1,
|
||||||
|
"speed": -1,
|
||||||
|
"skill": 0,
|
||||||
"thing": [
|
"thing": [
|
||||||
{
|
{
|
||||||
"a": "attr",
|
"a": "attr",
|
||||||
@ -90,13 +160,27 @@
|
|||||||
"point": 10
|
"point": 10
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": 6,
|
"skillid": 10103,
|
||||||
"type": 0,
|
"hid": "25001",
|
||||||
"typeline": 1,
|
"skilltyp": 1,
|
||||||
"talentid": 10105,
|
|
||||||
"before": [
|
"before": [
|
||||||
5
|
10102
|
||||||
],
|
],
|
||||||
|
"skillname": {
|
||||||
|
"key": "hppower",
|
||||||
|
"text": "生命天赋"
|
||||||
|
},
|
||||||
|
"skilltxt": {
|
||||||
|
"key": "Life increased by 1.8%",
|
||||||
|
"text": "这是生命天赋的描述tips"
|
||||||
|
},
|
||||||
|
"skillicon": "js_jx_img_icon03",
|
||||||
|
"hp": 18,
|
||||||
|
"atk": -1,
|
||||||
|
"def": -1,
|
||||||
|
"cri": -1,
|
||||||
|
"speed": -1,
|
||||||
|
"skill": 0,
|
||||||
"thing": [
|
"thing": [
|
||||||
{
|
{
|
||||||
"a": "attr",
|
"a": "attr",
|
||||||
@ -107,13 +191,27 @@
|
|||||||
"point": 10
|
"point": 10
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": 7,
|
"skillid": 10104,
|
||||||
"type": 0,
|
"hid": "25001",
|
||||||
"typeline": 1,
|
"skilltyp": 1,
|
||||||
"talentid": 10106,
|
|
||||||
"before": [
|
"before": [
|
||||||
6
|
10103
|
||||||
],
|
],
|
||||||
|
"skillname": {
|
||||||
|
"key": "hppower",
|
||||||
|
"text": "生命天赋"
|
||||||
|
},
|
||||||
|
"skilltxt": {
|
||||||
|
"key": "Life increased by 1.8%",
|
||||||
|
"text": "这是生命天赋的描述tips"
|
||||||
|
},
|
||||||
|
"skillicon": "js_jx_img_icon03",
|
||||||
|
"hp": 18,
|
||||||
|
"atk": -1,
|
||||||
|
"def": -1,
|
||||||
|
"cri": -1,
|
||||||
|
"speed": -1,
|
||||||
|
"skill": 0,
|
||||||
"thing": [
|
"thing": [
|
||||||
{
|
{
|
||||||
"a": "attr",
|
"a": "attr",
|
||||||
@ -124,13 +222,27 @@
|
|||||||
"point": 10
|
"point": 10
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": 8,
|
"skillid": 10105,
|
||||||
"type": 1,
|
"hid": "25001",
|
||||||
"typeline": 2,
|
"skilltyp": 1,
|
||||||
"talentid": 40102,
|
|
||||||
"before": [
|
"before": [
|
||||||
0
|
10104
|
||||||
],
|
],
|
||||||
|
"skillname": {
|
||||||
|
"key": "hppower",
|
||||||
|
"text": "生命天赋"
|
||||||
|
},
|
||||||
|
"skilltxt": {
|
||||||
|
"key": "Life increased by 1.8%",
|
||||||
|
"text": "这是生命天赋的描述tips"
|
||||||
|
},
|
||||||
|
"skillicon": "js_jx_img_icon03",
|
||||||
|
"hp": 18,
|
||||||
|
"atk": -1,
|
||||||
|
"def": -1,
|
||||||
|
"cri": -1,
|
||||||
|
"speed": -1,
|
||||||
|
"skill": 0,
|
||||||
"thing": [
|
"thing": [
|
||||||
{
|
{
|
||||||
"a": "attr",
|
"a": "attr",
|
||||||
@ -146,13 +258,27 @@
|
|||||||
"point": 20
|
"point": 20
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": 9,
|
"skillid": 10106,
|
||||||
"type": 0,
|
"hid": "25001",
|
||||||
"typeline": 2,
|
"skilltyp": 1,
|
||||||
"talentid": 20101,
|
|
||||||
"before": [
|
"before": [
|
||||||
8
|
10105
|
||||||
],
|
],
|
||||||
|
"skillname": {
|
||||||
|
"key": "hppower",
|
||||||
|
"text": "生命天赋"
|
||||||
|
},
|
||||||
|
"skilltxt": {
|
||||||
|
"key": "Life increased by 1.8%",
|
||||||
|
"text": "这是生命天赋的描述tips"
|
||||||
|
},
|
||||||
|
"skillicon": "js_jx_img_icon03",
|
||||||
|
"hp": 18,
|
||||||
|
"atk": -1,
|
||||||
|
"def": -1,
|
||||||
|
"cri": -1,
|
||||||
|
"speed": -1,
|
||||||
|
"skill": 0,
|
||||||
"thing": [
|
"thing": [
|
||||||
{
|
{
|
||||||
"a": "attr",
|
"a": "attr",
|
||||||
@ -163,13 +289,27 @@
|
|||||||
"point": 10
|
"point": 10
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": 10,
|
"skillid": 20101,
|
||||||
"type": 0,
|
"hid": "25001",
|
||||||
"typeline": 2,
|
"skilltyp": 1,
|
||||||
"talentid": 20102,
|
|
||||||
"before": [
|
"before": [
|
||||||
9
|
10106
|
||||||
],
|
],
|
||||||
|
"skillname": {
|
||||||
|
"key": "atkpower",
|
||||||
|
"text": "攻击天赋"
|
||||||
|
},
|
||||||
|
"skilltxt": {
|
||||||
|
"key": "Attack increased by 1.5%",
|
||||||
|
"text": "这是攻击天赋的描述tips"
|
||||||
|
},
|
||||||
|
"skillicon": "js_jx_img_icon01",
|
||||||
|
"hp": -1,
|
||||||
|
"atk": -1,
|
||||||
|
"def": 10,
|
||||||
|
"cri": -1,
|
||||||
|
"speed": -1,
|
||||||
|
"skill": 0,
|
||||||
"thing": [
|
"thing": [
|
||||||
{
|
{
|
||||||
"a": "attr",
|
"a": "attr",
|
||||||
@ -180,13 +320,27 @@
|
|||||||
"point": 10
|
"point": 10
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": 11,
|
"skillid": 20102,
|
||||||
"type": 0,
|
"hid": "25001",
|
||||||
"typeline": 2,
|
"skilltyp": 1,
|
||||||
"talentid": 20103,
|
|
||||||
"before": [
|
"before": [
|
||||||
10
|
20101
|
||||||
],
|
],
|
||||||
|
"skillname": {
|
||||||
|
"key": "atkpower",
|
||||||
|
"text": "攻击天赋"
|
||||||
|
},
|
||||||
|
"skilltxt": {
|
||||||
|
"key": "Attack increased by 1.5%",
|
||||||
|
"text": "这是攻击天赋的描述tips"
|
||||||
|
},
|
||||||
|
"skillicon": "js_jx_img_icon01",
|
||||||
|
"hp": -1,
|
||||||
|
"atk": -1,
|
||||||
|
"def": 10,
|
||||||
|
"cri": -1,
|
||||||
|
"speed": -1,
|
||||||
|
"skill": 0,
|
||||||
"thing": [
|
"thing": [
|
||||||
{
|
{
|
||||||
"a": "attr",
|
"a": "attr",
|
||||||
@ -197,13 +351,27 @@
|
|||||||
"point": 10
|
"point": 10
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": 12,
|
"skillid": 20103,
|
||||||
"type": 0,
|
"hid": "25001",
|
||||||
"typeline": 2,
|
"skilltyp": 1,
|
||||||
"talentid": 20104,
|
|
||||||
"before": [
|
"before": [
|
||||||
11
|
20102
|
||||||
],
|
],
|
||||||
|
"skillname": {
|
||||||
|
"key": "atkpower",
|
||||||
|
"text": "攻击天赋"
|
||||||
|
},
|
||||||
|
"skilltxt": {
|
||||||
|
"key": "Attack increased by 1.5%",
|
||||||
|
"text": "这是攻击天赋的描述tips"
|
||||||
|
},
|
||||||
|
"skillicon": "js_jx_img_icon01",
|
||||||
|
"hp": -1,
|
||||||
|
"atk": -1,
|
||||||
|
"def": 15,
|
||||||
|
"cri": -1,
|
||||||
|
"speed": -1,
|
||||||
|
"skill": 0,
|
||||||
"thing": [
|
"thing": [
|
||||||
{
|
{
|
||||||
"a": "attr",
|
"a": "attr",
|
||||||
@ -214,13 +382,27 @@
|
|||||||
"point": 10
|
"point": 10
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": 13,
|
"skillid": 20104,
|
||||||
"type": 0,
|
"hid": "25001",
|
||||||
"typeline": 2,
|
"skilltyp": 1,
|
||||||
"talentid": 20105,
|
|
||||||
"before": [
|
"before": [
|
||||||
12
|
20103
|
||||||
],
|
],
|
||||||
|
"skillname": {
|
||||||
|
"key": "atkpower",
|
||||||
|
"text": "攻击天赋"
|
||||||
|
},
|
||||||
|
"skilltxt": {
|
||||||
|
"key": "Attack increased by 1.5%",
|
||||||
|
"text": "这是攻击天赋的描述tips"
|
||||||
|
},
|
||||||
|
"skillicon": "js_jx_img_icon01",
|
||||||
|
"hp": -1,
|
||||||
|
"atk": -1,
|
||||||
|
"def": 15,
|
||||||
|
"cri": -1,
|
||||||
|
"speed": -1,
|
||||||
|
"skill": 0,
|
||||||
"thing": [
|
"thing": [
|
||||||
{
|
{
|
||||||
"a": "attr",
|
"a": "attr",
|
||||||
@ -231,13 +413,27 @@
|
|||||||
"point": 10
|
"point": 10
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": 14,
|
"skillid": 20105,
|
||||||
"type": 0,
|
"hid": "25001",
|
||||||
"typeline": 2,
|
"skilltyp": 1,
|
||||||
"talentid": 20106,
|
|
||||||
"before": [
|
"before": [
|
||||||
13
|
20104
|
||||||
],
|
],
|
||||||
|
"skillname": {
|
||||||
|
"key": "atkpower",
|
||||||
|
"text": "攻击天赋"
|
||||||
|
},
|
||||||
|
"skilltxt": {
|
||||||
|
"key": "Attack increased by 1.5%",
|
||||||
|
"text": "这是攻击天赋的描述tips"
|
||||||
|
},
|
||||||
|
"skillicon": "js_jx_img_icon01",
|
||||||
|
"hp": -1,
|
||||||
|
"atk": -1,
|
||||||
|
"def": 15,
|
||||||
|
"cri": -1,
|
||||||
|
"speed": -1,
|
||||||
|
"skill": 0,
|
||||||
"thing": [
|
"thing": [
|
||||||
{
|
{
|
||||||
"a": "attr",
|
"a": "attr",
|
||||||
@ -248,13 +444,27 @@
|
|||||||
"point": 10
|
"point": 10
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": 15,
|
"skillid": 20106,
|
||||||
"type": 1,
|
"hid": "25001",
|
||||||
"typeline": 3,
|
"skilltyp": 1,
|
||||||
"talentid": 40103,
|
|
||||||
"before": [
|
"before": [
|
||||||
0
|
20105
|
||||||
],
|
],
|
||||||
|
"skillname": {
|
||||||
|
"key": "atkpower",
|
||||||
|
"text": "攻击天赋"
|
||||||
|
},
|
||||||
|
"skilltxt": {
|
||||||
|
"key": "Attack increased by 1.5%",
|
||||||
|
"text": "这是攻击天赋的描述tips"
|
||||||
|
},
|
||||||
|
"skillicon": "js_jx_img_icon01",
|
||||||
|
"hp": -1,
|
||||||
|
"atk": -1,
|
||||||
|
"def": 15,
|
||||||
|
"cri": -1,
|
||||||
|
"speed": -1,
|
||||||
|
"skill": 0,
|
||||||
"thing": [
|
"thing": [
|
||||||
{
|
{
|
||||||
"a": "attr",
|
"a": "attr",
|
||||||
@ -270,13 +480,27 @@
|
|||||||
"point": 20
|
"point": 20
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": 16,
|
"skillid": 30101,
|
||||||
"type": 0,
|
"hid": "25001",
|
||||||
"typeline": 3,
|
"skilltyp": 1,
|
||||||
"talentid": 30101,
|
|
||||||
"before": [
|
"before": [
|
||||||
15
|
20106
|
||||||
],
|
],
|
||||||
|
"skillname": {
|
||||||
|
"key": "defpower",
|
||||||
|
"text": "防御天赋"
|
||||||
|
},
|
||||||
|
"skilltxt": {
|
||||||
|
"key": "Defence increased by 1.5%",
|
||||||
|
"text": "这是防御天赋的描述tips"
|
||||||
|
},
|
||||||
|
"skillicon": "js_jx_img_icon02",
|
||||||
|
"hp": -1,
|
||||||
|
"atk": 10,
|
||||||
|
"def": -1,
|
||||||
|
"cri": -1,
|
||||||
|
"speed": -1,
|
||||||
|
"skill": 0,
|
||||||
"thing": [
|
"thing": [
|
||||||
{
|
{
|
||||||
"a": "attr",
|
"a": "attr",
|
||||||
@ -287,13 +511,27 @@
|
|||||||
"point": 10
|
"point": 10
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": 17,
|
"skillid": 30102,
|
||||||
"type": 0,
|
"hid": "25001",
|
||||||
"typeline": 3,
|
"skilltyp": 1,
|
||||||
"talentid": 30102,
|
|
||||||
"before": [
|
"before": [
|
||||||
16
|
30101
|
||||||
],
|
],
|
||||||
|
"skillname": {
|
||||||
|
"key": "defpower",
|
||||||
|
"text": "防御天赋"
|
||||||
|
},
|
||||||
|
"skilltxt": {
|
||||||
|
"key": "Defence increased by 1.5%",
|
||||||
|
"text": "这是防御天赋的描述tips"
|
||||||
|
},
|
||||||
|
"skillicon": "js_jx_img_icon02",
|
||||||
|
"hp": -1,
|
||||||
|
"atk": 10,
|
||||||
|
"def": -1,
|
||||||
|
"cri": -1,
|
||||||
|
"speed": -1,
|
||||||
|
"skill": 0,
|
||||||
"thing": [
|
"thing": [
|
||||||
{
|
{
|
||||||
"a": "attr",
|
"a": "attr",
|
||||||
@ -304,13 +542,27 @@
|
|||||||
"point": 10
|
"point": 10
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": 18,
|
"skillid": 30103,
|
||||||
"type": 0,
|
"hid": "25001",
|
||||||
"typeline": 3,
|
"skilltyp": 1,
|
||||||
"talentid": 30103,
|
|
||||||
"before": [
|
"before": [
|
||||||
17
|
30102
|
||||||
],
|
],
|
||||||
|
"skillname": {
|
||||||
|
"key": "defpower",
|
||||||
|
"text": "防御天赋"
|
||||||
|
},
|
||||||
|
"skilltxt": {
|
||||||
|
"key": "Defence increased by 1.5%",
|
||||||
|
"text": "这是防御天赋的描述tips"
|
||||||
|
},
|
||||||
|
"skillicon": "js_jx_img_icon02",
|
||||||
|
"hp": -1,
|
||||||
|
"atk": 15,
|
||||||
|
"def": -1,
|
||||||
|
"cri": -1,
|
||||||
|
"speed": -1,
|
||||||
|
"skill": 0,
|
||||||
"thing": [
|
"thing": [
|
||||||
{
|
{
|
||||||
"a": "attr",
|
"a": "attr",
|
||||||
@ -321,13 +573,27 @@
|
|||||||
"point": 10
|
"point": 10
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": 19,
|
"skillid": 30104,
|
||||||
"type": 0,
|
"hid": "25001",
|
||||||
"typeline": 3,
|
"skilltyp": 1,
|
||||||
"talentid": 30104,
|
|
||||||
"before": [
|
"before": [
|
||||||
18
|
30103
|
||||||
],
|
],
|
||||||
|
"skillname": {
|
||||||
|
"key": "defpower",
|
||||||
|
"text": "防御天赋"
|
||||||
|
},
|
||||||
|
"skilltxt": {
|
||||||
|
"key": "Defence increased by 1.5%",
|
||||||
|
"text": "这是防御天赋的描述tips"
|
||||||
|
},
|
||||||
|
"skillicon": "js_jx_img_icon02",
|
||||||
|
"hp": -1,
|
||||||
|
"atk": 15,
|
||||||
|
"def": -1,
|
||||||
|
"cri": -1,
|
||||||
|
"speed": -1,
|
||||||
|
"skill": 0,
|
||||||
"thing": [
|
"thing": [
|
||||||
{
|
{
|
||||||
"a": "attr",
|
"a": "attr",
|
||||||
@ -338,13 +604,27 @@
|
|||||||
"point": 10
|
"point": 10
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": 20,
|
"skillid": 30105,
|
||||||
"type": 0,
|
"hid": "25001",
|
||||||
"typeline": 3,
|
"skilltyp": 1,
|
||||||
"talentid": 30105,
|
|
||||||
"before": [
|
"before": [
|
||||||
19
|
30104
|
||||||
],
|
],
|
||||||
|
"skillname": {
|
||||||
|
"key": "defpower",
|
||||||
|
"text": "防御天赋"
|
||||||
|
},
|
||||||
|
"skilltxt": {
|
||||||
|
"key": "Defence increased by 1.5%",
|
||||||
|
"text": "这是防御天赋的描述tips"
|
||||||
|
},
|
||||||
|
"skillicon": "js_jx_img_icon02",
|
||||||
|
"hp": -1,
|
||||||
|
"atk": 15,
|
||||||
|
"def": -1,
|
||||||
|
"cri": -1,
|
||||||
|
"speed": -1,
|
||||||
|
"skill": 0,
|
||||||
"thing": [
|
"thing": [
|
||||||
{
|
{
|
||||||
"a": "attr",
|
"a": "attr",
|
||||||
@ -355,13 +635,120 @@
|
|||||||
"point": 10
|
"point": 10
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": 21,
|
"skillid": 30106,
|
||||||
"type": 0,
|
"hid": "25001",
|
||||||
"typeline": 3,
|
"skilltyp": 1,
|
||||||
"talentid": 30106,
|
|
||||||
"before": [
|
"before": [
|
||||||
20
|
30105
|
||||||
],
|
],
|
||||||
|
"skillname": {
|
||||||
|
"key": "defpower",
|
||||||
|
"text": "防御天赋"
|
||||||
|
},
|
||||||
|
"skilltxt": {
|
||||||
|
"key": "Defence increased by 1.5%",
|
||||||
|
"text": "这是防御天赋的描述tips"
|
||||||
|
},
|
||||||
|
"skillicon": "js_jx_img_icon02",
|
||||||
|
"hp": -1,
|
||||||
|
"atk": 15,
|
||||||
|
"def": -1,
|
||||||
|
"cri": -1,
|
||||||
|
"speed": -1,
|
||||||
|
"skill": 0,
|
||||||
|
"thing": [
|
||||||
|
{
|
||||||
|
"a": "attr",
|
||||||
|
"t": "gold",
|
||||||
|
"n": 15000
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"point": 10
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"skillid": 99101,
|
||||||
|
"hid": "25001",
|
||||||
|
"skilltyp": 2,
|
||||||
|
"before": [
|
||||||
|
30106
|
||||||
|
],
|
||||||
|
"skillname": {
|
||||||
|
"key": "Attackspeed",
|
||||||
|
"text": "攻速天赋"
|
||||||
|
},
|
||||||
|
"skilltxt": {
|
||||||
|
"key": "Attack speed increased by 3%",
|
||||||
|
"text": "这是攻速天赋的描述tips"
|
||||||
|
},
|
||||||
|
"skillicon": "js_jx_img_icon04",
|
||||||
|
"hp": -1,
|
||||||
|
"atk": -1,
|
||||||
|
"def": -1,
|
||||||
|
"cri": -1,
|
||||||
|
"speed": 30,
|
||||||
|
"skill": 0,
|
||||||
|
"thing": [
|
||||||
|
{
|
||||||
|
"a": "attr",
|
||||||
|
"t": "gold",
|
||||||
|
"n": 15000
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"point": 10
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"skillid": 99102,
|
||||||
|
"hid": "25001",
|
||||||
|
"skilltyp": 2,
|
||||||
|
"before": [
|
||||||
|
99101
|
||||||
|
],
|
||||||
|
"skillname": {
|
||||||
|
"key": "Attackspeed",
|
||||||
|
"text": "攻速天赋"
|
||||||
|
},
|
||||||
|
"skilltxt": {
|
||||||
|
"key": "Attack speed increased by 4%",
|
||||||
|
"text": "这是攻速天赋的描述tips"
|
||||||
|
},
|
||||||
|
"skillicon": "js_jx_img_icon04",
|
||||||
|
"hp": -1,
|
||||||
|
"atk": -1,
|
||||||
|
"def": -1,
|
||||||
|
"cri": -1,
|
||||||
|
"speed": 30,
|
||||||
|
"skill": 0,
|
||||||
|
"thing": [
|
||||||
|
{
|
||||||
|
"a": "attr",
|
||||||
|
"t": "gold",
|
||||||
|
"n": 15000
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"point": 10
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"skillid": 99103,
|
||||||
|
"hid": "25001",
|
||||||
|
"skilltyp": 2,
|
||||||
|
"before": [
|
||||||
|
99102
|
||||||
|
],
|
||||||
|
"skillname": {
|
||||||
|
"key": "Criticalstrike",
|
||||||
|
"text": "暴击天赋"
|
||||||
|
},
|
||||||
|
"skilltxt": {
|
||||||
|
"key": "Critical hit increased by 10%",
|
||||||
|
"text": "这是暴击天赋的描述tips"
|
||||||
|
},
|
||||||
|
"skillicon": "js_jx_img_icon05",
|
||||||
|
"hp": -1,
|
||||||
|
"atk": -1,
|
||||||
|
"def": -1,
|
||||||
|
"cri": 100,
|
||||||
|
"speed": -1,
|
||||||
|
"skill": 0,
|
||||||
"thing": [
|
"thing": [
|
||||||
{
|
{
|
||||||
"a": "attr",
|
"a": "attr",
|
||||||
|
286
bin/json/game_talentbox.json
Normal file
286
bin/json/game_talentbox.json
Normal file
@ -0,0 +1,286 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"heroid": "13001",
|
||||||
|
"itemid": "513001"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "13002",
|
||||||
|
"itemid": "513002"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "13003",
|
||||||
|
"itemid": "513003"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "13004",
|
||||||
|
"itemid": "513004"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "13005",
|
||||||
|
"itemid": "513005"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "14001",
|
||||||
|
"itemid": "514001"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "14002",
|
||||||
|
"itemid": "514002"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "14003",
|
||||||
|
"itemid": "514003"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "14004",
|
||||||
|
"itemid": "514004"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "14005",
|
||||||
|
"itemid": "514005"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "14006",
|
||||||
|
"itemid": "514006"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "14007",
|
||||||
|
"itemid": "514007"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "15001",
|
||||||
|
"itemid": "515001"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "15002",
|
||||||
|
"itemid": "515002"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "15003",
|
||||||
|
"itemid": "515003"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "15004",
|
||||||
|
"itemid": "515004"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "23001",
|
||||||
|
"itemid": "523001"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "23002",
|
||||||
|
"itemid": "523002"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "23003",
|
||||||
|
"itemid": "523003"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "23004",
|
||||||
|
"itemid": "523004"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "24001",
|
||||||
|
"itemid": "524001"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "24002",
|
||||||
|
"itemid": "524002"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "24003",
|
||||||
|
"itemid": "524003"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "24004",
|
||||||
|
"itemid": "524004"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "24005",
|
||||||
|
"itemid": "524005"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "24006",
|
||||||
|
"itemid": "524006"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "24007",
|
||||||
|
"itemid": "524007"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "24008",
|
||||||
|
"itemid": "524008"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "24009",
|
||||||
|
"itemid": "524009"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "25001",
|
||||||
|
"itemid": "525001"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "25002",
|
||||||
|
"itemid": "525002"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "25003",
|
||||||
|
"itemid": "525003"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "25004",
|
||||||
|
"itemid": "525004"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "33001",
|
||||||
|
"itemid": "533001"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "33002",
|
||||||
|
"itemid": "533002"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "33003",
|
||||||
|
"itemid": "533003"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "33004",
|
||||||
|
"itemid": "533004"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "33005",
|
||||||
|
"itemid": "533005"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "33006",
|
||||||
|
"itemid": "533006"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "34001",
|
||||||
|
"itemid": "534001"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "34002",
|
||||||
|
"itemid": "534002"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "34003",
|
||||||
|
"itemid": "534003"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "34004",
|
||||||
|
"itemid": "534004"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "34005",
|
||||||
|
"itemid": "534005"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "34006",
|
||||||
|
"itemid": "534006"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "34007",
|
||||||
|
"itemid": "534007"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "34008",
|
||||||
|
"itemid": "534008"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "35001",
|
||||||
|
"itemid": "535001"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "35002",
|
||||||
|
"itemid": "535002"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "35003",
|
||||||
|
"itemid": "535003"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "35004",
|
||||||
|
"itemid": "535004"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "35005",
|
||||||
|
"itemid": "535005"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "35006",
|
||||||
|
"itemid": "535006"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "43001",
|
||||||
|
"itemid": "543001"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "43002",
|
||||||
|
"itemid": "543002"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "43003",
|
||||||
|
"itemid": "543003"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "43004",
|
||||||
|
"itemid": "543004"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "43005",
|
||||||
|
"itemid": "543005"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "43006",
|
||||||
|
"itemid": "543006"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "43007",
|
||||||
|
"itemid": "543007"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "44001",
|
||||||
|
"itemid": "544001"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "44002",
|
||||||
|
"itemid": "544002"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "44003",
|
||||||
|
"itemid": "544003"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "44004",
|
||||||
|
"itemid": "544004"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "44006",
|
||||||
|
"itemid": "544006"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "45001",
|
||||||
|
"itemid": "545001"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "45002",
|
||||||
|
"itemid": "545002"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "45003",
|
||||||
|
"itemid": "545003"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "45004",
|
||||||
|
"itemid": "545004"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "44005",
|
||||||
|
"itemid": "544005"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"heroid": "15005",
|
||||||
|
"itemid": "515005"
|
||||||
|
}
|
||||||
|
]
|
@ -119,17 +119,17 @@ func (this *apiComp) TalentLearn(session comm.IUserSession, req *pb.HeroTalentLe
|
|||||||
if err = this.module.modelTalent.ChangeHeroTalent(talent, update); err != nil {
|
if err = this.module.modelTalent.ChangeHeroTalent(talent, update); err != nil {
|
||||||
this.module.Errorf("update failed :%v", err)
|
this.module.Errorf("update failed :%v", err)
|
||||||
}
|
}
|
||||||
talentSkill := this.module.configure.GetHeroTalentSkill(talentConf.Talentid)
|
|
||||||
if talentSkill == nil {
|
|
||||||
code = pb.ErrorCode_ConfigNoFound
|
|
||||||
return
|
|
||||||
}
|
|
||||||
// 同步修改属性
|
// 同步修改属性
|
||||||
heroList := this.module.GetHeroList(session.GetUserId())
|
heroList := this.module.GetHeroList(session.GetUserId())
|
||||||
for _, v := range heroList {
|
for _, v := range heroList {
|
||||||
if v.HeroID == talent.HeroId { // 找到对应的英雄ID
|
if v.HeroID == talent.HeroId { // 找到对应的英雄ID
|
||||||
this.module.modelHero.setTalentProperty(v, talentSkill)
|
this.module.modelHero.setTalentProperty(v, talentConf)
|
||||||
chanegCard = append(chanegCard, v) // 添加推送属性变化信息
|
chanegCard = append(chanegCard, v) // 添加推送属性变化信息
|
||||||
|
// 天赋学技能
|
||||||
|
if talentConf.Skill != 0 {
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -27,12 +27,10 @@ const (
|
|||||||
hero_drawupdraw = "game_drawupdraw.json" // 抽卡概率调整
|
hero_drawupdraw = "game_drawupdraw.json" // 抽卡概率调整
|
||||||
hero_drawcost = "game_drawcost.json" // 抽卡消耗
|
hero_drawcost = "game_drawcost.json" // 抽卡消耗
|
||||||
hero_fusion = "game_herofusion.json" // 卡牌融合
|
hero_fusion = "game_herofusion.json" // 卡牌融合
|
||||||
//hero_starupsp = "game_herostarupsp.json" // 精灵升星
|
hero_talent = "game_herotalent.json" // 天赋详细数据
|
||||||
hero_talentskill = "game_talentskill.json" // 天赋
|
hero_itembox = "game_itembox.json" // 天赋详细数据
|
||||||
hero_talent = "game_herotalent.json" // 天赋详细数据
|
game_shopitem = "game_shopitem.json"
|
||||||
hero_itembox = "game_itembox.json" // 天赋详细数据
|
hero_skill = "game_heroskill.json"
|
||||||
game_shopitem = "game_shopitem.json"
|
|
||||||
hero_skill = "game_heroskill.json"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
///配置管理组件
|
///配置管理组件
|
||||||
@ -61,12 +59,10 @@ func (this *configureComp) Init(service core.IService, module core.IModule, comp
|
|||||||
game_skillatk: cfg.NewGameSkillAtk,
|
game_skillatk: cfg.NewGameSkillAtk,
|
||||||
hero_drawcard: cfg.NewGameDrawCard,
|
hero_drawcard: cfg.NewGameDrawCard,
|
||||||
hero_fusion: cfg.NewGameHerofusion,
|
hero_fusion: cfg.NewGameHerofusion,
|
||||||
//hero_starupsp: cfg.NewGameHeroStarupSp,
|
hero_talent: cfg.NewGameHeroTalent,
|
||||||
hero_talentskill: cfg.NewGameTalentSkill,
|
hero_itembox: cfg.NewGameItemBox,
|
||||||
hero_talent: cfg.NewGameHeroTalent,
|
game_shopitem: cfg.NewGameShopitem,
|
||||||
hero_itembox: cfg.NewGameItemBox,
|
hero_skill: cfg.NewGameHeroSkill,
|
||||||
game_shopitem: cfg.NewGameShopitem,
|
|
||||||
hero_skill: cfg.NewGameHeroSkill,
|
|
||||||
})
|
})
|
||||||
this.drawCardCfg = make(map[string]map[int32][]*cfg.GameDrawCardData, 0)
|
this.drawCardCfg = make(map[string]map[int32][]*cfg.GameDrawCardData, 0)
|
||||||
configure.RegisterConfigure(hero_drawcard, cfg.NewGameDrawCard, this.SetHeroDrawConfig)
|
configure.RegisterConfigure(hero_drawcard, cfg.NewGameDrawCard, this.SetHeroDrawConfig)
|
||||||
@ -286,17 +282,6 @@ func (this *configureComp) GetHeroFucionConfig(cid string) (data *cfg.GameHerofu
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// func (this *configureComp) GetHeroSpriteStar(cid string) (hid string) {
|
|
||||||
// if v, err := this.GetConfigure(hero_starupsp); err == nil {
|
|
||||||
// if configure, ok := v.(*cfg.GameHeroStarupSp); ok {
|
|
||||||
// hid = configure.Get(cid).Starid
|
|
||||||
// return
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// this.module.Errorf("cfg.GameHeroStarupSpData GetHeroSpriteStar:id = %s", cid)
|
|
||||||
// return ""
|
|
||||||
// }
|
|
||||||
|
|
||||||
func (this *configureComp) GetHeroTalent(id int32) (data *cfg.GameHeroTalentData) {
|
func (this *configureComp) GetHeroTalent(id int32) (data *cfg.GameHeroTalentData) {
|
||||||
if v, err := this.GetConfigure(hero_talent); err == nil {
|
if v, err := this.GetConfigure(hero_talent); err == nil {
|
||||||
if configure, ok := v.(*cfg.GameHeroTalent); ok {
|
if configure, ok := v.(*cfg.GameHeroTalent); ok {
|
||||||
@ -308,17 +293,6 @@ func (this *configureComp) GetHeroTalent(id int32) (data *cfg.GameHeroTalentData
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (this *configureComp) GetHeroTalentSkill(skillId int32) (data *cfg.GameTalentSkillData) {
|
|
||||||
if v, err := this.GetConfigure(hero_talentskill); err == nil {
|
|
||||||
if configure, ok := v.(*cfg.GameTalentSkill); ok {
|
|
||||||
data = configure.Get(skillId)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
}
|
|
||||||
this.module.Errorf("cfg.GameTalentSkillData GetHeroTalentSkill:skillId = %d", skillId)
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
// 天赋指定消耗
|
// 天赋指定消耗
|
||||||
func (this *configureComp) GetHeroTalentBoxItem(heroid string) (itemid string) {
|
func (this *configureComp) GetHeroTalentBoxItem(heroid string) (itemid string) {
|
||||||
if v, err := this.GetConfigure(hero_itembox); err == nil {
|
if v, err := this.GetConfigure(hero_itembox); err == nil {
|
||||||
|
@ -709,7 +709,7 @@ func (this *ModelHero) InitMonsterHero(heroCfgId string, star, lv int32) *pb.DBH
|
|||||||
}
|
}
|
||||||
|
|
||||||
//设置天赋属性
|
//设置天赋属性
|
||||||
func (this *ModelHero) setTalentProperty(hero *pb.DBHero, conf *cfg.GameTalentSkillData) {
|
func (this *ModelHero) setTalentProperty(hero *pb.DBHero, conf *cfg.GameHeroTalentData) {
|
||||||
if conf == nil || hero == nil {
|
if conf == nil || hero == nil {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
@ -752,8 +752,15 @@ func (this *ModelHero) setTalentProperty(hero *pb.DBHero, conf *cfg.GameTalentSk
|
|||||||
hero.TalentProperty[comm.Speed] = int32(math.Floor((float64(conf.Speed) / 1000) * float64(hero.Property[comm.Speed])))
|
hero.TalentProperty[comm.Speed] = int32(math.Floor((float64(conf.Speed) / 1000) * float64(hero.Property[comm.Speed])))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
_heroMap := make(map[string]interface{}, 0)
|
_heroMap := make(map[string]interface{}, 0)
|
||||||
|
if conf.Skill != 0 {
|
||||||
|
hero.NormalSkill = append(hero.NormalSkill, &pb.SkillData{
|
||||||
|
SkillID: conf.Skill,
|
||||||
|
SkillLv: 1,
|
||||||
|
})
|
||||||
|
_heroMap["normalSkill"] = hero.NormalSkill
|
||||||
|
}
|
||||||
|
|
||||||
_heroMap["talentProperty"] = hero.TalentProperty
|
_heroMap["talentProperty"] = hero.TalentProperty
|
||||||
if err := this.ChangeList(hero.Uid, hero.Id, _heroMap); err != nil {
|
if err := this.ChangeList(hero.Uid, hero.Id, _heroMap); err != nil {
|
||||||
this.moduleHero.Errorf("mergeenegryProperty err %v", err)
|
this.moduleHero.Errorf("mergeenegryProperty err %v", err)
|
||||||
@ -785,7 +792,7 @@ func (this *ModelHero) resetTalentProperty(hero *pb.DBHero) {
|
|||||||
for _, v := range rst {
|
for _, v := range rst {
|
||||||
if v.HeroId == hero.HeroID { // 找到对应的英雄
|
if v.HeroId == hero.HeroID { // 找到对应的英雄
|
||||||
for k := range v.Talent {
|
for k := range v.Talent {
|
||||||
if conf := this.moduleHero.configure.GetHeroTalentSkill(k); conf != nil { //获取天赋树
|
if conf := this.moduleHero.configure.GetHeroTalent(k); conf != nil { //获取天赋树
|
||||||
if conf.Hp != -1 {
|
if conf.Hp != -1 {
|
||||||
attr[0] += conf.Hp
|
attr[0] += conf.Hp
|
||||||
}
|
}
|
||||||
|
@ -21,7 +21,7 @@ func NewGameHeroTalent(_buf []map[string]interface{}) (*GameHeroTalent, error) {
|
|||||||
return nil, err2
|
return nil, err2
|
||||||
} else {
|
} else {
|
||||||
_dataList = append(_dataList, _v)
|
_dataList = append(_dataList, _v)
|
||||||
dataMap[_v.Id] = _v
|
dataMap[_v.Skillid] = _v
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return &GameHeroTalent{_dataList:_dataList, _dataMap:dataMap}, nil
|
return &GameHeroTalent{_dataList:_dataList, _dataMap:dataMap}, nil
|
||||||
|
@ -11,11 +11,19 @@ package cfg
|
|||||||
import "errors"
|
import "errors"
|
||||||
|
|
||||||
type GameHeroTalentData struct {
|
type GameHeroTalentData struct {
|
||||||
Id int32
|
Skillid int32
|
||||||
Type int32
|
Hid string
|
||||||
Typeline int32
|
Skilltyp int32
|
||||||
Talentid int32
|
|
||||||
Before []int32
|
Before []int32
|
||||||
|
Skillname string
|
||||||
|
Skilltxt string
|
||||||
|
Skillicon string
|
||||||
|
Hp int32
|
||||||
|
Atk int32
|
||||||
|
Def int32
|
||||||
|
Cri int32
|
||||||
|
Speed int32
|
||||||
|
Skill int32
|
||||||
Thing []*Gameatn
|
Thing []*Gameatn
|
||||||
Point int32
|
Point int32
|
||||||
}
|
}
|
||||||
@ -27,10 +35,9 @@ func (*GameHeroTalentData) GetTypeId() int32 {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (_v *GameHeroTalentData)Deserialize(_buf map[string]interface{}) (err error) {
|
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 _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["type"].(float64); !_ok_ { err = errors.New("type error"); return }; _v.Type = int32(_tempNum_) }
|
{ var _ok_ bool; if _v.Hid, _ok_ = _buf["hid"].(string); !_ok_ { err = errors.New("hid error"); return } }
|
||||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["typeline"].(float64); !_ok_ { err = errors.New("typeline error"); return }; _v.Typeline = 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; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["talentid"].(float64); !_ok_ { err = errors.New("talentid error"); return }; _v.Talentid = int32(_tempNum_) }
|
|
||||||
{
|
{
|
||||||
var _arr_ []interface{}
|
var _arr_ []interface{}
|
||||||
var _ok_ bool
|
var _ok_ bool
|
||||||
@ -45,6 +52,15 @@ func (_v *GameHeroTalentData)Deserialize(_buf map[string]interface{}) (err error
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["skillname"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Skillname error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Skillname, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
|
||||||
|
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["skilltxt"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Skilltxt error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Skilltxt, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text 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["cri"].(float64); !_ok_ { err = errors.New("cri error"); return }; _v.Cri = 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_) }
|
||||||
|
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["skill"].(float64); !_ok_ { err = errors.New("skill error"); return }; _v.Skill = int32(_tempNum_) }
|
||||||
{
|
{
|
||||||
var _arr_ []interface{}
|
var _arr_ []interface{}
|
||||||
var _ok_ bool
|
var _ok_ bool
|
||||||
|
42
sys/configure/structs/Game.TalentBox.go
Normal file
42
sys/configure/structs/Game.TalentBox.go
Normal 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 GameTalentBox struct {
|
||||||
|
_dataMap map[string]*GameTalentBoxData
|
||||||
|
_dataList []*GameTalentBoxData
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewGameTalentBox(_buf []map[string]interface{}) (*GameTalentBox, error) {
|
||||||
|
_dataList := make([]*GameTalentBoxData, 0, len(_buf))
|
||||||
|
dataMap := make(map[string]*GameTalentBoxData)
|
||||||
|
for _, _ele_ := range _buf {
|
||||||
|
if _v, err2 := DeserializeGameTalentBoxData(_ele_); err2 != nil {
|
||||||
|
return nil, err2
|
||||||
|
} else {
|
||||||
|
_dataList = append(_dataList, _v)
|
||||||
|
dataMap[_v.Heroid] = _v
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return &GameTalentBox{_dataList:_dataList, _dataMap:dataMap}, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (table *GameTalentBox) GetDataMap() map[string]*GameTalentBoxData {
|
||||||
|
return table._dataMap
|
||||||
|
}
|
||||||
|
|
||||||
|
func (table *GameTalentBox) GetDataList() []*GameTalentBoxData {
|
||||||
|
return table._dataList
|
||||||
|
}
|
||||||
|
|
||||||
|
func (table *GameTalentBox) Get(key string) *GameTalentBoxData {
|
||||||
|
return table._dataMap[key]
|
||||||
|
}
|
||||||
|
|
||||||
|
|
37
sys/configure/structs/Game.TalentBoxData.go
Normal file
37
sys/configure/structs/Game.TalentBoxData.go
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <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 GameTalentBoxData struct {
|
||||||
|
Heroid string
|
||||||
|
Itemid string
|
||||||
|
}
|
||||||
|
|
||||||
|
const TypeId_GameTalentBoxData = -1223889779
|
||||||
|
|
||||||
|
func (*GameTalentBoxData) GetTypeId() int32 {
|
||||||
|
return -1223889779
|
||||||
|
}
|
||||||
|
|
||||||
|
func (_v *GameTalentBoxData)Deserialize(_buf map[string]interface{}) (err error) {
|
||||||
|
{ var _ok_ bool; if _v.Heroid, _ok_ = _buf["heroid"].(string); !_ok_ { err = errors.New("heroid error"); return } }
|
||||||
|
{ var _ok_ bool; if _v.Itemid, _ok_ = _buf["itemid"].(string); !_ok_ { err = errors.New("itemid error"); return } }
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func DeserializeGameTalentBoxData(_buf map[string]interface{}) (*GameTalentBoxData, error) {
|
||||||
|
v := &GameTalentBoxData{}
|
||||||
|
if err := v.Deserialize(_buf); err == nil {
|
||||||
|
return v, nil
|
||||||
|
} else {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
}
|
@ -87,7 +87,6 @@ type Tables struct {
|
|||||||
Herofusion *GameHerofusion
|
Herofusion *GameHerofusion
|
||||||
PlayerInfor *GamePlayerInfor
|
PlayerInfor *GamePlayerInfor
|
||||||
PlayerInfor_overview *GamePlayerInfor_overview
|
PlayerInfor_overview *GamePlayerInfor_overview
|
||||||
HeroTalent *GameHeroTalent
|
|
||||||
TalentSkill *GameTalentSkill
|
TalentSkill *GameTalentSkill
|
||||||
ArenaBuyChallenge *GameArenaBuyChallenge
|
ArenaBuyChallenge *GameArenaBuyChallenge
|
||||||
ArenaActiveReward *GameArenaActiveReward
|
ArenaActiveReward *GameArenaActiveReward
|
||||||
@ -182,7 +181,6 @@ type Tables struct {
|
|||||||
itinerant_battle *Gameitinerant_battle
|
itinerant_battle *Gameitinerant_battle
|
||||||
itinerant_event *Gameitinerant_event
|
itinerant_event *Gameitinerant_event
|
||||||
NewRedDot *GameNewRedDot
|
NewRedDot *GameNewRedDot
|
||||||
Talent *GameTalent
|
|
||||||
Favorability *GameFavorability
|
Favorability *GameFavorability
|
||||||
Friends *GameFriends
|
Friends *GameFriends
|
||||||
CampLv *GameCampLv
|
CampLv *GameCampLv
|
||||||
@ -196,6 +194,9 @@ type Tables struct {
|
|||||||
Pricegroup *GamePricegroup
|
Pricegroup *GamePricegroup
|
||||||
Loading *GameLoading
|
Loading *GameLoading
|
||||||
RuleDesc *GameRuleDesc
|
RuleDesc *GameRuleDesc
|
||||||
|
HeroTalent *GameHeroTalent
|
||||||
|
TalentBox *GameTalentBox
|
||||||
|
Talent *GameTalent
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewTables(loader JsonLoader) (*Tables, error) {
|
func NewTables(loader JsonLoader) (*Tables, error) {
|
||||||
@ -659,12 +660,6 @@ func NewTables(loader JsonLoader) (*Tables, error) {
|
|||||||
if tables.PlayerInfor_overview, err = NewGamePlayerInfor_overview(buf) ; err != nil {
|
if tables.PlayerInfor_overview, err = NewGamePlayerInfor_overview(buf) ; err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
if buf, err = loader("game_herotalent") ; err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
if tables.HeroTalent, err = NewGameHeroTalent(buf) ; err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
if buf, err = loader("game_talentskill") ; err != nil {
|
if buf, err = loader("game_talentskill") ; err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
@ -1229,12 +1224,6 @@ func NewTables(loader JsonLoader) (*Tables, error) {
|
|||||||
if tables.NewRedDot, err = NewGameNewRedDot(buf) ; err != nil {
|
if tables.NewRedDot, err = NewGameNewRedDot(buf) ; err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
if buf, err = loader("game_talent") ; err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
if tables.Talent, err = NewGameTalent(buf) ; err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
if buf, err = loader("game_favorability") ; err != nil {
|
if buf, err = loader("game_favorability") ; err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
@ -1313,5 +1302,23 @@ func NewTables(loader JsonLoader) (*Tables, error) {
|
|||||||
if tables.RuleDesc, err = NewGameRuleDesc(buf) ; err != nil {
|
if tables.RuleDesc, err = NewGameRuleDesc(buf) ; err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
if buf, err = loader("game_herotalent") ; err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
if tables.HeroTalent, err = NewGameHeroTalent(buf) ; err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
if buf, err = loader("game_talentbox") ; err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
if tables.TalentBox, err = NewGameTalentBox(buf) ; err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
if buf, err = loader("game_talent") ; err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
if tables.Talent, err = NewGameTalent(buf) ; err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
return tables, nil
|
return tables, nil
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user