diff --git a/Content.Shared/_CP14/MagicSpell/CP14SharedMagicSystem.DelayedActions.cs b/Content.Shared/_CP14/MagicSpell/CP14SharedMagicSystem.DelayedActions.cs index 3ca6d055a3..fc78bd9250 100644 --- a/Content.Shared/_CP14/MagicSpell/CP14SharedMagicSystem.DelayedActions.cs +++ b/Content.Shared/_CP14/MagicSpell/CP14SharedMagicSystem.DelayedActions.cs @@ -26,7 +26,7 @@ public abstract partial class CP14SharedMagicSystem var fromItem = action.Comp.SpellStorage is not null; - var doAfterEventArgs = new DoAfterArgs(EntityManager, performer, MathF.Max(delayedEffect.CastDelay, 1f), doAfter, action, used: action.Comp.SpellStorage) + var doAfterEventArgs = new DoAfterArgs(EntityManager, performer, MathF.Max(delayedEffect.CastDelay, 0.3f), doAfter, action, used: action.Comp.SpellStorage) { BreakOnMove = delayedEffect.BreakOnMove, BreakOnDamage = delayedEffect.BreakOnDamage, diff --git a/Resources/Audio/_CP14/Animals/attributions.yml b/Resources/Audio/_CP14/Animals/attributions.yml index c0efda4ff9..c31c70aeef 100644 --- a/Resources/Audio/_CP14/Animals/attributions.yml +++ b/Resources/Audio/_CP14/Animals/attributions.yml @@ -57,3 +57,9 @@ license: "CC0-1.0" copyright: 'by egomassive of Freesound.org.' source: "https://freesound.org/people/egomassive/sounds/536728/" + + +- files: ["ghost_ambi.ogg"] + license: "CC0-1.0" + copyright: 'by Litruv of Freesound.org.' + source: "https://freesound.org/people/Litruv/sounds/175944/" diff --git a/Resources/Audio/_CP14/Animals/ghost_ambi.ogg b/Resources/Audio/_CP14/Animals/ghost_ambi.ogg new file mode 100644 index 0000000000..8111034158 Binary files /dev/null and b/Resources/Audio/_CP14/Animals/ghost_ambi.ogg differ diff --git a/Resources/Prototypes/_CP14/Entities/Actions/Spells/Water/T1_ice_shards.yml b/Resources/Prototypes/_CP14/Entities/Actions/Spells/Water/T1_ice_shards.yml index 67f35babca..60216e2cdf 100644 --- a/Resources/Prototypes/_CP14/Entities/Actions/Spells/Water/T1_ice_shards.yml +++ b/Resources/Prototypes/_CP14/Entities/Actions/Spells/Water/T1_ice_shards.yml @@ -17,7 +17,6 @@ prototype: CP14IceShard - type: CP14MagicEffectVerbalAspect endSpeech: "Glacies acus!" - - type: CP14MagicEffectSomaticAspect - type: CP14MagicEffectCastingVisual proto: CP14RuneIceShards - type: EntityWorldTargetAction diff --git a/Resources/Prototypes/_CP14/Entities/Mobs/NPC/ice_ghost.yml b/Resources/Prototypes/_CP14/Entities/Mobs/NPC/ice_ghost.yml new file mode 100644 index 0000000000..eb522cdf88 --- /dev/null +++ b/Resources/Prototypes/_CP14/Entities/Mobs/NPC/ice_ghost.yml @@ -0,0 +1,93 @@ +- type: entity + id: CP14MobIceSpectre + parent: + - BaseMob + - MobCombat + categories: [ ForkFiltered ] + name: icy spectre + description: The unburied soul of frozen adventurers. Her rage against the world robs her of her reason. + components: + - type: HTN + rootTask: + task: CP14MonsterCompound + blackboard: + NavSmash: !type:Bool + true + VisionRadius: !type:Single + 16 + AggroVisionRadius: !type:Single + 12 + - type: Fixtures + fixtures: + fix1: + shape: + !type:PhysShapeCircle + radius: 0.45 + density: 5 + mask: + - FlyingMobMask + layer: + - FlyingMobLayer + - Opaque + - type: NPCUseActionOnTarget + actionId: CP14ActionSpellIceShardsGhost + - type: NpcFactionMember + factions: + - CP14Monster + - type: MeleeWeapon + angle: 0 + animation: WeaponArcBite + damage: + types: + Cold: 8 + - type: MovementIgnoreGravity + - type: MovementSpeedModifier + baseWalkSpeed: 3 + baseSprintSpeed: 2 + friction: 0.5 + acceleration: 3 + - type: Sprite + sprite: _CP14/Mobs/Monster/ice_spectre.rsi + layers: + - state: base + shader: unshaded + drawdepth: Mobs + - type: Damageable + damageContainer: Biological + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 50 + behaviors: + - !type:DoActsBehavior + acts: [ "Destruction" ] + - type: CP14MagicCasterSlowdown + - type: CP14MagicEnergyContainer + magicAlert: CP14MagicEnergy + maxEnergy: 100 + energy: 100 + - type: CP14MagicEnergyDraw + energy: 2 + delay: 4 + - type: AmbientSound + volume: -1 + range: 12 + sound: + path: /Audio/_CP14/Animals/ghost_ambi.ogg + +- type: entity + parent: CP14ActionSpellIceShards + id: CP14ActionSpellIceShardsGhost + components: + - type: CP14MagicEffectCastSlowdown + speedMultiplier: -2.0 + - type: EntityWorldTargetAction + useDelay: 1 + checkCanAccess: true + event: !type:CP14DelayedEntityWorldTargetActionEvent + cooldown: 0.5 + castDelay: 0.2 + breakOnMove: false + entityDistance: 1000 + hidden: true \ No newline at end of file diff --git a/Resources/Prototypes/_CP14/Entities/Mobs/NPC/monster.yml b/Resources/Prototypes/_CP14/Entities/Mobs/NPC/mole.yml similarity index 64% rename from Resources/Prototypes/_CP14/Entities/Mobs/NPC/monster.yml rename to Resources/Prototypes/_CP14/Entities/Mobs/NPC/mole.yml index 8fae72809d..472827bbbe 100644 --- a/Resources/Prototypes/_CP14/Entities/Mobs/NPC/monster.yml +++ b/Resources/Prototypes/_CP14/Entities/Mobs/NPC/mole.yml @@ -140,86 +140,4 @@ - type: Sprite sprite: _CP14/Effects/material_splash.rsi layers: - - state: dirt1 - -- type: entity - id: CP14MobMonsterMosquito - parent: [ SimpleMobBase, FlyingMobBase ] - name: bloodworm mosquitoes - description: A bloodthirsty swarm of small mosquitoes just waiting for a soft flesh for a bloody feast. - categories: [ ForkFiltered ] - components: - - type: HTN - rootTask: - task: CP14ApproachEnemyCompound - blackboard: - VisionRadius: !type:Single - 8 - AggroVisionRadius: !type:Single - 7 - - type: NpcFactionMember - factions: - - CP14Monster - - type: Sprite - drawdepth: Mobs - layers: - - sprite: _CP14/Mobs/Monster/mosquito.rsi - state: mosquitos - - type: Fixtures - fixtures: - fix1: - shape: - !type:PhysShapeCircle - radius: 0.45 - density: 5 - mask: - - FlyingMobMask - layer: - - FlyingMobLayer - - Opaque - - type: ReplacementAccent - accent: xeno - - type: Damageable - damageContainer: Biological - damageModifierSet: CP14LittleInsects - - type: Appearance - - type: Stamina - critThreshold: 50 - - type: DamageContacts - damage: - types: - Piercing: 1 - Bloodloss: 1 - ignoreWhitelist: - tags: - - CP14Mosquito - - type: SpeedModifierContacts - walkSpeedModifier: 0.9 - sprintSpeedModifier: 0.9 - ignoreWhitelist: - tags: - - CP14Mosquito - - type: MovementIgnoreGravity - - type: MovementSpeedModifier - baseWalkSpeed: 2 - baseSprintSpeed: 2 - friction: 0.5 - acceleration: 3 - - type: AmbientSound - volume: -1 - range: 6 - sound: - path: /Audio/_CP14/Animals/swarm.ogg - - type: Destructible - thresholds: - - trigger: - !type:DamageTrigger - damage: 20 - behaviors: - - !type:DoActsBehavior - acts: [ "Destruction" ] - - - type: MeleeSound - soundGroups: - Burn: - path: /Audio/_CP14/Animals/swarm_hit.ogg \ No newline at end of file + - state: dirt1 \ No newline at end of file diff --git a/Resources/Prototypes/_CP14/Entities/Mobs/NPC/mosquito.yml b/Resources/Prototypes/_CP14/Entities/Mobs/NPC/mosquito.yml new file mode 100644 index 0000000000..393778a4d6 --- /dev/null +++ b/Resources/Prototypes/_CP14/Entities/Mobs/NPC/mosquito.yml @@ -0,0 +1,80 @@ +- type: entity + id: CP14MobMonsterMosquito + parent: [ SimpleMobBase, FlyingMobBase ] + name: bloodworm mosquitoes + description: A bloodthirsty swarm of small mosquitoes just waiting for a soft flesh for a bloody feast. + categories: [ ForkFiltered ] + components: + - type: HTN + rootTask: + task: CP14ApproachEnemyCompound + blackboard: + VisionRadius: !type:Single + 8 + AggroVisionRadius: !type:Single + 7 + - type: NpcFactionMember + factions: + - CP14Monster + - type: Sprite + drawdepth: Mobs + layers: + - sprite: _CP14/Mobs/Monster/mosquito.rsi + state: mosquitos + - type: Fixtures + fixtures: + fix1: + shape: + !type:PhysShapeCircle + radius: 0.45 + density: 5 + mask: + - FlyingMobMask + layer: + - FlyingMobLayer + - Opaque + - type: ReplacementAccent + accent: xeno + - type: Damageable + damageContainer: Biological + damageModifierSet: CP14LittleInsects + - type: Appearance + - type: Stamina + critThreshold: 50 + - type: DamageContacts + damage: + types: + Piercing: 1 + Bloodloss: 1 + ignoreWhitelist: + tags: + - CP14Mosquito + - type: SpeedModifierContacts + walkSpeedModifier: 0.9 + sprintSpeedModifier: 0.9 + ignoreWhitelist: + tags: + - CP14Mosquito + - type: MovementIgnoreGravity + - type: MovementSpeedModifier + baseWalkSpeed: 2 + baseSprintSpeed: 2 + friction: 0.5 + acceleration: 3 + - type: AmbientSound + volume: -1 + range: 8 + sound: + path: /Audio/_CP14/Animals/swarm.ogg + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 20 + behaviors: + - !type:DoActsBehavior + acts: [ "Destruction" ] + - type: MeleeSound + soundGroups: + Burn: + path: /Audio/_CP14/Animals/swarm_hit.ogg \ No newline at end of file diff --git a/Resources/Prototypes/_CP14/Roles/Jobs/Bank/banker.yml b/Resources/Prototypes/_CP14/Roles/Jobs/Bank/banker.yml index 831ebe9941..e4296a1cab 100644 --- a/Resources/Prototypes/_CP14/Roles/Jobs/Bank/banker.yml +++ b/Resources/Prototypes/_CP14/Roles/Jobs/Bank/banker.yml @@ -10,6 +10,9 @@ - !type:CP14AddKnowledgeSpecial knowledge: - WoodWork + requirements: + - !type:OverallPlaytimeRequirement + time: 3600 # 1 hours - type: startingGear id: CP14BankerGear diff --git a/Resources/Prototypes/_CP14/Roles/Jobs/Bank/commandant.yml b/Resources/Prototypes/_CP14/Roles/Jobs/Bank/commandant.yml index 186349df38..84cc6d97fb 100644 --- a/Resources/Prototypes/_CP14/Roles/Jobs/Bank/commandant.yml +++ b/Resources/Prototypes/_CP14/Roles/Jobs/Bank/commandant.yml @@ -13,7 +13,7 @@ requirements: - !type:DepartmentTimeRequirement department: CP14Bank - time: 3600 # 1 hours + time: 7800 # 2 hours special: - !type:CP14AddKnowledgeSpecial knowledge: diff --git a/Resources/Prototypes/_CP14/Roles/Jobs/Guard/guard_commander.yml b/Resources/Prototypes/_CP14/Roles/Jobs/Guard/guard_commander.yml index 59d9dc0597..d87bc09c3a 100644 --- a/Resources/Prototypes/_CP14/Roles/Jobs/Guard/guard_commander.yml +++ b/Resources/Prototypes/_CP14/Roles/Jobs/Guard/guard_commander.yml @@ -15,6 +15,10 @@ - !type:CP14AddKnowledgeSpecial knowledge: - WoodWork + requirements: + - !type:DepartmentTimeRequirement + department: CP14Guard + time: 3600 # 1 hours - type: startingGear id: CP14GuardCommanderGear diff --git a/Resources/Prototypes/_CP14/Roles/Jobs/Mercenary/alchemist.yml b/Resources/Prototypes/_CP14/Roles/Jobs/Mercenary/alchemist.yml index 33df74bbd8..48020f1010 100644 --- a/Resources/Prototypes/_CP14/Roles/Jobs/Mercenary/alchemist.yml +++ b/Resources/Prototypes/_CP14/Roles/Jobs/Mercenary/alchemist.yml @@ -10,6 +10,10 @@ - !type:CP14AddKnowledgeSpecial knowledge: - WoodWork + requirements: + - !type:RoleTimeRequirement + role: CP14Apprentice + time: 3600 # 1 hours - type: startingGear id: CP14AlchemistGear diff --git a/Resources/Prototypes/_CP14/Roles/Jobs/Mercenary/blacksmith.yml b/Resources/Prototypes/_CP14/Roles/Jobs/Mercenary/blacksmith.yml index 58cf1cc829..de5df2cbe5 100644 --- a/Resources/Prototypes/_CP14/Roles/Jobs/Mercenary/blacksmith.yml +++ b/Resources/Prototypes/_CP14/Roles/Jobs/Mercenary/blacksmith.yml @@ -13,6 +13,10 @@ - MetallMelting - MetallForging - Glasswork + requirements: + - !type:RoleTimeRequirement + role: CP14Apprentice + time: 3600 # 1 hours - type: startingGear id: CP14BlacksmithGear diff --git a/Resources/Textures/_CP14/Mobs/Monster/ice_spectre.rsi/base.png b/Resources/Textures/_CP14/Mobs/Monster/ice_spectre.rsi/base.png new file mode 100644 index 0000000000..3983919e61 Binary files /dev/null and b/Resources/Textures/_CP14/Mobs/Monster/ice_spectre.rsi/base.png differ diff --git a/Resources/Textures/_CP14/Mobs/Monster/ice_spectre.rsi/meta.json b/Resources/Textures/_CP14/Mobs/Monster/ice_spectre.rsi/meta.json new file mode 100644 index 0000000000..6506907904 --- /dev/null +++ b/Resources/Textures/_CP14/Mobs/Monster/ice_spectre.rsi/meta.json @@ -0,0 +1,15 @@ +{ + "version": 1, + "size": { + "x": 32, + "y": 32 + }, + "license": "CLA", + "copyright": "Created by .kreks. (github/discord)", + "states": [ + { + "name": "base", + "directions": 4 + } + ] +}