Skip to content
This repository was archived by the owner on Jan 5, 2024. It is now read-only.

Commit e61c0d8

Browse files
committed
Utilized MovableMan.AddedActors in global scripts for mad gainz
1 parent 1a21d76 commit e61c0d8

13 files changed

+130
-101
lines changed

Base.rte/Scripts/Global/AllUnitsAreBrains.lua

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,14 @@
11
function AllUnitsAreBrainsScript:UpdateScript()
2-
for actor in MovableMan.Actors do
3-
if IsAHuman(actor) or IsACrab(actor) then
4-
if not actor:IsInGroup("Brains") then
5-
actor:AddToGroup("Brains");
2+
for actor in MovableMan.AddedActors do
3+
if (IsAHuman(actor) or IsACrab(actor)) and not actor:IsInGroup("Brains") then
4+
actor:AddToGroup("Brains");
5+
else
6+
for i = 1, actor.InventorySize do
7+
local item = actor:Inventory();
8+
if (IsAHuman(item) or IsACrab(item)) and not item:IsInGroup("Brains") then
9+
ToActor(item):AddToGroup("Brains");
10+
end
11+
actor:SwapNextInventory(item, true);
612
end
713
end
814
end

Base.rte/Scripts/Global/BetterJetpacks.lua

Lines changed: 21 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,21 +2,29 @@ function BetterJetpacksScript:StartScript()
22
self.multiplier = 1.5;
33
end
44
function BetterJetpacksScript:UpdateScript()
5-
for actor in MovableMan.Actors do
5+
for actor in MovableMan.AddedActors do
66
if not actor:NumberValueExists("BetterJetpacksScript") then
7-
actor:SetNumberValue("BetterJetpacksScript", 1);
8-
if IsAHuman(actor) then
9-
actor = ToAHuman(actor);
10-
elseif IsACrab(actor) then
11-
actor = ToACrab(actor);
12-
end
13-
if actor.Jetpack then
14-
actor.JetTimeTotal = actor.JetTimeTotal * self.multiplier;
15-
for em in actor.Jetpack.Emissions do
16-
em.ParticlesPerMinute = em.ParticlesPerMinute * self.multiplier;
17-
em.BurstSize = em.BurstSize * self.multiplier;
18-
end
7+
self:DeployEffect(actor);
8+
for i = 1, actor.InventorySize do
9+
local item = actor:Inventory();
10+
self:DeployEffect(item);
11+
actor:SwapNextInventory(item, true);
1912
end
2013
end
2114
end
15+
end
16+
function BetterJetpacksScript:DeployEffect(actor)
17+
if IsAHuman(actor) then
18+
actor = ToAHuman(actor);
19+
elseif IsACrab(actor) then
20+
actor = ToACrab(actor);
21+
end
22+
if actor.Jetpack then
23+
actor:SetNumberValue("BetterJetpacksScript", 1);
24+
actor.JetTimeTotal = actor.JetTimeTotal * self.multiplier;
25+
for em in actor.Jetpack.Emissions do
26+
em.ParticlesPerMinute = em.ParticlesPerMinute * self.multiplier;
27+
em.BurstSize = em.BurstSize * self.multiplier;
28+
end
29+
end
2230
end

Base.rte/Scripts/Global/BulkyDropships.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
function BulkyDropshipsScript:UpdateScript()
2-
for actor in MovableMan.Actors do
2+
for actor in MovableMan.AddedActors do
33
if not actor:NumberValueExists("BulkyDropshipsScript") then
44
actor:SetNumberValue("BulkyDropshipsScript", 1);
55
if IsACDropShip(actor) then

Base.rte/Scripts/Global/EnableFriendlyFire.lua

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,15 @@
11
function FriendlyFireScript:StartScript()
2-
-- Amount of frames the particles still ignore teammates for
3-
self.frames = 6;
4-
self.minAge = 17 * self.frames;
5-
-- Default settings are approximately according to squad sizes
2+
-- Minimum distance in pixels that the particles ingore teammates for
3+
self.safeDist = 100;
64
self.updateTimer = Timer();
5+
self.updateTimer:SetSimTimeLimitMS(math.ceil(TimerMan.DeltaTimeMS * 3));
76
end
87
function FriendlyFireScript:UpdateScript()
9-
if self.updateTimer:IsPastSimMS(51) then
8+
if self.updateTimer:IsPastSimTimeLimit() then
109
for part in MovableMan.Particles do
1110
if part.HitsMOs and part.Team ~= -1 then
12-
if part.Age > self.minAge / (1 + part.Vel.Magnitude / 100) then
13-
part.Team = -1; -- Hit everyone
11+
if (part.Age * FrameMan.PPM * part.Vel.Magnitude) / 1000 > self.safeDist then
12+
part.Team = -1;
1413
part.IgnoresTeamHits = false;
1514
end
1615
end

Base.rte/Scripts/Global/FasterWalking.lua

Lines changed: 21 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,21 +3,29 @@ function FasterWalkingScript:StartScript()
33
self.pushForceDenominator = 1.2;
44
end
55
function FasterWalkingScript:UpdateScript()
6-
for actor in MovableMan.Actors do
6+
for actor in MovableMan.AddedActors do
77
if not actor:NumberValueExists("FasterWalkingScript") then
8-
actor:SetNumberValue("FasterWalkingScript", 1);
9-
local walker;
10-
if IsAHuman(actor) then
11-
walker = ToAHuman(actor);
12-
elseif IsACrab(actor) then
13-
walker = ToACrab(actor);
14-
end
15-
if walker then
16-
walker:SetLimbPathSpeed(0, walker:GetLimbPathSpeed(0) * self.multiplier);
17-
walker:SetLimbPathSpeed(1, walker:GetLimbPathSpeed(1) * self.multiplier);
18-
walker:SetLimbPathSpeed(2, walker:GetLimbPathSpeed(2) * self.multiplier);
19-
walker.LimbPathPushForce = walker.LimbPathPushForce * self.pushForceDenominator;
8+
self:DeployEffect(actor);
9+
for i = 1, actor.InventorySize do
10+
local item = actor:Inventory();
11+
self:DeployEffect(item);
12+
actor:SwapNextInventory(item, true);
2013
end
2114
end
2215
end
16+
end
17+
function FasterWalkingScript:DeployEffect(actor)
18+
local walker;
19+
if IsAHuman(actor) then
20+
walker = ToAHuman(actor);
21+
elseif IsACrab(actor) then
22+
walker = ToACrab(actor);
23+
end
24+
if walker then
25+
actor:SetNumberValue("FasterWalkingScript", 1);
26+
walker:SetLimbPathSpeed(0, walker:GetLimbPathSpeed(0) * self.multiplier);
27+
walker:SetLimbPathSpeed(1, walker:GetLimbPathSpeed(1) * self.multiplier);
28+
walker:SetLimbPathSpeed(2, walker:GetLimbPathSpeed(2) * self.multiplier);
29+
walker.LimbPathPushForce = walker.LimbPathPushForce * self.pushForceDenominator;
30+
end
2331
end

Base.rte/Scripts/Global/FragileUnits.lua

Lines changed: 21 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,26 @@
11
function FragileUnitsScript:UpdateScript()
2-
for actor in MovableMan.Actors do
2+
for actor in MovableMan.AddedActors do
33
if not actor:NumberValueExists("FragileUnitsScript") then
4-
actor:SetNumberValue("FragileUnitsScript", 1);
5-
if IsAHuman(actor) or IsACrab(actor) then
6-
actor.GibWoundLimit = 1;
7-
for att in actor.Attachables do
8-
att.GibWoundLimit = 1;
9-
if not IsAEmitter(att) then
10-
att.JointStrength = 1;
11-
end
12-
end
4+
self:DeployEffect(actor);
5+
for i = 1, actor.InventorySize do
6+
local item = actor:Inventory();
7+
self:DeployEffect(item);
8+
actor:SwapNextInventory(item, true);
9+
end
10+
end
11+
end
12+
end
13+
function FragileUnitsScript:DeployEffect(actor)
14+
if IsAHuman(actor) or IsACrab(actor) then
15+
actor = ToActor(actor);
16+
actor.MaxHealth = 1000;
17+
actor.Health = actor.MaxHealth;
18+
actor:SetNumberValue("FragileUnitsScript", 1);
19+
actor.GibWoundLimit = 1;
20+
for att in actor.Attachables do
21+
att.GibWoundLimit = 1;
22+
if not IsAEmitter(att) then
23+
att.JointStrength = 1;
1324
end
1425
end
1526
end
Lines changed: 23 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,45 +1,30 @@
1-
function InstakillHeadshotsScript:StartScript()
2-
--print ("InstakillHeadshotsScript:StartScript()")
3-
end
4-
51
function InstakillHeadshotsScript:UpdateScript()
6-
--print ("InstakillHeadshotsScript:UpdateScript()")
7-
-- Traverse only added actors as this way we can cover all actors added
8-
-- and don't have to check any others which already exist in the simulation
9-
for actor in MovableMan.Actors do
2+
for actor in MovableMan.AddedActors do
103
if not actor:NumberValueExists("InstakillHeadshotsScript") then
11-
actor:SetNumberValue("InstakillHeadshotsScript", 1)
12-
if IsAHuman(actor) then
13-
local human = ToAHuman(actor)
14-
if human then
15-
if human.Head then
16-
human.Head.GibWoundLimit = 1
17-
human.Head.DamageMultiplier = 100
18-
end
19-
end
20-
end
21-
22-
if IsACrab(actor) then
23-
local crab = ToACrab(actor)
24-
if crab then
25-
if crab.Turret then
26-
crab.Turret.GibWoundLimit = 1
27-
crab.Turret.DamageMultiplier = 100
28-
end
4+
self:DeployEffect(actor);
5+
for i = 1, actor.InventorySize do
6+
local item = actor:Inventory();
7+
if IsActor(item) then
8+
self:DeployEffect(ToActor(item));
299
end
10+
actor:SwapNextInventory(item, true);
3011
end
3112
end
3213
end
3314
end
34-
35-
function InstakillHeadshotsScript:EndScript()
36-
--print ("InstakillHeadshotsScript:UpdateScript()")
37-
end
38-
39-
function InstakillHeadshotsScript:PauseScript()
40-
--print ("InstakillHeadshotsScript:UpdateScript()")
41-
end
42-
43-
function InstakillHeadshotsScript:CraftEnteredOrbit()
44-
--print ("InstakillHeadshotsScript:UpdateScript()")
45-
end
15+
function InstakillHeadshotsScript:DeployEffect(actor)
16+
actor:SetNumberValue("InstakillHeadshotsScript", 1)
17+
if IsAHuman(actor) then
18+
local human = ToAHuman(actor)
19+
if human.Head then
20+
human.Head.GibWoundLimit = 1
21+
human.Head.DamageMultiplier = human.MaxHealth
22+
end
23+
elseif IsACrab(actor) then
24+
local crab = ToACrab(actor)
25+
if crab.Turret then
26+
crab.Turret.GibWoundLimit = 1
27+
crab.Turret.DamageMultiplier = crab.MaxHealth
28+
end
29+
end
30+
end

Base.rte/Scripts/Global/InvincibleCraft.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
function InvincibleCraftScript:UpdateScript()
2-
for actor in MovableMan.Actors do
2+
for actor in MovableMan.AddedActors do
33
if not actor:NumberValueExists("InvincibleCraftScript") then
44
actor:SetNumberValue("InvincibleCraftScript", 1)
55
if IsACDropShip(actor) or IsACRocket(actor) then
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
function LowerGravityScript:StartScript()
2-
SceneMan.Scene.GlobalAcc = Vector(SceneMan.Scene.GlobalAcc.X, SceneMan.Scene.GlobalAcc.Y * 0.65);
2+
SceneMan.Scene.GlobalAcc = Vector(SceneMan.Scene.GlobalAcc.X, SceneMan.Scene.GlobalAcc.Y * 0.50);
3+
self:Deactivate();
34
end

Base.rte/Scripts/Global/ToughCraft.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ function ToughCraftScript:StartScript()
22
self.multiplier = 4;
33
end
44
function ToughCraftScript:UpdateScript()
5-
for actor in MovableMan.Actors do
5+
for actor in MovableMan.AddedActors do
66
if not actor:NumberValueExists("ToughCraftScript") then
77
actor:SetNumberValue("ToughCraftScript", 1);
88
if IsACDropShip(actor) or IsACRocket(actor) then

0 commit comments

Comments
 (0)