mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-12 07:33:34 +01:00
Finished pepperspray, added mace item, improved security console, and a few other things. Will know when I see the diffs.
This commit is contained in:
@@ -175,7 +175,7 @@
|
||||
|
||||
/obj/item/weapon/storage/gl_kit
|
||||
name = "Prescription Glasses"
|
||||
desc = "This box contains nerd glasses."
|
||||
desc = "This box contains vision correcting glasses."
|
||||
icon_state = "glasses"
|
||||
item_state = "syringe_kit"
|
||||
|
||||
@@ -213,7 +213,7 @@
|
||||
|
||||
/obj/item/weapon/storage/trackimp_kit
|
||||
name = "Tracking Implant Kit"
|
||||
desc = "Box full of scum-bag tracking utensils."
|
||||
desc = "Box full of tracking utensils."
|
||||
icon_state = "implant"
|
||||
item_state = "syringe_kit"
|
||||
|
||||
|
||||
@@ -443,8 +443,8 @@
|
||||
data = "Clown Land"
|
||||
|
||||
/obj/item/weapon/card/emag
|
||||
desc = "It's a card with a magnetic strip attached to some circuitry."
|
||||
name = "cryptographic sequencer"
|
||||
desc = "An identification card. No shit. Seems to have some funny chip on it, though."
|
||||
name = "identification card"
|
||||
icon_state = "emag"
|
||||
item_state = "card-id"
|
||||
origin_tech = "magnets=2;syndicate=2"
|
||||
@@ -525,7 +525,7 @@
|
||||
throw_range = 10
|
||||
origin_tech = "combat=3;materials=3;engineering=3"
|
||||
|
||||
/obj/item/weapon/pepperspray
|
||||
/obj/item/weapon/pepperspray //This is riot control
|
||||
desc = "Manufactred by UhangInc., used to blind and down an opponent quickly."
|
||||
icon = 'weapons.dmi'
|
||||
name = "pepperspray"
|
||||
@@ -537,6 +537,23 @@
|
||||
throw_speed = 2
|
||||
throw_range = 10
|
||||
var/catch = 1
|
||||
var/BottleSize = 1
|
||||
var/ReagentAmount = 30
|
||||
|
||||
/obj/item/weapon/pepperspray/small //And this is for personal defense.
|
||||
desc = "This appears to be a small, nonlethal, single use personal defense weapon. Hurts like a bitch, though."
|
||||
icon = 'weapons.dmi'
|
||||
name = "mace"
|
||||
icon_state = "pepperspray"
|
||||
item_state = "pepperspray"
|
||||
flags = ONBELT|TABLEPASS|OPENCONTAINER|FPRINT|USEDELAY
|
||||
throwforce = 3
|
||||
w_class = 1.0
|
||||
throw_speed = 2
|
||||
throw_range = 10
|
||||
catch = 1
|
||||
BottleSize = 0
|
||||
ReagentAmount = 1
|
||||
|
||||
/obj/item/weapon/clipboard
|
||||
name = "clipboard"
|
||||
|
||||
@@ -73,16 +73,18 @@
|
||||
H.equip_if_possible(new /obj/item/clothing/shoes/brown(H), H.slot_shoes)
|
||||
H.equip_if_possible(new /obj/item/device/pda/detective(H), H.slot_belt)
|
||||
H.equip_if_possible(new /obj/item/clothing/head/det_hat(H), H.slot_head)
|
||||
var/obj/item/clothing/mask/cigarette/CIG = new /obj/item/clothing/mask/cigarette(H)
|
||||
/* var/obj/item/clothing/mask/cigarette/CIG = new /obj/item/clothing/mask/cigarette(H)
|
||||
CIG.light("")
|
||||
H.equip_if_possible(CIG, H.slot_wear_mask)
|
||||
H.equip_if_possible(CIG, H.slot_wear_mask) */
|
||||
//Fuck that thing. --SkyMarshal
|
||||
H.equip_if_possible(new /obj/item/clothing/gloves/black(H), H.slot_gloves)
|
||||
H.equip_if_possible(new /obj/item/weapon/storage/fcard_kit(H.back), H.slot_in_backpack)
|
||||
H.equip_if_possible(new /obj/item/weapon/fcardholder(H), H.slot_in_backpack)
|
||||
H.equip_if_possible(new /obj/item/clothing/suit/det_suit(H), H.slot_wear_suit)
|
||||
H.equip_if_possible(new /obj/item/device/detective_scanner(H), H.slot_in_backpack)
|
||||
H.equip_if_possible(new /obj/item/weapon/zippo(H), H.slot_l_store)
|
||||
H.equip_if_possible(new /obj/item/weapon/reagent_containers/food/snacks/candy_corn(H), H.slot_h_store)
|
||||
// H.equip_if_possible(new /obj/item/weapon/reagent_containers/food/snacks/candy_corn(H), H.slot_h_store)
|
||||
// No... just no. --SkyMarshal
|
||||
var/obj/item/weapon/implant/loyalty/L = new/obj/item/weapon/implant/loyalty(H)
|
||||
L.imp_in = H
|
||||
L.implanted = 1
|
||||
|
||||
@@ -18,10 +18,36 @@
|
||||
if(1.0)
|
||||
dat += text("<A href='?src=\ref[];choice=Search Records'>Search Records</A><BR>\n<A href='?src=\ref[];choice=List Records'>List Records</A><BR>\n<A href='?src=\ref[];choice=Search Fingerprints'>Search Fingerprints</A><BR>\n<A href='?src=\ref[];choice=New Record (General)'>New General Record</A><BR>\n<BR>\n<A href='?src=\ref[];choice=Record Maintenance'>Record Maintenance</A><BR>\n<A href='?src=\ref[];choice=Log Out'>{Log Out}</A><BR>\n", src, src, src, src, src, src)
|
||||
if(2.0)
|
||||
dat += "<B>Record List</B>:<HR>"
|
||||
dat += {"<B>Record List</B>:<HR>
|
||||
<table style="text-align:center;" border="1" cellspacing="0">
|
||||
<tr>
|
||||
<th>Name (ID#)</th>
|
||||
<th>Rank</th>
|
||||
<th>Fingerprints</th>
|
||||
<th>Criminal Status</th>
|
||||
</tr>"}
|
||||
for(var/datum/data/record/R in data_core.general)
|
||||
dat += text("<A href='?src=\ref[];choice=Browse Record;d_rec=\ref[]'>[]: []<BR>", src, R, R.fields["id"], R.fields["name"])
|
||||
dat += text("<HR><A href='?src=\ref[];choice=Return'>Back</A>", src)
|
||||
var/crimstat = ""
|
||||
for(var/datum/data/record/E in data_core.security)
|
||||
if ((E.fields["name"] == R.fields["name"] || E.fields["id"] == R.fields["id"]))
|
||||
crimstat = E.fields["criminal"]
|
||||
var/background
|
||||
switch(crimstat)
|
||||
if("*Arrest*")
|
||||
background = "'background-color:#DC143C;'"
|
||||
if("Incarcerated")
|
||||
background = "'background-color:#CD853F;'"
|
||||
if("Parolled")
|
||||
background = "'background-color:#CD853F;'"
|
||||
if("Released")
|
||||
background = "'background-color:#3BB9FF;'"
|
||||
if("None")
|
||||
background = "'background-color:#00FF7F;'"
|
||||
dat += text("<tr style=[]><td><A href='?src=\ref[];choice=Browse Record;d_rec=\ref[]'>[] (ID:[])</a></td>", background, src, R, R.fields["name"], R.fields["id"])
|
||||
dat += text("<td>[]</td>", R.fields["rank"])
|
||||
dat += text("<td>[]</td>", R.fields["fingerprint"])
|
||||
dat += text("<td>[]</td></tr>", crimstat)
|
||||
dat += text("</table><br><HR><A href='?src=\ref[];choice=Return'>Back</A>", src)
|
||||
if(3.0)
|
||||
dat += text("<B>Records Maintenance</B><HR>\n<A href='?src=\ref[];choice=Delete All Records'>Delete All Records</A><BR>\n<BR>\n<A href='?src=\ref[];choice=Return'>Back</A>", src, src)
|
||||
if(4.0)
|
||||
|
||||
@@ -134,6 +134,7 @@
|
||||
new /obj/item/weapon/fcardholder(src)
|
||||
new /obj/item/weapon/clipboard(src)
|
||||
new /obj/item/device/detective_scanner(src)
|
||||
new /obj/item/weapon/pepperspray/small(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
@@ -15,13 +15,13 @@ MOP
|
||||
|
||||
/obj/item/weapon/cleaner/attack_self(var/mob/user as mob)
|
||||
if(catch)
|
||||
user << "\blue You flip the safety on."
|
||||
catch = 1
|
||||
return
|
||||
else
|
||||
user << "\blue You flip the safety off."
|
||||
catch = 0
|
||||
return
|
||||
else
|
||||
user << "\blue You flip the safety on."
|
||||
catch = 1
|
||||
return
|
||||
|
||||
/obj/item/weapon/cleaner/afterattack(atom/A as mob|obj, mob/user as mob)
|
||||
if (istype(A, /obj/item/weapon/storage ))
|
||||
@@ -178,26 +178,26 @@ MOP
|
||||
|
||||
return
|
||||
|
||||
//Crowd control pepper spray, for Hawkie
|
||||
//Pepper spray, set up to make the 2 different types
|
||||
|
||||
/obj/item/weapon/pepperspray/New()
|
||||
var/datum/reagents/R = new/datum/reagents(30)
|
||||
var/datum/reagents/R = new/datum/reagents(ReagentAmount)
|
||||
reagents = R
|
||||
R.my_atom = src
|
||||
R.add_reagent("condensedcapsaicin", 30)
|
||||
R.add_reagent("condensedcapsaicin", ReagentAmount)
|
||||
|
||||
/obj/item/weapon/pepperspray/attack(mob/living/carbon/human/M as mob, mob/user as mob)
|
||||
return
|
||||
|
||||
/obj/item/weapon/pepperspray/attack_self(var/mob/user as mob)
|
||||
if(catch)
|
||||
user << "\blue You flip the safety on."
|
||||
catch = 1
|
||||
return
|
||||
else
|
||||
user << "\blue You flip the safety off."
|
||||
catch = 0
|
||||
return
|
||||
else
|
||||
user << "\blue You flip the safety on."
|
||||
catch = 1
|
||||
return
|
||||
|
||||
/obj/item/weapon/pepperspray/afterattack(atom/A as mob|obj, mob/user as mob)
|
||||
if (istype(A, /obj/item/weapon/storage ))
|
||||
@@ -205,8 +205,8 @@ MOP
|
||||
if (istype(A, /obj/effect/proc_holder/spell ))
|
||||
return
|
||||
else if (istype(A, /obj/structure/reagent_dispensers/peppertank) && get_dist(src,A) <= 1)
|
||||
if(src.reagents.total_volume < 30)
|
||||
A.reagents.trans_to(src, 30 - src.reagents.total_volume)
|
||||
if(src.reagents.total_volume < ReagentAmount)
|
||||
A.reagents.trans_to(src, ReagentAmount - src.reagents.total_volume)
|
||||
user << "\blue Pepper spray refilled"
|
||||
playsound(src.loc, 'refill.ogg', 50, 1, -6)
|
||||
return
|
||||
@@ -221,14 +221,23 @@ MOP
|
||||
return
|
||||
playsound(src.loc, 'spray2.ogg', 50, 1, -6)
|
||||
|
||||
var/Sprays[3]
|
||||
for(var/i=1, i<=3, i++) // intialize sprays
|
||||
var/SprayNum = 0 //Setting up the differentiation for the 2 bottles. --SkyMarshal
|
||||
var/SprayAmt = 0
|
||||
if(BottleSize)
|
||||
SprayNum = 3
|
||||
SprayAmt = 5
|
||||
else
|
||||
SprayNum = 1
|
||||
SprayAmt = 1
|
||||
|
||||
var/Sprays[SprayNum]
|
||||
for(var/i=1, i<=SprayNum, i++) // intialize sprays
|
||||
if(src.reagents.total_volume < 1) break
|
||||
var/obj/effect/decal/D = new/obj/effect/decal(get_turf(src))
|
||||
D.name = "chemicals"
|
||||
D.icon = 'chempuff.dmi'
|
||||
D.create_reagents(5)
|
||||
src.reagents.trans_to(D, 5)
|
||||
D.create_reagents(SprayAmt)
|
||||
src.reagents.trans_to(D, SprayAmt)
|
||||
|
||||
var/rgbcolor[3]
|
||||
var/finalcolor
|
||||
@@ -263,11 +272,23 @@ MOP
|
||||
var/obj/effect/decal/D = Sprays[i]
|
||||
if(!D) continue
|
||||
|
||||
var/turf/my_target = null
|
||||
// Spreads the sprays a little bit
|
||||
var/turf/my_target = pick(the_targets)
|
||||
if(i == 1)
|
||||
my_target = T
|
||||
else
|
||||
my_target = pick(the_targets)
|
||||
|
||||
the_targets -= my_target
|
||||
|
||||
for(var/j=1, j<=rand(6,8), j++)
|
||||
var/Dist = 0
|
||||
|
||||
if(BottleSize)
|
||||
Dist = rand(6,8)
|
||||
else
|
||||
Dist = rand(2,3)
|
||||
|
||||
for(var/j=1, j<=Dist, j++)
|
||||
step_towards(D, my_target)
|
||||
D.reagents.reaction(get_turf(D))
|
||||
for(var/atom/t in get_turf(D))
|
||||
@@ -287,9 +308,14 @@ MOP
|
||||
|
||||
/obj/item/weapon/pepperspray/examine()
|
||||
set src in usr
|
||||
usr << text("\icon[] [] units of pepperspray left!", src, src.reagents.total_volume)
|
||||
..()
|
||||
return
|
||||
if(BottleSize)
|
||||
usr << text("\icon[] [] units of pepperspray left!", src, src.reagents.total_volume)
|
||||
..()
|
||||
return
|
||||
else
|
||||
usr << text("\icon[] [] use(s) remaining!", src, src.reagents.total_volume)
|
||||
..()
|
||||
return
|
||||
|
||||
// MOP
|
||||
|
||||
|
||||
@@ -727,6 +727,40 @@
|
||||
alert("You cannot perform this action. You must be of a higher administrative rank!", null, null, null, null, null)
|
||||
return
|
||||
|
||||
if (href_list["defense"])
|
||||
if ((src.rank in list( "Trial Admin", "Badmin", "Game Admin", "Game Master" )))
|
||||
var/mob/living/M = locate(href_list["defense"])
|
||||
if (isliving(M) && istype(M, /mob/living/carbon/human))
|
||||
var/mob/living/carbon/human/H = M
|
||||
switch(alert("Shall they be equipped with a flash or mace?",,"Flash","Mace", "Cancel"))
|
||||
if("Flash")
|
||||
if(!H.s_store)
|
||||
H.equip_if_possible(new /obj/item/device/flash(H), H.slot_l_store)
|
||||
else if(!H.s_store)
|
||||
H.equip_if_possible(new /obj/item/device/flash(H), H.slot_s_store)
|
||||
else
|
||||
alert("The target lacked an open pocket.", null, null, null, null, null)
|
||||
return
|
||||
if("Mace")
|
||||
if(!H.s_store)
|
||||
H.equip_if_possible(new /obj/item/weapon/pepperspray/small(H), H.slot_l_store)
|
||||
else if(!H.s_store)
|
||||
H.equip_if_possible(new /obj/item/weapon/pepperspray/small(H), H.slot_s_store)
|
||||
else
|
||||
alert("The target lacked an open pocket.", null, null, null, null, null)
|
||||
return
|
||||
if("Cancel")
|
||||
return
|
||||
message_admins("\red Admin [key_name_admin(usr)] gave [key_name_admin(M)] something to defend themselves!", 1)
|
||||
log_admin("[key_name(usr)] defensified [key_name(M)]")
|
||||
return
|
||||
else
|
||||
alert("This action can only be performed on living humans.", null, null, null, null, null)
|
||||
return
|
||||
else
|
||||
alert("You cannot perform this action. You must be of a higher administrative rank!", null, null, null, null, null)
|
||||
return
|
||||
|
||||
if (href_list["makeai"]) //Yes, im fucking lazy, so what? it works ... hopefully
|
||||
if (src.level>=3)
|
||||
var/mob/M = locate(href_list["makeai"])
|
||||
@@ -1774,6 +1808,7 @@
|
||||
foo += text("<A HREF='?src=\ref[src];sendtoprison=\ref[M]'>Prison</A> | ")
|
||||
// foo += text("<A HREF='?src=\ref[src];sendtomaze=\ref[M]'>Maze</A> | ")
|
||||
foo += text("<A HREF='?src=\ref[src];revive=\ref[M]'>Heal/Revive</A> | ")
|
||||
foo += text("<A HREF='?src=\ref[src];defense=\ref[M]'>Defensize</A> | ")
|
||||
else
|
||||
foo += text("<B>Hasn't Entered Game</B> | ")
|
||||
foo += text("<A href='?src=\ref[src];forcespeech=\ref[M]'>Forcesay</A> | ")
|
||||
|
||||
@@ -1714,7 +1714,7 @@ datum
|
||||
M:emote("scream")
|
||||
M << "\red You're sprayed directly in the eyes with pepperspray!"
|
||||
M.eye_blurry = max(M.eye_blurry, 60)
|
||||
M.eye_blind = max(M.eye_blind, 16)
|
||||
M.eye_blind = max(M.eye_blind, 12)
|
||||
M:weakened = max(M:weakened, 20)
|
||||
M.drop_item()
|
||||
|
||||
|
||||
@@ -2740,7 +2740,7 @@
|
||||
icon_state = "peppertank"
|
||||
anchored = 1
|
||||
density = 0
|
||||
amount_per_transfer_from_this = 45
|
||||
amount_per_transfer_from_this = 30
|
||||
New()
|
||||
..()
|
||||
reagents.add_reagent("condensedcapsaicin",1000)
|
||||
|
||||
@@ -528,7 +528,7 @@
|
||||
if (emptyHand)
|
||||
ears.DblClick()
|
||||
return
|
||||
if (!( istype(W, /obj/item/clothing/ears) ) && !( istype(W, /obj/item/device/radio/headset) ))
|
||||
if ((!istype(W, /obj/item) || W.w_class > 1 || w_uniform) && !(istype(W, /obj/item/device/radio/headset)))
|
||||
return
|
||||
u_equip(W)
|
||||
ears = W
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
abi79 - Game Master
|
||||
arcalane - Game Admin
|
||||
cacophony - Game Admin
|
||||
cajoes - Game Admin
|
||||
cib - Game Master
|
||||
compactninja - Game Master
|
||||
hawk_v3 - Game Admin
|
||||
headswe - Game Master
|
||||
iaryni - Game Master
|
||||
masterofapples - Game Admin
|
||||
megacaesar - Game Admin
|
||||
miniature - Game Master
|
||||
misterfox - Game Admin
|
||||
mloc - Game Master
|
||||
spaceman96 - Game Admin
|
||||
uristqwerty - Game Master
|
||||
+1
-2
@@ -5,8 +5,7 @@ cajoes - Game Admin
|
||||
cib - Game Master
|
||||
compactninja - Game Master
|
||||
hawk_v3 - Game Admin
|
||||
headswe - Game Master
|
||||
iaryni - Game Master
|
||||
skymarshal - Game Master
|
||||
masterofapples - Game Admin
|
||||
megacaesar - Game Admin
|
||||
miniature - Game Master
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 4.3 KiB After Width: | Height: | Size: 4.1 KiB |
Reference in New Issue
Block a user