The Mobs of the Living Light (#21338)

* The Mobs of the Living Light

* fix

* sound

* radius

* minor sprite changes
This commit is contained in:
Nim
2023-11-06 04:24:14 +02:00
committed by GitHub
parent 2b0888919c
commit 3d1333280a
27 changed files with 443 additions and 0 deletions

View File

@@ -32,3 +32,13 @@
license: "CC-BY-SA-3.0"
copyright: "Taken and modified from tgstation (clownstep 1 and 2) by brainfood1183 (github)"
source: "https://github.com/tgstation/tgstation/tree/f8ee37afc00bce1ad421615eaa0e4cbddd5eea90/sound/effects"
- files:
- bells1.ogg
- bells2.ogg
- bells3.ogg
- bells4.ogg
- bells5.ogg
license: "CC-BY-SA-4.0"
copyright: "Taken and modified from el1n freesound.org"
source: "https://freesound.org/people/el1n/sounds/442746/"

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -210,3 +210,18 @@
Cellular: 1.0
Radiation: 0.0 # hehe funny cockroach immune to rads
Caustic: 1.0
# Massive heat damage, presumably to kill with lasers
- type: damageModifierSet
id: LivingLight
coefficients:
Blunt: 0.8
Slash: 0.8
Piercing: 0.7
Shock: 0.0
Cold: 0.0
Poison: 0.0
Radiation: 0.0
Cellular: 0.0
Heat: 2.5
Caustic: 0.0

View File

@@ -736,3 +736,45 @@
- MobUraniumCrab
- MobIronCrab
- MobQuartzCrab
- type: entity
name: luminous person spawner
id: SpawnMobLuminousPerson
parent: MarkerBase
components:
- type: Sprite
layers:
- state: green
- state: luminous_person
sprite: Mobs/Elemental/living_light/luminous_person.rsi
- type: ConditionalSpawner
prototypes:
- MobLuminousPerson
- type: entity
name: luminous object spawner
id: SpawnMobLuminousОbject
parent: MarkerBase
components:
- type: Sprite
layers:
- state: green
- state: luminous_object
sprite: Mobs/Elemental/living_light/luminous_object.rsi
- type: ConditionalSpawner
prototypes:
- MobLuminousОbject
- type: entity
name: luminous entity spawner
id: SpawnMobLuminousEntity
parent: MarkerBase
components:
- type: Sprite
layers:
- state: green
- state: luminous_entity
sprite: Mobs/Elemental/living_light/luminous_entity.rsi
- type: ConditionalSpawner
prototypes:
- MobLuminousEntity

View File

@@ -0,0 +1,211 @@
- type: entity
id: MobLivingLight
parent: [ BaseMob, MobCombat ]
abstract: true
name: luminous person
description: A blinding figure of pure light, seemingly intangible.
components:
- type: HTN
rootTask:
task: SimpleRangedHostileCompound
blackboard:
NavClimb: !type:Bool
true
NavSmash: !type:Bool
true
- type: NpcFactionMember
factions:
- SimpleHostile
- type: MovementIgnoreGravity
- type: MovementSpeedModifier
baseWalkSpeed: 5.5
baseSprintSpeed: 5.5
- type: Sprite
drawdepth: Mobs
sprite: Mobs/Elemental/living_light/luminous_person.rsi
layers:
- map: [ "enum.DamageStateVisualLayers.Base" ]
state: luminous_person
- map: [ "enum.DamageStateVisualLayers.BaseUnshaded" ]
state: glow
shader: unshaded
- type: MobState
- type: MobThresholds
thresholds:
0: Alive
100: Dead
- type: DamageStateVisuals
states:
Alive:
Base: luminous_person
BaseUnshaded: glow
Dead:
Base: dead
BaseUnshaded: dead_glow
- type: StatusEffects
allowed:
- Stun
- Corporeal
- Electrocution
- StaminaModifier
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeCircle
radius: 0.35
density: 60
mask:
- MobMask
layer:
- Opaque
- type: Damageable
damageContainer: Inorganic
damageModifierSet: LivingLight
- type: PassiveDamage
allowedStates:
- Alive
damageCap: 20
damage:
types:
Heat: -0.2
- type: NoSlip
- type: ZombieImmune
- type: NameIdentifier
group: GenericNumber
- type: GhostTakeoverAvailable
- type: PointLight
color: "#e4de6c"
radius: 8
softness: 2
energy: 5
- type: FootstepModifier
footstepSoundCollection:
collection: FootstepBells
- type: Speech
speechVerb: Ghost
- type: Tag
tags:
- FootstepSound
- DoorBumpOpener
- type: Destructible
thresholds:
- trigger:
!type:DamageTypeTrigger
damageType: Heat
damage: 150
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: entity
id: MobLuminousPerson
parent: MobLivingLight
components:
- type: MeleeWeapon
damage:
types:
Heat: 16
animation: WeaponArcFist
- type: StaminaDamageOnHit
damage: 16
- type: entity
id: MobLuminousОbject
parent: MobLivingLight
name: luminous object
description: A small glowing object that causes burns on the skin with its glow.
components:
- type: Sprite
sprite: Mobs/Elemental/living_light/luminous_object.rsi
layers:
- map: [ "enum.DamageStateVisualLayers.Base" ]
state: luminous_object
- map: [ "enum.DamageStateVisualLayers.BaseUnshaded" ]
state: glow
shader: unshaded
- type: MobThresholds
thresholds:
0: Alive
50: Dead
- type: DamageStateVisuals
states:
Alive:
Base: luminous_object
BaseUnshaded: glow
Dead:
Base: dead
BaseUnshaded: dead_glow
- type: MeleeWeapon
damage:
types:
Heat: 8
- type: Destructible
thresholds:
- trigger:
!type:DamageTypeTrigger
damageType: Heat
damage: 80
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: entity
id: MobLuminousEntity
parent: MobLivingLight
name: luminous entity
description: A blinding translucent entity, the bright eye seems dangerous and scalding.
components:
- type: Sprite
sprite: Mobs/Elemental/living_light/luminous_entity.rsi
layers:
- map: [ "enum.DamageStateVisualLayers.Base" ]
state: luminous_entity
- map: [ "enum.DamageStateVisualLayers.BaseUnshaded" ]
state: glow
shader: unshaded
- type: MobThresholds
thresholds:
0: Alive
60: Dead
- type: DamageStateVisuals
states:
Alive:
Base: luminous_entity
BaseUnshaded: glow
Dead:
Base: dead
BaseUnshaded: dead_glow
- type: MeleeWeapon
damage:
types:
Heat: 5
- type: HitscanBatteryAmmoProvider
proto: Pulse
fireCost: 140
- type: Battery
maxCharge: 1000
startingCharge: 1000
- type: BatterySelfRecharger
autoRecharge: true
autoRechargeRate: 50
- type: Gun
fireRate: 0.3
useKey: false
showExamineText: false
selectedMode: SemiAuto
availableModes:
- SemiAuto
soundGunshot:
path: /Audio/Weapons/Guns/Gunshots/laser3.ogg
soundEmpty:
path: /Audio/Items/lighter_off.ogg
- type: Destructible
thresholds:
- trigger:
!type:DamageTypeTrigger
damageType: Heat
damage: 100
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]

View File

@@ -136,3 +136,14 @@
revertOnDeath: true
revertOnCrit: true
duration: 20
- type: polymorph
id: ArtifactLuminous
entity: MobLuminousPerson
forced: true
transferName: true
transferHumanoidAppearance: true
inventory: None
revertOnDeath: true
revertOnCrit: true
duration: 20

View File

@@ -153,3 +153,12 @@
files:
- /Audio/Effects/Footsteps/clownspiderstep1.ogg
- /Audio/Effects/Footsteps/clownspiderstep2.ogg
- type: soundCollection
id: FootstepBells
files:
- /Audio/Effects/Footsteps/bells1.ogg
- /Audio/Effects/Footsteps/bells2.ogg
- /Audio/Effects/Footsteps/bells3.ogg
- /Audio/Effects/Footsteps/bells4.ogg
- /Audio/Effects/Footsteps/bells5.ogg

View File

@@ -420,6 +420,14 @@
- type: PolyArtifact
polymorphPrototypeName: ArtifactLizard
- type: artifactEffect
id: EffectPolyLuminous
targetDepth: 3
effectHint: artifact-effect-hint-polymorph
components:
- type: PolyArtifact
polymorphPrototypeName: ArtifactLuminous
- type: artifactEffect
id: EffectHealAll
targetDepth: 3

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 913 B

View File

@@ -0,0 +1,51 @@
{
"version": 1,
"size": {
"x": 32,
"y": 32
},
"license": "CC-BY-SA-3.0",
"copyright": "Made by Nimfar11 (github) for ss14",
"states": [
{
"name": "glow",
"directions": 4,
"delays": [
[
0.2,
0.2,
0.2,
0.2
],
[
0.2,
0.2,
0.2,
0.2
],
[
0.2,
0.2,
0.2,
0.2
],
[
0.2,
0.2,
0.2,
0.2
]
]
},
{
"name": "dead_glow"
},
{
"name": "dead"
},
{
"name": "luminous_entity",
"directions": 4
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 751 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 932 B

View File

@@ -0,0 +1,61 @@
{
"version": 1,
"size": {
"x": 32,
"y": 32
},
"license": "CC-BY-SA-3.0",
"copyright": "Made by Nimfar11 (github) for ss14",
"states": [
{
"name": "glow",
"directions": 4,
"delays": [
[
0.4,
0.4
],
[
0.4,
0.4
],
[
0.4,
0.4
],
[
0.4,
0.4
]
]
},
{
"name": "dead_glow"
},
{
"name": "dead"
},
{
"name": "luminous_object",
"directions": 4,
"delays": [
[
0.4,
0.4
],
[
0.4,
0.4
],
[
0.4,
0.4
],
[
0.4,
0.4
]
]
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 930 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@@ -0,0 +1,25 @@
{
"version": 1,
"size": {
"x": 32,
"y": 32
},
"license": "CC-BY-SA-3.0",
"copyright": "Made by Nimfar11 (github) for ss14",
"states": [
{
"name": "glow",
"directions": 4
},
{
"name": "dead_glow"
},
{
"name": "dead"
},
{
"name": "luminous_person",
"directions": 4
}
]
}