Merge branch 'master' into kevinz000-patch-2

This commit is contained in:
deathride58
2018-08-04 00:10:09 -04:00
committed by GitHub
24 changed files with 504 additions and 248 deletions
+1 -1
View File
@@ -201,4 +201,4 @@ tools/MapAtmosFixer/MapAtmosFixer/bin/*
.atom-build.json
#Jukebox audio files
/config/jukebox_music/**/*
/config/jukebox_music/**/*
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -34,8 +34,8 @@
D.apply_damage(damage, STAMINA, affecting, armor_block)
add_logs(A, D, "punched (boxing) ")
if(D.getStaminaLoss() > 50)
var/knockout_prob = D.getStaminaLoss() + rand(-15,15)
if(D.getStaminaLoss() > 100)
var/knockout_prob = (D.getStaminaLoss() + rand(-15,15))*0.75
if((D.stat != DEAD) && prob(knockout_prob))
D.visible_message("<span class='danger'>[A] has knocked [D] out with a haymaker!</span>", \
"<span class='userdanger'>[A] has knocked [D] out with a haymaker!</span>")
+1 -2
View File
@@ -126,7 +126,6 @@
var/datum/supply_pack/P = SSshuttle.supply_packs[/datum/supply_pack/engineering/shuttle_engine]
P.special_enabled = TRUE
/datum/map_template/shuttle/emergency/asteroid
suffix = "asteroid"
name = "Asteroid Station Emergency Shuttle"
@@ -229,7 +228,7 @@
suffix = "scrapheap"
name = "Standby Evacuation Vessel \"Scrapheap Challenge\""
credit_cost = -1000
description = "Due to a lack of functional emergency shuttles, we bought this second hand from a scrapyard and pressed it into service. Please do not lean to heavily on the exterior windows, they are fragile."
description = "Due to a lack of functional emergency shuttles, we bought this second hand from a scrapyard and pressed it into service. Please do not lean to heavily on the exterior windows, they are fragile. <span class='danger'>VIRUS ALERT: This entry seems to be booby-trapped with a redirector trap. Buy this at your own risk.</span>"
admin_notes = "An abomination with no functional medbay, sections missing, and some very fragile windows. Surprisingly airtight."
/datum/map_template/shuttle/emergency/narnar
+3
View File
@@ -729,6 +729,9 @@ GLOBAL_LIST_EMPTY(external_rsc_urls)
if (clicklimiter[SECOND_COUNT] > scl)
to_chat(src, "<span class='danger'>Your previous click was ignored because you've done too many in a second</span>")
return
if(ab)
return
if (prefs.hotkeys)
// If hotkey mode is enabled, then clicking the map will automatically
@@ -224,7 +224,7 @@
list_reagents = list("chloralhydrate" = 50)
/obj/item/reagent_containers/syringe/lethal/execution
list_reagents = list("plasma" = 15, "formaldehyde" = 15, "cyanide" = 10, "facid" = 10)
list_reagents = list("amatoxin" = 15, "formaldehyde" = 15, "cyanide" = 10, "facid" = 10)
/obj/item/reagent_containers/syringe/mulligan
name = "Mulligan"
@@ -0,0 +1,4 @@
author: "Hatterhat"
delete-after: True
changes:
- tweak: "The plasma formerly present in some execution syringes was replaced with amatoxin."
@@ -0,0 +1,4 @@
author: "deathride58"
delete-after: True
changes:
- rscadd: "Added Raiq's boombox as a donor item"
@@ -0,0 +1,5 @@
author: "deathride58"
delete-after: True
changes:
- balance: "The combat rework's training wheels have been removed. Knockdowns no longer have any noticeable stun. This indirectly means stunbatons and tasers will always deal their full stamloss on hit."
- balance: "The stamloss required for boxing gloves to throw a knockout punch has been increased from 50 to 100."
@@ -0,0 +1,6 @@
author: "slate3"
delete-after: True
changes:
- rscadd: "ported a new alternative sprite for engineering borgs, mr. handy"
- rscadd: "ported a new alternative sprite for security borgs, a spider-like walker"
- rscadd: "ported a new alternative sprite for medical borgs, an eyebot"
Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 19 KiB

@@ -3,7 +3,7 @@
new_owner.resting = TRUE
new_owner.adjustStaminaLoss(isnull(override_stam)? set_duration*0.25 : override_stam)
if(isnull(override_duration) && (set_duration > 80))
set_duration = set_duration*0.15
set_duration = set_duration*0.01
return ..()
else if(!isnull(override_duration))
set_duration = override_duration
@@ -0,0 +1,61 @@
/obj/item/boombox
name = "boombox"
desc = "A dusty, gray, bulky, battery-powered, auto-looping stereo cassette player. An ancient relic from prehistoric times on that one planet with humans and stuff. Yeah, that one."
icon = 'modular_citadel/icons/obj/boombox.dmi'
icon_state = "raiqbawks_off"//PLACEHOLDER UNTIL SOMEONE SPRITES PLAIN NON-FANCY BOOMBOXES
w_class = WEIGHT_CLASS_NORMAL
force = 3
var/baseiconstate = "raiqbawks"
var/boomingandboxing = FALSE
var/list/availabletrackids
/obj/item/boombox/attack_self(mob/user)
. = ..()
if(boomingandboxing)
SSjukeboxes.removejukebox(SSjukeboxes.findjukeboxindex(src))
boomingandboxing = FALSE
to_chat(user, "<span class='notice'>You flip a switch on [src], and the music immediately stops.")
update_icon()
return
if(!availabletrackids || !availabletrackids.len)
to_chat(user, "<span class='notice'>[src] flashes as you prod it senselessly. It doesn't have any songs stored on it.</span>")
return
if(!boomingandboxing)
var/list/tracklist = list()
for(var/datum/track/S in SSjukeboxes.songs)
if(istype(S) && S.song_associated_id in availabletrackids)
tracklist[S.song_name] = S
var/selected = input(user, "Play song", "Track:") as null|anything in tracklist
if(QDELETED(src) || !selected || !istype(tracklist[selected], /datum/track))
return
var/jukeboxslottotake = SSjukeboxes.addjukebox(src, tracklist[selected])
if(jukeboxslottotake)
boomingandboxing = TRUE
update_icon()
/obj/item/boombox/Destroy(mob/user)
SSjukeboxes.removejukebox(SSjukeboxes.findjukeboxindex(src))
. = ..()
/obj/item/boombox/update_icon()
icon_state = "[baseiconstate]_[boomingandboxing ? "on" : "off"]"
return
/obj/item/boombox/raiq
name = "Miami Boomer"
desc = "A shiny, fashionable boombox filled to the brim with neon lights, synthesizers, gang violence, and broken R keys. A worn-out sticker on the back states \"Includes three kickin' beats!\""
icon_state = "raiqbawks_off"
baseiconstate = "raiqbawks"
availabletrackids = list("hotline.ogg","chiptune.ogg","genesis.ogg")
/obj/item/boombox/raiq/update_icon()
. = ..()
if(boomingandboxing)
START_PROCESSING(SSobj, src)
else
STOP_PROCESSING(SSobj, src)
set_light(0)
/obj/item/boombox/raiq/process()
set_light(5,0.95,pick("#d87aff","#7a7aff","#89ecff","#b88eff","#ff59ad"))
return
@@ -313,3 +313,16 @@ datum/gear/darksabresheath
category = SLOT_IN_BACKPACK
path = /obj/item/clothing/shoes/lucky
ckeywhitelist = list("donaldtrumpthecommunist")
/datum/gear/raiqbawks
name = "Miami Boombox"
category = SLOT_HANDS
cost = 2
path = /obj/item/boombox/raiq
ckeywhitelist = list("chefferz")
/datum/gear/m41
name = "Toy M41"
category = SLOT_IN_BACKPACK
path = /obj/item/toy/gun/m41
ckeywhitelist = list("ThalVerscholen")
@@ -176,8 +176,8 @@
desc = "Sometimes things are too much to hide."
icon = 'icons/obj/custom.dmi'
icon_override = 'icons/mob/custom_w.dmi'
icon_state = "sexymime"
item_state = "sexymime"
icon_state = "hheart"
item_state = "hheart"
flags_inv = HIDEFACE|HIDEFACIALHAIR
/obj/item/clothing/suit/trenchcoat/green
@@ -179,7 +179,7 @@
/obj/item/robot_module/medical/be_transformed_to(obj/item/robot_module/old_module)
var/mob/living/silicon/robot/R = loc
var/borg_icon = input(R, "Select an icon!", "Robot Icon", null) as null|anything in list("Default", "Droid")
var/borg_icon = input(R, "Select an icon!", "Robot Icon", null) as null|anything in list("Default", "Droid", "Eyebot")
if(!borg_icon)
return FALSE
switch(borg_icon)
@@ -189,11 +189,15 @@
cyborg_base_icon = "medical"
cyborg_icon_override = 'modular_citadel/icons/mob/robots.dmi'
hat_offset = 4
if("Eyebot")
cyborg_base_icon = "eyebotmed"
cyborg_icon_override = 'modular_citadel/icons/mob/robots.dmi'
special_light_key = "eyebotmed"
return ..()
/obj/item/robot_module/security/be_transformed_to(obj/item/robot_module/old_module)
var/mob/living/silicon/robot/R = loc
var/borg_icon = input(R, "Select an icon!", "Robot Icon", null) as null|anything in list("Default", "Default - Treads", "Droid")
var/borg_icon = input(R, "Select an icon!", "Robot Icon", null) as null|anything in list("Default", "Default - Treads", "Droid", "Spider")
if(!borg_icon)
return FALSE
switch(borg_icon)
@@ -207,11 +211,15 @@
cyborg_base_icon = "Security"
special_light_key = "service"
hat_offset = 0
if("Spider")
cyborg_base_icon = "spidersec"
special_light_key = "spidersec"
cyborg_icon_override = 'modular_citadel/icons/mob/robots.dmi'
return ..()
/obj/item/robot_module/engineering/be_transformed_to(obj/item/robot_module/old_module)
var/mob/living/silicon/robot/R = loc
var/borg_icon = input(R, "Select an icon!", "Robot Icon", null) as null|anything in list("Default", "Default - Treads")
var/borg_icon = input(R, "Select an icon!", "Robot Icon", null) as null|anything in list("Default", "Default - Treads","Handy")
if(!borg_icon)
return FALSE
switch(borg_icon)
@@ -225,6 +233,10 @@
cyborg_base_icon = "loader"
cyborg_icon_override = 'modular_citadel/icons/mob/robots.dmi'
has_snowflake_deadsprite = TRUE
if("Handy")
cyborg_base_icon = "handyeng"
special_light_key = "handyeng"
cyborg_icon_override = 'modular_citadel/icons/mob/robots.dmi'
return ..()
/obj/item/robot_module/miner/be_transformed_to(obj/item/robot_module/old_module)
@@ -57,4 +57,12 @@
desc = "An authentic cap-firing reproduction of a F3 Justicar big-bore revolver! Pretend to blow your friend's brains out with this 100% safe toy! Satisfaction guaranteed!"
icon_state = "justicar"
icon = 'modular_citadel/icons/obj/guns/toys.dmi'
materials = list(MAT_METAL=2000, MAT_GLASS=250)
materials = list(MAT_METAL=2000, MAT_GLASS=250)
/obj/item/toy/gun/m41
name = "Toy M41A Pulse Rifle"
desc = "A toy replica of the Corporate Mercenaries' standard issue rifle. For Avtomat is inscribed on the side."
icon_state = "toym41"
icon = 'modular_citadel/icons/obj/guns/toys.dmi'
materials = list(MAT_METAL=2000, MAT_GLASS=250)
@@ -1,15 +1,15 @@
#define HYPO_SPRAY 0
#define HYPO_INJECT 1
#define WAIT_SPRAY 50
#define WAIT_INJECT 50
#define SELF_SPRAY 30
#define SELF_INJECT 30
#define WAIT_SPRAY 25
#define WAIT_INJECT 25
#define SELF_SPRAY 15
#define SELF_INJECT 15
#define DELUXE_WAIT_SPRAY 40
#define DELUXE_WAIT_INJECT 40
#define DELUXE_SELF_SPRAY 20
#define DELUXE_SELF_INJECT 20
#define DELUXE_WAIT_SPRAY 20
#define DELUXE_WAIT_INJECT 20
#define DELUXE_SELF_SPRAY 10
#define DELUXE_SELF_INJECT 10
#define COMBAT_WAIT_SPRAY 0
#define COMBAT_WAIT_INJECT 0
@@ -284,4 +284,4 @@
to_chat(M, "[src] is now set to inject contents on application.")
if(HYPO_INJECT)
mode = HYPO_SPRAY
to_chat(M, "[src] is now set to spray contents on application.")
to_chat(M, "[src] is now set to spray contents on application.")
@@ -67,11 +67,11 @@
/obj/item/reagent_containers/glass/bottle/vial/small
name = "hypovial"
volume = 30
volume = 60
possible_transfer_amounts = list(5,10)
/obj/item/reagent_containers/glass/bottle/vial/small/bluespace
volume = 60
volume = 120
possible_transfer_amounts = list(5,10)
name = "bluespace hypovial"
icon_state = "hypovialbs"
@@ -81,7 +81,7 @@
name = "large hypovial"
desc = "A large hypovial, for deluxe hypospray models."
icon_state = "hypoviallarge"
volume = 60
volume = 120
possible_transfer_amounts = list(5,10,15,20)
unique_reskin = list("large hypovial" = "hypoviallarge",
"large red hypovial" = "hypoviallarge-b",
@@ -116,7 +116,7 @@
/obj/item/reagent_containers/glass/bottle/vial/large/bluespace
possible_transfer_amounts = list(5,10,15,20)
name = "bluespace large hypovial"
volume = 120
volume = 240
icon_state = "hypoviallargebs"
unique_reskin = null
Binary file not shown.

Before

Width:  |  Height:  |  Size: 77 KiB

After

Width:  |  Height:  |  Size: 91 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 425 B

After

Width:  |  Height:  |  Size: 625 B

+1
View File
@@ -2720,6 +2720,7 @@
#include "modular_citadel\code\game\objects\effects\temporary_visuals\projectiles\muzzle.dm"
#include "modular_citadel\code\game\objects\effects\temporary_visuals\projectiles\tracer.dm"
#include "modular_citadel\code\game\objects\items\balls.dm"
#include "modular_citadel\code\game\objects\items\boombox.dm"
#include "modular_citadel\code\game\objects\items\handcuffs.dm"
#include "modular_citadel\code\game\objects\items\holy_weapons.dm"
#include "modular_citadel\code\game\objects\items\honk.dm"