mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-10 18:22:39 +00:00
Merge pull request #8605 from Novacat/nova-shuttle
Translocator and Micromech Tweaks
This commit is contained in:
@@ -28,7 +28,8 @@
|
|||||||
//operation_req_access = list(access_hos)
|
//operation_req_access = list(access_hos)
|
||||||
damage_absorption = list("brute"=1,"fire"=1,"bullet"=1,"laser"=1,"energy"=1,"bomb"=1)
|
damage_absorption = list("brute"=1,"fire"=1,"bullet"=1,"laser"=1,"energy"=1,"bomb"=1)
|
||||||
var/am = "d3c2fbcadca903a41161ccc9df9cf948"
|
var/am = "d3c2fbcadca903a41161ccc9df9cf948"
|
||||||
|
damage_minimum = 0 //Incoming damage lower than this won't actually deal damage. Scrapes shouldn't be a real thing.
|
||||||
|
minimum_penetration = 0 //Incoming damage won't be fully applied if you don't have at least 20. Almost all AP clears this.
|
||||||
|
|
||||||
/obj/mecha/micro/melee_action(target as obj|mob|turf)
|
/obj/mecha/micro/melee_action(target as obj|mob|turf)
|
||||||
if(internal_damage&MECHA_INT_CONTROL_LOST)
|
if(internal_damage&MECHA_INT_CONTROL_LOST)
|
||||||
|
|||||||
@@ -30,6 +30,7 @@
|
|||||||
max_equip = 3
|
max_equip = 3
|
||||||
max_micro_utility_equip = 0
|
max_micro_utility_equip = 0
|
||||||
max_micro_weapon_equip = 3
|
max_micro_weapon_equip = 3
|
||||||
|
damage_minimum = 5 //A teeny bit of armor
|
||||||
|
|
||||||
/obj/effect/decal/mecha_wreckage/micro/sec/polecat
|
/obj/effect/decal/mecha_wreckage/micro/sec/polecat
|
||||||
name = "Polecat wreckage"
|
name = "Polecat wreckage"
|
||||||
|
|||||||
@@ -66,21 +66,21 @@
|
|||||||
|
|
||||||
/obj/item/device/perfect_tele/proc/rebuild_radial_images()
|
/obj/item/device/perfect_tele/proc/rebuild_radial_images()
|
||||||
radial_images.Cut()
|
radial_images.Cut()
|
||||||
|
|
||||||
var/index = 1
|
var/index = 1
|
||||||
for(var/bcn in beacons) //Grumble
|
for(var/bcn in beacons) //Grumble
|
||||||
var/image/I = image(icon = 'icons/mob/radial_vr.dmi', icon_state = "tl_[index]")
|
var/image/I = image(icon = 'icons/mob/radial_vr.dmi', icon_state = "tl_[index]")
|
||||||
|
|
||||||
var/obj/item/device/perfect_tele_beacon/beacon = beacons[bcn]
|
var/obj/item/device/perfect_tele_beacon/beacon = beacons[bcn]
|
||||||
if(destination == beacon)
|
if(destination == beacon)
|
||||||
I.overlays += radial_seton
|
I.overlays += radial_seton
|
||||||
else
|
else
|
||||||
I.overlays += radial_set
|
I.overlays += radial_set
|
||||||
|
|
||||||
radial_images[bcn] = I
|
radial_images[bcn] = I
|
||||||
|
|
||||||
index++
|
index++
|
||||||
|
|
||||||
if(beacons_left)
|
if(beacons_left)
|
||||||
var/image/I = image(icon = 'icons/mob/radial_vr.dmi', icon_state = "tl_[index]")
|
var/image/I = image(icon = 'icons/mob/radial_vr.dmi', icon_state = "tl_[index]")
|
||||||
I.overlays += radial_plus
|
I.overlays += radial_plus
|
||||||
@@ -124,12 +124,12 @@
|
|||||||
and tele-vore. Make sure you carefully examine someone's OOC prefs before teleporting them if you are \
|
and tele-vore. Make sure you carefully examine someone's OOC prefs before teleporting them if you are \
|
||||||
going to use this device for ERP purposes. This device records all warnings given and teleport events for \
|
going to use this device for ERP purposes. This device records all warnings given and teleport events for \
|
||||||
admin review in case of pref-breaking, so just don't do it.","OOC WARNING")
|
admin review in case of pref-breaking, so just don't do it.","OOC WARNING")
|
||||||
|
|
||||||
var/choice = show_radial_menu(user, src, radial_images, custom_check = CALLBACK(src, .proc/check_menu, user), require_near = TRUE, tooltips = TRUE)
|
var/choice = show_radial_menu(user, src, radial_images, custom_check = CALLBACK(src, .proc/check_menu, user), require_near = TRUE, tooltips = TRUE)
|
||||||
|
|
||||||
if(!choice)
|
if(!choice)
|
||||||
return
|
return
|
||||||
|
|
||||||
else if(choice == "New Beacon")
|
else if(choice == "New Beacon")
|
||||||
if(beacons_left <= 0)
|
if(beacons_left <= 0)
|
||||||
to_chat(user, "<span class='warning'>The translocator can't support any more beacons!</span>")
|
to_chat(user, "<span class='warning'>The translocator can't support any more beacons!</span>")
|
||||||
@@ -289,6 +289,16 @@
|
|||||||
if(!teleport_checks(target,user))
|
if(!teleport_checks(target,user))
|
||||||
return //The checks proc can send them a message if it wants.
|
return //The checks proc can send them a message if it wants.
|
||||||
|
|
||||||
|
if(istype(target, /mob/living))
|
||||||
|
var/mob/living/L = target
|
||||||
|
if(!L.stat)
|
||||||
|
if(L != user)
|
||||||
|
if(L.a_intent != I_HELP || L.has_AI())
|
||||||
|
to_chat(user, "<span class='notice'>[L] is resisting your attempt to teleport them with \the [src].</span>")
|
||||||
|
to_chat(L, "<span class='danger'> [user] is trying to teleport you with \the [src]!</span>")
|
||||||
|
if(!do_after(user, 30, L))
|
||||||
|
return
|
||||||
|
|
||||||
//Bzzt.
|
//Bzzt.
|
||||||
ready = 0
|
ready = 0
|
||||||
power_source.use(charge_cost)
|
power_source.use(charge_cost)
|
||||||
@@ -492,7 +502,7 @@ GLOBAL_LIST_BOILERPLATE(premade_tele_beacons, /obj/item/device/perfect_tele_beac
|
|||||||
battery_lock = 1
|
battery_lock = 1
|
||||||
unacidable = 1
|
unacidable = 1
|
||||||
failure_chance = 0 //Percent
|
failure_chance = 0 //Percent
|
||||||
|
|
||||||
var/phase_power = 75
|
var/phase_power = 75
|
||||||
var/recharging = 0
|
var/recharging = 0
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user