mirror of
https://github.com/PolarisSS13/Polaris.git
synced 2025-12-25 09:31:30 +00:00
Added Sue's new weapon code and sprites.
This commit is contained in:
@@ -98,3 +98,10 @@
|
||||
desc = "A 7.62 bullet casing."
|
||||
caliber = "a762"
|
||||
projectile_type = "/obj/item/projectile/bullet/a762"
|
||||
|
||||
/obj/item/ammo_casing/rocket
|
||||
name = "rocket shell"
|
||||
desc = "A high explosive designed to be fired from a launcher."
|
||||
icon_state = "rocketshell"
|
||||
projectile_type = "/obj/item/missile"
|
||||
caliber = "rocket"
|
||||
|
||||
@@ -193,4 +193,49 @@ obj/item/weapon/gun/energy/staff/focus
|
||||
charge_cost = 100
|
||||
user << "\red The [src.name] will now strike only a single person."
|
||||
projectile_type = "/obj/item/projectile/forcebolt"
|
||||
*/
|
||||
*/
|
||||
|
||||
/obj/item/weapon/gun/energy/toxgun
|
||||
name = "plasma pistol"
|
||||
desc = "A specialized firearm designed to fire lethal bolts of toxins."
|
||||
icon_state = "toxgun"
|
||||
fire_sound = 'sound/effects/stealthoff.ogg'
|
||||
w_class = 3.0
|
||||
origin_tech = "combat=5;plasmatech=4"
|
||||
projectile_type = "/obj/item/projectile/energy/plasma"
|
||||
|
||||
/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."
|
||||
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
|
||||
|
||||
var/zoom = 0
|
||||
|
||||
dropped(mob/user)
|
||||
usr.client.view = world.view
|
||||
zoom = 0
|
||||
|
||||
/obj/item/weapon/gun/energy/sniperrifle/verb/zoom()
|
||||
set category = "Special Verbs"
|
||||
set name = "Zoom"
|
||||
set popup_menu = 0
|
||||
if(usr.stat || !(istype(usr,/mob/living/carbon/human)))
|
||||
usr << "No."
|
||||
return
|
||||
|
||||
src.zoom = !src.zoom
|
||||
usr << ("<font color='[src.zoom?"blue":"red"]'>Zoom mode [zoom?"en":"dis"]abled.</font>")
|
||||
if(zoom)
|
||||
usr.client.view = 12
|
||||
usr << sound('sound/mecha/imag_enh.ogg',volume=50)
|
||||
else
|
||||
usr.client.view = world.view//world.view - default mob view size
|
||||
return
|
||||
52
code/modules/projectiles/guns/projectile/rocket.dm
Normal file
52
code/modules/projectiles/guns/projectile/rocket.dm
Normal file
@@ -0,0 +1,52 @@
|
||||
/obj/item/weapon/gun/rocketlauncher
|
||||
var/projectile
|
||||
name = "rocket launcher"
|
||||
desc = "MAGGOT."
|
||||
icon_state = "rocket"
|
||||
item_state = "rocket"
|
||||
w_class = 4.0
|
||||
throw_speed = 2
|
||||
throw_range = 10
|
||||
force = 5.0
|
||||
flags = FPRINT | TABLEPASS | CONDUCT | USEDELAY
|
||||
origin_tech = "combat=8;materials=5"
|
||||
projectile = /obj/item/missile
|
||||
var/missile_speed = 2
|
||||
var/missile_range = 30
|
||||
var/max_rockets = 1
|
||||
var/list/rockets = new/list()
|
||||
|
||||
/obj/item/weapon/gun/rocketlauncher/examine()
|
||||
set src in view()
|
||||
..()
|
||||
if (!(usr in view(2)) && usr!=src.loc) return
|
||||
usr << "\blue [rockets.len] / [max_rockets] rockets."
|
||||
|
||||
/obj/item/weapon/gun/rocketlauncher/attackby(obj/item/I as obj, mob/user as mob)
|
||||
if(istype(I, /obj/item/ammo_casing/rocket))
|
||||
if(rockets.len < max_rockets)
|
||||
user.drop_item()
|
||||
I.loc = src
|
||||
rockets += I
|
||||
user << "\blue You put the rocket in [src]."
|
||||
user << "\blue [rockets.len] / [max_rockets] rockets."
|
||||
else
|
||||
usr << "\red [src] cannot hold more rockets."
|
||||
|
||||
/obj/item/weapon/gun/rocketlauncher/can_fire()
|
||||
return rockets.len
|
||||
|
||||
/obj/item/weapon/gun/rocketlauncher/Fire(atom/target as mob|obj|turf|area, mob/living/user as mob|obj, params, reflex = 0)
|
||||
if(rockets.len)
|
||||
var/obj/item/ammo_casing/rocket/I = rockets[1]
|
||||
var/obj/item/missile/M = new projectile(user.loc)
|
||||
playsound(user.loc, 'sound/effects/bang.ogg', 50, 1)
|
||||
M.primed = 1
|
||||
M.throw_at(target, missile_range, missile_speed)
|
||||
message_admins("[key_name_admin(user)] fired a rocket from a rocket launcher ([src.name]).")
|
||||
log_game("[key_name_admin(user)] used a rocket launcher ([src.name]).")
|
||||
rockets -= I
|
||||
del(I)
|
||||
return
|
||||
else
|
||||
usr << "\red [src] is empty."
|
||||
@@ -160,4 +160,12 @@ var/list/beam_master = list()
|
||||
var/mob/living/carbon/human/M = target
|
||||
if((istype(M.wear_suit, /obj/item/clothing/suit/bluetag))||(istype(M.wear_suit, /obj/item/clothing/suit/redtag)))
|
||||
M.Weaken(5)
|
||||
return 1
|
||||
return 1
|
||||
|
||||
/obj/item/projectile/beam/sniper
|
||||
name = "sniper beam"
|
||||
icon_state = "xray"
|
||||
damage = 60
|
||||
stun = 5
|
||||
weaken = 5
|
||||
stutter = 5
|
||||
@@ -59,5 +59,10 @@
|
||||
damage_type = TOX
|
||||
weaken = 5
|
||||
|
||||
|
||||
/obj/item/projectile/energy/plasma
|
||||
name = "plasma bolt"
|
||||
icon_state = "energy"
|
||||
damage = 20
|
||||
damage_type = TOX
|
||||
irradiate = 20
|
||||
|
||||
|
||||
Reference in New Issue
Block a user