mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-20 19:43:13 +01:00
Merge branch 'master' into development
This commit is contained in:
@@ -18,6 +18,8 @@ var/datum/antagonist/mercenary/mercs
|
||||
initial_spawn_req = 4
|
||||
initial_spawn_target = 4
|
||||
|
||||
faction = "syndicate"
|
||||
|
||||
/datum/antagonist/mercenary/New()
|
||||
..()
|
||||
mercs = src
|
||||
|
||||
@@ -15,6 +15,8 @@ var/datum/antagonist/raider/raiders
|
||||
hard_cap_round = 10
|
||||
initial_spawn_req = 4
|
||||
initial_spawn_target = 6
|
||||
|
||||
faction = "syndicate"
|
||||
|
||||
id_type = /obj/item/weapon/card/id/syndicate
|
||||
|
||||
|
||||
@@ -6,6 +6,8 @@ var/datum/antagonist/traitor/traitors
|
||||
restricted_jobs = list("Internal Affairs Agent", "Head of Security", "Captain")
|
||||
protected_jobs = list("Security Officer", "Warden", "Detective")
|
||||
flags = ANTAG_SUSPICIOUS | ANTAG_RANDSPAWN | ANTAG_VOTABLE
|
||||
|
||||
faction = "syndicate"
|
||||
|
||||
/datum/antagonist/traitor/New()
|
||||
..()
|
||||
|
||||
@@ -5,6 +5,12 @@
|
||||
// flags: See below, bitfield.
|
||||
#define MUTCHK_FORCED 1
|
||||
/proc/domutcheck(var/mob/living/M, var/connected=null, var/flags=0)
|
||||
|
||||
if(ishuman(M))
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(H.species && H.species.flags & NO_SCAN)
|
||||
return
|
||||
|
||||
for(var/datum/dna/gene/gene in dna_genes)
|
||||
if(!M || !M.dna)
|
||||
return
|
||||
|
||||
@@ -23,6 +23,10 @@
|
||||
// Give Random Bad Mutation to M
|
||||
/proc/randmutb(var/mob/living/M)
|
||||
if(!M) return
|
||||
if(ishuman(M))
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(H.species && H.species.flags & NO_SCAN)
|
||||
return
|
||||
M.dna.check_integrity()
|
||||
var/block = pick(GLASSESBLOCK,COUGHBLOCK,FAKEBLOCK,NERVOUSBLOCK,CLUMSYBLOCK,TWITCHBLOCK,HEADACHEBLOCK,BLINDBLOCK,DEAFBLOCK,HALLUCINATIONBLOCK)
|
||||
M.dna.SetSEState(block, 1)
|
||||
@@ -30,6 +34,10 @@
|
||||
// Give Random Good Mutation to M
|
||||
/proc/randmutg(var/mob/living/M)
|
||||
if(!M) return
|
||||
if(ishuman(M))
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(H.species && H.species.flags & NO_SCAN)
|
||||
return
|
||||
M.dna.check_integrity()
|
||||
var/block = pick(HULKBLOCK,XRAYBLOCK,FIREBLOCK,TELEBLOCK,NOBREATHBLOCK,REMOTEVIEWBLOCK,REGENERATEBLOCK,INCREASERUNBLOCK,REMOTETALKBLOCK,MORPHBLOCK,BLENDBLOCK,NOPRINTSBLOCK,SHOCKIMMUNITYBLOCK,SMALLSIZEBLOCK)
|
||||
M.dna.SetSEState(block, 1)
|
||||
|
||||
@@ -319,6 +319,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM
|
||||
icon_on = "pipeon" //Note - these are in masks.dmi
|
||||
icon_off = "pipeoff"
|
||||
smoketime = 0
|
||||
w_class = 1
|
||||
chem_volume = 50
|
||||
matchmes = "<span class='notice'>USER lights their NAME with their FLAME.</span>"
|
||||
lightermes = "<span class='notice'>USER manages to light their NAME with FLAME.</span>"
|
||||
|
||||
@@ -88,6 +88,7 @@ var/last_chew = 0
|
||||
if (!H.handcuffed) return
|
||||
if (H.a_intent != I_HURT) return
|
||||
if (H.zone_sel.selecting != "mouth") return
|
||||
if (!H.check_has_mouth()) return
|
||||
if (H.wear_mask) return
|
||||
if (istype(H.wear_suit, /obj/item/clothing/suit/straight_jacket)) return
|
||||
|
||||
@@ -167,4 +168,4 @@ var/last_chew = 0
|
||||
icon = 'icons/obj/items.dmi'
|
||||
icon_state = "ziptie"
|
||||
breakouttime = 600
|
||||
cuff_sound = 'sound/weapons/cablecuff.ogg'
|
||||
cuff_sound = 'sound/weapons/cablecuff.ogg'
|
||||
|
||||
@@ -87,6 +87,7 @@ var/list/flooring_types
|
||||
desc = "It's like the 2390's all over again."
|
||||
icon = 'icons/turf/flooring/linoleum.dmi'
|
||||
icon_base = "lino"
|
||||
flags = TURF_REMOVE_CROWBAR | TURF_CAN_BREAK
|
||||
can_paint = 1
|
||||
|
||||
/decl/flooring/tiling/red
|
||||
@@ -163,7 +164,7 @@ var/list/flooring_types
|
||||
icon = 'icons/turf/flooring/circuit.dmi'
|
||||
icon_base = "bcircuit"
|
||||
build_type = null
|
||||
flags = TURF_ACID_IMMUNE | TURF_CAN_BREAK
|
||||
flags = TURF_ACID_IMMUNE | TURF_CAN_BREAK | TURF_REMOVE_CROWBAR
|
||||
can_paint = 1
|
||||
|
||||
/decl/flooring/reinforced/circuit/green
|
||||
|
||||
@@ -234,7 +234,7 @@
|
||||
if(istype(W, /obj/item/weapon/weldingtool))
|
||||
playsound(loc, 'sound/items/Welder.ogg', 100, 1)
|
||||
if("brute")
|
||||
if(prob(30))
|
||||
if(prob(30) && !issilicon(user))
|
||||
visible_message("<span class='danger'>\The [W] gets caught in the gelatinous folds of \the [src]</span>")
|
||||
user.drop_from_inventory(W)
|
||||
W.forceMove(src.loc)
|
||||
|
||||
@@ -61,8 +61,8 @@
|
||||
|
||||
//Set species_restricted list
|
||||
switch(target_species)
|
||||
if("Human", "Skrell") //humanoid bodytypes
|
||||
species_restricted = list("Human", "Skrell") //skrell/humans can wear each other's suits
|
||||
if("Human", "Skrell", "Baseline Frame", "Shell Frame", "Industrial Frame") //humanoid bodytypes
|
||||
species_restricted = list("Human", "Skrell", "Baseline Frame", "Shell Frame", "Industrial Frame") //skrell/humans like to share with IPCs
|
||||
else
|
||||
species_restricted = list(target_species)
|
||||
|
||||
@@ -84,7 +84,7 @@
|
||||
//Set species_restricted list
|
||||
switch(target_species)
|
||||
if("Skrell")
|
||||
species_restricted = list("Human", "Skrell") //skrell helmets fit humans too
|
||||
species_restricted = list("Human", "Skrell", "Baseline Frame", "Shell Frame", "Industrial Frame") // skrell helmets like to share
|
||||
|
||||
else
|
||||
species_restricted = list(target_species)
|
||||
|
||||
@@ -1038,3 +1038,22 @@ All custom items with worn sprites must follow the contained sprite system: http
|
||||
contained_sprite = 1
|
||||
slot_flags = SLOT_BACK
|
||||
w_class = 4
|
||||
|
||||
|
||||
/obj/item/clothing/suit/fluff/eul_robe //Well Made Robe - Uelak Eul - lordraven001
|
||||
name = "well made robe"
|
||||
desc = "A well made brown robe fashioned from viscose fabric with a white jabot dangling from the neck. There is a tail whole cut out in the back and the sleeves and lower skirt of the robe have been elongated. \
|
||||
It looks old from wear and tear."
|
||||
icon = 'icons/obj/custom_items/eul_clothing.dmi'
|
||||
icon_state = "eul_robe"
|
||||
item_state = "eul_robe"
|
||||
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS
|
||||
contained_sprite = 1
|
||||
|
||||
/obj/item/clothing/glasses/regular/fluff/eul_glasses //Chained Wooden Spectacles - Uelak Eul - lordraven001
|
||||
name = "chained wooden spectacles"
|
||||
desc = "A pair of wooden spectacles with a long bronze chain out the back of them. They have been bejeweled by benitoite and look elder from use."
|
||||
icon = 'icons/obj/custom_items/eul_clothing.dmi'
|
||||
icon_state = "eul_glasses"
|
||||
item_state = "eul_glasses"
|
||||
contained_sprite = 1
|
||||
|
||||
@@ -363,10 +363,7 @@
|
||||
var/eventstarted = 0
|
||||
|
||||
anchored = 1.0
|
||||
use_power = 1
|
||||
idle_power_usage = 2
|
||||
active_power_usage = 6
|
||||
power_channel = ENVIRON
|
||||
use_power = 0 // reason is because the holodeck already takes power so this can be powered as a result.
|
||||
|
||||
/obj/machinery/readybutton/attack_ai(mob/user as mob)
|
||||
user << "The station AI is not to interact with these devices!"
|
||||
|
||||
@@ -238,6 +238,26 @@
|
||||
set_trait(TRAIT_PLANT_ICON,"bush4")
|
||||
set_trait(TRAIT_IDEAL_HEAT, 298)
|
||||
set_trait(TRAIT_IDEAL_LIGHT, 7)
|
||||
//Placeholder mutation for the eggplant. Not as fun as the other mutations but better than nothing.
|
||||
/datum/seed/realeggplant
|
||||
name = "huge eggplant"
|
||||
seed_name = "realeggplant"
|
||||
display_name = "eggplants"
|
||||
chems = list("nutriment" = list(15,30))
|
||||
kitchen_tag = "realeggplant"
|
||||
|
||||
/datum/seed/realeggplant/New()
|
||||
..()
|
||||
set_trait(TRAIT_HARVEST_REPEAT,1)
|
||||
set_trait(TRAIT_MATURATION,4)
|
||||
set_trait(TRAIT_PRODUCTION,5)
|
||||
set_trait(TRAIT_YIELD,1)
|
||||
set_trait(TRAIT_POTENCY,40)
|
||||
set_trait(TRAIT_PRODUCT_ICON,"eggplant")
|
||||
set_trait(TRAIT_PRODUCT_COLOUR,"#892694")
|
||||
set_trait(TRAIT_PLANT_ICON,"bush4")
|
||||
set_trait(TRAIT_IDEAL_HEAT, 298)
|
||||
set_trait(TRAIT_IDEAL_LIGHT, 7)
|
||||
|
||||
//Apples/varieties.
|
||||
/datum/seed/apple
|
||||
|
||||
@@ -402,6 +402,7 @@
|
||||
admin_attack_log(user, src, "dislocated [organ.joint].", "had his [organ.joint] dislocated.", "dislocated [organ.joint] of")
|
||||
src.visible_message("<span class='danger'>[src]'s [organ.joint] [pick("gives way","caves in","crumbles","collapses")]!</span>")
|
||||
return 1
|
||||
user.visible_message("<span class='warning'>[user] fails to dislocate [src]'s [organ.joint]!</span>")
|
||||
return 0
|
||||
|
||||
//Breaks all grips and pulls that the mob currently has.
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
meat_type = /obj/item/weapon/reagent_containers/food/snacks/bearmeat
|
||||
response_help = "pets"
|
||||
response_disarm = "gently pushes aside"
|
||||
response_harm = "pokes"
|
||||
response_harm = "hits"
|
||||
stop_automated_movement_when_pulled = 0
|
||||
maxHealth = 80
|
||||
melee_damage_lower = 16
|
||||
|
||||
@@ -33,8 +33,8 @@
|
||||
//Interaction
|
||||
var/response_help = "tries to help"
|
||||
var/response_disarm = "tries to disarm"
|
||||
var/response_harm = "tries to hurt"
|
||||
var/harm_intent_damage = 3
|
||||
var/response_harm = "hurts"
|
||||
var/harm_intent_damage = 5
|
||||
|
||||
//Temperature effect
|
||||
var/minbodytemp = 250
|
||||
|
||||
@@ -501,7 +501,7 @@ obj/structure/cable/proc/cableColor(var/colorC)
|
||||
///////////////////////////////////
|
||||
|
||||
//you can use wires to heal robotics
|
||||
/obj/item/stack/cable_coil/afterattack(var/mob/M, var/mob/user)
|
||||
/obj/item/stack/cable_coil/afterattack(var/mob/living/M, var/mob/user)
|
||||
|
||||
if(ishuman(M))
|
||||
var/mob/living/carbon/human/H = M
|
||||
@@ -511,6 +511,10 @@ obj/structure/cable/proc/cableColor(var/colorC)
|
||||
if(!(S.status & ORGAN_ROBOT) || user.a_intent != I_HELP)
|
||||
return ..()
|
||||
|
||||
if(M.isSynthetic() && M == user)
|
||||
user << "<span class='warning'>You can't repair damage to your own body - it's against OH&S.</span>"
|
||||
return
|
||||
|
||||
if(S.burn_dam)
|
||||
if(S.burn_dam < ROBOLIMB_SELF_REPAIR_CAP)
|
||||
S.heal_damage(0,15,0,1)
|
||||
|
||||
@@ -83,6 +83,15 @@ other types of metals and chemistry for reagents).
|
||||
build_path = /obj/item/weapon/disk/tech_disk
|
||||
sort_string = "GAAAB"
|
||||
|
||||
/datum/design/item/flora_disk
|
||||
name = "Flora Data Storage Disk"
|
||||
desc = "Produce additional disks for storing flora data."
|
||||
id = "flora_disk"
|
||||
req_tech = list(TECH_DATA = 1)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 30, "glass" = 10)
|
||||
build_path = /obj/item/weapon/disk/botany
|
||||
sort_string = "GAAAC"
|
||||
|
||||
/datum/design/item/stock_part
|
||||
build_type = PROTOLATHE
|
||||
|
||||
|
||||
@@ -79,6 +79,12 @@
|
||||
if(user == load)
|
||||
unload(load)
|
||||
user << "You unbuckle yourself from \the [src]"
|
||||
else if(user != load && load)
|
||||
user.visible_message ("[user] starts to unbuckle [load] from \the [src]!")
|
||||
if(do_after(user, 8 SECONDS, act_target = src))
|
||||
unload(load)
|
||||
user <<"You unbuckle [load] from \the [src]"
|
||||
load <<"You were unbuckled from \the [src] by [user]"
|
||||
|
||||
/obj/vehicle/bike/relaymove(mob/user, direction)
|
||||
if(user != load || !on || user.incapacitated())
|
||||
|
||||
Reference in New Issue
Block a user