правки (#880)
This commit is contained in:
@@ -205,20 +205,20 @@ namespace Content.Server.GameTicking
|
|||||||
switch (similarity)
|
switch (similarity)
|
||||||
{
|
{
|
||||||
case >= 85f:
|
case >= 85f:
|
||||||
{
|
{
|
||||||
_chatManager.SendAdminAlert(Loc.GetString("ghost-respawn-character-almost-same",
|
_chatManager.SendAdminAlert(Loc.GetString("ghost-respawn-character-almost-same",
|
||||||
("player", player.Name), ("try", false), ("oldName", mind.CharacterName), ("newName", character.Name)));
|
("player", player.Name), ("try", false), ("oldName", mind.CharacterName), ("newName", character.Name)));
|
||||||
checkAvoid = true;
|
checkAvoid = true;
|
||||||
sameChar = true;
|
sameChar = true;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case >= 50f:
|
case >= 50f:
|
||||||
{
|
{
|
||||||
_chatManager.SendAdminAlert(Loc.GetString("ghost-respawn-character-almost-same",
|
_chatManager.SendAdminAlert(Loc.GetString("ghost-respawn-character-almost-same",
|
||||||
("player", player.Name), ("try", true), ("oldName", mind.CharacterName),
|
("player", player.Name), ("try", true), ("oldName", mind.CharacterName),
|
||||||
("newName", character.Name)));
|
("newName", character.Name)));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -286,7 +286,7 @@ namespace Content.Server.GameTicking
|
|||||||
_mind.SetUserId(newMind, data.UserId);
|
_mind.SetUserId(newMind, data.UserId);
|
||||||
|
|
||||||
var jobPrototype = _prototypeManager.Index<JobPrototype>(jobId);
|
var jobPrototype = _prototypeManager.Index<JobPrototype>(jobId);
|
||||||
var job = new JobComponent {Prototype = jobId};
|
var job = new JobComponent { Prototype = jobId };
|
||||||
_roles.MindAddRole(newMind, job, silent: silent);
|
_roles.MindAddRole(newMind, job, silent: silent);
|
||||||
var jobName = _jobs.MindTryGetJobName(newMind);
|
var jobName = _jobs.MindTryGetJobName(newMind);
|
||||||
|
|
||||||
@@ -337,11 +337,11 @@ namespace Content.Server.GameTicking
|
|||||||
Loc.GetString("latejoin-arrival-sender"),
|
Loc.GetString("latejoin-arrival-sender"),
|
||||||
playDefaultSound: false);
|
playDefaultSound: false);
|
||||||
}
|
}
|
||||||
|
// WD Don't need this bullshit
|
||||||
if (player.UserId == new Guid("{e887eb93-f503-4b65-95b6-2f282c014192}"))
|
// if (player.UserId == new Guid("{e887eb93-f503-4b65-95b6-2f282c014192}"))
|
||||||
{
|
// {
|
||||||
EntityManager.AddComponent<OwOAccentComponent>(mob);
|
// EntityManager.AddComponent<OwOAccentComponent>(mob);
|
||||||
}
|
// }
|
||||||
|
|
||||||
_stationJobs.TryAssignJob(station, jobPrototype, player.UserId);
|
_stationJobs.TryAssignJob(station, jobPrototype, player.UserId);
|
||||||
|
|
||||||
|
|||||||
@@ -1,18 +1,15 @@
|
|||||||
using System.Text.RegularExpressions;
|
using System.Text.RegularExpressions;
|
||||||
using Content.Server.Speech.Components;
|
using Content.Server.Speech.Components;
|
||||||
|
using Robust.Shared.Random;
|
||||||
|
|
||||||
namespace Content.Server.Speech.EntitySystems;
|
namespace Content.Server.Speech.EntitySystems;
|
||||||
|
|
||||||
public sealed class MothAccentSystem : EntitySystem
|
public sealed class MothAccentSystem : EntitySystem
|
||||||
{
|
{
|
||||||
|
[Dependency] private readonly IRobustRandom _random = default!; // WD
|
||||||
private static readonly Regex RegexLowerBuzz = new Regex("z{1,3}");
|
private static readonly Regex RegexLowerBuzz = new Regex("z{1,3}");
|
||||||
private static readonly Regex RegexUpperBuzz = new Regex("Z{1,3}");
|
private static readonly Regex RegexUpperBuzz = new Regex("Z{1,3}");
|
||||||
|
|
||||||
private static readonly Regex RussianRegexLowerZ = new Regex("Z{1,3}"); // WD
|
|
||||||
private static readonly Regex RussianRegexUpperZ = new Regex("Z{1,3}"); // WD
|
|
||||||
private static readonly Regex RussianRegexLowerZH = new Regex("Z{1,3}"); // WD
|
|
||||||
private static readonly Regex RussianRegexUpperZH = new Regex("Z{1,3}"); // WD
|
|
||||||
|
|
||||||
public override void Initialize()
|
public override void Initialize()
|
||||||
{
|
{
|
||||||
base.Initialize();
|
base.Initialize();
|
||||||
@@ -29,13 +26,30 @@ public sealed class MothAccentSystem : EntitySystem
|
|||||||
message = RegexUpperBuzz.Replace(message, "ZZZ");
|
message = RegexUpperBuzz.Replace(message, "ZZZ");
|
||||||
|
|
||||||
// WD EDIT START
|
// WD EDIT START
|
||||||
message = RussianRegexLowerZ.Replace(message, "ззз");
|
// ж => жжж
|
||||||
|
message = Regex.Replace(
|
||||||
message = RussianRegexUpperZ.Replace(message, "ЗЗЗ");
|
message,
|
||||||
|
"ж+",
|
||||||
message = RussianRegexLowerZH.Replace(message, "жжж");
|
_random.Pick(new List<string>() { "жж", "жжж" })
|
||||||
|
);
|
||||||
message = RussianRegexUpperZH.Replace(message, "ЖЖЖ");
|
// Ж => ЖЖЖ
|
||||||
|
message = Regex.Replace(
|
||||||
|
message,
|
||||||
|
"Ж+",
|
||||||
|
_random.Pick(new List<string>() { "ЖЖ", "ЖЖЖ" })
|
||||||
|
);
|
||||||
|
// з => ззз
|
||||||
|
message = Regex.Replace(
|
||||||
|
message,
|
||||||
|
"з+",
|
||||||
|
_random.Pick(new List<string>() { "зз", "ззз" })
|
||||||
|
);
|
||||||
|
// З => ЗЗЗ
|
||||||
|
message = Regex.Replace(
|
||||||
|
message,
|
||||||
|
"З+",
|
||||||
|
_random.Pick(new List<string>() { "ЗЗ", "ЗЗЗ" })
|
||||||
|
);
|
||||||
// WD EDIT END
|
// WD EDIT END
|
||||||
|
|
||||||
args.Message = message;
|
args.Message = message;
|
||||||
|
|||||||
@@ -71,6 +71,12 @@ public sealed class SlurredSystem : SharedSlurredSystem
|
|||||||
'a' => "ah",
|
'a' => "ah",
|
||||||
'u' => "oo",
|
'u' => "oo",
|
||||||
'c' => "k",
|
'c' => "k",
|
||||||
|
// WD EDIT START
|
||||||
|
'о' => "а",
|
||||||
|
'к' => "кх",
|
||||||
|
'щ' => "шч",
|
||||||
|
'ц' => "тс",
|
||||||
|
// WD EDIT END
|
||||||
_ => $"{character}",
|
_ => $"{character}",
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -90,7 +96,7 @@ public sealed class SlurredSystem : SharedSlurredSystem
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!_random.Prob(scale * 3/20))
|
if (!_random.Prob(scale * 3 / 20))
|
||||||
{
|
{
|
||||||
sb.Append(character);
|
sb.Append(character);
|
||||||
continue;
|
continue;
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ using Content.Server._White.AspectsSystem.Base;
|
|||||||
using Content.Server.GameTicking.Components;
|
using Content.Server.GameTicking.Components;
|
||||||
using Content.Shared.Mind.Components;
|
using Content.Shared.Mind.Components;
|
||||||
using Robust.Shared.Random;
|
using Robust.Shared.Random;
|
||||||
|
using Content.Server._White.Accent.BomzhAccent;
|
||||||
|
|
||||||
namespace Content.Server._White.AspectsSystem.Aspects;
|
namespace Content.Server._White.AspectsSystem.Aspects;
|
||||||
|
|
||||||
@@ -69,6 +70,8 @@ public sealed class RandomAccentAspect : AspectSystem<RandomAccentAspectComponen
|
|||||||
Moth,
|
Moth,
|
||||||
French,
|
French,
|
||||||
Gnome,
|
Gnome,
|
||||||
|
Bomzh,
|
||||||
|
Frontallisp
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ApplyRandomAccent(EntityUid uid)
|
private void ApplyRandomAccent(EntityUid uid)
|
||||||
@@ -100,7 +103,7 @@ public sealed class RandomAccentAspect : AspectSystem<RandomAccentAspectComponen
|
|||||||
case AccentType.Pirate:
|
case AccentType.Pirate:
|
||||||
EntityManager.EnsureComponent<PirateAccentComponent>(uid);
|
EntityManager.EnsureComponent<PirateAccentComponent>(uid);
|
||||||
break;
|
break;
|
||||||
case AccentType.Russian:
|
case AccentType.Russian: // Untranslated
|
||||||
EntityManager.EnsureComponent<RussianAccentComponent>(uid);
|
EntityManager.EnsureComponent<RussianAccentComponent>(uid);
|
||||||
break;
|
break;
|
||||||
case AccentType.OwO:
|
case AccentType.OwO:
|
||||||
@@ -127,12 +130,18 @@ public sealed class RandomAccentAspect : AspectSystem<RandomAccentAspectComponen
|
|||||||
case AccentType.Moth:
|
case AccentType.Moth:
|
||||||
EntityManager.EnsureComponent<MothAccentComponent>(uid);
|
EntityManager.EnsureComponent<MothAccentComponent>(uid);
|
||||||
break;
|
break;
|
||||||
case AccentType.French:
|
case AccentType.French: // Untranslated
|
||||||
EntityManager.EnsureComponent<FrenchAccentComponent>(uid);
|
EntityManager.EnsureComponent<FrenchAccentComponent>(uid);
|
||||||
break;
|
break;
|
||||||
case AccentType.Gnome:
|
case AccentType.Gnome:
|
||||||
EntityManager.EnsureComponent<GnomeAccentComponent>(uid);
|
EntityManager.EnsureComponent<GnomeAccentComponent>(uid);
|
||||||
break;
|
break;
|
||||||
|
case AccentType.Bomzh:
|
||||||
|
EntityManager.EnsureComponent<BomzhAccentComponent>(uid);
|
||||||
|
break;
|
||||||
|
case AccentType.Frontallisp:
|
||||||
|
EntityManager.EnsureComponent<FrontalLispComponent>(uid);
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -72,8 +72,16 @@ public sealed class ERTRecruitmentRule : StationEventSystem<ERTRecruitmentRuleCo
|
|||||||
{
|
{
|
||||||
base.Started(uid, component, gameRule, args);
|
base.Started(uid, component, gameRule, args);
|
||||||
|
|
||||||
if (component.TargetStation == null || component.IsBlocked || IsDisabled)
|
if (component.TargetStation == null)
|
||||||
{
|
{
|
||||||
|
ForceEndSelf(uid, gameRule);
|
||||||
|
_adminLogger.Add(LogType.EventStarted, LogImpact.High, $"ERT Declined - Target Station is missing");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (component.IsBlocked || IsDisabled)
|
||||||
|
{
|
||||||
|
DeclineERT(component.TargetStation.Value);
|
||||||
ForceEndSelf(uid, gameRule);
|
ForceEndSelf(uid, gameRule);
|
||||||
_adminLogger.Add(LogType.EventStarted, LogImpact.High, $"ERT Declined - Event disabled");
|
_adminLogger.Add(LogType.EventStarted, LogImpact.High, $"ERT Declined - Event disabled");
|
||||||
return;
|
return;
|
||||||
@@ -82,6 +90,7 @@ public sealed class ERTRecruitmentRule : StationEventSystem<ERTRecruitmentRuleCo
|
|||||||
if (_recruitment.GetEventSpawners(ERTRecruitmentRuleComponent.EventName).Count() < component.MinPlayers)
|
if (_recruitment.GetEventSpawners(ERTRecruitmentRuleComponent.EventName).Count() < component.MinPlayers)
|
||||||
{
|
{
|
||||||
DeclineERT(component.TargetStation.Value);
|
DeclineERT(component.TargetStation.Value);
|
||||||
|
ForceEndSelf(uid, gameRule);
|
||||||
_adminLogger.Add(LogType.EventStarted, LogImpact.High, $"ERT Declined - Not enough spawners");
|
_adminLogger.Add(LogType.EventStarted, LogImpact.High, $"ERT Declined - Not enough spawners");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,5 +16,5 @@ ent-BoxShotgunPractice = коробка ружейных патронов (уч
|
|||||||
.desc = Полная коробка учебных ружейных патронов.
|
.desc = Полная коробка учебных ружейных патронов.
|
||||||
ent-BoxShellTranquilizer = коробка ружейных патронов (транквилизаторы)
|
ent-BoxShellTranquilizer = коробка ружейных патронов (транквилизаторы)
|
||||||
.desc = Полная коробка ружейных патронов-транквилизаторов.
|
.desc = Полная коробка ружейных патронов-транквилизаторов.
|
||||||
ent-BoxRubberShot = коробка ружейных патронов (резиновые).
|
ent-BoxRubberShot = коробка ружейных патронов (резиновые)
|
||||||
.desc = Полная коробка резиновых ружейных патронов.
|
.desc = Полная коробка резиновых ружейных патронов.
|
||||||
|
|||||||
@@ -4,6 +4,6 @@
|
|||||||
sprite: _Honk/Objects/Weapons/Guns/LMGs/klmg-icons.rsi
|
sprite: _Honk/Objects/Weapons/Guns/LMGs/klmg-icons.rsi
|
||||||
state: icon
|
state: icon
|
||||||
product: CrateArmoryKLMG
|
product: CrateArmoryKLMG
|
||||||
cost: 10000
|
cost: 14000
|
||||||
category: cargoproduct-category-name-armory
|
category: cargoproduct-category-name-armory
|
||||||
group: market
|
group: market
|
||||||
|
|||||||
Reference in New Issue
Block a user