Merge branch 'master' into master

This commit is contained in:
Thalpy
2019-08-07 09:30:53 +01:00
committed by GitHub
14 changed files with 133 additions and 108 deletions

View File

@@ -8,33 +8,37 @@ Contents:
/obj/item/clothing/suit/space/space_ninja/proc/toggle_stealth()
var/mob/living/carbon/human/U = affecting
if(!U)
if(!affecting)
return
if(stealth)
cancel_stealth()
else
if(cell.charge <= 0)
to_chat(U, "<span class='warning'>You don't have enough power to enable Stealth!</span>")
to_chat(affecting, "<span class='warning'>You don't have enough power to enable Stealth!</span>")
return
stealth = !stealth
animate(U, alpha = 50,time = 15)
U.visible_message("<span class='warning'>[U.name] vanishes into thin air!</span>", \
animate(affecting, alpha = 10,time = 15)
affecting.visible_message("<span class='warning'>[affecting.name] vanishes into thin air!</span>", \
"<span class='notice'>You are now mostly invisible to normal detection.</span>")
RegisterSignal(affecting, list(COMSIG_MOB_ITEM_ATTACK, COMSIG_MOB_ATTACK_RANGED, COMSIG_MOB_ATTACK_HAND, COMSIG_MOB_THROW, COMSIG_PARENT_ATTACKBY), .proc/reduce_stealth)
RegisterSignal(affecting, COMSIG_MOVABLE_BUMP, .proc/bumping_stealth)
/obj/item/clothing/suit/space/space_ninja/proc/reduce_stealth()
affecting.alpha = min(affecting.alpha + 30, 80)
/obj/item/clothing/suit/space/space_ninja/proc/bumping_stealth(datum/source, atom/A)
if(isliving(A))
affecting.alpha = min(affecting.alpha + 15, 80)
/obj/item/clothing/suit/space/space_ninja/proc/cancel_stealth()
var/mob/living/carbon/human/U = affecting
if(!U)
return 0
if(stealth)
stealth = !stealth
animate(U, alpha = 255, time = 15)
U.visible_message("<span class='warning'>[U.name] appears from thin air!</span>", \
"<span class='notice'>You are now visible.</span>")
return 1
return 0
if(!affecting || !stealth)
return FALSE
stealth = !stealth
UnregisterSignal(affecting, list(COMSIG_MOB_ITEM_ATTACK, COMSIG_MOB_ATTACK_RANGED, COMSIG_MOB_ATTACK_HAND, COMSIG_MOB_THROW, COMSIG_PARENT_ATTACKBY, COMSIG_MOVABLE_BUMP))
animate(affecting, alpha = 255, time = 15)
affecting.visible_message("<span class='warning'>[affecting.name] appears from thin air!</span>", \
"<span class='notice'>You are now visible.</span>")
return TRUE
/obj/item/clothing/suit/space/space_ninja/proc/stealth()
if(!s_busy)

View File

@@ -1,4 +1,3 @@
/obj/item/clothing/shoes/space_ninja
name = "ninja shoes"
desc = "A pair of running shoes. Excellent for running and even better for smashing skulls."
@@ -13,3 +12,12 @@
min_cold_protection_temperature = SHOES_MIN_TEMP_PROTECT
heat_protection = FEET
max_heat_protection_temperature = SHOES_MAX_TEMP_PROTECT
/obj/item/clothing/shoes/space_ninja/equipped(mob/user, slot)
. = ..()
if(slot == SLOT_SHOES)
ADD_TRAIT(user, TRAIT_SILENT_STEP, "ninja_shoes_[REF(src)]")
/obj/item/clothing/shoes/space_ninja/dropped(mob/user)
. = ..()
REMOVE_TRAIT(user, TRAIT_SILENT_STEP, "ninja_shoes_[REF(src)]")

View File

@@ -149,12 +149,11 @@ Contents:
/obj/item/clothing/suit/space/space_ninja/examine(mob/user)
..()
if(s_initialized)
if(user == affecting)
to_chat(user, "All systems operational. Current energy capacity: <B>[DisplayEnergy(cell.charge)]</B>.")
to_chat(user, "The CLOAK-tech device is <B>[stealth?"active":"inactive"]</B>.")
to_chat(user, "There are <B>[s_bombs]</B> smoke bomb\s remaining.")
to_chat(user, "There are <B>[a_boost]</B> adrenaline booster\s remaining.")
if(s_initialized && user == affecting)
to_chat(user, "All systems operational. Current energy capacity: <B>[DisplayEnergy(cell.charge)]</B>.\n\
The CLOAK-tech device is <B>[stealth?"active":"inactive"]</B>.\n\
There are <B>[s_bombs]</B> smoke bomb\s remaining.\n\
There are <B>[a_boost]</B> adrenaline booster\s remaining.")
/obj/item/clothing/suit/space/space_ninja/ui_action_click(mob/user, action)
if(istype(action, /datum/action/item_action/initialize_ninja_suit))

View File

@@ -48,7 +48,7 @@
/obj/item/clothing/suit/space/space_ninja/proc/ninitialize_seven(delay, mob/living/carbon/human/U)
to_chat(U, "<span class='notice'>All systems operational. Welcome to <B>SpiderOS</B>, [U.real_name].</span>")
s_initialized = TRUE
ntick()
START_PROCESSING(SSprocessing, src)
s_busy = FALSE
@@ -91,4 +91,5 @@
unlock_suit()
U.regenerate_icons()
s_initialized = FALSE
STOP_PROCESSING(SSprocessing, src)
s_busy = FALSE

View File

@@ -1,20 +1,17 @@
/obj/item/clothing/suit/space/space_ninja/proc/ntick(mob/living/carbon/human/U = affecting)
//Runs in the background while the suit is initialized.
//Requires charge or stealth to process.
spawn while(s_initialized)
if(!affecting)
terminate()//Kills the suit and attached objects.
/obj/item/clothing/suit/space/space_ninja/process()
if(!affecting || !s_initialized)
return PROCESS_KILL
else if(cell.charge > 0)
if(s_coold)
s_coold--//Checks for ability s_cooldown first.
if(cell.charge > 0)
if(s_coold)
s_coold--//Checks for ability s_cooldown first.
cell.charge -= s_cost//s_cost is the default energy cost each ntick, usually 5.
if(stealth)//If stealth is active.
cell.charge -= s_acost
cell.charge -= s_cost//s_cost is the default energy cost each tick, usually 5.
if(stealth)//If stealth is active.
cell.charge -= s_acost
affecting.alpha = max(affecting.alpha - 10, 10)
else
cell.charge = 0
else
cell.charge = 0
if(stealth)
cancel_stealth()
sleep(10)//Checks every second.

View File

@@ -20,8 +20,8 @@
icon_state = "borg_l_arm"
status = BODYPART_ROBOTIC
brute_reduction = 5
burn_reduction = 4
brute_reduction = 2
burn_reduction = 1
light_brute_msg = ROBOTIC_LIGHT_BRUTE_MSG
medium_brute_msg = ROBOTIC_MEDIUM_BRUTE_MSG
@@ -41,8 +41,8 @@
icon_state = "borg_r_arm"
status = BODYPART_ROBOTIC
brute_reduction = 5
burn_reduction = 4
brute_reduction = 2
burn_reduction = 1
light_brute_msg = ROBOTIC_LIGHT_BRUTE_MSG
medium_brute_msg = ROBOTIC_MEDIUM_BRUTE_MSG
@@ -62,8 +62,8 @@
icon_state = "borg_l_leg"
status = BODYPART_ROBOTIC
brute_reduction = 5
burn_reduction = 4
brute_reduction = 2
burn_reduction = 1
light_brute_msg = ROBOTIC_LIGHT_BRUTE_MSG
medium_brute_msg = ROBOTIC_MEDIUM_BRUTE_MSG
@@ -83,8 +83,8 @@
icon_state = "borg_r_leg"
status = BODYPART_ROBOTIC
brute_reduction = 5
burn_reduction = 4
brute_reduction = 2
burn_reduction = 1
light_brute_msg = ROBOTIC_LIGHT_BRUTE_MSG
medium_brute_msg = ROBOTIC_MEDIUM_BRUTE_MSG
@@ -103,8 +103,8 @@
icon_state = "borg_chest"
status = BODYPART_ROBOTIC
brute_reduction = 5
burn_reduction = 4
brute_reduction = 2
burn_reduction = 1
light_brute_msg = ROBOTIC_LIGHT_BRUTE_MSG
medium_brute_msg = ROBOTIC_MEDIUM_BRUTE_MSG
@@ -268,38 +268,38 @@
burn_reduction = 0
max_damage = 20
// Upgraded Surplus lims
// Upgraded Surplus lims - Better then robotic lims
/obj/item/bodypart/l_arm/robot/surplus_upgraded
name = "reinforced surplus prosthetic left arm"
desc = "A skeletal, robotic limb. This one is reinforced to provide better protection."
desc = "A skeletal, robotic limb. This one is reinforced to provide better protection, and is made of stronger parts."
icon = 'icons/mob/augmentation/surplus_augments.dmi'
brute_reduction = 1
burn_reduction = 1
max_damage = 30
brute_reduction = 3
burn_reduction = 2
max_damage = 55
/obj/item/bodypart/r_arm/robot/surplus_upgraded
name = "reinforced surplus prosthetic right arm"
desc = "A skeletal, robotic limb. This one is reinforced to provide better protection."
desc = "A skeletal, robotic limb. This one is reinforced to provide better protection, and is made of stronger parts."
icon = 'icons/mob/augmentation/surplus_augments.dmi'
brute_reduction = 1
burn_reduction = 1
max_damage = 30
brute_reduction = 3
burn_reduction = 2
max_damage = 55
/obj/item/bodypart/l_leg/robot/surplus_upgraded
name = "reinforced surplus prosthetic left leg"
desc = "A skeletal, robotic limb. This one is reinforced to provide better protection."
desc = "A skeletal, robotic limb. This one is reinforced to provide better protection, and is made of stronger parts."
icon = 'icons/mob/augmentation/surplus_augments.dmi'
brute_reduction = 1
burn_reduction = 1
max_damage = 30
brute_reduction = 3
burn_reduction = 2
max_damage = 55
/obj/item/bodypart/r_leg/robot/surplus_upgraded
name = "reinforced surplus prosthetic right leg"
desc = "A skeletal, robotic limb. This one is reinforced to provide better protection."
desc = "A skeletal, robotic limb. This one is reinforced to provide better protection, and is made of stronger parts."
icon = 'icons/mob/augmentation/surplus_augments.dmi'
brute_reduction = 1
burn_reduction = 1
max_damage = 30
brute_reduction = 3
burn_reduction = 2
max_damage = 55
#undef ROBOTIC_LIGHT_BRUTE_MSG
#undef ROBOTIC_MEDIUM_BRUTE_MSG