mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-21 03:55:05 +01:00
Gunshot sounds, uplink references, less spammy tommygun, fixes
This commit is contained in:
@@ -160,7 +160,7 @@
|
||||
"dd" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor/wood,/area/awaymission/academy/classrooms)
|
||||
"de" = (/turf/simulated/floor/greengrid,/area/awaymission/academy/classrooms)
|
||||
"df" = (/obj/structure/table/woodentable,/turf/simulated/floor/wood,/area/awaymission/academy/classrooms)
|
||||
"dg" = (/obj/structure/table,/obj/item/weapon/paper{info = "Grade: A+ Educator's Notes: Excellent form."; name = "Summoning Midterm Exam"},/obj/item/weapon/gun/projectile/automatic/tommygun/toy,/turf/simulated/floor/plasteel{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms)
|
||||
"dg" = (/obj/structure/table,/obj/item/weapon/paper{info = "Grade: A+ Educator's Notes: Excellent form."; name = "Summoning Midterm Exam"},/obj/item/weapon/gun/projectile/shotgun/toy/tommygun,/turf/simulated/floor/plasteel{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms)
|
||||
"dh" = (/turf/simulated/floor/plasteel{dir = 9; icon_state = "green"},/area/awaymission/academy/classrooms)
|
||||
"di" = (/turf/simulated/floor/plasteel{dir = 1; icon_state = "green"},/area/awaymission/academy/classrooms)
|
||||
"dj" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/plasteel{dir = 1; icon_state = "green"},/area/awaymission/academy/classrooms)
|
||||
@@ -340,7 +340,7 @@
|
||||
"gB" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable,/obj/structure/window/reinforced{dir = 5},/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"gC" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft)
|
||||
"gD" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft)
|
||||
"gE" = (/obj/structure/table,/obj/item/weapon/paper{info = "Grade: B- Educator's Notes: Keep applying yourself, you're showing improvement."; name = "Summoning Midterm Exam"},/obj/item/weapon/gun/projectile/automatic/tommygun/toy,/turf/simulated/floor/plasteel{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms)
|
||||
"gE" = (/obj/structure/table,/obj/item/weapon/paper{info = "Grade: B- Educator's Notes: Keep applying yourself, you're showing improvement."; name = "Summoning Midterm Exam"},/obj/item/weapon/gun/projectile/shotgun/toy/tommygun,/turf/simulated/floor/plasteel{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms)
|
||||
"gG" = (/obj/structure/table,/turf/simulated/floor/plasteel{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms)
|
||||
"gH" = (/obj/structure/window/reinforced,/obj/item/ammo_casing,/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/awaymission/academy/classrooms)
|
||||
"gI" = (/mob/living/simple_animal/hostile/bear,/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
|
||||
@@ -286,8 +286,8 @@
|
||||
"fz" = (/obj/structure/table,/obj/item/device/analyzer,/obj/item/device/mass_spectrometer{pixel_x = 5; pixel_y = 5},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research)
|
||||
"fA" = (/obj/effect/decal/remains/human{desc = "This guy seemed to have died in terrible way! Half his remains are dust."; icon_state = "remains"; name = "Syndicate agent remains"},/obj/item/ammo_casing/c10mm,/obj/item/weapon/paper/sc_safehint_paper_caf,/obj/item/clothing/under/syndicate,/obj/effect/decal/cleanable/blood/splatter,/turf/simulated/floor/plasteel,/area/awaymission/midblock)
|
||||
"fB" = (/obj/structure/target_stake,/obj/item/weapon/grown/sunflower,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research)
|
||||
"fC" = (/obj/effect/decal/remains/human{desc = "This guy seemed to have died in terrible way! Half his remains are dust."; icon_state = "remains"; name = "Syndicate agent remains"},/obj/item/ammo_casing/c10mm,/obj/item/clothing/under/syndicate,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/item/weapon/gun/projectile/automatic/tommygun/toy,/turf/simulated/floor/plasteel,/area/awaymission/midblock)
|
||||
"fD" = (/obj/effect/decal/remains/human{desc = "This guy seemed to have died in terrible way! Half his remains are dust."; icon_state = "remains"; name = "Syndicate agent remains"},/obj/item/ammo_casing/c10mm,/obj/item/ammo_casing/c10mm,/obj/item/clothing/under/syndicate,/obj/effect/decal/cleanable/blood/splatter,/obj/item/weapon/gun/projectile/automatic/tommygun/toy,/turf/simulated/floor/plasteel,/area/awaymission/midblock)
|
||||
"fC" = (/obj/effect/decal/remains/human{desc = "This guy seemed to have died in terrible way! Half his remains are dust."; icon_state = "remains"; name = "Syndicate agent remains"},/obj/item/ammo_casing/c10mm,/obj/item/clothing/under/syndicate,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/item/weapon/gun/projectile/shotgun/toy/tommygun,/turf/simulated/floor/plasteel,/area/awaymission/midblock)
|
||||
"fD" = (/obj/effect/decal/remains/human{desc = "This guy seemed to have died in terrible way! Half his remains are dust."; icon_state = "remains"; name = "Syndicate agent remains"},/obj/item/ammo_casing/c10mm,/obj/item/ammo_casing/c10mm,/obj/item/clothing/under/syndicate,/obj/effect/decal/cleanable/blood/splatter,/obj/item/weapon/gun/projectile/shotgun/toy/tommygun,/turf/simulated/floor/plasteel,/area/awaymission/midblock)
|
||||
"fE" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/plasteel/airless,/area/awaymission/midblock)
|
||||
"fF" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched1"},/area/awaymission/midblock)
|
||||
"fG" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel/airless{icon_state = "damaged5"},/area/awaymission/midblock)
|
||||
@@ -315,7 +315,7 @@
|
||||
"gc" = (/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/awaymission/arrivalblock)
|
||||
"gd" = (/obj/structure/stool/bed/chair/comfy/brown{dir = 1},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/awaymission/northblock)
|
||||
"ge" = (/obj/item/weapon/storage/secure/safe/sc_ssafe{pixel_x = 4; pixel_y = -26},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/awaymission/northblock)
|
||||
"gf" = (/obj/effect/decal/remains/human{desc = "This guy seemed to have died in terrible way! Half his remains are dust."; icon_state = "remains"; name = "Syndicate agent remains"},/obj/item/ammo_casing/c10mm,/obj/item/clothing/under/syndicate,/obj/effect/decal/cleanable/blood/splatter,/obj/item/weapon/gun/projectile/automatic/tommygun/toy,/turf/simulated/floor/plasteel,/area/awaymission/midblock)
|
||||
"gf" = (/obj/effect/decal/remains/human{desc = "This guy seemed to have died in terrible way! Half his remains are dust."; icon_state = "remains"; name = "Syndicate agent remains"},/obj/item/ammo_casing/c10mm,/obj/item/clothing/under/syndicate,/obj/effect/decal/cleanable/blood/splatter,/obj/item/weapon/gun/projectile/shotgun/toy/tommygun,/turf/simulated/floor/plasteel,/area/awaymission/midblock)
|
||||
"gg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched2"},/area/awaymission/midblock)
|
||||
"gh" = (/obj/structure/closet/wardrobe/generic,/turf/simulated/floor/plasteel,/area/awaymission/midblock)
|
||||
"gi" = (/turf/simulated/floor/plasteel,/area/awaymission/midblock)
|
||||
|
||||
@@ -1359,8 +1359,8 @@ var/list/all_supply_groups = list(supply_emergency,supply_security,supply_engine
|
||||
/obj/item/clothing/under/mafia/white,
|
||||
/obj/item/clothing/under/mafia/sue,
|
||||
/obj/item/clothing/under/mafia/tan,
|
||||
/obj/item/weapon/gun/projectile/automatic/tommygun/toy,
|
||||
/obj/item/weapon/gun/projectile/automatic/tommygun/toy)
|
||||
/obj/item/weapon/gun/projectile/shotgun/toy/tommygun,
|
||||
/obj/item/weapon/gun/projectile/shotgun/toy/tommygun)
|
||||
cost = 15
|
||||
containername = "mafia supply crate"
|
||||
|
||||
|
||||
@@ -410,6 +410,7 @@ var/list/uplink_items = list()
|
||||
/datum/uplink_item/dangerous/foamsmg
|
||||
name = "Toy Submachine Gun"
|
||||
desc = "A fully-loaded Donksoft bullpup submachine gun that fires riot grade rounds with a 20-round magazine."
|
||||
reference = "FSMG"
|
||||
item = /obj/item/weapon/gun/projectile/automatic/c20r/toy
|
||||
cost = 5
|
||||
gamemodes = list(/datum/game_mode/nuclear)
|
||||
@@ -418,6 +419,7 @@ var/list/uplink_items = list()
|
||||
/datum/uplink_item/dangerous/foammachinegun
|
||||
name = "Toy Machine Gun"
|
||||
desc = "A fully-loaded Donksoft belt-fed machine gun. This weapon has a massive 50-round magazine of devastating riot grade darts, that can briefly incapacitate someone in just one volley."
|
||||
reference = "FLMG"
|
||||
item = /obj/item/weapon/gun/projectile/automatic/l6_saw/toy
|
||||
cost = 10
|
||||
gamemodes = list(/datum/game_mode/nuclear)
|
||||
@@ -426,6 +428,7 @@ var/list/uplink_items = list()
|
||||
/datum/uplink_item/ammo/toydarts
|
||||
name = "Box of Riot Darts"
|
||||
desc = "A box of 40 Donksoft foam riot darts, for reloading any compatible foam dart gun. Don't forget to share!"
|
||||
reference = "FOAM"
|
||||
item = /obj/item/ammo_box/foambox/riot
|
||||
cost = 2
|
||||
gamemodes = list(/datum/game_mode/nuclear)
|
||||
@@ -578,6 +581,7 @@ var/list/uplink_items = list()
|
||||
/datum/uplink_item/stealthy_weapons/foampistol
|
||||
name = "Toy Gun (with Stun Darts)"
|
||||
desc = "An innocent looking toy pistol designed to fire foam darts. Comes loaded with riot grade darts, to incapacitate a target."
|
||||
reference = "FSPI"
|
||||
item = /obj/item/weapon/gun/projectile/automatic/toy/pistol/riot
|
||||
cost = 3
|
||||
surplus = 10
|
||||
|
||||
@@ -115,7 +115,7 @@
|
||||
/obj/item/toy/AI,
|
||||
/obj/item/clothing/under/syndicate/tacticool,
|
||||
/obj/item/weapon/storage/box/fakesyndiesuit,
|
||||
/obj/item/weapon/gun/projectile/automatic/tommygun/toy,
|
||||
/obj/item/weapon/gun/projectile/shotgun/toy/tommygun,
|
||||
/obj/item/stack/tile/fakespace/loaded,
|
||||
)
|
||||
|
||||
|
||||
@@ -253,10 +253,9 @@ var/global/datum/prizes/global_prizes = new
|
||||
/datum/prize_item/tommygun
|
||||
name = "Tommygun"
|
||||
desc = "A replica tommygun that fires foam darts."
|
||||
typepath = /obj/item/weapon/gun/projectile/automatic/tommygun/toy
|
||||
typepath = /obj/item/weapon/gun/projectile/shotgun/toy/tommygun
|
||||
cost = 175
|
||||
|
||||
|
||||
/datum/prize_item/esword
|
||||
name = "Toy Energy Sword"
|
||||
desc = "A plastic replica of an energy blade."
|
||||
|
||||
@@ -55,24 +55,24 @@
|
||||
/obj/item/ammo_casing/attackby(obj/item/ammo_box/box as obj, mob/user as mob, params)
|
||||
if(!istype(box, /obj/item/ammo_box))
|
||||
return
|
||||
if(isturf(src.loc))
|
||||
if(isturf(loc))
|
||||
var/boolets = 0
|
||||
for(var/obj/item/ammo_casing/pew in src.loc)
|
||||
if (box.stored_ammo.len >= box.max_ammo)
|
||||
for(var/obj/item/ammo_casing/pew in loc)
|
||||
if(box.stored_ammo.len >= box.max_ammo)
|
||||
break
|
||||
if (pew.BB)
|
||||
if (box.give_round(pew))
|
||||
if(pew.BB)
|
||||
if(box.give_round(pew))
|
||||
boolets++
|
||||
else
|
||||
continue
|
||||
if (boolets > 0)
|
||||
if(boolets > 0)
|
||||
box.update_icon()
|
||||
user << "<span class='notice'>You collect [boolets] shell\s. [box] now contains [box.stored_ammo.len] shell\s.</span>"
|
||||
to_chat(user, "<span class='notice'>You collect [boolets] shell\s. [box] now contains [box.stored_ammo.len] shell\s.</span>")
|
||||
else
|
||||
user << "<span class='notice'>You fail to collect anything.</span>"
|
||||
to_chat(user, "<span class='notice'>You fail to collect anything.</span>")
|
||||
|
||||
/obj/item/ammo_casing/proc/newshot() //For energy weapons, shotgun shells and wands (!).
|
||||
if (!BB)
|
||||
if(!BB)
|
||||
BB = new projectile_type(src)
|
||||
return
|
||||
|
||||
@@ -104,19 +104,19 @@
|
||||
update_icon()
|
||||
|
||||
/obj/item/ammo_box/proc/get_round(var/keep = 0)
|
||||
if (!stored_ammo.len)
|
||||
if(!stored_ammo.len)
|
||||
return null
|
||||
else
|
||||
var/b = stored_ammo[stored_ammo.len]
|
||||
stored_ammo -= b
|
||||
if (keep)
|
||||
if(keep)
|
||||
stored_ammo.Insert(1,b)
|
||||
return b
|
||||
|
||||
/obj/item/ammo_box/proc/give_round(var/obj/item/ammo_casing/r)
|
||||
var/obj/item/ammo_casing/rb = r
|
||||
if (rb)
|
||||
if (stored_ammo.len < max_ammo && rb.caliber == caliber)
|
||||
if(rb)
|
||||
if(stored_ammo.len < max_ammo && rb.caliber == caliber)
|
||||
stored_ammo += rb
|
||||
rb.loc = src
|
||||
return 1
|
||||
|
||||
@@ -269,25 +269,25 @@
|
||||
|
||||
/obj/item/ammo_casing/caseless/foam_dart/update_icon()
|
||||
..()
|
||||
if (modified)
|
||||
if(modified)
|
||||
icon_state = "foamdart_empty"
|
||||
desc = "Its nerf or nothing! ...Although, this one doesn't look too safe."
|
||||
|
||||
/obj/item/ammo_casing/caseless/foam_dart/attackby(var/obj/item/weapon/A as obj, mob/user as mob, params)
|
||||
..()
|
||||
if (istype(A, /obj/item/weapon/screwdriver) && !modified)
|
||||
if(istype(A, /obj/item/weapon/screwdriver) && !modified)
|
||||
modified = 1
|
||||
BB.damage_type = BRUTE
|
||||
icon_state = "foamdart_empty"
|
||||
desc = "Its nerf or nothing! ...Although, this one doesn't look too safe."
|
||||
user << "<span class='notice'>You pop the safety cap off of [src].</span>"
|
||||
else if ((istype(A, /obj/item/weapon/pen)) && modified && !BB.contents.len)
|
||||
if (!user.unEquip(A))
|
||||
to_chat(user, "<span class='notice'>You pop the safety cap off of [src].</span>")
|
||||
else if((istype(A, /obj/item/weapon/pen)) && modified && !BB.contents.len)
|
||||
if(!user.unEquip(A))
|
||||
return
|
||||
A.loc = BB
|
||||
A.forceMove(BB)
|
||||
BB.damage = 5
|
||||
BB.nodamage = 0
|
||||
user << "<span class='notice'>You insert [A] into [src].</span>"
|
||||
to_chat(user, "<span class='notice'>You insert [A] into [src].</span>")
|
||||
return
|
||||
|
||||
/obj/item/ammo_casing/caseless/foam_dart/riot
|
||||
|
||||
@@ -109,6 +109,9 @@
|
||||
/obj/item/ammo_box/magazine/internal/shot/toy/crossbow
|
||||
max_ammo = 5
|
||||
|
||||
/obj/item/ammo_box/magazine/internal/shot/toy/tommygun
|
||||
max_ammo = 10
|
||||
|
||||
///////////EXTERNAL MAGAZINES////////////////
|
||||
|
||||
/obj/item/ammo_box/magazine/m10mm
|
||||
@@ -344,8 +347,3 @@
|
||||
/obj/item/ammo_box/magazine/toy/m762/update_icon()
|
||||
..()
|
||||
icon_state = "a762-[round(ammo_count(),10)]"
|
||||
|
||||
/obj/item/ammo_box/magazine/toy/tommygunm45
|
||||
name = "little tommy's mag"
|
||||
icon_state = "drum45"
|
||||
max_ammo = 50
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
|
||||
/obj/item/weapon/gun/projectile/New()
|
||||
..()
|
||||
if (!magazine)
|
||||
if(!magazine)
|
||||
magazine = new mag_type(src)
|
||||
chamber_round()
|
||||
update_icon()
|
||||
@@ -53,9 +53,9 @@
|
||||
|
||||
|
||||
/obj/item/weapon/gun/projectile/proc/chamber_round()
|
||||
if (chambered || !magazine)
|
||||
if(chambered || !magazine)
|
||||
return
|
||||
else if (magazine.ammo_count())
|
||||
else if(magazine.ammo_count())
|
||||
chambered = magazine.get_round()
|
||||
chambered.loc = src
|
||||
return
|
||||
@@ -63,9 +63,9 @@
|
||||
|
||||
/obj/item/weapon/gun/projectile/attackby(var/obj/item/A as obj, mob/user as mob, params)
|
||||
..()
|
||||
if (istype(A, /obj/item/ammo_box/magazine))
|
||||
if(istype(A, /obj/item/ammo_box/magazine))
|
||||
var/obj/item/ammo_box/magazine/AM = A
|
||||
if (!magazine && istype(AM, text2path(mag_type)))
|
||||
if(!magazine && istype(AM, text2path(mag_type)))
|
||||
user.remove_from_mob(AM)
|
||||
magazine = AM
|
||||
magazine.loc = src
|
||||
@@ -74,7 +74,7 @@
|
||||
A.update_icon()
|
||||
update_icon()
|
||||
return 1
|
||||
else if (magazine)
|
||||
else if(magazine)
|
||||
to_chat(user, "<span class='notice'>There's already a magazine in \the [src].</span>")
|
||||
if(istype(A, /obj/item/weapon/suppressor))
|
||||
var/obj/item/weapon/suppressor/S = A
|
||||
@@ -135,9 +135,9 @@
|
||||
|
||||
/obj/item/weapon/gun/projectile/proc/get_ammo(var/countchambered = 1)
|
||||
var/boolets = 0 //mature var names for mature people
|
||||
if (chambered && countchambered)
|
||||
if(chambered && countchambered)
|
||||
boolets++
|
||||
if (magazine)
|
||||
if(magazine)
|
||||
boolets += magazine.ammo_count()
|
||||
return boolets
|
||||
|
||||
|
||||
@@ -5,7 +5,6 @@
|
||||
icon_state = "saber"
|
||||
item_state = "gun"
|
||||
mag_type = "/obj/item/ammo_box/magazine/toy/smg"
|
||||
fire_sound = 'sound/items/syringeproj.ogg'
|
||||
force = 0
|
||||
throwforce = 0
|
||||
burst_size = 3
|
||||
@@ -22,6 +21,7 @@
|
||||
icon_state = "pistol"
|
||||
w_class = 2
|
||||
mag_type = "/obj/item/ammo_box/magazine/toy/pistol"
|
||||
fire_sound = 'sound/weapons/Gunshot.ogg'
|
||||
can_suppress = 0
|
||||
burst_size = 1
|
||||
fire_delay = 0
|
||||
@@ -61,17 +61,7 @@
|
||||
/obj/item/weapon/gun/projectile/automatic/l6_saw/toy/process_chambered()
|
||||
return ..(0, 1)
|
||||
|
||||
/obj/item/weapon/gun/projectile/automatic/tommygun/toy
|
||||
name = "tommy gun"
|
||||
desc = "Looks almost like the real thing! Great for practicing Drive-bys. Ages 8 and up."
|
||||
icon_state = "tommygun"
|
||||
item_state = "shotgun"
|
||||
w_class = 2
|
||||
mag_type = "/obj/item/ammo_box/magazine/toy/tommygunm45"
|
||||
fire_sound = 'sound/items/syringeproj.ogg'
|
||||
|
||||
/obj/item/weapon/gun/projectile/automatic/tommygun/toy/process_chambered()
|
||||
return ..(0, 1)
|
||||
|
||||
/obj/item/weapon/gun/projectile/shotgun/toy
|
||||
name = "foam force shotgun"
|
||||
@@ -81,7 +71,6 @@
|
||||
throwforce = 0
|
||||
origin_tech = null
|
||||
mag_type = "/obj/item/ammo_box/magazine/internal/shot/toy"
|
||||
fire_sound = 'sound/items/syringeproj.ogg'
|
||||
clumsy_check = 0
|
||||
needs_permit = 0
|
||||
|
||||
@@ -97,5 +86,15 @@
|
||||
icon_state = "crossbow"
|
||||
item_state = "crossbow"
|
||||
mag_type = "/obj/item/ammo_box/magazine/internal/shot/toy/crossbow"
|
||||
fire_sound = 'sound/items/syringeproj.ogg'
|
||||
slot_flags = SLOT_BELT
|
||||
w_class = 2
|
||||
|
||||
/obj/item/weapon/gun/projectile/shotgun/toy/tommygun
|
||||
name = "tommy gun"
|
||||
desc = "Looks almost like the real thing! Great for practicing Drive-bys. Ages 8 and up."
|
||||
icon = 'icons/obj/gun.dmi'
|
||||
icon_state = "tommy"
|
||||
item_state = "shotgun"
|
||||
mag_type = "/obj/item/ammo_box/magazine/internal/shot/toy/tommygun"
|
||||
w_class = 2
|
||||
|
||||
Reference in New Issue
Block a user