diff --git a/bin/json/game_growreward.json b/bin/json/game_growreward.json
new file mode 100644
index 000000000..190d49972
--- /dev/null
+++ b/bin/json/game_growreward.json
@@ -0,0 +1,32 @@
+[
+ {
+ "type": 1,
+ "allreward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 9999
+ }
+ ]
+ },
+ {
+ "type": 2,
+ "allreward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 9999
+ }
+ ]
+ },
+ {
+ "type": 3,
+ "allreward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 9999
+ }
+ ]
+ }
+]
\ No newline at end of file
diff --git a/bin/json/game_growtask.json b/bin/json/game_growtask.json
new file mode 100644
index 000000000..062d69581
--- /dev/null
+++ b/bin/json/game_growtask.json
@@ -0,0 +1,466 @@
+[
+ {
+ "id": 1,
+ "type": 1,
+ "title": "通关1-1",
+ "txt": "位置的丛林充满了危险,赶快带上你的小伙伴去探索一番吧~",
+ "portrait": "N6_0002_图层-31253",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 2,
+ "type": 1,
+ "title": "通关1-2",
+ "txt": "位置的丛林充满了危险,赶快带上你的小伙伴去探索一番吧~",
+ "portrait": "N6_0002_图层-31254",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 3,
+ "type": 1,
+ "title": "通关1-3",
+ "txt": "位置的丛林充满了危险,赶快带上你的小伙伴去探索一番吧~",
+ "portrait": "N6_0002_图层-31255",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 4,
+ "type": 1,
+ "title": "通关1-4",
+ "txt": "位置的丛林充满了危险,赶快带上你的小伙伴去探索一番吧~",
+ "portrait": "N6_0002_图层-31256",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 5,
+ "type": 1,
+ "title": "通关1-5",
+ "txt": "位置的丛林充满了危险,赶快带上你的小伙伴去探索一番吧~",
+ "portrait": "N6_0002_图层-31257",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 6,
+ "type": 1,
+ "title": "通关1-6",
+ "txt": "位置的丛林充满了危险,赶快带上你的小伙伴去探索一番吧~",
+ "portrait": "N6_0002_图层-31258",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 7,
+ "type": 1,
+ "title": "通关1-7",
+ "txt": "位置的丛林充满了危险,赶快带上你的小伙伴去探索一番吧~",
+ "portrait": "N6_0002_图层-31259",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 8,
+ "type": 1,
+ "title": "通关1-8",
+ "txt": "位置的丛林充满了危险,赶快带上你的小伙伴去探索一番吧~",
+ "portrait": "N6_0002_图层-31260",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 9,
+ "type": 1,
+ "title": "通关1-9",
+ "txt": "位置的丛林充满了危险,赶快带上你的小伙伴去探索一番吧~",
+ "portrait": "N6_0002_图层-31261",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 10,
+ "type": 1,
+ "title": "通关1-10",
+ "txt": "位置的丛林充满了危险,赶快带上你的小伙伴去探索一番吧~",
+ "portrait": "N6_0002_图层-31262",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 11,
+ "type": 2,
+ "title": "阿宝升1级",
+ "txt": "阿宝需要变强,快去帮助他把~",
+ "portrait": "N6_0002_图层-31263",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 12,
+ "type": 2,
+ "title": "阿宝升2级",
+ "txt": "阿宝需要变强,快去帮助他把~",
+ "portrait": "N6_0002_图层-31264",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 13,
+ "type": 2,
+ "title": "阿宝升3级",
+ "txt": "阿宝需要变强,快去帮助他把~",
+ "portrait": "N6_0002_图层-31265",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 14,
+ "type": 2,
+ "title": "阿宝升4级",
+ "txt": "阿宝需要变强,快去帮助他把~",
+ "portrait": "N6_0002_图层-31266",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 15,
+ "type": 2,
+ "title": "阿宝升5级",
+ "txt": "阿宝需要变强,快去帮助他把~",
+ "portrait": "N6_0002_图层-31267",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 16,
+ "type": 2,
+ "title": "阿宝升6级",
+ "txt": "阿宝需要变强,快去帮助他把~",
+ "portrait": "N6_0002_图层-31268",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 17,
+ "type": 2,
+ "title": "阿宝升7级",
+ "txt": "阿宝需要变强,快去帮助他把~",
+ "portrait": "N6_0002_图层-31269",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 18,
+ "type": 2,
+ "title": "阿宝升8级",
+ "txt": "阿宝需要变强,快去帮助他把~",
+ "portrait": "N6_0002_图层-31270",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 19,
+ "type": 2,
+ "title": "阿宝升9级",
+ "txt": "阿宝需要变强,快去帮助他把~",
+ "portrait": "N6_0002_图层-31271",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 20,
+ "type": 2,
+ "title": "阿宝升10级",
+ "txt": "阿宝需要变强,快去帮助他把~",
+ "portrait": "N6_0002_图层-31272",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 21,
+ "type": 3,
+ "title": "波比升1级",
+ "txt": "你们都变强了,我也需要变强,请助我一臂之力~",
+ "portrait": "N6_0002_图层-31273",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 22,
+ "type": 3,
+ "title": "波比升2级",
+ "txt": "你们都变强了,我也需要变强,请助我一臂之力~",
+ "portrait": "N6_0002_图层-31274",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 23,
+ "type": 3,
+ "title": "波比升3级",
+ "txt": "你们都变强了,我也需要变强,请助我一臂之力~",
+ "portrait": "N6_0002_图层-31275",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 24,
+ "type": 3,
+ "title": "波比升4级",
+ "txt": "你们都变强了,我也需要变强,请助我一臂之力~",
+ "portrait": "N6_0002_图层-31276",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 25,
+ "type": 3,
+ "title": "波比升5级",
+ "txt": "你们都变强了,我也需要变强,请助我一臂之力~",
+ "portrait": "N6_0002_图层-31277",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 26,
+ "type": 3,
+ "title": "波比升6级",
+ "txt": "你们都变强了,我也需要变强,请助我一臂之力~",
+ "portrait": "N6_0002_图层-31278",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 27,
+ "type": 3,
+ "title": "波比升7级",
+ "txt": "你们都变强了,我也需要变强,请助我一臂之力~",
+ "portrait": "N6_0002_图层-31279",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 28,
+ "type": 3,
+ "title": "波比升8级",
+ "txt": "你们都变强了,我也需要变强,请助我一臂之力~",
+ "portrait": "N6_0002_图层-31280",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ },
+ {
+ "id": 29,
+ "type": 3,
+ "title": "波比升9级",
+ "txt": "你们都变强了,我也需要变强,请助我一臂之力~",
+ "portrait": "N6_0002_图层-31281",
+ "fstask": 101,
+ "jump": 120,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ]
+ }
+]
\ No newline at end of file
diff --git a/sys/configure/structs/Game.GrowReward.go b/sys/configure/structs/Game.GrowReward.go
new file mode 100644
index 000000000..38aa831fc
--- /dev/null
+++ b/sys/configure/structs/Game.GrowReward.go
@@ -0,0 +1,42 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+package cfg
+
+type GameGrowReward struct {
+ _dataMap map[int32]*GameGrowRewardData
+ _dataList []*GameGrowRewardData
+}
+
+func NewGameGrowReward(_buf []map[string]interface{}) (*GameGrowReward, error) {
+ _dataList := make([]*GameGrowRewardData, 0, len(_buf))
+ dataMap := make(map[int32]*GameGrowRewardData)
+ for _, _ele_ := range _buf {
+ if _v, err2 := DeserializeGameGrowRewardData(_ele_); err2 != nil {
+ return nil, err2
+ } else {
+ _dataList = append(_dataList, _v)
+ dataMap[_v.Type] = _v
+ }
+ }
+ return &GameGrowReward{_dataList:_dataList, _dataMap:dataMap}, nil
+}
+
+func (table *GameGrowReward) GetDataMap() map[int32]*GameGrowRewardData {
+ return table._dataMap
+}
+
+func (table *GameGrowReward) GetDataList() []*GameGrowRewardData {
+ return table._dataList
+}
+
+func (table *GameGrowReward) Get(key int32) *GameGrowRewardData {
+ return table._dataMap[key]
+}
+
+
diff --git a/sys/configure/structs/Game.GrowRewardData.go b/sys/configure/structs/Game.GrowRewardData.go
new file mode 100644
index 000000000..5214840b2
--- /dev/null
+++ b/sys/configure/structs/Game.GrowRewardData.go
@@ -0,0 +1,50 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+package cfg
+
+import "errors"
+
+type GameGrowRewardData struct {
+ Type int32
+ Allreward []*Gameatn
+}
+
+const TypeId_GameGrowRewardData = 1151266152
+
+func (*GameGrowRewardData) GetTypeId() int32 {
+ return 1151266152
+}
+
+func (_v *GameGrowRewardData)Deserialize(_buf map[string]interface{}) (err error) {
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["type"].(float64); !_ok_ { err = errors.New("type error"); return }; _v.Type = int32(_tempNum_) }
+ {
+ var _arr_ []interface{}
+ var _ok_ bool
+ if _arr_, _ok_ = _buf["allreward"].([]interface{}); !_ok_ { err = errors.New("allreward error"); return }
+
+ _v.Allreward = 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.Allreward = append(_v.Allreward, _list_v_)
+ }
+ }
+
+ return
+}
+
+func DeserializeGameGrowRewardData(_buf map[string]interface{}) (*GameGrowRewardData, error) {
+ v := &GameGrowRewardData{}
+ if err := v.Deserialize(_buf); err == nil {
+ return v, nil
+ } else {
+ return nil, err
+ }
+}
diff --git a/sys/configure/structs/Game.GrowTask.go b/sys/configure/structs/Game.GrowTask.go
new file mode 100644
index 000000000..5a3e8d15f
--- /dev/null
+++ b/sys/configure/structs/Game.GrowTask.go
@@ -0,0 +1,42 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+package cfg
+
+type GameGrowTask struct {
+ _dataMap map[int32]*GameGrowTaskData
+ _dataList []*GameGrowTaskData
+}
+
+func NewGameGrowTask(_buf []map[string]interface{}) (*GameGrowTask, error) {
+ _dataList := make([]*GameGrowTaskData, 0, len(_buf))
+ dataMap := make(map[int32]*GameGrowTaskData)
+ for _, _ele_ := range _buf {
+ if _v, err2 := DeserializeGameGrowTaskData(_ele_); err2 != nil {
+ return nil, err2
+ } else {
+ _dataList = append(_dataList, _v)
+ dataMap[_v.Id] = _v
+ }
+ }
+ return &GameGrowTask{_dataList:_dataList, _dataMap:dataMap}, nil
+}
+
+func (table *GameGrowTask) GetDataMap() map[int32]*GameGrowTaskData {
+ return table._dataMap
+}
+
+func (table *GameGrowTask) GetDataList() []*GameGrowTaskData {
+ return table._dataList
+}
+
+func (table *GameGrowTask) Get(key int32) *GameGrowTaskData {
+ return table._dataMap[key]
+}
+
+
diff --git a/sys/configure/structs/Game.GrowTaskData.go b/sys/configure/structs/Game.GrowTaskData.go
new file mode 100644
index 000000000..67eaed5a4
--- /dev/null
+++ b/sys/configure/structs/Game.GrowTaskData.go
@@ -0,0 +1,62 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+package cfg
+
+import "errors"
+
+type GameGrowTaskData struct {
+ Id int32
+ Type int32
+ Title string
+ Txt string
+ Portrait string
+ Fstask int32
+ Jump int32
+ Reward []*Gameatn
+}
+
+const TypeId_GameGrowTaskData = 1157523582
+
+func (*GameGrowTaskData) GetTypeId() int32 {
+ return 1157523582
+}
+
+func (_v *GameGrowTaskData)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["type"].(float64); !_ok_ { err = errors.New("type error"); return }; _v.Type = int32(_tempNum_) }
+ { var _ok_ bool; if _v.Title, _ok_ = _buf["title"].(string); !_ok_ { err = errors.New("title error"); return } }
+ { var _ok_ bool; if _v.Txt, _ok_ = _buf["txt"].(string); !_ok_ { err = errors.New("txt error"); return } }
+ { var _ok_ bool; if _v.Portrait, _ok_ = _buf["portrait"].(string); !_ok_ { err = errors.New("portrait error"); return } }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["fstask"].(float64); !_ok_ { err = errors.New("fstask error"); return }; _v.Fstask = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["jump"].(float64); !_ok_ { err = errors.New("jump error"); return }; _v.Jump = int32(_tempNum_) }
+ {
+ var _arr_ []interface{}
+ var _ok_ bool
+ if _arr_, _ok_ = _buf["reward"].([]interface{}); !_ok_ { err = errors.New("reward error"); return }
+
+ _v.Reward = 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.Reward = append(_v.Reward, _list_v_)
+ }
+ }
+
+ return
+}
+
+func DeserializeGameGrowTaskData(_buf map[string]interface{}) (*GameGrowTaskData, error) {
+ v := &GameGrowTaskData{}
+ if err := v.Deserialize(_buf); err == nil {
+ return v, nil
+ } else {
+ return nil, err
+ }
+}