diff --git a/code/_onclick/hud/action.dm b/code/_onclick/hud/action.dm index ebf7131e551..f31ac20af2f 100644 --- a/code/_onclick/hud/action.dm +++ b/code/_onclick/hud/action.dm @@ -135,12 +135,12 @@ var/image/img if(owner.action_type == AB_ITEM && owner.target) var/obj/item/I = owner.target - img = image(I.icon, src , I.icon_state) + overlays += I.appearance else if(owner.button_icon && owner.button_icon_state) img = image(owner.button_icon,src,owner.button_icon_state) - img.pixel_x = 0 - img.pixel_y = 0 - overlays += img + img.pixel_x = 0 + img.pixel_y = 0 + overlays += img if(!owner.IsAvailable()) color = rgb(128,0,0,128) diff --git a/code/game/gamemodes/abduction/abduction.dm b/code/game/gamemodes/abduction/abduction.dm index fe821790077..35ce34e0792 100644 --- a/code/game/gamemodes/abduction/abduction.dm +++ b/code/game/gamemodes/abduction/abduction.dm @@ -239,7 +239,7 @@ V.flags |= NODROP agent.equip_to_slot_or_del(V, slot_wear_suit) agent.equip_to_slot_or_del(new /obj/item/weapon/abductor_baton(agent), slot_in_backpack) - agent.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/decloner/alien(agent), slot_belt) + agent.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/alien(agent), slot_belt) agent.equip_to_slot_or_del(new /obj/item/device/abductor/silencer(agent), slot_in_backpack) agent.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/abductor(agent), slot_head) diff --git a/code/game/gamemodes/abduction/abduction_gear.dm b/code/game/gamemodes/abduction/abduction_gear.dm index 89c69232a22..24fc829d65b 100644 --- a/code/game/gamemodes/abduction/abduction_gear.dm +++ b/code/game/gamemodes/abduction/abduction_gear.dm @@ -295,11 +295,14 @@ return 0 return 1 -/obj/item/weapon/gun/energy/decloner/alien +/obj/item/weapon/gun/energy/alien + name = "alien pistol" + desc = "A complicated gun that fires bursts of high-intensity radiation." ammo_type = list(/obj/item/ammo_casing/energy/declone) pin = /obj/item/device/firing_pin/alien icon_state = "alienpistol" item_state = "alienpistol" + origin_tech = "combat=5;materials=4;powerstorage=3" /obj/item/weapon/paper/abductor name = "Dissection Guide" diff --git a/code/modules/projectiles/guns/energy.dm b/code/modules/projectiles/guns/energy.dm index e1a143f2f5d..fcd6363ddbb 100644 --- a/code/modules/projectiles/guns/energy.dm +++ b/code/modules/projectiles/guns/energy.dm @@ -11,6 +11,7 @@ var/select = 1 //The state of the select fire switch. Determines from the ammo_type list what kind of shot is fired next. var/can_charge = 1 //Can it be charged in a recharger? ammo_x_offset = 2 + var/shaded_charge = 0 //if this gun uses a stateful charge bar for more detail /obj/item/weapon/gun/energy/emp_act(severity) power_supply.use(round(power_supply.charge / severity)) @@ -87,9 +88,12 @@ itemState += "[shot.select_name]" if(power_supply.charge < shot.e_cost) overlays += "[icon_state]_empty" - ratio = 0 - for(var/i = ratio, i >= 1, i--) - overlays += image(icon = icon, icon_state = iconState, pixel_x = ammo_x_offset * (i -1)) + else + if(!shaded_charge) + for(var/i = ratio, i >= 1, i--) + overlays += image(icon = icon, icon_state = iconState, pixel_x = ammo_x_offset * (i -1)) + else + overlays += image(icon = icon, icon_state = "[icon_state]_charge[ratio]") if(F) var/iconF = "flight" if(F.on) diff --git a/code/modules/projectiles/guns/energy/laser.dm b/code/modules/projectiles/guns/energy/laser.dm index a3312bbe75e..f6b625d1169 100644 --- a/code/modules/projectiles/guns/energy/laser.dm +++ b/code/modules/projectiles/guns/energy/laser.dm @@ -8,7 +8,7 @@ origin_tech = "combat=3;magnets=2" ammo_type = list(/obj/item/ammo_casing/energy/lasergun) ammo_x_offset = 1 - + shaded_charge = 1 /obj/item/weapon/gun/energy/laser/practice name = "practice laser gun" diff --git a/code/modules/projectiles/guns/energy/nuclear.dm b/code/modules/projectiles/guns/energy/nuclear.dm index e11357de9a7..89c73331581 100644 --- a/code/modules/projectiles/guns/energy/nuclear.dm +++ b/code/modules/projectiles/guns/energy/nuclear.dm @@ -20,6 +20,7 @@ icon_state = "hoslaser" force = 10 ammo_type = list(/obj/item/ammo_casing/energy/electrode/hos, /obj/item/ammo_casing/energy/laser/hos, /obj/item/ammo_casing/energy/disabler) + ammo_x_offset = 4 /obj/item/weapon/gun/energy/gun/dragnet name = "DRAGnet" diff --git a/code/modules/projectiles/guns/energy/pulse.dm b/code/modules/projectiles/guns/energy/pulse.dm index 18706908c93..0e143cefe8e 100644 --- a/code/modules/projectiles/guns/energy/pulse.dm +++ b/code/modules/projectiles/guns/energy/pulse.dm @@ -59,6 +59,6 @@ /obj/item/weapon/gun/energy/pulse/pistol/m1911 name = "\improper M1911-P" desc = "A compact pulse core in a classic handgun frame for Nanotrasen officers. It's not the size of the gun, it's the size of the hole it puts through people." - icon_state = "m1911-p" + icon_state = "m1911" item_state = "gun" cell_type = "/obj/item/weapon/stock_parts/cell/infinite" \ No newline at end of file diff --git a/code/modules/projectiles/guns/energy/special.dm b/code/modules/projectiles/guns/energy/special.dm index 45e936f8867..1401c31937a 100644 --- a/code/modules/projectiles/guns/energy/special.dm +++ b/code/modules/projectiles/guns/energy/special.dm @@ -52,6 +52,7 @@ origin_tech = "materials=2;biotech=3;powerstorage=3" modifystate = 1 var/charge_tick = 0 + ammo_x_offset = 1 /obj/item/weapon/gun/energy/floragun/New() ..() diff --git a/icons/obj/guns/energy.dmi b/icons/obj/guns/energy.dmi index fb3f05626c2..39a49078881 100644 Binary files a/icons/obj/guns/energy.dmi and b/icons/obj/guns/energy.dmi differ