Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --Dynamic ignore distance
- --by Alundaio
- function set_danger_ignore_distance()
- local ret_ignore_distance = nil
- local night_vision = npc:night_vision_enabled()
- -- Check for Night
- if (level.get_time_hours() < 3 or level.get_time_hours() > 22) then
- -- Check for heavy rain
- if (level.rain_factor() >= 0.5) then
- ret_ignore_distance = {
- [danger_object.grenade] = 10,
- [danger_object.entity_corpse] = 35,
- [danger_object.entity_attacked] = 150,
- [danger_object.attacked] = 150,
- [danger_object.bullet_ricochet] = 50,
- [danger_object.enemy_sound] = 5,
- [danger_object.attack_sound] = 35,
- [danger_object.entity_death] = 20
- }
- return ret_ignore_distance
- -- If Night but no or little rain
- else
- -- If NPC has night_vision_enabled
- if (night_vision == false) then
- ret_ignore_distance = {
- [danger_object.grenade] = 20,
- [danger_object.entity_corpse] = 55,
- [danger_object.entity_attacked] = 200,
- [danger_object.attacked] = 200,
- [danger_object.bullet_ricochet] = 75,
- [danger_object.enemy_sound] = 10,
- [danger_object.attack_sound] = 45,
- [danger_object.entity_death] = 25
- }
- return ret_ignore_distance
- -- If NPC does not have night_vision_enabled
- else
- ret_ignore_distance = {
- [danger_object.grenade] = 30,
- [danger_object.entity_corpse] = 75,
- [danger_object.entity_attacked] = 275,
- [danger_object.attacked] = 275,
- [danger_object.bullet_ricochet] = 75,
- [danger_object.enemy_sound] = 25,
- [danger_object.attack_sound] = 55,
- [danger_object.entity_death] = 45
- }
- return ret_ignore_distance
- end
- end
- -- If Day
- else
- -- If Day and Heavy Rain
- if (level.rain_factor() >= 0.5) then
- ret_ignore_distance = {
- [danger_object.grenade] = 10,
- [danger_object.entity_corpse] = 45,
- [danger_object.entity_attacked] = 150,
- [danger_object.attacked] = 150,
- [danger_object.bullet_ricochet] = 50,
- [danger_object.enemy_sound] = 5,
- [danger_object.attack_sound] = 35,
- [danger_object.entity_death] = 20
- }
- return ret_ignore_distance
- -- If Day and no or little rain
- else
- ret_ignore_distance = {
- [danger_object.grenade] = 30,
- [danger_object.entity_corpse] = 100,
- [danger_object.entity_attacked] = 300,
- [danger_object.attacked] = 300,
- [danger_object.bullet_ricochet] = 100,
- [danger_object.enemy_sound] = 30,
- [danger_object.attack_sound] = 60,
- [danger_object.entity_death] = 50
- }
- return ret_ignore_distance
- end
- end
- --If none of the above, then set defaults
- ret_ignore_distance = {
- [danger_object.grenade] = 30,
- [danger_object.entity_corpse] = 100,
- [danger_object.entity_attacked] = 300,
- [danger_object.attacked] = 300,
- [danger_object.bullet_ricochet] = 100,
- [danger_object.enemy_sound] = 30,
- [danger_object.attack_sound] = 60,
- [danger_object.entity_death] = 50
- }
- return ret_ignore_distance
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement