Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local _hts_PlayerInventory_init = PlayerInventory.init
- function PlayerInventory:init(...)
- _hts_PlayerInventory_init(self, ...)
- self._gunshield_unit = nil
- self.gun_shield_enabler = false
- end
- local _hts_PlayerInventory_place_selection = PlayerInventory._place_selection
- function PlayerInventory:_place_selection(selection_index, is_equip)
- _hts_PlayerInventory_place_selection(self, selection_index, is_equip)
- if not self:is_this_able_to_gunshield() then
- return
- end
- if is_equip then
- self:give_gunshield()
- else
- self:hide_gunshield()
- end
- end
- function PlayerInventory:get_gunshield_unit()
- return self._gunshield_unit
- end
- function PlayerInventory:check_gunshield_unit()
- return self._gunshield_unit
- end
- function PlayerInventory:give_gunshield()
- if not self:is_this_able_to_gunshield() then
- return
- end
- self:hide_gunshield()
- local selection = self._available_selections[self._equipped_selection]
- if not selection then
- return
- end
- local equipped_primary = managers.blackmarket:equipped_primary()
- local equipped_secondary = managers.blackmarket:equipped_secondary()
- local weapon_unit = selection.unit
- local factory_id = weapon_unit:base()._factory_id
- local weapon_id = managers.weapon_factory:get_weapon_id_by_factory_id(factory_id)
- local equipped_primary = managers.blackmarket:equipped_primary()
- if equipped_primary.weapon_id == weapon_id and self.gun_shield_check() == true then
- if (weapon_id ~= "predatorshield") and (weapon_id ~= "predatorshield_secondary") then
- --local equipped_primary = managers.blackmarket:equipped_primary()
- --local equipped_secondary = managers.blackmarket:equipped_secondary()
- if self.gun_shield_check() then
- if tweak_data.weapon[equipped_primary.weapon_id].category == "assault_rifle" or tweak_data.weapon[equipped_primary.weapon_id].category == "shotgun" or tweak_data.weapon[equipped_primary.weapon_id].category == "grenade_launcher" or tweak_data.weapon[equipped_primary.weapon_id].category == "snp" or tweak_data.weapon[equipped_primary.weapon_id].category == "lmg" then
- -- check here
- else
- return
- end
- end
- end
- if self.gun_shield_check() then
- --log('gun_shield_enabler:'..tostring(self.gun_shield_enabler))
- end
- self.gun_shield_enabler = true
- local weap_align_data = selection.use_data["equip"]
- local align_place = self._align_places[weap_align_data.align_place]
- self._gunshield_unit = true
- else if equipped_secondary.weapon_id == weapon_id and self.secondary_gun_shield_check() == true then
- if (weapon_id ~= "predatorshield") and (weapon_id ~= "predatorshield_secondary") then
- --local equipped_primary = managers.blackmarket:equipped_primary()
- --local equipped_secondary = managers.blackmarket:equipped_secondary()
- if self.secondary_gun_shield_check() then
- if tweak_data.weapon[equipped_secondary.weapon_id].category == "shotgun" or tweak_data.weapon[equipped_secondary.weapon_id].category == "grenade_launcher" or tweak_data.weapon[equipped_secondary.weapon_id].category == "smg" then
- -- check here
- else
- return
- end
- end
- end
- if self.secondary_gun_shield_check() then
- --log('gun_shield_enabler:'..tostring(self.gun_shield_enabler))
- end
- self.gun_shield_enabler = true
- local weap_align_data = selection.use_data["equip"]
- local align_place = self._align_places[weap_align_data.align_place]
- self._gunshield_unit = true
- else
- return
- end
- end
- end
- function PlayerInventory:hide_gunshield()
- if not self:is_this_able_to_gunshield() then
- return
- end
- if self._gunshield_unit then
- self._gunshield_unit = false
- end
- end
- function PlayerInventory:is_this_able_to_gunshield()
- local peer = managers.network:session():peer_by_unit(self._unit)
- if peer and peer == managers.network:session():local_peer() then
- return true
- end
- return false
- end
- function PlayerInventory:gun_shield_enabled()
- return self.gun_shield_enabler
- end
- function PlayerInventory:gun_shield_check()
- local equipped_primary = managers.blackmarket:equipped_primary()
- if equipped_primary.weapon_id == weapon_id then
- if tweak_data.weapon[equipped_primary.weapon_id].category == "assault_rifle" or tweak_data.weapon[equipped_primary.weapon_id].category == "shotgun" or tweak_data.weapon[equipped_primary.weapon_id].category == "grenade_launcher" or tweak_data.weapon[equipped_primary.weapon_id].category == "snp" or tweak_data.weapon[equipped_primary.weapon_id].category == "lmg" then
- for index, value in ipairs(equipped_primary.blueprint) do
- if value == "wpn_fps_shield_v1" or value == "wpn_fps_shield_v2" or value == "wpn_fps_shield_v3" or value == "wpn_fps_shield_v4" or value == "wpn_fps_shield_ak" or value == "wpn_fps_shield_aug" or value == "wpn_fps_shield_m4" or value == "wpn_fps_shield_dmr" or value == "wpn_fps_shield_lr" or value == "wpn_fps_shield_bullpup" or value == "wpn_fps_shield_shotgun" or value == "wpn_fps_shield_lmg" then
- return true
- else
- return false
- end
- end
- else
- return false
- end
- else
- return false
- end
- end
- function PlayerInventory:secondary_gun_shield_check()
- local equipped_secondary = managers.blackmarket:equipped_secondary()
- if equipped_secondary.weapon_id == weapon_id then
- if tweak_data.weapon[equipped_secondary.weapon_id].category == "shotgun" or tweak_data.weapon[equipped_secondary.weapon_id].category == "grenade_launcher" or tweak_data.weapon[equipped_secondary.weapon_id].category == "smg" then
- for index, value in ipairs(equipped_primary.blueprint) do
- if value == "wpn_fps_shield_v1" or value == "wpn_fps_shield_v2" or value == "wpn_fps_shield_v3" or value == "wpn_fps_shield_v4" or value == "wpn_fps_shield_ak" or value == "wpn_fps_shield_aug" or value == "wpn_fps_shield_m4" or value == "wpn_fps_shield_dmr" or value == "wpn_fps_shield_lr" or value == "wpn_fps_shield_bullpup" or value == "wpn_fps_shield_shotgun" or value == "wpn_fps_shield_lmg" then
- return true
- else
- return false
- end
- end
- else
- return false
- end
- else
- return false
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement