mirror of
https://github.com/WWhiteDreamProject/wwdpublic.git
synced 2026-04-17 13:37:47 +03:00
Variant Latent Psychics (#2176)
# Description This PR adds a dedicated "Psionics" tab to the traits menu, where every single Psionics related trait has been moved to. It includes subcategories for Psicaster Type, Feats, and Powers. There are currently 3 different variants of "Psicaster", two of which are new. **Latent Psychic**: Exactly as before with Psionics V3. No changes here. **PsychoHistorian**: A new variant psicaster that enjoys significantly faster power development, with a heavy focus on "Utility" powers. As a tradeoff, they can ONLY obtain utility powers. **Elementalist**: The second new variant psicaster type. Elementalists have the option to buy powers directly from the Anomalist power category. The tradeoff here is that these are the only powers they will ever have. Elementalists will never generate new powers during a round, and cannot gain Potentia. All 3 Psicaster Types have their own dedicated "Shop" that is accessed via the Powers tab in the traits menu. They each have their own separate costs and availabilities. They also all 3 have their own random power charts. # TODO <details><summary><h1>Media</h1></summary> <p>  </p> </details> # Changelog 🆑 - add: Added a dedicated Psionics tab to the Traits menu. - add: Added PsychoHistorian as a new psionic variant. PsychoHistorians have significantly faster new power generation, but are strictly limited to the Mentalics power category. They essentially only get "Utility" powers. PsychoHistorians have Telepathy as a free bonus power. - add: Added Elementalist as a new psionic variant. Elementalists do not generate new powers at all during the round. Instead, they purchase powers directly at character creation, using the Anomalist powers category. - add: @#$%(*&FAREWELL, FRIEND. @#&#^!@*(&^$I @*#$&^@#$% WAS @#$@#$*&^@#$ALWAYS A *&#^@$@#THOUSAND *(&@^#$TIMES *(@#$(*&MORE *(&^*&(EVIL ^&*((*&^THAN (*&^&*(^%*(&THOU! (cherry picked from commit 7cc86ec5558c6fbe42cdfc4cd61ac31e4bd69232)
This commit is contained in:
@@ -2,6 +2,7 @@
|
||||
using Content.Shared.Actions;
|
||||
using Content.Shared.Body.Components;
|
||||
using Content.Shared.Body.Systems;
|
||||
using Content.Shared.Chat;
|
||||
using Content.Shared.Coordinates.Helpers;
|
||||
using Content.Shared.Doors.Components;
|
||||
using Content.Shared.Doors.Systems;
|
||||
@@ -508,7 +509,7 @@ public abstract class SharedMagicSystem : EntitySystem
|
||||
|
||||
// When any spell is cast it will raise this as an event, so then it can be played in server or something. At least until chat gets moved to shared
|
||||
// TODO: Temp until chat is in shared
|
||||
private void Speak(BaseActionEvent args)
|
||||
public void Speak(BaseActionEvent args)
|
||||
{
|
||||
if (args is not ISpeakSpell speak || string.IsNullOrWhiteSpace(speak.Speech))
|
||||
return;
|
||||
@@ -516,4 +517,10 @@ public abstract class SharedMagicSystem : EntitySystem
|
||||
var ev = new SpeakSpellEvent(args.Performer, speak.Speech, speak.ChatType);
|
||||
RaiseLocalEvent(ref ev);
|
||||
}
|
||||
|
||||
public void Speak(EntityUid uid, string speech, InGameICChatType inGameICChatType)
|
||||
{
|
||||
var ev = new SpeakSpellEvent(uid, speech, inGameICChatType);
|
||||
RaiseLocalEvent(ref ev);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user