固定订单,新手任务
This commit is contained in:
parent
2446ba6a23
commit
e00a2292ae
@ -91,7 +91,7 @@ func ReqGmCommand_(player *Player, Command string) error {
|
|||||||
player.PushClientRes(player.PlayerBaseMod.BackAsset())
|
player.PushClientRes(player.PlayerBaseMod.BackAsset())
|
||||||
player.initAcitivity()
|
player.initAcitivity()
|
||||||
player.PlayMod.getGuideTaskMod().Unlock(num)
|
player.PlayMod.getGuideTaskMod().Unlock(num)
|
||||||
player.PlayMod.getOrderMod().TriggerOrder(num, order.TRIGGER_TYPE_LV)
|
player.PlayMod.getOrderMod().TriggerOrder(num, order.TRIGGER_TYPE_LV, nil, 1)
|
||||||
player.PushClientRes(player.PlayMod.getOrderMod().BackData())
|
player.PushClientRes(player.PlayMod.getOrderMod().BackData())
|
||||||
player.BackDataActivity()
|
player.BackDataActivity()
|
||||||
case "zeroUpdate":
|
case "zeroUpdate":
|
||||||
|
|||||||
@ -532,6 +532,9 @@ func (p *Player) HandleItem(itemList []*item.Item, Label string) error {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
if v.Num < 0 {
|
||||||
|
p.QuestTrigger(&quest.Trigger{Label: quest.TRIGGER_LABEL_STAR, A: []interface{}{-v.Num}})
|
||||||
|
}
|
||||||
p.TeLog("asset_change", map[string]interface{}{
|
p.TeLog("asset_change", map[string]interface{}{
|
||||||
"item_id": v.Id,
|
"item_id": v.Id,
|
||||||
"change_type": change_type,
|
"change_type": change_type,
|
||||||
|
|||||||
@ -343,7 +343,7 @@ func ReqRewardOrder(player *Player, buf []byte) error {
|
|||||||
} else {
|
} else {
|
||||||
OrderMod.CreateOrderSeed(NewOrder)
|
OrderMod.CreateOrderSeed(NewOrder)
|
||||||
}
|
}
|
||||||
OrderMod.TriggerOrder(Lv, order.TRIGGER_TYPE_ORDER)
|
OrderMod.TriggerOrder(Lv, order.TRIGGER_TYPE_ORDER, Emit, EnergyMul)
|
||||||
player.FormatOrderReward()
|
player.FormatOrderReward()
|
||||||
// 存钱罐增加钻石
|
// 存钱罐增加钻石
|
||||||
PiggyBankMod := player.PlayMod.getPiggyBankMod()
|
PiggyBankMod := player.PlayMod.getPiggyBankMod()
|
||||||
|
|||||||
@ -72,13 +72,16 @@ func (o *OrderMod) InitData() {
|
|||||||
}
|
}
|
||||||
if len(o.OrderList) == 0 {
|
if len(o.OrderList) == 0 {
|
||||||
o.OrderList = make(map[int]Order)
|
o.OrderList = make(map[int]Order)
|
||||||
o.TriggerOrder(1, TRIGGER_TYPE_ORDER)
|
o.TriggerOrder(1, TRIGGER_TYPE_ORDER, nil, 1)
|
||||||
}
|
}
|
||||||
for k, v := range o.OrderList {
|
for k, v := range o.OrderList {
|
||||||
if GoUtil.InArray(0, v.MergeId) || len(v.MergeId) == 0 {
|
if GoUtil.InArray(0, v.MergeId) || len(v.MergeId) == 0 {
|
||||||
delete(o.OrderList, k)
|
delete(o.OrderList, k)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if o.Auto_id == 0 {
|
||||||
|
o.Auto_id = 10000
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (o *OrderMod) GetOrderList() map[int]Order {
|
func (o *OrderMod) GetOrderList() map[int]Order {
|
||||||
@ -166,7 +169,7 @@ func (o *OrderMod) CreatOrderPool(lv int, Emit []int, EnergyMul int) error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 触发生成新的固定订单
|
// 触发生成新的固定订单
|
||||||
func (o *OrderMod) TriggerOrder(lv int, Type string) error {
|
func (o *OrderMod) TriggerOrder(lv int, Type string, Emit []int, EnergyMul int) error {
|
||||||
TriggerOrderList := orderCfg.GetStartOrderList()
|
TriggerOrderList := orderCfg.GetStartOrderList()
|
||||||
for _, v := range TriggerOrderList {
|
for _, v := range TriggerOrderList {
|
||||||
if GoUtil.InArray(v.Id, o.FinishOrder) {
|
if GoUtil.InArray(v.Id, o.FinishOrder) {
|
||||||
@ -177,12 +180,12 @@ func (o *OrderMod) TriggerOrder(lv int, Type string) error {
|
|||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
if v.Preview != "" && !exists {
|
if v.Preview != "" && !exists {
|
||||||
if o.CheckCondition(lv, v.Preview, Type) {
|
if o.CheckCondition(lv, v.Preview, Type, Emit) {
|
||||||
o.addFixOrder(v.Id, v.MergeList, Preview_type, v.Items)
|
o.addFixOrder(v.Id, v.MergeList, Preview_type, v.Items)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if v.Appear != "" {
|
if v.Appear != "" {
|
||||||
if o.CheckCondition(lv, v.Appear, Type) {
|
if o.CheckCondition(lv, v.Appear, Type, Emit) {
|
||||||
if exists {
|
if exists {
|
||||||
orderInfo.Type = Fixed_type
|
orderInfo.Type = Fixed_type
|
||||||
o.OrderList[v.Id] = orderInfo
|
o.OrderList[v.Id] = orderInfo
|
||||||
@ -192,10 +195,21 @@ func (o *OrderMod) TriggerOrder(lv int, Type string) error {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if lv >= 12 {
|
||||||
|
normalOrder := 0
|
||||||
|
for _, v := range o.OrderList {
|
||||||
|
if v.Type == Common_type {
|
||||||
|
normalOrder++
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for i := normalOrder; i < 3; i++ {
|
||||||
|
o.CreateNormalOrder(lv, Emit, EnergyMul)
|
||||||
|
}
|
||||||
|
}
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (o *OrderMod) CheckCondition(lv int, condition, Type string) bool {
|
func (o *OrderMod) CheckCondition(lv int, condition, Type string, Emit []int) bool {
|
||||||
r1 := strings.Split(condition, "|")
|
r1 := strings.Split(condition, "|")
|
||||||
for _, v := range r1 {
|
for _, v := range r1 {
|
||||||
r2 := strings.Split(v, "=")
|
r2 := strings.Split(v, "=")
|
||||||
@ -224,6 +238,14 @@ func (o *OrderMod) CheckCondition(lv int, condition, Type string) bool {
|
|||||||
if !GoUtil.InArray(id, o.FinishOrder) && !ok {
|
if !GoUtil.InArray(id, o.FinishOrder) && !ok {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
case "Emit":
|
||||||
|
Class := []string{}
|
||||||
|
for _, v := range Emit {
|
||||||
|
Class = append(Class, mergeDataCfg.GetColorById(v))
|
||||||
|
}
|
||||||
|
if !GoUtil.InStringArray(r2[1], Class) {
|
||||||
|
return false
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return true
|
return true
|
||||||
@ -231,7 +253,6 @@ func (o *OrderMod) CheckCondition(lv int, condition, Type string) bool {
|
|||||||
|
|
||||||
// 生成新订单
|
// 生成新订单
|
||||||
func (o *OrderMod) CreateOrder(lv int, Emit []int, EnergyMul int) error {
|
func (o *OrderMod) CreateOrder(lv int, Emit []int, EnergyMul int) error {
|
||||||
return nil
|
|
||||||
if len(Emit) == 0 {
|
if len(Emit) == 0 {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@ -18,7 +18,8 @@ const (
|
|||||||
TRIGGER_LABEL_MERGELVTIME = "MergeLvTime"
|
TRIGGER_LABEL_MERGELVTIME = "MergeLvTime"
|
||||||
TRIGGER_LABEL_FINISHORDER = "FinishOrder"
|
TRIGGER_LABEL_FINISHORDER = "FinishOrder"
|
||||||
TRIGGER_LABEL_ENERGY = "Energy"
|
TRIGGER_LABEL_ENERGY = "Energy"
|
||||||
TRIGGER_LABEL_STAR = "Star" // 收集宠物币
|
TRIGGER_LABEL_STAR = "Star" // 收集宠物币
|
||||||
|
TRIGGER_LABEL_DIAMOND = "Diamond" // 消耗钻石
|
||||||
TRIGGER_LABEL_MERGETIME = "MergeTime"
|
TRIGGER_LABEL_MERGETIME = "MergeTime"
|
||||||
TRIGGER_LABEL_STOKECAT = "StokeCat"
|
TRIGGER_LABEL_STOKECAT = "StokeCat"
|
||||||
TRIGGER_LABEL_TAKECAT = "TakeCat"
|
TRIGGER_LABEL_TAKECAT = "TakeCat"
|
||||||
@ -75,6 +76,7 @@ func TriggerQuestProgress(q *QuestProgress, Tr *Trigger) bool {
|
|||||||
switch q.Label {
|
switch q.Label {
|
||||||
case TRIGGER_LABEL_ENERGY,
|
case TRIGGER_LABEL_ENERGY,
|
||||||
TRIGGER_LABEL_STAR,
|
TRIGGER_LABEL_STAR,
|
||||||
|
TRIGGER_LABEL_DIAMOND,
|
||||||
TRIGGER_LABEL_DECORATE: // 消耗x能量
|
TRIGGER_LABEL_DECORATE: // 消耗x能量
|
||||||
AddNum := Tr.A[0].(int)
|
AddNum := Tr.A[0].(int)
|
||||||
q.Num += AddNum
|
q.Num += AddNum
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user