mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-08-29 15:08:34 +01:00
Mob define cleanup: Part 2
Moved the simple_animal folder into /mob/living. - Thanks to tortoiseSVN issues, I will have to remove the old simple_animal folder in a second commit. Moved to living: - maxHealth - health - control_object - incorporeal_move Moved to carbon: - silent - alien_egg_flag Moved to human: (human_defines.dm) - All vars that used to be defined in human.dm - underwear - backbag - miming Deleted from mob: - r_epil //Old var, not used anymore - r_ch_cou //Old var, not used anymore - r_Tourette //Old var, not used anymore - spellvoice() //Old proc, not used anymore - get_damage() //Unused, we have getHealth() that does the same thing Removed some unticked files that have already been replaced. This also fixes cyborgs being 'knocked unconscious' by rolling pins and secure breifcases - Additionally; to knock someone out with a rolling pin you must now be targeting the victims head. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3976 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
@@ -1,250 +0,0 @@
|
||||
/obj/item/weapon/integrated_uplink
|
||||
name = "uplink module"
|
||||
desc = "An electronic uplink system of unknown origin."
|
||||
icon = 'module.dmi'
|
||||
icon_state = "power_mod"
|
||||
var/uses = 10
|
||||
var/obj/item/device/pda/hostpda = null
|
||||
var/orignote = null //Restore original notes when locked.
|
||||
var/active = 0 //Are we currently active??
|
||||
var/menu_message = ""
|
||||
var/lock_code = "password" //What's the password?
|
||||
|
||||
//Communicate with traitor through the PDA's note function.
|
||||
/obj/item/weapon/integrated_uplink/proc/print_to_host(var/text)
|
||||
if (isnull(hostpda))
|
||||
return
|
||||
hostpda.note = text
|
||||
|
||||
for (var/mob/M in viewers(1, hostpda.loc))
|
||||
if (M.client && M.machine == hostpda)
|
||||
hostpda.attack_self(M)
|
||||
|
||||
return
|
||||
|
||||
//Let's build a menu!
|
||||
/obj/item/weapon/integrated_uplink/proc/generate_menu()
|
||||
menu_message = "<B>Syndicate Uplink Console:</B><BR>"
|
||||
menu_message += "Tele-Crystals left: [uses]<BR>"
|
||||
menu_message += "<HR>"
|
||||
menu_message += "<B>Request item:</B><BR>"
|
||||
menu_message += "<I>Each item costs a number of tele-crystals as indicated by the number following their name.</I><BR>"
|
||||
menu_message += "<BR>"
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=revolver'>Revolver</A> (6)<BR>"
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=revolver_ammo'>Ammo-357</A> for use with Revolver (2)<BR>"
|
||||
// menu_message += "<A href='byond://?src=\ref[src];buy_item=suffocation_revolver_ammo'>Ammo-418</A> for use with Revolver (3)<BR>" //This was useless and confusing -Pete
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=xbow'>Energy Crossbow</A> (5)<BR>"
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=sword'>Energy Sword</A> (4)<BR>"
|
||||
menu_message += "<BR>"
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=jump'>Chameleon Jumpsuit</A> (3)<BR>"
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=shoes'>Syndicate Shoes</A> (3)<BR>"
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=card'>Syndicate Card</A> (3)<BR>"
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=voice'>Voice-Changer</A> (4)<BR>"
|
||||
menu_message += "<BR>"
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=imp_freedom'>Freedom Implant (with injector)</A> (3)<BR>"
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=imp_uplink'>Uplink Implant (5 crystals inside)</A> (10)<BR>"
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=paralysispen'>Paralysis Pen</A> (3)<BR>" //Note that this goes to the updated sleepypen now.
|
||||
// menu_message += "<A href='byond://?src=\ref[src];buy_item=sleepypen'>Sleepy Pen</A> (5)<BR>" //Terrible -Pete.
|
||||
menu_message += "<BR>"
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=detomatix'>Detomatix Cartridge</A> (3)<BR>"
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=bomb'>Plastic Explosives</A> (2)<BR>"
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=powersink'>Power Sink</A> (5)<BR>"
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=space'>Syndicate-made Space Suit (inludes a helmet)</A> (3)<BR>"
|
||||
menu_message += "<BR>"
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=projector'>Chameleon-projector</A> (4)<BR>"
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=cloak'>Cloaking Device</A> (4)<BR>"
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=emag'>Electromagnet Card</A> (3)<BR>"
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=empbox'>5 EMP Grenades</A> (4)<BR>"
|
||||
menu_message += "<BR>"
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=botchat'>Binary Translator</A> (3)<BR>"
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=lawmod'>Hacked AI Module</A> (7)<BR>"
|
||||
menu_message += "<BR>"
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=singubeacon'>Singularity Beacon</A> (does not include a screwdriver) (7)<BR>"
|
||||
menu_message += "<BR>"
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=toolbox'>Syndicate Toolbox</A> (Includes various tools) (1)<BR>"
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=soap'>Syndicate Soap</A> (1)<BR>"
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=balloon'>Syndicate Balloon</A> (Useless) (10)<BR>"
|
||||
menu_message += "<BR>"
|
||||
menu_message += "<A href='byond://?src=\ref[src];buy_item=bundle'>Syndicate Bundle</A> (Contains an assorted selection of syndicate items)(10)<BR>"
|
||||
|
||||
menu_message += "<HR>"
|
||||
return
|
||||
|
||||
/obj/item/weapon/integrated_uplink/proc/unlock()
|
||||
if ((isnull(hostpda)) || (active))
|
||||
return
|
||||
|
||||
orignote = hostpda.note
|
||||
active = 1
|
||||
hostpda.mode = 1 //Switch right to the notes program
|
||||
|
||||
generate_menu()
|
||||
print_to_host(menu_message)
|
||||
return
|
||||
|
||||
/obj/item/weapon/integrated_uplink/Topic(href, href_list)
|
||||
if ((isnull(hostpda)) || (!active))
|
||||
return
|
||||
|
||||
if (usr.stat || usr.restrained() || !in_range(hostpda, usr))
|
||||
return
|
||||
|
||||
if (href_list["buy_item"])
|
||||
switch(href_list["buy_item"])
|
||||
if("revolver")
|
||||
if (uses >= 6)
|
||||
uses -= 6
|
||||
new /obj/item/weapon/gun/projectile(get_turf(hostpda))
|
||||
feedback_add_details("traitor_uplink_items_bought","RE")
|
||||
if("revolver_ammo")
|
||||
if (uses >= 2)
|
||||
uses -= 2
|
||||
new /obj/item/ammo_magazine/a357(get_turf(hostpda))
|
||||
feedback_add_details("traitor_uplink_items_bought","RA")
|
||||
if("suffocation_revolver_ammo")
|
||||
if (uses >= 3)
|
||||
uses -= 3
|
||||
new /obj/item/ammo_magazine/a418(get_turf(hostpda))
|
||||
if("xbow")
|
||||
if (uses >= 5)
|
||||
uses -= 5
|
||||
new /obj/item/weapon/gun/energy/crossbow(get_turf(hostpda))
|
||||
feedback_add_details("traitor_uplink_items_bought","XB")
|
||||
if("empbox")
|
||||
if (uses >= 4)
|
||||
uses -= 4
|
||||
new /obj/item/weapon/storage/emp_kit(get_turf(hostpda))
|
||||
feedback_add_details("traitor_uplink_items_bought","EM")
|
||||
if("voice")
|
||||
if (uses >= 4)
|
||||
uses -= 4
|
||||
new /obj/item/clothing/mask/gas/voice(get_turf(hostpda))
|
||||
feedback_add_details("traitor_uplink_items_bought","VC")
|
||||
if("jump")
|
||||
if (uses >= 3)
|
||||
uses -= 3
|
||||
new /obj/item/clothing/under/chameleon(get_turf(hostpda))
|
||||
feedback_add_details("traitor_uplink_items_bought","CJ")
|
||||
if("shoes")
|
||||
if (uses >= 3)
|
||||
uses -= 3
|
||||
new /obj/item/clothing/shoes/syndigaloshes(get_turf(hostpda))
|
||||
feedback_add_details("traitor_uplink_items_bought","SH")
|
||||
if("card")
|
||||
if (uses >= 3)
|
||||
uses -= 3
|
||||
new /obj/item/weapon/card/id/syndicate(get_turf(hostpda))
|
||||
feedback_add_details("traitor_uplink_items_bought","AC")
|
||||
if("emag")
|
||||
if (uses >= 3)
|
||||
uses -= 3
|
||||
new /obj/item/weapon/card/emag(get_turf(hostpda))
|
||||
feedback_add_details("traitor_uplink_items_bought","EC")
|
||||
if("imp_freedom")
|
||||
if (uses >= 3)
|
||||
uses -= 3
|
||||
var/obj/item/weapon/implanter/O = new /obj/item/weapon/implanter(get_turf(hostpda))
|
||||
O.imp = new /obj/item/weapon/implant/freedom(O)
|
||||
feedback_add_details("traitor_uplink_items_bought","FI")
|
||||
if("imp_uplink")
|
||||
if (uses >= 10)
|
||||
uses -= 10
|
||||
var/obj/item/weapon/implanter/O = new /obj/item/weapon/implanter(get_turf(hostpda))
|
||||
O.imp = new /obj/item/weapon/implant/uplink(O)
|
||||
feedback_add_details("traitor_uplink_items_bought","UI")
|
||||
if("sleepypen")
|
||||
if (uses >= 5)
|
||||
uses -= 5
|
||||
new /obj/item/weapon/pen/sleepypen(get_turf(hostpda))
|
||||
if("paralysispen")
|
||||
if (uses >= 3)
|
||||
uses -= 3
|
||||
new /obj/item/weapon/pen/paralysis(get_turf(src))
|
||||
feedback_add_details("traitor_uplink_items_bought","PP")
|
||||
if("projector")
|
||||
if (uses >= 4)
|
||||
uses -= 4
|
||||
new /obj/item/device/chameleon(get_turf(hostpda))
|
||||
feedback_add_details("traitor_uplink_items_bought","CP")
|
||||
if("cloak")
|
||||
if (uses >= 4)
|
||||
uses -= 4
|
||||
new /obj/item/weapon/cloaking_device(get_turf(hostpda))
|
||||
feedback_add_details("traitor_uplink_items_bought","CD")
|
||||
if("sword")
|
||||
if (uses >= 4)
|
||||
uses -= 4
|
||||
new /obj/item/weapon/melee/energy/sword(get_turf(hostpda))
|
||||
feedback_add_details("traitor_uplink_items_bought","ES")
|
||||
if("bomb")
|
||||
if (uses >= 2)
|
||||
uses -= 2
|
||||
new /obj/item/weapon/plastique(get_turf(hostpda))
|
||||
feedback_add_details("traitor_uplink_items_bought","C4")
|
||||
if("powersink")
|
||||
if (uses >= 5)
|
||||
uses -= 5
|
||||
new /obj/item/device/powersink(get_turf(hostpda))
|
||||
feedback_add_details("traitor_uplink_items_bought","PS")
|
||||
if("detomatix")
|
||||
if (uses >= 3)
|
||||
uses -= 3
|
||||
new /obj/item/weapon/cartridge/syndicate(get_turf(hostpda))
|
||||
feedback_add_details("traitor_uplink_items_bought","DC")
|
||||
if("space")
|
||||
if (uses >= 3)
|
||||
uses -= 3
|
||||
new /obj/item/clothing/suit/space/syndicate(get_turf(hostpda))
|
||||
new /obj/item/clothing/head/helmet/space/syndicate(get_turf(hostpda))
|
||||
feedback_add_details("traitor_uplink_items_bought","SS")
|
||||
if("lawmod")
|
||||
if (uses >= 7)
|
||||
uses -= 7
|
||||
new /obj/item/weapon/aiModule/syndicate(get_turf(hostpda))
|
||||
feedback_add_details("traitor_uplink_items_bought","AI")
|
||||
if("botchat")
|
||||
if (uses >= 3)
|
||||
uses -= 3
|
||||
new /obj/item/device/encryptionkey/binary(get_turf(hostpda))
|
||||
feedback_add_details("traitor_uplink_items_bought","BT")
|
||||
if("singubeacon")
|
||||
if(uses >= 7)
|
||||
uses -= 7
|
||||
new /obj/machinery/singularity_beacon/syndicate(get_turf(hostpda))
|
||||
feedback_add_details("traitor_uplink_items_bought","SB")
|
||||
if("toolbox")
|
||||
if(uses)
|
||||
uses--
|
||||
new /obj/item/weapon/storage/toolbox/syndicate(get_turf(hostpda))
|
||||
feedback_add_details("traitor_uplink_items_bought","ST")
|
||||
if("soap")
|
||||
if(uses)
|
||||
uses--
|
||||
new /obj/item/weapon/soap/syndie(get_turf(src))
|
||||
feedback_add_details("traitor_uplink_items_bought","SP")
|
||||
if("balloon")
|
||||
if(uses >= 10)
|
||||
uses -= 10
|
||||
new /obj/item/toy/syndicateballoon(get_turf(hostpda))
|
||||
feedback_add_details("traitor_uplink_items_bought","BS")
|
||||
if("bundle")
|
||||
if(uses >= 10)
|
||||
uses -= 10
|
||||
new /obj/item/weapon/storage/box/syndicate(get_turf(hostpda))
|
||||
feedback_add_details("traitor_uplink_items_bought","BU")
|
||||
|
||||
generate_menu()
|
||||
print_to_host(menu_message)
|
||||
return
|
||||
|
||||
return
|
||||
|
||||
/obj/item/weapon/integrated_uplink/proc/shutdown_uplink()
|
||||
if (isnull(src.hostpda))
|
||||
return
|
||||
active = 0
|
||||
hostpda.note = orignote
|
||||
if (hostpda.mode==1)
|
||||
hostpda.mode = 0
|
||||
hostpda.updateDialog()
|
||||
return
|
||||
@@ -106,10 +106,13 @@
|
||||
else
|
||||
holding = "They are holding \a [temp.r_hand]."
|
||||
|
||||
if(!mob_detail)
|
||||
mob_detail = "You can see [A] on the photo[A:health < 75 ? " - [A] looks hurt":""].[holding ? " [holding]":"."]"
|
||||
else
|
||||
mob_detail += "You can also see [A] on the photo[A:health < 75 ? " - [A] looks hurt":""].[holding ? " [holding]":"."]"
|
||||
if(isliving(A))
|
||||
var/mob/living/L = A
|
||||
|
||||
if(!mob_detail)
|
||||
mob_detail = "You can see [L] on the photo[L.health < 75 ? " - [L] looks hurt":""].[holding ? " [holding]":"."]"
|
||||
else
|
||||
mob_detail += "You can also see [L] on the photo[L.health < 75 ? " - [L] looks hurt":""].[holding ? " [holding]":"."]"
|
||||
|
||||
else
|
||||
if(itemnumber < 5)
|
||||
|
||||
@@ -46,7 +46,7 @@ KNIFE
|
||||
|
||||
// ROLLING PIN
|
||||
|
||||
/obj/item/weapon/kitchen/rollingpin/attack(mob/M as mob, mob/living/user as mob)
|
||||
/obj/item/weapon/kitchen/rollingpin/attack(mob/living/M as mob, mob/living/user as mob)
|
||||
if ((CLUMSY in user.mutations) && prob(50))
|
||||
user << "\red The [src] slips out of your hand and hits your head."
|
||||
user.take_organ_damage(10)
|
||||
@@ -57,23 +57,26 @@ KNIFE
|
||||
|
||||
log_attack("<font color='red'>[user.name] ([user.ckey]) used the [src.name] to attack [M.name] ([M.ckey])</font>")
|
||||
|
||||
if (M.stat < 2 && M.health < 50 && prob(90))
|
||||
var/mob/H = M
|
||||
// ******* Check
|
||||
if ((istype(H, /mob/living/carbon/human) && istype(H, /obj/item/clothing/head) && H.flags & 8 && prob(80)))
|
||||
M << "\red The helmet protects you from being hit hard in the head!"
|
||||
return
|
||||
var/time = rand(2, 6)
|
||||
if (prob(75))
|
||||
M.Paralyse(time)
|
||||
else
|
||||
M.Stun(time)
|
||||
if(M.stat != 2) M.stat = 1
|
||||
for(var/mob/O in viewers(M, null))
|
||||
O.show_message(text("\red <B>[] has been knocked unconscious!</B>", M), 1, "\red You hear someone fall.", 2)
|
||||
else
|
||||
M << text("\red [] tried to knock you unconcious!",user)
|
||||
M.eye_blurry += 3
|
||||
var/t = user:zone_sel.selecting
|
||||
if (t == "head")
|
||||
if(ishuman(M))
|
||||
var/mob/living/carbon/human/H = M
|
||||
if (H.stat < 2 && H.health < 50 && prob(90))
|
||||
// ******* Check
|
||||
if (istype(H, /obj/item/clothing/head) && H.flags & 8 && prob(80))
|
||||
H << "\red The helmet protects you from being hit hard in the head!"
|
||||
return
|
||||
var/time = rand(2, 6)
|
||||
if (prob(75))
|
||||
H.Paralyse(time)
|
||||
else
|
||||
H.Stun(time)
|
||||
if(H.stat != 2) H.stat = 1
|
||||
for(var/mob/O in viewers(H, null))
|
||||
O.show_message(text("\red <B>[] has been knocked unconscious!</B>", H), 1, "\red You hear someone fall.", 2)
|
||||
else
|
||||
H << text("\red [] tried to knock you unconscious!",user)
|
||||
H.eye_blurry += 3
|
||||
|
||||
return
|
||||
|
||||
|
||||
@@ -1,271 +0,0 @@
|
||||
/*
|
||||
CONTAINS:
|
||||
SYNDICATE UPLINK
|
||||
*/
|
||||
|
||||
/obj/item/weapon/syndicate_uplink/implanted
|
||||
uses = 5
|
||||
|
||||
/obj/item/weapon/syndicate_uplink/proc/explode()
|
||||
var/turf/location = get_turf(src.loc)
|
||||
if(location)
|
||||
location.hotspot_expose(700,125)
|
||||
|
||||
explosion(location, 0, 0, 2, 4)
|
||||
|
||||
del(src.master)
|
||||
del(src)
|
||||
return
|
||||
|
||||
/obj/item/weapon/syndicate_uplink/attack_self(mob/user as mob)
|
||||
currentUser = user
|
||||
user.machine = src
|
||||
var/dat
|
||||
if (src.selfdestruct)
|
||||
dat = "Self Destructing..."
|
||||
else
|
||||
if (src.temp)
|
||||
dat = "[src.temp]<BR><BR><A href='byond://?src=\ref[src];temp=1'>Clear</A>"
|
||||
else
|
||||
dat = "<B>Syndicate Uplink Access:</B><BR>"
|
||||
dat += "Tele-Crystals left: [src.uses]<BR>"
|
||||
dat += "<HR>"
|
||||
dat += "<B>Request item:</B><BR>"
|
||||
dat += "<I>Each item costs a number of tele-crystals as indicated by the number following their name.</I><BR>"
|
||||
dat += "<BR>"
|
||||
dat += "<A href='byond://?src=\ref[src];buy_item=revolver'>Revolver</A> (6)<BR>"
|
||||
dat += "<A href='byond://?src=\ref[src];buy_item=revolver_ammo'>Ammo-357</A> for use with Revolver (2)<BR>"
|
||||
// dat += "<A href='byond://?src=\ref[src];buy_item=suffocation_revolver_ammo'>Ammo-418</A> for use with Revolver (3)<BR>"
|
||||
dat += "<A href='byond://?src=\ref[src];buy_item=xbow'>Energy Crossbow</A> (5)<BR>"
|
||||
dat += "<A href='byond://?src=\ref[src];buy_item=sword'>Energy Sword</A> (4)<BR>"
|
||||
dat += "<BR>"
|
||||
dat += "<A href='byond://?src=\ref[src];buy_item=jump'>Chameleon Jumpsuit</A> (3)<BR>"
|
||||
dat += "<A href='byond://?src=\ref[src];buy_item=shoes'>Syndicate Shoes</A> (3)<BR>"
|
||||
dat += "<A href='byond://?src=\ref[src];buy_item=card'>Syndicate Card</A> (3)<BR>"
|
||||
dat += "<A href='byond://?src=\ref[src];buy_item=voice'>Voice-Changer</A> (4)<BR>"
|
||||
dat += "<BR>"
|
||||
dat += "<A href='byond://?src=\ref[src];buy_item=imp_freedom'>Freedom Implant (with injector)</A> (3)<BR>"
|
||||
dat += "<A href='byond://?src=\ref[src];buy_item=paralysispen'>Paralysis Pen</A> (3)<BR>" //Note that this goes to the updated sleepypen now.
|
||||
// dat += "<A href='byond://?src=\ref[src];buy_item=sleepypen'>Sleepy Pen</A> (5)<BR>" //Terrible -Pete.
|
||||
dat += "<BR>"
|
||||
dat += "<A href='byond://?src=\ref[src];buy_item=detomatix'>Detomatix Cartridge</A> (3)<BR>"
|
||||
dat += "<A href='byond://?src=\ref[src];buy_item=bomb'>Plastic Explosives</A> (2)<BR>"
|
||||
dat += "<A href='byond://?src=\ref[src];buy_item=powersink'>Power Sink</A> (5)<BR>"
|
||||
dat += "<A href='byond://?src=\ref[src];buy_item=space'>Syndicate-made Space Suit (inludes a helmet)</A> (3)<BR>"
|
||||
dat += "<BR>"
|
||||
dat += "<A href='byond://?src=\ref[src];buy_item=projector'>Chameleon-projector</A> (4)<BR>"
|
||||
dat += "<A href='byond://?src=\ref[src];buy_item=cloak'>Cloaking Device</A> (4)<BR>"
|
||||
dat += "<A href='byond://?src=\ref[src];buy_item=emag'>Electromagnet Card</A> (3)<BR>"
|
||||
dat += "<A href='byond://?src=\ref[src];buy_item=empbox'>5 EMP Grenades</A> (4)<BR>"
|
||||
dat += "<BR>"
|
||||
dat += "<A href='byond://?src=\ref[src];buy_item=botchat'>Binary Translator</A> (3)<BR>"
|
||||
dat += "<A href='byond://?src=\ref[src];buy_item=lawmod'>Hacked AI Module</A> (7)<BR>"
|
||||
dat += "<A href='byond://?src=\ref[src];buy_item=teleport'>Teleporter Circuit Board</A> (10)<BR>"
|
||||
dat += "<BR>"
|
||||
dat += "<A href='byond://?src=\ref[src];buy_item=toolbox'>Syndicate Toolbox</A> (Includes various tools) (1)<BR>"
|
||||
dat += "<A href='byond://?src=\ref[src];buy_item=soap'>Syndicate Soap</A> (1)<BR>"
|
||||
dat += "<A href='byond://?src=\ref[src];buy_item=balloon'>Syndicate Balloon</A> (Useless) (10)<BR>"
|
||||
dat += "<HR>"
|
||||
if (src.origradio)
|
||||
dat += "<A href='byond://?src=\ref[src];lock=1'>Lock</A><BR>"
|
||||
dat += "<HR>"
|
||||
dat += "<A href='byond://?src=\ref[src];selfdestruct=1'>Self-Destruct</A>"
|
||||
user << browse(dat, "window=radio")
|
||||
onclose(user, "radio")
|
||||
return
|
||||
|
||||
/obj/item/weapon/syndicate_uplink/Topic(href, href_list)
|
||||
..()
|
||||
if(!currentUser)
|
||||
return
|
||||
if (currentUser.stat || currentUser.restrained())
|
||||
return
|
||||
if (!( istype(currentUser, /mob/living/carbon/human)))
|
||||
return
|
||||
if ((currentUser.contents.Find(src) || (in_range(src, currentUser) && istype(src.loc, /turf))) || istype(src,/obj/item/weapon/syndicate_uplink/implanted))
|
||||
currentUser.machine = src
|
||||
if (href_list["buy_item"])
|
||||
switch(href_list["buy_item"])
|
||||
if("revolver")
|
||||
if (src.uses >= 6)
|
||||
src.uses -= 6
|
||||
new /obj/item/weapon/gun/projectile(get_turf(src))
|
||||
feedback_add_details("traitor_uplink_items_bought","RE")
|
||||
if("revolver_ammo")
|
||||
if (src.uses >= 2)
|
||||
src.uses -= 2
|
||||
new /obj/item/ammo_magazine/a357(get_turf(src))
|
||||
feedback_add_details("traitor_uplink_items_bought","RA")
|
||||
if("suffocation_revolver_ammo")
|
||||
if (src.uses >= 3)
|
||||
src.uses -= 3
|
||||
new /obj/item/ammo_magazine/a418(get_turf(src))
|
||||
if("xbow")
|
||||
if (src.uses >= 5)
|
||||
src.uses -= 5
|
||||
new /obj/item/weapon/gun/energy/crossbow(get_turf(src))
|
||||
feedback_add_details("traitor_uplink_items_bought","XB")
|
||||
if("empbox")
|
||||
if (src.uses >= 4)
|
||||
src.uses -= 4
|
||||
new /obj/item/weapon/storage/emp_kit(get_turf(src))
|
||||
feedback_add_details("traitor_uplink_items_bought","EM")
|
||||
if("voice")
|
||||
if (src.uses >= 4)
|
||||
src.uses -= 4
|
||||
new /obj/item/clothing/mask/gas/voice(get_turf(src))
|
||||
feedback_add_details("traitor_uplink_items_bought","VC")
|
||||
if("jump")
|
||||
if (src.uses >= 3)
|
||||
src.uses -= 3
|
||||
new /obj/item/clothing/under/chameleon(get_turf(src))
|
||||
feedback_add_details("traitor_uplink_items_bought","CJ")
|
||||
if("shoes")
|
||||
if (uses >= 3)
|
||||
uses -= 3
|
||||
new /obj/item/clothing/shoes/syndigaloshes(get_turf(src))
|
||||
feedback_add_details("traitor_uplink_items_bought","SH")
|
||||
if("card")
|
||||
if (src.uses >= 3)
|
||||
src.uses -= 3
|
||||
new /obj/item/weapon/card/id/syndicate(get_turf(src))
|
||||
feedback_add_details("traitor_uplink_items_bought","AC")
|
||||
if("emag")
|
||||
if (src.uses >= 3)
|
||||
src.uses -= 3
|
||||
new /obj/item/weapon/card/emag(get_turf(src))
|
||||
feedback_add_details("traitor_uplink_items_bought","EC")
|
||||
if("imp_freedom")
|
||||
if (src.uses >= 3)
|
||||
src.uses -= 3
|
||||
var/obj/item/weapon/implanter/O = new /obj/item/weapon/implanter(get_turf(src))
|
||||
O.imp = new /obj/item/weapon/implant/freedom(O)
|
||||
feedback_add_details("traitor_uplink_items_bought","FI")
|
||||
if("sleepypen")
|
||||
if (src.uses >= 5)
|
||||
src.uses -= 5
|
||||
new /obj/item/weapon/pen/sleepypen(get_turf(src))
|
||||
if("paralysispen")
|
||||
if (src.uses >= 3)
|
||||
src.uses -= 3
|
||||
new /obj/item/weapon/pen/paralysis(get_turf(src))
|
||||
feedback_add_details("traitor_uplink_items_bought","PP")
|
||||
if("projector")
|
||||
if (src.uses >= 4)
|
||||
src.uses -= 4
|
||||
new /obj/item/device/chameleon(get_turf(src))
|
||||
feedback_add_details("traitor_uplink_items_bought","CP")
|
||||
if("lawmod")
|
||||
if (src.uses >= 7)
|
||||
src.uses -= 7
|
||||
new /obj/item/weapon/aiModule/syndicate(get_turf(src))
|
||||
if("cloak")
|
||||
if (src.uses >= 4)
|
||||
if (ticker.mode.config_tag!="nuclear" || \
|
||||
(input(currentUser,"Spawning a cloak in nuke is generally regarded as entirely dumb, are you sure?") in list("Confirm", "Abort")) == "Confirm" \
|
||||
)
|
||||
if (src.uses >= 4)
|
||||
src.uses -= 4
|
||||
new /obj/item/weapon/cloaking_device(get_turf(src))
|
||||
feedback_add_details("traitor_uplink_items_bought","CD")
|
||||
if("sword")
|
||||
if (src.uses >= 4)
|
||||
src.uses -= 4
|
||||
new /obj/item/weapon/melee/energy/sword(get_turf(src))
|
||||
feedback_add_details("traitor_uplink_items_bought","ES")
|
||||
if("bomb")
|
||||
if (src.uses >= 2)
|
||||
src.uses -= 2
|
||||
new /obj/item/weapon/plastique(get_turf(src))
|
||||
feedback_add_details("traitor_uplink_items_bought","C4")
|
||||
if("powersink")
|
||||
if (src.uses >= 5)
|
||||
src.uses -= 5
|
||||
new /obj/item/device/powersink(get_turf(src))
|
||||
feedback_add_details("traitor_uplink_items_bought","PS")
|
||||
if("detomatix")
|
||||
if (src.uses >= 3)
|
||||
src.uses -= 3
|
||||
new /obj/item/weapon/cartridge/syndicate(get_turf(src))
|
||||
feedback_add_details("traitor_uplink_items_bought","DC")
|
||||
if("space")
|
||||
if (src.uses >= 3)
|
||||
src.uses -= 3
|
||||
new /obj/item/clothing/suit/space/syndicate(get_turf(src))
|
||||
new /obj/item/clothing/head/helmet/space/syndicate(get_turf(src))
|
||||
feedback_add_details("traitor_uplink_items_bought","SS")
|
||||
if("botchat")
|
||||
if (src.uses >= 3)
|
||||
src.uses -= 3
|
||||
new /obj/item/device/radio/headset/binary(get_turf(src))
|
||||
feedback_add_details("traitor_uplink_items_bought","BT")
|
||||
if("toolbox")
|
||||
if(uses)
|
||||
uses--
|
||||
new /obj/item/weapon/storage/toolbox/syndicate(get_turf(src))
|
||||
feedback_add_details("traitor_uplink_items_bought","ST")
|
||||
if("soap")
|
||||
if(uses)
|
||||
uses--
|
||||
new /obj/item/weapon/soap/syndie(get_turf(src))
|
||||
feedback_add_details("traitor_uplink_items_bought","SP")
|
||||
if("balloon")
|
||||
if (src.uses >= 10)
|
||||
uses -= 10
|
||||
new /obj/item/toy/syndicateballoon(get_turf(src))
|
||||
feedback_add_details("traitor_uplink_items_bought","BS")
|
||||
if("teleport")
|
||||
if (src.uses >= 10)
|
||||
uses -= 10
|
||||
new /obj/item/weapon/circuitboard/teleporter(get_turf(src))
|
||||
feedback_add_details("traitor_uplink_items_bought","TP")
|
||||
else if (href_list["lock"] && src.origradio)
|
||||
// presto chango, a regular radio again! (reset the freq too...)
|
||||
shutdown_uplink()
|
||||
return
|
||||
else if (href_list["selfdestruct"])
|
||||
src.temp = "<A href='byond://?src=\ref[src];selfdestruct2=1'>Self-Destruct</A>"
|
||||
else if (href_list["selfdestruct2"])
|
||||
src.selfdestruct = 1
|
||||
spawn (100)
|
||||
explode()
|
||||
return
|
||||
else
|
||||
if (href_list["temp"])
|
||||
src.temp = null
|
||||
if (istype(src.loc, /mob))
|
||||
attack_self(src.loc)
|
||||
else
|
||||
for(var/mob/M in viewers(1, src))
|
||||
if (M.client)
|
||||
src.attack_self(M)
|
||||
return
|
||||
|
||||
/obj/item/weapon/syndicate_uplink/proc/shutdown_uplink()
|
||||
if (!src.origradio)
|
||||
return
|
||||
var/list/nearby = viewers(1, src)
|
||||
for(var/mob/M in nearby)
|
||||
if (M.client && M.machine == src)
|
||||
M << browse(null, "window=radio")
|
||||
M.machine = null
|
||||
|
||||
var/obj/item/device/radio/T = src.origradio
|
||||
var/obj/item/weapon/syndicate_uplink/R = src
|
||||
var/mob/L = src.loc
|
||||
R.loc = T
|
||||
T.loc = L
|
||||
// R.layer = initial(R.layer)
|
||||
R.layer = 0
|
||||
if (istype(L))
|
||||
if (L.client)
|
||||
L.client.screen -= R
|
||||
if (L.r_hand == R)
|
||||
L.u_equip(R)
|
||||
L.r_hand = T
|
||||
else
|
||||
L.u_equip(R)
|
||||
L.l_hand = T
|
||||
T.layer = 20
|
||||
T.set_frequency(initial(T.frequency))
|
||||
return
|
||||
@@ -50,20 +50,22 @@ PHOTOGRAPHS
|
||||
|
||||
/obj/item/weapon/wrapping_paper/attack(mob/target as mob, mob/user as mob)
|
||||
if (!istype(target, /mob/living/carbon/human)) return
|
||||
if (istype(target:wear_suit, /obj/item/clothing/suit/straight_jacket) || target:stat)
|
||||
var/mob/living/carbon/human/H = target
|
||||
|
||||
if (istype(H.wear_suit, /obj/item/clothing/suit/straight_jacket) || H.stat)
|
||||
if (src.amount > 2)
|
||||
var/obj/effect/spresent/present = new /obj/effect/spresent (target:loc)
|
||||
var/obj/effect/spresent/present = new /obj/effect/spresent (H.loc)
|
||||
src.amount -= 2
|
||||
|
||||
if (target:client)
|
||||
target:client:perspective = EYE_PERSPECTIVE
|
||||
target:client:eye = present
|
||||
if (H.client)
|
||||
H.client.perspective = EYE_PERSPECTIVE
|
||||
H.client.eye = present
|
||||
|
||||
target:loc = present
|
||||
target.attack_log += text("\[[time_stamp()]\] <font color='orange'>Has been wrapped with [src.name] by [user.name] ([user.ckey])</font>")
|
||||
user.attack_log += text("\[[time_stamp()]\] <font color='red'>Used the [src.name] to wrap [target.name] ([target.ckey])</font>")
|
||||
H.loc = present
|
||||
H.attack_log += text("\[[time_stamp()]\] <font color='orange'>Has been wrapped with [src.name] by [user.name] ([user.ckey])</font>")
|
||||
user.attack_log += text("\[[time_stamp()]\] <font color='red'>Used the [src.name] to wrap [H.name] ([H.ckey])</font>")
|
||||
|
||||
log_attack("<font color='red'>[user.name] ([user.ckey]) used the [src.name] to wrap [target.name] ([target.ckey])</font>")
|
||||
log_attack("<font color='red'>[user.name] ([user.ckey]) used the [src.name] to wrap [H.name] ([H.ckey])</font>")
|
||||
|
||||
else
|
||||
user << "\blue You need more paper."
|
||||
|
||||
@@ -30,22 +30,24 @@
|
||||
|
||||
var/t = user:zone_sel.selecting
|
||||
if (t == "head")
|
||||
if (M.stat < 2 && M.health < 50 && prob(90))
|
||||
var/mob/H = M
|
||||
// ******* Check
|
||||
if ((istype(H, /mob/living/carbon/human) && istype(H, /obj/item/clothing/head) && H.flags & 8 && prob(80)))
|
||||
M << "\red The helmet protects you from being hit hard in the head!"
|
||||
return
|
||||
var/time = rand(2, 6)
|
||||
if (prob(75))
|
||||
M.Paralyse(time)
|
||||
|
||||
if(ishuman(M))
|
||||
var/mob/living/carbon/human/H = M
|
||||
if (H.stat < 2 && H.health < 50 && prob(90))
|
||||
// ******* Check
|
||||
if (istype(H, /obj/item/clothing/head) && H.flags & 8 && prob(80))
|
||||
H << "\red The helmet protects you from being hit hard in the head!"
|
||||
return
|
||||
var/time = rand(2, 6)
|
||||
if (prob(75))
|
||||
H.Paralyse(time)
|
||||
else
|
||||
H.Stun(time)
|
||||
if(H.stat != 2) H.stat = 1
|
||||
for(var/mob/O in viewers(H, null))
|
||||
O.show_message(text("\red <B>[] has been knocked unconscious!</B>", H), 1, "\red You hear someone fall.", 2)
|
||||
else
|
||||
M.Stun(time)
|
||||
if(M.stat != 2) M.stat = 1
|
||||
for(var/mob/O in viewers(M, null))
|
||||
O.show_message(text("\red <B>[] has been knocked unconscious!</B>", M), 1, "\red You hear someone fall.", 2)
|
||||
else
|
||||
M << text("\red [] tried to knock you unconcious!",user)
|
||||
M.eye_blurry += 3
|
||||
H << text("\red [] tried to knock you unconcious!",user)
|
||||
H.eye_blurry += 3
|
||||
|
||||
return
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
new /obj/item/weapon/paper(src)
|
||||
new /obj/item/weapon/pen(src)
|
||||
|
||||
/obj/item/weapon/storage/briefcase/attack(mob/M as mob, mob/living/user as mob)
|
||||
/obj/item/weapon/storage/briefcase/attack(mob/living/M as mob, mob/living/user as mob)
|
||||
//..()
|
||||
|
||||
if ((CLUMSY in user.mutations) && prob(50))
|
||||
|
||||
Reference in New Issue
Block a user