mirror of
https://github.com/Aurorastation/Aurora-Old.git
synced 2026-08-27 14:46:16 +01:00
66 lines
2.9 KiB
Plaintext
66 lines
2.9 KiB
Plaintext
/obj/item/weapon/plastique/attack_self(mob/user as mob)
|
|
var/newtime = input(usr, "Please set the timer.", "Timer", 10) as num
|
|
if(newtime < 10)
|
|
newtime = 10
|
|
timer = newtime
|
|
user << "Timer set for [timer] seconds."
|
|
|
|
/obj/item/weapon/plastique/afterattack(atom/target as obj|turf, mob/user as mob, flag)
|
|
if (!flag)
|
|
return
|
|
if (istype(target, /turf/unsimulated) || istype(target, /turf/simulated/shuttle) || istype(target, /obj/item/weapon/storage/))
|
|
return
|
|
user << "Planting explosives..."
|
|
if(ismob(target))
|
|
|
|
user.attack_log += "\[[time_stamp()]\] <font color='red'> [user.real_name] tried planting [name] on [target:real_name] ([target:ckey])</font>"
|
|
msg_admin_attack("[key_name_admin(user)] tried planting [name] on [key_name_admin(target)] (<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[user.x];Y=[user.y];Z=[user.z]'>JMP</a>)")
|
|
|
|
user.visible_message("\red [user.name] is trying to plant some kind of explosive on [target.name]!")
|
|
|
|
if(do_after(user, 50) && in_range(user, target))
|
|
user.drop_item()
|
|
target = target
|
|
loc = null
|
|
var/location
|
|
if (isturf(target)) location = target
|
|
if (isobj(target)) location = target.loc
|
|
if (ismob(target))
|
|
target:attack_log += "\[[time_stamp()]\]<font color='orange'> Had the [name] planted on them by [user.real_name] ([user.ckey])</font>"
|
|
user.visible_message("\red [user.name] finished planting an explosive on [target.name]!")
|
|
target.overlays += image('icons/obj/assemblies.dmi', "plastic-explosive2")
|
|
user << "Bomb has been planted. Timer counting down from [timer]."
|
|
spawn(timer*10)
|
|
if(target)
|
|
|
|
var/mob/mob = get_mob_by_key(src.fingerprintslast)
|
|
var/hit_site
|
|
if(!target.loc.loc)
|
|
hit_site = target.loc.name
|
|
else
|
|
hit_site = target.loc.loc.name
|
|
|
|
var/log_str = "Plastic explosives went off <A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[target.x];Y=[target.y];Z=[target.z]'>[hit_site]</a> "
|
|
if(ismob(target))
|
|
log_str += " planted on ([target.name]) "
|
|
var/last_touch_info = ""
|
|
if(mob)
|
|
last_touch_info = "(<A HREF='?_src_=holder;adminmoreinfo=\ref[mob]'>?</A>)"
|
|
|
|
log_str += " Last touched by: [src.fingerprintslast][last_touch_info]"
|
|
bombers += log_str
|
|
|
|
message_admins("C4 Explosion: Last touched by: [src.fingerprintslast][last_touch_info]([user.ckey])(<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[target.x];Y=[target.y];Z=[target.z]'>JMP</a>)")
|
|
message_mods("C4 Explosion: Last touched by: [src.fingerprintslast][last_touch_info]([user.ckey])(<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[target.x];Y=[target.y];Z=[target.z]'>JMP</a>)")
|
|
|
|
explosion(location, -1, -1, 2, 3)
|
|
if (istype(target, /turf/simulated/wall)) target:dismantle_wall(1)
|
|
else target.ex_act(1)
|
|
if (isobj(target))
|
|
if (target)
|
|
del(target)
|
|
if (src)
|
|
del(src)
|
|
|
|
/obj/item/weapon/plastique/attack(mob/M as mob, mob/user as mob, def_zone)
|
|
return |