Fix omega cursed smite code. (#32844)

* le fixo smotes

* CURSE OF BLINDNESS

* Guh
This commit is contained in:
IProduceWidgets
2024-10-16 18:24:31 -04:00
committed by GitHub
parent f387f66387
commit 8cafd7261d
2 changed files with 148 additions and 106 deletions

View File

@@ -95,9 +95,10 @@ public sealed partial class AdminVerbSystem
if (HasComp<MapComponent>(args.Target) || HasComp<MapGridComponent>(args.Target)) if (HasComp<MapComponent>(args.Target) || HasComp<MapGridComponent>(args.Target))
return; return;
var explodeName = Loc.GetString("admin-smite-explode-name").ToLowerInvariant();
Verb explode = new() Verb explode = new()
{ {
Text = "admin-smite-explode-name", Text = explodeName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/VerbIcons/smite.svg.192dpi.png")), Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/VerbIcons/smite.svg.192dpi.png")),
Act = () => Act = () =>
@@ -111,13 +112,14 @@ public sealed partial class AdminVerbSystem
_bodySystem.GibBody(args.Target); _bodySystem.GibBody(args.Target);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-explode-description") Message = string.Join(": ", explodeName, Loc.GetString("admin-smite-explode-description")) // we do this so the description tells admins the Text to run it via console.
}; };
args.Verbs.Add(explode); args.Verbs.Add(explode);
var chessName = Loc.GetString("admin-smite-chess-dimension-name").ToLowerInvariant();
Verb chess = new() Verb chess = new()
{ {
Text = "admin-smite-chess-dimension-name", Text = chessName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Rsi(new ("/Textures/Objects/Fun/Tabletop/chessboard.rsi"), "chessboard"), Icon = new SpriteSpecifier.Rsi(new ("/Textures/Objects/Fun/Tabletop/chessboard.rsi"), "chessboard"),
Act = () => Act = () =>
@@ -137,12 +139,13 @@ public sealed partial class AdminVerbSystem
xform.WorldRotation = Angle.Zero; xform.WorldRotation = Angle.Zero;
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-chess-dimension-description") Message = string.Join(": ", chessName, Loc.GetString("admin-smite-chess-dimension-description"))
}; };
args.Verbs.Add(chess); args.Verbs.Add(chess);
if (TryComp<FlammableComponent>(args.Target, out var flammable)) if (TryComp<FlammableComponent>(args.Target, out var flammable))
{ {
var flamesName = Loc.GetString("admin-smite-set-alight-name").ToLowerInvariant();
Verb flames = new() Verb flames = new()
{ {
Text = "admin-smite-set-alight-name", Text = "admin-smite-set-alight-name",
@@ -160,14 +163,15 @@ public sealed partial class AdminVerbSystem
Filter.PvsExcept(args.Target), true, PopupType.MediumCaution); Filter.PvsExcept(args.Target), true, PopupType.MediumCaution);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-set-alight-description") Message = string.Join(": ", flamesName, Loc.GetString("admin-smite-set-alight-description"))
}; };
args.Verbs.Add(flames); args.Verbs.Add(flames);
} }
var monkeyName = Loc.GetString("admin-smite-monkeyify-name").ToLowerInvariant();
Verb monkey = new() Verb monkey = new()
{ {
Text = "admin-smite-monkeyify-name", Text = monkeyName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Rsi(new ("/Textures/Mobs/Animals/monkey.rsi"), "monkey"), Icon = new SpriteSpecifier.Rsi(new ("/Textures/Mobs/Animals/monkey.rsi"), "monkey"),
Act = () => Act = () =>
@@ -175,13 +179,14 @@ public sealed partial class AdminVerbSystem
_polymorphSystem.PolymorphEntity(args.Target, "AdminMonkeySmite"); _polymorphSystem.PolymorphEntity(args.Target, "AdminMonkeySmite");
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-monkeyify-description") Message = string.Join(": ", monkeyName, Loc.GetString("admin-smite-monkeyify-description"))
}; };
args.Verbs.Add(monkey); args.Verbs.Add(monkey);
var disposalBinName = Loc.GetString("admin-smite-garbage-can-name").ToLowerInvariant();
Verb disposalBin = new() Verb disposalBin = new()
{ {
Text = "admin-smite-electrocute-name", Text = disposalBinName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Rsi(new ("/Textures/Structures/Piping/disposal.rsi"), "disposal"), Icon = new SpriteSpecifier.Rsi(new ("/Textures/Structures/Piping/disposal.rsi"), "disposal"),
Act = () => Act = () =>
@@ -189,16 +194,17 @@ public sealed partial class AdminVerbSystem
_polymorphSystem.PolymorphEntity(args.Target, "AdminDisposalsSmite"); _polymorphSystem.PolymorphEntity(args.Target, "AdminDisposalsSmite");
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-garbage-can-description") Message = string.Join(": ", disposalBinName, Loc.GetString("admin-smite-garbage-can-description"))
}; };
args.Verbs.Add(disposalBin); args.Verbs.Add(disposalBin);
if (TryComp<DamageableComponent>(args.Target, out var damageable) && if (TryComp<DamageableComponent>(args.Target, out var damageable) &&
HasComp<MobStateComponent>(args.Target)) HasComp<MobStateComponent>(args.Target))
{ {
var hardElectrocuteName = Loc.GetString("admin-smite-electrocute-name").ToLowerInvariant();
Verb hardElectrocute = new() Verb hardElectrocute = new()
{ {
Text = "admin-smite-creampie-name", Text = hardElectrocuteName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Rsi(new ("/Textures/Clothing/Hands/Gloves/Color/yellow.rsi"), "icon"), Icon = new SpriteSpecifier.Rsi(new ("/Textures/Clothing/Hands/Gloves/Color/yellow.rsi"), "icon"),
Act = () => Act = () =>
@@ -234,16 +240,17 @@ public sealed partial class AdminVerbSystem
TimeSpan.FromSeconds(30), refresh: true, ignoreInsulation: true); TimeSpan.FromSeconds(30), refresh: true, ignoreInsulation: true);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-electrocute-description") Message = string.Join(": ", hardElectrocuteName, Loc.GetString("admin-smite-electrocute-description"))
}; };
args.Verbs.Add(hardElectrocute); args.Verbs.Add(hardElectrocute);
} }
if (TryComp<CreamPiedComponent>(args.Target, out var creamPied)) if (TryComp<CreamPiedComponent>(args.Target, out var creamPied))
{ {
var creamPieName = Loc.GetString("admin-smite-creampie-name").ToLowerInvariant();
Verb creamPie = new() Verb creamPie = new()
{ {
Text = "admin-smite-remove-blood-name", Text = creamPieName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Rsi(new ("/Textures/Objects/Consumable/Food/Baked/pie.rsi"), "plain-slice"), Icon = new SpriteSpecifier.Rsi(new ("/Textures/Objects/Consumable/Food/Baked/pie.rsi"), "plain-slice"),
Act = () => Act = () =>
@@ -251,16 +258,17 @@ public sealed partial class AdminVerbSystem
_creamPieSystem.SetCreamPied(args.Target, creamPied, true); _creamPieSystem.SetCreamPied(args.Target, creamPied, true);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-creampie-description") Message = string.Join(": ", creamPieName, Loc.GetString("admin-smite-creampie-description"))
}; };
args.Verbs.Add(creamPie); args.Verbs.Add(creamPie);
} }
if (TryComp<BloodstreamComponent>(args.Target, out var bloodstream)) if (TryComp<BloodstreamComponent>(args.Target, out var bloodstream))
{ {
var bloodRemovalName = Loc.GetString("admin-smite-remove-blood-name").ToLowerInvariant();
Verb bloodRemoval = new() Verb bloodRemoval = new()
{ {
Text = "admin-smite-vomit-organs-name", Text = bloodRemovalName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Rsi(new ("/Textures/Fluids/tomato_splat.rsi"), "puddle-1"), Icon = new SpriteSpecifier.Rsi(new ("/Textures/Fluids/tomato_splat.rsi"), "puddle-1"),
Act = () => Act = () =>
@@ -273,7 +281,7 @@ public sealed partial class AdminVerbSystem
Filter.PvsExcept(args.Target), true, PopupType.MediumCaution); Filter.PvsExcept(args.Target), true, PopupType.MediumCaution);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-remove-blood-description") Message = string.Join(": ", bloodRemovalName, Loc.GetString("admin-smite-remove-blood-description"))
}; };
args.Verbs.Add(bloodRemoval); args.Verbs.Add(bloodRemoval);
} }
@@ -281,9 +289,10 @@ public sealed partial class AdminVerbSystem
// bobby... // bobby...
if (TryComp<BodyComponent>(args.Target, out var body)) if (TryComp<BodyComponent>(args.Target, out var body))
{ {
var vomitOrgansName = Loc.GetString("admin-smite-vomit-organs-name").ToLowerInvariant();
Verb vomitOrgans = new() Verb vomitOrgans = new()
{ {
Text = "admin-smite-remove-hands-name", Text = vomitOrgansName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Rsi(new("/Textures/Fluids/vomit_toxin.rsi"), "vomit_toxin-1"), Icon = new SpriteSpecifier.Rsi(new("/Textures/Fluids/vomit_toxin.rsi"), "vomit_toxin-1"),
Act = () => Act = () =>
@@ -305,13 +314,14 @@ public sealed partial class AdminVerbSystem
Filter.PvsExcept(args.Target), true, PopupType.MediumCaution); Filter.PvsExcept(args.Target), true, PopupType.MediumCaution);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-vomit-organs-description") Message = string.Join(": ", vomitOrgansName, Loc.GetString("admin-smite-vomit-organs-description"))
}; };
args.Verbs.Add(vomitOrgans); args.Verbs.Add(vomitOrgans);
var handsRemovalName = Loc.GetString("admin-smite-remove-hands-name").ToLowerInvariant();
Verb handsRemoval = new() Verb handsRemoval = new()
{ {
Text = "admin-smite-remove-hand-name", Text = handsRemovalName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/AdminActions/remove-hands.png")), Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/AdminActions/remove-hands.png")),
Act = () => Act = () =>
@@ -327,13 +337,14 @@ public sealed partial class AdminVerbSystem
Filter.PvsExcept(args.Target), true, PopupType.Medium); Filter.PvsExcept(args.Target), true, PopupType.Medium);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-remove-hands-description") Message = string.Join(": ", handsRemovalName, Loc.GetString("admin-smite-remove-hands-description"))
}; };
args.Verbs.Add(handsRemoval); args.Verbs.Add(handsRemoval);
var handRemovalName = Loc.GetString("admin-smite-remove-hand-name").ToLowerInvariant();
Verb handRemoval = new() Verb handRemoval = new()
{ {
Text = "admin-smite-pinball-name", Text = handRemovalName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/AdminActions/remove-hand.png")), Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/AdminActions/remove-hand.png")),
Act = () => Act = () =>
@@ -350,13 +361,14 @@ public sealed partial class AdminVerbSystem
Filter.PvsExcept(args.Target), true, PopupType.Medium); Filter.PvsExcept(args.Target), true, PopupType.Medium);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-remove-hand-description") Message = string.Join(": ", handRemovalName, Loc.GetString("admin-smite-remove-hand-description"))
}; };
args.Verbs.Add(handRemoval); args.Verbs.Add(handRemoval);
var stomachRemovalName = Loc.GetString("admin-smite-stomach-removal-name").ToLowerInvariant();
Verb stomachRemoval = new() Verb stomachRemoval = new()
{ {
Text = "admin-smite-yeet-name", Text = stomachRemovalName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Rsi(new ("/Textures/Mobs/Species/Human/organs.rsi"), "stomach"), Icon = new SpriteSpecifier.Rsi(new ("/Textures/Mobs/Species/Human/organs.rsi"), "stomach"),
Act = () => Act = () =>
@@ -370,13 +382,14 @@ public sealed partial class AdminVerbSystem
args.Target, PopupType.LargeCaution); args.Target, PopupType.LargeCaution);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-stomach-removal-description"), Message = string.Join(": ", stomachRemovalName, Loc.GetString("admin-smite-stomach-removal-description"))
}; };
args.Verbs.Add(stomachRemoval); args.Verbs.Add(stomachRemoval);
var lungRemovalName = Loc.GetString("admin-smite-lung-removal-name").ToLowerInvariant();
Verb lungRemoval = new() Verb lungRemoval = new()
{ {
Text = "admin-smite-become-bread-name", Text = lungRemovalName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Rsi(new ("/Textures/Mobs/Species/Human/organs.rsi"), "lung-r"), Icon = new SpriteSpecifier.Rsi(new ("/Textures/Mobs/Species/Human/organs.rsi"), "lung-r"),
Act = () => Act = () =>
@@ -390,16 +403,17 @@ public sealed partial class AdminVerbSystem
args.Target, PopupType.LargeCaution); args.Target, PopupType.LargeCaution);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-lung-removal-description"), Message = string.Join(": ", lungRemovalName, Loc.GetString("admin-smite-lung-removal-description"))
}; };
args.Verbs.Add(lungRemoval); args.Verbs.Add(lungRemoval);
} }
if (TryComp<PhysicsComponent>(args.Target, out var physics)) if (TryComp<PhysicsComponent>(args.Target, out var physics))
{ {
var pinballName = Loc.GetString("admin-smite-pinball-name").ToLowerInvariant();
Verb pinball = new() Verb pinball = new()
{ {
Text = "admin-smite-ghostkick-name", Text = pinballName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Rsi(new ("/Textures/Objects/Fun/toys.rsi"), "basketball"), Icon = new SpriteSpecifier.Rsi(new ("/Textures/Objects/Fun/toys.rsi"), "basketball"),
Act = () => Act = () =>
@@ -427,13 +441,14 @@ public sealed partial class AdminVerbSystem
_physics.SetAngularDamping(args.Target, physics, 0f); _physics.SetAngularDamping(args.Target, physics, 0f);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-pinball-description") Message = string.Join(": ", pinballName, Loc.GetString("admin-smite-pinball-description"))
}; };
args.Verbs.Add(pinball); args.Verbs.Add(pinball);
var yeetName = Loc.GetString("admin-smite-yeet-name").ToLowerInvariant();
Verb yeet = new() Verb yeet = new()
{ {
Text = "admin-smite-nyanify-name", Text = yeetName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/VerbIcons/eject.svg.192dpi.png")), Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/VerbIcons/eject.svg.192dpi.png")),
Act = () => Act = () =>
@@ -457,11 +472,12 @@ public sealed partial class AdminVerbSystem
_physics.SetAngularDamping(args.Target, physics, 0f); _physics.SetAngularDamping(args.Target, physics, 0f);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-yeet-description") Message = string.Join(": ", yeetName, Loc.GetString("admin-smite-yeet-description"))
}; };
args.Verbs.Add(yeet); args.Verbs.Add(yeet);
} }
var breadName = Loc.GetString("admin-smite-become-bread-name").ToLowerInvariant(); // Will I get cancelled for breadName-ing you?
Verb bread = new() Verb bread = new()
{ {
Text = "admin-smite-kill-sign-name", Text = "admin-smite-kill-sign-name",
@@ -472,10 +488,11 @@ public sealed partial class AdminVerbSystem
_polymorphSystem.PolymorphEntity(args.Target, "AdminBreadSmite"); _polymorphSystem.PolymorphEntity(args.Target, "AdminBreadSmite");
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-become-bread-description") Message = string.Join(": ", breadName, Loc.GetString("admin-smite-become-bread-description"))
}; };
args.Verbs.Add(bread); args.Verbs.Add(bread);
var mouseName = Loc.GetString("admin-smite-become-mouse-name").ToLowerInvariant();
Verb mouse = new() Verb mouse = new()
{ {
Text = "admin-smite-cluwne-name", Text = "admin-smite-cluwne-name",
@@ -486,15 +503,16 @@ public sealed partial class AdminVerbSystem
_polymorphSystem.PolymorphEntity(args.Target, "AdminMouseSmite"); _polymorphSystem.PolymorphEntity(args.Target, "AdminMouseSmite");
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-become-mouse-description") Message = string.Join(": ", mouseName, Loc.GetString("admin-smite-become-mouse-description"))
}; };
args.Verbs.Add(mouse); args.Verbs.Add(mouse);
if (TryComp<ActorComponent>(args.Target, out var actorComponent)) if (TryComp<ActorComponent>(args.Target, out var actorComponent))
{ {
var ghostKickName = Loc.GetString("admin-smite-ghostkick-name").ToLowerInvariant();
Verb ghostKick = new() Verb ghostKick = new()
{ {
Text = "admin-smite-anger-pointing-arrows-name", Text = ghostKickName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/gavel.svg.192dpi.png")), Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/gavel.svg.192dpi.png")),
Act = () => Act = () =>
@@ -502,15 +520,18 @@ public sealed partial class AdminVerbSystem
_ghostKickManager.DoDisconnect(actorComponent.PlayerSession.Channel, "Smitten."); _ghostKickManager.DoDisconnect(actorComponent.PlayerSession.Channel, "Smitten.");
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-ghostkick-description") Message = string.Join(": ", ghostKickName, Loc.GetString("admin-smite-ghostkick-description"))
}; };
args.Verbs.Add(ghostKick); args.Verbs.Add(ghostKick);
} }
if (TryComp<InventoryComponent>(args.Target, out var inventory)) { if (TryComp<InventoryComponent>(args.Target, out var inventory))
{
var nyanifyName = Loc.GetString("admin-smite-nyanify-name").ToLowerInvariant();
Verb nyanify = new() Verb nyanify = new()
{ {
Text = "admin-smite-dust-name", Text = nyanifyName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Rsi(new ("/Textures/Clothing/Head/Hats/catears.rsi"), "icon"), Icon = new SpriteSpecifier.Rsi(new ("/Textures/Clothing/Head/Hats/catears.rsi"), "icon"),
Act = () => Act = () =>
@@ -521,13 +542,14 @@ public sealed partial class AdminVerbSystem
_inventorySystem.TryEquip(args.Target, ears, "head", true, true, false, inventory); _inventorySystem.TryEquip(args.Target, ears, "head", true, true, false, inventory);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-nyanify-description") Message = string.Join(": ", nyanifyName, Loc.GetString("admin-smite-nyanify-description"))
}; };
args.Verbs.Add(nyanify); args.Verbs.Add(nyanify);
var killSignName = Loc.GetString("admin-smite-kill-sign-name").ToLowerInvariant();
Verb killSign = new() Verb killSign = new()
{ {
Text = "admin-smite-buffering-name", Text = killSignName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Rsi(new ("/Textures/Objects/Misc/killsign.rsi"), "icon"), Icon = new SpriteSpecifier.Rsi(new ("/Textures/Objects/Misc/killsign.rsi"), "icon"),
Act = () => Act = () =>
@@ -535,13 +557,14 @@ public sealed partial class AdminVerbSystem
EnsureComp<KillSignComponent>(args.Target); EnsureComp<KillSignComponent>(args.Target);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-kill-sign-description") Message = string.Join(": ", killSignName, Loc.GetString("admin-smite-kill-sign-description"))
}; };
args.Verbs.Add(killSign); args.Verbs.Add(killSign);
var cluwneName = Loc.GetString("admin-smite-cluwne-name").ToLowerInvariant();
Verb cluwne = new() Verb cluwne = new()
{ {
Text = "admin-smite-become-instrument-name", Text = cluwneName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Rsi(new ("/Textures/Clothing/Mask/cluwne.rsi"), "icon"), Icon = new SpriteSpecifier.Rsi(new ("/Textures/Clothing/Mask/cluwne.rsi"), "icon"),
@@ -551,13 +574,14 @@ public sealed partial class AdminVerbSystem
EnsureComp<CluwneComponent>(args.Target); EnsureComp<CluwneComponent>(args.Target);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-cluwne-description") Message = string.Join(": ", cluwneName, Loc.GetString("admin-smite-cluwne-description"))
}; };
args.Verbs.Add(cluwne); args.Verbs.Add(cluwne);
var maidenName = Loc.GetString("admin-smite-maid-name").ToLowerInvariant();
Verb maiden = new() Verb maiden = new()
{ {
Text = "admin-smite-remove-gravity-name", Text = maidenName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Rsi(new ("/Textures/Clothing/Uniforms/Jumpskirt/janimaid.rsi"), "icon"), Icon = new SpriteSpecifier.Rsi(new ("/Textures/Clothing/Uniforms/Jumpskirt/janimaid.rsi"), "icon"),
Act = () => Act = () =>
@@ -570,14 +594,15 @@ public sealed partial class AdminVerbSystem
}); });
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-maid-description") Message = string.Join(": ", maidenName, Loc.GetString("admin-smite-maid-description"))
}; };
args.Verbs.Add(maiden); args.Verbs.Add(maiden);
} }
var angerPointingArrowsName = Loc.GetString("admin-smite-anger-pointing-arrows-name").ToLowerInvariant();
Verb angerPointingArrows = new() Verb angerPointingArrows = new()
{ {
Text = "admin-smite-reptilian-species-swap-name", Text = angerPointingArrowsName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Rsi(new ("/Textures/Interface/Misc/pointing.rsi"), "pointing"), Icon = new SpriteSpecifier.Rsi(new ("/Textures/Interface/Misc/pointing.rsi"), "pointing"),
Act = () => Act = () =>
@@ -585,13 +610,14 @@ public sealed partial class AdminVerbSystem
EnsureComp<PointingArrowAngeringComponent>(args.Target); EnsureComp<PointingArrowAngeringComponent>(args.Target);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-anger-pointing-arrows-description") Message = string.Join(": ", angerPointingArrowsName, Loc.GetString("admin-smite-anger-pointing-arrows-description"))
}; };
args.Verbs.Add(angerPointingArrows); args.Verbs.Add(angerPointingArrows);
var dustName = Loc.GetString("admin-smite-dust-name").ToLowerInvariant();
Verb dust = new() Verb dust = new()
{ {
Text = "admin-smite-locker-stuff-name", Text = dustName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Rsi(new ("/Textures/Objects/Materials/materials.rsi"), "ash"), Icon = new SpriteSpecifier.Rsi(new ("/Textures/Objects/Materials/materials.rsi"), "ash"),
Act = () => Act = () =>
@@ -601,13 +627,14 @@ public sealed partial class AdminVerbSystem
_popupSystem.PopupEntity(Loc.GetString("admin-smite-turned-ash-other", ("name", args.Target)), args.Target, PopupType.LargeCaution); _popupSystem.PopupEntity(Loc.GetString("admin-smite-turned-ash-other", ("name", args.Target)), args.Target, PopupType.LargeCaution);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-dust-description"), Message = string.Join(": ", dustName, Loc.GetString("admin-smite-dust-description"))
}; };
args.Verbs.Add(dust); args.Verbs.Add(dust);
var youtubeVideoSimulationName = Loc.GetString("admin-smite-buffering-name").ToLowerInvariant();
Verb youtubeVideoSimulation = new() Verb youtubeVideoSimulation = new()
{ {
Text = "admin-smite-headstand-name", Text = youtubeVideoSimulationName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/Misc/buffering_smite_icon.png")), Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/Misc/buffering_smite_icon.png")),
Act = () => Act = () =>
@@ -615,10 +642,11 @@ public sealed partial class AdminVerbSystem
EnsureComp<BufferingComponent>(args.Target); EnsureComp<BufferingComponent>(args.Target);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-buffering-description"), Message = string.Join(": ", youtubeVideoSimulationName, Loc.GetString("admin-smite-buffering-description"))
}; };
args.Verbs.Add(youtubeVideoSimulation); args.Verbs.Add(youtubeVideoSimulation);
var instrumentationName = Loc.GetString("admin-smite-become-instrument-name").ToLowerInvariant();
Verb instrumentation = new() Verb instrumentation = new()
{ {
Text = "admin-smite-become-mouse-name", Text = "admin-smite-become-mouse-name",
@@ -629,13 +657,14 @@ public sealed partial class AdminVerbSystem
_polymorphSystem.PolymorphEntity(args.Target, "AdminInstrumentSmite"); _polymorphSystem.PolymorphEntity(args.Target, "AdminInstrumentSmite");
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-become-instrument-description"), Message = string.Join(": ", instrumentationName, Loc.GetString("admin-smite-become-instrument-description"))
}; };
args.Verbs.Add(instrumentation); args.Verbs.Add(instrumentation);
var noGravityName = Loc.GetString("admin-smite-remove-gravity-name").ToLowerInvariant();
Verb noGravity = new() Verb noGravity = new()
{ {
Text = "admin-smite-maid-name", Text = noGravityName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Rsi(new("/Textures/Structures/Machines/gravity_generator.rsi"), "off"), Icon = new SpriteSpecifier.Rsi(new("/Textures/Structures/Machines/gravity_generator.rsi"), "off"),
Act = () => Act = () =>
@@ -646,13 +675,14 @@ public sealed partial class AdminVerbSystem
Dirty(args.Target, grav); Dirty(args.Target, grav);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-remove-gravity-description"), Message = string.Join(": ", noGravityName, Loc.GetString("admin-smite-remove-gravity-description"))
}; };
args.Verbs.Add(noGravity); args.Verbs.Add(noGravity);
var reptilianName = Loc.GetString("admin-smite-reptilian-species-swap-name").ToLowerInvariant();
Verb reptilian = new() Verb reptilian = new()
{ {
Text = "admin-smite-zoom-in-name", Text = reptilianName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Rsi(new ("/Textures/Objects/Fun/toys.rsi"), "plushie_lizard"), Icon = new SpriteSpecifier.Rsi(new ("/Textures/Objects/Fun/toys.rsi"), "plushie_lizard"),
Act = () => Act = () =>
@@ -660,13 +690,14 @@ public sealed partial class AdminVerbSystem
_polymorphSystem.PolymorphEntity(args.Target, "AdminLizardSmite"); _polymorphSystem.PolymorphEntity(args.Target, "AdminLizardSmite");
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-reptilian-species-swap-description"), Message = string.Join(": ", reptilianName, Loc.GetString("admin-smite-reptilian-species-swap-description"))
}; };
args.Verbs.Add(reptilian); args.Verbs.Add(reptilian);
var lockerName = Loc.GetString("admin-smite-locker-stuff-name").ToLowerInvariant();
Verb locker = new() Verb locker = new()
{ {
Text = "admin-smite-flip-eye-name", Text = lockerName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Rsi(new ("/Textures/Structures/Storage/closet.rsi"), "generic"), Icon = new SpriteSpecifier.Rsi(new ("/Textures/Structures/Storage/closet.rsi"), "generic"),
Act = () => Act = () =>
@@ -682,10 +713,11 @@ public sealed partial class AdminVerbSystem
_weldableSystem.SetWeldedState(locker, true); _weldableSystem.SetWeldedState(locker, true);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-locker-stuff-description"), Message = string.Join(": ", lockerName, Loc.GetString("admin-smite-locker-stuff-description"))
}; };
args.Verbs.Add(locker); args.Verbs.Add(locker);
var headstandName = Loc.GetString("admin-smite-headstand-name").ToLowerInvariant();
Verb headstand = new() Verb headstand = new()
{ {
Text = "admin-smite-run-walk-swap-name", Text = "admin-smite-run-walk-swap-name",
@@ -696,13 +728,14 @@ public sealed partial class AdminVerbSystem
EnsureComp<HeadstandComponent>(args.Target); EnsureComp<HeadstandComponent>(args.Target);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-headstand-description"), Message = string.Join(": ", headstandName, Loc.GetString("admin-smite-headstand-description"))
}; };
args.Verbs.Add(headstand); args.Verbs.Add(headstand);
var zoomInName = Loc.GetString("admin-smite-zoom-in-name").ToLowerInvariant();
Verb zoomIn = new() Verb zoomIn = new()
{ {
Text = "admin-smite-super-speed-name", Text = zoomInName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/AdminActions/zoom.png")), Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/AdminActions/zoom.png")),
Act = () => Act = () =>
@@ -711,13 +744,14 @@ public sealed partial class AdminVerbSystem
_eyeSystem.SetZoom(args.Target, eye.TargetZoom * 0.2f, ignoreLimits: true); _eyeSystem.SetZoom(args.Target, eye.TargetZoom * 0.2f, ignoreLimits: true);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-zoom-in-description"), Message = string.Join(": ", zoomInName, Loc.GetString("admin-smite-zoom-in-description"))
}; };
args.Verbs.Add(zoomIn); args.Verbs.Add(zoomIn);
var flipEyeName = Loc.GetString("admin-smite-flip-eye-name").ToLowerInvariant();
Verb flipEye = new() Verb flipEye = new()
{ {
Text = "admin-smite-stomach-removal-name", Text = flipEyeName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/AdminActions/flip.png")), Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/AdminActions/flip.png")),
Act = () => Act = () =>
@@ -726,13 +760,14 @@ public sealed partial class AdminVerbSystem
_eyeSystem.SetZoom(args.Target, eye.TargetZoom * -1, ignoreLimits: true); _eyeSystem.SetZoom(args.Target, eye.TargetZoom * -1, ignoreLimits: true);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-flip-eye-description"), Message = string.Join(": ", flipEyeName, Loc.GetString("admin-smite-flip-eye-description"))
}; };
args.Verbs.Add(flipEye); args.Verbs.Add(flipEye);
var runWalkSwapName = Loc.GetString("admin-smite-run-walk-swap-name").ToLowerInvariant();
Verb runWalkSwap = new() Verb runWalkSwap = new()
{ {
Text = "admin-smite-speak-backwards-name", Text = runWalkSwapName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/AdminActions/run-walk-swap.png")), Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/AdminActions/run-walk-swap.png")),
Act = () => Act = () =>
@@ -746,13 +781,14 @@ public sealed partial class AdminVerbSystem
args.Target, PopupType.LargeCaution); args.Target, PopupType.LargeCaution);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-run-walk-swap-description"), Message = string.Join(": ", runWalkSwapName, Loc.GetString("admin-smite-run-walk-swap-description"))
}; };
args.Verbs.Add(runWalkSwap); args.Verbs.Add(runWalkSwap);
var backwardsAccentName = Loc.GetString("admin-smite-speak-backwards-name").ToLowerInvariant();
Verb backwardsAccent = new() Verb backwardsAccent = new()
{ {
Text = "admin-smite-lung-removal-name", Text = backwardsAccentName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/AdminActions/help-backwards.png")), Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/AdminActions/help-backwards.png")),
Act = () => Act = () =>
@@ -760,13 +796,14 @@ public sealed partial class AdminVerbSystem
EnsureComp<BackwardsAccentComponent>(args.Target); EnsureComp<BackwardsAccentComponent>(args.Target);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-speak-backwards-description"), Message = string.Join(": ", backwardsAccentName, Loc.GetString("admin-smite-speak-backwards-description"))
}; };
args.Verbs.Add(backwardsAccent); args.Verbs.Add(backwardsAccent);
var disarmProneName = Loc.GetString("admin-smite-disarm-prone-name").ToLowerInvariant();
Verb disarmProne = new() Verb disarmProne = new()
{ {
Text = "admin-smite-disarm-prone-name", Text = disarmProneName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/Actions/disarm.png")), Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/Actions/disarm.png")),
Act = () => Act = () =>
@@ -774,10 +811,11 @@ public sealed partial class AdminVerbSystem
EnsureComp<DisarmProneComponent>(args.Target); EnsureComp<DisarmProneComponent>(args.Target);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-disarm-prone-description"), Message = string.Join(": ", disarmProneName, Loc.GetString("admin-smite-disarm-prone-description"))
}; };
args.Verbs.Add(disarmProne); args.Verbs.Add(disarmProne);
var superSpeedName = Loc.GetString("admin-smite-super-speed-name").ToLowerInvariant();
Verb superSpeed = new() Verb superSpeed = new()
{ {
Text = "admin-smite-garbage-can-name", Text = "admin-smite-garbage-can-name",
@@ -792,41 +830,45 @@ public sealed partial class AdminVerbSystem
args.Target, PopupType.LargeCaution); args.Target, PopupType.LargeCaution);
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-super-speed-description"), Message = string.Join(": ", superSpeedName, Loc.GetString("admin-smite-super-speed-description"))
}; };
args.Verbs.Add(superSpeed); args.Verbs.Add(superSpeed);
//Bonk //Bonk
var superBonkLiteName = Loc.GetString("admin-smite-super-bonk-lite-name").ToLowerInvariant();
Verb superBonkLite = new() Verb superBonkLite = new()
{ {
Text = "admin-smite-super-bonk-name", Text = superBonkLiteName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Rsi(new("Structures/Furniture/Tables/glass.rsi"), "full"), Icon = new SpriteSpecifier.Rsi(new("Structures/Furniture/Tables/glass.rsi"), "full"),
Act = () => Act = () =>
{ {
_superBonkSystem.StartSuperBonk(args.Target, stopWhenDead: true); _superBonkSystem.StartSuperBonk(args.Target, stopWhenDead: true);
}, },
Message = Loc.GetString("admin-smite-super-bonk-lite-description"),
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = string.Join(": ", superBonkLiteName, Loc.GetString("admin-smite-super-bonk-lite-description"))
}; };
args.Verbs.Add(superBonkLite); args.Verbs.Add(superBonkLite);
var superBonkName = Loc.GetString("admin-smite-super-bonk-name").ToLowerInvariant();
Verb superBonk= new() Verb superBonk= new()
{ {
Text = "admin-smite-super-bonk-lite-name", Text = superBonkName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Rsi(new("Structures/Furniture/Tables/generic.rsi"), "full"), Icon = new SpriteSpecifier.Rsi(new("Structures/Furniture/Tables/generic.rsi"), "full"),
Act = () => Act = () =>
{ {
_superBonkSystem.StartSuperBonk(args.Target); _superBonkSystem.StartSuperBonk(args.Target);
}, },
Message = Loc.GetString("admin-smite-super-bonk-description"),
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = string.Join(": ", superBonkName, Loc.GetString("admin-smite-super-bonk-description"))
}; };
args.Verbs.Add(superBonk); args.Verbs.Add(superBonk);
var superslipName = Loc.GetString("admin-smite-super-slip-name").ToLowerInvariant();
Verb superslip = new() Verb superslip = new()
{ {
Text = "admin-smite-super-slip-name", Text = superslipName,
Category = VerbCategory.Smite, Category = VerbCategory.Smite,
Icon = new SpriteSpecifier.Rsi(new("Objects/Specific/Janitorial/soap.rsi"), "omega-4"), Icon = new SpriteSpecifier.Rsi(new("Objects/Specific/Janitorial/soap.rsi"), "omega-4"),
Act = () => Act = () =>
@@ -846,7 +888,7 @@ public sealed partial class AdminVerbSystem
} }
}, },
Impact = LogImpact.Extreme, Impact = LogImpact.Extreme,
Message = Loc.GetString("admin-smite-super-slip-description") Message = string.Join(": ", superslipName, Loc.GetString("admin-smite-super-slip-description"))
}; };
args.Verbs.Add(superslip); args.Verbs.Add(superslip);
} }

View File

@@ -20,42 +20,42 @@ admin-smite-explode-name = Explode
admin-smite-chess-dimension-name = Chess Dimension admin-smite-chess-dimension-name = Chess Dimension
admin-smite-set-alight-name = Set Alight admin-smite-set-alight-name = Set Alight
admin-smite-monkeyify-name = Monkeyify admin-smite-monkeyify-name = Monkeyify
admin-smite-electrocute-name = Garbage Can admin-smite-garbage-can-name = Garbage Can
admin-smite-creampie-name = Electrocute admin-smite-electrocute-name = Electrocute
admin-smite-remove-blood-name = Creampie admin-smite-remove-blood-name = Remove blood
admin-smite-vomit-organs-name = Remove blood admin-smite-remove-hands-name = Remove hands
admin-smite-remove-hands-name = Vomit organs admin-smite-remove-hand-name = Remove hand
admin-smite-remove-hand-name = Remove hands admin-smite-pinball-name = Pinball
admin-smite-pinball-name = Remove hand admin-smite-yeet-name = Yeet
admin-smite-yeet-name = Stomach Removal admin-smite-become-bread-name = Become Bread
admin-smite-become-bread-name = Lungs Removal admin-smite-cluwne-name = Cluwne
admin-smite-ghostkick-name = Pinball admin-smite-anger-pointing-arrows-name = Anger Pointing Arrows
admin-smite-nyanify-name = Yeet admin-smite-dust-name = Dust
admin-smite-kill-sign-name = Become Bread admin-smite-buffering-name = Buffering
admin-smite-cluwne-name = Become Mouse admin-smite-become-instrument-name = Become Instrument
admin-smite-anger-pointing-arrows-name = Ghostkick admin-smite-remove-gravity-name = Remove Gravity
admin-smite-dust-name = Nyanify admin-smite-reptilian-species-swap-name = Become Reptilian
admin-smite-buffering-name = Kill sign admin-smite-locker-stuff-name = Locker Stuff
admin-smite-become-instrument-name = Cluwne admin-smite-headstand-name = Headstand
admin-smite-remove-gravity-name = Maid admin-smite-become-mouse-name = Become Mouse
admin-smite-reptilian-species-swap-name = Anger Pointing Arrows admin-smite-maid-name = Cat Maid
admin-smite-locker-stuff-name = Dust admin-smite-zoom-in-name = Zoom In
admin-smite-headstand-name = Buffering admin-smite-flip-eye-name = Flip Eye
admin-smite-become-mouse-name = Become Instrument admin-smite-run-walk-swap-name = Run Walk Swap
admin-smite-maid-name = Remove gravity admin-smite-super-speed-name = Run Up
admin-smite-zoom-in-name = Reptilian Species Swap admin-smite-stomach-removal-name = Stomach Removal
admin-smite-flip-eye-name = Locker stuff admin-smite-speak-backwards-name = Speak Backwards
admin-smite-run-walk-swap-name = Headstand admin-smite-lung-removal-name = Lungs Removal
admin-smite-super-speed-name = Zoom in
admin-smite-stomach-removal-name = Flip eye
admin-smite-speak-backwards-name = Run Walk Swap
admin-smite-lung-removal-name = Speak Backwards
admin-smite-disarm-prone-name = Disarm Prone admin-smite-disarm-prone-name = Disarm Prone
admin-smite-garbage-can-name = Super speed admin-smite-super-bonk-name = Super Bonk
admin-smite-super-bonk-name = Super Bonk Lite admin-smite-super-bonk-lite-name = Super Bonk Lite
admin-smite-super-bonk-lite-name = Super Bonk
admin-smite-terminate-name = Terminate admin-smite-terminate-name = Terminate
admin-smite-super-slip-name = Super Slip admin-smite-super-slip-name = Super Slip
admin-smite-creampie-name = Cream
admin-smite-vomit-organs-name = Vomit Organs
admin-smite-ghostkick-name = Ghost Kick
admin-smite-nyanify-name = Cat Ears
admin-smite-kill-sign-name = Kill Sign
## Smite descriptions ## Smite descriptions