Tweaks (#568)
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Numerics;
|
using System.Numerics;
|
||||||
using Content.Server._White.Cult;
|
|
||||||
using Content.Server._White.IncorporealSystem;
|
using Content.Server._White.IncorporealSystem;
|
||||||
|
using Content.Server._White.Other.FastAndFuriousSystem;
|
||||||
using Content.Server._White.Wizard.Charging;
|
using Content.Server._White.Wizard.Charging;
|
||||||
using Content.Server._White.Wizard.Magic.Amaterasu;
|
using Content.Server._White.Wizard.Magic.Amaterasu;
|
||||||
using Content.Server._White.Wizard.Magic.Other;
|
using Content.Server._White.Wizard.Magic.Other;
|
||||||
@@ -48,6 +48,7 @@ using Content.Shared.Physics;
|
|||||||
using Content.Shared.Popups;
|
using Content.Shared.Popups;
|
||||||
using Content.Shared.Revolutionary.Components;
|
using Content.Shared.Revolutionary.Components;
|
||||||
using Content.Shared.StatusEffect;
|
using Content.Shared.StatusEffect;
|
||||||
|
using Content.Shared.Stunnable;
|
||||||
using Content.Shared.Throwing;
|
using Content.Shared.Throwing;
|
||||||
using Robust.Shared.Audio.Systems;
|
using Robust.Shared.Audio.Systems;
|
||||||
using Robust.Shared.Map;
|
using Robust.Shared.Map;
|
||||||
@@ -88,6 +89,7 @@ public sealed class WizardSpellsSystem : EntitySystem
|
|||||||
[Dependency] private readonly MindSystem _mindSystem = default!;
|
[Dependency] private readonly MindSystem _mindSystem = default!;
|
||||||
[Dependency] private readonly ActionContainerSystem _actionContainer = default!;
|
[Dependency] private readonly ActionContainerSystem _actionContainer = default!;
|
||||||
[Dependency] private readonly ChargingSystem _charging = default!;
|
[Dependency] private readonly ChargingSystem _charging = default!;
|
||||||
|
[Dependency] private readonly SharedStunSystem _stun = default!;
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
@@ -191,6 +193,7 @@ public sealed class WizardSpellsSystem : EntitySystem
|
|||||||
SwapComponent<RevolutionaryComponent>(uid, target);
|
SwapComponent<RevolutionaryComponent>(uid, target);
|
||||||
SwapComponent<HeadRevolutionaryComponent>(uid, target);
|
SwapComponent<HeadRevolutionaryComponent>(uid, target);
|
||||||
SwapComponent<GlobalAntagonistComponent>(uid, target);
|
SwapComponent<GlobalAntagonistComponent>(uid, target);
|
||||||
|
SwapComponent<FastAndFuriousComponent>(uid, target);
|
||||||
|
|
||||||
_mindSystem.TransferTo(mindId, target, mind: mind);
|
_mindSystem.TransferTo(mindId, target, mind: mind);
|
||||||
|
|
||||||
@@ -738,8 +741,8 @@ public sealed class WizardSpellsSystem : EntitySystem
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_stun.TryKnockdown(msg.TargetUid, TimeSpan.FromSeconds(4), true);
|
||||||
_throwingSystem.TryThrow(msg.TargetUid, Transform(msg.Performer).Coordinates, 5f);
|
_throwingSystem.TryThrow(msg.TargetUid, Transform(msg.Performer).Coordinates, 5f);
|
||||||
_standing.TryLieDown(msg.TargetUid);
|
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@@ -936,6 +939,10 @@ public sealed class WizardSpellsSystem : EntitySystem
|
|||||||
if (hasReqs)
|
if (hasReqs)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
if (_inventory.TryGetSlotEntity(args.Performer, "outerClothing", out var entity) &&
|
||||||
|
comp.ClothingWhitelist?.IsValid(entity.Value) is true)
|
||||||
|
return;
|
||||||
|
|
||||||
args.Cancelled = true;
|
args.Cancelled = true;
|
||||||
_popupSystem.PopupEntity(Loc.GetString("magic-component-missing-req"), args.Performer, args.Performer);
|
_popupSystem.PopupEntity(Loc.GetString("magic-component-missing-req"), args.Performer, args.Performer);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -554,6 +554,12 @@ public abstract partial class SharedGunSystem : EntitySystem
|
|||||||
Dirty(gun);
|
Dirty(gun);
|
||||||
}
|
}
|
||||||
// WD EDIT
|
// WD EDIT
|
||||||
|
public void SetFireMode(GunComponent gun, SelectiveFire available, SelectiveFire selected)
|
||||||
|
{
|
||||||
|
gun.AvailableModes = available;
|
||||||
|
gun.SelectedMode = selected;
|
||||||
|
}
|
||||||
|
|
||||||
public void SetUseKey(GunComponent gun, bool useKey)
|
public void SetUseKey(GunComponent gun, bool useKey)
|
||||||
{
|
{
|
||||||
gun.UseKey = useKey;
|
gun.UseKey = useKey;
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
using Robust.Shared.GameStates;
|
using Content.Shared.Whitelist;
|
||||||
|
using Robust.Shared.GameStates;
|
||||||
|
|
||||||
namespace Content.Shared._White.Wizard.Magic;
|
namespace Content.Shared._White.Wizard.Magic;
|
||||||
|
|
||||||
@@ -10,4 +11,7 @@ public sealed partial class MagicComponent : Component
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
[DataField, ViewVariables(VVAccess.ReadWrite)]
|
[DataField, ViewVariables(VVAccess.ReadWrite)]
|
||||||
public bool RequiresClothes;
|
public bool RequiresClothes;
|
||||||
|
|
||||||
|
[DataField]
|
||||||
|
public EntityWhitelist? ClothingWhitelist;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -103,6 +103,7 @@ public abstract class SharedSpellBladeSystem : EntitySystem
|
|||||||
var gun = EnsureComp<GunComponent>(uid);
|
var gun = EnsureComp<GunComponent>(uid);
|
||||||
_gun.SetUseKey(gun, false);
|
_gun.SetUseKey(gun, false);
|
||||||
_gun.SetClumsyProof(gun, true);
|
_gun.SetClumsyProof(gun, true);
|
||||||
|
_gun.SetFireMode(gun, SelectiveFire.FullAuto, SelectiveFire.FullAuto);
|
||||||
_gun.SetSound(uid, new SoundPathSpecifier("/Audio/Weapons/Guns/Gunshots/Magic/staff_healing.ogg"));
|
_gun.SetSound(uid, new SoundPathSpecifier("/Audio/Weapons/Guns/Gunshots/Magic/staff_healing.ogg"));
|
||||||
_gun.SetFireRate(uid, 1.2f);
|
_gun.SetFireRate(uid, 1.2f);
|
||||||
var ammoProvider = EnsureComp<BasicEntityAmmoProviderComponent>(uid);
|
var ammoProvider = EnsureComp<BasicEntityAmmoProviderComponent>(uid);
|
||||||
|
|||||||
@@ -17,10 +17,10 @@ ent-ClothingOuterArmorHeavyRed = красный тяжелый бронекос
|
|||||||
.desc = Тяжело бронированный костюм с красными вставками, способный защитить от высокого урона.
|
.desc = Тяжело бронированный костюм с красными вставками, способный защитить от высокого урона.
|
||||||
.suffix = { "" }
|
.suffix = { "" }
|
||||||
ent-ClothingOuterArmorMagusblue = синие доспехи магуса
|
ent-ClothingOuterArmorMagusblue = синие доспехи магуса
|
||||||
.desc = Синий бронекостюм, обеспечивающий хорошую защиту. Не обладает свойствами волшебной мантии.
|
.desc = Синий бронекостюм, обеспечивающий хорошую защиту. Не обладает свойствами волшебной мантии, но позволяет кастовать заклинание электрической дуги.
|
||||||
.suffix = { "" }
|
.suffix = { "" }
|
||||||
ent-ClothingOuterArmorMagusred = красные доспехи магуса
|
ent-ClothingOuterArmorMagusred = красные доспехи магуса
|
||||||
.desc = Красный бронекостюм, обеспечивающий хорошую защиту. Не обладает свойствами волшебной мантии.
|
.desc = Красный бронекостюм, обеспечивающий хорошую защиту. Не обладает свойствами волшебной мантии, но позволяет кастовать заклинание огненного шара.
|
||||||
.suffix = { "" }
|
.suffix = { "" }
|
||||||
ent-ClothingOuterArmorRiot = противоударный костюм
|
ent-ClothingOuterArmorRiot = противоударный костюм
|
||||||
.desc = Бронежилет с тяжелыми накладками для защиты в ближнем бою, идеально подходит для борьбы с правонарушителями на станции.
|
.desc = Бронежилет с тяжелыми накладками для защиты в ближнем бою, идеально подходит для борьбы с правонарушителями на станции.
|
||||||
|
|||||||
@@ -222,6 +222,10 @@
|
|||||||
- type: ClothingSpeedModifier
|
- type: ClothingSpeedModifier
|
||||||
walkModifier: 1
|
walkModifier: 1
|
||||||
sprintModifier: 1
|
sprintModifier: 1
|
||||||
|
- type: Tag
|
||||||
|
tags:
|
||||||
|
- WhitelistChameleon
|
||||||
|
- BlueMagusArmor
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
parent: ClothingOuterArmorMagusblue
|
parent: ClothingOuterArmorMagusblue
|
||||||
@@ -233,8 +237,10 @@
|
|||||||
sprite: Clothing/OuterClothing/Armor/magusred.rsi
|
sprite: Clothing/OuterClothing/Armor/magusred.rsi
|
||||||
- type: Clothing
|
- type: Clothing
|
||||||
sprite: Clothing/OuterClothing/Armor/magusred.rsi
|
sprite: Clothing/OuterClothing/Armor/magusred.rsi
|
||||||
|
- type: Tag
|
||||||
|
tags:
|
||||||
|
- WhitelistChameleon
|
||||||
|
- RedMagusArmor
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
parent: ClothingOuterBase
|
parent: ClothingOuterBase
|
||||||
|
|||||||
@@ -101,6 +101,7 @@
|
|||||||
- Biological
|
- Biological
|
||||||
- Inorganic
|
- Inorganic
|
||||||
- type: Invisibility
|
- type: Invisibility
|
||||||
|
- type: ThermalBlocker
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: ActionAGhostShowSolar
|
id: ActionAGhostShowSolar
|
||||||
|
|||||||
@@ -28,3 +28,5 @@
|
|||||||
deleteOnDrop: true
|
deleteOnDrop: true
|
||||||
- type: ToolForcePowered
|
- type: ToolForcePowered
|
||||||
- type: DeleteOnChangelingRefund
|
- type: DeleteOnChangelingRefund
|
||||||
|
- type: MeleeBlock
|
||||||
|
delay: 12.1
|
||||||
|
|||||||
@@ -82,6 +82,8 @@
|
|||||||
- suitStorage
|
- suitStorage
|
||||||
- type: DisarmMalus
|
- type: DisarmMalus
|
||||||
- type: CultItem
|
- type: CultItem
|
||||||
|
- type: MeleeBlock
|
||||||
|
delay: 12.1
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
name: unholy halberd
|
name: unholy halberd
|
||||||
@@ -123,3 +125,5 @@
|
|||||||
- type: UseDelay
|
- type: UseDelay
|
||||||
delay: 1
|
delay: 1
|
||||||
- type: CultItem
|
- type: CultItem
|
||||||
|
- type: MeleeBlock
|
||||||
|
delay: 12.1
|
||||||
|
|||||||
@@ -34,6 +34,9 @@
|
|||||||
soundGunshot: /Audio/Weapons/plasma_cutter.ogg
|
soundGunshot: /Audio/Weapons/plasma_cutter.ogg
|
||||||
fireRate: 1
|
fireRate: 1
|
||||||
useKey: false
|
useKey: false
|
||||||
|
selectedMode: FullAuto
|
||||||
|
availableModes:
|
||||||
|
- FullAuto
|
||||||
- type: RechargeBasicEntityAmmo
|
- type: RechargeBasicEntityAmmo
|
||||||
rechargeCooldown: 0.5
|
rechargeCooldown: 0.5
|
||||||
rechargeSound:
|
rechargeSound:
|
||||||
@@ -95,8 +98,6 @@
|
|||||||
components:
|
components:
|
||||||
- type: Sprite
|
- type: Sprite
|
||||||
sprite: Objects/Weapons/Melee/crusher_glaive.rsi
|
sprite: Objects/Weapons/Melee/crusher_glaive.rsi
|
||||||
- type: UseDelay
|
|
||||||
delay: 1.9
|
|
||||||
- type: LeechOnMarker
|
- type: LeechOnMarker
|
||||||
leech:
|
leech:
|
||||||
groups:
|
groups:
|
||||||
|
|||||||
@@ -64,6 +64,8 @@
|
|||||||
- Belt
|
- Belt
|
||||||
- SuitStorage
|
- SuitStorage
|
||||||
- type: DisarmMalus
|
- type: DisarmMalus
|
||||||
|
- type: MeleeBlock
|
||||||
|
delay: 12.1
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
name: energy katana
|
name: energy katana
|
||||||
@@ -164,6 +166,8 @@
|
|||||||
deconstructionTarget: null
|
deconstructionTarget: null
|
||||||
graph: SwordGraph
|
graph: SwordGraph
|
||||||
node: sword
|
node: sword
|
||||||
|
- type: MeleeBlock
|
||||||
|
delay: 12.1
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
name: cutlass
|
name: cutlass
|
||||||
@@ -189,6 +193,8 @@
|
|||||||
size: Large
|
size: Large
|
||||||
sprite: Objects/Weapons/Melee/cutlass.rsi
|
sprite: Objects/Weapons/Melee/cutlass.rsi
|
||||||
- type: DisarmMalus
|
- type: DisarmMalus
|
||||||
|
- type: MeleeBlock
|
||||||
|
delay: 12.1
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
name: The Throngler
|
name: The Throngler
|
||||||
|
|||||||
@@ -5,6 +5,9 @@
|
|||||||
components:
|
components:
|
||||||
- type: Magic
|
- type: Magic
|
||||||
requiresClothes: true
|
requiresClothes: true
|
||||||
|
clothingWhitelist:
|
||||||
|
tags:
|
||||||
|
- BlueMagusArmor
|
||||||
- type: WorldTargetAction
|
- type: WorldTargetAction
|
||||||
itemIconStyle: BigAction
|
itemIconStyle: BigAction
|
||||||
useDelay: 60
|
useDelay: 60
|
||||||
@@ -29,7 +32,7 @@
|
|||||||
prototype: ProjectileTeslaBall
|
prototype: ProjectileTeslaBall
|
||||||
posData: !type:TargetCasterPos
|
posData: !type:TargetCasterPos
|
||||||
- type: VariableUseDelay
|
- type: VariableUseDelay
|
||||||
useDelay: 5
|
useDelay: 10
|
||||||
altUseDelay: 5
|
altUseDelay: 5
|
||||||
chargeUseDelay: 30
|
chargeUseDelay: 30
|
||||||
|
|
||||||
@@ -63,7 +66,7 @@
|
|||||||
speech: "EL DRITCH!"
|
speech: "EL DRITCH!"
|
||||||
- type: VariableUseDelay
|
- type: VariableUseDelay
|
||||||
useDelay: 6
|
useDelay: 6
|
||||||
altUseDelay: 2
|
altUseDelay: 3
|
||||||
chargeUseDelay: 30
|
chargeUseDelay: 30
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
@@ -73,6 +76,9 @@
|
|||||||
components:
|
components:
|
||||||
- type: Magic
|
- type: Magic
|
||||||
requiresClothes: true
|
requiresClothes: true
|
||||||
|
clothingWhitelist:
|
||||||
|
tags:
|
||||||
|
- RedMagusArmor
|
||||||
- type: WorldTargetAction
|
- type: WorldTargetAction
|
||||||
itemIconStyle: BigAction
|
itemIconStyle: BigAction
|
||||||
useDelay: 60
|
useDelay: 60
|
||||||
@@ -128,7 +134,7 @@
|
|||||||
posData: !type:TargetCasterPos
|
posData: !type:TargetCasterPos
|
||||||
speech: "SHIZO NERO!"
|
speech: "SHIZO NERO!"
|
||||||
- type: VariableUseDelay
|
- type: VariableUseDelay
|
||||||
useDelay: 4
|
useDelay: 5
|
||||||
altUseDelay: 1
|
altUseDelay: 1
|
||||||
chargeUseDelay: 30
|
chargeUseDelay: 30
|
||||||
|
|
||||||
|
|||||||
@@ -23,12 +23,12 @@
|
|||||||
thresholds:
|
thresholds:
|
||||||
- trigger:
|
- trigger:
|
||||||
!type:DamageTrigger
|
!type:DamageTrigger
|
||||||
damage: 150
|
damage: 100
|
||||||
behaviors:
|
behaviors:
|
||||||
- !type:DoActsBehavior
|
- !type:DoActsBehavior
|
||||||
acts: [ "Destruction" ]
|
acts: [ "Destruction" ]
|
||||||
- type: Reflect
|
- type: Reflect
|
||||||
reflectProb: 0.5
|
reflectProb: 0.25
|
||||||
reflects:
|
reflects:
|
||||||
- Energy
|
- Energy
|
||||||
- type: ReturnItemOnThrow
|
- type: ReturnItemOnThrow
|
||||||
|
|||||||
@@ -341,6 +341,7 @@
|
|||||||
sprite: White/Objects/Weapons/Chaplain/pitchfork.rsi
|
sprite: White/Objects/Weapons/Chaplain/pitchfork.rsi
|
||||||
state: icon
|
state: icon
|
||||||
- type: MeleeWeapon
|
- type: MeleeWeapon
|
||||||
|
range: 2
|
||||||
wideAnimationRotation: -135
|
wideAnimationRotation: -135
|
||||||
damage:
|
damage:
|
||||||
types:
|
types:
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
sprite: White/Objects/Weapons/Chaplain/hfrequency.rsi
|
sprite: White/Objects/Weapons/Chaplain/hfrequency.rsi
|
||||||
- type: MeleeWeapon
|
- type: MeleeWeapon
|
||||||
autoAttack: true
|
autoAttack: true
|
||||||
attackRate: 4
|
attackRate: 5
|
||||||
damage:
|
damage:
|
||||||
types:
|
types:
|
||||||
Slash: 10
|
Slash: 10
|
||||||
@@ -39,7 +39,7 @@
|
|||||||
wideAnimationRotation: 135
|
wideAnimationRotation: 135
|
||||||
damage:
|
damage:
|
||||||
types:
|
types:
|
||||||
Slash: 30
|
Slash: 35
|
||||||
- type: Clothing
|
- type: Clothing
|
||||||
quickEquip: false
|
quickEquip: false
|
||||||
sprite: White/Objects/Weapons/Chaplain/spellblade.rsi
|
sprite: White/Objects/Weapons/Chaplain/spellblade.rsi
|
||||||
|
|||||||
@@ -93,3 +93,9 @@
|
|||||||
|
|
||||||
- type: Tag
|
- type: Tag
|
||||||
id: UnoCard
|
id: UnoCard
|
||||||
|
|
||||||
|
- type: Tag
|
||||||
|
id: RedMagusArmor
|
||||||
|
|
||||||
|
- type: Tag
|
||||||
|
id: BlueMagusArmor
|
||||||
|
|||||||
Reference in New Issue
Block a user