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.Body.Systems;
|
||||
using Content.Shared.Actions;
|
||||
using Content.Shared.Audio;
|
||||
using Content.Shared.Damage;
|
||||
@@ -14,6 +16,7 @@ using Robust.Server.GameObjects;
|
||||
using Robust.Shared.Containers;
|
||||
using Robust.Shared.Player;
|
||||
using Robust.Shared.Utility;
|
||||
using Content.Shared.Hands.Components;
|
||||
|
||||
namespace Content.Server.Guardian
|
||||
{
|
||||
@@ -28,6 +31,7 @@ namespace Content.Server.Guardian
|
||||
[Dependency] private readonly SharedActionsSystem _actionSystem = default!;
|
||||
[Dependency] private readonly SharedHandsSystem _handsSystem = default!;
|
||||
[Dependency] private readonly SharedAudioSystem _audio = default!;
|
||||
[Dependency] private readonly BodySystem _bodySystem = default!;
|
||||
|
||||
public override void Initialize()
|
||||
{
|
||||
@@ -94,6 +98,9 @@ namespace Content.Server.Guardian
|
||||
if (component.HostedGuardian == null)
|
||||
return;
|
||||
|
||||
if (HasComp<HandsComponent>(component.HostedGuardian.Value))
|
||||
_bodySystem.GibBody(component.HostedGuardian.Value);
|
||||
|
||||
EntityManager.QueueDeleteEntity(component.HostedGuardian.Value);
|
||||
_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-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-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.
|
||||
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-desc = A deep shoulder holster capable of holding many types of ballistics.
|
||||
|
||||
|
||||
@@ -922,6 +922,21 @@
|
||||
whitelist:
|
||||
- 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
|
||||
id: uplinkHotPotato
|
||||
name: uplink-hot-potato-name
|
||||
|
||||
@@ -151,3 +151,76 @@
|
||||
map: [ "enum.DamageStateVisualLayers.BaseUnshaded" ]
|
||||
color: "#40a7d7"
|
||||
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_last
|
||||
|
||||
|
||||
- type: randomHumanoidSettings
|
||||
id: Cluwne
|
||||
randomizeName: false
|
||||
|
||||
@@ -10,6 +10,15 @@
|
||||
- type: GuardianCreator
|
||||
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
|
||||
name: magical lamp
|
||||
id: MagicalLamp
|
||||
@@ -38,3 +47,22 @@
|
||||
layers:
|
||||
- state: box
|
||||
- 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:
|
||||
- type: Sprite
|
||||
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
|
||||
parent: BaseFigurine
|
||||
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
|
||||
gloves: ClothingHandsGlovesCluwne
|
||||
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,
|
||||
"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": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
@@ -27,6 +27,36 @@
|
||||
"name": "magic_base",
|
||||
"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",
|
||||
"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,
|
||||
"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": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
@@ -19,6 +19,9 @@
|
||||
{
|
||||
"name": "passenger"
|
||||
},
|
||||
{
|
||||
"name": "holoclown"
|
||||
},
|
||||
{
|
||||
"name": "passenger_greytide"
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user