This commit is contained in:
Kara
2023-08-26 23:14:57 -07:00
committed by GitHub
parent d40f478fc6
commit 70e0520a2c
12 changed files with 282 additions and 2 deletions

View File

@@ -0,0 +1,149 @@
- type: entity
name: watcher
id: MobWatcherBase
parent: SimpleSpaceMobBase
abstract: true
description: It's like its staring right through you.
components:
- type: NpcFactionMember
factions:
- SimpleHostile
- type: HTN
rootTask:
task: SimpleRangedHostileCompound
- type: Sprite
drawdepth: Mobs
sprite: Mobs/Aliens/Lavaland/watcher.rsi
layers:
- map: [ "enum.DamageStateVisualLayers.Base" ]
state: base
- map: [ "enum.DamageStateVisualLayers.BaseUnshaded" ]
state: unshaded
shader: unshaded
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeCircle
radius: 0.30
density: 80
mask:
- FlyingMobMask
layer:
- FlyingMobLayer
- type: DamageStateVisuals
states:
Alive:
Base: base
BaseUnshaded: unshaded
Dead:
Base: dead
BaseUnshaded: dead-unshaded
- type: MobThresholds
thresholds:
0: Alive
50: Dead
- type: MovementSpeedModifier
baseWalkSpeed: 5
baseSprintSpeed: 7
- type: MovementAlwaysTouching
- type: NoSlip
- type: ProjectileBatteryAmmoProvider
proto: WatcherBolt
fireCost: 50
- type: BatterySelfRecharger
autoRecharge: true
autoRechargeRate: 50
- type: Battery
maxCharge: 1000
startingCharge: 1000
- type: Gun
fireRate: 0.5
useKey: false
selectedMode: SemiAuto
availableModes:
- SemiAuto
soundGunshot: /Audio/Weapons/Guns/Gunshots/taser2.ogg
- type: CombatMode
- type: InteractionPopup
successChance: 0.3
interactSuccessString: petting-success-slimes
interactFailureString: petting-failure-generic
interactSuccessSound:
path: /Audio/Animals/lizard_happy.ogg
- type: entity
id: MobWatcherLavaland
parent: MobWatcherBase
components:
- type: Sprite
layers:
- map: [ "enum.DamageStateVisualLayers.Base" ]
state: base
- map: [ "enum.DamageStateVisualLayers.BaseUnshaded" ]
state: unshaded
shader: unshaded
color: red
- type: PointLight
radius: 1.5
energy: 0.5
color: red
- type: entity
id: MobWatcherIcewing
parent: MobWatcherBase
name: icewing watcher
components:
- type: Sprite
layers:
- map: [ "enum.DamageStateVisualLayers.Base" ]
state: base
- map: [ "enum.DamageStateVisualLayers.BaseUnshaded" ]
state: unshaded
shader: unshaded
color: deepskyblue
- type: PointLight
radius: 1.5
energy: 1
color: deepskyblue
- type: entity
id: MobWatcherMagmawing
parent: MobWatcherBase
name: magmawing watcher
components:
- type: Sprite
layers:
- map: [ "enum.DamageStateVisualLayers.Base" ]
state: base
- map: [ "enum.DamageStateVisualLayers.BaseUnshaded" ]
state: unshaded
shader: unshaded
color: orangered
- type: PointLight
radius: 1.5
energy: 1
color: orangered
- type: ProjectileBatteryAmmoProvider
proto: WatcherBoltMagmawing
fireCost: 50
- type: entity
id: MobWatcherPride
parent: MobWatcherBase
name: pride watcher
suffix: ADMEME
description: This rare subspecies only appears in June.
components:
- type: Sprite
layers:
- map: [ "enum.DamageStateVisualLayers.Base" ]
state: base
- map: [ "enum.DamageStateVisualLayers.BaseUnshaded" ]
state: unshaded
shader: unshaded
- type: PointLight
radius: 1.5
energy: 1
- type: RgbLightController
layers: [ 1 ]

View File

@@ -34,6 +34,25 @@
tags: tags:
- HideContextMenu - HideContextMenu
- type: entity
id: BulletImpactEffectOrangeDisabler
noSpawn: true
components:
- type: TimedDespawn
lifetime: 0.2
- type: Sprite
drawdepth: Effects
layers:
- shader: unshaded
map: ["enum.EffectLayers.Unshaded"]
sprite: Objects/Weapons/Guns/Projectiles/projectiles_tg.rsi
state: impact_laser_greyscale
color: orangered
- type: EffectVisuals
- type: Tag
tags:
- HideContextMenu
- type: entity - type: entity
id: BulletImpactEffectKinetic id: BulletImpactEffectKinetic
noSpawn: true noSpawn: true

View File

@@ -278,7 +278,6 @@
noSpawn: true noSpawn: true
components: components:
- type: Sprite - type: Sprite
color: "#ffff33"
sprite: Structures/Power/Generation/Singularity/emitter.rsi sprite: Structures/Power/Generation/Singularity/emitter.rsi
layers: layers:
- state: projectile - state: projectile
@@ -307,6 +306,65 @@
- type: TimedDespawn - type: TimedDespawn
lifetime: 3 lifetime: 3
- type: entity
name: watcher bolt
id: WatcherBolt
parent: BaseBullet
noSpawn: true
components:
- type: FlyBySound
sound:
collection: EnergyMiss
params:
volume: 5
- type: Sprite
sprite: Objects/Weapons/Guns/Projectiles/projectiles_tg.rsi
layers:
- state: omnilaser
shader: unshaded
- type: Ammo
muzzleFlash: null
- type: Physics
- type: Fixtures
fixtures:
projectile:
shape:
!type:PhysShapeAabb
bounds: "-0.2,-0.2,0.2,0.2"
hard: false
mask:
- Opaque
fly-by: *flybyfixture
- type: StaminaDamageOnCollide
damage: 40
- type: Projectile
# soundHit: Waiting on serv3
impactEffect: BulletImpactEffectDisabler
damage:
types:
Cold: 10
- type: TimedDespawn
lifetime: 3
- type: entity
name: magmawing watcher bolt
id: WatcherBoltMagmawing
parent: BaseBullet
noSpawn: true
components:
- type: Sprite
sprite: Objects/Weapons/Guns/Projectiles/projectiles_tg.rsi
layers:
- state: omnilaser_greyscale
shader: unshaded
color: orangered
- type: Projectile
# soundHit: Waiting on serv3
impactEffect: BulletImpactEffectOrangeDisabler
damage:
types:
Heat: 10
- type: entity - type: entity
id: BulletKinetic id: BulletKinetic
name: kinetic bolt name: kinetic bolt
@@ -450,7 +508,7 @@
shader: unshaded shader: unshaded
- type: AnomalousParticle - type: AnomalousParticle
particleType: Zeta particleType: Zeta
- type: entity - type: entity
parent: AnomalousParticleZeta parent: AnomalousParticleZeta
id: AnomalousParticleZetaStrong id: AnomalousParticleZetaStrong

View File

@@ -3,6 +3,21 @@
proto: MobLizard proto: MobLizard
groupCount: 5 groupCount: 5
- type: biomeMarkerLayer
id: WatchersLavaland
proto: MobWatcherLavaland
groupCount: 3
- type: biomeMarkerLayer
id: WatchersIcewing
proto: MobWatcherIcewing
groupCount: 3
- type: biomeMarkerLayer
id: WatchersMagmawing
proto: MobWatcherMagmawing
groupCount: 3
# TODO: Needs to be more robust # TODO: Needs to be more robust
- type: biomeMarkerLayer - type: biomeMarkerLayer
id: Xenos id: Xenos

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 715 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 466 B

View File

@@ -0,0 +1,25 @@
{
"version": 1,
"license": "CC-BY-SA-3.0",
"copyright": "Taken from Citadel Station 13 at https://github.com/Citadel-Station-13/Citadel-Station-13/blob/a36c4fd163b1f36a3aaf766e32183ccb6304a561/icons/mob/lavaland/watcher.dmi. Cut into layers/modified by mirrorcult for SS14",
"size": {
"x": 54,
"y": 32
},
"states": [
{
"name": "base",
"directions": 4
},
{
"name": "unshaded",
"directions": 4
},
{
"name": "dead"
},
{
"name": "dead-unshaded"
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 951 B

View File

@@ -10,6 +10,9 @@
{ {
"name": "omnilaser" "name": "omnilaser"
}, },
{
"name": "omnilaser_greyscale"
},
{ {
"name": "impact_bullet", "name": "impact_bullet",
"delays": [ "delays": [
@@ -32,6 +35,17 @@
0.05 0.05
] ]
] ]
},
{
"name": "impact_laser_greyscale",
"delays": [
[
0.05,
0.05,
0.05,
0.05
]
]
} }
] ]
} }

Binary file not shown.

After

Width:  |  Height:  |  Size: 333 B