Run it
Copy the script and paste it into your executor.
.PlaceId ~=
().ProjectileAuraConfig = ().ProjectileAuraConfig {}
Config = ().ProjectileAuraConfig
Config.TargetMode = Config.TargetMode
Config.IHATEYOUSOMUCH = Config.IHATEYOUSOMUCH {
Enabled = ,
Betty = ,
Warhead =
}
Config.Theseshouldntbetargettedimo = Config.Theseshouldntbetargettedimo {
Enabled = ,
Punishment = ,
Bloodhorn =
}
().ProjectileAuraLoaded
().ProjectileAuraLoaded =
Workspace = :()
RunService = :()
Players = :()
LocalPlayer = Players.LocalPlayer
NPCFolders = Workspace:()
EnemyFolder = NPCFolders:()
ProjectileFolder = Workspace:()
block
timerRemaining =
UNFREEZE_TIMER =
isActive =
frozen = {}
trackedProjectiles = {}
(Enemy)
Config.Theseshouldntbetargettedimo.Enabled
Config.Theseshouldntbetargettedimo[Enemy.Name]
()
Character = LocalPlayer.Character
Character
Character:()
()
ValidEnemies = {}
_, Enemy (EnemyFolder:())
(Enemy)
Humanoid = Enemy:()
RootPart = Enemy:()
Humanoid Humanoid.Health > RootPart
.(ValidEnemies, Enemy)
ValidEnemies
()
Config.IHATEYOUSOMUCH.Enabled
_, Enemy (EnemyFolder:())
Config.IHATEYOUSOMUCH[Enemy.Name]
Humanoid = Enemy:()
Humanoid Humanoid.Health >
Enemy
ValidEnemies = ()
#ValidEnemies <=
CharacterRoot = ()
Config.TargetMode == CharacterRoot
ClosestEnemy =
ClosestDistance = .huge
_, Enemy (ValidEnemies)
RootPart = Enemy:()
RootPart
Distance = (CharacterRoot.Position - RootPart.Position).Magnitude
Distance < ClosestDistance
ClosestDistance = Distance
ClosestEnemy = Enemy
ClosestEnemy
Config.TargetMode == CharacterRoot
FarthestEnemy =
FarthestDistance = -.huge
_, Enemy (ValidEnemies)
RootPart = Enemy:()
RootPart
Distance = (CharacterRoot.Position - RootPart.Position).Magnitude
Distance > FarthestDistance
FarthestDistance = Distance
FarthestEnemy = Enemy
FarthestEnemy
Config.TargetMode ==
WeakestEnemy =
LowestHealth = .huge
_, Enemy (ValidEnemies)
Humanoid = Enemy:()
Humanoid Humanoid.Health < LowestHealth
LowestHealth = Humanoid.Health
WeakestEnemy = Enemy
WeakestEnemy
Config.TargetMode ==
StrongestEnemy =
HighestHealth = -.huge
_, Enemy (ValidEnemies)
Humanoid = Enemy:()
Humanoid Humanoid.Health > HighestHealth
HighestHealth = Humanoid.Health
StrongestEnemy = Enemy
StrongestEnemy
Config.TargetMode ==
ValidEnemies[.(, #ValidEnemies)]
ValidEnemies[]
()
block block.Parent block
block = .()
block.Name =
block.Anchored =
block.CanCollide =
block.CanTouch =
block.CanQuery =
block.Transparency =
block.Size = .(, , )
block.CFrame = .(, -, )
block.Parent = Workspace
block
(index)
perLayer =
layer = .((index - ) / perLayer)
pos = (index - ) % perLayer
angle = (pos / perLayer) * .pi *
horizontalRadius =
x = .(angle) * horizontalRadius
z = .(angle) * horizontalRadius
y = layer *
.(x, y, z)
()
block block.Parent
_, v (ProjectileFolder:())
v:() (v.Name == v.Name == v.Name == )
v.CFrame = block.CFrame
v.AssemblyLinearVelocity = .zero
v.AssemblyAngularVelocity = .zero
()
block block.Parent
enemies = {}
_, npc (EnemyFolder:())
root = npc:()
hum = npc:()
root hum hum.Health > (npc)
.(enemies, npc)
i, npc (enemies)
root = npc:()
root
frozen[npc]
frozen[npc] = root.CFrame
root.CFrame = block.CFrame * .((i))
root.AssemblyLinearVelocity = .zero
root.AssemblyAngularVelocity = .zero
()
block block.Parent
_, npc (EnemyFolder:())
(npc)
root = npc:()
hum = npc:()
root hum hum.Health >
distToBlock = (root.Position - block.Position).Magnitude
distToBlock <
direction = (root.Position - block.Position).Unit
root.CFrame = .(block.Position + direction * ) * .(.(), root.CFrame.RightVector, root.CFrame.UpVector)
()
npc, originalCFrame (frozen)
npc npc.Parent
root = npc:()
root
root.CFrame = originalCFrame
root.AssemblyLinearVelocity = .zero
root.AssemblyAngularVelocity = .zero
.(frozen)
()
()
timerRemaining = UNFREEZE_TIMER
isActive =
(Projectile)
Projectile.CanCollide =
Projectile.CanTouch =
Projectile.Massless =
Projectile.Transparency =
Projectile.AssemblyLinearVelocity = .zero
Projectile.AssemblyAngularVelocity = .zero
(Projectile, TargetRoot)
Projectile.CFrame = TargetRoot.CFrame
Projectile.AssemblyLinearVelocity = .zero
Projectile.AssemblyAngularVelocity = .zero
(Projectile)
Projectile.Name ==
Projectile.Name ==
Projectile.Name ==
(Projectile)
Projectile.Name ==
Projectile.Name ==
Projectile.Name ==
(Projectile)
(Projectile) (Projectile)
(obj)
obj:()
obj.Size = .(, , )
obj:()
_, d (obj:())
d:()
d.Size = .(, , )
_, v (ProjectileFolder:())
v:()
(v)
()
(v)
(v)
(v)
(v)
trackedProjectiles[v] =
ProjectileFolder.ChildAdded:((child)
child:()
(child)
()
(child)
(child)
(child)
(child)
.()
trackedProjectiles[child] =
)
RunService.Heartbeat:((dt)
isActive
timerRemaining -= dt
()
()
()
timerRemaining <=
()
isActive =
timerRemaining =
TargetEnemy = ()
TargetEnemy
TargetRoot = TargetEnemy:()
TargetRoot
obj (trackedProjectiles)
obj obj.Parent
trackedProjectiles[obj] =
obj:()
(obj, TargetRoot)
)
.AncestryChanged:((_, parent)
parent ==
()
block block.Parent block:()
.(trackedProjectiles)
)
So, this script makes the enemies teleport to the middle and teleports the projectiles there, its customizable so you can make It ignore specific enemies Please read this, this script was not tested since i am banned from the battle bricks.
The Battle Bricks