上传道具使用配置
This commit is contained in:
parent
efc585f8e3
commit
2bf8b2bf12
45
bin/json/game_propsgroup.json
Normal file
45
bin/json/game_propsgroup.json
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"group": 10001,
|
||||||
|
"star": 0,
|
||||||
|
"prize": [
|
||||||
|
{
|
||||||
|
"a": "attr",
|
||||||
|
"t": "gold",
|
||||||
|
"n": 1000
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"a": "attr",
|
||||||
|
"t": "gold",
|
||||||
|
"n": 2000
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"a": "attr",
|
||||||
|
"t": "gold",
|
||||||
|
"n": 3000
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"p": [
|
||||||
|
1000,
|
||||||
|
1000,
|
||||||
|
1000
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"group": 20001,
|
||||||
|
"star": 0,
|
||||||
|
"prize": [
|
||||||
|
{
|
||||||
|
"a": "attr",
|
||||||
|
"t": "gold",
|
||||||
|
"n": 4000
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"a": "attr",
|
||||||
|
"t": "gold",
|
||||||
|
"n": 5000
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"p": []
|
||||||
|
}
|
||||||
|
]
|
@ -22,6 +22,7 @@ func (this *apiComp) Useitem(session comm.IUserSession, req *pb.ItemsUseItemReq)
|
|||||||
err error
|
err error
|
||||||
item *pb.DB_UserItemData
|
item *pb.DB_UserItemData
|
||||||
itemcf *cfg.Game_itemData
|
itemcf *cfg.Game_itemData
|
||||||
|
prop *cfg.Game_propsgroupData
|
||||||
)
|
)
|
||||||
if code = this.UseitemCheck(session, req); code != pb.ErrorCode_Success {
|
if code = this.UseitemCheck(session, req); code != pb.ErrorCode_Success {
|
||||||
return
|
return
|
||||||
@ -35,8 +36,12 @@ func (this *apiComp) Useitem(session comm.IUserSession, req *pb.ItemsUseItemReq)
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
switch itemcf.Usetype {
|
switch itemcf.Usetype {
|
||||||
case 4:
|
case 6:
|
||||||
sale := make([]*cfg.Game_atn, len(itemcf.Sale))
|
if prop, err = this.module.configure.GetPropsgroupConfigure(itemcf.BoxId); err != nil {
|
||||||
|
code = pb.ErrorCode_ConfigNoFound
|
||||||
|
return
|
||||||
|
}
|
||||||
|
sale := make([]*cfg.Game_atn, len(prop.Prize))
|
||||||
for _, v := range sale {
|
for _, v := range sale {
|
||||||
v.N = v.N * int32(req.Amount)
|
v.N = v.N * int32(req.Amount)
|
||||||
}
|
}
|
||||||
|
@ -11,6 +11,7 @@ import (
|
|||||||
|
|
||||||
const (
|
const (
|
||||||
game_item = "game_item.json"
|
game_item = "game_item.json"
|
||||||
|
game_propsgroup = "game_propsgroup.json"
|
||||||
)
|
)
|
||||||
|
|
||||||
///背包配置管理组件
|
///背包配置管理组件
|
||||||
@ -87,3 +88,22 @@ func (this *ConfigureComp) GetPackItemByType(itmes []*pb.DB_UserItemData, usetyp
|
|||||||
}
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//获取道具礼包组
|
||||||
|
func (this *ConfigureComp) GetPropsgroupConfigure(id int32) (item *cfg.Game_propsgroupData, err error) {
|
||||||
|
var (
|
||||||
|
v interface{}
|
||||||
|
ok bool
|
||||||
|
)
|
||||||
|
if v, err = this.GetConfigure(game_propsgroup); err != nil {
|
||||||
|
this.module.Errorf("err:%v", err)
|
||||||
|
return
|
||||||
|
} else {
|
||||||
|
if item, ok = v.(*cfg.Game_propsgroup).GetDataMap()[id]; !ok {
|
||||||
|
err = fmt.Errorf("no found item:%d configure", id)
|
||||||
|
this.module.Errorf("err:%v", err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
42
sys/configure/structs/game.propsgroup.go
Normal file
42
sys/configure/structs/game.propsgroup.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 Game_propsgroup struct {
|
||||||
|
_dataMap map[int32]*Game_propsgroupData
|
||||||
|
_dataList []*Game_propsgroupData
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewGame_propsgroup(_buf []map[string]interface{}) (*Game_propsgroup, error) {
|
||||||
|
_dataList := make([]*Game_propsgroupData, 0, len(_buf))
|
||||||
|
dataMap := make(map[int32]*Game_propsgroupData)
|
||||||
|
for _, _ele_ := range _buf {
|
||||||
|
if _v, err2 := NewGame_propsgroupData(_ele_); err2 != nil {
|
||||||
|
return nil, err2
|
||||||
|
} else {
|
||||||
|
_dataList = append(_dataList, _v)
|
||||||
|
dataMap[_v.Group] = _v
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return &Game_propsgroup{_dataList:_dataList, _dataMap:dataMap}, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (table *Game_propsgroup) GetDataMap() map[int32]*Game_propsgroupData {
|
||||||
|
return table._dataMap
|
||||||
|
}
|
||||||
|
|
||||||
|
func (table *Game_propsgroup) GetDataList() []*Game_propsgroupData {
|
||||||
|
return table._dataList
|
||||||
|
}
|
||||||
|
|
||||||
|
func (table *Game_propsgroup) Get(key int32) *Game_propsgroupData {
|
||||||
|
return table._dataMap[key]
|
||||||
|
}
|
||||||
|
|
||||||
|
|
57
sys/configure/structs/game.propsgroupData.go
Normal file
57
sys/configure/structs/game.propsgroupData.go
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <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 Game_propsgroupData struct {
|
||||||
|
Group int32
|
||||||
|
Star int32
|
||||||
|
Prize []*Game_atn
|
||||||
|
P []int32
|
||||||
|
}
|
||||||
|
|
||||||
|
func (Game_propsgroupData) GetTypeId() int {
|
||||||
|
return -1658257195
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewGame_propsgroupData(_buf map[string]interface{}) (_v *Game_propsgroupData, err error) {
|
||||||
|
_v = &Game_propsgroupData{}
|
||||||
|
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["group"].(float64); !_ok_ { err = errors.New("group error"); return }; _v.Group = int32(_tempNum_) }
|
||||||
|
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["star"].(float64); !_ok_ { err = errors.New("star error"); return }; _v.Star = int32(_tempNum_) }
|
||||||
|
{
|
||||||
|
var _arr_ []interface{}
|
||||||
|
var _ok_ bool
|
||||||
|
if _arr_, _ok_ = _buf["prize"].([]interface{}); !_ok_ { err = errors.New("prize error"); return }
|
||||||
|
|
||||||
|
_v.Prize = make([]*Game_atn, 0, len(_arr_))
|
||||||
|
|
||||||
|
for _, _e_ := range _arr_ {
|
||||||
|
var _list_v_ *Game_atn
|
||||||
|
{ 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 = NewGame_atn(_x_); err != nil { return } }
|
||||||
|
_v.Prize = append(_v.Prize, _list_v_)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
var _arr_ []interface{}
|
||||||
|
var _ok_ bool
|
||||||
|
if _arr_, _ok_ = _buf["p"].([]interface{}); !_ok_ { err = errors.New("p error"); return }
|
||||||
|
|
||||||
|
_v.P = 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.P = append(_v.P, _list_v_)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user