Timestop spell (#370)

* - tweak: Tweak mindswap.

* - fix: Mindswap and cult fixes.

* - add: Timestop v1.

* - add: Timestop spell.

* - remove: What?

* - fix: Fixes.
This commit is contained in:
Aviu00
2024-06-20 16:24:10 +00:00
committed by GitHub
parent fd06a8b1d3
commit 6a7ad10d72
23 changed files with 446 additions and 71 deletions

Binary file not shown.

View File

@@ -17,6 +17,7 @@ scroll-component-recall = призыв
scroll-component-teleport = телепортацию
scroll-component-smite = кару
scroll-component-mindswap = подмену сознания
scroll-component-timestop = остановку времени
ent-BaseScroll = магический свиток
.desc = Этот древний пергамент, ставший реликвией в арканных преданиях, хранит в себе бесчисленные мистические заклятия и забытые заклинания.
@@ -52,3 +53,5 @@ ent-ScrollSmite = свиток кары
.desc = { ent-BaseScroll.desc }
ent-ScrollMindswap = свиток подмены сознания
.desc = { ent-BaseScroll.desc }
ent-ScrollTimestop = свиток остановки времени
.desc = { ent-BaseScroll.desc }

View File

@@ -43,6 +43,9 @@ spellbook-smite-desc = { ent-ActionSmite.desc }
spellbook-mindswap-name = { ent-ActionMindswapSpell }
spellbook-mindswap-desc = { ent-ActionMindswapSpell.desc }
spellbook-timestop-name = { ent-ActionTimestopSpell }
spellbook-timestop-desc = { ent-ActionTimestopSpell.desc }
spellbook-hardsuit-name = Скафандр волшебника
spellbook-hardsuit-desc = Украшенный магическими драгоценными камнями скафандр, функционирующий так же, как и обычная мантия волшебника, но в то же время является пригодным для использования в космосе и бронированным. Небольшое замедление. Теперь вы можете произносить заклинания в космосе и местах с низкой температурой! Имеет функцию энергетического щита,который защищает от всех снарядов. Щит разряжается при получении урона и автоматически заряжается.

View File

@@ -44,4 +44,7 @@ ent-ActionSmite = Кара
.desc = Заряжает вашу руку мерзкой энергией, которую можно использовать для взрыва жертв. Заклинание требует, чтобы вы коснулись своей цели, поэтому вы не сможете использовать его в наручниках или будучи оглушённым. Не работает без волшебной мантии и шляпы.
ent-ActionMindswapSpell = Подмена сознания
.desc = Позволяет заклинателю переключаться между телами с целью. Вы должны быть рядом с целью, в которую хотите перейти, после чего вы оба будете нокаутированы. Не работает на культистов, генокрадов и революционеров.
.desc = Позволяет заклинателю переключаться между телами с целью. Вы должны быть рядом с целью, в которую хотите перейти, после чего вы оба будете нокаутированы.
ent-ActionTimestopSpell = Остановка времени
.desc = Останавливает время в радиусе вокруг вас. Находящиеся под воздействием существа не смогут двигаться, а пролетающие мимо снаряды будут остановлены до окончания остановки времени. Не работает без волшебной мантии и шляпы.

View File

@@ -36,6 +36,9 @@ ent-ClothingOuterRealWizardFancy = мантия волшебника
ent-ClothingHeadHelmetWizardHelmArmored = шлем мага
.desc = Странный головной убор, который наверняка принадлежит настоящему магу. Не обладает свойствами волшебной шляпы.
mindswap-success = Ваш разум подменили!
mindswap-borer-failed = Его разумом кто-то управляет.
store-currency-display-spell-point = Очки заклинаний
store-category-spells-attack = Атакующие заклинания

View File

@@ -330,6 +330,7 @@
components:
- MindContainer
- ActionContainer
- MobState
canTargetSelf: false
checkCanInteract: false
useDelay: 60
@@ -339,3 +340,24 @@
state: mindswap
event: !type:MindswapSpellEvent
speech: "GIN'YU CAPAN!"
- type: entity
id: ActionTimestopSpell
name: Stop time
noSpawn: true
components:
- type: Magic
requiresClothes: true
- type: InstantAction
alwaysPlaySound: false
sound: !type:SoundPathSpecifier
path: /Audio/White/Magic/timeparadox2.ogg
useDelay: 50
itemIconStyle: BigAction
checkCanInteract: false
icon:
sprite: Objects/Magic/magicactions.rsi
state: time
event: !type:StopTimeSpellEvent
prototype: Timestop
speech: "TOKI YO TOMARE!"

View File

@@ -0,0 +1,31 @@
- type: entity
id: Timestop
name: "chronofield"
description: "ZA WARUDO"
components:
- type: Sprite
drawdepth: FloorObjects
sprite: White/Effects/timestop.rsi
state: icon
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeCircle
radius: 2.5
density: 0
hard: false
mask:
- None
layer:
- Impassable
- HighImpassable
- MidImpassable
- LowImpassable
- Opaque
- BulletImpassable
- type: Physics
bodyType: Static
- type: TimedDespawn
lifetime: 10
- type: FreezeContacts

View File

@@ -160,3 +160,12 @@
- type: Scroll
actionId: ActionMindswapSpell
learnPopup: scroll-component-mindswap
- type: entity
id: ScrollTimestop
parent: BaseScroll
name: "Stop time scroll"
components:
- type: Scroll
actionId: ActionTimestopSpell
learnPopup: scroll-component-timestop

View File

@@ -30,6 +30,22 @@
- !type:ListingLimitedStockCondition
stock: 1
- type: listing
id: SpellBookTimestop
name: spellbook-timestop-name
description: spellbook-timestop-desc
productEntity: ScrollTimestop
icon:
sprite: Objects/Magic/magicactions.rsi
state: time
cost:
SpellPoint: 2
categories:
- DefenceSpells
conditions:
- !type:ListingLimitedStockCondition
stock: 1
- type: listing
id: SpellBookKnock
name: spellbook-knock-name

View File

@@ -60,6 +60,9 @@
},
{
"name": "mindswap"
},
{
"name": "time"
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 568 KiB

View File

@@ -0,0 +1,37 @@
{
"version": 1,
"license": "CC-BY-SA-3.0",
"copyright": "Taken from tgstation at https://github.com/tgstation/tgstation/pull/49264/commits/d0dffe7ca643db2624424fdcebf45863f85c0448",
"size": {
"x": 160,
"y": 160
},
"states": [
{
"name": "icon",
"delays": [
[
0.1,
0.1,
0.1,
0.1,
0.1,
0.1,
0.1,
0.1,
0.1,
0.1,
0.1,
0.1,
0.1,
0.1,
0.1,
0.1,
0.1,
0.1,
0.1
]
]
}
]
}