public override int ProcessCCreateRole(CCreateRole protocol) { Session session = Session.Get(protocol); SCreateRole result = new SCreateRole(); result.Argument.Name = protocol.Argument.Name; long roleid = _trole.Insert(new BRoleData() { Name = protocol.Argument.Name }); // duplicate name check if (false == _trolename.TryAdd(protocol.Argument.Name, new BRoleId() { Id = roleid })) { result.ResultCode = SCreateRole.ResultFaild; session.SendResponse(result); return(Zeze.Transaction.Procedure.LogicError); } // initialize role data Game.App.Instance.Game_Bag.GetBag(roleid).SetCapacity(50); result.Argument.Id = roleid; result.ResultCode = SCreateRole.ResultSuccess; session.SendResponse(result); return(Zeze.Transaction.Procedure.Success); }
public override object Clone() { CCreateRole obj = new CCreateRole(); return(obj); }