--> Services local ReplicatedStorage = game:GetService("ReplicatedStorage") local ServerStorage = game:GetService("ServerStorage") --> Dependencies local Utils = require(ReplicatedStorage.Tools.Utils) local TypeList = require(ServerStorage.Base.TypeList) local Rune = require(ServerStorage.Base.Rune) local RuneWeaponTag = require(ReplicatedStorage.Data.RuneWeaponTag) local RuneWearHeavySword = {} RuneWearHeavySword.__index = RuneWearHeavySword setmetatable(RuneWearHeavySword, {__index = Rune}) function RuneWearHeavySword:Init(PlayerAI, Character: TypeList.Character) local self = Rune:Init(PlayerAI, Character, script.Name) setmetatable(self, RuneWearHeavySword) return self end function RuneWearHeavySword:Check(index: number, AttributesData: table, BehaviorNameList: table) return true end function RuneWearHeavySword:OnExecute(index: number, AttributesData: table, BehaviorNameList: table) local pDataFolder = ReplicatedStorage:FindFirstChild("PlayerData") if not pDataFolder then return nil end local pData = pDataFolder:FindFirstChild(self.PlayerAI.Player.UserId) if not pData then return nil end local equipmentFolder = pData:FindFirstChild("Equipment") if not equipmentFolder then return nil end local equipmentList = equipmentFolder:GetChildren() if #equipmentList == 0 then return nil end local CheckSubType = 4 local subTypeNumber = 0 for _, equipment in equipmentList do local equipmentSubType = equipment:GetAttribute("subType") local equipmentWearing = equipment:GetAttribute("wearing") if equipmentSubType == CheckSubType and equipmentWearing > 0 then subTypeNumber = subTypeNumber + 1 end end local CheckShareName = RuneWeaponTag[4] if self.PlayerAI:GetSharedData(CheckShareName) then subTypeNumber = subTypeNumber + self.PlayerAI:GetSharedData(CheckShareName) end local attackRate = math.floor((100 + AttributesData.attackRate or 0) * (25 / 100)) Utils:TableSafeAddValue(AttributesData, "attackRate", attackRate) return nil end return RuneWearHeavySword