mirror of
https://github.com/Aurorastation/Aurora-Old.git
synced 2026-08-24 21:26:13 +01:00
Snowflake accuracy rework.
shotguns accurate up close. rapid accuracy drops after five tiles. sniper rifles accuracybuffed. Added accuracy to modularguns, which are now finished except for sprites. Energy weapons made slightly more accurate than bulletweapons.
This commit is contained in:
@@ -44,8 +44,8 @@
|
||||
var/force_unwielded = 0 //Force modification, because striking someone with a rifle held in two hands -hurts-
|
||||
var/force_wielded = 0
|
||||
|
||||
var/accuracy = -30 //goes into projectile.dm to provide individual offsets for each gun. negative to increase base accuracy
|
||||
var/rangedrop = 5 //how much accuracy the average gun loses for every tile
|
||||
var/accuracy = 0 //goes into projectile.dm to provide individual offsets for each gun. negative to increase base accuracy
|
||||
var/rangedrop = 0 //how much accuracy the average gun loses for every tile
|
||||
|
||||
proc/can_wield() //Override in order to make a weapon two handed, remember to add toggle_wield(mob/user as mob) in the weapon somewhere
|
||||
return 0 //Override /Fire(..) to force the weapon to be two handed
|
||||
|
||||
@@ -59,7 +59,7 @@
|
||||
fire_delay_unwielded = 24 //4x difference, let's be an arse about this, and push the issue
|
||||
force_wielded = 10 //10 is amped force, due to better grip
|
||||
force_unwielded = 5 //5 is normal force
|
||||
|
||||
rangedrop = -5 //lasers are more accurate than bullets. fully accurate up to three tiles unaimed. 40% miss at 7 tiles. aimed: 6 tiles accurate, 10% miss at 7
|
||||
/*
|
||||
/obj/item/weapon/gun/energy/rifle/laser/update_icon() //Currently only here to fuck with the on-mob icons.
|
||||
icon_state = "laser[wielded]"
|
||||
@@ -128,6 +128,9 @@ Commenting out right now, due to a lack of sprites existing. I hate on-mob weapo
|
||||
fire_delay_unwielded = 105 //3x difference, let's be an arse about this, and push the issue
|
||||
var/zoom = 0
|
||||
|
||||
accuracy = -90
|
||||
rangedrop = -5 // fully accurate up to first 10 tiles. the last 4 zoomed tiles you are on your
|
||||
|
||||
/obj/item/weapon/gun/energy/rifle/sniperrifle/dropped(mob/user)
|
||||
user.client.view = world.view
|
||||
..()
|
||||
|
||||
@@ -293,18 +293,20 @@
|
||||
else if(delaymod.rating == 3)
|
||||
fire_delay = 2
|
||||
|
||||
if(!targetmod) // TBD after projectile accuracy. extreme placeholder values.
|
||||
// miss_modifier = 0
|
||||
if(!targetmod)
|
||||
accuracy = 30 //positive. subtracts to 0 accuracy base, 30 if aimed. fully accurate up to two tiles *if aimed*, -15% per tile after
|
||||
canzoom = 0
|
||||
else if(targetmod.rating == 1)
|
||||
// miss_modifier = -30
|
||||
accuracy = -30 //standard accuracy. standard gun.
|
||||
canzoom = 0
|
||||
else if(targetmod.rating == 2)
|
||||
// miss_modifier = -60
|
||||
canzoom = 1 //advanced and up scanning modules let you zoom in.
|
||||
accuracy = -60 //Fully accurate up to 6 tiles aimed. 15% drop per tile after that for ~-120% accuracy at 14 tiles. If you want to snipe things, get phasic.
|
||||
canzoom = 1 //advanced and up scanning modules let you zoom in. good luck hitting without phasic though pal. good luck.
|
||||
else if(targetmod.rating == 3)
|
||||
// miss_modifier = -90
|
||||
rangedrop = -5 //Accurate aimed up to 12 tiles. 20% miss at 14. 9 tiles and 50% miss at 14 without aiming.
|
||||
accuracy = -90 //If you're paying a premium for accuracy, you can have accuracy.
|
||||
canzoom = 1
|
||||
|
||||
if(!powermod)
|
||||
charge_cost = 1.5*charge_cost
|
||||
else if(powermod.rating == 1)
|
||||
|
||||
@@ -20,6 +20,9 @@
|
||||
var/pumped = 0
|
||||
var/obj/item/ammo_casing/current_shell = null
|
||||
|
||||
accuracy = -40 //-60 full accuracy up to 3 tiles unaimed. aimed 5 tiles accurate. 40% misschance at 7.
|
||||
rangedrop = 5 //loses 20 accuracy per distance tile. unaimed 70% chance to miss at 7 tiles.
|
||||
|
||||
icon_action_button = "action_blank"
|
||||
action_button_name = "Wield the shotgun"
|
||||
|
||||
@@ -91,6 +94,9 @@
|
||||
origin_tech = "combat=3;materials=1"
|
||||
ammo_type = "/obj/item/ammo_casing/shotgun/beanbag"
|
||||
|
||||
accuracy = -40 //-60 full accuracy up to 3 tiles unaimed. aimed 5 tiles accurate. 40% misschance at 7.
|
||||
rangedrop = 5 //loses 20 accuracy per distance tile. unaimed 70% chance to miss at 7 tiles.
|
||||
|
||||
icon_action_button = "action_blank"
|
||||
action_button_name = "Wield the double-barreled shotgun"
|
||||
|
||||
|
||||
@@ -93,8 +93,9 @@
|
||||
var/obj/item/weapon/gun/daddy = shot_from //Kinda balanced by fact you need like 2 seconds to aim
|
||||
if (daddy.target && original in daddy.target) //As opposed to no-delay pew pew
|
||||
miss_modifier += -30
|
||||
def_zone = get_zone_with_miss_chance(def_zone, M, miss_modifier + 10*distance) // add +daddy.missmod vars to gun and this. snowflake accuracy
|
||||
|
||||
M << "\red [miss_modifier]!"
|
||||
def_zone = get_zone_with_miss_chance(def_zone, M, miss_modifier + 15*distance + daddy.accuracy + daddy.rangedrop) // add +daddy.missmod vars to gun and this. snowflake accuracy
|
||||
//moving def_zone to be a child of the daddyblock because i need the daddy
|
||||
if(!def_zone)
|
||||
visible_message("\blue \The [src] misses [M] narrowly!")
|
||||
forcedodge = -1
|
||||
|
||||
Reference in New Issue
Block a user