Holoclown (clown only) syndicate uplink item. (#18966)
* Holoclown (clown only) syndicate uplink item. * added clumsy to holoclown * holoclown now uses clown names, holoclown kits box now counts as boxhugs for crafting. * gibs holoparasite on death if has hands (this will cause the items in hands and pockets to drop.
This commit is contained in:
@@ -1,4 +1,6 @@
|
|||||||
|
using Content.Server.Inventory;
|
||||||
using Content.Server.Popups;
|
using Content.Server.Popups;
|
||||||
|
using Content.Server.Body.Systems;
|
||||||
using Content.Shared.Actions;
|
using Content.Shared.Actions;
|
||||||
using Content.Shared.Audio;
|
using Content.Shared.Audio;
|
||||||
using Content.Shared.Damage;
|
using Content.Shared.Damage;
|
||||||
@@ -14,6 +16,7 @@ using Robust.Server.GameObjects;
|
|||||||
using Robust.Shared.Containers;
|
using Robust.Shared.Containers;
|
||||||
using Robust.Shared.Player;
|
using Robust.Shared.Player;
|
||||||
using Robust.Shared.Utility;
|
using Robust.Shared.Utility;
|
||||||
|
using Content.Shared.Hands.Components;
|
||||||
|
|
||||||
namespace Content.Server.Guardian
|
namespace Content.Server.Guardian
|
||||||
{
|
{
|
||||||
@@ -28,6 +31,7 @@ namespace Content.Server.Guardian
|
|||||||
[Dependency] private readonly SharedActionsSystem _actionSystem = default!;
|
[Dependency] private readonly SharedActionsSystem _actionSystem = default!;
|
||||||
[Dependency] private readonly SharedHandsSystem _handsSystem = default!;
|
[Dependency] private readonly SharedHandsSystem _handsSystem = default!;
|
||||||
[Dependency] private readonly SharedAudioSystem _audio = default!;
|
[Dependency] private readonly SharedAudioSystem _audio = default!;
|
||||||
|
[Dependency] private readonly BodySystem _bodySystem = default!;
|
||||||
|
|
||||||
public override void Initialize()
|
public override void Initialize()
|
||||||
{
|
{
|
||||||
@@ -94,6 +98,9 @@ namespace Content.Server.Guardian
|
|||||||
if (component.HostedGuardian == null)
|
if (component.HostedGuardian == null)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
if (HasComp<HandsComponent>(component.HostedGuardian.Value))
|
||||||
|
_bodySystem.GibBody(component.HostedGuardian.Value);
|
||||||
|
|
||||||
EntityManager.QueueDeleteEntity(component.HostedGuardian.Value);
|
EntityManager.QueueDeleteEntity(component.HostedGuardian.Value);
|
||||||
_actionSystem.RemoveAction(uid, component.Action);
|
_actionSystem.RemoveAction(uid, component.Action);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -94,6 +94,9 @@ ghost-role-information-guardian-description = Listen to your owner. Don't tank d
|
|||||||
ghost-role-information-holoparasite-name = Holoparasite
|
ghost-role-information-holoparasite-name = Holoparasite
|
||||||
ghost-role-information-holoparasite-description = Listen to your owner. Don't tank damage. Punch people hard.
|
ghost-role-information-holoparasite-description = Listen to your owner. Don't tank damage. Punch people hard.
|
||||||
|
|
||||||
|
ghost-role-information-holoclown-name = Holoclown
|
||||||
|
ghost-role-information-holoclown-description = Listen to your owner. Utilize your pockets and hand to help your owner.
|
||||||
|
|
||||||
ghost-role-information-ifrit-name = Ifrit
|
ghost-role-information-ifrit-name = Ifrit
|
||||||
ghost-role-information-ifrit-description = Listen to your owner. Don't tank damage. Punch people hard.
|
ghost-role-information-ifrit-description = Listen to your owner. Don't tank damage. Punch people hard.
|
||||||
|
|
||||||
|
|||||||
@@ -84,6 +84,10 @@ uplink-holopara-kit-name = Holoparasite Kit
|
|||||||
uplink-holopara-kit-desc = The pride and joy of Cybersun. Contains an injector that hosts a sentient metaphysical guardian made of hard light which resides in the user's body when not active.
|
uplink-holopara-kit-desc = The pride and joy of Cybersun. Contains an injector that hosts a sentient metaphysical guardian made of hard light which resides in the user's body when not active.
|
||||||
The guardian can punch rapidly and is immune to hazardous environments while being resistant to direct trauma, but shares any damage it takes with the user.
|
The guardian can punch rapidly and is immune to hazardous environments while being resistant to direct trauma, but shares any damage it takes with the user.
|
||||||
|
|
||||||
|
uplink-holoclown-kit-name = Holoclown Kit
|
||||||
|
uplink-holoclown-kit-desc = A joint venture between Cybersun and Honk.co. Contains an injector that hosts a sentient metaphysical clown made of hard light which resides in the user's body when not active.
|
||||||
|
The holoclown has pockets to store things, a hardlight hand it can manipulate the environment with and is immune to hazardous environments while being resistant to direct trauma, but shares any damage it takes with the user.
|
||||||
|
|
||||||
uplink-holster-name = Shoulder Holster
|
uplink-holster-name = Shoulder Holster
|
||||||
uplink-holster-desc = A deep shoulder holster capable of holding many types of ballistics.
|
uplink-holster-desc = A deep shoulder holster capable of holding many types of ballistics.
|
||||||
|
|
||||||
|
|||||||
@@ -922,6 +922,21 @@
|
|||||||
whitelist:
|
whitelist:
|
||||||
- Clown
|
- Clown
|
||||||
|
|
||||||
|
- type: listing
|
||||||
|
id: UplinkHoloclownKit
|
||||||
|
name: uplink-holoclown-kit-name
|
||||||
|
description: uplink-holoclown-kit-desc
|
||||||
|
icon: { sprite: /Textures/Objects/Fun/figurines.rsi, state: holoclown }
|
||||||
|
productEntity: BoxHoloclown
|
||||||
|
cost:
|
||||||
|
Telecrystal: 12
|
||||||
|
categories:
|
||||||
|
- UplinkJob
|
||||||
|
conditions:
|
||||||
|
- !type:BuyerJobCondition
|
||||||
|
whitelist:
|
||||||
|
- Clown
|
||||||
|
|
||||||
- type: listing
|
- type: listing
|
||||||
id: uplinkHotPotato
|
id: uplinkHotPotato
|
||||||
name: uplink-hot-potato-name
|
name: uplink-hot-potato-name
|
||||||
|
|||||||
@@ -151,3 +151,76 @@
|
|||||||
map: [ "enum.DamageStateVisualLayers.BaseUnshaded" ]
|
map: [ "enum.DamageStateVisualLayers.BaseUnshaded" ]
|
||||||
color: "#40a7d7"
|
color: "#40a7d7"
|
||||||
shader: unshaded
|
shader: unshaded
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
name: HoloClown
|
||||||
|
id: MobHoloClownGuardian
|
||||||
|
parent: MobGuardianBase
|
||||||
|
description: A mesmerising whirl of hard-light patterns weaves a blue colored clown of dubious origin.
|
||||||
|
components:
|
||||||
|
- type: GhostRole
|
||||||
|
allowMovement: true
|
||||||
|
allowSpeech: true
|
||||||
|
makeSentient: true
|
||||||
|
name: ghost-role-information-holoclown-name
|
||||||
|
description: ghost-role-information-holoclown-description
|
||||||
|
- type: GhostTakeoverAvailable
|
||||||
|
- type: NameIdentifier
|
||||||
|
group: Holoparasite
|
||||||
|
- type: FootstepModifier
|
||||||
|
footstepSoundCollection:
|
||||||
|
collection: FootstepClown
|
||||||
|
- type: TypingIndicator
|
||||||
|
proto: holo
|
||||||
|
- type: RandomSprite
|
||||||
|
available:
|
||||||
|
- enum.DamageStateVisualLayers.Base:
|
||||||
|
holoclown_base: ""
|
||||||
|
enum.DamageStateVisualLayers.BaseUnshaded:
|
||||||
|
holoclown_flare: Sixteen
|
||||||
|
- enum.DamageStateVisualLayers.Base:
|
||||||
|
holoclown_base: ""
|
||||||
|
enum.DamageStateVisualLayers.BaseUnshaded:
|
||||||
|
holoclown_flare: Sixteen
|
||||||
|
- enum.DamageStateVisualLayers.Base:
|
||||||
|
holoclown_base: ""
|
||||||
|
enum.DamageStateVisualLayers.BaseUnshaded:
|
||||||
|
holoclown_flare: Sixteen
|
||||||
|
- type: Sprite
|
||||||
|
layers:
|
||||||
|
- state: holoclown_base
|
||||||
|
map: [ "enum.DamageStateVisualLayers.Base" ]
|
||||||
|
- state: holoclown_flare
|
||||||
|
map: [ "enum.DamageStateVisualLayers.BaseUnshaded" ]
|
||||||
|
color: "#8adaff"
|
||||||
|
shader: unshaded
|
||||||
|
- type: Body
|
||||||
|
prototype: Primate
|
||||||
|
- type: Tag
|
||||||
|
tags:
|
||||||
|
- CannotSuicide
|
||||||
|
- FootstepSound
|
||||||
|
- type: Inventory
|
||||||
|
templateId: holoclown
|
||||||
|
- type: Hands
|
||||||
|
- type: Clumsy
|
||||||
|
clumsyDamage:
|
||||||
|
types:
|
||||||
|
Blunt: 5
|
||||||
|
Piercing: 4
|
||||||
|
groups:
|
||||||
|
Burn: 3
|
||||||
|
- type: InventorySlots
|
||||||
|
- type: MeleeWeapon
|
||||||
|
hidden: true
|
||||||
|
angle: 30
|
||||||
|
animation: WeaponArcFist
|
||||||
|
attackRate: 1.8
|
||||||
|
damage:
|
||||||
|
types:
|
||||||
|
Blunt: 5
|
||||||
|
- type: Loadout
|
||||||
|
prototypes: [ HoloClownGear ]
|
||||||
|
- type: RandomMetadata
|
||||||
|
nameSegments:
|
||||||
|
- names_clown
|
||||||
|
|||||||
@@ -371,7 +371,6 @@
|
|||||||
- names_first
|
- names_first
|
||||||
- names_last
|
- names_last
|
||||||
|
|
||||||
|
|
||||||
- type: randomHumanoidSettings
|
- type: randomHumanoidSettings
|
||||||
id: Cluwne
|
id: Cluwne
|
||||||
randomizeName: false
|
randomizeName: false
|
||||||
|
|||||||
@@ -10,6 +10,15 @@
|
|||||||
- type: GuardianCreator
|
- type: GuardianCreator
|
||||||
guardianProto: MobHoloparasiteGuardian
|
guardianProto: MobHoloparasiteGuardian
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
name: holoclown injector
|
||||||
|
parent: HoloparasiteInjector
|
||||||
|
id: HoloClownInjector
|
||||||
|
description: A complex artwork of handheld machinery allowing the user to host a holoclown guardian.
|
||||||
|
components:
|
||||||
|
- type: GuardianCreator
|
||||||
|
guardianProto: MobHoloClownGuardian
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
name: magical lamp
|
name: magical lamp
|
||||||
id: MagicalLamp
|
id: MagicalLamp
|
||||||
@@ -38,3 +47,22 @@
|
|||||||
layers:
|
layers:
|
||||||
- state: box
|
- state: box
|
||||||
- state: holo
|
- state: holo
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
name: holoclown box
|
||||||
|
parent: BoxCardboard
|
||||||
|
id: BoxHoloclown
|
||||||
|
description: A box containing a holoclown injector
|
||||||
|
components:
|
||||||
|
- type: StorageFill
|
||||||
|
contents:
|
||||||
|
- id: HoloClownInjector
|
||||||
|
- id: ToyFigurineHoloClown
|
||||||
|
- id: ToyHammer
|
||||||
|
- type: Sprite
|
||||||
|
layers:
|
||||||
|
- state: box_hug
|
||||||
|
- state: holo
|
||||||
|
- type: Tag
|
||||||
|
tags:
|
||||||
|
- BoxHug
|
||||||
|
|||||||
@@ -53,7 +53,17 @@
|
|||||||
components:
|
components:
|
||||||
- type: Sprite
|
- type: Sprite
|
||||||
state: clown
|
state: clown
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: BaseFigurine
|
||||||
|
id: ToyFigurineHoloClown
|
||||||
|
name: holoclown figure
|
||||||
|
description: A figurine depicting a holoclown. Even more annoying than a clown and no less real.
|
||||||
|
components:
|
||||||
|
- type: Sprite
|
||||||
|
state: holoclown
|
||||||
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
parent: BaseFigurine
|
parent: BaseFigurine
|
||||||
id: ToyFigurineMime
|
id: ToyFigurineMime
|
||||||
|
|||||||
@@ -0,0 +1,22 @@
|
|||||||
|
- type: inventoryTemplate
|
||||||
|
id: holoclown
|
||||||
|
slots:
|
||||||
|
- name: pocket1
|
||||||
|
slotTexture: pocket
|
||||||
|
slotFlags: POCKET
|
||||||
|
slotGroup: MainHotbar
|
||||||
|
stripTime: 3
|
||||||
|
uiWindowPos: 0,3
|
||||||
|
strippingWindowPos: 0,4
|
||||||
|
displayName: Pocket 1
|
||||||
|
stripHidden: true
|
||||||
|
- name: pocket2
|
||||||
|
slotTexture: pocket
|
||||||
|
slotFlags: POCKET
|
||||||
|
slotGroup: MainHotbar
|
||||||
|
stripTime: 3
|
||||||
|
uiWindowPos: 2,3
|
||||||
|
strippingWindowPos: 1,4
|
||||||
|
displayName: Pocket 2
|
||||||
|
stripHidden: true
|
||||||
|
|
||||||
@@ -8,3 +8,9 @@
|
|||||||
id: CluwnePDA
|
id: CluwnePDA
|
||||||
gloves: ClothingHandsGlovesCluwne
|
gloves: ClothingHandsGlovesCluwne
|
||||||
pocket1: CluwneHorn
|
pocket1: CluwneHorn
|
||||||
|
|
||||||
|
- type: startingGear
|
||||||
|
id: HoloClownGear
|
||||||
|
equipment:
|
||||||
|
pocket1: BikeHorn
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
|
After Width: | Height: | Size: 23 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 23 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 20 KiB |
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"version": 1,
|
"version": 1,
|
||||||
"license": "CC-BY-NC-SA-3.0",
|
"license": "CC-BY-NC-SA-3.0",
|
||||||
"copyright": "taken from /tg/ station at commit https://github.com/tgstation/tgstation/commit/02756c2bc2cf3000080d030955e994242bab39b5",
|
"copyright": "taken from /tg/ station at commit https://github.com/tgstation/tgstation/commit/02756c2bc2cf3000080d030955e994242bab39b5, holoclown made by brainfood1183 (github)",
|
||||||
"size": {
|
"size": {
|
||||||
"x": 32,
|
"x": 32,
|
||||||
"y": 32
|
"y": 32
|
||||||
@@ -27,6 +27,36 @@
|
|||||||
"name": "magic_base",
|
"name": "magic_base",
|
||||||
"directions": 4
|
"directions": 4
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "holoclown",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "holoclown_base",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "holoclown_flare",
|
||||||
|
"directions": 4,
|
||||||
|
"delays": [
|
||||||
|
[
|
||||||
|
0.1,
|
||||||
|
0.1
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0.1,
|
||||||
|
0.1
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0.1,
|
||||||
|
0.1
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0.1,
|
||||||
|
0.1
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "miner_flare",
|
"name": "miner_flare",
|
||||||
"directions": 4
|
"directions": 4
|
||||||
|
|||||||
BIN
Resources/Textures/Objects/Fun/figurines.rsi/holoclown.png
Normal file
BIN
Resources/Textures/Objects/Fun/figurines.rsi/holoclown.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 18 KiB |
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"version": 1,
|
"version": 1,
|
||||||
"license": "CC-BY-SA-3.0",
|
"license": "CC-BY-SA-3.0",
|
||||||
"copyright": "Sprites made by Flareguy for Space Station 14. Griffinprize, skeletonprize, and owlprize taken from /tg/station at commit https://github.com/tgstation/tgstation/commit/e1142f20f5e4661cb6845cfcf2dd69f864d67432. Figurine_spawner sprite made using parts found in spawner_icons.dmi from Paradise Station at commit https://github.com/ParadiseSS13/Paradise/commit/813f0a3ae556d86dddd7c4ef93a52880de8d2e37. Head sprites excluding Captain, Medical exluding doctor, non-human excluding queen and slime, and service jobs excluding librarian done by tacobeller.",
|
"copyright": "Sprites made by Flareguy for Space Station 14. Griffinprize, skeletonprize, and owlprize taken from /tg/station at commit https://github.com/tgstation/tgstation/commit/e1142f20f5e4661cb6845cfcf2dd69f864d67432. Figurine_spawner sprite made using parts found in spawner_icons.dmi from Paradise Station at commit https://github.com/ParadiseSS13/Paradise/commit/813f0a3ae556d86dddd7c4ef93a52880de8d2e37. Head sprites excluding Captain, Medical exluding doctor, non-human excluding queen and slime, and service jobs excluding librarian done by tacobeller and holoclown done by brainfood1183.",
|
||||||
"size": {
|
"size": {
|
||||||
"x": 32,
|
"x": 32,
|
||||||
"y": 32
|
"y": 32
|
||||||
@@ -19,6 +19,9 @@
|
|||||||
{
|
{
|
||||||
"name": "passenger"
|
"name": "passenger"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "holoclown"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "passenger_greytide"
|
"name": "passenger_greytide"
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user