猫咪戏法优化
This commit is contained in:
parent
985f5ad0c9
commit
5ac7ba79aa
@ -141,13 +141,17 @@ func (l *LimitedTimeEventMod) Trigger(Lv int) (int, []int, []int) {
|
||||
Remain := 0
|
||||
//删除过期事件
|
||||
for k, v := range l.EventList {
|
||||
if v.StartT+v.Remian <= Now {
|
||||
EndTime := v.StartT + v.Remian
|
||||
if k == EVENT_TYPE_CAT_TRICK {
|
||||
EndTime += 5 * 60 // 猫咪戏法事件显示时间为5分钟
|
||||
}
|
||||
if EndTime <= Now {
|
||||
delete(l.EventList, k)
|
||||
TimeoutEvent = append(TimeoutEvent, k)
|
||||
continue
|
||||
}
|
||||
EndTime := (v.StartT + v.Remian) - Now
|
||||
Remain = GoUtil.IfTrue(Remain > 0, min(Remain, int(EndTime)), int(EndTime)).(int)
|
||||
NowRemain := (v.StartT + v.Remian) - Now
|
||||
Remain = GoUtil.IfTrue(Remain > 0, min(Remain, int(NowRemain)), int(NowRemain)).(int)
|
||||
}
|
||||
return Remain, TimeoutEvent, AddEvent
|
||||
}
|
||||
@ -381,7 +385,12 @@ func (l *LimitedTimeEventMod) AddCatTrickEnergy(Energy int) {
|
||||
if l.EventList[EVENT_TYPE_CAT_TRICK] == nil {
|
||||
return
|
||||
}
|
||||
d := l.EventList[EVENT_TYPE_CAT_TRICK].D.(*CatTrick)
|
||||
Event := l.EventList[EVENT_TYPE_CAT_TRICK]
|
||||
if Event.Remian+Event.StartT <= GoUtil.Now() {
|
||||
return
|
||||
}
|
||||
// 事件未过期
|
||||
d := Event.D.(*CatTrick)
|
||||
d.Energy += Energy
|
||||
}
|
||||
|
||||
@ -475,6 +484,7 @@ func getLimitEventMsg(t int, e *LTEInfo) *msg.LimitEvent {
|
||||
Cd := 0
|
||||
Mul := 0.0
|
||||
Param := make(map[string]int32, 0)
|
||||
ShowTime := int32(e.StartT + e.Remian)
|
||||
switch t {
|
||||
case EVENT_TYPE_FAST_PRODUCE:
|
||||
NextPlay := GoUtil.Int64(e.Info["NextPlay"])
|
||||
@ -489,12 +499,14 @@ func getLimitEventMsg(t int, e *LTEInfo) *msg.LimitEvent {
|
||||
Param[msg.LimitEventParam_CAT_TRICK_ENERGY.String()] = int32(Energy)
|
||||
info := d.List[0]
|
||||
Param[msg.LimitEventParam_CAT_TRICK_TYPE.String()] = int32(info.Type)
|
||||
ShowTime += 5 * 60 // 5分钟
|
||||
case EVENT_TYPE_PAYBACK_DAY:
|
||||
d := e.D.(*PaybackDay)
|
||||
Param[msg.LimitEventParam_PAYBACK_DAY_COUNT.String()] = int32(d.count)
|
||||
}
|
||||
return &msg.LimitEvent{
|
||||
EndTime: int32(e.StartT + e.Remian),
|
||||
ShowTime: ShowTime,
|
||||
Cd: int32(Cd),
|
||||
Mul: float32(Mul),
|
||||
StartTime: int32(e.StartT),
|
||||
|
||||
@ -10676,6 +10676,7 @@ type LimitEvent struct {
|
||||
Mul float32 `protobuf:"fixed32,3,opt,name=mul,proto3" json:"mul,omitempty"` //倍数
|
||||
StartTime int32 `protobuf:"varint,4,opt,name=StartTime,proto3" json:"StartTime,omitempty"` //开始时间
|
||||
Param map[string]int32 `protobuf:"bytes,5,rep,name=Param,proto3" json:"Param,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"` //key 为枚举 LimitEventParam
|
||||
ShowTime int32 `protobuf:"varint,6,opt,name=ShowTime,proto3" json:"ShowTime,omitempty"` //显示时间
|
||||
unknownFields protoimpl.UnknownFields
|
||||
sizeCache protoimpl.SizeCache
|
||||
}
|
||||
@ -10745,6 +10746,13 @@ func (x *LimitEvent) GetParam() map[string]int32 {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (x *LimitEvent) GetShowTime() int32 {
|
||||
if x != nil {
|
||||
return x.ShowTime
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
type LimitEventNotify struct {
|
||||
state protoimpl.MessageState `protogen:"open.v1"`
|
||||
Id int32 `protobuf:"varint,1,opt,name=Id,proto3" json:"Id,omitempty"` // 限时事件类型
|
||||
@ -23285,14 +23293,15 @@ const file_proto_Gameapi_proto_rawDesc = "" +
|
||||
"\x02Id\x18\x01 \x01(\x05R\x02Id\"O\n" +
|
||||
"\x13ResSelectLimitEvent\x12&\n" +
|
||||
"\x04Code\x18\x01 \x01(\x0e2\x12.tutorial.RES_CODER\x04Code\x12\x10\n" +
|
||||
"\x03Msg\x18\x02 \x01(\tR\x03Msg\"\xd7\x01\n" +
|
||||
"\x03Msg\x18\x02 \x01(\tR\x03Msg\"\xf3\x01\n" +
|
||||
"\n" +
|
||||
"LimitEvent\x12\x18\n" +
|
||||
"\aEndTime\x18\x01 \x01(\x05R\aEndTime\x12\x0e\n" +
|
||||
"\x02Cd\x18\x02 \x01(\x05R\x02Cd\x12\x10\n" +
|
||||
"\x03mul\x18\x03 \x01(\x02R\x03mul\x12\x1c\n" +
|
||||
"\tStartTime\x18\x04 \x01(\x05R\tStartTime\x125\n" +
|
||||
"\x05Param\x18\x05 \x03(\v2\x1f.tutorial.LimitEvent.ParamEntryR\x05Param\x1a8\n" +
|
||||
"\x05Param\x18\x05 \x03(\v2\x1f.tutorial.LimitEvent.ParamEntryR\x05Param\x12\x1a\n" +
|
||||
"\bShowTime\x18\x06 \x01(\x05R\bShowTime\x1a8\n" +
|
||||
"\n" +
|
||||
"ParamEntry\x12\x10\n" +
|
||||
"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
|
||||
|
||||
Loading…
Reference in New Issue
Block a user