public void Update() { for (int i = 0; i < zombieList.Count; i++) { if (zombieList[i].pedEntity.IsAlive != true || (Extensions.DistanceBetween(zombieList[i].pedEntity, Game.Player.Character) > maxSpawnDistance) || zombieList[i].pedEntity == null) { zombieList.RemoveAt(i); continue; } else { zombieList[i].ticksSinceLastUpdate++; if (zombieList[i].ticksSinceLastUpdate >= zombieList[i].ticksBetweenUpdates) { zombieList[i].Update(); zombieList[i].ticksSinceLastUpdate = 0; } } } }
public override void Update() { if (pedEntity.IsOnFire == true) { pedEntity.Kill(); } if (pedEntity.IsAlive != true || Extensions.DistanceBetween(pedEntity, Game.Player.Character) > 100) { if (pedEntity.CurrentBlip.Exists()) { pedEntity.CurrentBlip.Remove(); } } if (Population.zombieRunners && pedEntity.IsRunning) { Function.Call(Hash.STOP_PED_SPEAKING, pedEntity.Handle, 0); Function.Call(Hash.DISABLE_PED_PAIN_AUDIO, pedEntity.Handle, false); Function.Call(Hash.PLAY_PAIN, pedEntity.Handle, 8, 0, 0); Function.Call(Hash.PLAY_FACIAL_ANIM, pedEntity.Handle, "burning_1", "facials@gen_male@base"); } else { Function.Call(Hash.STOP_PED_SPEAKING, pedEntity.Handle, 1); Function.Call(Hash.DISABLE_PED_PAIN_AUDIO, pedEntity.Handle, true); } if (Function.Call <bool>(Hash.IS_AMBIENT_SPEECH_PLAYING, pedEntity.Handle)) { Function.Call(Hash.STOP_CURRENT_PLAYING_AMBIENT_SPEECH, pedEntity.Handle); } if (isRunner == true) { if (!Function.Call <bool>(Hash.HAS_ANIM_SET_LOADED, "move_m@injured")) { Function.Call(Hash.REQUEST_ANIM_SET, "move_m@injured"); } Function.Call(Hash.SET_PED_MOVEMENT_CLIPSET, pedEntity.Handle, "move_m@injured", 0x3E800000); } else { if (!Function.Call <bool>(Hash.HAS_ANIM_SET_LOADED, "move_m@drunk@verydrunk")) { Function.Call(Hash.REQUEST_ANIM_SET, "move_m@drunk@verydrunk"); } Function.Call(Hash.SET_PED_MOVEMENT_CLIPSET, pedEntity.Handle, "move_m@drunk@verydrunk", 0x3E800000); } if (target == null) { target = FindTarget(); if (target == null && newSearch == true) { pedEntity.Task.WanderAround(); newSearch = false; return; } } else { if (target.IsAlive != true || Extensions.DistanceBetween(pedEntity, target) >= 80 || target.RelationshipGroup == Relationships.ZombieGroup) { target = null; newSearch = true; target = FindTarget(); if (target == null && newSearch == true) { pedEntity.Task.WanderAround(); newSearch = false; return; } } if (target != null && (Extensions.DistanceBetween(pedEntity, target) <= 1.2) && !target.IsInVehicle()) { if (target.IsDead == true) { if (!Function.Call <bool>(Hash.IS_ENTITY_PLAYING_ANIM, pedEntity, "amb@world_human_bum_wash@male@high@idle_a", "idle_b", 3)) { pedEntity.Task.PlayAnimation("amb@world_human_bum_wash@male@high@idle_a", "idle_b", 8f, -1, GTA.AnimationFlags.Loop); Task.Delay(8); } } if (!Function.Call <bool>(Hash.IS_ENTITY_PLAYING_ANIM, pedEntity, "rcmbarry", "bar_1_teleport_aln", 3)) { Vector3 rotationTarget = pedEntity.Rotation - Game.Player.Character.Rotation; pedEntity.Rotation = rotationTarget; pedEntity.Task.PlayAnimation("rcmbarry", "bar_1_teleport_aln", 8f, 1000, (AnimationFlags)16); Task.Delay(8); if (target == Game.Player.Character) { target.ApplyDamage(50); target.Kill(); } else { target.ApplyDamage(50); int rnd = RandoMath.CachedRandom.Next(0, 2); if (rnd == 0) { Function.Call(Hash.SET_PED_TO_RAGDOLL, target.Handle, 3000, 0, 0, false, false, false); target.Weapons.Drop(); if (target.CurrentBlip.Exists()) { target.CurrentBlip.Remove(); } Population.Infect(target); target.LeaveGroup(); target.Weapons.Drop(); target = null; newSearch = true; target = FindTarget(); if (target == null && newSearch == true) { pedEntity.Task.WanderAround(); newSearch = false; return; } } else { target.Weapons.Drop(); target.Kill(); if (target.CurrentBlip.Exists()) { target.CurrentBlip.Remove(); } } } } } else { if (isRunner == true) { if (!Function.Call <bool>(Hash.HAS_ANIM_SET_LOADED, "move_m@injured")) { Function.Call(Hash.REQUEST_ANIM_SET, "move_m@injured"); } Function.Call(Hash.SET_PED_MOVEMENT_CLIPSET, pedEntity.Handle, "move_m@injured", 0x3E800000); pedEntity.Task.Climb(); Function.Call(Hash.TASK_GO_TO_ENTITY, pedEntity.Handle, target.Handle, -1, 0f, 5f, 1073741824, 0); } else { pedEntity.Task.Climb(); pedEntity.Task.GoTo(target.Position); } } } }
public void Update() { Game.DisableControlThisFrame(85, GTA.Control.VehicleRadioWheel); Game.DisableControlThisFrame(81, GTA.Control.VehicleNextRadio); Game.DisableControlThisFrame(82, GTA.Control.VehiclePrevRadio); Game.DisableControlThisFrame(333, GTA.Control.RadioWheelLeftRight); Game.DisableControlThisFrame(332, GTA.Control.RadioWheelUpDown); Function.Call(Hash.DISABLE_CONTROL_ACTION, 2, 19, true); Function.Call(Hash.DESTROY_MOBILE_PHONE); Function.Call(Hash.SET_VEHICLE_POPULATION_BUDGET, 0); Function.Call(Hash.SET_PED_POPULATION_BUDGET, 0); Function.Call(Hash.SET_SCENARIO_PED_DENSITY_MULTIPLIER_THIS_FRAME, 0f); Function.Call(Hash.SET_VEHICLE_DENSITY_MULTIPLIER_THIS_FRAME, 0f); Function.Call(Hash.SET_RANDOM_VEHICLE_DENSITY_MULTIPLIER_THIS_FRAME, 0f); Function.Call(Hash.SET_PARKED_VEHICLE_DENSITY_MULTIPLIER_THIS_FRAME, 0f); Function.Call(Hash.STOP_ALARM, "PRISON_ALARMS", true); Function.Call(Hash.SET_AUDIO_FLAG, "PoliceScannerDisabled", true); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "re_prison"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "am_prison"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "gb_biker_free_prisoner"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "re_prisonvanbreak"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "am_vehicle_spawn"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "am_taxi"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "audiotest"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "freemode"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "re_prisonerlift"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "am_prison"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "re_lossantosintl"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "re_armybase"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "restrictedareas"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "stripclub"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "re_gangfight"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "re_gang_intimidation"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "spawn_activities"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "am_vehiclespawn"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "traffick_air"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "traffick_ground"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "emergencycall"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "emergencycalllauncher"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "clothes_shop_sp"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "gb_rob_shop"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "gunclub_shop"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "hairdo_shop_sp"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "re_shoprobbery"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "shop_controller"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "re_crashrescue"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "re_rescuehostage"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "fm_mission_controller"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "player_scene_m_shopping"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "shoprobberies"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "re_atmrobbery"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "ob_vend1"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "ob_vend2"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "cellphone_controller"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "blip_controller"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "ambientblimp"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "blimptest"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "re_abandonedcar"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "director_mode"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "replay_controller"); Function.Call(Hash.TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME, "rerecord_recording"); Function.Call(Hash.START_AUDIO_SCENE, "FBI_HEIST_H5_MUTE_AMBIENCE_SCENE"); Function.Call(Hash.START_AUDIO_SCENE, "MIC1_RADIO_DISABLE"); Function.Call((Hash)0x808519373FD336A3, true); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_AFB_ALARM_SPEECH", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_COUNTRYSIDE_CHILEAD_CABLE_CAR_LINE", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_COUNTRYSIDE_DISTANT_CARS_ZONE_01", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_COUNTRYSIDE_DISTANT_CARS_ZONE_02", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_COUNTRYSIDE_DISTANT_CARS_ZONE_03", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_COUNTRYSIDE_PRISON_01_ANNOUNCER_ALARM", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_COUNTRYSIDE_PRISON_01_ANNOUNCER_GENERAL", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_COUNTRYSIDE_PRISON_01_ANNOUNCER_WARNING", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_COUNTRY_SAWMILL", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_DISTANT_SASQUATCH", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_DISTANT_VEHICLES_CITY_CENTRE", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_DLC_HEISTS_BIOLAB", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_DLC_HEIST_BIOLAB_GARAGE", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_DLC_HEIST_POLICE_STATION_BOOST", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_DMOD_TRAILER_01", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_EPSILONISM_01_HILLS", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_FBI_HEIST_SPRINKLER_FIRES_A_01", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_FIB_HEIST_JANITOR_WALKIE_TALKIE", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_PAPARAZZO_02_AMBIENCE", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_PORT_OF_LS_UNDERWATER_CREAKS", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_SAWMILL_CONVEYOR_01", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_SOL_1_FACTORY_AREA_CONSTRUCTIONS", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_SPECIAL_UFO_01", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_SPECIAL_UFO_02", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_SPECIAL_UFO_03", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_UNDERWATER_EXILE_01_PLANE_WRECK", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_YANKTON_CEMETARY", 0, 0); Function.Call(Hash.CLEAR_AMBIENT_ZONE_LIST_STATE, "AZ_strp3stge_SP", 0, 0); Function.Call(Hash.SUPPRESS_SHOCKING_EVENTS_NEXT_FRAME); Function.Call(Hash.SUPPRESS_AGITATION_EVENTS_NEXT_FRAME); Prop[] GetProps = World.GetNearbyProps(Game.Player.Character.Position, 10000f); for (int i = 0; i < GetProps.Length; i++) { Function.Call(Hash.SET_STATE_OF_CLOSEST_DOOR_OF_TYPE, GetProps[i].Model.Hash, GetProps[i].Position.X, GetProps[i].Position.Y, GetProps[i].Position.Z, false, 0, 0); } Ped[] all_ped = World.GetAllPeds(); if (all_ped.Length > 0) { foreach (Ped ped in all_ped) { if (ped.IsAlive != true) { if (ped.CurrentBlip.Exists()) { ped.CurrentBlip.Remove(); } } if (Extensions.DistanceBetween(ped, Game.Player.Character) > (Population.maxSpawnDistance + 30) && ped.RelationshipGroup == Relationships.ZombieGroup) { if (ped.CurrentBlip.Exists()) { ped.CurrentBlip.Remove(); } ped.Delete(); } if (Extensions.DistanceBetween(ped, Game.Player.Character) > 1000 && ped.RelationshipGroup != Relationships.PlayerGroup) { if (ped.CurrentBlip.Exists()) { ped.CurrentBlip.Remove(); } ped.Delete(); } } } Vehicle[] all_vecs = World.GetAllVehicles(); if (all_vecs.Length > 0) { foreach (Vehicle vehicle in all_vecs) { if (vehicle != Character.playerVehicle) { if (Extensions.DistanceBetween(vehicle, Game.Player.Character) > (Population.maxSpawnDistance + 30)) { if (vehicle.CurrentBlip.Exists()) { vehicle.CurrentBlip.Remove(); } vehicle.Delete(); } } } } }