syntax="proto3";
package protos;

// 登录
message C_Login{
	string token=1;
}

message S_Login{
	string username=1;
	uint64 icon =2;
	uint64 balance = 3;
	uint64 bank = 4;
	uint64 freeze = 5;
	string area = 6;
	string ip = 7;
	int32 vip=8;
}

// 游戏配置
message GameEntry{
	int32 id=1;			// 游戏ID,
	string name=2;		// 名称
	string icon=3;		// 图标
	uint64 maxLimit=4;	// 游戏限额
	uint64 minLimit=5;	// 游戏限额
	uint64 unit	= 6;	// 最小下注
}

// 游戏类别配置
message CataEntry{
	int32 id=1;							//
	string name=2;						// 名称
	string icon=3;						// 大图标
	string thumbnail=4;					// 小图标
	repeated CataEntry subCatas = 5;	// 子类别
	repeated GameEntry games = 6;		// 该类别下游戏配置
}

// 游戏列表
message S_Games{
	repeated CataEntry catas=1;
}

// 公告
message S_Announcement{
	string title = 1;
	string body = 3;
	string url = 4;	//从 url 加载
}

// 跑马灯
message S_Marquee {
	int32 times = 1; // 重复次数
	repeated string text = 4;	// 跑马灯列表
}

// 用户设置
message C_UserSettings{
	string username = 1;
	string password = 2;
	int32 icon = 3;
}

message S_UserSettings{
	int32 ec = 1;
	string username = 2;
	string password = 3;
	int32 icon = 4;
}

// 存取款
message C_BankOper {
	int64 money = 1;	// 对银行操作,以银行为视角,正值代表存款,负值代表取款
}

message S_BankOper{
	int32 ec = 1;
	int64 money = 2;	// 操作后银行值
}

// 玩家金币变动
message S_Ntf_UserMoney{
	uint64 userId = 1;	// 变动的玩家
	int32 reason = 2;	// 变动原因
	int64 money  = 3;	// 变动后金币数
}
