mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-28 15:39:57 +01:00
Adhomian typewriter and camera (#17999)
* things * paper * oh the misery * fixes * stuff * aaa * Fixes * more fixes * more fixes * final fixes i hope * Fixes * destroy fix * more destroy * white space * Update code/modules/paperwork/typewriter.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/paperwork/typewriter.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/paperwork/typewriter.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/paperwork/typewriter.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/paperwork/typewriter.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/paperwork/typewriter.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/paperwork/typewriter.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/paperwork/typewriter.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/paperwork/typewriter.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/paperwork/typewriter.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/paperwork/typewriter.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> --------- Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> Co-authored-by: Matt Atlas <mattiathebest2000@hotmail.it>
This commit is contained in:
co-authored by
Fluffy
Matt Atlas
parent
e0bc64991b
commit
0b8ec5726a
@@ -2887,6 +2887,7 @@
|
||||
#include "code\modules\paperwork\photography.dm"
|
||||
#include "code\modules\paperwork\silicon_photography.dm"
|
||||
#include "code\modules\paperwork\stamps.dm"
|
||||
#include "code\modules\paperwork\typewriter.dm"
|
||||
#include "code\modules\power\apc.dm"
|
||||
#include "code\modules\power\batteryrack.dm"
|
||||
#include "code\modules\power\breaker_box.dm"
|
||||
|
||||
@@ -592,7 +592,8 @@ var/list/asset_datums = list()
|
||||
"copt-b.woff" = 'html/fonts/OFL/Copt-B.woff',
|
||||
"ducados.woff" = 'html/fonts/OFL/Ducados.woff',
|
||||
"kawkabmono.woff" = 'html/fonts/OFL/KawkabMono.woff',
|
||||
"kaushanscript.woff" = 'html/fonts/OFL/KaushanScript.woff'
|
||||
"kaushanscript.woff" = 'html/fonts/OFL/KaushanScript.woff',
|
||||
"typewriter.woff" = 'html/fonts/OFL/typewriter.woff'
|
||||
)
|
||||
cross_round_cachable = TRUE
|
||||
|
||||
|
||||
@@ -658,3 +658,17 @@
|
||||
earrings["adhomian pearls earrings"] = /obj/item/clothing/ears/earring/tajara
|
||||
earrings["adhomian golden earrings"] = /obj/item/clothing/ears/earring/tajara/gold
|
||||
gear_tweaks += new /datum/gear_tweak/path(earrings)
|
||||
|
||||
/datum/gear/tajara_camera
|
||||
display_name = "adhomian camera"
|
||||
path = /obj/item/device/camera/adhomai
|
||||
whitelisted = list(SPECIES_TAJARA, SPECIES_TAJARA_ZHAN, SPECIES_TAJARA_MSAI)
|
||||
sort_category = "Xenowear - Tajara"
|
||||
flags = GEAR_HAS_DESC_SELECTION
|
||||
|
||||
/datum/gear/typewriter
|
||||
display_name = "adhomian portable typewriter"
|
||||
whitelisted = list(SPECIES_TAJARA, SPECIES_TAJARA_ZHAN, SPECIES_TAJARA_MSAI)
|
||||
sort_category = "Xenowear - Tajara"
|
||||
path = /obj/item/typewriter_case
|
||||
flags = GEAR_HAS_DESC_SELECTION
|
||||
|
||||
@@ -40,6 +40,7 @@
|
||||
var/const/signfont = "Times New Roman"
|
||||
var/const/crayonfont = "Comic Sans MS"
|
||||
var/const/fountainfont = "Segoe Script"
|
||||
var/const/typewriterfont = "Typewriter"
|
||||
|
||||
drop_sound = 'sound/items/drop/paper.ogg'
|
||||
pickup_sound = 'sound/items/pickup/paper.ogg'
|
||||
@@ -307,7 +308,7 @@
|
||||
|
||||
return signfont
|
||||
|
||||
/obj/item/paper/proc/parsepencode(t, obj/item/pen/P, mob/user, iscrayon, isfountain)
|
||||
/obj/item/paper/proc/parsepencode(t, obj/item/pen/P, mob/user, iscrayon, isfountain, istypewriter)
|
||||
t = parse_languages(user, t, TRUE)
|
||||
t = replacetext(t, "\[sign\]", "<font face=\"[get_signfont(P, user)]\">[get_signature(P, user)]</font>")
|
||||
|
||||
@@ -340,10 +341,25 @@
|
||||
t = replacetext(t, "\[logo_golden\]", "")
|
||||
t = replacetext(t, "\[barcode\]", "")
|
||||
|
||||
if(istypewriter)
|
||||
t = replacetext(t, "\[*\]", "")
|
||||
t = replacetext(t, "\[hr\]", "")
|
||||
t = replacetext(t, "\[small\]", "")
|
||||
t = replacetext(t, "\[/small\]", "")
|
||||
t = replacetext(t, "\[list\]", "")
|
||||
t = replacetext(t, "\[/list\]", "")
|
||||
t = replacetext(t, "\[table\]", "")
|
||||
t = replacetext(t, "\[/table\]", "")
|
||||
t = replacetext(t, "\[row\]", "")
|
||||
t = replacetext(t, "\[cell\]", "")
|
||||
t = replacetext(t, "\[barcode\]", "")
|
||||
|
||||
if(iscrayon)
|
||||
t = "<font face=\"[crayonfont]\" color=[P ? P.colour : "black"]><b>[t]</b></font>"
|
||||
else if(isfountain)
|
||||
t = "<font face=\"[fountainfont]\" color=[P ? P.colour : "black"]><i>[t]</i></font>"
|
||||
else if(istypewriter)
|
||||
t = "<font face=\"[typewriterfont]\" color=[P ? P.colour : "black"]><i>[t]</i></font>"
|
||||
else
|
||||
t = "<font face=\"[deffont]\" color=[P ? P.colour : "black"]>[t]</font>"
|
||||
|
||||
@@ -460,11 +476,23 @@
|
||||
return
|
||||
|
||||
var/obj/item/i = usr.get_active_hand() // Check to see if he still got that darn pen, also check if he's using a crayon or pen.
|
||||
|
||||
if(!i && istype(loc, /obj/item/portable_typewriter))
|
||||
var/obj/item/portable_typewriter/T = loc
|
||||
if(T.pen)
|
||||
i = T.pen
|
||||
|
||||
if(i && istype(i, /obj/item/portable_typewriter) || !i && istype(loc, /obj/item/portable_typewriter))
|
||||
var/obj/item/portable_typewriter/T = i
|
||||
if(T.pen)
|
||||
i = T.pen
|
||||
|
||||
if(!i || !i.ispen())
|
||||
i = usr.get_inactive_hand()
|
||||
var/obj/item/clipboard/c
|
||||
var/iscrayon = FALSE
|
||||
var/isfountain = FALSE
|
||||
var/istypewriter = FALSE
|
||||
if(!i.ispen())
|
||||
if(usr.back && istype(usr.back,/obj/item/rig))
|
||||
var/obj/item/rig/r = usr.back
|
||||
@@ -473,12 +501,10 @@
|
||||
i = m.device
|
||||
else
|
||||
return
|
||||
else if(istype(src.loc, /obj/item/clipboard))
|
||||
if(istype(src.loc, /obj/item/clipboard))
|
||||
c = src.loc
|
||||
if(c.haspen)
|
||||
i = c.haspen
|
||||
else
|
||||
return
|
||||
else
|
||||
return
|
||||
|
||||
@@ -492,13 +518,15 @@
|
||||
else
|
||||
isfountain = FALSE
|
||||
|
||||
if(istype(i, /obj/item/pen/typewriter))
|
||||
istypewriter = TRUE
|
||||
|
||||
if(!write_check(usr))
|
||||
return
|
||||
|
||||
var/last_fields_value = fields
|
||||
|
||||
t = parsepencode(t, i, usr, iscrayon, isfountain) // Encode everything from pencode to html
|
||||
|
||||
t = parsepencode(t, i, usr, iscrayon, isfountain, istypewriter) // Encode everything from pencode to html
|
||||
|
||||
if(fields > 50)//large amount of fields creates a heavy load on the server, see updateinfolinks() and addtofield()
|
||||
to_chat(usr, SPAN_WARNING("Too many fields. Sorry, you can't do this."))
|
||||
@@ -518,7 +546,11 @@
|
||||
paper_win.add_stylesheet("paper_languages", 'html/browser/paper_languages.css')
|
||||
paper_win.open()
|
||||
|
||||
playsound(src, pick('sound/bureaucracy/pen1.ogg','sound/bureaucracy/pen2.ogg'), 20)
|
||||
if(istype(i, /obj/item/pen/typewriter))
|
||||
playsound(src, ('sound/machines/typewriter.ogg'), 40)
|
||||
else
|
||||
playsound(src, pick('sound/bureaucracy/pen1.ogg','sound/bureaucracy/pen2.ogg'), 20)
|
||||
|
||||
update_icon()
|
||||
if(c)
|
||||
c.update_icon()
|
||||
@@ -536,6 +568,10 @@
|
||||
var/obj/item/folder/F = loc
|
||||
if(F.loc_check(user) || F.Adjacent(user))
|
||||
. = TRUE
|
||||
if(!. && istype(loc, /obj/item/portable_typewriter))
|
||||
var/obj/item/portable_typewriter/T = loc
|
||||
if(T.loc == user || T.Adjacent(user))
|
||||
. = TRUE
|
||||
|
||||
/obj/item/paper/attackby(var/obj/item/P, mob/user)
|
||||
..()
|
||||
|
||||
@@ -17,6 +17,11 @@
|
||||
item_state = "electropack"
|
||||
w_class = ITEMSIZE_TINY
|
||||
|
||||
/obj/item/device/camera_film/taj_film
|
||||
name = "film canister"
|
||||
icon = 'icons/obj/tajara_items.dmi'
|
||||
desc = "A rolle of 35mm film intended for cameras of Tajaran make."
|
||||
icon_state = "taj_film"
|
||||
|
||||
/********
|
||||
* photo *
|
||||
@@ -137,6 +142,7 @@ var/global/photo_count = 0
|
||||
obj_flags = OBJ_FLAG_CONDUCTABLE
|
||||
slot_flags = SLOT_BELT
|
||||
matter = list(DEFAULT_WALL_MATERIAL = 2000)
|
||||
var/black_white = FALSE
|
||||
var/pictures_max = 10
|
||||
var/pictures_left = 10
|
||||
var/on = 1
|
||||
@@ -209,7 +215,7 @@ var/global/photo_count = 0
|
||||
if(!on || !pictures_left || ismob(target.loc)) return
|
||||
captureimage(target, user, flag)
|
||||
|
||||
playsound(loc, /singleton/sound_category/print_sound, 75, 1, -3)
|
||||
do_photo_sound()
|
||||
|
||||
pictures_left--
|
||||
to_chat(user, "<span class='notice'>[pictures_left] photos left.</span>")
|
||||
@@ -219,6 +225,9 @@ var/global/photo_count = 0
|
||||
icon_state = icon_on
|
||||
on = 1
|
||||
|
||||
/obj/item/device/camera/proc/do_photo_sound()
|
||||
playsound(loc, /singleton/sound_category/print_sound, 75, 1, -3)
|
||||
|
||||
/obj/item/device/camera/detective
|
||||
name = "detectives camera"
|
||||
desc = "A one use - polaroid camera."
|
||||
@@ -267,6 +276,9 @@ var/global/photo_count = 0
|
||||
p.icon = ic
|
||||
p.tiny = pc
|
||||
p.img = photoimage
|
||||
if(black_white)
|
||||
p.img.MapColors(rgb(77,77,77), rgb(150,150,150), rgb(28,28,28), rgb(0,0,0))
|
||||
p.tiny.MapColors(rgb(77,77,77), rgb(150,150,150), rgb(28,28,28), rgb(0,0,0))
|
||||
p.picture_desc = mobs
|
||||
p.pixel_x = rand(-10, 10)
|
||||
p.pixel_y = rand(-10, 10)
|
||||
@@ -296,3 +308,19 @@ var/global/photo_count = 0
|
||||
p.id = id
|
||||
|
||||
return p
|
||||
|
||||
/obj/item/device/camera/adhomai
|
||||
name = "adhomian camera"
|
||||
icon = 'icons/obj/tajara_items.dmi'
|
||||
desc = "A slightly antiquated camera with a large flash bulb. Still popular with Tajara all over Adhomai."
|
||||
icon_state = "taj_camera_on"
|
||||
item_state = "taj_camera"
|
||||
contained_sprite = TRUE
|
||||
slot_flags = SLOT_MASK
|
||||
black_white = TRUE
|
||||
icon_on = "taj_camera_on"
|
||||
icon_off = "taj_camera_off"
|
||||
|
||||
/obj/item/device/camera/adhomai/do_photo_sound()
|
||||
flick("taj_camera_flash", src)
|
||||
playsound(loc, 'sound/items/camerabulb.ogg', 75, 1, -3)
|
||||
|
||||
@@ -0,0 +1,190 @@
|
||||
/obj/item/pen/typewriter
|
||||
name = "national typist 'Adhomai Electric' experimental integrated typewriter pen"
|
||||
desc = "A mechanical pen that writes on paper inside a typewriter. How did you even get this?"
|
||||
|
||||
/obj/item/portable_typewriter
|
||||
name = "portable typewriter"
|
||||
desc = "A reasonably lightweight typewriter designed to be moved around."
|
||||
desc_info = "You can alt-click this to eject the paper. Click and drag onto yourself while adjacent to type on the typewriter."
|
||||
desc_extended = "The National Typist Company in the People's Republic of Adhomai was once the largest producer of \
|
||||
typewriters on the planet. With the introduction of human technology, however, these items - \
|
||||
which were once staples of Tajaran offices - have slowly become more uncommon. That \
|
||||
said, rural areas and less urban parts of the planet still rely heavily on these machines."
|
||||
icon_state = "typewriter"
|
||||
icon = 'icons/obj/device.dmi'
|
||||
force = 20
|
||||
throwforce = 5
|
||||
w_class = ITEMSIZE_NORMAL
|
||||
drop_sound = 'sound/items/drop/metalweapon.ogg'
|
||||
pickup_sound = 'sound/items/pickup/metalweapon.ogg'
|
||||
|
||||
var/obj/item/paper/stored_paper = null
|
||||
var/obj/item/pen/pen
|
||||
|
||||
/obj/item/portable_typewriter/Initialize()
|
||||
. = ..()
|
||||
|
||||
if(!pen)
|
||||
pen = new /obj/item/pen/typewriter(src)
|
||||
|
||||
/obj/item/portable_typewriter/Destroy()
|
||||
QDEL_NULL(stored_paper)
|
||||
QDEL_NULL(pen)
|
||||
|
||||
return ..()
|
||||
|
||||
/obj/item/portable_typewriter/attack_self(mob/user)
|
||||
if(!stored_paper)
|
||||
to_chat(user, SPAN_ALERT("\The [src] has no paper fed for typing!"))
|
||||
else
|
||||
stored_paper.attackby(pen, user)
|
||||
. = ..()
|
||||
|
||||
/obj/item/portable_typewriter/proc/get_signature(var/mob/user)
|
||||
if (pen)
|
||||
pen.get_signature(user)
|
||||
|
||||
/obj/item/portable_typewriter/AltClick(mob/user)
|
||||
if(!Adjacent(user))
|
||||
return
|
||||
|
||||
else if(stored_paper)
|
||||
var/obj/item/paper/paper = stored_paper
|
||||
if(eject_paper(user.loc))
|
||||
user.put_in_hands(paper)
|
||||
else
|
||||
. = ..()
|
||||
|
||||
/obj/item/portable_typewriter/MouseDrop(mob/user as mob)
|
||||
if(use_check_and_message(user))
|
||||
return
|
||||
|
||||
if(((user.contents.Find(src) || in_range(src, user))))
|
||||
if(isnull(stored_paper))
|
||||
to_chat(user, SPAN_ALERT("\The [src] has no paper fed for typing!"))
|
||||
else
|
||||
stored_paper.attackby(pen, user)
|
||||
return
|
||||
|
||||
/obj/item/portable_typewriter/update_icon()
|
||||
if(stored_paper)
|
||||
icon_state = "typewriter_[stored_paper.icon_state]"
|
||||
else
|
||||
icon_state = "typewriter"
|
||||
|
||||
/obj/item/portable_typewriter/proc/eject_paper(atom/target, mob/user)
|
||||
if(!stored_paper)
|
||||
return FALSE
|
||||
|
||||
to_chat(user, SPAN_ALERT("\The [src] ejects \the [stored_paper]."))
|
||||
playsound(loc, 'sound/bureaucracy/paperfold.ogg', 60, 0)
|
||||
stored_paper.forceMove(target)
|
||||
stored_paper = null
|
||||
update_icon()
|
||||
return TRUE
|
||||
|
||||
/obj/item/portable_typewriter/attackby(obj/item/W, mob/user, params)
|
||||
if(istype(W, /obj/item/paper))
|
||||
if(!stored_paper)
|
||||
if(W.icon_state == "scrap")
|
||||
to_chat(user, SPAN_ALERT("\The [W] is too crumpled to feed correctly!"))
|
||||
return
|
||||
else
|
||||
user.drop_item(W)
|
||||
user.unEquip(W)
|
||||
W.forceMove(src)
|
||||
stored_paper = W
|
||||
user.visible_message(SPAN_ALERT("\The [user] sucks up \the [W] into \the [src]."), SPAN_ALERT("You suck up \the [W] into \the [src]."))
|
||||
src.update_icon()
|
||||
else
|
||||
to_chat(user, SPAN_ALERT("\The [src] already has a paper in it."))
|
||||
. = ..()
|
||||
|
||||
/obj/item/portable_typewriter/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob)
|
||||
..()
|
||||
user.visible_message(SPAN_ALERT("\The [src] shatters into metal pieces!"))
|
||||
M.Weaken(2)
|
||||
playsound(loc, 'sound/effects/metalhit.ogg', 50, 1)
|
||||
playsound(loc, 'sound/weapons/ring.ogg', 50, 1)
|
||||
new /obj/item/material/shard/shrapnel(get_turf(user))
|
||||
qdel(src)
|
||||
|
||||
/obj/item/typewriter_case
|
||||
name = "typewriter case"
|
||||
desc = "A large briefcase-esque place to store one's typewriter."
|
||||
desc_info = "You can alt-click on this case to open and close it. A typewriter can only be removed or added when it is open!"
|
||||
desc_extended = "The National Typist Company in the People's Republic of Adhomai was once the largest producer of \
|
||||
typewriters on the planet. With the introduction of human technology, however, these items - \
|
||||
which were once staples of Tajaran offices - have slowly become more uncommon. That \
|
||||
said, rural areas and less urban parts of the planet still rely heavily on these machines."
|
||||
icon = 'icons/obj/storage/briefcase.dmi'
|
||||
icon_state = "typewriter_case_closed"
|
||||
item_state = "briefcase_black"
|
||||
contained_sprite = TRUE
|
||||
force = 10
|
||||
throwforce = 5
|
||||
throw_speed = 1
|
||||
throw_range = 4
|
||||
w_class = ITEMSIZE_LARGE
|
||||
drop_sound = 'sound/items/drop/backpack.ogg'
|
||||
pickup_sound = 'sound/items/pickup/backpack.ogg'
|
||||
|
||||
var/obj/item/portable_typewriter/machine
|
||||
var/opened = FALSE
|
||||
|
||||
/obj/item/typewriter_case/Initialize()
|
||||
. = ..()
|
||||
if(!machine)
|
||||
machine = new /obj/item/portable_typewriter(src)
|
||||
|
||||
/obj/item/typewriter_case/Destroy()
|
||||
QDEL_NULL(machine)
|
||||
return ..()
|
||||
|
||||
/obj/item/typewriter_case/AltClick(mob/user)
|
||||
if(!Adjacent(user))
|
||||
return
|
||||
|
||||
playsound(loc, 'sound/items/storage/briefcase.ogg', 50, 0, -5)
|
||||
|
||||
opened = !opened
|
||||
update_icon()
|
||||
|
||||
/obj/item/typewriter_case/update_icon()
|
||||
if(opened && machine)
|
||||
icon_state = "typewriter_case_open"
|
||||
else if (opened && !machine)
|
||||
icon_state = "typewriter_case_open_e"
|
||||
else if (!opened)
|
||||
icon_state = "typewriter_case_closed"
|
||||
|
||||
/obj/item/typewriter_case/attack_self(mob/user)
|
||||
if(use_check_and_message(user))
|
||||
return
|
||||
if(((user.contents.Find(src) || in_range(src, user))))
|
||||
if(opened)
|
||||
if(!machine)
|
||||
to_chat(user, SPAN_ALERT("\The [src] is currently empty!"))
|
||||
else
|
||||
user.put_in_hands(machine)
|
||||
machine = null
|
||||
update_icon()
|
||||
else
|
||||
to_chat(user, SPAN_ALERT("\The [src] is currently closed!"))
|
||||
return
|
||||
|
||||
/obj/item/typewriter_case/MouseDrop(mob/user as mob)
|
||||
attack_self(user)
|
||||
|
||||
/obj/item/typewriter_case/attackby(obj/item/W, mob/user, params)
|
||||
if(istype(W, /obj/item/portable_typewriter))
|
||||
if(!machine)
|
||||
user.drop_item(W)
|
||||
user.unEquip(W)
|
||||
W.forceMove(src)
|
||||
src.machine = W
|
||||
user.visible_message(SPAN_ALERT("[user] places \the [W] into \the [src]."), SPAN_ALERT ("You store \the [W] in \the [src]."))
|
||||
src.update_icon()
|
||||
else
|
||||
to_chat(user, SPAN_ALERT("\The [src] already has a typewriter in it!"))
|
||||
. = ..()
|
||||
@@ -0,0 +1,12 @@
|
||||
author: Alberyk, Suethecake
|
||||
|
||||
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:
|
||||
- rscadd: "Added an adhomian typewriter."
|
||||
- rscadd: "Added am adhomian camera."
|
||||
@@ -16,4 +16,5 @@ Stormning.woff - Copyright (c) 2015, Mew Too, Robert Jablonski (Cannot Into Spac
|
||||
Copt-B.woff - Copyright (c) 2014, Nick Matavka (https://fontlibrary.org/en/member/nmatavka), with Reserved Font Name "Copt-B".
|
||||
KawkabMono.woff - Copyright (c) 2015, Abdullah Arif (abdullah.a@gmail.com), with Reserved Font Name 'Kawkab Mono'.
|
||||
KaushanScript.woff - Copyright (c) 2011, Pablo Impallari (www.impallari.com|impallari@gmail.com), Copyright (c) 2011, Igino Marini. (www.ikern.com|mail@iginomarini.com), with Reserved Font Name Kaushan Script.
|
||||
Ducados.woff - Copyright (c) 2015, Rafael Ferran i Peralta (https://fontlibrary.org/en/member/rferran), with Reserved Font Name 'Ducados'.
|
||||
Ducados.woff - Copyright (c) 2015, Rafael Ferran i Peralta (https://fontlibrary.org/en/member/rferran), with Reserved Font Name 'Ducados'.
|
||||
veteran_typewriter.woff - Copyright (c) 2012, Koczman Balint (https://www.abstractfonts.com/designer/372/koczman-balint) with Reserved Font Name "Veteran Typewriter Regular".
|
||||
Binary file not shown.
Binary file not shown.
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 42 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 3.6 KiB After Width: | Height: | Size: 4.4 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 212 KiB After Width: | Height: | Size: 217 KiB |
@@ -70,4 +70,9 @@ ATTRIBUTIONS SECTION END
|
||||
|
||||
ATTRIBUTIONS SECTION START
|
||||
sound/weapons/reloads/lever_action_cock1.ogg - "Lever action cocking 2.wav", licensed under CC0. Obtained and edited from https://freesound.org/people/C-V/sounds/523402/
|
||||
ATTRIBUTIONS SECTION END
|
||||
|
||||
ATTRIBUTIONS SECTION START
|
||||
sound/items/typewriter.ogg - "Typewriter Sound Effect" licensed under CC0, by No Copyright Creator Sounds. Obtained and edited from https://www.youtube.com/watch?v=HYvJtImzoNI&ab_channel=NoCopyrightCreator-Sounds
|
||||
sound/items/camerabulb.ogg - "Vintage Camera Flash Bulb Pops Sound Design" licensed under CC0, by Adilbek Sounds. Obainted and edited from https://freesound.org/people/adilbek_sounds/sounds/595044/
|
||||
ATTRIBUTIONS SECTION END
|
||||
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user