Fixes #4626 and converts it to absolute paths
This commit is contained in:
Werner
2018-04-25 21:59:25 +02:00
committed by Erki
parent 3850b8acc8
commit d4e9990e82
2 changed files with 78 additions and 73 deletions
@@ -11,88 +11,88 @@
volume = 50
var/shaken = 0
on_reagent_change()
/obj/item/weapon/reagent_containers/food/drinks/on_reagent_change()
return
/obj/item/weapon/reagent_containers/food/drinks/attack_self(mob/user as mob)
if(!is_open_container())
if(user.a_intent == I_HURT && !shaken)
shaken = 1
user.visible_message("[user] shakes the [src]!", "You shake the [src]!")
playsound(loc,'sound/items/Shaking_Soda_Can.ogg', rand(10,50), 1)
return
if(shaken)
boom(user)
else
open(user)
/obj/item/weapon/reagent_containers/food/drinks/proc/open(mob/user as mob)
playsound(loc,'sound/effects/canopen.ogg', rand(10,50), 1)
user.visible_message("[user] opens the [src].", "You open the [src] with an audible pop!", "You can hear a pop,")
flags |= OPENCONTAINER
/obj/item/weapon/reagent_containers/food/drinks/proc/boom(mob/user as mob)
user.visible_message("<span class='danger'>The [src] explodes all over [user] as they open it!</span>","<span class='danger'>The [src] explodes all over you as you open it!</span>","You can hear a soda can explode.")
playsound(loc,'sound/items/Soda_Burst.ogg', rand(20,50), 1)
QDEL_NULL(reagents)
flags |= OPENCONTAINER
shaken = 0
/obj/item/weapon/reagent_containers/food/drinks/attack(mob/M as mob, mob/user as mob, def_zone)
if(force && !(flags & NOBLUDGEON) && user.a_intent == I_HURT)
return ..()
if(standard_feed_mob(user, M))
return
attack_self(mob/user as mob)
if(!is_open_container())
if(user.a_intent == I_HURT && !shaken)
shaken = 1
user << "<span class='notice'>You shake the [src]!</span>"
playsound(loc,'sound/items/Shaking_Soda_Can.ogg', rand(10,50), 1)
return
if(shaken)
boom(user)
else
open(user)
return 0
proc/open(mob/user)
playsound(loc,'sound/effects/canopen.ogg', rand(10,50), 1)
user << "<span class='notice'>You open [src] with an audible pop!</span>"
flags |= OPENCONTAINER
/obj/item/weapon/reagent_containers/food/drinks/afterattack(obj/target, mob/user, proximity)
if(!proximity)
return
if(standard_dispenser_refill(user, target))
return
if(standard_pour_into(user, target))
return
return ..()
proc/boom(user)
user << "<span class='danger'>The [src] explodes all over you as you open it!</span>"
playsound(loc,'sound/items/Soda_Burst.ogg', rand(20,50), 1)
QDEL_NULL(reagents)
flags |= OPENCONTAINER
shaken = 0
/obj/item/weapon/reagent_containers/food/drinks/standard_feed_mob(var/mob/user, var/mob/target)
if(!is_open_container())
user << "<span class='notice'>You need to open [src]!</span>"
return 1
return ..()
attack(mob/M as mob, mob/user as mob, def_zone)
if(force && !(flags & NOBLUDGEON) && user.a_intent == I_HURT)
return ..()
/obj/item/weapon/reagent_containers/food/drinks/standard_dispenser_refill(var/mob/user, var/obj/structure/reagent_dispensers/target)
if(!is_open_container())
user << "<span class='notice'>You need to open [src]!</span>"
return 1
return ..()
if(standard_feed_mob(user, M))
return
/obj/item/weapon/reagent_containers/food/drinks/standard_pour_into(var/mob/user, var/atom/target)
if(!is_open_container())
user << "<span class='notice'>You need to open [src]!</span>"
return 1
return ..()
return 0
/obj/item/weapon/reagent_containers/food/drinks/self_feed_message(var/mob/user)
user << "<span class='notice'>You swallow a gulp from \the [src].</span>"
afterattack(obj/target, mob/user, proximity)
if(!proximity) return
/obj/item/weapon/reagent_containers/food/drinks/feed_sound(var/mob/user)
playsound(user.loc, 'sound/items/drink.ogg', rand(10, 50), 1)
if(standard_dispenser_refill(user, target))
return
if(standard_pour_into(user, target))
return
return ..()
standard_feed_mob(var/mob/user, var/mob/target)
if(!is_open_container())
user << "<span class='notice'>You need to open [src]!</span>"
return 1
return ..()
standard_dispenser_refill(var/mob/user, var/obj/structure/reagent_dispensers/target)
if(!is_open_container())
user << "<span class='notice'>You need to open [src]!</span>"
return 1
return ..()
standard_pour_into(var/mob/user, var/atom/target)
if(!is_open_container())
user << "<span class='notice'>You need to open [src]!</span>"
return 1
return ..()
self_feed_message(var/mob/user)
user << "<span class='notice'>You swallow a gulp from \the [src].</span>"
feed_sound(var/mob/user)
playsound(user.loc, 'sound/items/drink.ogg', rand(10, 50), 1)
examine(mob/user)
if(!..(user, 1))
return
if(!reagents || reagents.total_volume == 0)
user << "<span class='notice'>\The [src] is empty!</span>"
else if (reagents.total_volume <= volume * 0.25)
user << "<span class='notice'>\The [src] is almost empty!</span>"
else if (reagents.total_volume <= volume * 0.66)
user << "<span class='notice'>\The [src] is half full!</span>"
else if (reagents.total_volume <= volume * 0.90)
user << "<span class='notice'>\The [src] is almost full!</span>"
else
user << "<span class='notice'>\The [src] is full!</span>"
/obj/item/weapon/reagent_containers/food/drinks/examine(mob/user)
if(!..(user, 1))
return
if(!reagents || reagents.total_volume == 0)
user << "<span class='notice'>\The [src] is empty!</span>"
else if (reagents.total_volume <= volume * 0.25)
user << "<span class='notice'>\The [src] is almost empty!</span>"
else if (reagents.total_volume <= volume * 0.66)
user << "<span class='notice'>\The [src] is half full!</span>"
else if (reagents.total_volume <= volume * 0.90)
user << "<span class='notice'>\The [src] is almost full!</span>"
else
user << "<span class='notice'>\The [src] is full!</span>"
////////////////////////////////////////////////////////////////////////////////