2
0
Fork 0
mirror of https://github.com/GTA-ASM/SanAndreasUnity synced 2025-02-19 22:38:28 +00:00

properly detect gang member

This commit is contained in:
in0finite 2021-09-07 01:33:19 +02:00
parent 306a7fa55e
commit d7f0ec9d54
3 changed files with 19 additions and 15 deletions
Assets/Scripts
Behaviours
Importing/Items/Definitions

View file

@ -122,18 +122,13 @@ namespace SanAndreasUnity.Behaviours
{
Weapon weapon = null;
switch (ped.PedDef.DefaultType)
{
case PedestrianType.Cop:
weapon = ped.WeaponHolder.SetWeaponAtSlot(346, 0);
break;
case PedestrianType.Criminal:
weapon = ped.WeaponHolder.SetWeaponAtSlot(347, 0);
break;
case PedestrianType.GangMember:
weapon = ped.WeaponHolder.SetWeaponAtSlot(352, 0);
break;
}
var defaultType = ped.PedDef.DefaultType;
if (defaultType == PedestrianType.Cop
|| defaultType == PedestrianType.Criminal)
weapon = ped.WeaponHolder.SetWeaponAtSlot(WeaponId.Pistol, 0);
else if (defaultType.IsGangMember())
weapon = ped.WeaponHolder.SetWeaponAtSlot(WeaponId.MicroUzi, 0);
if (weapon != null)
{

View file

@ -1,4 +1,5 @@
using System.Collections.Generic;
using SanAndreasUnity.Importing.Items.Definitions;
using SanAndreasUnity.Importing.Paths;
using UnityEngine;
using SanAndreasUnity.Utilities;
@ -72,9 +73,9 @@ namespace SanAndreasUnity.Behaviours
return;
if (hitPed.PedDef != null &&
(hitPed.PedDef.DefaultType == Importing.Items.Definitions.PedestrianType.Criminal ||
hitPed.PedDef.DefaultType == Importing.Items.Definitions.PedestrianType.Cop ||
hitPed.PedDef.DefaultType == Importing.Items.Definitions.PedestrianType.GangMember))
(hitPed.PedDef.DefaultType == PedestrianType.Criminal ||
hitPed.PedDef.DefaultType == PedestrianType.Cop ||
hitPed.PedDef.DefaultType.IsGangMember()))
{
hitPedAi.TargetPed = dmgInfo.GetAttackerPed();
hitPedAi.Action = PedAction.Chasing;

View file

@ -31,6 +31,14 @@ namespace SanAndreasUnity.Importing.Items.Definitions
Gang8 = GangMember | 7
}
public static class PedestrianTypeExtensions
{
public static bool IsGangMember(this PedestrianType pedestrianType)
{
return (pedestrianType & PedestrianType.GangMember) != 0;
}
}
[Section("peds")]
public class PedestrianDef : Definition, IObjectDefinition
{