diff --git a/code/_onclick/item_attack.dm b/code/_onclick/item_attack.dm index 1d68fb54e8..45e0cbbf96 100644 --- a/code/_onclick/item_attack.dm +++ b/code/_onclick/item_attack.dm @@ -29,9 +29,10 @@ user.lastattacked = M M.lastattacker = user - user.attack_log += "\[[time_stamp()]\] Attacked [M.name] ([M.ckey]) with [name] (INTENT: [uppertext(user.a_intent)]) (DAMTYE: [uppertext(damtype)])" - M.attack_log += "\[[time_stamp()]\] Attacked by [user.name] ([user.ckey]) with [name] (INTENT: [uppertext(user.a_intent)]) (DAMTYE: [uppertext(damtype)])" - msg_admin_attack("[key_name(user)] attacked [key_name(M)] with [name] (INTENT: [uppertext(user.a_intent)]) (DAMTYE: [uppertext(damtype)])" ) + if(!no_attack_log) + user.attack_log += "\[[time_stamp()]\] Attacked [M.name] ([M.ckey]) with [name] (INTENT: [uppertext(user.a_intent)]) (DAMTYE: [uppertext(damtype)])" + M.attack_log += "\[[time_stamp()]\] Attacked by [user.name] ([user.ckey]) with [name] (INTENT: [uppertext(user.a_intent)]) (DAMTYE: [uppertext(damtype)])" + msg_admin_attack("[key_name(user)] attacked [key_name(M)] with [name] (INTENT: [uppertext(user.a_intent)]) (DAMTYE: [uppertext(damtype)])" ) ///////////////////////// var/power = force diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 1c29aa8088..4b9a89bda1 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -10,6 +10,7 @@ var/hitsound = null var/w_class = 3.0 var/slot_flags = 0 //This is used to determine on which slots an item can fit. + var/no_attack_log = 0 //If it's an item we don't want to log attack_logs with, set this to 1 pass_flags = PASSTABLE pressure_resistance = 5 // causeerrorheresoifixthis @@ -599,4 +600,4 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out. if(!cannotzoom) usr.visible_message("[zoomdevicename ? "[usr] looks up from the [src.name]" : "[usr] lowers the [src.name]"].") - return \ No newline at end of file + return diff --git a/code/modules/events/spacevine.dm b/code/modules/events/spacevine.dm index 8b4d7f9ef1..cf00e4f78b 100644 --- a/code/modules/events/spacevine.dm +++ b/code/modules/events/spacevine.dm @@ -1,5 +1,11 @@ /var/global/spacevines_spawned = 0 +/datum/event/spacevine + announceWhen = 10 + /datum/event/spacevine/start() spacevine_infestation() spacevines_spawned = 1 + +/datum/event/spacevine/announce() + command_announcement.Announce("Confirmed outbreak of level 7 biohazard aboard [station_name()]. All personnel must contain the outbreak.", "Biohazard Alert", new_sound = 'sound/AI/outbreak7.ogg') diff --git a/code/modules/holodeck/HolodeckObjects.dm b/code/modules/holodeck/HolodeckObjects.dm index 1dabe9f345..b463ec4209 100644 --- a/code/modules/holodeck/HolodeckObjects.dm +++ b/code/modules/holodeck/HolodeckObjects.dm @@ -192,6 +192,7 @@ /obj/item/weapon/holo damtype = HALLOSS + no_attack_log = 1 /obj/item/weapon/holo/esword desc = "May the force be within you. Sorta." diff --git a/code/modules/hydroponics/trays/tray_process.dm b/code/modules/hydroponics/trays/tray_process.dm index 68e6fbce37..daa3586fd7 100644 --- a/code/modules/hydroponics/trays/tray_process.dm +++ b/code/modules/hydroponics/trays/tray_process.dm @@ -120,6 +120,14 @@ harvest = 1 lastproduce = age + // If we're a vine which is not in a closed tray and is at least half mature, and there's no vine currently on our turf: make one (maybe) + if(!closed_system && \ + seed.get_trait(TRAIT_SPREAD) == 2 && \ + 2 * age >= seed.get_trait(TRAIT_MATURATION) && \ + !(locate(/obj/effect/plant) in get_turf(src)) && \ + prob(2 * seed.get_trait(TRAIT_POTENCY))) + new /obj/effect/plant(get_turf(src), seed) + if(prob(3)) // On each tick, there's a chance the pest population will increase pestlevel += 0.1 * HYDRO_SPEED_MULTIPLIER diff --git a/code/modules/projectiles/projectile.dm b/code/modules/projectiles/projectile.dm index 8f24273eb2..2bd77f3442 100644 --- a/code/modules/projectiles/projectile.dm +++ b/code/modules/projectiles/projectile.dm @@ -180,16 +180,17 @@ visible_message("\The [target_mob] is hit by \the [src] in the [parse_zone(def_zone)]!")//X has fired Y is now given by the guns so you cant tell who shot you if you could not see the shooter //admin logs - if(istype(firer, /mob)) - target_mob.attack_log += "\[[time_stamp()]\] [firer]/[firer.ckey] shot [target_mob]/[target_mob.ckey] with a [src.type]" - firer.attack_log += "\[[time_stamp()]\] [firer]/[firer.ckey] shot [target_mob]/[target_mob.ckey] with a [src.type]" - msg_admin_attack("[firer] ([firer.ckey]) shot [target_mob] ([target_mob.ckey]) with a [src] (JMP)") //BS12 EDIT ALG - else if(firer) - target_mob.attack_log += "\[[time_stamp()]\] UNKNOWN SUBJECT (No longer exists) shot [target_mob]/[target_mob.ckey] with a [src]" - msg_admin_attack("UNKNOWN shot [target_mob] ([target_mob.ckey]) with a [src] (JMP)") //BS12 EDIT ALG - else - target_mob.attack_log += "\[[time_stamp()]\] UNKNOWN SUBJECT (No longer exists) shot [target_mob]/[target_mob.ckey] with a [src]" - msg_admin_attack("UNKNOWN shot [target_mob] ([target_mob.ckey]) with a [src] (JMP)") //BS12 EDIT ALG + if(!no_attack_log) + if(istype(firer, /mob)) + target_mob.attack_log += "\[[time_stamp()]\] [firer]/[firer.ckey] shot [target_mob]/[target_mob.ckey] with a [src.type]" + firer.attack_log += "\[[time_stamp()]\] [firer]/[firer.ckey] shot [target_mob]/[target_mob.ckey] with a [src.type]" + msg_admin_attack("[firer] ([firer.ckey]) shot [target_mob] ([target_mob.ckey]) with a [src] (JMP)") //BS12 EDIT ALG + else if(firer) + target_mob.attack_log += "\[[time_stamp()]\] UNKNOWN SUBJECT (No longer exists) shot [target_mob]/[target_mob.ckey] with a [src]" + msg_admin_attack("UNKNOWN shot [target_mob] ([target_mob.ckey]) with a [src] (JMP)") //BS12 EDIT ALG + else + target_mob.attack_log += "\[[time_stamp()]\] UNKNOWN SUBJECT (No longer exists) shot [target_mob]/[target_mob.ckey] with a [src]" + msg_admin_attack("UNKNOWN shot [target_mob] ([target_mob.ckey]) with a [src] (JMP)") //BS12 EDIT ALG //sometimes bullet_act() will want the projectile to continue flying if (target_mob.bullet_act(src, def_zone) == -1) diff --git a/code/modules/projectiles/projectile/beams.dm b/code/modules/projectiles/projectile/beams.dm index cbe1ad5625..eb515298ef 100644 --- a/code/modules/projectiles/projectile/beams.dm +++ b/code/modules/projectiles/projectile/beams.dm @@ -68,6 +68,7 @@ icon_state = "bluelaser" pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE damage = 0 + no_attack_log = 1 damage_type = BURN check_armour = "laser" @@ -87,6 +88,7 @@ icon_state = "laser" pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE damage = 0 + no_attack_log = 1 damage_type = BURN check_armour = "laser" diff --git a/html/changelog.html b/html/changelog.html index 4ca2d83a96..8e4e854561 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -56,6 +56,25 @@ -->