mirror of
https://github.com/Aurorastation/Aurora-Old.git
synced 2026-08-24 21:26:13 +01:00
Merge pull request #30 from skull132/master
Traitor items, rifles, antag_hud
This commit is contained in:
@@ -588,7 +588,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/suit/armor/vest(M), slot_wear_suit)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/thunderdome(M), slot_head)
|
||||
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/pulse_rifle/destroyer(M), slot_r_hand)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/rifle/pulse_rifle/destroyer(M), slot_r_hand)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/kitchenknife(M), slot_l_hand)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/grenade/smokebomb(M), slot_r_store)
|
||||
|
||||
|
||||
@@ -173,7 +173,6 @@
|
||||
icon_state = "hosdnavyclothes"
|
||||
item_state = "hosdnavyclothes"
|
||||
item_color = "hosdnavyclothes"
|
||||
item_color
|
||||
armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
|
||||
flags = FPRINT | TABLEPASS
|
||||
siemens_coefficient = 0.8
|
||||
|
||||
@@ -115,8 +115,8 @@
|
||||
desc = "A modest uniform. the name-tag reads 'Olivia Conrad'."
|
||||
icon = 'icons/obj/custom_items.dmi'
|
||||
icon_state = "olivia_skirt"
|
||||
item_color = "black"
|
||||
item_state = "olivia_skirt_s"
|
||||
item_color = "olivia_skirt"
|
||||
item_state = "olivia_skirt"
|
||||
|
||||
/obj/item/clothing/head/hairflower/fluff/olivia_flower //White Flower - Olivia Conrad - meowykins - DONE
|
||||
name = "White flower"
|
||||
@@ -195,6 +195,7 @@
|
||||
item_state = "skull_harness2"
|
||||
slots = 2
|
||||
|
||||
/*
|
||||
/obj/item/clothing/tie/storage/knifeharness/fluff/skull132_harness/attackby(var/obj/item/O as obj, mob/user as mob)
|
||||
..()
|
||||
update()
|
||||
@@ -219,6 +220,7 @@
|
||||
..()
|
||||
new /obj/item/weapon/hatchet/unathiknife(hold)
|
||||
new /obj/item/weapon/hatchet/unathiknife(hold)
|
||||
*/
|
||||
|
||||
/obj/item/weapon/disk/fluff/nebula_chip //data chip - Roxy Wallace - nebulaflare - DONE
|
||||
name = "data chip"
|
||||
|
||||
@@ -1064,7 +1064,7 @@
|
||||
E = get_visible_implants(0)
|
||||
if(!E.len)
|
||||
embedded_flag = 0
|
||||
|
||||
|
||||
|
||||
//Eyes
|
||||
if(sdisabilities & BLIND) //disabled-blind, doesn't get better on its own
|
||||
@@ -1202,8 +1202,8 @@
|
||||
if(healths) healths.icon_state = "health7" //DEAD healthmeter
|
||||
if(client)
|
||||
if(client.view != world.view)
|
||||
if(locate(/obj/item/weapon/gun/energy/sniperrifle, contents))
|
||||
var/obj/item/weapon/gun/energy/sniperrifle/s = locate() in src
|
||||
if(locate(/obj/item/weapon/gun/energy/rifle/sniperrifle, contents))
|
||||
var/obj/item/weapon/gun/energy/rifle/sniperrifle/s = locate() in src
|
||||
if(s.zoom)
|
||||
s.zoom()
|
||||
|
||||
|
||||
@@ -188,8 +188,8 @@
|
||||
return
|
||||
if(mob.client)
|
||||
if(mob.client.view != world.view)
|
||||
if(locate(/obj/item/weapon/gun/energy/sniperrifle, mob.contents)) // If mob moves while zoomed in with sniper rifle, unzoom them.
|
||||
var/obj/item/weapon/gun/energy/sniperrifle/s = locate() in mob
|
||||
if(locate(/obj/item/weapon/gun/energy/rifle/sniperrifle, mob.contents)) // If mob moves while zoomed in with sniper rifle, unzoom them.
|
||||
var/obj/item/weapon/gun/energy/rifle/sniperrifle/s = locate() in mob
|
||||
if(s.zoom)
|
||||
s.zoom()
|
||||
|
||||
|
||||
@@ -10,6 +10,9 @@
|
||||
var/projectile_type = "/obj/item/projectile/beam/practice"
|
||||
var/modifystate
|
||||
|
||||
isHandgun()
|
||||
return 0
|
||||
|
||||
emp_act(severity)
|
||||
power_supply.use(round(power_supply.maxcharge / severity))
|
||||
update_icon()
|
||||
|
||||
@@ -0,0 +1,297 @@
|
||||
//My attempt into things
|
||||
//first block of code taken and modified from twohanded.dm
|
||||
//HOPEFULLY it provides a result worth.. Keeping.
|
||||
//Intent: make it so that rifles (ion rifle, laser rifle, whatever) need to be grasped with two hands to be effective
|
||||
//Method: this below: if wielded, a rifle will have a normal fire_delay; if unwielded, it'll have doubled fire_delay
|
||||
//
|
||||
//NOTE: Due to how the parenting is set up, a /rifle/ parent is required for both projectile and energy weapons, seperately. I think. Easiest way of doing this <.<
|
||||
//Also, may encounter problems with weapons that already have procs in place.
|
||||
//
|
||||
//If this works... All I can say is: I expected this to be tonnes harder.
|
||||
//
|
||||
//TO DO: Find more rifle-y energy weapons
|
||||
//Start removing old weapons (comment out) if applicable, that way duplicates are avoided.
|
||||
//
|
||||
//CONTAINS:
|
||||
//Laser Rifle
|
||||
//Practice Laser
|
||||
//Ion Rifle
|
||||
//Sniper Rifle
|
||||
//Laser Cannon
|
||||
//Pulse Rifle
|
||||
//Pulse Destroyed -- you use this, and I'll kill you
|
||||
//
|
||||
//--Skull132
|
||||
|
||||
/obj/item/weapon/gun/energy/rifle
|
||||
var/wielded = 0
|
||||
var/fire_delay_unwielded = 0
|
||||
var/fire_delay_wielded = 0 //so that we're dealing with fire_delay modification
|
||||
var/wieldsound = null
|
||||
var/unwieldsound = null
|
||||
|
||||
/obj/item/weapon/gun/energy/rifle/proc/unwield()
|
||||
wielded = 0
|
||||
fire_delay = fire_delay_unwielded
|
||||
name = "[initial(name)]"
|
||||
update_icon()
|
||||
|
||||
/obj/item/weapon/gun/energy/rifle/proc/wield()
|
||||
wielded = 1
|
||||
fire_delay = fire_delay_wielded
|
||||
name = "[initial(name)] (Wielded)"
|
||||
update_icon()
|
||||
|
||||
/obj/item/weapon/gun/energy/rifle/mob_can_equip(M as mob, slot)
|
||||
//Cannot equip wielded items.
|
||||
if(wielded)
|
||||
M << "<span class='warning'>Lower the [initial(name)] first!</span>"
|
||||
return 0
|
||||
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/gun/energy/rifle/dropped(mob/user as mob)
|
||||
//handles unwielding a twohanded weapon when dropped as well as clearing up the offhand
|
||||
if(user)
|
||||
var/obj/item/weapon/gun/energy/rifle/O = user.get_inactive_hand()
|
||||
if(istype(O))
|
||||
O.unwield()
|
||||
return unwield()
|
||||
|
||||
/obj/item/weapon/gun/energy/rifle/update_icon()
|
||||
return
|
||||
|
||||
/obj/item/weapon/gun/energy/rifle/pickup(mob/user)
|
||||
unwield()
|
||||
|
||||
/obj/item/weapon/gun/energy/rifle/attack_self(mob/user as mob)
|
||||
if( istype(user,/mob/living/carbon/monkey) )
|
||||
user << "<span class='warning'>It's too heavy for you to stabilize properly.</span>"
|
||||
return
|
||||
|
||||
..()
|
||||
if(wielded) //Trying to unwield it
|
||||
unwield()
|
||||
user << "<span class='notice'>You are no-longer stabilizing the [name] with both hands.</span>"
|
||||
if (src.unwieldsound)
|
||||
playsound(src.loc, unwieldsound, 50, 1)
|
||||
|
||||
var/obj/item/weapon/gun/energy/rifle/offhand/O = user.get_inactive_hand()
|
||||
if(O && istype(O))
|
||||
O.unwield()
|
||||
return
|
||||
|
||||
else //Trying to wield it
|
||||
if(user.get_inactive_hand())
|
||||
user << "<span class='warning'>You need your other hand to be empty</span>"
|
||||
return
|
||||
wield()
|
||||
user << "<span class='notice'>You stabilize the [initial(name)] with both hands.</span>"
|
||||
if (src.wieldsound)
|
||||
playsound(src.loc, wieldsound, 50, 1)
|
||||
|
||||
var/obj/item/weapon/gun/energy/rifle/offhand/O = new(user) ////Let's reserve his other hand~
|
||||
O.name = "[initial(name)] - offhand"
|
||||
O.desc = "Your second grip on the [initial(name)]"
|
||||
user.put_in_inactive_hand(O)
|
||||
return
|
||||
|
||||
///////////OFFHAND///////////////
|
||||
/obj/item/weapon/gun/energy/rifle/offhand
|
||||
w_class = 5.0
|
||||
icon = 'icons/obj/weapons.dmi' //mainly because we can't have nice things, right? Right.
|
||||
icon_state = "offhand"
|
||||
name = "offhand"
|
||||
|
||||
unwield()
|
||||
del(src)
|
||||
|
||||
wield()
|
||||
del(src)
|
||||
|
||||
///////////LASER RIFLE//////////////
|
||||
/obj/item/weapon/gun/energy/rifle/laser
|
||||
name = "laser rifle"
|
||||
desc = "a basic weapon designed kill with concentrated energy bolts"
|
||||
icon_state = "laser"
|
||||
item_state = "laser"
|
||||
fire_sound = 'sound/weapons/Laser.ogg'
|
||||
slot_flags = SLOT_BACK
|
||||
w_class = 4
|
||||
m_amt = 2000
|
||||
origin_tech = "combat=3;magnets=2"
|
||||
projectile_type = "/obj/item/projectile/beam"
|
||||
fire_delay_wielded = 6 //6 is normal fire_delay
|
||||
fire_delay_unwielded = 24 //4x difference, let's be an arse about this, and push the issue
|
||||
|
||||
/*
|
||||
/obj/item/weapon/gun/energy/rifle/laser/update_icon() //Currently only here to fuck with the on-mob icons.
|
||||
icon_state = "laser[wielded]"
|
||||
return
|
||||
|
||||
Commenting out right now, due to a lack of sprites existing. I hate on-mob weapon sprites...*/
|
||||
|
||||
///////////PRACTICE LASER//////////////
|
||||
|
||||
/obj/item/weapon/gun/energy/rifle/laser/practice
|
||||
name = "practice laser gun"
|
||||
desc = "A modified version of the basic laser gun, this one fires less concentrated energy bolts designed for target practice."
|
||||
projectile_type = "/obj/item/projectile/beam/practice"
|
||||
clumsy_check = 0
|
||||
|
||||
isHandgun()
|
||||
return 1
|
||||
|
||||
|
||||
///////////ION RIFLE//////////////
|
||||
|
||||
/obj/item/weapon/gun/energy/rifle/ionrifle
|
||||
name = "ion rifle"
|
||||
desc = "A man portable anti-armor weapon designed to disable mechanical threats"
|
||||
icon_state = "ionrifle"
|
||||
fire_sound = 'sound/weapons/Laser.ogg'
|
||||
origin_tech = "combat=2;magnets=4"
|
||||
w_class = 4.0
|
||||
flags = FPRINT | TABLEPASS | CONDUCT
|
||||
slot_flags = SLOT_BACK
|
||||
charge_cost = 100
|
||||
projectile_type = "/obj/item/projectile/ion"
|
||||
fire_delay_wielded = 6 //6 is normal fire_delay
|
||||
fire_delay_unwielded = 24 //4x difference, let's be an arse about this, and push the issue
|
||||
|
||||
/obj/item/weapon/gun/energy/rifle/ionrifle/emp_act(severity)
|
||||
if(severity <= 2)
|
||||
power_supply.use(round(power_supply.maxcharge / severity))
|
||||
update_icon()
|
||||
else
|
||||
return
|
||||
|
||||
///obj/item/weapon/gun/energy/rifle/ionrifle/update_icon() //Currently only here to fuck with the on-mob icons.
|
||||
// icon_state = "ionrifle[wielded]"
|
||||
// return
|
||||
|
||||
///////////SNIPER RIFLE//////////////
|
||||
//This is going to create issues... Yup.
|
||||
//After initial compile: ooooor not... Wtf.
|
||||
|
||||
/obj/item/weapon/gun/energy/rifle/sniperrifle
|
||||
name = "L.W.A.P. Sniper Rifle"
|
||||
desc = "A rifle constructed of lightweight materials, fitted with a SMART aiming-system scope."
|
||||
icon = 'icons/obj/gun.dmi'
|
||||
icon_state = "sniper"
|
||||
fire_sound = 'sound/weapons/marauder.ogg'
|
||||
origin_tech = "combat=6;materials=5;powerstorage=4"
|
||||
projectile_type = "/obj/item/projectile/beam/sniper"
|
||||
slot_flags = SLOT_BACK
|
||||
charge_cost = 250
|
||||
fire_delay = 35
|
||||
w_class = 4.0
|
||||
fire_delay_wielded = 35 //35 is normal fire_delay -- this is going to suck. Yiss, what we want!
|
||||
fire_delay_unwielded = 105 //3x difference, let's be an arse about this, and push the issue
|
||||
var/zoom = 0
|
||||
|
||||
/obj/item/weapon/gun/energy/rifle/sniperrifle/dropped(mob/user)
|
||||
user.client.view = world.view
|
||||
|
||||
///obj/item/weapon/gun/energy/rifle/sniperrifle/update_icon() //Currently only here to fuck with the on-mob icons.
|
||||
// icon_state = "sniper[wielded]"
|
||||
// return
|
||||
|
||||
/*
|
||||
This is called from
|
||||
modules/mob/mob_movement.dm if you move you will be zoomed out
|
||||
modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out.
|
||||
*/
|
||||
|
||||
/obj/item/weapon/gun/energy/rifle/sniperrifle/verb/zoom()
|
||||
set category = "Object"
|
||||
set name = "Use Sniper Scope"
|
||||
set popup_menu = 0
|
||||
if(usr.stat || !(istype(usr,/mob/living/carbon/human)))
|
||||
usr << "You are unable to focus down the scope of the rifle."
|
||||
return
|
||||
if(!zoom && global_hud.darkMask[1] in usr.client.screen)
|
||||
usr << "Your welding equipment gets in the way of you looking down the scope"
|
||||
return
|
||||
if(!zoom && usr.get_active_hand() != src)
|
||||
usr << "You are too distracted to look down the scope, perhaps if it was in your active hand this might work better"
|
||||
return
|
||||
|
||||
if(usr.client.view == world.view)
|
||||
if(!usr.hud_used.hud_shown)
|
||||
usr.button_pressed_F12(1) // If the user has already limited their HUD this avoids them having a HUD when they zoom in
|
||||
usr.button_pressed_F12(1)
|
||||
usr.client.view = 12
|
||||
zoom = 1
|
||||
else
|
||||
usr.client.view = world.view
|
||||
if(!usr.hud_used.hud_shown)
|
||||
usr.button_pressed_F12(1)
|
||||
zoom = 0
|
||||
usr << "<font color='[zoom?"blue":"red"]'>Zoom mode [zoom?"en":"dis"]abled.</font>"
|
||||
return
|
||||
|
||||
///////////LASER CANNON//////////////
|
||||
|
||||
/obj/item/weapon/gun/energy/rifle/lasercannon
|
||||
name = "laser cannon"
|
||||
desc = "With the L.A.S.E.R. cannon, the lasing medium is enclosed in a tube lined with uranium-235 and subjected to high neutron flux in a nuclear reactor core. This incredible technology may help YOU achieve high excitation rates with small laser volumes!"
|
||||
icon_state = "lasercannon"
|
||||
fire_sound = 'sound/weapons/lasercannonfire.ogg'
|
||||
origin_tech = "combat=4;materials=3;powerstorage=3"
|
||||
projectile_type = "/obj/item/projectile/beam/heavylaser"
|
||||
slot_flags = SLOT_BACK //Just realized... Going to need A LOT more on-back sprites now... FECK...
|
||||
w_class = 4 //original didn't have this... I have no sodding idea as to WHY, seeing that it's a C-A-N-N-O-N! Let's limit all the things!
|
||||
fire_delay_wielded = 8
|
||||
fire_delay_unwielded = 24
|
||||
|
||||
///////////PULSE RIFLE///////////////
|
||||
|
||||
/obj/item/weapon/gun/energy/rifle/pulse_rifle
|
||||
name = "pulse rifle"
|
||||
desc = "A heavy-duty, pulse-based energy weapon, preferred by front-line combat personnel."
|
||||
icon_state = "pulse"
|
||||
item_state = null //so the human update icon uses the icon_state instead.
|
||||
force = 10
|
||||
fire_sound = 'sound/weapons/pulse.ogg'
|
||||
charge_cost = 200
|
||||
projectile_type = "/obj/item/projectile/beam/pulse"
|
||||
cell_type = "/obj/item/weapon/cell/super"
|
||||
w_class = 4
|
||||
slot_flags = SLOT_BACK //Just realized... Going to need A LOT more on-back sprites now... FECK...
|
||||
var/mode = 2
|
||||
fire_delay_wielded = 25
|
||||
fire_delay_unwielded = 75
|
||||
|
||||
attack_self(mob/living/user as mob)
|
||||
switch(mode)
|
||||
if(2)
|
||||
mode = 0
|
||||
charge_cost = 100
|
||||
fire_sound = 'sound/weapons/Taser.ogg'
|
||||
user << "\red [src.name] is now set to stun."
|
||||
projectile_type = "/obj/item/projectile/energy/electrode"
|
||||
if(0)
|
||||
mode = 1
|
||||
charge_cost = 100
|
||||
fire_sound = 'sound/weapons/Laser.ogg'
|
||||
user << "\red [src.name] is now set to kill."
|
||||
projectile_type = "/obj/item/projectile/beam"
|
||||
if(1)
|
||||
mode = 2
|
||||
charge_cost = 200
|
||||
fire_sound = 'sound/weapons/pulse.ogg'
|
||||
user << "\red [src.name] is now set to DESTROY."
|
||||
projectile_type = "/obj/item/projectile/beam/pulse"
|
||||
return
|
||||
|
||||
///////////PULSE RIFLE///////////////
|
||||
//For the love of fuck, NEVER USE THIS WEAPON
|
||||
|
||||
/obj/item/weapon/gun/energy/rifle/pulse_rifle/destroyer
|
||||
name = "pulse destroyer"
|
||||
desc = "A heavy-duty, pulse-based energy weapon."
|
||||
cell_type = "/obj/item/weapon/cell/infinite"
|
||||
|
||||
attack_self(mob/living/user as mob)
|
||||
user << "\red [src.name] has three settings, and they are all DESTROY."
|
||||
@@ -1,25 +1,32 @@
|
||||
/obj/item/weapon/gun/energy/laser
|
||||
name = "laser gun"
|
||||
name = "laser rifle"
|
||||
desc = "a basic weapon designed kill with concentrated energy bolts"
|
||||
icon_state = "laser"
|
||||
item_state = "laser"
|
||||
fire_sound = 'sound/weapons/Laser.ogg'
|
||||
w_class = 3.0
|
||||
slot_flags = SLOT_BACK
|
||||
w_class = 4
|
||||
m_amt = 2000
|
||||
origin_tech = "combat=3;magnets=2"
|
||||
projectile_type = "/obj/item/projectile/beam"
|
||||
|
||||
//can't snip, required elsewhere.
|
||||
/obj/item/weapon/gun/energy/laser/practice
|
||||
name = "practice laser gun"
|
||||
desc = "A modified version of the basic laser gun, this one fires less concentrated energy bolts designed for target practice."
|
||||
projectile_type = "/obj/item/projectile/beam/practice"
|
||||
clumsy_check = 0
|
||||
|
||||
isHandgun()
|
||||
return 1
|
||||
|
||||
obj/item/weapon/gun/energy/laser/retro
|
||||
name ="retro laser"
|
||||
icon_state = "retro"
|
||||
desc = "An older model of the basic lasergun, no longer used by Nanotrasen's security or military forces. Nevertheless, it is still quite deadly and easy to maintain, making it a favorite amongst pirates and other outlaws."
|
||||
|
||||
isHandgun()
|
||||
return 1
|
||||
|
||||
/obj/item/weapon/gun/energy/laser/captain
|
||||
icon_state = "caplaser"
|
||||
@@ -28,6 +35,8 @@ obj/item/weapon/gun/energy/laser/retro
|
||||
origin_tech = null
|
||||
var/charge_tick = 0
|
||||
|
||||
isHandgun()
|
||||
return 1
|
||||
|
||||
New()
|
||||
..()
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/obj/item/weapon/gun/energy/gun
|
||||
name = "energy gun"
|
||||
desc = "A basic energy-based gun with two settings: Stun and kill."
|
||||
name = "energy carbine"
|
||||
desc = "A basic energy-based carbine with two settings: Stun and kill."
|
||||
icon_state = "energystun100"
|
||||
item_state = null //so the human update icon uses the icon_state instead.
|
||||
fire_sound = 'sound/weapons/Taser.ogg'
|
||||
@@ -125,3 +125,39 @@
|
||||
update_charge()
|
||||
update_reactor()
|
||||
update_mode()
|
||||
|
||||
/obj/item/weapon/gun/energy/gun/pistol
|
||||
name = "energy pistol"
|
||||
desc = "A basic energy-based pistol with two settings: Stun and kill."
|
||||
icon_state = "epistolstun100"
|
||||
item_state = null //so the human update icon uses the icon_state instead.
|
||||
fire_sound = 'sound/weapons/Taser.ogg'
|
||||
fire_delay = 2
|
||||
charge_cost = 100 //How much energy is needed to fire.
|
||||
projectile_type = "/obj/item/projectile/energy/electrode"
|
||||
origin_tech = "combat=2;magnets=1"
|
||||
modifystate = "epistolstun"
|
||||
|
||||
isHandgun()
|
||||
return 1
|
||||
|
||||
mode = 0 //0 = stun, 1 = kill
|
||||
|
||||
|
||||
attack_self(mob/living/user as mob)
|
||||
switch(mode)
|
||||
if(0)
|
||||
mode = 1
|
||||
charge_cost = 150
|
||||
fire_sound = 'sound/weapons/Laser.ogg'
|
||||
user << "\red [src.name] is now set to kill."
|
||||
projectile_type = "/obj/item/projectile/beam/weak"
|
||||
modifystate = "epistolkill"
|
||||
if(1)
|
||||
mode = 0
|
||||
charge_cost = 100
|
||||
fire_sound = 'sound/weapons/Taser.ogg'
|
||||
user << "\red [src.name] is now set to stun."
|
||||
projectile_type = "/obj/item/projectile/energy/electrode"
|
||||
modifystate = "epistolstun"
|
||||
update_icon()
|
||||
@@ -33,8 +33,8 @@
|
||||
projectile_type = "/obj/item/projectile/beam/pulse"
|
||||
return
|
||||
|
||||
isHandgun()
|
||||
return 0
|
||||
// isHandgun()
|
||||
// return 0
|
||||
|
||||
/obj/item/weapon/gun/energy/pulse_rifle/cyborg/load_into_chamber()
|
||||
if(in_chamber)
|
||||
@@ -47,7 +47,7 @@
|
||||
return 1
|
||||
return 0
|
||||
|
||||
|
||||
//can't snip, has dependencies which cannot wield
|
||||
/obj/item/weapon/gun/energy/pulse_rifle/destroyer
|
||||
name = "pulse destroyer"
|
||||
desc = "A heavy-duty, pulse-based energy weapon."
|
||||
@@ -57,7 +57,6 @@
|
||||
user << "\red [src.name] has three settings, and they are all DESTROY."
|
||||
|
||||
|
||||
|
||||
/obj/item/weapon/gun/energy/pulse_rifle/M1911
|
||||
name = "m1911-P"
|
||||
desc = "It's not the size of the gun, it's the size of the hole it puts through people."
|
||||
@@ -87,4 +86,7 @@
|
||||
fire_sound = 'sound/weapons/Laser.ogg'
|
||||
user << "\red [src.name] is now set to kill."
|
||||
projectile_type = "/obj/item/projectile/beam"
|
||||
return
|
||||
return
|
||||
|
||||
isHandgun()
|
||||
return 1
|
||||
@@ -1,3 +1,4 @@
|
||||
/* Snip-snip - no longer needed due to erifles.dm
|
||||
/obj/item/weapon/gun/energy/ionrifle
|
||||
name = "ion rifle"
|
||||
desc = "A man portable anti-armor weapon designed to disable mechanical threats"
|
||||
@@ -16,6 +17,7 @@
|
||||
update_icon()
|
||||
else
|
||||
return
|
||||
*/
|
||||
|
||||
/obj/item/weapon/gun/energy/decloner
|
||||
name = "biological demolecularisor"
|
||||
@@ -127,6 +129,9 @@ obj/item/weapon/gun/energy/staff
|
||||
update_icon()
|
||||
return
|
||||
|
||||
isHandgun()
|
||||
return 1
|
||||
|
||||
/obj/item/weapon/gun/energy/meteorgun
|
||||
name = "meteor gun"
|
||||
desc = "For the love of god, make sure you're aiming this the right way!"
|
||||
@@ -206,6 +211,10 @@ obj/item/weapon/gun/energy/staff/focus
|
||||
origin_tech = "combat=5;plasmatech=4"
|
||||
projectile_type = "/obj/item/projectile/energy/plasma"
|
||||
|
||||
isHandgun()
|
||||
return 1
|
||||
|
||||
/* Snip-snip - no longer needed due to erifles.dm
|
||||
/obj/item/weapon/gun/energy/sniperrifle
|
||||
name = "L.W.A.P. Sniper Rifle"
|
||||
desc = "A rifle constructed of lightweight materials, fitted with a SMART aiming-system scope."
|
||||
@@ -226,7 +235,7 @@ obj/item/weapon/gun/energy/staff/focus
|
||||
|
||||
|
||||
/*
|
||||
This is called from
|
||||
This is called from
|
||||
modules/mob/mob_movement.dm if you move you will be zoomed out
|
||||
modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out.
|
||||
*/
|
||||
@@ -257,4 +266,5 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out.
|
||||
usr.button_pressed_F12(1)
|
||||
zoom = 0
|
||||
usr << "<font color='[zoom?"blue":"red"]'>Zoom mode [zoom?"en":"dis"]abled.</font>"
|
||||
return
|
||||
return */
|
||||
|
||||
|
||||
@@ -9,6 +9,9 @@
|
||||
projectile_type = "/obj/item/projectile/energy/electrode/high"
|
||||
cell_type = "/obj/item/weapon/cell/crap"
|
||||
|
||||
isHandgun()
|
||||
return 1
|
||||
|
||||
/obj/item/weapon/gun/energy/taser/cyborg
|
||||
name = "taser gun"
|
||||
desc = "A small, low capacity gun used for non-lethal takedowns."
|
||||
@@ -57,7 +60,8 @@
|
||||
projectile_type = "/obj/item/projectile/energy/electrode"
|
||||
cell_type = "/obj/item/weapon/cell"
|
||||
|
||||
|
||||
isHandgun()
|
||||
return 1
|
||||
|
||||
/obj/item/weapon/gun/energy/crossbow
|
||||
name = "mini energy-crossbow"
|
||||
@@ -96,7 +100,8 @@
|
||||
update_icon()
|
||||
return
|
||||
|
||||
|
||||
isHandgun()
|
||||
return 1
|
||||
|
||||
/obj/item/weapon/gun/energy/crossbow/largecrossbow
|
||||
name = "Energy Crossbow"
|
||||
|
||||
@@ -17,6 +17,8 @@
|
||||
var/load_method = SPEEDLOADER //0 = Single shells or quick loader, 1 = box, 2 = magazine
|
||||
var/obj/item/ammo_magazine/empty_mag = null
|
||||
|
||||
isHandgun()
|
||||
return 0
|
||||
|
||||
/obj/item/weapon/gun/projectile/New()
|
||||
..()
|
||||
|
||||
@@ -11,8 +11,8 @@
|
||||
|
||||
fire_delay = 0
|
||||
|
||||
isHandgun()
|
||||
return 0
|
||||
// isHandgun()
|
||||
// return 0
|
||||
|
||||
|
||||
/obj/item/weapon/gun/projectile/automatic/mini_uzi
|
||||
|
||||
@@ -9,7 +9,8 @@
|
||||
origin_tech = "combat=2;materials=2;syndicate=8"
|
||||
ammo_type = "/obj/item/ammo_casing/c45"
|
||||
|
||||
|
||||
isHandgun()
|
||||
return 1
|
||||
|
||||
/obj/item/weapon/gun/projectile/deagle
|
||||
name = "desert eagle"
|
||||
@@ -26,6 +27,8 @@
|
||||
update_icon()
|
||||
return
|
||||
|
||||
isHandgun()
|
||||
return 1
|
||||
|
||||
afterattack(atom/target as mob|obj|turf|area, mob/living/user as mob|obj, flag)
|
||||
..()
|
||||
@@ -84,6 +87,9 @@
|
||||
icon_state = "gyropistol"
|
||||
return
|
||||
|
||||
isHandgun()
|
||||
return 1
|
||||
|
||||
/obj/item/weapon/gun/projectile/pistol
|
||||
name = "\improper Stechtkin pistol"
|
||||
desc = "A small, easily concealable gun. Uses 9mm rounds."
|
||||
@@ -96,6 +102,9 @@
|
||||
ammo_type = "/obj/item/ammo_casing/c9mm"
|
||||
load_method = 2
|
||||
|
||||
isHandgun()
|
||||
return 1
|
||||
|
||||
/obj/item/weapon/gun/projectile/pistol/New()
|
||||
..()
|
||||
empty_mag = new /obj/item/ammo_magazine/mc9mm/empty(src)
|
||||
|
||||
@@ -69,6 +69,8 @@
|
||||
desc = initial(desc)
|
||||
user << "<span class='warning'>You remove the modifications on [src]! Now it will fire .38 rounds.</span>"
|
||||
|
||||
isHandgun()
|
||||
return 1
|
||||
|
||||
/obj/item/weapon/gun/projectile/detective/semiauto
|
||||
desc = "A cheap Martian knock-off of a Colt M1911. Uses less-than-lethal .45 rounds."
|
||||
@@ -99,6 +101,9 @@
|
||||
icon_state = "mateba"
|
||||
origin_tech = "combat=2;materials=2"
|
||||
|
||||
isHandgun()
|
||||
return 1
|
||||
|
||||
// A gun to play Russian Roulette!
|
||||
// You can spin the chamber to randomize the position of the bullet.
|
||||
|
||||
@@ -108,6 +113,9 @@
|
||||
max_shells = 6
|
||||
origin_tech = "combat=2;materials=2"
|
||||
|
||||
isHandgun()
|
||||
return 1
|
||||
|
||||
/obj/item/weapon/gun/projectile/russian/New()
|
||||
Spin()
|
||||
update_icon()
|
||||
|
||||
@@ -12,7 +12,7 @@ var/list/beam_master = list()
|
||||
name = "laser"
|
||||
icon_state = "laser"
|
||||
pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE
|
||||
damage = 40
|
||||
damage = 45
|
||||
damage_type = BURN
|
||||
flag = "laser"
|
||||
eyeblur = 4
|
||||
@@ -169,3 +169,12 @@ var/list/beam_master = list()
|
||||
stun = 5
|
||||
weaken = 5
|
||||
stutter = 5
|
||||
|
||||
/obj/item/projectile/beam/weak
|
||||
name = "laser"
|
||||
icon_state = "laser"
|
||||
pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE
|
||||
damage = 30
|
||||
damage_type = BURN
|
||||
flag = "laser"
|
||||
eyeblur = 4
|
||||
@@ -20,7 +20,7 @@
|
||||
M << "\blue Your mind feels focused and undivided."
|
||||
..()
|
||||
return
|
||||
|
||||
|
||||
/* on_mob_life(var/mob/living/M as mob)
|
||||
if(ishuman(M))
|
||||
if((M.mind in ticker.mode.cult))
|
||||
@@ -28,9 +28,9 @@
|
||||
ticker.mode.remove_cultist(M.mind)
|
||||
for(var/mob/O in viewers(M, null))
|
||||
O.show_message(text("\blue []'s eyes blink and become clearer.", M), 1) // So observers know it worked.
|
||||
|
||||
|
||||
return
|
||||
|
||||
|
||||
*/
|
||||
|
||||
/datum/chemical_reaction/methylphenidate
|
||||
@@ -69,9 +69,9 @@
|
||||
ticker.mode.remove_cultist(M.mind)
|
||||
for(var/mob/O in viewers(M, null))
|
||||
O.show_message(text("\blue []'s eyes blink and become clearer.", M), 1) // So observers know it worked.
|
||||
|
||||
|
||||
return
|
||||
|
||||
|
||||
*/
|
||||
|
||||
/datum/chemical_reaction/citalopram
|
||||
@@ -107,17 +107,17 @@
|
||||
..()
|
||||
return
|
||||
|
||||
/* on_mob_life(var/mob/living/M as mob)
|
||||
if(ishuman(M))
|
||||
if((M.mind in ticker.mode.cult))
|
||||
M << "\red The drugs burn your thoughts...the visions stop...and the voices are no more. You are now deaf to the commands of Nar-Sie."
|
||||
ticker.mode.remove_cultist(M.mind)
|
||||
for(var/mob/O in viewers(M, null))
|
||||
O.show_message(text("\blue []'s eyes blink and become clearer.", M), 1) // So observers know it worked.
|
||||
|
||||
return
|
||||
|
||||
*/
|
||||
on_mob_life(var/mob/living/M as mob)
|
||||
if(ishuman(M))
|
||||
if((M.mind in ticker.mode.cult))
|
||||
M << "\red The drugs burn your thoughts...the visions stop...and the voices are no more. You are now deaf to the commands of Nar-Sie."
|
||||
ticker.mode.remove_cultist(M.mind)
|
||||
for(var/mob/O in viewers(M, null))
|
||||
O.show_message(text("\blue []'s eyes blink and become clearer.", M), 1) // So observers know it worked.
|
||||
|
||||
return
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1385,7 +1385,7 @@ datum/design/implant_free
|
||||
build_type = PROTOLATHE
|
||||
materials = list("$metal" = 50, "$glass" = 50)
|
||||
build_path = "/obj/item/weapon/implantcase/freedom"
|
||||
|
||||
|
||||
datum/design/implant_death_alarm
|
||||
name = "death alarm implant"
|
||||
desc = "Alerts others to your death."
|
||||
@@ -1457,7 +1457,7 @@ datum/design/lasercannon
|
||||
req_tech = list("combat" = 4, "materials" = 3, "powerstorage" = 3)
|
||||
build_type = PROTOLATHE
|
||||
materials = list("$metal" = 10000, "$glass" = 1000, "$diamond" = 2000)
|
||||
build_path = "/obj/item/weapon/gun/energy/lasercannon"
|
||||
build_path = "/obj/item/weapon/gun/energy/rifle/lasercannon"
|
||||
locked = 1
|
||||
|
||||
datum/design/decloner
|
||||
|
||||
@@ -324,8 +324,8 @@
|
||||
if(26)
|
||||
//energy gun
|
||||
var/spawn_type = pick(\
|
||||
/obj/item/weapon/gun/energy/laser/practice,\
|
||||
/obj/item/weapon/gun/energy/laser,\
|
||||
/obj/item/weapon/gun/energy/rifle/laser/practice,\
|
||||
/obj/item/weapon/gun/energy/rifle/laser,\
|
||||
/obj/item/weapon/gun/energy/xray,\
|
||||
/obj/item/weapon/gun/energy/laser/captain)
|
||||
if(spawn_type)
|
||||
|
||||
Reference in New Issue
Block a user