Skip to content

Commit

Permalink
аутфиты, пистолетик
Browse files Browse the repository at this point in the history
  • Loading branch information
konushi committed Oct 8, 2024
1 parent 54a1624 commit 2dc2da2
Show file tree
Hide file tree
Showing 13 changed files with 177 additions and 19 deletions.
13 changes: 7 additions & 6 deletions modular_ss220/clothing/code/mod.dm
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@

// MARK: Skrell elite MODsuit
/datum/mod_theme/skrell_raskinta
name = "\improper ме'керр"
name = "\improper raskinta"
desc = "Боевая броня с функцией костюма для ВКД, созданная для войнов Раскинта Ме'керр-Кетиш."
extended_desc = "Массивный бронекостюм, выполненный в черно-синих цветах, является отлечительной чертой \
военных формирований Раскинта-Кэтиш. Защитные пластины состоят из укрепленной керамики, в то время как\
Expand All @@ -88,7 +88,7 @@
/obj/item/flash,
/obj/item/melee/baton,
/obj/item/gun,
/obj/item/melee/sardaukar,
/obj/item/melee/vibroblade,
)
skins = list(
"skrell_elite" = list(
Expand Down Expand Up @@ -127,7 +127,6 @@
applied_cell = /obj/item/stock_parts/cell/super
applied_modules = list(
/obj/item/mod/module/storage/syndicate,
/obj/item/mod/module/welding,
/obj/item/mod/module/emp_shield,
/obj/item/mod/module/status_readout,
/obj/item/mod/module/flashlight,
Expand All @@ -141,7 +140,7 @@


/datum/mod_theme/skrell_sardaukars
name = "\improper куи'кверр"
name = "\improper emperor guard"
desc = "Элитная боевая броня гвардейцев Императора Скреллианской империи."
extended_desc = "Благодаря высшим технологическим достижениям скреллов, этот костюм сочетает в себе \
невероятные показатели защищенности и мобильности, являясь незаменимой вещью на вооружении свирепых Куи'кверр-Кэтиш. \
Expand All @@ -164,7 +163,7 @@
/obj/item/flash,
/obj/item/melee/baton,
/obj/item/gun,
/obj/item/melee/sardaukar,
/obj/item/melee/vibroblade,
)
skins = list(
"skrell_white" = list(
Expand Down Expand Up @@ -203,16 +202,18 @@
applied_cell = /obj/item/stock_parts/cell/bluespace
applied_modules = list(
/obj/item/mod/module/storage/bluespace,
/obj/item/mod/module/welding,
/obj/item/mod/module/emp_shield,
/obj/item/mod/module/flashlight,
/obj/item/mod/module/jetpack/advanced,
/obj/item/mod/module/status_readout,
/obj/item/mod/module/magboot/advanced,
/obj/item/mod/module/energy_shield,
/obj/item/mod/module/visor/thermal
)
default_pins = list(
/obj/item/mod/module/jetpack/advanced,
/obj/item/mod/module/magboot/advanced,
/obj/item/mod/module/visor/thermal
)

/obj/item/mod/control/pre_equipped/exclusive/skrell_sardaukars/Initialize(mapload, new_theme, new_skin, new_core, new_access)
Expand Down
Binary file modified modular_ss220/clothing/icons/mob/mod_clothing.dmi
Binary file not shown.
Binary file modified modular_ss220/clothing/icons/mob/species/skrell/mod_clothing.dmi
Binary file not shown.
2 changes: 1 addition & 1 deletion modular_ss220/objects/_objects.dme
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
#include "code/weapons/melee/baseball_bat.dm"
#include "code/weapons/melee/electrostaff.dm"
#include "code/weapons/melee/stylet.dm"
#include "code/weapons/melee/sardaukar.dm"
#include "code/weapons/melee/vibroblade.dm"
#include "code/weapons/ranged/beretta.dm"
#include "code/weapons/ranged/pneumagun.dm"
#include "code/weapons/ranged/revolvers.dm"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
/obj/item/melee/sardaukar
/obj/item/melee/vibroblade
name = "\improper виброклинок"
desc = "Виброклинок гвардейцев Императора. Микрогенератор ультразвука в рукояти позволяет лезвию вибрировать \
с огромной частотой, что позволяет при его достаточной зарядке наносить глубокие раны даже ударами по касательной. \
Воины Куи'кверр-Кэтиш обучаются мастерству ближнего боя с детства, поэтому в их руках он особо опасен и жесток. \
Каждый будущий гвардеец добывает свой клинок в ритуальном бою и его сохранность есть вопрос жизни и смерти владельца."
desc = "Виброклинок воинов Раскинта. Микрогенератор ультразвука в рукояти позволяет лезвию вибрировать \
с огромной частотой, что позволяет при его достаточной зарядке наносить глубокие раны даже ударами по касательной."
icon = 'modular_ss220/objects/icons/melee.dmi'
icon_state = "sardaukar"
item_state = "sardaukar"
icon_state = "vibroblade"
item_state = "vibroblade"
lefthand_file = 'modular_ss220/objects/icons/inhands/melee_lefthand.dmi'
righthand_file = 'modular_ss220/objects/icons/inhands/melee_righthand.dmi'
hitsound = 'modular_ss220/objects/sound/weapons/melee/sardaukar/knifehit1.ogg'
Expand All @@ -25,13 +23,13 @@
flags = CONDUCT
var/energy = 0
var/max_energy = 20
var/charge_time = 5 SECONDS
var/charge_time = 10 SECONDS

/obj/item/melee/sardaukar/Initialize(mapload)
/obj/item/melee/vibroblade/Initialize(mapload)
. = ..()
AddComponent(/datum/component/parry, _stamina_constant = 2, _stamina_coefficient = 0.5, _parryable_attack_types = ALL_ATTACK_TYPES)

/obj/item/melee/sardaukar/attack_self(mob/living/user)
/obj/item/melee/vibroblade/attack_self(mob/living/user)
var/msg_for_all = span_warning("[user.name] пытается зарядить [src], но кнопка на рукояти не поддается!")
var/msg_for_user = span_notice("Вы пытаетесь нажать на кнопку зарядки [src], но она заблокирована.")
var/msg_recharge_all = span_notice("[user.name] нажимает на кнопку зарядки [src]...")
Expand All @@ -50,7 +48,7 @@
energy += 5
. = ..()

/obj/item/melee/sardaukar/attack(mob/living/carbon/human/target, mob/living/carbon/human/user)
/obj/item/melee/vibroblade/attack(mob/living/carbon/human/target, mob/living/carbon/human/user)
var/list/obj/item/organ/external/cutoff = list ("l_arm", "r_arm", "l_hand", "r_hand", "l_leg", "r_leg", "r_foot", "l_foot")
if(energy == 5)
target.adjustBruteLoss (5)
Expand All @@ -72,3 +70,14 @@
lucky_organ.droplimb(1, DROPLIMB_SHARP, 0, 1)
energy -= 20
..()

/obj/item/melee/vibroblade/sardaukar
name = "\improper виброклинок гвардейца"
desc = "Виброклинок гвардейцев Императора. Микрогенератор ультразвука в рукояти позволяет лезвию вибрировать \
с огромной частотой, что позволяет при его достаточной зарядке наносить глубокие раны даже ударами по касательной. \
Воины Куи'кверр-Кэтиш обучаются мастерству ближнего боя с детства, поэтому в их руках он особо опасен и жесток. \
Каждый будущий гвардеец добывает свой клинок в ритуальном бою и его сохранность есть вопрос жизни и смерти владельца."
icon_state = "vibroblade_elite"
item_state = "vibroblade_elite"
force = 25
charge_time = 3 SECONDS
20 changes: 19 additions & 1 deletion modular_ss220/objects/code/weapons/ranged/skrell_rifle.dm
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
origin_tech = "combat=6;magnets=5"
modifystate = 2
execution_speed = 3 SECONDS
w_class = WEIGHT_CLASS_NORMAL

/obj/item/gun/energy/gun/skrell_carbine/elite
name = "\improper элитный скреллианский энергитический карабин"
Expand Down Expand Up @@ -69,7 +70,7 @@
item_state = "sniper"
fire_sound = 'modular_ss220/objects/sound/weapons/gunshots/railgun.ogg'
recoil = 0
fire_delay = 35
fire_delay = 25
slot_flags = SLOT_FLAG_BELT
zoomable = FALSE
can_suppress = FALSE
Expand Down Expand Up @@ -123,3 +124,20 @@
armour_penetration_flat = 30
weaken = 0.2
speed = 0.2

// Skrellian pistol

/obj/item/gun/energy/gun/skrell_pistol
name = "\improper скреллианский энергитический пистолет"
desc = "Энергетический пистолет Qua'l*Sarqzix-44x, известный на территориях ТСФ как QS-44. Компактный и удобный в использовании, имеет два режима мощности энерголуча: 'летальный' и 'нейтрализующий'."
icon = 'modular_ss220/objects/icons/guns.dmi'
icon_state = "skrell_pistol"
item_state = "skrell_pistol"
lefthand_file = 'modular_ss220/objects/icons/inhands/guns_lefthand.dmi'
righthand_file = 'modular_ss220/objects/icons/inhands/guns_righthand.dmi'
ammo_type = list(/obj/item/ammo_casing/energy/laser/skrell_light, /obj/item/ammo_casing/energy/disabler)
w_class = WEIGHT_CLASS_SMALL
shaded_charge = FALSE
can_holster = TRUE
execution_speed = 4 SECONDS
selfcharge = TRUE
Binary file modified modular_ss220/objects/icons/guns.dmi
Binary file not shown.
Binary file modified modular_ss220/objects/icons/inhands/guns_lefthand.dmi
Binary file not shown.
Binary file modified modular_ss220/objects/icons/inhands/guns_righthand.dmi
Binary file not shown.
Binary file modified modular_ss220/objects/icons/inhands/melee_lefthand.dmi
Binary file not shown.
Binary file modified modular_ss220/objects/icons/inhands/melee_righthand.dmi
Binary file not shown.
Binary file modified modular_ss220/objects/icons/melee.dmi
Binary file not shown.
130 changes: 130 additions & 0 deletions modular_ss220/outfits/code/outfits.dm
Original file line number Diff line number Diff line change
Expand Up @@ -316,3 +316,133 @@
/datum/outfit/job/centcom/response_team/engineer/amber
suit = /obj/item/clothing/suit/space/ert_engineer
head = /obj/item/clothing/head/helmet/space/ert_engineer

// MARK: Skrell
/datum/outfit/admin/sdtf
name = "Skrellian Defence Task Forces Marine"
uniform = /obj/item/clothing/under/solgov/srt
back = /obj/item/mod/control/pre_equipped/exclusive/skrell_raskinta
belt = /obj/item/melee/vibroblade
glasses = /obj/item/clothing/glasses/night
gloves = /obj/item/clothing/gloves/combat
shoes = /obj/item/clothing/shoes/combat
l_ear = /obj/item/radio/headset/skrellian
id = /obj/item/card/id
l_hand = /obj/item/gun/energy/gun/skrell_carbine/elite
r_pocket = /obj/item/flashlight/seclite
l_pocket = /obj/item/reagent_containers/hypospray/autoinjector/nt_emergency/skrell
mask = /obj/item/clothing/mask/gas/swat
backpack_contents = list(
/obj/item/storage/box/responseteam,
/obj/item/storage/box/smoke_grenades,
/obj/item/grenade/plastic/c4/x4,
/obj/item/reagent_containers/hypospray/autoinjector/nt_emergency/skrell = 1,
/obj/item/storage/box/handcuffs,
/obj/item/tank/internals/emergency_oxygen/double,
/obj/item/clothing/accessory/holster,
/obj/item/gun/energy/gun/skrell_pistol
)
cybernetic_implants = list(
/obj/item/organ/internal/cyberimp/chest/nutriment/plus,
/obj/item/organ/internal/cyberimp/brain/anti_drop,
/obj/item/organ/internal/cyberimp/eyes/hud/medical,
)
var/is_sardaukar = FALSE

/datum/outfit/admin/sdtf/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
. = ..()
if(visualsOnly)
return

H.add_language("Skrellian")
H.set_default_language(GLOB.all_languages["Skrellian"])

var/obj/item/card/id/I = H.wear_id
if(istype(I) && !is_sardaukar)
apply_to_card(I, H, list(ACCESS_MAINT_TUNNELS), "SDTF Raskinta-Katish", "retro_medical")
I.rank = "SDTF forces"
I.assignment = "Raskinta-Katish Warrior"
else
apply_to_card(I, H, list(ACCESS_MAINT_TUNNELS), "Emperor Guard", "retro_medical")
I.rank = "Qerr-Koal Raskinta-Katish"
I.assignment = "Emperor Guard"
H.sec_hud_set_ID()

/datum/outfit/admin/sdtf/rifleman
name = "Skrellian Defence Task Forces Officer"
l_hand = /obj/item/gun/projectile/automatic/sniper_rifle/skrell_rifle
belt = /obj/item/storage/belt/military/assault/skrell
backpack_contents = list(
/obj/item/gun/energy/gun/skrell_carbine/elite,
/obj/item/melee/vibroblade,
/obj/item/storage/box/responseteam,
/obj/item/storage/box/smoke_grenades,
/obj/item/grenade/plastic/c4/x4,
/obj/item/reagent_containers/hypospray/autoinjector/nt_emergency/skrell = 1,
/obj/item/tank/internals/emergency_oxygen/double,
/obj/item/clothing/accessory/holster,
/obj/item/gun/energy/gun/skrell_pistol
)

/datum/outfit/admin/sdtf/sardaukar
name = "Skrellian Defence Task Forces Emperor Guard"
l_hand = /obj/item/gun/projectile/automatic/sniper_rifle/skrell_rifle/elite
belt = /obj/item/storage/belt/military/assault/skrell_elite
back = /obj/item/mod/control/pre_equipped/exclusive/skrell_sardaukars
l_pocket = /obj/item/reagent_containers/hypospray/combat/nanites
backpack_contents = list(
/obj/item/gun/energy/gun/skrell_carbine/elite,
/obj/item/melee/vibroblade/sardaukar,
/obj/item/storage/box/responseteam,
/obj/item/storage/box/smoke_grenades,
/obj/item/grenade/plastic/c4/x4,
/obj/item/tank/internals/emergency_oxygen/double,
/obj/item/clothing/accessory/holster,
/obj/item/CQC_manual,
/obj/item/shield/energy,
/obj/item/gun/energy/gun/skrell_pistol
)
cybernetic_implants = list(
/obj/item/organ/internal/cyberimp/chest/nutriment/plus,
/obj/item/organ/internal/cyberimp/brain/anti_drop,
/obj/item/organ/internal/cyberimp/eyes/hud/medical,
/obj/item/organ/internal/cyberimp/brain/sensory_enhancer,
/obj/item/organ/internal/cyberimp/brain/anti_stam
)
is_sardaukar = TRUE

/obj/item/radio/headset/skrellian
name = "skrellian bowman headset"
desc = "Used by SDFT forces. Protects ears from flashbangs."
flags = EARBANGPROTECT
origin_tech = "syndicate=3"
icon_state = "com_headset_alt"
item_state = "com_headset_alt"
ks1type = /obj/item/encryptionkey/skrell
requires_tcomms = FALSE

/obj/item/encryptionkey/skrell
name = "skrellian encryption key"
icon_state = "cypherkey"
channels = list("Special Ops" = 1)
origin_tech = "syndicate=4"

/obj/item/reagent_containers/hypospray/autoinjector/nt_emergency/skrell
desc = "Одноразовый автоинжектор с нанитами."
list_reagents = list("nanites" = 10)

/obj/item/storage/belt/military/assault/skrell/populate_contents()
new /obj/item/ammo_box/magazine/skrell_magazine(src)
new /obj/item/ammo_box/magazine/skrell_magazine(src)
new /obj/item/ammo_box/magazine/skrell_magazine(src)
new /obj/item/ammo_box/magazine/skrell_magazine(src)
new /obj/item/ammo_box/magazine/skrell_magazine(src)
new /obj/item/restraints/legcuffs/bola/energy(src)

/obj/item/storage/belt/military/assault/skrell_elite/populate_contents()
new /obj/item/ammo_box/magazine/skrell_magazine/skrell_magazine_elite(src)
new /obj/item/ammo_box/magazine/skrell_magazine/skrell_magazine_elite(src)
new /obj/item/ammo_box/magazine/skrell_magazine/skrell_magazine_elite(src)
new /obj/item/ammo_box/magazine/skrell_magazine/skrell_magazine_elite(src)
new /obj/item/ammo_box/magazine/skrell_magazine/skrell_magazine_elite(src)
new /obj/item/restraints/legcuffs/bola/energy(src)

0 comments on commit 2dc2da2

Please sign in to comment.