Skip to content

Commit

Permalink
Merge pull request Civ13#2619 from savethetreez/popo
Browse files Browse the repository at this point in the history
Siberiad job tweaks part 1
  • Loading branch information
savethetreez authored Feb 13, 2024
2 parents 0609795 + bc45917 commit 800c68b
Show file tree
Hide file tree
Showing 5 changed files with 80 additions and 111 deletions.
8 changes: 4 additions & 4 deletions code/game/objects/map_metadata/siberiad.dm
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,10 @@
list(AMERICAN) = /area/caribbean/no_mans_land/capturable/one,
list(RUSSIAN) = /area/caribbean/no_mans_land/capturable/one,
)
age = "2049"
age = "2033"
faction_distribution_coeffs = list(AMERICAN = 0.5, RUSSIAN = 0.5)
battle_name = "Siberian Conflict"
mission_start_message = "<font size=4>The remnants of the <font color = 'blue'>Coalition</font color> and the <font color = red><b>Soviet Army</b></font> are fighting for the control of an <b>Military Industrial Complex</b> in the <b>MIDDLE</b> of the area of operations.<br>In order to win, a side has to hold the <b>Control Room</b> for<b>5 minutes</b>.<br>The battle will start in <b>5 minutes</b>.</font>"
mission_start_message = "<font size=4>The remnants of the <font color = 'blue'>Coalition</font color> and the <font color = red>Soviet Army</font> are fighting for the control of a <b>Military Industrial Complex</b> in the <b>MIDDLE</b> of the area of operations.<br>In order to win, a side has to hold the <b>Control Room</b> for<b>5 minutes</b>.<br>The battle will start in <b>5 minutes</b>.</font>"
faction1 = AMERICAN
faction2 = RUSSIAN
ordinal_age = 7
Expand Down Expand Up @@ -85,9 +85,9 @@

/obj/map_metadata/siberiad/cross_message(faction)
if (faction == AMERICAN)
return "<font size = 4>The <b><font color = blue>Coalition</b></font> may now cross the invisible wall!</font>"
return "<font size = 4>The <font color = blue>Coalition</font color> may now cross the invisible wall!</font>"
else if (faction == RUSSIAN)
return "<font size = 4>The <b><font color = red>Soviets</b></font> may now cross the invisible wall!</font>"
return "<font size = 4>The <font color = red>Soviet Army</font color> may now cross the invisible wall!</font>"
else
return ""

Expand Down
7 changes: 6 additions & 1 deletion code/modules/1713/apparel_worldwars.dm
Original file line number Diff line number Diff line change
Expand Up @@ -2411,7 +2411,7 @@ obj/item/clothing/accessory/storage/webbing/ww1/ww2/stormgroup/Scout

/obj/item/clothing/suit/storage/coat/ww2/soviet_officer
name = "soviet officer coat"
desc = "A soviet trenchcoat, worn by officers in the red army."
desc = "A soviet trenchcoat, worn by officers in the Red Army."
icon_state = "sov_offcoat"
item_state = "sov_offcoat"
worn_state = "sov_offcoat"
Expand All @@ -2420,6 +2420,11 @@ obj/item/clothing/accessory/storage/webbing/ww1/ww2/stormgroup/Scout
armor = list(melee = 10, arrow = 0, gun = FALSE, energy = 15, bomb = 5, bio = 30, rad = 25)
value = 65

/obj/item/clothing/suit/storage/coat/ww2/soviet_officer/alt
icon_state = "sov_offcoat_alt"
item_state = "sov_offcoat_alt"
worn_state = "sov_offcoat_alt"

/obj/item/clothing/head/helmet/ww2/us_mp
name = "us mp helmet"
desc = "A typical rounded steel helmet. This one has the markings of MP on it."
Expand Down
176 changes: 70 additions & 106 deletions code/modules/1713/jobs/russian.dm
Original file line number Diff line number Diff line change
Expand Up @@ -2894,7 +2894,7 @@

/////////////////////SIBERIAD//////////////////////////////////

/datum/job/russian/siberiad/lt
/datum/job/russian/siberiad/commander
title = "Soviet Army Commander"
rank_abbreviation = "Kapt."
spawn_location = "JoinLateRU"
Expand All @@ -2912,27 +2912,24 @@

selection_color = "#CC0000"

/datum/job/russian/siberiad/lt/equip(var/mob/living/human/H)
/datum/job/russian/siberiad/commander/equip(var/mob/living/human/H)
if (!H) return FALSE
//shoes
H.equip_to_slot_or_del(new /obj/item/clothing/shoes/jackboots/soviet(H), slot_shoes)
//clothes
H.equip_to_slot_or_del(new /obj/item/clothing/under/ww2/soviet_amoeba/winter(H), slot_w_uniform)
//thermal
H.equip_to_slot_or_del(new /obj/item/clothing/glasses/thermal(H), slot_eyes)
//mask
H.equip_to_slot_or_del(new /obj/item/clothing/mask/headscarfgrey/white(H), slot_wear_mask)
H.equip_to_slot_or_del(new /obj/item/clothing/under/gorka(H), slot_w_uniform)
H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/coat/ww2/soviet_officer/alt(H), slot_wear_suit)
//gun
H.equip_to_slot_or_del(new /obj/item/weapon/gun/projectile/submachinegun/ak74m/ak12(H), slot_shoulder)
H.equip_to_slot_or_del(new /obj/item/weapon/gun/projectile/submachinegun/ak74/pso1(H), slot_shoulder)
//belt
H.equip_to_slot_or_del(new /obj/item/weapon/storage/belt/smallpouches/green/sov_74(H), slot_belt)
//helmet
H.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/modern/ssh_68/winter(H), slot_head)
H.equip_to_slot_or_del(new /obj/item/clothing/head/sov_ushanka_new(H), slot_head)
//glove
H.equip_to_slot_or_del(new /obj/item/clothing/gloves/thick/leather/white(H), slot_gloves)
H.equip_to_slot_or_del(new /obj/item/clothing/gloves/thick(H), slot_gloves)
//id
H.equip_to_slot_or_del(new /obj/item/weapon/radio/walkietalkie/faction2(H), slot_wear_id)
//other shit
//misc
H.equip_to_slot_or_del(new /obj/item/weapon/attachment/scope/adjustable/binoculars/binoculars(H), slot_l_store)
//armor
var/obj/item/clothing/under/uniform = H.w_uniform
Expand All @@ -2945,24 +2942,22 @@
armour2.attackby(plates1, H)
armour2.attackby(plates2, H)
uniform.attackby(armour2, H)
//back
H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/rucksack/small/command(H), slot_back)

H.civilization = "Soviet"
H.add_note("Role", "You are a <b>[title]</b>. Command your men and lead them well, Your men count on you!")
H.civilization = "Soviet Army"
H.add_note("Role", "You are the <b>[title]</b>. Command and lead your men towards the objective.")
H.setStat("strength", STAT_HIGH)
H.setStat("crafting", STAT_MEDIUM_LOW)
H.setStat("rifle", STAT_MEDIUM_HIGH)
H.setStat("dexterity", STAT_MEDIUM_LOW)
H.setStat("swords", STAT_MEDIUM_LOW)
H.setStat("pistol", STAT_MEDIUM_LOW)
H.setStat("crafting", STAT_NORMAL)
H.setStat("rifle", STAT_HIGH)
H.setStat("dexterity", STAT_NORMAL)
H.setStat("swords", STAT_NORMAL)
H.setStat("pistol", STAT_HIGH)
H.setStat("bows", STAT_NORMAL)
H.setStat("medical", STAT_HIGH)
H.setStat("medical", STAT_NORMAL)
give_random_name(H)

return TRUE

/datum/job/russian/siberiad/squadlead
/datum/job/russian/siberiad/sl
title = "Soviet Army Squad Leader"
rank_abbreviation = "Snr Srj."
spawn_location = "JoinLateRU"
Expand All @@ -2977,16 +2972,20 @@
max_positions = 8
selection_color = "#CC0000"

/datum/job/russian/siberiad/squadlead/equip(var/mob/living/human/H)
/datum/job/russian/siberiad/sl/equip(var/mob/living/human/H)
if (!H) return FALSE
//shoes
H.equip_to_slot_or_del(new /obj/item/clothing/shoes/jackboots/soviet(H), slot_shoes)
if (prob(50))
H.equip_to_slot_or_del(new /obj/item/clothing/shoes/jackboots/modern(H), slot_shoes)
else
H.equip_to_slot_or_del(new /obj/item/clothing/shoes/jackboots/soviet(H), slot_shoes)
//clothes
H.equip_to_slot_or_del(new /obj/item/clothing/under/ww2/soviet_berezka(H), slot_w_uniform)
//thermal
H.equip_to_slot_or_del(new /obj/item/clothing/glasses/tactical_goggles/ballistic(H), slot_eyes)
H.equip_to_slot_or_del(new /obj/item/clothing/under/gorka(H), slot_w_uniform)
//mask
H.equip_to_slot_or_del(new /obj/item/clothing/mask/headscarfgrey/asbestos(H), slot_wear_mask)
if (prob(50))
H.equip_to_slot_or_del(new /obj/item/clothing/mask/balaclava/green(H), slot_wear_mask)
else
H.equip_to_slot_or_del(new /obj/item/clothing/mask/sovietbala(H), slot_wear_mask)
//armor
var/obj/item/clothing/under/uniform = H.w_uniform
var/obj/item/clothing/accessory/armband/british/red = new /obj/item/clothing/accessory/armband/british(null)
Expand All @@ -3007,32 +3006,26 @@
var/obj/item/clothing/accessory/storage/webbing/green_webbing/blue/ak74/webbing = new /obj/item/clothing/accessory/storage/webbing/green_webbing/blue/ak74(null)
uniform.attackby(webbing, H)
//helmet
H.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/modern/ssh_68/winter(H), slot_head)
//glove
H.equip_to_slot_or_del(new /obj/item/clothing/gloves/thick/combat(H), slot_gloves)
H.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/modern/ssh_68(H), slot_head)
//gloves
H.equip_to_slot_or_del(new /obj/item/clothing/gloves/thick(H), slot_gloves)
//id
H.equip_to_slot_or_del(new /obj/item/weapon/radio/walkietalkie/faction2(H), slot_wear_id)
//other shit
H.equip_to_slot_or_del(new /obj/item/weapon/attachment/scope/adjustable/binoculars/binoculars(H), slot_l_store)
H.equip_to_slot_or_del(new /obj/item/weapon/attachment/bayonet(H), slot_r_store)
//suit
H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/coat/fur/klyaksa(H), slot_wear_suit)
//back
if (prob(60))
H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/rucksack/small/medical(H), slot_back)
else if (prob(30))
H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/rucksack/small/extracap/medicalh(H), slot_back)
H.civilization = "Soviet"
H.add_note("Role", "You are a <b>[title]</b>. Take orders from your Operation Leader and lead your squad towards victory!")
H.setStat("strength", STAT_MEDIUM_LOW)
H.setStat("crafting", STAT_MEDIUM_LOW)
H.setStat("rifle", STAT_MEDIUM_LOW)
H.setStat("dexterity", STAT_MEDIUM_LOW)
H.civilization = "Soviet Army"
H.add_note("Role", "You are a <b>[title]</b>. Take orders from your commander and lead your squad towards the objective!")
H.setStat("strength", STAT_NORMAL)
H.setStat("crafting", STAT_NORMAL)
H.setStat("rifle", STAT_NORMAL)
H.setStat("dexterity", STAT_NORMAL)
H.setStat("swords", STAT_MEDIUM_LOW)
H.setStat("pistol", STAT_MEDIUM_LOW)
H.setStat("pistol", STAT_NORMAL)
H.setStat("bows", STAT_NORMAL)
H.setStat("medical", STAT_VERY_HIGH)
H.setStat("machinegun", STAT_MEDIUM_HIGH)
H.setStat("medical", STAT_NORMAL)
H.setStat("machinegun", STAT_NORMAL)
give_random_name(H)

return TRUE
Expand All @@ -3054,11 +3047,9 @@
/datum/job/russian/siberiad/heavy/equip(var/mob/living/human/H)
if (!H) return FALSE
//shoes
H.equip_to_slot_or_del(new /obj/item/clothing/shoes/jackboots/soviet(H), slot_shoes)
H.equip_to_slot_or_del(new /obj/item/clothing/shoes/jackboots/modern(H), slot_shoes)
//clothes
H.equip_to_slot_or_del(new /obj/item/clothing/under/gorka/frag(H), slot_w_uniform)
//thermal
H.equip_to_slot_or_del(new /obj/item/clothing/glasses/tactical_goggles/ballistic(H), slot_eyes)
H.equip_to_slot_or_del(new /obj/item/clothing/under/ww2/soviet_berezka(H), slot_w_uniform)
//mask
H.equip_to_slot_or_del(new /obj/item/clothing/mask/headscarfgrey/asbestos(H), slot_wear_mask)
//armor
Expand All @@ -3073,7 +3064,7 @@
armour2.attackby(plates2, H)
uniform.attackby(armour2, H)
//gun
var/randimpw = rand(1,3)
var/randimpw = rand(1,2)
switch(randimpw)
if (1)
H.equip_to_slot_or_del(new /obj/item/weapon/gun/projectile/automatic/pkm(H), slot_shoulder)
Expand All @@ -3085,33 +3076,23 @@
H.equip_to_slot_or_del(new /obj/item/weapon/storage/belt/largepouches/white/rpk(H), slot_belt)
var/obj/item/clothing/accessory/storage/webbing/russian/guns/rpk/webbing = new /obj/item/clothing/accessory/storage/webbing/russian/guns/rpk(null)
uniform.attackby(webbing, H)
if (3)
H.equip_to_slot_or_del(new /obj/item/weapon/gun/projectile/automatic/rpd(H), slot_shoulder)
H.equip_to_slot_or_del(new /obj/item/weapon/storage/belt/largepouches/white/rpd(H), slot_belt)
var/obj/item/clothing/accessory/storage/webbing/russian/guns/rpd/webbing = new /obj/item/clothing/accessory/storage/webbing/russian/guns/rpd(null)
uniform.attackby(webbing, H)
//helmet
H.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/modern/sovietfacehelmet(H), slot_head)
//glove
H.equip_to_slot_or_del(new /obj/item/clothing/gloves/thick/combat(H), slot_gloves)
H.equip_to_slot_or_del(new /obj/item/clothing/gloves/thick(H), slot_gloves)
//id
H.equip_to_slot_or_del(new /obj/item/weapon/radio/walkietalkie/faction2(H), slot_wear_id)
//suit
H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/coat/fur/klyaksa(H), slot_wear_suit)
//other shit
H.equip_to_slot_or_del(new /obj/item/weapon/attachment/scope/adjustable/binoculars/binoculars(H), slot_l_store)
H.equip_to_slot_or_del(new /obj/item/weapon/attachment/bayonet(H), slot_r_store)

H.civilization = "Soviet"
H.add_note("Role", "You are a <b>[title]</b>.As a heavy infantryman You Provide Firepower and Suppresive fire for your squad!")
H.setStat("strength", STAT_MEDIUM_LOW)
H.civilization = "Soviet Army"
H.add_note("Role", "You are a <b>[title]</b>. Provide support to your squad using your heavy weaponry!")
H.setStat("strength", STAT_MEDIUM_HIGH)
H.setStat("crafting", STAT_MEDIUM_LOW)
H.setStat("rifle", STAT_MEDIUM_LOW)
H.setStat("dexterity", STAT_MEDIUM_LOW)
H.setStat("rifle", STAT_NORMAL)
H.setStat("dexterity", STAT_NORMAL)
H.setStat("swords", STAT_MEDIUM_LOW)
H.setStat("pistol", STAT_MEDIUM_LOW)
H.setStat("bows", STAT_NORMAL)
H.setStat("medical", STAT_NORMAL)
H.setStat("pistol", STAT_NORMAL)
H.setStat("bows", STAT_MEDIUM_LOW)
H.setStat("medical", STAT_MEDIUM_LOW)
H.setStat("machinegun", STAT_MEDIUM_HIGH)
give_random_name(H)

Expand All @@ -3134,7 +3115,10 @@
/datum/job/russian/siberiad/infantry/equip(var/mob/living/human/H)
if (!H) return FALSE
//shoes
H.equip_to_slot_or_del(new /obj/item/clothing/shoes/jackboots/soviet(H), slot_shoes)
if (prob(50))
H.equip_to_slot_or_del(new /obj/item/clothing/shoes/jackboots/soviet(H), slot_shoes)
else
H.equip_to_slot_or_del(new /obj/item/clothing/shoes/jackboots/modern(H), slot_shoes)
//clothes
H.equip_to_slot_or_del(new /obj/item/clothing/under/ww2/soviet_berezka(H), slot_w_uniform)
//armor
Expand All @@ -3144,54 +3128,34 @@
var/obj/item/clothing/accessory/armor/coldwar/plates/b3/armour2 = new /obj/item/clothing/accessory/armor/coldwar/plates/b3(null)
uniform.attackby(armour2, H)
//gun
var/randimpw = rand(1,4)
switch(randimpw)
var/loadout= rand(1,2)
switch(loadout)
if (1)
H.equip_to_slot_or_del(new /obj/item/weapon/gun/projectile/submachinegun/ak74(H), slot_shoulder)
H.equip_to_slot_or_del(new /obj/item/weapon/storage/belt/smallpouches/green/ak74(H), slot_belt)
var/obj/item/clothing/accessory/storage/webbing/green_webbing/blue/ak74/webbing = new /obj/item/clothing/accessory/storage/webbing/green_webbing/blue/ak74(null)
uniform.attackby(webbing, H)
if (2)
H.equip_to_slot_or_del(new /obj/item/weapon/gun/projectile/submachinegun/ak74/aks74(H), slot_shoulder)
H.equip_to_slot_or_del(new /obj/item/weapon/storage/belt/smallpouches/green/ak74(H), slot_belt)
var/obj/item/clothing/accessory/storage/webbing/green_webbing/blue/ak74/webbing = new /obj/item/clothing/accessory/storage/webbing/green_webbing/blue/ak74(null)
uniform.attackby(webbing, H)
if (3)
H.equip_to_slot_or_del(new /obj/item/weapon/gun/projectile/submachinegun/ppsh(H), slot_shoulder)
H.equip_to_slot_or_del(new /obj/item/weapon/storage/belt/smallpouches/soviet_ppsh(H), slot_belt)
var/obj/item/clothing/accessory/storage/webbing/ww1/leather/ww2/ppsh/grenade/webbing = new /obj/item/clothing/accessory/storage/webbing/ww1/leather/ww2/ppsh/grenade(null)
uniform.attackby(webbing, H)
if (4)
H.equip_to_slot_or_del(new /obj/item/weapon/gun/projectile/boltaction/mosin(H), slot_shoulder)
H.equip_to_slot_or_del(new /obj/item/weapon/storage/belt/smallpouches/green/mosin(H), slot_belt)
var/obj/item/clothing/accessory/storage/webbing/ww1/leather/ww2/mosin/webbing = new /obj/item/clothing/accessory/storage/webbing/ww1/leather/ww2/mosin(null)
uniform.attackby(webbing, H)
H.equip_to_slot_or_del(new /obj/item/weapon/gun/projectile/submachinegun/ak74m(H), slot_shoulder)
H.equip_to_slot_or_del(new /obj/item/weapon/storage/belt/smallpouches/green/ak74(H), slot_belt)
var/obj/item/clothing/accessory/storage/webbing/green_webbing/blue/ak74/webbing = new /obj/item/clothing/accessory/storage/webbing/green_webbing/blue/ak74(null)
uniform.attackby(webbing, H)
//helmet
if (prob(45))
H.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/modern/ssh_68/winter(H), slot_head)
else if (prob(50))
H.equip_to_slot_or_del(new /obj/item/clothing/head/ww2/sov_ushanka(H), slot_head)
else
H.equip_to_slot_or_del(new /obj/item/clothing/head/ww2/sov_ushanka/down(H), slot_head)
H.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/modern/ssh_68(H), slot_head)
//glove
H.equip_to_slot_or_del(new /obj/item/clothing/gloves/thick/combat(H), slot_gloves)
//suit
H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/coat/fur/klyaksa(H), slot_wear_suit)
//back
if (prob(50))
H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/rucksack/small/milpack(H), slot_back)
H.equip_to_slot_or_del(new /obj/item/clothing/gloves/thick(H), slot_gloves)

H.civilization = "Soviet"
H.civilization = "Soviet Army"
H.add_note("Role", "You are a <b>[title]</b>. Follow your Squad Leader and his orders!")
H.setStat("strength", STAT_MEDIUM_LOW)
H.setStat("crafting", STAT_NORMAL)
H.setStat("strength", STAT_NORMAL)
H.setStat("crafting", STAT_MEDIUM_LOW)
H.setStat("rifle", STAT_NORMAL)
H.setStat("dexterity", STAT_NORMAL)
H.setStat("swords", STAT_NORMAL)
H.setStat("swords", STAT_MEDIUM_LOW)
H.setStat("pistol", STAT_NORMAL)
H.setStat("bows", STAT_NORMAL)
H.setStat("medical", STAT_NORMAL)
H.setStat("machinegun", STAT_NORMAL)
H.setStat("bows", STAT_MEDIUM_LOW)
H.setStat("medical", STAT_MEDIUM_LOW)
H.setStat("machinegun", STAT_MEDIUM_LOW)
give_random_name(H)

return TRUE
Expand Down
Binary file modified icons/mob/suit.dmi
Binary file not shown.
Binary file modified icons/obj/clothing/suits.dmi
Binary file not shown.

0 comments on commit 800c68b

Please sign in to comment.