/// <summary> /// 声望军衔——设置等级 /// </summary> /// <param name="client"></param> /// <param name="level"></param> /// <returns></returns> public static void SetPrestigeLevel(GameClient client, int level) { //更新到数据库 Global.SaveRoleParamsInt32ValueWithTimeStampToDB(client, RoleParamName.ShengWangLevel, level, true); GameManager.logDBCmdMgr.AddDBLogInfo(-1, "声望等级", "GM", "系统", client.ClientData.RoleName, "修改", level, client.ClientData.ZoneID, client.strUserID, level, client.ServerId); EventLogManager.AddRoleEvent(client, OpTypes.Trace, OpTags.GM, LogRecordType.IntValueWithType, level, RoleAttributeType.ShengWangLevel); if (level > 0) { JingJiChangManager.getInstance().activeJunXianBuff(client, true); } //更新BufferData double[] actionParams = new double[1]; actionParams[0] = (double)level - 1; Global.UpdateBufferData(client, BufferItemTypes.MU_JINGJICHANG_JUNXIAN, actionParams, 0); ChengJiuManager.OnRoleJunXianChengJiu(client); Global.BroadcastClientMUShengWang(client, level); //通知自己 GameManager.ClientMgr.NotifySelfParamsValueChange(client, RoleCommonUseIntParamsIndexs.ShengWangLevel, level); //通知客户端属性变化 GameManager.ClientMgr.NotifyUpdateEquipProps(Global._TCPManager.MySocketListener, Global._TCPManager.TcpOutPacketPool, client); // 总生命值和魔法值变化通知(同一个地图才需要通知) GameManager.ClientMgr.NotifyOthersLifeChanged(Global._TCPManager.MySocketListener, Global._TCPManager.TcpOutPacketPool, client); // 军衔升级成功时,刷新相应的图标状态 client._IconStateMgr.CheckJingJiChangJunXian(client); client._IconStateMgr.CheckSpecialActivity(client); client._IconStateMgr.SendIconStateToClient(client); }
public static void SetPrestigeLevel(GameClient client, int level) { Global.SaveRoleParamsInt32ValueWithTimeStampToDB(client, "ShengWangLevel", level, true, "2020-12-12 12:12:12"); GameManager.logDBCmdMgr.AddDBLogInfo(-1, "声望等级", "GM", "系统", client.ClientData.RoleName, "修改", level, client.ClientData.ZoneID, client.strUserID, level, client.ServerId, null); EventLogManager.AddRoleEvent(client, OpTypes.Trace, OpTags.GM, LogRecordType.IntValueWithType, new object[] { level, RoleAttributeType.ShengWangLevel }); if (level > 0) { JingJiChangManager.getInstance().activeJunXianBuff(client, true); } Global.UpdateBufferData(client, BufferItemTypes.MU_JINGJICHANG_JUNXIAN, new double[] { (double)level - 1.0 }, 0, true); ChengJiuManager.OnRoleJunXianChengJiu(client); Global.BroadcastClientMUShengWang(client, level); GameManager.ClientMgr.NotifySelfParamsValueChange(client, RoleCommonUseIntParamsIndexs.ShengWangLevel, level); GameManager.ClientMgr.NotifyUpdateEquipProps(Global._TCPManager.MySocketListener, Global._TCPManager.TcpOutPacketPool, client); GameManager.ClientMgr.NotifyOthersLifeChanged(Global._TCPManager.MySocketListener, Global._TCPManager.TcpOutPacketPool, client, true, false, 7); client._IconStateMgr.CheckJingJiChangJunXian(client); client._IconStateMgr.CheckSpecialActivity(client); client._IconStateMgr.CheckEverydayActivity(client); client._IconStateMgr.SendIconStateToClient(client); }