Add ped blip sync
This commit is contained in:
@ -338,6 +338,8 @@ namespace RageCoop.Client
|
|||||||
c.ModelHash=packet.ModelHash;
|
c.ModelHash=packet.ModelHash;
|
||||||
c.LastStateSynced = Main.Ticked;
|
c.LastStateSynced = Main.Ticked;
|
||||||
c.BlipColor=packet.BlipColor;
|
c.BlipColor=packet.BlipColor;
|
||||||
|
c.BlipSprite=packet.BlipSprite;
|
||||||
|
c.BlipScale=packet.BlipScale;
|
||||||
}
|
}
|
||||||
private static void VehicleSync(Packets.VehicleSync packet)
|
private static void VehicleSync(Packets.VehicleSync packet)
|
||||||
{
|
{
|
||||||
|
@ -66,10 +66,18 @@ namespace RageCoop.Client
|
|||||||
if (c.IsPlayer)
|
if (c.IsPlayer)
|
||||||
{
|
{
|
||||||
packet.BlipColor=Scripting.API.Config.BlipColor;
|
packet.BlipColor=Scripting.API.Config.BlipColor;
|
||||||
|
packet.BlipSprite=Scripting.API.Config.BlipSprite;
|
||||||
|
packet.BlipScale=Scripting.API.Config.BlipScale;
|
||||||
}
|
}
|
||||||
else if ((b = p.AttachedBlip) !=null)
|
else if ((b = p.AttachedBlip) !=null)
|
||||||
{
|
{
|
||||||
packet.BlipColor=b.Color;
|
packet.BlipColor=b.Color;
|
||||||
|
packet.BlipSprite=b.Sprite;
|
||||||
|
|
||||||
|
if (packet.BlipSprite==BlipSprite.PoliceOfficer || packet.BlipSprite==BlipSprite.PoliceOfficer2)
|
||||||
|
{
|
||||||
|
packet.BlipScale=0.5f;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Send(packet, ConnectionChannel.PedSync);
|
Send(packet, ConnectionChannel.PedSync);
|
||||||
}
|
}
|
||||||
|
@ -58,6 +58,17 @@ namespace RageCoop.Client.Scripting
|
|||||||
/// Get or set player's blip color
|
/// Get or set player's blip color
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static BlipColor BlipColor { get; set; } = BlipColor.White;
|
public static BlipColor BlipColor { get; set; } = BlipColor.White;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Get or set player's blip sprite
|
||||||
|
/// </summary>
|
||||||
|
public static BlipSprite BlipSprite { get; set; } = BlipSprite.Standard;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Get or set scale of player's blip
|
||||||
|
/// </summary>
|
||||||
|
public static float BlipScale { get; set; } = 1;
|
||||||
|
|
||||||
}
|
}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Base events for RageCoop
|
/// Base events for RageCoop
|
||||||
|
@ -49,6 +49,8 @@ namespace RageCoop.Client
|
|||||||
internal string Username = "N/A";
|
internal string Username = "N/A";
|
||||||
internal Blip PedBlip = null;
|
internal Blip PedBlip = null;
|
||||||
internal BlipColor BlipColor = (BlipColor)255;
|
internal BlipColor BlipColor = (BlipColor)255;
|
||||||
|
internal BlipSprite BlipSprite = (BlipSprite)0;
|
||||||
|
internal float BlipScale=1;
|
||||||
internal bool DisplayNameTag { get; set; } = true;
|
internal bool DisplayNameTag { get; set; } = true;
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
@ -118,7 +120,7 @@ namespace RageCoop.Client
|
|||||||
PedBlip.Delete();
|
PedBlip.Delete();
|
||||||
PedBlip=null;
|
PedBlip=null;
|
||||||
}
|
}
|
||||||
else if (PedBlip==null)
|
else if (((byte)BlipColor != 255) && PedBlip==null)
|
||||||
{
|
{
|
||||||
PedBlip=MainPed.AddBlip();
|
PedBlip=MainPed.AddBlip();
|
||||||
if (IsPlayer)
|
if (IsPlayer)
|
||||||
@ -137,6 +139,8 @@ namespace RageCoop.Client
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
PedBlip.Color=BlipColor;
|
PedBlip.Color=BlipColor;
|
||||||
|
PedBlip.Sprite=BlipSprite;
|
||||||
|
PedBlip.Scale=BlipScale;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -331,8 +331,8 @@ namespace RageCoop.Client
|
|||||||
allPeds = World.GetAllPeds();
|
allPeds = World.GetAllPeds();
|
||||||
allVehicles=World.GetAllVehicles();
|
allVehicles=World.GetAllVehicles();
|
||||||
allProjectiles=World.GetAllProjectiles();
|
allProjectiles=World.GetAllProjectiles();
|
||||||
vehStatesPerFrame=allVehicles.Length*5/(int)Game.FPS+1;
|
vehStatesPerFrame=allVehicles.Length*2/(int)Game.FPS+1;
|
||||||
pedStatesPerFrame=allPeds.Length*5/(int)Game.FPS+1;
|
pedStatesPerFrame=allPeds.Length*2/(int)Game.FPS+1;
|
||||||
|
|
||||||
if (Main.Ticked%50==0)
|
if (Main.Ticked%50==0)
|
||||||
{
|
{
|
||||||
|
@ -80,6 +80,14 @@ namespace RageCoop.Core
|
|||||||
{
|
{
|
||||||
bytes.AddRange(BitConverter.GetBytes(i));
|
bytes.AddRange(BitConverter.GetBytes(i));
|
||||||
}
|
}
|
||||||
|
public static void AddShort(this List<byte> bytes, short i)
|
||||||
|
{
|
||||||
|
bytes.AddRange(BitConverter.GetBytes(i));
|
||||||
|
}
|
||||||
|
public static void AddUshort(this List<byte> bytes, ushort i)
|
||||||
|
{
|
||||||
|
bytes.AddRange(BitConverter.GetBytes(i));
|
||||||
|
}
|
||||||
public static void AddLong(this List<byte> bytes, long i)
|
public static void AddLong(this List<byte> bytes, long i)
|
||||||
{
|
{
|
||||||
bytes.AddRange(BitConverter.GetBytes(i));
|
bytes.AddRange(BitConverter.GetBytes(i));
|
||||||
|
@ -28,6 +28,8 @@ namespace RageCoop.Core
|
|||||||
public byte WeaponTint { get;set; }
|
public byte WeaponTint { get;set; }
|
||||||
public BlipColor BlipColor { get; set; } = (BlipColor)255;
|
public BlipColor BlipColor { get; set; } = (BlipColor)255;
|
||||||
|
|
||||||
|
public BlipSprite BlipSprite { get; set; }= 0;
|
||||||
|
public float BlipScale { get; set; } = 1;
|
||||||
|
|
||||||
public override void Pack(NetOutgoingMessage message)
|
public override void Pack(NetOutgoingMessage message)
|
||||||
{
|
{
|
||||||
@ -67,6 +69,11 @@ namespace RageCoop.Core
|
|||||||
byteArray.Add(WeaponTint);
|
byteArray.Add(WeaponTint);
|
||||||
|
|
||||||
byteArray.Add((byte)BlipColor);
|
byteArray.Add((byte)BlipColor);
|
||||||
|
if ((byte)BlipColor!=255)
|
||||||
|
{
|
||||||
|
byteArray.AddUshort((ushort)BlipSprite);
|
||||||
|
byteArray.AddFloat(BlipScale);
|
||||||
|
}
|
||||||
|
|
||||||
byte[] result = byteArray.ToArray();
|
byte[] result = byteArray.ToArray();
|
||||||
message.Write(result.Length);
|
message.Write(result.Length);
|
||||||
@ -104,6 +111,12 @@ namespace RageCoop.Core
|
|||||||
WeaponTint=reader.ReadByte();
|
WeaponTint=reader.ReadByte();
|
||||||
|
|
||||||
BlipColor=(BlipColor)reader.ReadByte();
|
BlipColor=(BlipColor)reader.ReadByte();
|
||||||
|
|
||||||
|
if ((byte)BlipColor!=255)
|
||||||
|
{
|
||||||
|
BlipSprite=(BlipSprite)reader.ReadUShort();
|
||||||
|
BlipScale=reader.ReadFloat();
|
||||||
|
}
|
||||||
#endregion
|
#endregion
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user