pumpkin fix and sprite improvement

This commit is contained in:
alsoandanswer
2019-11-13 20:56:37 +08:00
parent c5a729d830
commit b425658bb7
12 changed files with 169 additions and 28 deletions
+1
View File
@@ -76,6 +76,7 @@
name = "candle"
icon = 'icons/obj/candle.dmi'
icon_state = "candle4"
drop_sound = 'sound/items/drop/gloves.ogg'
/obj/item/trash/liquidfood
name = "\improper \"LiquidFood\" ration"
+15 -8
View File
@@ -4,13 +4,14 @@
icon = 'icons/obj/candle.dmi'
icon_state = "candle1"
item_state = "candle1"
drop_sound = 'sound/items/drop/gloves.ogg'
w_class = 1
light_color = "#E09D37"
var/wax = 2000
/obj/item/weapon/flame/candle/New()
/obj/item/weapon/flame/candle/Initialize()
. = ..()
wax = rand(800, 1000) // Enough for 27-33 minutes. 30 minutes on average.
..()
/obj/item/weapon/flame/candle/update_icon()
var/i
@@ -38,22 +39,26 @@
/obj/item/weapon/flame/candle/proc/light(var/flavor_text = "<span class='notice'>\The [usr] lights the [name].</span>")
if(!src.lit)
src.lit = 1
src.lit = TRUE
playsound(src.loc, 'sound/items/cigs_lighters/cig_light.ogg', 50, 1)
//src.damtype = "fire"
for(var/mob/O in viewers(usr, null))
O.show_message(flavor_text, 1)
set_light(CANDLE_LUM)
update_icon()
START_PROCESSING(SSprocessing, src)
/obj/item/weapon/flame/candle/process()
/obj/item/weapon/flame/candle/process(mob/user as mob)
if(!lit)
return
update_icon()
wax--
if(!wax)
new/obj/item/trash/candle(src.loc)
new /obj/item/trash/candle(src.loc)
if(istype(src.loc, /mob))
src.dropped()
to_chat(user, span("notice", "The candle burns out."))
playsound(src.loc, 'sound/items/cigs_lighters/cig_snuff.ogg', 50, 1)
STOP_PROCESSING(SSprocessing, src)
qdel(src)
update_icon()
@@ -63,6 +68,8 @@
/obj/item/weapon/flame/candle/attack_self(mob/user as mob)
if(lit)
lit = 0
lit = FALSE
to_chat(user, span("notice", "You snuff out the flame."))
playsound(src.loc, 'sound/items/cigs_lighters/cig_snuff.ogg', 50, 1)
update_icon()
set_light(0)
set_light(0)
@@ -13,12 +13,15 @@
* Cigarette Box
*/
/obj/item/weapon/storage/fancy/
/obj/item/weapon/storage/fancy
name = "donut box"
desc = "A box of half-a-dozen donuts."
icon = 'icons/obj/food.dmi'
icon_state = "donutbox6"
name = "donut box"
var/icon_type = "donut"
var/storage_type = "box"
drop_sound = 'sound/items/drop/box.ogg'
use_sound = 'sound/items/storage/box.ogg'
/obj/item/weapon/storage/fancy/update_icon(var/itemremoved = 0)
var/total_contents = src.contents.len - itemremoved
@@ -43,11 +46,12 @@
*/
/obj/item/weapon/storage/fancy/egg_box
name = "egg box"
desc = "A carton of eggs."
icon = 'icons/obj/food.dmi'
icon_state = "eggbox"
center_of_mass = list("x" = 16,"y" = 7)
icon_type = "egg"
name = "egg box"
center_of_mass = list("x" = 16,"y" = 7)
storage_slots = 12
can_hold = list(
/obj/item/weapon/reagent_containers/food/snacks/egg,
@@ -79,8 +83,9 @@
desc = "A box of crayons for all your rune drawing needs."
icon = 'icons/obj/crayons.dmi'
icon_state = "crayonbox"
w_class = 2.0
icon_type = "crayon"
drop_sound = 'sound/items/drop/box.ogg'
w_class = 2.0
can_hold = list(
/obj/item/weapon/pen/crayon
)
@@ -123,6 +128,8 @@
icon = 'icons/obj/cigs_lighters.dmi'
icon_state = "cigpacket"
item_state = "cigpacket"
drop_sound = 'sound/items/drop/gloves.ogg'
use_sound = 'sound/items/storage/paper.ogg'
w_class = 1
throwforce = 2
slot_flags = SLOT_BELT
@@ -204,6 +211,8 @@
icon_state = "cigarcase"
item_state = "cigarcase"
icon = 'icons/obj/cigs_lighters.dmi'
drop_sound = 'sound/items/drop/gloves.ogg'
use_sound = 'sound/items/storage/paper.ogg'
w_class = 1
throwforce = 2
slot_flags = SLOT_BELT
@@ -251,10 +260,11 @@
*/
/obj/item/weapon/storage/fancy/vials
name = "vial storage box"
icon = 'icons/obj/vialbox.dmi'
icon_state = "vialbox6"
icon_type = "vial"
name = "vial storage box"
drop_sound = 'sound/items/drop/metalboots.ogg'
storage_slots = 6
can_hold = list(/obj/item/weapon/reagent_containers/glass/beaker/vial)
starts_with = list(/obj/item/weapon/reagent_containers/glass/beaker/vial = 6)
@@ -265,6 +275,7 @@
icon = 'icons/obj/vialbox.dmi'
icon_state = "vialbox0"
item_state = "syringe_kit"
drop_sound = 'sound/items/drop/metalboots.ogg'
max_w_class = 2
can_hold = list(/obj/item/weapon/reagent_containers/glass/beaker/vial)
max_storage_space = 12 //The sum of the w_classes of all the items in this storage item.
+1 -1
View File
@@ -691,7 +691,7 @@
/obj/item/clothing/head/kitty = 0.2,
/obj/item/clothing/head/pirate = 0.2,
/obj/item/clothing/head/plaguedoctorhat = 0.3,
/obj/item/clothing/head/pumpkinhead = 0.4,
/obj/item/clothing/head/pumpkin/lantern = 0.4,
/obj/item/clothing/head/redcoat = 0.2,
/obj/item/clothing/head/richard = 0.3,
/obj/item/clothing/head/soft/rainbow = 0.7,
+6 -6
View File
@@ -1,7 +1,7 @@
/obj/item/clothing/head/hardhat
name = "hard hat"
desc = "A piece of headgear used in dangerous working conditions to protect the head. Comes with a built-in flashlight."
icon_state = "hardhat0_yellow"
icon_state = "hardhat_yellow"
action_button_name = "Toggle Headlamp"
brightness_on = 4 //luminosity when on
light_overlay = "hardhat_light"
@@ -12,23 +12,23 @@
drop_sound = 'sound/items/drop/helm.ogg'
/obj/item/clothing/head/hardhat/orange
icon_state = "hardhat0_orange"
icon_state = "hardhat_orange"
/obj/item/clothing/head/hardhat/red
icon_state = "hardhat0_red"
name = "firefighter helmet"
icon_state = "hardhat_red"
heat_protection = HEAD
max_heat_protection_temperature = FIRE_HELMET_MAX_HEAT_PROTECTION_TEMPERATURE
/obj/item/clothing/head/hardhat/white
icon_state = "hardhat0_white"
desc = "A piece of headgear used in dangerous working conditions to protect the head. Comes with a built-in flashlight. This one looks heat-resistant."
icon_state = "hardhat_white"
heat_protection = HEAD
max_heat_protection_temperature = FIRE_HELMET_MAX_HEAT_PROTECTION_TEMPERATURE
/obj/item/clothing/head/hardhat/dblue
icon_state = "hardhat0_dblue"
item_state = "hardhat0_dblue"
icon_state = "hardhat_dblue"
item_state = "hardhat_dblue"
/obj/item/clothing/head/hardhat/red/atmos
name = "atmospheric firefighter helmet"
+86 -6
View File
@@ -139,16 +139,96 @@
/*
* Pumpkin head
*/
/obj/item/clothing/head/pumpkinhead
/obj/item/clothing/head/pumpkin
name = "carved pumpkin"
desc = "A jack o' lantern! Believed to ward off evil spirits."
icon_state = "hardhat0_pumpkin"//Could stand to be renamed
desc = "A pumpkin with a spooky face carved on it. Looks like it needs a candle."
icon_state = "pumpkin_carved"
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|BLOCKHAIR
body_parts_covered = HEAD|FACE|EYES
brightness_on = 2
light_overlay = "helmet_light"
w_class = 3
drop_sound = 'sound/items/drop/herb.ogg'
w_class = 3
throwforce = 1
throw_speed = 0.5
/obj/item/clothing/head/pumpkin/attackby(var/obj/O, mob/user as mob)
if(istype(O, /obj/item/weapon/flame/candle))
var/obj/item/weapon/flame/candle/c = O
var/candle_wax = c.wax
to_chat(user, "You add [O] to [src].")
playsound(src.loc, 'sound/items/drop/gloves.ogg', 50, 1)
qdel(O)
var/obj/item/clothing/head/pumpkin/lantern/L = new /obj/item/clothing/head/pumpkin/lantern(user.loc)
L.wax = candle_wax
user.put_in_hands(L)
qdel(src)
return
/obj/item/clothing/head/pumpkin/lantern
name = "jack o' lantern"
desc = "A pumpkin with a spooky face carved on it, with a candle inside. Believed to ward off evil spirits."
light_color = "#E09D37"
var/wax = 900
var/lit = FALSE
/obj/item/clothing/head/pumpkin/lantern/update_icon()
icon_state = "pumpkin_carved[lit ? "_lit" : ""]"
if(ismob(loc))
var/mob/living/M = loc
M.update_inv_head(0)
M.update_inv_l_hand(0)
M.update_inv_r_hand(1)
/obj/item/clothing/head/pumpkin/lantern/attackby(obj/item/weapon/W as obj, mob/user as mob)
..()
if(W.iswelder())
var/obj/item/weapon/weldingtool/WT = W
if(WT.isOn()) //Badasses dont get blinded by lighting their candle with a welding tool
light("<span class='notice'>\The [user] casually lights the [name] with [W].</span>")
else if(isflamesource(W))
light()
else if(istype(W, /obj/item/weapon/flame/candle))
var/obj/item/weapon/flame/candle/C = W
if(C.lit)
light()
/obj/item/clothing/head/pumpkin/lantern/proc/light(var/flavor_text = "<span class='notice'>\The [usr] lights the [name].</span>")
if(!src.lit)
src.lit = TRUE
playsound(src.loc, 'sound/items/cigs_lighters/cig_light.ogg', 50, 1)
//src.damtype = "fire"
for(var/mob/O in viewers(usr, null))
O.show_message(flavor_text, 1)
set_light(CANDLE_LUM)
update_icon()
update_clothing_icon()
START_PROCESSING(SSprocessing, src)
/obj/item/clothing/head/pumpkin/lantern/process(mob/user as mob)
if(!lit)
return
wax--
if(!wax)
new /obj/item/clothing/head/pumpkin(src.loc)
new /obj/item/trash/candle(src.loc)
if(istype(src.loc, /mob))
src.dropped()
to_chat(user, span("notice", "The candle burns out."))
playsound(src.loc, 'sound/items/cigs_lighters/cig_snuff.ogg', 50, 1)
STOP_PROCESSING(SSprocessing, src)
qdel(src)
update_icon()
if(istype(loc, /turf)) //start a fire if possible
var/turf/T = loc
T.hotspot_expose(700, 5)
/obj/item/clothing/head/pumpkin/lantern/attack_self(mob/user as mob)
if(lit)
lit = FALSE
to_chat(user, span("notice", "You snuff out the flame."))
playsound(src.loc, 'sound/items/cigs_lighters/cig_snuff.ogg', 50, 1)
update_icon()
set_light(0)
/*
* Kitty ears
+1 -1
View File
@@ -189,7 +189,7 @@
else if(W.sharp && !W.noslice)
if(seed.kitchen_tag == "pumpkin") // Ugggh these checks are awful.
user.show_message("<span class='notice'>You carve a face into [src]!</span>", 1)
new /obj/item/clothing/head/pumpkinhead (user.loc)
user.put_in_hands(new /obj/item/clothing/head/pumpkin)
qdel(src)
return
else if(seed.chems)
+42
View File
@@ -0,0 +1,42 @@
################################
# Example Changelog File
#
# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb.
#
# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.)
# When it is, any changes listed below will disappear.
#
# Valid Prefixes:
# bugfix
# wip (For works in progress)
# tweak
# soundadd
# sounddel
# rscadd (general adding of nice things)
# rscdel (general deleting of nice things)
# imageadd
# imagedel
# maptweak
# spellcheck (typo fixes)
# experiment
# balance
# admin
# backend
# security
# refactor
#################################
# Your name.
author: Wowzewow
# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again.
delete-after: True
# Any changes you've made. See valid prefix list above.
# INDENT WITH TWO SPACES. NOT TABS. SPACES.
# SCREW THIS UP AND IT WON'T WORK.
# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries.
# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog.
changes:
- bugfix: "Fixes Jack O' Lanterns. Carve a pumpkin, shove a candle in it and light it with a lighter."
- imageadd: "New pumpkin, carved pumpkin, jack o' lantern and candle sprites."
Binary file not shown.

Before

Width:  |  Height:  |  Size: 175 KiB

After

Width:  |  Height:  |  Size: 173 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 95 KiB

After

Width:  |  Height:  |  Size: 95 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB