Magic staves + wands (#9070)
This commit is contained in:
@@ -98,5 +98,16 @@
|
||||
amount: 2
|
||||
- id: OmnizineChemistryBottle
|
||||
amount: 1
|
||||
- id: MedkitCombatFilled
|
||||
|
||||
- id: MedkitCombatFilled
|
||||
|
||||
- type: entity
|
||||
parent: ClothingBeltWand
|
||||
id: ClothingBeltWandFilled
|
||||
suffix: Filled
|
||||
components:
|
||||
- type: StorageFill
|
||||
contents:
|
||||
- id: WeaponWandPolymorphCarp
|
||||
- id: WeaponWandFireball
|
||||
- id: WeaponWandDeath
|
||||
- id: WeaponWandPolymorphDoor
|
||||
|
||||
@@ -503,3 +503,19 @@
|
||||
- type: Clothing
|
||||
sprite: Clothing/Belt/suspenders.rsi
|
||||
quickEquip: true
|
||||
|
||||
- type: entity
|
||||
parent: ClothingBeltStorageBase
|
||||
id: ClothingBeltWand
|
||||
name: wand belt
|
||||
description: A belt designed to hold various rods of power. A veritable fanny pack of exotic magic.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: Clothing/Belt/wand.rsi
|
||||
- type: Clothing
|
||||
sprite: Clothing/Belt/wand.rsi
|
||||
- type: Storage
|
||||
capacity: 120
|
||||
whitelist:
|
||||
tags:
|
||||
- WizardWand
|
||||
|
||||
@@ -69,6 +69,9 @@
|
||||
- type: TypingIndicator
|
||||
proto: alien
|
||||
- type: NoSlip
|
||||
- type: Tag
|
||||
tags:
|
||||
- Carp
|
||||
|
||||
- type: entity
|
||||
name: magicarp
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
- type: entity
|
||||
id: WeaponStaffBase
|
||||
abstract: true
|
||||
parent: BaseItem
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: Objects/Weapons/Guns/Magic/staves.rsi
|
||||
- type: Item
|
||||
sprite: Objects/Weapons/Guns/Magic/staves.rsi
|
||||
HeldPrefix: staff
|
||||
size: 60
|
||||
- type: Gun
|
||||
fireRate: 1
|
||||
selectedMode: SemiAuto
|
||||
availableModes:
|
||||
- SemiAuto
|
||||
- type: AmmoCounter
|
||||
# All staves recharge. Wands are not.
|
||||
- type: RechargeBasicEntityAmmo
|
||||
- type: Tag
|
||||
tags:
|
||||
- WizardStaff
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
- type: entity
|
||||
id: WeaponWandBase
|
||||
abstract: true
|
||||
parent: BaseItem
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: Objects/Weapons/Guns/Magic/wands.rsi
|
||||
- type: Item
|
||||
sprite: Objects/Weapons/Guns/Magic/wands.rsi
|
||||
HeldPrefix: wand
|
||||
size: 30
|
||||
- type: Gun
|
||||
fireRate: 0.5
|
||||
selectedMode: SemiAuto
|
||||
availableModes:
|
||||
- SemiAuto
|
||||
- type: AmmoCounter
|
||||
# These will only do anything if the effect layer is actually set.
|
||||
- type: Appearance
|
||||
- type: GenericVisualizer
|
||||
visuals:
|
||||
enum.AmmoVisuals.HasAmmo:
|
||||
effect:
|
||||
True: { visible: True }
|
||||
False: { visible: False }
|
||||
- type: Tag
|
||||
tags:
|
||||
- WizardWand
|
||||
@@ -0,0 +1,37 @@
|
||||
# To be implemented: see #9072
|
||||
|
||||
- type: entity
|
||||
name: staff of healing
|
||||
parent: WeaponStaffBase
|
||||
id: WeaponStaffHealing
|
||||
description: You don't foresee having to use this in your quest for carnage too often.
|
||||
components:
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: healing
|
||||
- type: Item
|
||||
HeldPrefix: healing
|
||||
- type: Gun
|
||||
soundGunshot:
|
||||
path: /Audio/Weapons/Guns/Gunshots/Magic/staff_healing.ogg
|
||||
- type: BasicEntityAmmoProvider
|
||||
proto: ProjectileHealingBolt
|
||||
capacity: 10
|
||||
|
||||
- type: entity
|
||||
name: staff of entrance
|
||||
parent: WeaponStaffBase
|
||||
id: WeaponStaffPolymorphDoor
|
||||
description: For when you need a get-away route.
|
||||
components:
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: door
|
||||
- type: Item
|
||||
HeldPrefix: door
|
||||
- type: Gun
|
||||
soundGunshot:
|
||||
path: /Audio/Weapons/Guns/Gunshots/Magic/staff_door.ogg
|
||||
- type: BasicEntityAmmoProvider
|
||||
proto: ProjectilePolyboltDoor
|
||||
capacity: 10
|
||||
@@ -0,0 +1,72 @@
|
||||
- type: entity
|
||||
name: wand of carp polymorph
|
||||
parent: WeaponWandBase
|
||||
id: WeaponWandPolymorphCarp
|
||||
description: For when you need a carp filet quick and the clown is looking juicy.
|
||||
components:
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: poly
|
||||
- state: poly-effect
|
||||
map: ["effect"]
|
||||
- type: Gun
|
||||
soundGunshot:
|
||||
path: /Audio/Weapons/Guns/Gunshots/Magic/staff_animation.ogg
|
||||
- type: BasicEntityAmmoProvider
|
||||
proto: ProjectilePolyboltCarp
|
||||
capacity: 5
|
||||
|
||||
- type: entity
|
||||
name: wand of fireball
|
||||
parent: WeaponWandBase
|
||||
id: WeaponWandFireball
|
||||
description: Great big balls of fire!
|
||||
components:
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: fire
|
||||
- state: fire-effect
|
||||
map: ["effect"]
|
||||
- type: Gun
|
||||
fireRate: 0.25
|
||||
soundGunshot:
|
||||
path: /Audio/Magic/fireball.ogg
|
||||
- type: BasicEntityAmmoProvider
|
||||
proto: ProjectileFireball
|
||||
capacity: 5
|
||||
|
||||
- type: entity
|
||||
name: magical wand of instant death
|
||||
parent: WeaponWandBase
|
||||
id: WeaponWandDeath
|
||||
description: Only the best and brightest of the Space Wizards R&D team worked together to create this beauty.
|
||||
components:
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: death
|
||||
- state: death-effect
|
||||
map: ["effect"]
|
||||
- type: Gun
|
||||
soundGunshot:
|
||||
path: /Audio/Weapons/Guns/Gunshots/mateba.ogg # PUNCH
|
||||
- type: BasicEntityAmmoProvider
|
||||
proto: BulletInstakillMagic
|
||||
capacity: 3
|
||||
|
||||
- type: entity
|
||||
name: wand of entrance
|
||||
parent: WeaponWandBase
|
||||
id: WeaponWandPolymorphDoor
|
||||
description: For when you need a get-away route.
|
||||
components:
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: door
|
||||
- state: door-effect
|
||||
map: ["effect"]
|
||||
- type: Gun
|
||||
soundGunshot:
|
||||
path: /Audio/Weapons/Guns/Gunshots/Magic/staff_door.ogg
|
||||
- type: BasicEntityAmmoProvider
|
||||
proto: ProjectilePolyboltDoor
|
||||
capacity: 10
|
||||
@@ -15,3 +15,87 @@
|
||||
intensitySlope: 6
|
||||
totalIntensity: 200
|
||||
maxTileBreak: 0
|
||||
|
||||
- type: entity
|
||||
id: ProjectilePolyboltCarp
|
||||
name: carp polybolt
|
||||
description: Nooo, I don't wanna be fish!
|
||||
parent: BaseBullet
|
||||
noSpawn: true
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: Objects/Weapons/Guns/Projectiles/magic.rsi
|
||||
layers:
|
||||
- state: spell
|
||||
color: '#00FF00'
|
||||
- type: PolymorphOnCollide
|
||||
polymorph: WizardForcedCarp
|
||||
whitelist:
|
||||
components:
|
||||
- Body
|
||||
blacklist:
|
||||
tags:
|
||||
- Carp # can't re-polymorph
|
||||
- type: Projectile
|
||||
damage:
|
||||
types:
|
||||
Poison: 5
|
||||
|
||||
- type: entity
|
||||
id: ProjectilePolyboltDoor
|
||||
name: door polybolt
|
||||
description: Nooo, I don't wanna be door!
|
||||
parent: BaseBullet
|
||||
noSpawn: true
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: Objects/Weapons/Guns/Projectiles/magic.rsi
|
||||
layers:
|
||||
- state: spell
|
||||
color: brown
|
||||
- type: PolymorphOnCollide
|
||||
polymorph: WizardWallDoor
|
||||
whitelist:
|
||||
components:
|
||||
- Airlock
|
||||
- Firelock
|
||||
tags:
|
||||
- Wall
|
||||
- type: Projectile
|
||||
damage:
|
||||
types:
|
||||
Poison: 5
|
||||
|
||||
- type: entity
|
||||
id: ProjectileHealingBolt
|
||||
name: healing bolt
|
||||
description: I COMMAND YOU TO LIVE!
|
||||
parent: BaseBullet
|
||||
noSpawn: true
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: Objects/Weapons/Guns/Projectiles/magic.rsi
|
||||
layers:
|
||||
- state: spell
|
||||
color: white
|
||||
- type: Projectile
|
||||
damage:
|
||||
groups: # good enough. Maybe make it call the rejuvenate command later.
|
||||
Brute: -900
|
||||
Burn: -900
|
||||
Airloss: -600
|
||||
Toxin: -600
|
||||
ignoreResistances: true
|
||||
|
||||
- type: entity
|
||||
id: BulletInstakillMagic
|
||||
name: magical lead cylinder
|
||||
parent: BaseBulletHighVelocity
|
||||
noSpawn: true
|
||||
description: This looks familiar.
|
||||
components:
|
||||
- type: Projectile
|
||||
damage:
|
||||
types:
|
||||
Piercing: 300
|
||||
ignoreResistances: true
|
||||
|
||||
@@ -18,6 +18,26 @@
|
||||
revertOnCrit: true
|
||||
revertOnDeath: true
|
||||
|
||||
- type: polymorph
|
||||
id: WizardForcedCarp
|
||||
entity: MobCarpMagic
|
||||
forced: true
|
||||
inventory: None
|
||||
transferName: true
|
||||
transferDamage: true
|
||||
revertOnCrit: false
|
||||
revertOnDeath: true
|
||||
|
||||
- type: polymorph
|
||||
id: WizardWallDoor
|
||||
entity: WoodDoor
|
||||
forced: true
|
||||
inventory: None
|
||||
transferName: false
|
||||
transferDamage: false
|
||||
revertOnCrit: false
|
||||
revertOnDeath: false
|
||||
|
||||
# this is a test for transferring some visual appearance stuff
|
||||
- type: polymorph
|
||||
id: TestHumanMorph
|
||||
|
||||
@@ -51,6 +51,9 @@
|
||||
- type: Tag
|
||||
id: CaptainSabre
|
||||
|
||||
- type: Tag
|
||||
id: Carp
|
||||
|
||||
- type: Tag
|
||||
id: Cartridge
|
||||
|
||||
@@ -426,6 +429,12 @@
|
||||
- type: Tag
|
||||
id: Window
|
||||
|
||||
- type: Tag
|
||||
id: WizardWand # that evil vvizard vvand
|
||||
|
||||
- type: Tag
|
||||
id: WizardStaff
|
||||
|
||||
- type: Tag
|
||||
id: Wirecutter
|
||||
|
||||
|
||||
Reference in New Issue
Block a user