2025-06-04 18:17:39 +08:00
|
|
|
|
syntax = "proto3";
|
|
|
|
|
package Pb;
|
|
|
|
|
option go_package = "pb/";
|
|
|
|
|
|
2025-06-06 18:31:44 +08:00
|
|
|
|
import "enums.proto";
|
|
|
|
|
|
2025-06-04 18:17:39 +08:00
|
|
|
|
// ModId.ModuleCounter: 7000
|
2025-06-13 17:19:56 +08:00
|
|
|
|
// 计数器模块消息定义
|
2025-06-04 18:17:39 +08:00
|
|
|
|
// 如果定义的消息内没有字段或者消息被注释掉了,说明该请求不需要参数,发送消息时仅发送包头即可,包体可为空, 返回的消息亦是如此。
|
|
|
|
|
|
2025-06-06 18:31:44 +08:00
|
|
|
|
// 计数器用于记录一些有次数限制的行为已经做过了次数,
|
|
|
|
|
// 如商店某个商品一天只能购买一定次数,当计数器次数>=可购买次数时,便不可再次购买,直到次日刷新
|
2025-06-04 18:17:39 +08:00
|
|
|
|
message Counter {
|
2025-06-06 18:31:44 +08:00
|
|
|
|
CounterType Type = 1; //计数器类型
|
2025-07-16 10:05:22 +08:00
|
|
|
|
uint64 Id = 2; //键,ID1 << 32 | ID2
|
2025-06-06 18:31:44 +08:00
|
|
|
|
int64 Time = 3; //最近一次计数的时间
|
|
|
|
|
uint32 Daily = 4; //周期性计数,如:每日、每周、每月
|
|
|
|
|
uint32 Total = 5; //总计数
|
2025-06-04 18:17:39 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// MsgId.ModCounterList: 7001
|
2025-06-06 18:31:44 +08:00
|
|
|
|
// MsgId.ModCounterChange: 7002
|
2025-06-04 18:17:39 +08:00
|
|
|
|
// 计数器列表返回
|
|
|
|
|
message CounterListAck {
|
2025-06-05 17:48:23 +08:00
|
|
|
|
repeated Counter CounterList = 1;
|
2025-06-04 18:17:39 +08:00
|
|
|
|
}
|