public static void CreateCharacter(KBEngine.Packet packet) { var inpb = packet.protoBody as CGCreateCharacter; var au = GCCreateCharacter.CreateBuilder(); var role = RolesInfo.CreateBuilder(); role.Name = inpb.PlayerName; role.PlayerId = 100; //playerId++; role.Level = 1; role.Job = inpb.Job; var msg = role.Build(); ServerData.Instance.playerInfo.Roles = RolesInfo.CreateBuilder(msg).Build(); var dress = new int[] { 97, 68, 69, 70, 71, 72, }; int id = 1; var pinfo = ServerData.Instance.playerInfo; foreach (var d in dress) { var pkinfo = PackInfo.CreateBuilder(); var pkEntry = PackEntry.CreateBuilder(); pkEntry.Id = id++; pkEntry.BaseId = d; pkEntry.GoodsType = 1; pkEntry.Level = 1; pkinfo.PackEntry = pkEntry.Build(); pinfo.AddDressInfo(pkinfo); } var cinfo = GCCopyInfo.CreateBuilder(); var cin = CopyInfo.CreateBuilder(); cin.Id = 209; cin.IsPass = true; cinfo.AddCopyInfo(cin); var msg2 = cinfo.Build(); pinfo.CopyInfos = msg2; au.AddRolesInfos(msg); ServerBundle.SendImmediate(au, packet.flowId); //投掷 跳跃 pinfo.Roles.Level = 10; AddSkillPoint(10); LevelUpSkill(3); LevelUpSkill(4); }
IEnumerator CreateCoroutine(string name, int job) { Log.Net("LoginInit::Create Char is " + name + " " + job); var packet = new KBEngine.PacketHolder(); CGCreateCharacter.Builder charCreate = CGCreateCharacter.CreateBuilder(); charCreate.Username = SaveGame.saveGame.GetDefaultUserName(); charCreate.Password = SaveGame.saveGame.GetDefaultPassword(); charCreate.PlayerName = name; charCreate.Job = (Job)(job); yield return(StartCoroutine(KBEngine.Bundle.sendSimple(this, charCreate, packet))); if (packet.packet.responseFlag == 0) { GCCreateCharacter createRes = packet.packet.protoBody as GCCreateCharacter; Log.Net("LoginInit::CreateCoroutine: create success"); if (SaveGame.saveGame.charInfo == null) { GCLoginAccount.Builder cinfo1 = GCLoginAccount.CreateBuilder(); SaveGame.saveGame.charInfo = cinfo1.BuildPartial(); } GCLoginAccount.Builder cinfo = GCLoginAccount.CreateBuilder(); foreach (RolesInfo ri in createRes.RolesInfosList) { cinfo.RolesInfosList.Add(ri); } SaveGame.saveGame.charInfo = cinfo.BuildPartial(); Log.Net("CharInfo set"); Log.Net("LoginInit::CreateCoroutine : " + SaveGame.saveGame.charInfo.RolesInfosCount); MyEventSystem.myEventSystem.PushEvent(MyEvent.EventType.CreateSuccess); } else { } }
public static void CreateCharacter(KBEngine.Packet packet) { var inpb = packet.protoBody as CGCreateCharacter; var au = GCCreateCharacter.CreateBuilder(); var role = RolesInfo.CreateBuilder(); role.Name = inpb.PlayerName; role.PlayerId = 100; //playerId++; role.Level = 1; role.Job = inpb.Job; var msg = role.Build(); ServerData.Instance.playerInfo.Roles = msg; var dress = new int[] { 97, 68, 69, 70, 71, 72, }; int id = 1; var pinfo = ServerData.Instance.playerInfo; foreach (var d in dress) { var pkinfo = PackInfo.CreateBuilder(); var pkEntry = PackEntry.CreateBuilder(); pkEntry.Id = id++; pkEntry.BaseId = d; pkEntry.GoodsType = 1; pkEntry.Level = 1; pkinfo.PackEntry = pkEntry.Build(); pinfo.AddDressInfo(pkinfo); } au.AddRolesInfos(msg); ServerBundle.SendImmediate(au, packet.flowId); }