//发送飞鸽信息 private void Send(PigeonInfo info) { short msgLen = 28; msgLen += (short)(Coding.GetDefauleCoding().GetBytes(info.name).Length + 1); msgLen += 17; msgLen += (short)(Coding.GetDefauleCoding().GetBytes(info.text).Length + 1); GameBase.Network.PacketOut outpack = new GameBase.Network.PacketOut(); outpack.WriteInt16(msgLen); outpack.WriteInt16(1004); outpack.WriteInt32(0xffffff); outpack.WriteInt32(2017); outpack.WriteInt32(1419); outpack.WriteInt32(-1); outpack.WriteInt32(0); outpack.WriteByte(4); //四个字符串数组 outpack.WriteString(info.name); outpack.WriteString("ALLUSERS"); outpack.WriteString("1241350"); outpack.WriteString(info.text); outpack.WriteByte(0); outpack.WriteByte(0); outpack.WriteByte(0); UserEngine.Instance().BrocatBuffer(outpack.Flush()); }
public void SendGuanJueInfo(PlayerObject play) { // byte[] data1 = { 25, 0, 247, 3, 0, 0, 0, 0, 113, 0, 1, 12, 49, 32, 45, 49, 32, 51, 48, 48, 48, 48, 48, 48, 0 }; //捐献的 ulong guanjue = play.GetBaseAttr().guanjue; byte[] byte_ = Coding.GetDefauleCoding().GetBytes(guanjue.ToString()); GameBase.Network.PacketOut outpack = new GameBase.Network.PacketOut(play.GetGamePackKeyEx()); outpack.WriteUInt16((ushort)(byte_.Length + 4 + 14)); outpack.WriteUInt16(1015); outpack.WriteUInt32(0); outpack.WriteUInt16(113); outpack.WriteByte(1); //长度-- outpack.WriteByte((byte)(byte_.Length + 5)); String sjuewei = ((byte)play.GetGuanJue()).ToString(); byte[] jueweibyte_ = Coding.GetDefauleCoding().GetBytes(sjuewei); outpack.WriteByte(jueweibyte_[0]); //爵位 outpack.WriteByte(32); //分隔符 outpack.WriteByte(45); outpack.WriteByte(49); outpack.WriteByte(32); //分隔符 outpack.WriteBuff(byte_); outpack.WriteByte(0); play.SendData(outpack.Flush()); }
public void GetFriendInfo(int playerid) { PlayerObject obj = UserEngine.Instance().FindPlayerObjectToPlayerId(playerid); if (obj == null) { return; } GameBase.Network.PacketOut outpack = new GameBase.Network.PacketOut(play.GetGamePackKeyEx()); outpack.WriteUInt16(52); outpack.WriteUInt16(2033); outpack.WriteInt32(playerid); outpack.WriteUInt32(obj.GetBaseAttr().lookface); outpack.WriteByte(obj.GetBaseAttr().level); outpack.WriteByte(obj.GetBaseAttr().profession); //职业 outpack.WriteInt32(0); outpack.WriteInt16(0); outpack.WriteByte(206); outpack.WriteByte(222); byte[] data = new byte[30]; outpack.WriteBuff(data); play.SendData(outpack.Flush()); }
public override bool Run() { bool ret = base.Run(); //距离超出- if (!this.GetPoint().CheckVisualDistance(mPlay.GetCurrentX(), mPlay.GetCurrentY(), DIS)) { mPlay.GetTimerSystem().DeleteStatus(GameStruct.RoleStatus.STATUS_WANGNIANWULING); return false; } //刷新周围对象以便寻找目标 if (this.GetAi().GetTargetObject() == null) { if (System.Environment.TickCount - mnRefreshTick > REFRESHTIME) { this.RefreshVisibleObject(); mnRefreshTick = System.Environment.TickCount; } } if (mAddHP_Time.ToNextTime()) { if (mPlay.GetBaseAttr().life < mPlay.GetBaseAttr().life_max) { int nAddHP = (int)(mPlay.GetBaseAttr().life_max * 0.05);//百分之五的血量 mPlay.ChangeAttribute(GameStruct.UserAttribute.LIFE, nAddHP, true); NetMsg.MsgMonsterMagicInjuredInfo magicattack = new NetMsg.MsgMonsterMagicInjuredInfo(); magicattack.roleid = this.GetTypeId(); magicattack.role_x = this.GetCurrentX(); magicattack.role_y = this.GetCurrentY(); magicattack.tag = 21; magicattack.magicid = 6055; magicattack.magiclv = 0; magicattack.monsterid = mPlay.GetTypeId(); magicattack.injuredvalue = (uint)nAddHP; this.BrocatBuffer(magicattack.GetBuffer()); byte[] data2 = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; GameBase.Network.PacketOut outpack = new GameBase.Network.PacketOut(); outpack.WriteUInt16(88); outpack.WriteUInt16(1105); outpack.WriteUInt32(this.GetTypeId()); outpack.WriteUInt32(mPlay.GetTypeId()); outpack.WriteUInt16(6055); //技能id outpack.WriteUInt16(0);//技能等级 outpack.WriteByte(this.GetDir()); outpack.WriteByte(1); //类型 outpack.WriteUInt32(0); outpack.WriteUInt32(0); outpack.WriteUInt32(0); outpack.WriteUInt16(0); outpack.WriteUInt32(mPlay.GetTypeId()); outpack.WriteInt32(nAddHP); outpack.WriteBuff(data2); this.BrocatBuffer(outpack.Flush()); //NetMsg.MsgGroupM;agicAttackInfo magicattackex = new NetMsg.MsgGroupMagicAttackInfo(); //magicattackex.nID = this.GetTypeId(); //magicattackex.nX = this.GetCurrentX(); //magicattackex.nY = this.GetCurrentX(); //magicattackex.nMagicID = 6055; //magicattackex.nMagicLv = 0; //magicattackex.bDir = this.GetDir(); //this.BrocatBuffer(magicattackex.GetBuffer()); } } return ret; }
public override bool Run() { bool ret = base.Run(); //距离超出- if (!this.GetPoint().CheckVisualDistance(mPlay.GetCurrentX(), mPlay.GetCurrentY(), DIS)) { mPlay.GetTimerSystem().DeleteStatus(GameStruct.RoleStatus.STATUS_WANGNIANWULING); return(false); } //刷新周围对象以便寻找目标 if (this.GetAi().GetTargetObject() == null) { if (System.Environment.TickCount - mnRefreshTick > REFRESHTIME) { this.RefreshVisibleObject(); mnRefreshTick = System.Environment.TickCount; } } if (mAddHP_Time.ToNextTime()) { if (mPlay.GetBaseAttr().life < mPlay.GetBaseAttr().life_max) { int nAddHP = (int)(mPlay.GetBaseAttr().life_max * 0.05);//百分之五的血量 mPlay.ChangeAttribute(GameStruct.UserAttribute.LIFE, nAddHP, true); NetMsg.MsgMonsterMagicInjuredInfo magicattack = new NetMsg.MsgMonsterMagicInjuredInfo(); magicattack.roleid = this.GetTypeId(); magicattack.role_x = this.GetCurrentX(); magicattack.role_y = this.GetCurrentY(); magicattack.tag = 21; magicattack.magicid = 6055; magicattack.magiclv = 0; magicattack.monsterid = mPlay.GetTypeId(); magicattack.injuredvalue = (uint)nAddHP; this.BrocatBuffer(magicattack.GetBuffer()); byte[] data2 = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; GameBase.Network.PacketOut outpack = new GameBase.Network.PacketOut(); outpack.WriteUInt16(88); outpack.WriteUInt16(1105); outpack.WriteUInt32(this.GetTypeId()); outpack.WriteUInt32(mPlay.GetTypeId()); outpack.WriteUInt16(6055); //技能id outpack.WriteUInt16(0); //技能等级 outpack.WriteByte(this.GetDir()); outpack.WriteByte(1); //类型 outpack.WriteUInt32(0); outpack.WriteUInt32(0); outpack.WriteUInt32(0); outpack.WriteUInt16(0); outpack.WriteUInt32(mPlay.GetTypeId()); outpack.WriteInt32(nAddHP); outpack.WriteBuff(data2); this.BrocatBuffer(outpack.Flush()); //NetMsg.MsgGroupM;agicAttackInfo magicattackex = new NetMsg.MsgGroupMagicAttackInfo(); //magicattackex.nID = this.GetTypeId(); //magicattackex.nX = this.GetCurrentX(); //magicattackex.nY = this.GetCurrentX(); //magicattackex.nMagicID = 6055; //magicattackex.nMagicLv = 0; //magicattackex.bDir = this.GetDir(); //this.BrocatBuffer(magicattackex.GetBuffer()); } } return(ret); }
//发送飞鸽信息 private void Send(PigeonInfo info) { short msgLen = 28; msgLen += (short)(Coding.GetDefauleCoding().GetBytes(info.name).Length + 1); msgLen += 17; msgLen += (short)(Coding.GetDefauleCoding().GetBytes(info.text).Length + 1); GameBase.Network.PacketOut outpack = new GameBase.Network.PacketOut(); outpack.WriteInt16(msgLen); outpack.WriteInt16(1004); outpack.WriteInt32(0xffffff); outpack.WriteInt32(2017); outpack.WriteInt32(1419); outpack.WriteInt32(-1); outpack.WriteInt32(0); outpack.WriteByte(4); //四个字符串数组 outpack.WriteString(info.name); outpack.WriteString("ALLUSERS"); outpack.WriteString("1241350"); outpack.WriteString(info.text); outpack.WriteByte(0); outpack.WriteByte(0); outpack.WriteByte(0); UserEngine.Instance().BrocatBuffer(outpack.Flush()); }
public void GetFriendInfo(int playerid) { PlayerObject obj = UserEngine.Instance().FindPlayerObjectToPlayerId(playerid); if (obj == null) return; GameBase.Network.PacketOut outpack = new GameBase.Network.PacketOut(play.GetGamePackKeyEx()); outpack.WriteUInt16(52); outpack.WriteUInt16(2033); outpack.WriteInt32(playerid); outpack.WriteUInt32(obj.GetBaseAttr().lookface); outpack.WriteByte(obj.GetBaseAttr().level); outpack.WriteByte(obj.GetBaseAttr().profession); //职业 outpack.WriteInt32(0); outpack.WriteInt16(0); outpack.WriteByte(206); outpack.WriteByte(222); byte[] data = new byte[30]; outpack.WriteBuff(data); play.SendData(outpack.Flush()); }
public void SendGuanJueInfo(PlayerObject play) { // byte[] data1 = { 25, 0, 247, 3, 0, 0, 0, 0, 113, 0, 1, 12, 49, 32, 45, 49, 32, 51, 48, 48, 48, 48, 48, 48, 0 }; //捐献的 ulong guanjue = play.GetBaseAttr().guanjue; byte[] byte_ = Coding.GetDefauleCoding().GetBytes(guanjue.ToString()); GameBase.Network.PacketOut outpack = new GameBase.Network.PacketOut(play.GetGamePackKeyEx()); outpack.WriteUInt16((ushort)(byte_.Length + 4 + 14)); outpack.WriteUInt16(1015); outpack.WriteUInt32(0); outpack.WriteUInt16(113); outpack.WriteByte(1); //长度-- outpack.WriteByte((byte)(byte_.Length + 5)); String sjuewei = ((byte)play.GetGuanJue()).ToString(); byte[] jueweibyte_ = Coding.GetDefauleCoding().GetBytes(sjuewei); outpack.WriteByte(jueweibyte_[0]); //爵位 outpack.WriteByte(32); //分隔符 outpack.WriteByte(45); outpack.WriteByte(49); outpack.WriteByte(32); //分隔符 outpack.WriteBuff(byte_); outpack.WriteByte(0); play.SendData(outpack.Flush()); }