public void RPC_RoleEnterPlanes(CSCommon.Data.RoleDetail roledata, Iocp.NetConnection connect, RPC.RPCForwardInfo fwd) { RPC.PackageWriter pkg = new RPC.PackageWriter(); var role = GetRole(roledata.RoleId); if (role == null)//创建角色时调用 { role = TryCreatePlaye(roledata); if (role == null) { return; } } else { role.RoleData.Camp = roledata.Camp; role.RoleData.Name = roledata.RoleName; role.RoleData.Level = roledata.RoleLevel; role.RoleData.Profession = roledata.Profession; role.RoleData.PlanesId = roledata.PlanesId; role.RoleData.MapName = roledata.MapName; } role.PlanesConnect = connect as Iocp.TcpConnect; var rank = GetRank(roledata.RoleId); if (rank == null) { Log.Log.Common.Info("GetRank is null{0}", roledata.RoleId); pkg.Write(new RankData()); } pkg.Write(rank); DB_RoleEnteInitMessages(role); pkg.DoReturnCommand2(connect, fwd.ReturnSerialId); return; }
public RoleSyncInfo(PlayerInstance pi) { RoleDetail rd = pi.PlayerData.RoleDetail; RoleId = rd.RoleId; RoleName = rd.RoleName; RoleLevel = rd.RoleLevel; Camp = rd.Camp; Sex = rd.Sex; Profession = rd.Profession; LocationX = rd.LocationX; LocationZ = rd.LocationZ; Direction = rd.Direction; RoleHp = rd.RoleHp; RoleMaxHp = rd.RoleMaxHp; var equip = pi.EquipBag.FindItemByPos((int)CSCommon.eEquipType.Soul); if (equip == null) { equip = pi.EquipBag.FindItemByPos((int)CSCommon.eEquipType.Weapon); } WeaponId = equip.ItemTemplate.id; Speed = rd.RoleSpeed; }
// private void DB_CreatStranger(CSCommon.Data.StrangerInfo stranger) // { // // 产生insert语句 // string condition = "EnemyerId = " + stranger.StrangerId; // ServerFrame.DB.DBOperator dbOp = ServerFrame.DB.DBConnect.InsertData(condition, stranger, true); // mDBConnect._ExecuteInsert(dbOp); // return; // } // // private void DB_SaveStranger(CSCommon.Data.StrangerInfo stranger) // { // var condition = "EnemyerId=\'" + (stranger.StrangerId); // var dbOp = ServerFrame.DB.DBConnect.UpdateData(condition, stranger, null); // mDBConnect._ExecuteUpdate(dbOp); // return; // } // // private void DB_DelStranger(CSCommon.Data.StrangerInfo stranger) // { // //产生Destroy语句 // string condition = "EnemyerId =" + stranger.StrangerId; // ServerFrame.DB.DBOperator dbOp = ServerFrame.DB.DBConnect.DestroyData(condition, stranger); // mDBConnect._ExecuteDestroy(dbOp); // return; // } #endregion #region 创建加载角色 public UserRole TryCreatePlaye(CSCommon.Data.RoleDetail pd) { UserRole role = new UserRole(); role.RoleData.RoleId = pd.RoleId; role.RoleData.Name = pd.RoleName; role.RoleData.Sex = pd.Sex; role.RoleData.Level = pd.RoleLevel; //change role.RoleData.Camp = pd.Camp; //change role.RoleData.Profession = pd.Profession; //change role.RoleData.PlanesId = pd.PlanesId; //change role.RoleData.MapName = pd.MapName; string condition = "RoleId=" + pd.RoleId; ServerFrame.DB.DBOperator dbOp = ServerFrame.DB.DBConnect.InsertData(condition, role.RoleData, false); if (false == mDBConnect._ExecuteInsert(dbOp)) { Log.Log.Common.Print("create rolecom failed"); return(null); } mRoles.Add(pd.RoleId, role); RankData rd = new RankData(); rd.RoleId = pd.RoleId; rd.PlanesId = pd.PlanesId; rd.RoleName = pd.RoleName; rd.Level = pd.RoleLevel; rd.Fighting = 0; rd.Exploit = 0; rd.ExploitRank = 0; UPdateRankData(rd); return(role); }