Import other stuff.
|
@ -0,0 +1,33 @@
|
|||
Copyright (c) 2001-2005 Contributors to the Freedoom project.
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
|
||||
* Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
* Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer
|
||||
in the documentation and/or other materials provided with the
|
||||
distribution.
|
||||
* Neither the name of the freedoom project nor the names of its
|
||||
contributors may be used to endorse or promote products derived
|
||||
from this software without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
For a list of contributors to the freedoom project, see the file
|
||||
CREDITS.
|
||||
|
|
@ -0,0 +1,505 @@
|
|||
F: cph
|
||||
N: Colin Phipps
|
||||
S: cph
|
||||
E: cph@cph.demon.co.uk
|
||||
W: http://www.cph.demon.co.uk/
|
||||
D: Binary lumps (playpal, colormap etc)
|
||||
|
||||
F: julian
|
||||
N: Julian Aubourg
|
||||
S: Julian
|
||||
E: julian@doomworld.com
|
||||
D: Sprites, Stories, Textures
|
||||
|
||||
F: mellow
|
||||
S: Captain Mellow
|
||||
E: captainmellow@yahoo.com
|
||||
D: Textures, Music
|
||||
|
||||
F: nb_nmare
|
||||
N: Nick Baker
|
||||
S: NightMare
|
||||
E: nick@frad.org
|
||||
D: Textures
|
||||
|
||||
F: tarin
|
||||
S: Tarin
|
||||
E: tarin@paci-fist.net
|
||||
D: Textures, Sprites, Website design
|
||||
|
||||
F: linguica
|
||||
N: Andrew Stine
|
||||
S: Linguica
|
||||
E: linguica@doomworld.com
|
||||
D: Textures
|
||||
|
||||
F: godcells
|
||||
N: Emmanuel Rousseau
|
||||
S: GodCells
|
||||
E: Emmanuel_Rousseau@uqac.ca
|
||||
D: Levels, Sprites
|
||||
|
||||
F: andrewb
|
||||
N: Andrew Bassett
|
||||
S: andrewb
|
||||
E: orangejuices@icqmail.com
|
||||
D: Music
|
||||
|
||||
F: ravage
|
||||
S: ravage
|
||||
E: dragon_69283@yahoo.com
|
||||
D: Sprites
|
||||
|
||||
F: archvile46
|
||||
S: archvile46
|
||||
E: pudge@att.net
|
||||
D: levels
|
||||
|
||||
F: tony
|
||||
S: tony
|
||||
E: awalker@air-internet.com
|
||||
D: textures
|
||||
|
||||
F: beefstupid
|
||||
S: Dr. Beefstupid
|
||||
E: shurkama@farts.com
|
||||
D: sounds
|
||||
|
||||
F: spaceforce
|
||||
S: spaceforce
|
||||
E: spaceforce@snohost.com
|
||||
D: levels
|
||||
|
||||
F: cheapalert
|
||||
S: CheapAlert
|
||||
E: cheapalert@gmail.com
|
||||
D: graphics
|
||||
|
||||
F: shadowrunner
|
||||
N: Michael T. Cole
|
||||
S: ShadowRunner
|
||||
E: Clansr03@yahoo.com
|
||||
D: levels
|
||||
|
||||
F: kurt
|
||||
N: Kurt Kesler
|
||||
E: kesler@fidnet.com
|
||||
D: sprites
|
||||
|
||||
F: isle
|
||||
S: Isle
|
||||
E: isle_bot@hotmail.com
|
||||
D: Textures
|
||||
|
||||
F: ola
|
||||
N: Ola Bjorling
|
||||
S: Citrus
|
||||
E: ukiro@ukiro.com
|
||||
D: Textures
|
||||
|
||||
F: zarcyb
|
||||
S: ZarcyB
|
||||
E: korgon_iii@hotmail.com
|
||||
D: Textures
|
||||
|
||||
F: diluted
|
||||
S: diluted
|
||||
E: shaggs2dope_00@hotmail.com
|
||||
D: Textures
|
||||
|
||||
F: metabolist
|
||||
S: metabolist
|
||||
E: sewoodman@talk21.com
|
||||
D: levels, music
|
||||
|
||||
F: espi
|
||||
S: Espi
|
||||
E: esa.repo@phnet.fi
|
||||
D: (a lot of) Textures
|
||||
|
||||
F: ralphis
|
||||
N: Ralph Vickers
|
||||
S: Ralphis
|
||||
E: ralphis@slipgate.org
|
||||
D: Music
|
||||
|
||||
F: doom2tr
|
||||
N: Doom 2 Retexturing Project
|
||||
E: doom2textures@justmail.de
|
||||
W: http://www.quake.cz/winclan/doom2/
|
||||
|
||||
F: sirfragsalot
|
||||
S: Sir Fragsalot
|
||||
E: bssrpantella@hotmail.com
|
||||
D: Stories, Sprites
|
||||
|
||||
F: jstepp
|
||||
N: Jeremy Stepp
|
||||
E: jeremystepp@hotmail.com
|
||||
D: textures
|
||||
|
||||
F: oblivion
|
||||
N: Nicholai Main
|
||||
S: Oblivion
|
||||
E: uzi666@juno.com
|
||||
D: levels, fog colormap
|
||||
|
||||
F: kman
|
||||
S: KMan
|
||||
E: kman@valveworld.com
|
||||
D: textures, sprites
|
||||
|
||||
F: mystic
|
||||
S: mystic
|
||||
E: murray6@blueyonder.co.uk
|
||||
D: levels
|
||||
|
||||
F: jonr
|
||||
N: Jon Rimmer
|
||||
S: Amtiskaw
|
||||
S: Jon_R
|
||||
E: jonr@frad.org
|
||||
W: http://destruct.alkali.org/
|
||||
D: Textures
|
||||
|
||||
F: rms
|
||||
N: Richard M. Stallman
|
||||
E: rms@gnu.org
|
||||
W: http://www.gnu.org/
|
||||
D: Thanks go to RMS for letting us use his image for the boss brain :)
|
||||
|
||||
F: vicious
|
||||
N: Vincent Fong
|
||||
S: Vicious
|
||||
E: vincentfong@freecall-uk.co.uk
|
||||
D: Musics
|
||||
|
||||
F: tobester
|
||||
N: Toby Collins Jr.
|
||||
S: tobester
|
||||
E: tobester666@yahoo.com
|
||||
D: Music
|
||||
|
||||
F: locust
|
||||
N: Andrew Francis
|
||||
S: locust
|
||||
E: locust@iinet.net.au
|
||||
D: textures
|
||||
|
||||
F: airraid
|
||||
S: AirRaid
|
||||
E: airraid666@yahoo.com
|
||||
D: Sprites, Levels, Textures
|
||||
|
||||
F: pov
|
||||
N: Iikka Keranen
|
||||
D: POVDoom Sprites
|
||||
|
||||
F: jayextee
|
||||
S: Jayextee
|
||||
E: Jxt@Misery.co.uk
|
||||
D: Graphics
|
||||
|
||||
F: enjay
|
||||
S: Enjay
|
||||
E: Enjay001@hotmail.com
|
||||
D: Sounds
|
||||
|
||||
F: jond
|
||||
N: Jon Dowland
|
||||
E: spambox@alcopop.org
|
||||
W: http://jon.dowland.name/
|
||||
D: Admin, textures, web scripts, levels, hires zealotism, sounds
|
||||
|
||||
F: rancor
|
||||
S: Malice Rancor
|
||||
E: malicerancor@hotmail.com
|
||||
D: Sprites
|
||||
|
||||
F: dsells
|
||||
N: Dale Sells
|
||||
S: mmnpsrsoskl
|
||||
E: mmnpsrsoskl@hotmail.com
|
||||
D: Textures, graphics
|
||||
|
||||
F: meathead
|
||||
S: Meat_Head
|
||||
E: Forbidden_Planet@prodigy.net
|
||||
D: Textures
|
||||
|
||||
F: kaiser
|
||||
S: kaiser
|
||||
E: kaiser@newdoom.com
|
||||
D: levels
|
||||
|
||||
F: slayer226
|
||||
S: Slayer226
|
||||
E: slayer226@hotmail.com
|
||||
D: Textures
|
||||
|
||||
F: ebola
|
||||
S: Ebola
|
||||
E: ebola_kaell@home.se
|
||||
D: Textures, Sprites
|
||||
|
||||
F: zeurkous
|
||||
S: Zeurkous
|
||||
E: de_zeurkous@zonnet.nl
|
||||
D: Sprites, Textures
|
||||
|
||||
F: fredrik
|
||||
N: Fredrik Johansson
|
||||
E: fred@frad.org
|
||||
W: http://www.doomworld.com/fredrik/
|
||||
D: Textures, Sprites
|
||||
|
||||
F: lazer
|
||||
S: Lazer
|
||||
E: dafshin@mediaone.net
|
||||
D: Textures, Levels
|
||||
|
||||
F: lut
|
||||
N: Steve Dudzik
|
||||
S: Lut
|
||||
E: toruonda@home.com
|
||||
D: Sprites, Levels
|
||||
|
||||
F: chang
|
||||
N: Joseph Chang
|
||||
E: jchang@optusnet.com.au
|
||||
D: Sprites
|
||||
|
||||
F: csabo
|
||||
S: Csabo
|
||||
E: wadedit@marchmail.com
|
||||
D: Music
|
||||
|
||||
F: draconio
|
||||
S: Draconio
|
||||
E: draconio2001@yahoo.com
|
||||
D: Sounds
|
||||
|
||||
F: mewse
|
||||
N: Dave Kiddell
|
||||
S: Mewse
|
||||
E: umkiddel@cc.umanitoba.ca
|
||||
W: http://mewse.alkali.org/
|
||||
D: Graphics, Mewse!
|
||||
|
||||
F: deathmaster213
|
||||
S: Deathmaster213
|
||||
E: deathmaster213@hotmail.com
|
||||
D: Art/Textures
|
||||
|
||||
F: hyena
|
||||
S: Hyena
|
||||
E: trwhite@fgbc.org
|
||||
D: Sounds, Musics, Sprites, Levels
|
||||
|
||||
F: nrkn
|
||||
S: Nrkn
|
||||
E: nrkn@ihug.co.nz
|
||||
D: Textures
|
||||
|
||||
F: picklehammer
|
||||
N: Tyler Pantella
|
||||
S: Pickle Hammer
|
||||
E: pickle_hammer@hotmail.com
|
||||
D: Musics
|
||||
|
||||
F: saint_of_killers
|
||||
N: Alberto Bonis
|
||||
S: Saint of Killers
|
||||
E: alberto.bonis@libero.it
|
||||
D: Sprites/Art
|
||||
|
||||
F: geekmarine
|
||||
S: GeekMarine
|
||||
E: cooljohn@birdmail.com
|
||||
D: Sprites, Sounds
|
||||
|
||||
N: Tom Robinson
|
||||
E: tom@alkali.org
|
||||
W: http://www.junked.org/
|
||||
D: A chunk of perl code
|
||||
|
||||
N: Patrick "Amarande" Kalinauskas
|
||||
F: amarande
|
||||
S: Amarande
|
||||
E: amarande@lunasanguine.com
|
||||
D: Levels
|
||||
|
||||
F: cacodemon_leader
|
||||
N: Sean Gauthier
|
||||
S: Cacodemon Leader
|
||||
E: gauthier.home@sympatico.ca
|
||||
D: Levels
|
||||
|
||||
F: spike
|
||||
N: Luke Cama
|
||||
S: Spike
|
||||
E: spikeycool@hotmail.com
|
||||
D: Sounds
|
||||
|
||||
F: maonth
|
||||
S: Shaviro
|
||||
E: maonth@nautrup.com
|
||||
D: Textures
|
||||
|
||||
F: nightfang
|
||||
S: Nightfang
|
||||
E: nightfang@truelights.com
|
||||
D: Sprites
|
||||
|
||||
F: mdenham
|
||||
S: MDenham
|
||||
E: tathetriam@aol.com
|
||||
D: Levels
|
||||
|
||||
F: damienc
|
||||
S: DamienC
|
||||
E: hcapello@home.com
|
||||
D: Sprites
|
||||
|
||||
F: spinspyder
|
||||
S: SpinSpyder
|
||||
E: blcrowley@hotmail.com
|
||||
D: Sprites
|
||||
|
||||
F: sgtcrispy
|
||||
S: SgtCrispy
|
||||
E: sha_nigtha@yahoo.com
|
||||
D: Sounds
|
||||
|
||||
F: submerge
|
||||
S: Submerge
|
||||
E: submerge_527@hotmail.com
|
||||
D: Sounds, Sprites
|
||||
|
||||
F: adamizer
|
||||
S: Adamizer
|
||||
E: adamizer9000@yahoo.com
|
||||
D: Sprites
|
||||
|
||||
N: Dan L'Ecuyer
|
||||
E: dlecuyer@tbase.com
|
||||
D: GENMIDI Lump
|
||||
|
||||
F: ajapted
|
||||
N: Andrew Apted
|
||||
E: ajapted@netspace.net.au
|
||||
D: Graphics, Levels, Patches, Sprites
|
||||
|
||||
F: zigmund
|
||||
S: Zigmund
|
||||
E: z_ozwell@hotmail.com
|
||||
D: Levels
|
||||
|
||||
F: kinkyfriend
|
||||
S: kinkyfriend
|
||||
N: Patrick Westermark
|
||||
E: kinkyfriend85@hotmail.com
|
||||
D: Graphics
|
||||
|
||||
F: railgunner
|
||||
S: Railgunner
|
||||
E: pcclassix@the-any-key.com
|
||||
D: Sprites, Levels
|
||||
|
||||
F: bastetfurry
|
||||
S: bastetfurry
|
||||
E: bastetfurry@nachtkatzen.de
|
||||
D: Levels
|
||||
|
||||
F: lurker
|
||||
S: Lurker
|
||||
E: ssjtrunks37@hotmail.com
|
||||
D: Levels, Sprites, Sounds
|
||||
|
||||
F: darkstalker
|
||||
S: DarkStalker
|
||||
E: darkstalker81@hotmail.com
|
||||
D: Textures
|
||||
|
||||
F: scubasteve
|
||||
S: Scuba Steve
|
||||
E: ray_stantz@hotmail.com
|
||||
D: Sprites, graphics
|
||||
|
||||
F: torn
|
||||
N: Kim Bach
|
||||
S: Torn
|
||||
E: Tornthedark@hotmail.com
|
||||
D: Levels
|
||||
|
||||
F: cyb
|
||||
N: Mike Watson
|
||||
S: Cyb
|
||||
E: cyb@frad.org
|
||||
W: http://cyb.alkali.org/
|
||||
D: Levels, Sprites, Lumps
|
||||
|
||||
N: Wouter van Oortmerssen
|
||||
S: Aardappel
|
||||
E: aardappel@planetquake.com
|
||||
D: Conceptual Work and realisation
|
||||
|
||||
N: Alex Mao
|
||||
S: Arioch
|
||||
E: arioch@despayre.org
|
||||
D: Long term server hosting
|
||||
|
||||
N: Bill Koch
|
||||
S: Bloodshedder
|
||||
E: bloodshedder@doomcenter.com
|
||||
D: sound effects
|
||||
|
||||
N: Corwin Brence
|
||||
S: WildWeasel
|
||||
E: wildweasel_lemon@hotmail.com
|
||||
D: sound effects
|
||||
|
||||
F: wildman
|
||||
S: WildMan
|
||||
N: Rick Clark
|
||||
E: rickclark58@yahoo.com
|
||||
D: Levels
|
||||
|
||||
F: sargebaldy
|
||||
S: sargebaldy
|
||||
N: Owen Lloyd
|
||||
E: lloydo@onid.orst.edu
|
||||
D: levels
|
||||
|
||||
F: david_a
|
||||
N: David Aramant
|
||||
E: david_a00@excite.com
|
||||
D: Sprites
|
||||
|
||||
F: silverwyvern
|
||||
S: Silverwyvern
|
||||
E: cindymcc@nbnet.nb.ca
|
||||
D: Graphics (skies)
|
||||
|
||||
F: mouse
|
||||
S: mouse
|
||||
S: lilwhitemouse
|
||||
E: lilwhitemo@midmaine.com
|
||||
D: Sprites
|
||||
|
||||
F: fraggle
|
||||
N: Simon Howard
|
||||
S: fraggle
|
||||
E: fraggle@alkali.org
|
||||
W: http://www.soulsphere.org/
|
||||
D: Chief Administrator, textures, sprites
|
||||
|
||||
F: joed
|
||||
N: Joe Dowland
|
||||
E: spambox@alcopop.org
|
||||
D: sounds
|
||||
|
||||
F: gargoylol
|
||||
S: gargoylol
|
||||
D: sounds
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
<h1>deutex tree</h1>
|
||||
<p>Confused? Better head back to <a href="/">the main page</a>.</p>
|
|
@ -0,0 +1,168 @@
|
|||
|
||||
# date of the last release:
|
||||
|
||||
#LAST_RELEASE_DATE = "dec 25 2004"
|
||||
LAST_RELEASE_DATE = "dec 25 2005"
|
||||
|
||||
WADS_DIR=/tmp/freedoom-wads
|
||||
|
||||
CPP=tools/simplecpp
|
||||
DEUTEX=tools/deutex
|
||||
DEUTEX_BASIC_ARGS=-fullsnd -noshrink -rgb 0 255 255
|
||||
DEUTEX_ARGS=$(DEUTEX_BASIC_ARGS) -doom2 bootstrap/
|
||||
|
||||
OBJS = \
|
||||
$(WADS_DIR)/freedoom.wad \
|
||||
$(WADS_DIR)/freedoom_graphics.wad \
|
||||
$(WADS_DIR)/freedoom_levels.wad \
|
||||
$(WADS_DIR)/freedoom_sprites.wad \
|
||||
$(WADS_DIR)/freedoom_sounds.wad \
|
||||
$(WADS_DIR)/freedoom_textures.wad \
|
||||
$(WADS_DIR)/doom1.wad \
|
||||
$(WADS_DIR)/doom2.wad
|
||||
|
||||
# disable this for now
|
||||
# $(WADS_DIR)/freedoom_hires.zip
|
||||
|
||||
usebuild :
|
||||
@echo please use the ./build wrapper script
|
||||
|
||||
all : $(OBJS)
|
||||
|
||||
subdirs:
|
||||
make -C graphics/titlepic
|
||||
make -C lumps
|
||||
|
||||
# this is a useless dependency to force builds
|
||||
|
||||
force:
|
||||
|
||||
# build texture1.txt for different builds
|
||||
|
||||
textures/doom2/texture1.txt: textures/combined.txt
|
||||
$(CPP) -DDOOM1 -DDOOM2 < $< > $@
|
||||
textures/doom/texture1.txt: textures/combined.txt
|
||||
$(CPP) -DDOOM1 < $< > $@
|
||||
textures/shareware/texture1.txt: textures/combined.txt
|
||||
$(CPP) -DSHAREWARE < $< > $@
|
||||
|
||||
textures/%/pnames.txt: textures/%/texture1.txt
|
||||
./extract-pnames.pl < $< > $@
|
||||
|
||||
$(WADS_DIR):
|
||||
mkdir $@
|
||||
|
||||
# update wadinfo.txt
|
||||
|
||||
wadinfo.txt: buildcfg.txt force textures/doom2/pnames.txt
|
||||
$(CPP) -P -DDOOM2 < $< | ./wadinfo-builder.pl > $@
|
||||
wadinfo_ulatest.txt: buildcfg.txt force textures/doom/pnames.txt
|
||||
$(CPP) -P -DDOOM1 < $< | ./wadinfo-builder.pl -since $(LAST_RELEASE_DATE) > $@
|
||||
wadinfo_latest.txt: buildcfg.txt force textures/doom2/pnames.txt
|
||||
$(CPP) -P -DDOOM2 < $< | ./wadinfo-builder.pl -since $(LAST_RELEASE_DATE) > $@
|
||||
wadinfo_sw.txt: buildcfg.txt force textures/shareware/pnames.txt
|
||||
$(CPP) -P -DSHAREWARE < $< | ./wadinfo-builder.pl -dummy > $@
|
||||
wadinfo_iwad.txt: buildcfg.txt force textures/doom2/pnames.txt
|
||||
$(CPP) -P -DDOOM2 < $< | ./wadinfo-builder.pl -dummy > $@
|
||||
|
||||
%.wad.gz: %.wad
|
||||
gzip < $< > $@
|
||||
chmod o-r $<
|
||||
md5sum $<.gz > $<.md5sum
|
||||
rm -f $<
|
||||
|
||||
#---------------------------------------------------------
|
||||
# incremental wad
|
||||
|
||||
latest/ulatest.wad: wadinfo_ulatest.txt subdirs force
|
||||
# TODO: check this
|
||||
ln -sf doom/texture1.txt textures/texture1.txt
|
||||
rm -f $@
|
||||
$(DEUTEX) $(DEUTEX_BASIC_ARGS) -doom bootstrap/ -textures -lumps -patch -flats -sounds -musics -graphics -sprites -levels -build wadinfo_ulatest.txt $@
|
||||
|
||||
latest/latest.wad: wadinfo_latest.txt subdirs force
|
||||
ln -sf doom2/texture1.txt textures/texture1.txt
|
||||
rm -f $@
|
||||
$(DEUTEX) $(DEUTEX_BASIC_ARGS) -doom2 bootstrap/ -textures -lumps -patch -flats -sounds -musics -graphics -sprites -levels -build wadinfo_latest.txt $@
|
||||
|
||||
#---------------------------------------------------------
|
||||
# build wad
|
||||
|
||||
$(WADS_DIR)/freedoom.wad: wadinfo.txt subdirs force $(WADS_DIR)
|
||||
ln -sf doom2/texture1.txt textures/texture1.txt
|
||||
rm -f $@
|
||||
$(DEUTEX) $(DEUTEX_ARGS) -textures -lumps -patch -flats -sounds -musics -graphics -sprites -build wadinfo.txt $@
|
||||
|
||||
#---------------------------------------------------------
|
||||
# iwad
|
||||
|
||||
$(WADS_DIR)/doom2.wad: wadinfo_iwad.txt subdirs force $(WADS_DIR)
|
||||
ln -sf doom2/texture1.txt textures/texture1.txt
|
||||
rm -f $@
|
||||
$(DEUTEX) $(DEUTEX_ARGS) -iwad -textures -lumps -patch -flats -sounds -musics -graphics -sprites -levels -build wadinfo_iwad.txt $@
|
||||
|
||||
#---------------------------------------------------------
|
||||
# graphics wad
|
||||
|
||||
$(WADS_DIR)/freedoom_graphics.wad : wadinfo.txt subdirs force $(WADS_DIR)
|
||||
rm -f $@
|
||||
$(DEUTEX) $(DEUTEX_ARGS) -graphics -build wadinfo.txt $@
|
||||
|
||||
#---------------------------------------------------------
|
||||
# build levels wad
|
||||
|
||||
$(WADS_DIR)/freedoom_levels.wad : wadinfo.txt force $(WADS_DIR)
|
||||
rm -f $@
|
||||
$(DEUTEX) $(DEUTEX_ARGS) -levels -build wadinfo.txt $@
|
||||
|
||||
#---------------------------------------------------------
|
||||
# build texture wad
|
||||
|
||||
$(WADS_DIR)/freedoom_textures.wad : wadinfo.txt force $(WADS_DIR)
|
||||
ln -sf doom2/texture1.txt textures/texture1.txt
|
||||
rm -f $@
|
||||
$(DEUTEX) $(DEUTEX_ARGS) -textures -patch -flats -build wadinfo.txt $@
|
||||
|
||||
#---------------------------------------------------------
|
||||
# build sprites wad
|
||||
|
||||
$(WADS_DIR)/freedoom_sprites.wad : wadinfo.txt force $(WADS_DIR)
|
||||
rm -f $@
|
||||
$(DEUTEX) $(DEUTEX_ARGS) -sprites -build wadinfo.txt $@
|
||||
|
||||
#---------------------------------------------------------
|
||||
# build sounds wad
|
||||
|
||||
$(WADS_DIR)/freedoom_sounds.wad : wadinfo.txt force $(WADS_DIR)
|
||||
rm -f $@
|
||||
$(DEUTEX) $(DEUTEX_ARGS) -sounds -musics -build wadinfo.txt $@
|
||||
|
||||
#---------------------------------------------------------
|
||||
# shareware iwad
|
||||
#
|
||||
# deutex doesnt allow redirects for the filenames in the texture
|
||||
# entries, so we have to change the texture1 symlink to point
|
||||
# to the shareware wad
|
||||
|
||||
$(WADS_DIR)/doom1.wad : wadinfo_sw.txt force $(WADS_DIR)
|
||||
ln -sf shareware/texture1.txt textures/texture1.txt
|
||||
rm -f $@
|
||||
$(DEUTEX) $(DEUTEX_ARGS) -iwad -build wadinfo_sw.txt $@
|
||||
|
||||
#---------------------------------------------------------
|
||||
# hires texture zip
|
||||
|
||||
HIRES_SRC=$(wildcard patches_hi/*.png) $(wildcard flats_hi/*.png)
|
||||
HIRES_TGA=$(HIRES_SRC:%.png=.tga/%.tga)
|
||||
|
||||
.tga/%.tga : %.png
|
||||
pngtopnm < $< | ppmtotga > $@
|
||||
|
||||
$(WADS_DIR)/freedoom_hires.zip : $(HIRES_TGA) $(WADS_DIR)
|
||||
rm -f $(WADS_DIR)/freedoom_hires.zip
|
||||
zip -j $(WADS_DIR)/freedoom_hires.zip $(HIRES_TGA) > /dev/null
|
||||
|
||||
dist : $(OBJS)
|
||||
./makepkgs $(OBJS)
|
||||
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
2006.03.03 v0.4.1
|
||||
|
||||
Bugfix release: a texture error prevented 0.4 from working properly in
|
||||
some ports (prboom 2.2, eternity, possibly other early boom
|
||||
derivatives). I have also taken this opportunity to update the
|
||||
resource wads.
|
||||
|
||||
2005.12.27 v0.4
|
||||
|
||||
A belated christmas release: three new levels, a handful of new sounds
|
||||
and a lot of work behind the scenes.
|
||||
|
||||
2004.12.25 v0.3
|
||||
|
||||
This Christmas release features new levels and sprites as well as
|
||||
fixes for various bugs.
|
||||
|
||||
2003.12.10 v0.2
|
||||
|
||||
Changes in this release are mostly bugfixes. There are some new
|
||||
sprites, however, and two new levels. This release is
|
||||
celebrate Doom's 10th Anniversary.
|
||||
|
||||
2003.04.16 v0.1
|
||||
|
||||
Initial release
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
Freedoom is a project to create a complete Doom II-compatible
|
||||
IWAD file which is Free Software.
|
||||
|
||||
The IWAD file is the file used by Doom which contains all the
|
||||
game data (graphics, sound effects, music, etc.). While the
|
||||
Doom source code is Free, you currently still need one of the
|
||||
proprietary IWAD files from id in order to play Doom. Freedoom
|
||||
aims to create a Free alternative. Combined with the GPL-licensed
|
||||
Doom source code this will result in a complete Free Doom-based
|
||||
game.
|
||||
|
||||
For more information, see http://freedoom.sf.net/
|
||||
|
|
@ -0,0 +1,68 @@
|
|||
NB: This is all out of date now. I need to update it at some point
|
||||
|
||||
COPYING
|
||||
The modified BSD license the freedoom material is under
|
||||
ChangeLog
|
||||
List of changes
|
||||
CREDITS
|
||||
List of contributors
|
||||
|
||||
flats
|
||||
Floor textures
|
||||
The files in this directory are symlinks into subdirectories (1
|
||||
directory for each author)
|
||||
flats_hi
|
||||
See patches_hi. High resolution flats.
|
||||
graphics
|
||||
Graphics for menu, heads up display and status bar, etc.
|
||||
levels
|
||||
levels.
|
||||
Currently we have 32 randomly generated slige levels here :)
|
||||
lumps
|
||||
miscellaneous lumps. PLAYPAL and COLORMAP are assigned to cph.
|
||||
musics
|
||||
musics.
|
||||
patches
|
||||
Patches for wall textures.
|
||||
Organised the same as for flats.
|
||||
patches_hi
|
||||
High resolution wall patches. These are in .png format, and are
|
||||
converted to tga by the build script
|
||||
sounds
|
||||
Sounds
|
||||
sprites
|
||||
Sprites
|
||||
We currently have the enemy sprites from Iikka keranens Povdoom in
|
||||
here, these may be only temporary
|
||||
textures
|
||||
Texture definitions - for TEXTURE1 and PNAMES
|
||||
|
||||
Build system:
|
||||
|
||||
Makefile
|
||||
Build makefile. Build everything or just certain bits
|
||||
build
|
||||
Wrapper script for make. Redirect all stdout and stderr messages
|
||||
to build.output
|
||||
|
||||
buildcfg.txt
|
||||
The combined build spec file. Features specific to Doom1/Doom2/
|
||||
shareware builds are specified with #defines. This file is parsed
|
||||
by cpp (the GNU C PreProcessor) which generates the appropriate
|
||||
wadinfo.txt for the type of wad wanted. The file is also passed
|
||||
through wadinfo-builder.pl, which comments out all lines which
|
||||
refer to resources which have not yet been submitted (so the wad
|
||||
can still be built).
|
||||
|
||||
wadinfo.txt
|
||||
The deutex build file for the main build. Do not edit this file
|
||||
directly; use buildcfg.txt
|
||||
wadinfo_sw.txt
|
||||
The deutex build file for the shareware build. Do not edit this
|
||||
file directly; use buildcfg.txt
|
||||
wadinfo_iwad.txt
|
||||
The deutex build file for the iwad build. Do not edit this file
|
||||
directly; use buildcfg.txt. This is the same as wadinfo.txt except
|
||||
instead of missing resources being commented out, they are linked
|
||||
to dummy replacements.
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
* Rework texture build system to be automatic:
|
||||
|
||||
For shareware build, extract a list of textures used in the
|
||||
shareware wad levels. Build the shareware wad containing only
|
||||
these textures.
|
||||
|
||||
For the full build, include all textures.
|
||||
|
||||
This removes the need to fiddle the textures around whenever a
|
||||
new wad is added to the shareware build and also should make
|
||||
the wad more compact.
|
||||
|
||||
* Make textures be in alphabetical order.
|
||||
|
||||
* Split up sprites so their offsets are stored with the image files.
|
||||
|
||||
* Add Deathmatch IWAD build?
|
||||
|
|
@ -0,0 +1,200 @@
|
|||
package Time::CTime;
|
||||
|
||||
|
||||
require 5.000;
|
||||
|
||||
use Time::Timezone;
|
||||
use Time::CTime;
|
||||
require Exporter;
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw(ctime asctime strftime);
|
||||
@EXPORT_OK = qw(asctime_n ctime_n @DoW @MoY @DayOfWeek @MonthOfYear);
|
||||
|
||||
use strict;
|
||||
|
||||
# constants
|
||||
use vars qw(@DoW @DayOfWeek @MoY @MonthOfYear %strftime_conversion $VERSION);
|
||||
use vars qw($template $sec $min $hour $mday $mon $year $wday $yday $isdst);
|
||||
|
||||
$VERSION = 99.06_22_01;
|
||||
|
||||
CONFIG: {
|
||||
@DoW = qw(Sun Mon Tue Wed Thu Fri Sat);
|
||||
@DayOfWeek = qw(Sunday Monday Tuesday Wednesday Thursday Friday Saturday);
|
||||
@MoY = qw(Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec);
|
||||
@MonthOfYear = qw(January February March April May June
|
||||
July August September October November December);
|
||||
|
||||
%strftime_conversion = (
|
||||
'%', sub { '%' },
|
||||
'a', sub { $DoW[$wday] },
|
||||
'A', sub { $DayOfWeek[$wday] },
|
||||
'b', sub { $MoY[$mon] },
|
||||
'B', sub { $MonthOfYear[$mon] },
|
||||
'c', sub { asctime_n($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst, "") },
|
||||
'd', sub { sprintf("%02d", $mday); },
|
||||
'D', sub { sprintf("%02d/%02d/%02d", $mon+1, $mday, $year%100) },
|
||||
'e', sub { sprintf("%2d", $mday); },
|
||||
'f', sub { fracprintf ("%3.3f", $sec); },
|
||||
'F', sub { fracprintf ("%6.6f", $sec); },
|
||||
'h', sub { $MoY[$mon] },
|
||||
'H', sub { sprintf("%02d", $hour) },
|
||||
'I', sub { sprintf("%02d", $hour % 12 || 12) },
|
||||
'j', sub { sprintf("%03d", $yday + 1) },
|
||||
'k', sub { sprintf("%2d", $hour); },
|
||||
'l', sub { sprintf("%2d", $hour % 12 || 12) },
|
||||
'm', sub { sprintf("%02d", $mon+1); },
|
||||
'M', sub { sprintf("%02d", $min) },
|
||||
'n', sub { "\n" },
|
||||
'o', sub { sprintf("%d%s", $mday, (($mday < 20 && $mday > 3) ? 'th' : ($mday%10 == 1 ? "st" : ($mday%10 == 2 ? "nd" : ($mday%10 == 3 ? "rd" : "th"))))) },
|
||||
'p', sub { $hour > 11 ? "PM" : "AM" },
|
||||
'r', sub { sprintf("%02d:%02d:%02d %s", $hour % 12 || 12, $min, $sec, $hour > 11 ? 'PM' : 'AM') },
|
||||
'R', sub { sprintf("%02d:%02d", $hour, $min) },
|
||||
'S', sub { sprintf("%02d", $sec) },
|
||||
't', sub { "\t" },
|
||||
'T', sub { sprintf("%02d:%02d:%02d", $hour, $min, $sec) },
|
||||
'U', sub { wkyr(0, $wday, $yday) },
|
||||
'w', sub { $wday },
|
||||
'W', sub { wkyr(1, $wday, $yday) },
|
||||
'y', sub { sprintf("%02d",$year%100) },
|
||||
'Y', sub { $year + 1900 },
|
||||
'x', sub { sprintf("%02d/%02d/%02d", $mon + 1, $mday, $year%100) },
|
||||
'X', sub { sprintf("%02d:%02d:%02d", $hour, $min, $sec) },
|
||||
'Z', sub { &tz2zone(undef,undef,$isdst) }
|
||||
);
|
||||
|
||||
|
||||
}
|
||||
|
||||
sub fracprintf {
|
||||
my($t,$s) = @_;
|
||||
my($p) = sprintf($t, $s-int($s));
|
||||
$p=~s/^0+//;
|
||||
$p;
|
||||
}
|
||||
|
||||
sub asctime_n {
|
||||
my($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst, $TZname) = @_;
|
||||
($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst, $TZname) = localtime($sec) unless defined $min;
|
||||
$year += 1900;
|
||||
$TZname .= ' '
|
||||
if $TZname;
|
||||
sprintf("%s %s %2d %2d:%02d:%02d %s%4d",
|
||||
$DoW[$wday], $MoY[$mon], $mday, $hour, $min, $sec, $TZname, $year);
|
||||
}
|
||||
|
||||
sub asctime
|
||||
{
|
||||
return asctime_n(@_)."\n";
|
||||
}
|
||||
|
||||
# is this formula right?
|
||||
sub wkyr {
|
||||
my($wstart, $wday, $yday) = @_;
|
||||
$wday = ($wday + 7 - $wstart) % 7;
|
||||
return int(($yday - $wday + 13) / 7 - 1);
|
||||
}
|
||||
|
||||
# ctime($time)
|
||||
|
||||
sub ctime {
|
||||
my($time) = @_;
|
||||
asctime(localtime($time), &tz2zone(undef,$time));
|
||||
}
|
||||
|
||||
sub ctime_n {
|
||||
my($time) = @_;
|
||||
asctime_n(localtime($time), &tz2zone(undef,$time));
|
||||
}
|
||||
|
||||
# strftime($template, @time_struct)
|
||||
#
|
||||
# Does not support locales
|
||||
|
||||
sub strftime {
|
||||
local ($template, $sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = @_;
|
||||
|
||||
undef $@;
|
||||
$template =~ s/%([%aAbBcdDefFhHIjklmMnopQrRStTUwWxXyYZ])/&{$Time::CTime::strftime_conversion{$1}}()/egs;
|
||||
die $@ if $@;
|
||||
return $template;
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
__DATA__
|
||||
|
||||
=head1 NAME
|
||||
|
||||
Time::CTime -- format times ala POSIX asctime
|
||||
|
||||
=head1 SYNOPSIS
|
||||
|
||||
use Time::CTime
|
||||
print ctime(time);
|
||||
print asctime(localtime(time));
|
||||
print strftime(template, localtime(time));
|
||||
|
||||
=head2 strftime conversions
|
||||
|
||||
%% PERCENT
|
||||
%a day of the week abbr
|
||||
%A day of the week
|
||||
%b month abbr
|
||||
%B month
|
||||
%c ctime format: Sat Nov 19 21:05:57 1994
|
||||
%d DD
|
||||
%D MM/DD/YY
|
||||
%e numeric day of the month
|
||||
%f floating point seconds (milliseconds): .314
|
||||
%F floating point seconds (microseconds): .314159
|
||||
%h month abbr
|
||||
%H hour, 24 hour clock, leading 0's)
|
||||
%I hour, 12 hour clock, leading 0's)
|
||||
%j day of the year
|
||||
%k hour
|
||||
%l hour, 12 hour clock
|
||||
%m month number, starting with 1
|
||||
%M minute, leading 0's
|
||||
%n NEWLINE
|
||||
%o ornate day of month -- "1st", "2nd", "25th", etc.
|
||||
%p AM or PM
|
||||
%r time format: 09:05:57 PM
|
||||
%R time format: 21:05
|
||||
%S seconds, leading 0's
|
||||
%t TAB
|
||||
%T time format: 21:05:57
|
||||
%U week number, Sunday as first day of week
|
||||
%w day of the week, numerically, Sunday == 0
|
||||
%W week number, Monday as first day of week
|
||||
%x date format: 11/19/94
|
||||
%X time format: 21:05:57
|
||||
%y year (2 digits)
|
||||
%Y year (4 digits)
|
||||
%Z timezone in ascii. eg: PST
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
This module provides routines to format dates. They correspond
|
||||
to the libc routines. &strftime() supports a pretty good set of
|
||||
coversions -- more than most C libraries.
|
||||
|
||||
strftime supports a pretty good set of conversions.
|
||||
|
||||
The POSIX module has very similar functionality. You should consider
|
||||
using it instead if you do not have allergic reactions to system
|
||||
libraries.
|
||||
|
||||
=head1 GENESIS
|
||||
|
||||
Written by David Muir Sharnoff <muir@idiom.com>.
|
||||
|
||||
The starting point for this package was a posting by
|
||||
Paul Foley <paul@ascent.com>
|
||||
|
||||
=head1 LICENSE
|
||||
|
||||
Copyright (C) 1996-1999 David Muir Sharnoff. License hereby
|
||||
granted for anyone to use, modify or redistribute this module at
|
||||
their own risk. Please feed useful changes back to muir@idiom.com.
|
||||
|
|
@ -0,0 +1,78 @@
|
|||
package Time::DaysInMonth;
|
||||
|
||||
use Carp;
|
||||
|
||||
require 5.000;
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw(days_in is_leap);
|
||||
@EXPORT_OK = qw(%mltable);
|
||||
|
||||
use strict;
|
||||
|
||||
use vars qw($VERSION %mltable);
|
||||
|
||||
$VERSION = 99.1117;
|
||||
|
||||
CONFIG: {
|
||||
%mltable = qw(
|
||||
1 31
|
||||
3 31
|
||||
4 30
|
||||
5 31
|
||||
6 30
|
||||
7 31
|
||||
8 31
|
||||
9 30
|
||||
10 31
|
||||
11 30
|
||||
12 31);
|
||||
}
|
||||
|
||||
sub days_in
|
||||
{
|
||||
# Month is 1..12
|
||||
my ($year, $month) = @_;
|
||||
return $mltable{$month+0} unless $month == 2;
|
||||
return 28 unless &is_leap($year);
|
||||
return 29;
|
||||
}
|
||||
|
||||
sub is_leap
|
||||
{
|
||||
my ($year) = @_;
|
||||
return 0 unless $year % 4 == 0;
|
||||
return 1 unless $year % 100 == 0;
|
||||
return 0 unless $year % 400 == 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
__DATA__
|
||||
|
||||
=head1 NAME
|
||||
|
||||
Time::DaysInMonth -- simply report the number of days in a month
|
||||
|
||||
=head1 SYNOPSIS
|
||||
|
||||
use Time::DaysInMonth;
|
||||
$days = days_in($year, $month_1_to_12);
|
||||
$leapyear = is_leap($year);
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
DaysInMonth is simply a package to report the number of days in
|
||||
a month. That's all it does. Really!
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
David Muir Sharnoff <muir@idiom.com>
|
||||
|
||||
=head1 LICENSE
|
||||
|
||||
Copyright (C) 1996-1999 David Muir Sharnoff. License hereby
|
||||
granted for anyone to use, modify or redistribute this module at
|
||||
their own risk. Please feed useful changes back to muir@idiom.com.
|
||||
|
|
@ -0,0 +1,206 @@
|
|||
package Time::JulianDay;
|
||||
|
||||
require 5.000;
|
||||
|
||||
use Carp;
|
||||
use Time::Timezone;
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw(julian_day inverse_julian_day day_of_week
|
||||
jd_secondsgm jd_secondslocal
|
||||
jd_timegm jd_timelocal
|
||||
gm_julian_day local_julian_day
|
||||
);
|
||||
@EXPORT_OK = qw($brit_jd);
|
||||
|
||||
use strict;
|
||||
use integer;
|
||||
|
||||
# constants
|
||||
use vars qw($brit_jd $jd_epoch $jd_epoch_remainder $VERSION);
|
||||
|
||||
$VERSION = 99.061501;
|
||||
|
||||
# calculate the julian day, given $year, $month and $day
|
||||
sub julian_day
|
||||
{
|
||||
my($year, $month, $day) = @_;
|
||||
my($tmp);
|
||||
|
||||
use Carp;
|
||||
# confess() unless defined $day;
|
||||
|
||||
$tmp = $day - 32075
|
||||
+ 1461 * ( $year + 4800 - ( 14 - $month ) / 12 )/4
|
||||
+ 367 * ( $month - 2 + ( ( 14 - $month ) / 12 ) * 12 ) / 12
|
||||
- 3 * ( ( $year + 4900 - ( 14 - $month ) / 12 ) / 100 ) / 4
|
||||
;
|
||||
|
||||
return($tmp);
|
||||
|
||||
}
|
||||
|
||||
sub gm_julian_day
|
||||
{
|
||||
my($secs) = @_;
|
||||
my($sec, $min, $hour, $mon, $year, $day, $month);
|
||||
($sec, $min, $hour, $day, $mon, $year) = gmtime($secs);
|
||||
$month = $mon + 1;
|
||||
$year += 1900;
|
||||
return julian_day($year, $month, $day)
|
||||
}
|
||||
|
||||
sub local_julian_day
|
||||
{
|
||||
my($secs) = @_;
|
||||
my($sec, $min, $hour, $mon, $year, $day, $month);
|
||||
($sec, $min, $hour, $day, $mon, $year) = localtime($secs);
|
||||
$month = $mon + 1;
|
||||
$year += 1900;
|
||||
return julian_day($year, $month, $day)
|
||||
}
|
||||
|
||||
sub day_of_week
|
||||
{
|
||||
my ($jd) = @_;
|
||||
return (($jd + 1) % 7); # calculate weekday (0=Sun,6=Sat)
|
||||
}
|
||||
|
||||
|
||||
# The following defines the first day that the Gregorian calendar was used
|
||||
# in the British Empire (Sep 14, 1752). The previous day was Sep 2, 1752
|
||||
# by the Julian Calendar. The year began at March 25th before this date.
|
||||
|
||||
$brit_jd = 2361222;
|
||||
|
||||
# Usage: ($year,$month,$day) = &inverse_julian_day($julian_day)
|
||||
sub inverse_julian_day
|
||||
{
|
||||
my($jd) = @_;
|
||||
my($jdate_tmp);
|
||||
my($m,$d,$y);
|
||||
|
||||
carp("warning: julian date $jd pre-dates British use of Gregorian calendar\n")
|
||||
if ($jd < $brit_jd);
|
||||
|
||||
$jdate_tmp = $jd - 1721119;
|
||||
$y = (4 * $jdate_tmp - 1)/146097;
|
||||
$jdate_tmp = 4 * $jdate_tmp - 1 - 146097 * $y;
|
||||
$d = $jdate_tmp/4;
|
||||
$jdate_tmp = (4 * $d + 3)/1461;
|
||||
$d = 4 * $d + 3 - 1461 * $jdate_tmp;
|
||||
$d = ($d + 4)/4;
|
||||
$m = (5 * $d - 3)/153;
|
||||
$d = 5 * $d - 3 - 153 * $m;
|
||||
$d = ($d + 5) / 5;
|
||||
$y = 100 * $y + $jdate_tmp;
|
||||
if($m < 10) {
|
||||
$m += 3;
|
||||
} else {
|
||||
$m -= 9;
|
||||
++$y;
|
||||
}
|
||||
return ($y, $m, $d);
|
||||
}
|
||||
|
||||
{
|
||||
my($sec, $min, $hour, $day, $mon, $year) = gmtime(0);
|
||||
$year += 1900;
|
||||
if ($year == 1970 && $mon == 0 && $day == 1) {
|
||||
# standard unix time format
|
||||
$jd_epoch = 2440588;
|
||||
} else {
|
||||
$jd_epoch = julian_day($year, $mon+1, $day);
|
||||
}
|
||||
$jd_epoch_remainder = $hour*3600 + $min*60 + $sec;
|
||||
}
|
||||
|
||||
sub jd_secondsgm
|
||||
{
|
||||
my($jd, $hr, $min, $sec) = @_;
|
||||
|
||||
my($r) = (($jd - $jd_epoch) * 86400
|
||||
+ $hr * 3600 + $min * 60
|
||||
- $jd_epoch_remainder);
|
||||
|
||||
no integer;
|
||||
return ($r + $sec);
|
||||
use integer;
|
||||
}
|
||||
|
||||
sub jd_secondslocal
|
||||
{
|
||||
my($jd, $hr, $min, $sec) = @_;
|
||||
my $jds = jd_secondsgm($jd, $hr, $min, $sec);
|
||||
return $jds - tz_local_offset($jds);
|
||||
}
|
||||
|
||||
# this uses a 0-11 month to correctly reverse localtime()
|
||||
sub jd_timelocal
|
||||
{
|
||||
my ($sec,$min,$hours,$mday,$mon,$year) = @_;
|
||||
$year += 1900 unless $year > 1000;
|
||||
my $jd = julian_day($year, $mon+1, $mday);
|
||||
my $jds = jd_secondsgm($jd, $hours, $min, $sec);
|
||||
return $jds - tz_local_offset($jds);
|
||||
}
|
||||
|
||||
# this uses a 0-11 month to correctly reverse gmtime()
|
||||
sub jd_timegm
|
||||
{
|
||||
my ($sec,$min,$hours,$mday,$mon,$year) = @_;
|
||||
$year += 1900 unless $year > 1000;
|
||||
my $jd = julian_day($year, $mon+1, $mday);
|
||||
return jd_secondsgm($jd, $hours, $min, $sec);
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
__DATA__
|
||||
|
||||
=head1 NAME
|
||||
|
||||
Time::JulianDay -- Julian calendar manipulations
|
||||
|
||||
=head1 SYNOPSIS
|
||||
|
||||
use Time::JulianDay
|
||||
|
||||
$jd = julian_day($year, $month_1_to_12, $day)
|
||||
$jd = local_julian_day($seconds_since_1970);
|
||||
$jd = gm_julian_day($seconds_since_1970);
|
||||
($year, $month_1_to_12, $day) = inverse_julian_day($jd)
|
||||
$dow = day_of_week($jd)
|
||||
|
||||
print (Sun,Mon,Tue,Wed,Thu,Fri,Sat)[$dow];
|
||||
|
||||
$seconds_since_jan_1_1970 = jd_secondslocal($jd, $hour, $min, $sec)
|
||||
$seconds_since_jan_1_1970 = jd_secondsgm($jd, $hour, $min, $sec)
|
||||
$seconds_since_jan_1_1970 = jd_timelocal($sec,$min,$hours,$mday,$month_0_to_11,$year)
|
||||
$seconds_since_jan_1_1970 = jd_timegm($sec,$min,$hours,$mday,$month_0_to_11,$year)
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
JulianDay is a package that manipulates dates as number of days since
|
||||
some time a long time ago. It's easy to add and subtract time
|
||||
using julian days...
|
||||
|
||||
The day_of_week returned by day_of_week() is 0 for Sunday, and 6 for
|
||||
Saturday and everything else is in between.
|
||||
|
||||
=head1 GENESIS
|
||||
|
||||
Written by David Muir Sharnoff <muir@idiom.com> with help from
|
||||
previous work by
|
||||
Kurt Jaeger aka PI <zrzr0111@helpdesk.rus.uni-stuttgart.de>
|
||||
based on postings from: Ian Miller <ian_m@cix.compulink.co.uk>;
|
||||
Gary Puckering <garyp%cognos.uucp@uunet.uu.net>
|
||||
based on Collected Algorithms of the ACM ?;
|
||||
and the unknown-to-me author of Time::Local.
|
||||
|
||||
=head1 LICENSE
|
||||
|
||||
Copyright (C) 1996-1999 David Muir Sharnoff. License hereby
|
||||
granted for anyone to use, modify or redistribute this module at
|
||||
their own risk. Please feed useful changes back to muir@idiom.com.
|
||||
|
|
@ -0,0 +1,283 @@
|
|||
|
||||
package Time::Timezone;
|
||||
|
||||
require 5.002;
|
||||
|
||||
require Exporter;
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw(tz2zone tz_local_offset tz_offset tz_name);
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
use Carp;
|
||||
use strict;
|
||||
|
||||
# Parts stolen from code by Paul Foley <paul@ascent.com>
|
||||
|
||||
use vars qw($VERSION);
|
||||
|
||||
$VERSION = 2003.0211;
|
||||
|
||||
sub tz2zone
|
||||
{
|
||||
my($TZ, $time, $isdst) = @_;
|
||||
|
||||
use vars qw(%tzn_cache);
|
||||
|
||||
$TZ = defined($ENV{'TZ'}) ? ( $ENV{'TZ'} ? $ENV{'TZ'} : 'GMT' ) : ''
|
||||
unless $TZ;
|
||||
|
||||
# Hack to deal with 'PST8PDT' format of TZ
|
||||
# Note that this can't deal with all the esoteric forms, but it
|
||||
# does recognize the most common: [:]STDoff[DST[off][,rule]]
|
||||
|
||||
if (! defined $isdst) {
|
||||
my $j;
|
||||
$time = time() unless $time;
|
||||
($j, $j, $j, $j, $j, $j, $j, $j, $isdst) = localtime($time);
|
||||
}
|
||||
|
||||
if (defined $tzn_cache{$TZ}->[$isdst]) {
|
||||
return $tzn_cache{$TZ}->[$isdst];
|
||||
}
|
||||
|
||||
if ($TZ =~ /^
|
||||
( [^:\d+\-,] {3,} )
|
||||
( [+-] ?
|
||||
\d {1,2}
|
||||
( : \d {1,2} ) {0,2}
|
||||
)
|
||||
( [^\d+\-,] {3,} )?
|
||||
/x
|
||||
) {
|
||||
$TZ = $isdst ? $4 : $1;
|
||||
$tzn_cache{$TZ} = [ $1, $4 ];
|
||||
} else {
|
||||
$tzn_cache{$TZ} = [ $TZ, $TZ ];
|
||||
}
|
||||
return $TZ;
|
||||
}
|
||||
|
||||
sub tz_local_offset
|
||||
{
|
||||
my ($time) = @_;
|
||||
|
||||
$time = time() unless $time;
|
||||
my (@l) = localtime($time);
|
||||
my $isdst = $l[8] || 0;
|
||||
my $tzenv = defined($ENV{TZ}) ? $ENV{TZ} : "__notz";
|
||||
|
||||
if ($Timezone::tz_local{$tzenv} &&
|
||||
defined($Timezone::tz_local{$tzenv}[$isdst])) {
|
||||
return $Timezone::tz_local{$tzenv}[$isdst];
|
||||
}
|
||||
|
||||
$Timezone::tz_local{$tzenv}[$isdst] = &calc_off($time);
|
||||
|
||||
return $Timezone::tz_local{$tzenv}[$isdst];
|
||||
}
|
||||
|
||||
sub calc_off
|
||||
{
|
||||
my ($time) = @_;
|
||||
|
||||
my (@l) = localtime($time);
|
||||
my (@g) = gmtime($time);
|
||||
|
||||
my $off;
|
||||
|
||||
$off = $l[0] - $g[0]
|
||||
+ ($l[1] - $g[1]) * 60
|
||||
+ ($l[2] - $g[2]) * 3600;
|
||||
|
||||
# subscript 7 is yday.
|
||||
|
||||
if ($l[7] == $g[7]) {
|
||||
# done
|
||||
} elsif ($l[7] == $g[7] + 1) {
|
||||
$off += 86400;
|
||||
} elsif ($l[7] == $g[7] - 1) {
|
||||
$off -= 86400;
|
||||
} elsif ($l[7] < $g[7]) {
|
||||
# crossed over a year boundry!
|
||||
# localtime is beginning of year, gmt is end
|
||||
# therefore local is ahead
|
||||
$off += 86400;
|
||||
} else {
|
||||
$off -= 86400;
|
||||
}
|
||||
|
||||
return $off;
|
||||
}
|
||||
|
||||
# constants
|
||||
# The rest of the file comes from Graham Barr <bodg@tiuk.ti.com>
|
||||
|
||||
CONFIG: {
|
||||
use vars qw(%dstZone %zoneOff %dstZoneOff %Zone);
|
||||
|
||||
%dstZone = (
|
||||
# "ndt" => -2*3600-1800, # Newfoundland Daylight
|
||||
"adt" => -3*3600, # Atlantic Daylight
|
||||
"edt" => -4*3600, # Eastern Daylight
|
||||
"cdt" => -5*3600, # Central Daylight
|
||||
"mdt" => -6*3600, # Mountain Daylight
|
||||
"pdt" => -7*3600, # Pacific Daylight
|
||||
"ydt" => -8*3600, # Yukon Daylight
|
||||
"hdt" => -9*3600, # Hawaii Daylight
|
||||
"bst" => +1*3600, # British Summer
|
||||
"mest" => +2*3600, # Middle European Summer
|
||||
"met dst" => +2*3600, # Middle European Summer
|
||||
"sst" => +2*3600, # Swedish Summer
|
||||
"fst" => +2*3600, # French Summer
|
||||
"wadt" => +8*3600, # West Australian Daylight
|
||||
# "cadt" => +10*3600+1800, # Central Australian Daylight
|
||||
"eadt" => +11*3600, # Eastern Australian Daylight
|
||||
"nzdt" => +13*3600, # New Zealand Daylight
|
||||
);
|
||||
|
||||
%Zone = (
|
||||
"gmt" => 0, # Greenwich Mean
|
||||
"ut" => 0, # Universal (Coordinated)
|
||||
"utc" => 0,
|
||||
"wet" => 0, # Western European
|
||||
"wat" => -1*3600, # West Africa
|
||||
"at" => -2*3600, # Azores
|
||||
# For completeness. BST is also British Summer, and GST is also Guam Standard.
|
||||
# "bst" => -3*3600, # Brazil Standard
|
||||
# "gst" => -3*3600, # Greenland Standard
|
||||
# "nft" => -3*3600-1800,# Newfoundland
|
||||
# "nst" => -3*3600-1800,# Newfoundland Standard
|
||||
"ast" => -4*3600, # Atlantic Standard
|
||||
"est" => -5*3600, # Eastern Standard
|
||||
"cst" => -6*3600, # Central Standard
|
||||
"cest" => +2*3600, # Central European Summer
|
||||
"mst" => -7*3600, # Mountain Standard
|
||||
"pst" => -8*3600, # Pacific Standard
|
||||
"yst" => -9*3600, # Yukon Standard
|
||||
"hst" => -10*3600, # Hawaii Standard
|
||||
"cat" => -10*3600, # Central Alaska
|
||||
"ahst" => -10*3600, # Alaska-Hawaii Standard
|
||||
"nt" => -11*3600, # Nome
|
||||
"idlw" => -12*3600, # International Date Line West
|
||||
"cet" => +1*3600, # Central European
|
||||
"met" => +1*3600, # Middle European
|
||||
"mewt" => +1*3600, # Middle European Winter
|
||||
"swt" => +1*3600, # Swedish Winter
|
||||
"fwt" => +1*3600, # French Winter
|
||||
"eet" => +2*3600, # Eastern Europe, USSR Zone 1
|
||||
"bt" => +3*3600, # Baghdad, USSR Zone 2
|
||||
# "it" => +3*3600+1800,# Iran
|
||||
"zp4" => +4*3600, # USSR Zone 3
|
||||
"zp5" => +5*3600, # USSR Zone 4
|
||||
"ist" => +5*3600+1800,# Indian Standard
|
||||
"zp6" => +6*3600, # USSR Zone 5
|
||||
# For completeness. NST is also Newfoundland Stanard, and SST is also Swedish Summer.
|
||||
# "nst" => +6*3600+1800,# North Sumatra
|
||||
# "sst" => +7*3600, # South Sumatra, USSR Zone 6
|
||||
"wast" => +7*3600, # West Australian Standard
|
||||
# "jt" => +7*3600+1800,# Java (3pm in Cronusland!)
|
||||
"cct" => +8*3600, # China Coast, USSR Zone 7
|
||||
"jst" => +9*3600, # Japan Standard, USSR Zone 8
|
||||
# "cast" => +9*3600+1800,# Central Australian Standard
|
||||
"east" => +10*3600, # Eastern Australian Standard
|
||||
"gst" => +10*3600, # Guam Standard, USSR Zone 9
|
||||
"nzt" => +12*3600, # New Zealand
|
||||
"nzst" => +12*3600, # New Zealand Standard
|
||||
"idle" => +12*3600, # International Date Line East
|
||||
);
|
||||
|
||||
%zoneOff = reverse(%Zone);
|
||||
%dstZoneOff = reverse(%dstZone);
|
||||
|
||||
# Preferences
|
||||
|
||||
$zoneOff{0} = 'gmt';
|
||||
$dstZoneOff{3600} = 'bst';
|
||||
|
||||
}
|
||||
|
||||
sub tz_offset
|
||||
{
|
||||
my ($zone, $time) = @_;
|
||||
|
||||
return &tz_local_offset() unless($zone);
|
||||
|
||||
$time = time() unless $time;
|
||||
my(@l) = localtime($time);
|
||||
my $dst = $l[8];
|
||||
|
||||
$zone = lc $zone;
|
||||
|
||||
if ($zone =~ /^([\-\+]\d{3,4})$/) {
|
||||
my $sign = $1 < 0 ? -1 : 1 ;
|
||||
my $v = abs(0 + $1);
|
||||
return $sign * 60 * (int($v / 100) * 60 + ($v % 100));
|
||||
} elsif (exists $dstZone{$zone} && ($dst || !exists $Zone{$zone})) {
|
||||
return $dstZone{$zone};
|
||||
} elsif(exists $Zone{$zone}) {
|
||||
return $Zone{$zone};
|
||||
}
|
||||
undef;
|
||||
}
|
||||
|
||||
sub tz_name
|
||||
{
|
||||
my ($off, $time) = @_;
|
||||
|
||||
$time = time() unless $time;
|
||||
my(@l) = localtime($time);
|
||||
my $dst = $l[8];
|
||||
|
||||
if (exists $dstZoneOff{$off} && ($dst || !exists $zoneOff{$off})) {
|
||||
return $dstZoneOff{$off};
|
||||
} elsif (exists $zoneOff{$off}) {
|
||||
return $zoneOff{$off};
|
||||
}
|
||||
sprintf("%+05d", int($off / 60) * 100 + $off % 60);
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
__DATA__
|
||||
|
||||
=head1 NAME
|
||||
|
||||
Time::Timezone -- miscellaneous timezone manipulations routines
|
||||
|
||||
=head1 SYNOPSIS
|
||||
|
||||
use Time::Timezone;
|
||||
print tz2zone();
|
||||
print tz2zone($ENV{'TZ'});
|
||||
print tz2zone($ENV{'TZ'}, time());
|
||||
print tz2zone($ENV{'TZ'}, undef, $isdst);
|
||||
$offset = tz_local_offset();
|
||||
$offset = tz_offset($TZ);
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
This is a collection of miscellaneous timezone manipulation routines.
|
||||
|
||||
C<tz2zone()> parses the TZ environment variable and returns a timezone
|
||||
string suitable for inclusion in L<date>-like output. It opionally takes
|
||||
a timezone string, a time, and a is-dst flag.
|
||||
|
||||
C<tz_local_offset()> determins the offset from GMT time in seconds. It
|
||||
only does the calculation once.
|
||||
|
||||
C<tz_offset()> determines the offset from GMT in seconds of a specified
|
||||
timezone.
|
||||
|
||||
C<tz_name()> determines the name of the timezone based on its offset
|
||||
|
||||
=head1 AUTHORS
|
||||
|
||||
Graham Barr <bodg@tiuk.ti.com>
|
||||
David Muir Sharnoff <muir@idiom.com>
|
||||
Paul Foley <paul@ascent.com>
|
||||
|
||||
=head1 LICENSE
|
||||
|
||||
David Muir Sharnoff disclaims any copyright and puts his contribution
|
||||
to this module in the public domain.
|
||||
|
|
@ -0,0 +1,96 @@
|
|||
#!/bin/sh
|
||||
|
||||
# OLD BUILD SCRIPT
|
||||
# THIS IS DEPRECATED, USE 'make'
|
||||
|
||||
echo "use make"
|
||||
|
||||
exit
|
||||
|
||||
export DOOMWADDIR="/usr/share/games/doom"
|
||||
|
||||
# create the dynamic titlepic :)
|
||||
|
||||
cd graphics/titlepic
|
||||
./create_caption
|
||||
cd ../..
|
||||
|
||||
# update wadinfo.txt
|
||||
|
||||
./wadinfo-builder.pl < wadinfo.txt.real > wadinfo.txt
|
||||
|
||||
#---------------------------------------------------------
|
||||
# build wad
|
||||
|
||||
echo "** main build **" > build.output
|
||||
echo "** main build **" > build.errors
|
||||
echo "main build"
|
||||
|
||||
rm -f wads/freedoom.wad
|
||||
deutex -rgb 0 255 255 -lumps -patch -flats -sounds -musics -graphics -sprites -build wadinfo.txt wads/freedoom.wad >> build.output 2>> build.errors
|
||||
|
||||
# gzip wad
|
||||
|
||||
gzip < wads/freedoom.wad > wads/freedoom.wad.gz
|
||||
|
||||
#---------------------------------------------------------
|
||||
# build levels wad
|
||||
|
||||
echo "** levels build **" >> build.output
|
||||
echo "** levels build **" >> build.errors
|
||||
echo "levels build"
|
||||
|
||||
rm -f wads/freedoom_levels.wad
|
||||
deutex -levels -build wadinfo.txt wads/freedoom_levels.wad >> build.output 2>> build.errors
|
||||
|
||||
# gzip
|
||||
|
||||
gzip < wads/freedoom_levels.wad > wads/freedoom_levels.wad.gz
|
||||
|
||||
#---------------------------------------------------------
|
||||
# build texture wad
|
||||
|
||||
echo "** textures build **" >> build.output
|
||||
echo "** textures build **" >> build.errors
|
||||
echo "texture build"
|
||||
|
||||
rm -f wads/freedoom_textures.wad
|
||||
deutex -rgb 0 255 255 -patch -flats -build wadinfo.txt wads/freedoom_textures.wad >> build.output 2>> build.errors
|
||||
|
||||
gzip < wads/freedoom_textures.wad > wads/freedoom_textures.wad.gz
|
||||
|
||||
#---------------------------------------------------------
|
||||
# build sprites wad
|
||||
|
||||
echo "** sprites build **" >> build.output
|
||||
echo "** sprites build **" >> build.errors
|
||||
echo "sprites build"
|
||||
|
||||
rm -f wads/freedoom_sprites.wad
|
||||
deutex -sprites -rgb 0 255 255 -build wadinfo.txt wads/freedoom_sprites.wad >> build.output 2>> build.errors
|
||||
|
||||
gzip < wads/freedoom_sprites.wad > wads/freedoom_sprites.wad.gz
|
||||
|
||||
#---------------------------------------------------------
|
||||
# build sounds wad
|
||||
|
||||
echo "** sounds build **" >> build.output
|
||||
echo "** sounds build **" >> build.errors
|
||||
echo "sounds build"
|
||||
|
||||
rm -f wads/freedoom_sounds.wad
|
||||
deutex -sounds -musics -build wadinfo.txt wads/freedoom_sounds.wad >> build.output 2>> build.errors
|
||||
|
||||
echo "gzipping"
|
||||
|
||||
gzip < wads/freedoom_sounds.wad > wads/freedoom_sounds.wad.gz
|
||||
|
||||
# output
|
||||
|
||||
cat build.output build.errors
|
||||
|
||||
# md5sum
|
||||
|
||||
cd wads
|
||||
md5sum `ls *.wad *.wad.gz` > freedoom.md5sum
|
||||
cd ..
|
|
@ -0,0 +1,34 @@
|
|||
#!/usr/bin/perl
|
||||
|
||||
sub do_dir {
|
||||
my ($dir, $extn) = @_;
|
||||
my @files = glob("$dir/*.$extn");
|
||||
my %spriteowners = {};
|
||||
|
||||
print "[$dir]\n\n";
|
||||
|
||||
foreach (@files) {
|
||||
my $link = readlink ($_);
|
||||
|
||||
next if (!$link);
|
||||
|
||||
my ($owner) = $link;
|
||||
my $base = $_;
|
||||
|
||||
$base =~ s/^\w*\///;
|
||||
$base =~ s/\.$extn//;
|
||||
$owner =~ s/\/.*$//;
|
||||
|
||||
print "$base: $owner\n";
|
||||
}
|
||||
|
||||
print "\n";
|
||||
}
|
||||
|
||||
do_dir "graphics", "gif";
|
||||
do_dir "levels", "wad";
|
||||
do_dir "sprites", "gif";
|
||||
do_dir "flats", "gif";
|
||||
do_dir "patches", "gif";
|
||||
do_dir "lumps", "lmp";
|
||||
|
|
@ -0,0 +1,53 @@
|
|||
#!/usr/bin/perl
|
||||
#
|
||||
# extract graphic offsets for graphics and sprites
|
||||
# replace entries in the shareware wadinfo.txt with the appropriate
|
||||
# lines from the main wadinfo.txt
|
||||
|
||||
open(WADINFO, "wadinfo.txt.in") or die "cant open wadinfo.txt";
|
||||
|
||||
my %resdata;
|
||||
my $grafmode = 0;
|
||||
|
||||
while(<WADINFO>) {
|
||||
chomp;
|
||||
|
||||
s/\#.*$//; # comments
|
||||
next if (/^\s*$/);
|
||||
|
||||
if (/\[.*\]/) {
|
||||
my $section = $_;
|
||||
$section =~ s/\[(.*)\]/$1/;
|
||||
$grafmode = $section eq "graphics" || $section eq "sprites";
|
||||
} elsif ($grafmode) {
|
||||
$sprname = lc $_;
|
||||
$sprname =~ s/\s.*$//;
|
||||
$resdata{$sprname} = $_;
|
||||
}
|
||||
}
|
||||
|
||||
close(WADINFO);
|
||||
|
||||
open(WADINFO, "wadinfo_sw.txt.in.in") or die "cant open wadinfo_sw.txt";
|
||||
|
||||
while (<WADINFO>) {
|
||||
chomp;
|
||||
|
||||
if (/\s*\#.*$/ || /^\s*$/) {
|
||||
} elsif (/\[.*\]/) {
|
||||
my $section = $_;
|
||||
$section =~ s/\[(.*)\]/$1/;
|
||||
$grafmode = $section eq "graphics" || $section eq "sprites";
|
||||
} elsif ($grafmode) {
|
||||
$sprname = lc $_;
|
||||
$sprname =~ s/\s.*$//;
|
||||
if ($resdata{$sprname}) {
|
||||
$_ = $resdata{$sprname} . "\t\t# forwarded from wadinfo.txt";
|
||||
}
|
||||
}
|
||||
|
||||
print "$_\n";
|
||||
}
|
||||
|
||||
close(WADINFO);
|
||||
|
|
@ -0,0 +1 @@
|
|||
graf-extract.pl
|
|
@ -0,0 +1,135 @@
|
|||
#!/usr/bin/perl
|
||||
#
|
||||
# front end part of the hires patch->texture convertor to be
|
||||
#
|
||||
|
||||
use strict;
|
||||
|
||||
my %textures;
|
||||
my %patches;
|
||||
|
||||
sub file_date {
|
||||
my ($file) = @_;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
sub get_patches {
|
||||
open(PATCHES, "textures/patchsizes") or die "cant open patchsizes";
|
||||
|
||||
%patches = {};
|
||||
|
||||
foreach (<PATCHES>) {
|
||||
chomp;
|
||||
my @fields = split(/\s+/);
|
||||
my $file = "patches_hi/$fields[0].png";
|
||||
my $newpatch = {
|
||||
name => $fields[0],
|
||||
width => $fields[1],
|
||||
height => $fields[2],
|
||||
file => $file,
|
||||
exists => -e $file,
|
||||
date => file_date($file)+1,
|
||||
};
|
||||
|
||||
# store in hash
|
||||
|
||||
$patches{$fields[0]} = $newpatch;
|
||||
}
|
||||
|
||||
close(PATCHES);
|
||||
}
|
||||
|
||||
sub get_textures {
|
||||
open(TEXTURES, "textures/combined/texture1.txt") or die "cant open texture1.txt";
|
||||
|
||||
%textures = {};
|
||||
|
||||
my $curtext = undef;
|
||||
|
||||
foreach(<TEXTURES>) {
|
||||
chomp;
|
||||
next if (/^\#/ || /^\;/ || /^\s*$/);
|
||||
$_ = lc $_;
|
||||
|
||||
my @fields = split(/\s+/);
|
||||
|
||||
if ($fields[0] eq "\*") {
|
||||
# another patch
|
||||
|
||||
my $newpatch = {
|
||||
patch => $patches{$fields[1]},
|
||||
x => $fields[2],
|
||||
y => $fields[3],
|
||||
};
|
||||
|
||||
my $curpatches = $curtext->{patches};
|
||||
|
||||
push(@$curpatches, $newpatch);
|
||||
} else {
|
||||
# new texture
|
||||
|
||||
my $file = "patches_hi/.tga/$fields[0]";
|
||||
my $patchlist = [];
|
||||
|
||||
$curtext = {
|
||||
name => $fields[0],
|
||||
file => $file,
|
||||
width => $fields[1],
|
||||
height => $fields[2],
|
||||
date => file_date($file),
|
||||
patches => $patchlist,
|
||||
};
|
||||
|
||||
# get file date of existing file?
|
||||
|
||||
$textures{$fields[0]} = $curtext;
|
||||
}
|
||||
}
|
||||
|
||||
close(TEXTURES);
|
||||
}
|
||||
|
||||
sub build_texture {
|
||||
my ($this) = @_;
|
||||
|
||||
print "build texture $this->{name}\n";
|
||||
}
|
||||
|
||||
sub dep_loop {
|
||||
mainloop: foreach (keys %textures) {
|
||||
my $this = $textures{$_};
|
||||
my $patchlist = $this->{patches};
|
||||
my $uptodate = 1;
|
||||
|
||||
#print "$_: " . @$patchlist . "\n";
|
||||
|
||||
foreach (@$patchlist) {
|
||||
#print $this->{name} . " : " . $_->{patch}->{name} . "\n";
|
||||
if (!$_->{patch}->{exists}) {
|
||||
# a patch is missing, cant build this
|
||||
|
||||
#print $this->{name} . ": patch missing\n";
|
||||
next mainloop;
|
||||
}
|
||||
if ($_->{patch}->{date} > $this->{date}) {
|
||||
|
||||
# if the date of one of the patches is
|
||||
# newer than the date of the produced
|
||||
# texture file, this is not up to date
|
||||
|
||||
$uptodate = 0;
|
||||
}
|
||||
}
|
||||
|
||||
if (!$uptodate) {
|
||||
build_texture($this);
|
||||
} else {
|
||||
#print $this->{name} . ": up to date\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
get_patches;
|
||||
get_textures;
|
||||
dep_loop;
|
|
@ -0,0 +1,23 @@
|
|||
#!/usr/bin/perl
|
||||
#
|
||||
# Convert all pngs to tgas
|
||||
#
|
||||
|
||||
# clear out old tgas
|
||||
|
||||
`rm hires/*.tga`;
|
||||
|
||||
# get list of input files
|
||||
|
||||
@files = (glob ("flats_hi/*.png"), glob ("patches_hi/*.png"));
|
||||
|
||||
foreach(@files) {
|
||||
$tgafile = $_;
|
||||
$tgafile =~ s/.*\///;
|
||||
$tgafile =~ s/png$/tga/;
|
||||
|
||||
$cmd = "pngtopnm < $_ | ppmtotga > hires/$tgafile 2>/dev/null";
|
||||
#print "$cmd\n";
|
||||
`$cmd`;
|
||||
}
|
||||
|
|
@ -0,0 +1 @@
|
|||
hires_build.pl
|
|
@ -0,0 +1,10 @@
|
|||
#!/usr/bin/perl
|
||||
|
||||
use strict;
|
||||
|
||||
while (<>) {
|
||||
chomp;
|
||||
`grep $_ CREDITS`;
|
||||
print "$_ not found\n" if $?;
|
||||
}
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
#!/usr/bin/perl
|
||||
|
||||
use strict;
|
||||
|
||||
my %people = {};
|
||||
|
||||
foreach (glob("*/*.*")) {
|
||||
my $pointto = readlink($_);
|
||||
|
||||
if (!$pointto) {
|
||||
print STDERR "$_ not a link\n";
|
||||
} else {
|
||||
my ($person) = ($pointto =~ /^(\w+)\//);
|
||||
$people{$person} = 1 if $person;
|
||||
}
|
||||
}
|
||||
|
||||
foreach (keys %people) {
|
||||
print "$_\n";
|
||||
}
|
||||
|
|
@ -0,0 +1 @@
|
|||
doom2tr not found
|
|
@ -0,0 +1,73 @@
|
|||
deathmaster213
|
||||
darkstalker
|
||||
spike
|
||||
titlepic
|
||||
tarin
|
||||
airraid
|
||||
bastetfurry
|
||||
ravage
|
||||
sirfragsalot
|
||||
kaiser
|
||||
ralphis
|
||||
amarande
|
||||
doom2
|
||||
picklehammer
|
||||
cph
|
||||
doom2tr
|
||||
fraggle
|
||||
jond
|
||||
espi
|
||||
scubasteve
|
||||
isle
|
||||
archvile46
|
||||
spinspyder
|
||||
ajapted
|
||||
wildweasel
|
||||
lurker
|
||||
railgunner
|
||||
jayextee
|
||||
andrewb
|
||||
tobester
|
||||
jonr
|
||||
wildman
|
||||
slayer226
|
||||
csabo
|
||||
meathead
|
||||
edd
|
||||
cacodemon_leader
|
||||
nightfang
|
||||
cyb
|
||||
linguica
|
||||
hyena
|
||||
fredrik
|
||||
locust
|
||||
dsells
|
||||
kurt
|
||||
adamizer
|
||||
draconio
|
||||
rancor
|
||||
mouse
|
||||
enjay
|
||||
mystic
|
||||
torn
|
||||
mellow
|
||||
vicious
|
||||
saint_of_killers
|
||||
bloodshedder
|
||||
submerge
|
||||
sgtcrispy
|
||||
kman
|
||||
metabolist
|
||||
HASH(0x80fbb0c)
|
||||
julian
|
||||
oblivion
|
||||
mewse
|
||||
ebola
|
||||
nb_nmare
|
||||
zigmund
|
||||
lazer
|
||||
zeurkous
|
||||
maonth
|
||||
jstepp
|
||||
nrkn
|
||||
geekmarine
|
|
@ -0,0 +1,11 @@
|
|||
#!/usr/bin/perl
|
||||
#
|
||||
# get dimensions of all patches
|
||||
# run file -L patches/*.gif and pipe through this
|
||||
|
||||
while (<>) {
|
||||
chomp;
|
||||
s/^(.*)\.gif.*\s(\d+)\ x\ (\d+)$/$1\ $2\ $3/;
|
||||
print "$_\n";
|
||||
}
|
||||
|
|
@ -0,0 +1,114 @@
|
|||
// -*- C++ -*-
|
||||
//
|
||||
// This reads the wadinfo.txt and outputs a new wadinfo.txt
|
||||
// with the appropriate lines commented out for files which
|
||||
// do not yet exist. This is so that wadinfo.txt can be
|
||||
// automagically updated as we get more textures.
|
||||
//
|
||||
// This is also further proof that I need to learn perl.
|
||||
//
|
||||
// By Simon Howard (fraggle)
|
||||
//
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <dirent.h>
|
||||
|
||||
//
|
||||
// check if a file exists in a subdirectory
|
||||
// this ignores extension
|
||||
// eg. if we do file_exists("flats", "ceil5_1")
|
||||
// and a file flats/ceil5_1.gif exists it willl return 1
|
||||
//
|
||||
|
||||
static int file_exists(char *dirname, char *filename)
|
||||
{
|
||||
DIR *dir;
|
||||
struct dirent *direntry;
|
||||
|
||||
dir = opendir(dirname);
|
||||
|
||||
if(!dir) {
|
||||
fprintf(stderr, "cannot open dir: %s\n", dirname);
|
||||
exit(-1);
|
||||
}
|
||||
|
||||
while(direntry = readdir(dir)) {
|
||||
if(!strncasecmp(direntry->d_name, filename, strlen(filename))
|
||||
&& direntry->d_name[strlen(filename)] == '.') {
|
||||
closedir(dir);
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
closedir(dir);
|
||||
return 0;
|
||||
}
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
char *section = NULL;
|
||||
|
||||
while(!feof(stdin)) {
|
||||
char buffer[128];
|
||||
char file[128];
|
||||
|
||||
buffer[0] = '\0';
|
||||
|
||||
fgets(buffer, 126, stdin);
|
||||
|
||||
{
|
||||
char *p;
|
||||
for(p=buffer+strlen(buffer)-1; p >= buffer; p--) {
|
||||
if(isprint(*p))
|
||||
break;
|
||||
|
||||
*p = '\0';
|
||||
}
|
||||
}
|
||||
|
||||
// comments and empty lines pass through
|
||||
|
||||
if(buffer[0] == '#' || buffer[0] == '\0') {
|
||||
puts(buffer);
|
||||
continue;
|
||||
}
|
||||
|
||||
// section header
|
||||
|
||||
if(buffer[0] == '[') {
|
||||
if(section)
|
||||
free(section);
|
||||
|
||||
section = strdup(buffer+1);
|
||||
|
||||
*strchr(section, ']') = '\0';
|
||||
|
||||
puts(buffer);
|
||||
|
||||
if(!strcmp(section, "texture1") ||
|
||||
!strcmp(section, "texture2")) {
|
||||
strcpy(section, "textures");
|
||||
}
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
// copy first word of the buffer
|
||||
// into a second buffer
|
||||
|
||||
{
|
||||
char *f, *b;
|
||||
for(b=buffer, f=file;
|
||||
!isspace(*b) && *b;)
|
||||
*f++ = *b++;
|
||||
*f = '\0';
|
||||
}
|
||||
|
||||
if(!section || file_exists(section, file)) {
|
||||
puts(buffer);
|
||||
} else {
|
||||
printf("#%s\n", buffer);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,10 @@
|
|||
This is a bootstrap wad. deutex requires an IWAD to build wads. This
|
||||
wad contains all the lumps deutex needs: PLAYPAL (the freedoom PLAYPAL),
|
||||
an empty TEXTURE1 lump and a PNAMES lump with one lump in (deutex needs
|
||||
PNAMES lumps to have at least one entry)
|
||||
|
||||
deutex includes all textures from the parent iwad when building wads so
|
||||
it is important the bootstrap wad has as few textures as possible.
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,17 @@
|
|||
#!/bin/sh
|
||||
#
|
||||
# build wrapper
|
||||
# this runs make, redirecting all output to build.output for the
|
||||
# public to see. a tail process is spawned in the background
|
||||
# to send the output to the console as well.
|
||||
|
||||
export VERSION="0.4"
|
||||
|
||||
if [ x$* == x ] ; then
|
||||
# make all $* >> build.output 2>&1
|
||||
make latest/latest.wad.gz $* 2>&1 | tee build.output
|
||||
make latest/ulatest.wad.gz $* 2>&1 | tee -a build.output
|
||||
else
|
||||
make $* 2>&1 | tee build.output
|
||||
fi
|
||||
|
|
@ -0,0 +1,293 @@
|
|||
tools/simplecpp -DDOOM1 -DDOOM2 < textures/combined.txt > textures/doom2/texture1.txt
|
||||
./extract-pnames.pl < textures/doom2/texture1.txt > textures/doom2/pnames.txt
|
||||
tools/simplecpp -P -DDOOM2 < buildcfg.txt | ./wadinfo-builder.pl > wadinfo.txt
|
||||
make -C graphics/titlepic
|
||||
make[1]: Entering directory `/home/groups/f/fr/freedoom/htdocs/deutex/graphics/titlepic'
|
||||
./create_caption
|
||||
make[1]: Leaving directory `/home/groups/f/fr/freedoom/htdocs/deutex/graphics/titlepic'
|
||||
make -C lumps
|
||||
make[1]: Entering directory `/home/groups/f/fr/freedoom/htdocs/deutex/lumps'
|
||||
echo 0.4 > freedoom.lmp
|
||||
make[1]: Leaving directory `/home/groups/f/fr/freedoom/htdocs/deutex/lumps'
|
||||
ln -sf doom2/texture1.txt textures/texture1.txt
|
||||
rm -f /tmp/freedoom-wads/freedoom.wad
|
||||
tools/deutex -fullsnd -noshrink -rgb 0 255 255 -doom2 bootstrap/ -textures -lumps -patch -flats -sounds -musics -graphics -sprites -build wadinfo.txt /tmp/freedoom-wads/freedoom.wad
|
||||
DeuTex 4.4.0 Copyright 1994,95 O.Montanuy, Copyright 1999-2000 A.Majorel
|
||||
Ported to DOS, Unix, OS/2, Linux, SGiX, DEC Alpha.
|
||||
Thanx to M.Mathews, P.Allansson, C.Rossi, J.Bonfield, U.Munk.
|
||||
This program is freeware.
|
||||
Type "deutex --help" to get the list of commands.
|
||||
Saving complete sounds.
|
||||
Transparent colour is R=0 G=255 B=255
|
||||
Main directory: bootstrap/.
|
||||
Select textures
|
||||
Select lumps
|
||||
Select patches
|
||||
Select flats
|
||||
Select sounds
|
||||
Select musics
|
||||
Select graphics
|
||||
Select sprites
|
||||
Translating wadinfo.txt into a PWAD /tmp/freedoom-wads/freedoom.wad
|
||||
Reading WAD bootstrap//doom2.wad: (3 entries)
|
||||
Creating PWAD /tmp/freedoom-wads/freedoom.wad
|
||||
Color palette is Doom
|
||||
Making Lumps
|
||||
Making Texture1
|
||||
Read 493 Textures in ./textures/texture1.txt
|
||||
Making Pnames
|
||||
Making Sounds
|
||||
Making Musics
|
||||
Making Graphics
|
||||
Warning: GIF support may go away in the future (see
|
||||
Warning: http://lpf.ai.mit.edu/Patents/Gif/Gif.html).
|
||||
Warning: Switch to PPM or BMP.
|
||||
Warning: Color quantisation is slow. Use ppmquant.
|
||||
Making Sprites
|
||||
Making Wall Patches
|
||||
Making Flats
|
||||
WAD is complete: size 9964932 bytes.
|
||||
rm -f /tmp/freedoom-wads/freedoom_graphics.wad
|
||||
tools/deutex -fullsnd -noshrink -rgb 0 255 255 -doom2 bootstrap/ -graphics -build wadinfo.txt /tmp/freedoom-wads/freedoom_graphics.wad
|
||||
DeuTex 4.4.0 Copyright 1994,95 O.Montanuy, Copyright 1999-2000 A.Majorel
|
||||
Ported to DOS, Unix, OS/2, Linux, SGiX, DEC Alpha.
|
||||
Thanx to M.Mathews, P.Allansson, C.Rossi, J.Bonfield, U.Munk.
|
||||
This program is freeware.
|
||||
Type "deutex --help" to get the list of commands.
|
||||
Saving complete sounds.
|
||||
Transparent colour is R=0 G=255 B=255
|
||||
Main directory: bootstrap/.
|
||||
Select graphics
|
||||
Translating wadinfo.txt into a PWAD /tmp/freedoom-wads/freedoom_graphics.wad
|
||||
Reading WAD bootstrap//doom2.wad: (3 entries)
|
||||
Creating PWAD /tmp/freedoom-wads/freedoom_graphics.wad
|
||||
Color palette is Doom
|
||||
Making Graphics
|
||||
Warning: GIF support may go away in the future (see
|
||||
Warning: http://lpf.ai.mit.edu/Patents/Gif/Gif.html).
|
||||
Warning: Switch to PPM or BMP.
|
||||
Warning: Color quantisation is slow. Use ppmquant.
|
||||
WAD is complete: size 497028 bytes.
|
||||
rm -f /tmp/freedoom-wads/freedoom_levels.wad
|
||||
tools/deutex -fullsnd -noshrink -rgb 0 255 255 -doom2 bootstrap/ -levels -build wadinfo.txt /tmp/freedoom-wads/freedoom_levels.wad
|
||||
DeuTex 4.4.0 Copyright 1994,95 O.Montanuy, Copyright 1999-2000 A.Majorel
|
||||
Ported to DOS, Unix, OS/2, Linux, SGiX, DEC Alpha.
|
||||
Thanx to M.Mathews, P.Allansson, C.Rossi, J.Bonfield, U.Munk.
|
||||
This program is freeware.
|
||||
Type "deutex --help" to get the list of commands.
|
||||
Saving complete sounds.
|
||||
Transparent colour is R=0 G=255 B=255
|
||||
Main directory: bootstrap/.
|
||||
Select levels
|
||||
Translating wadinfo.txt into a PWAD /tmp/freedoom-wads/freedoom_levels.wad
|
||||
Reading WAD bootstrap//doom2.wad: (3 entries)
|
||||
Creating PWAD /tmp/freedoom-wads/freedoom_levels.wad
|
||||
Reading WAD ./levels/map01.wad: (11 entries)
|
||||
Reading WAD ./levels/map02.wad: (11 entries)
|
||||
Reading WAD ./levels/map03.wad: (11 entries)
|
||||
Reading WAD ./levels/map04.wad: (11 entries)
|
||||
Reading WAD ./levels/map05.wad: (11 entries)
|
||||
Reading WAD ./levels/map06.wad: (11 entries)
|
||||
Reading WAD ./levels/map07.wad: (11 entries)
|
||||
Reading WAD ./levels/map10.wad: (11 entries)
|
||||
Reading WAD ./levels/map11.wad: (11 entries)
|
||||
Reading WAD ./levels/map12.wad: (11 entries)
|
||||
Reading WAD ./levels/map13.wad: (11 entries)
|
||||
Reading WAD ./levels/map16.wad: (11 entries)
|
||||
Reading WAD ./levels/map17.wad: (11 entries)
|
||||
Reading WAD ./levels/map18.wad: (11 entries)
|
||||
Reading WAD ./levels/map20.wad: (11 entries)
|
||||
Reading WAD ./levels/map21.wad: (11 entries)
|
||||
Reading WAD ./levels/map22.wad: (11 entries)
|
||||
Reading WAD ./levels/map23.wad: (11 entries)
|
||||
Reading WAD ./levels/map25.wad: (11 entries)
|
||||
Reading WAD ./levels/map26.wad: (11 entries)
|
||||
Reading WAD ./levels/map27.wad: (11 entries)
|
||||
Reading WAD ./levels/map29.wad: (11 entries)
|
||||
Reading WAD ./levels/map30.wad: (11 entries)
|
||||
Reading WAD ./levels/map31.wad: (11 entries)
|
||||
Reading WAD ./levels/map32.wad: (17 entries)
|
||||
WAD is complete: size 7475816 bytes.
|
||||
rm -f /tmp/freedoom-wads/freedoom_sprites.wad
|
||||
tools/deutex -fullsnd -noshrink -rgb 0 255 255 -doom2 bootstrap/ -sprites -build wadinfo.txt /tmp/freedoom-wads/freedoom_sprites.wad
|
||||
DeuTex 4.4.0 Copyright 1994,95 O.Montanuy, Copyright 1999-2000 A.Majorel
|
||||
Ported to DOS, Unix, OS/2, Linux, SGiX, DEC Alpha.
|
||||
Thanx to M.Mathews, P.Allansson, C.Rossi, J.Bonfield, U.Munk.
|
||||
This program is freeware.
|
||||
Type "deutex --help" to get the list of commands.
|
||||
Saving complete sounds.
|
||||
Transparent colour is R=0 G=255 B=255
|
||||
Main directory: bootstrap/.
|
||||
Select sprites
|
||||
Translating wadinfo.txt into a PWAD /tmp/freedoom-wads/freedoom_sprites.wad
|
||||
Reading WAD bootstrap//doom2.wad: (3 entries)
|
||||
Creating PWAD /tmp/freedoom-wads/freedoom_sprites.wad
|
||||
Color palette is Doom
|
||||
Making Sprites
|
||||
Warning: GIF support may go away in the future (see
|
||||
Warning: http://lpf.ai.mit.edu/Patents/Gif/Gif.html).
|
||||
Warning: Switch to PPM or BMP.
|
||||
WAD is complete: size 1795312 bytes.
|
||||
rm -f /tmp/freedoom-wads/freedoom_sounds.wad
|
||||
tools/deutex -fullsnd -noshrink -rgb 0 255 255 -doom2 bootstrap/ -sounds -musics -build wadinfo.txt /tmp/freedoom-wads/freedoom_sounds.wad
|
||||
DeuTex 4.4.0 Copyright 1994,95 O.Montanuy, Copyright 1999-2000 A.Majorel
|
||||
Ported to DOS, Unix, OS/2, Linux, SGiX, DEC Alpha.
|
||||
Thanx to M.Mathews, P.Allansson, C.Rossi, J.Bonfield, U.Munk.
|
||||
This program is freeware.
|
||||
Type "deutex --help" to get the list of commands.
|
||||
Saving complete sounds.
|
||||
Transparent colour is R=0 G=255 B=255
|
||||
Main directory: bootstrap/.
|
||||
Select sounds
|
||||
Select musics
|
||||
Translating wadinfo.txt into a PWAD /tmp/freedoom-wads/freedoom_sounds.wad
|
||||
Reading WAD bootstrap//doom2.wad: (3 entries)
|
||||
Creating PWAD /tmp/freedoom-wads/freedoom_sounds.wad
|
||||
Making Sounds
|
||||
Making Musics
|
||||
WAD is complete: size 2200156 bytes.
|
||||
ln -sf doom2/texture1.txt textures/texture1.txt
|
||||
rm -f /tmp/freedoom-wads/freedoom_textures.wad
|
||||
tools/deutex -fullsnd -noshrink -rgb 0 255 255 -doom2 bootstrap/ -textures -patch -flats -build wadinfo.txt /tmp/freedoom-wads/freedoom_textures.wad
|
||||
DeuTex 4.4.0 Copyright 1994,95 O.Montanuy, Copyright 1999-2000 A.Majorel
|
||||
Ported to DOS, Unix, OS/2, Linux, SGiX, DEC Alpha.
|
||||
Thanx to M.Mathews, P.Allansson, C.Rossi, J.Bonfield, U.Munk.
|
||||
This program is freeware.
|
||||
Type "deutex --help" to get the list of commands.
|
||||
Saving complete sounds.
|
||||
Transparent colour is R=0 G=255 B=255
|
||||
Main directory: bootstrap/.
|
||||
Select textures
|
||||
Select patches
|
||||
Select flats
|
||||
Translating wadinfo.txt into a PWAD /tmp/freedoom-wads/freedoom_textures.wad
|
||||
Reading WAD bootstrap//doom2.wad: (3 entries)
|
||||
Creating PWAD /tmp/freedoom-wads/freedoom_textures.wad
|
||||
Color palette is Doom
|
||||
Making Texture1
|
||||
Read 493 Textures in ./textures/texture1.txt
|
||||
Making Pnames
|
||||
Making Wall Patches
|
||||
Warning: GIF support may go away in the future (see
|
||||
Warning: http://lpf.ai.mit.edu/Patents/Gif/Gif.html).
|
||||
Warning: Switch to PPM or BMP.
|
||||
Making Flats
|
||||
WAD is complete: size 5374624 bytes.
|
||||
tools/simplecpp -DSHAREWARE < textures/combined.txt > textures/shareware/texture1.txt
|
||||
./extract-pnames.pl < textures/shareware/texture1.txt > textures/shareware/pnames.txt
|
||||
tools/simplecpp -P -DSHAREWARE < buildcfg.txt | ./wadinfo-builder.pl -dummy > wadinfo_sw.txt
|
||||
ln -sf shareware/texture1.txt textures/texture1.txt
|
||||
rm -f /tmp/freedoom-wads/doom1.wad
|
||||
tools/deutex -fullsnd -noshrink -rgb 0 255 255 -doom2 bootstrap/ -iwad -build wadinfo_sw.txt /tmp/freedoom-wads/doom1.wad
|
||||
DeuTex 4.4.0 Copyright 1994,95 O.Montanuy, Copyright 1999-2000 A.Majorel
|
||||
Ported to DOS, Unix, OS/2, Linux, SGiX, DEC Alpha.
|
||||
Thanx to M.Mathews, P.Allansson, C.Rossi, J.Bonfield, U.Munk.
|
||||
This program is freeware.
|
||||
Type "deutex --help" to get the list of commands.
|
||||
Saving complete sounds.
|
||||
Transparent colour is R=0 G=255 B=255
|
||||
Main directory: bootstrap/.
|
||||
Build an IWAD file.
|
||||
Translating wadinfo_sw.txt into a IWAD /tmp/freedoom-wads/doom1.wad
|
||||
Reading WAD bootstrap//doom2.wad: (3 entries)
|
||||
Creating IWAD /tmp/freedoom-wads/doom1.wad
|
||||
Reading WAD ./levels/e1m1.wad: (11 entries)
|
||||
Reading WAD ./levels/dummy.wad: (11 entries)
|
||||
Reading WAD ./levels/e1m3.wad: (11 entries)
|
||||
Reading WAD ./levels/e1m4.wad: (11 entries)
|
||||
Reading WAD ./levels/dummy.wad: (11 entries)
|
||||
Reading WAD ./levels/e1m6.wad: (11 entries)
|
||||
Reading WAD ./levels/e1m7.wad: (11 entries)
|
||||
Reading WAD ./levels/e1m8.wad: (11 entries)
|
||||
Reading WAD ./levels/e1m9.wad: (17 entries)
|
||||
Color palette is Doom
|
||||
Making Lumps
|
||||
Making Texture1
|
||||
Read 182 Textures in ./textures/texture1.txt
|
||||
Making Pnames
|
||||
Making Sounds
|
||||
Making Musics
|
||||
Making Graphics
|
||||
Warning: GIF support may go away in the future (see
|
||||
Warning: http://lpf.ai.mit.edu/Patents/Gif/Gif.html).
|
||||
Warning: Switch to PPM or BMP.
|
||||
Warning: Color quantisation is slow. Use ppmquant.
|
||||
Making Sprites
|
||||
Making Wall Patches
|
||||
Making Flats
|
||||
Warning: Could not find file ./flats/dummy.wad, .ppm, .bmp or .gif
|
||||
WAD is complete: size 5437044 bytes.
|
||||
tools/simplecpp -P -DDOOM2 < buildcfg.txt | ./wadinfo-builder.pl -dummy > wadinfo_iwad.txt
|
||||
ln -sf doom2/texture1.txt textures/texture1.txt
|
||||
rm -f /tmp/freedoom-wads/doom2.wad
|
||||
tools/deutex -fullsnd -noshrink -rgb 0 255 255 -doom2 bootstrap/ -iwad -textures -lumps -patch -flats -sounds -musics -graphics -sprites -levels -build wadinfo_iwad.txt /tmp/freedoom-wads/doom2.wad
|
||||
DeuTex 4.4.0 Copyright 1994,95 O.Montanuy, Copyright 1999-2000 A.Majorel
|
||||
Ported to DOS, Unix, OS/2, Linux, SGiX, DEC Alpha.
|
||||
Thanx to M.Mathews, P.Allansson, C.Rossi, J.Bonfield, U.Munk.
|
||||
This program is freeware.
|
||||
Type "deutex --help" to get the list of commands.
|
||||
Saving complete sounds.
|
||||
Transparent colour is R=0 G=255 B=255
|
||||
Main directory: bootstrap/.
|
||||
Build an IWAD file.
|
||||
Select textures
|
||||
Select lumps
|
||||
Select patches
|
||||
Select flats
|
||||
Select sounds
|
||||
Select musics
|
||||
Select graphics
|
||||
Select sprites
|
||||
Select levels
|
||||
Translating wadinfo_iwad.txt into a IWAD /tmp/freedoom-wads/doom2.wad
|
||||
Reading WAD bootstrap//doom2.wad: (3 entries)
|
||||
Creating IWAD /tmp/freedoom-wads/doom2.wad
|
||||
Reading WAD ./levels/map01.wad: (11 entries)
|
||||
Reading WAD ./levels/map02.wad: (11 entries)
|
||||
Reading WAD ./levels/map03.wad: (11 entries)
|
||||
Reading WAD ./levels/map04.wad: (11 entries)
|
||||
Reading WAD ./levels/map05.wad: (11 entries)
|
||||
Reading WAD ./levels/map06.wad: (11 entries)
|
||||
Reading WAD ./levels/map07.wad: (11 entries)
|
||||
Reading WAD ./levels/dummy.wad: (11 entries)
|
||||
Reading WAD ./levels/dummy.wad: (11 entries)
|
||||
Reading WAD ./levels/map10.wad: (11 entries)
|
||||
Reading WAD ./levels/map11.wad: (11 entries)
|
||||
Reading WAD ./levels/map12.wad: (11 entries)
|
||||
Reading WAD ./levels/map13.wad: (11 entries)
|
||||
Reading WAD ./levels/dummy.wad: (11 entries)
|
||||
Reading WAD ./levels/dummy.wad: (11 entries)
|
||||
Reading WAD ./levels/map16.wad: (11 entries)
|
||||
Reading WAD ./levels/map17.wad: (11 entries)
|
||||
Reading WAD ./levels/map18.wad: (11 entries)
|
||||
Reading WAD ./levels/dummy.wad: (11 entries)
|
||||
Reading WAD ./levels/map20.wad: (11 entries)
|
||||
Reading WAD ./levels/map21.wad: (11 entries)
|
||||
Reading WAD ./levels/map22.wad: (11 entries)
|
||||
Reading WAD ./levels/map23.wad: (11 entries)
|
||||
Reading WAD ./levels/dummy.wad: (11 entries)
|
||||
Reading WAD ./levels/map25.wad: (11 entries)
|
||||
Reading WAD ./levels/map26.wad: (11 entries)
|
||||
Reading WAD ./levels/map27.wad: (11 entries)
|
||||
Reading WAD ./levels/dummy.wad: (11 entries)
|
||||
Reading WAD ./levels/map29.wad: (11 entries)
|
||||
Reading WAD ./levels/map30.wad: (11 entries)
|
||||
Reading WAD ./levels/map31.wad: (11 entries)
|
||||
Reading WAD ./levels/map32.wad: (17 entries)
|
||||
Color palette is Doom
|
||||
Making Lumps
|
||||
Making Texture1
|
||||
Read 493 Textures in ./textures/texture1.txt
|
||||
Making Pnames
|
||||
Making Sounds
|
||||
Making Musics
|
||||
Making Graphics
|
||||
Warning: GIF support may go away in the future (see
|
||||
Warning: http://lpf.ai.mit.edu/Patents/Gif/Gif.html).
|
||||
Warning: Switch to PPM or BMP.
|
||||
Warning: Color quantisation is slow. Use ppmquant.
|
||||
Making Sprites
|
||||
Making Wall Patches
|
||||
Making Flats
|
||||
Warning: Could not find file ./flats/dummy.wad, .ppm, .bmp or .gif
|
||||
WAD is complete: size 18219048 bytes.
|
|
@ -0,0 +1,418 @@
|
|||
01fca24a7c6abc3c548505d69388cc98 ./sprites/saint_of_killers/oldspos/sposg3g7.gif
|
||||
01fca24a7c6abc3c548505d69388cc98 ./sprites/saint_of_killers/pretouchup/sposg3g7.gif
|
||||
02b6dbf8a23e45fc5da4c99dc56ac9ef ./sprites/fredrik/skula8a2.gif
|
||||
02b6dbf8a23e45fc5da4c99dc56ac9ef ./sprites/fredrik/skulb8b2.gif
|
||||
02d99201c34c571c0959d6296e652381 ./patches/fredrik/new/patches/wall23_1.gif
|
||||
02d99201c34c571c0959d6296e652381 ./patches/fredrik/wall23_1.gif
|
||||
03d5cfb9281eaae99e895148eea36408 ./sprites/mouse/bspib4b6.gif
|
||||
03d5cfb9281eaae99e895148eea36408 ./sprites/mouse/bspie4e6.gif
|
||||
041368788ebd17a0ebff225a74b2886c ./sprites/scubasteve/sarga4a6.gif
|
||||
041368788ebd17a0ebff225a74b2886c ./sprites/scubasteve/sargd4d6.gif
|
||||
041368788ebd17a0ebff225a74b2886c ./sprites/scubasteve/sarge4e6.gif
|
||||
041368788ebd17a0ebff225a74b2886c ./sprites/scubasteve/sargf4f6.gif
|
||||
041368788ebd17a0ebff225a74b2886c ./sprites/scubasteve/sargg4g6.gif
|
||||
0634a92b6d31954264831f3075ffaae2 ./sprites/saint_of_killers/spos_pre_touchup2/sposd5.gif
|
||||
0634a92b6d31954264831f3075ffaae2 ./sprites/saint_of_killers/spos_pre_touchup/sposd5.gif
|
||||
06f8ff103564d80d8a2cb517f01ab1ef ./sprites/linguica/bossa4.gif
|
||||
06f8ff103564d80d8a2cb517f01ab1ef ./sprites/linguica/bossh4.gif
|
||||
07602a9c5eda88fd5063c11ea7e2a78c ./sprites/saint_of_killers/oldspos/sposg5.gif
|
||||
07602a9c5eda88fd5063c11ea7e2a78c ./sprites/saint_of_killers/pretouchup/sposg5.gif
|
||||
0baf9a8aef04cdb45a2d0e39538a5d2f ./sprites/railgunner/new/graphics/stfkill2.gif
|
||||
0baf9a8aef04cdb45a2d0e39538a5d2f ./sprites/railgunner/new/graphics/stfouch2.gif
|
||||
0e9f223e3578e6a45ccfc80832fe8d42 ./patches/fredrik/new/hekawoof/patches/tp5_1.gif
|
||||
0e9f223e3578e6a45ccfc80832fe8d42 ./patches/fredrik/tp5_1.gif
|
||||
0ed7c2999400d26d34a81a682e09bb99 ./sprites/scubasteve/pisga0.gif
|
||||
0ed7c2999400d26d34a81a682e09bb99 ./sprites/scubasteve/pisge0.gif
|
||||
116fe0ffcc16f8684beab64d31970dc0 ./sprites/chang/plsgb0.gif
|
||||
116fe0ffcc16f8684beab64d31970dc0 ./sprites/chang/rubyplas/rplgb0.gif
|
||||
13e07c23f6e579f2749ccefd4d1bcd52 ./sprites/saint_of_killers/oldspos/sposg2g8.gif
|
||||
13e07c23f6e579f2749ccefd4d1bcd52 ./sprites/saint_of_killers/pretouchup/sposg2g8.gif
|
||||
1410c4a3b03bf44c38a3b0fc4883b480 ./patches/fredrik/new/hekawoof/patches/rw10_3.gif
|
||||
1410c4a3b03bf44c38a3b0fc4883b480 ./patches/fredrik/rw10_3.gif
|
||||
1427c3dc480ae27c030d9d8fb6dd48f0 ./sprites/saint_of_killers/spos_pre_touchup2/sposc5.gif
|
||||
1427c3dc480ae27c030d9d8fb6dd48f0 ./sprites/saint_of_killers/spos_pre_touchup/sposc5.gif
|
||||
1460953a34901ec70eabdddaa271eafc ./sprites/saint_of_killers/spos_pre_touchup2/sposb1.gif
|
||||
1460953a34901ec70eabdddaa271eafc ./sprites/saint_of_killers/spos_pre_touchup/sposb1.gif
|
||||
19850c4d6b36a933c60e720c164551bf ./sprites/julian/bskua0.gif
|
||||
19850c4d6b36a933c60e720c164551bf ./sprites/julian/bskub0.gif
|
||||
1b471b33bc50fbd45e7a0c9d475e9853 ./sprites/linguica/bossa8.gif
|
||||
1b471b33bc50fbd45e7a0c9d475e9853 ./sprites/linguica/bossh8.gif
|
||||
1c17ddcbe61f81073cc31049733aa2fc ./flats/espi/floor7_2.gif
|
||||
1c17ddcbe61f81073cc31049733aa2fc ./patches/espi/floor7_2.gif
|
||||
1cec1ad836e4147bc1ebf7d935c21e32 ./patches/fredrik/new/hekawoof/patches/rw25_1.gif
|
||||
1cec1ad836e4147bc1ebf7d935c21e32 ./patches/fredrik/rw25_1.gif
|
||||
1d792bef88ce6a925765caeb52999bac ./patches/fredrik/new/hekawoof/patches/w113_2.gif
|
||||
1d792bef88ce6a925765caeb52999bac ./patches/fredrik/w113_2.gif
|
||||
1d7bb5d2891d234402c18b79955e45c0 ./sprites/ajapted/sswve5.gif
|
||||
1d7bb5d2891d234402c18b79955e45c0 ./sprites/ajapted/sswvf5.gif
|
||||
1dc96653939d9639dbbcde2873d87954 ./sprites/nightfang/heada3a7.gif
|
||||
1dc96653939d9639dbbcde2873d87954 ./sprites/nightfang/heade3e7.gif
|
||||
1fd5807034e2cd0df0b4bf0785b42dbd ./patches/fredrik/new/hekawoof/patches/rp2_2.gif
|
||||
1fd5807034e2cd0df0b4bf0785b42dbd ./patches/fredrik/rp2_2.gif
|
||||
1fe41be9d72a992518425a1c81df6313 ./sprites/fredrik/misga0.gif
|
||||
1fe41be9d72a992518425a1c81df6313 ./sprites/fredrik/misgb0.gif
|
||||
2025483eb161e8e77ff4e3d57a3c16c1 ./sprites/railgunner/new/graphics/stfkill4.gif
|
||||
2025483eb161e8e77ff4e3d57a3c16c1 ./sprites/railgunner/new/graphics/stfouch4.gif
|
||||
20f95a35299d0869d85fb2b72d35d199 ./flats/tarin/cail1_3x.gif
|
||||
20f95a35299d0869d85fb2b72d35d199 ./flats/tarin/ceil1_3.gif
|
||||
21f8bc967bb537e46b4392682f27ac42 ./sprites/espi/pisga0.gif
|
||||
21f8bc967bb537e46b4392682f27ac42 ./sprites/espi/pisge0.gif
|
||||
226531c256a7ddd2fd7fec6baea6a0c1 ./graphics/kinkyfriend/stfst21.gif
|
||||
226531c256a7ddd2fd7fec6baea6a0c1 ./graphics/kinkyfriend/stfst22.gif
|
||||
24c3a187f11eeed877942ced80c0499f ./graphics/ajapted/brdr_b.gif
|
||||
24c3a187f11eeed877942ced80c0499f ./graphics/ajapted/brdr_t.gif
|
||||
24e9dc4e785b6354cae41e064754d933 ./patches/fredrik/new/hekawoof/patches/tp7_2.gif
|
||||
24e9dc4e785b6354cae41e064754d933 ./patches/fredrik/tp7_2.gif
|
||||
26b7edda248b06e5d4ea6775c4cc7f01 ./sprites/scubasteve/sarga2a8.gif
|
||||
26b7edda248b06e5d4ea6775c4cc7f01 ./sprites/scubasteve/sargd2d8.gif
|
||||
26b7edda248b06e5d4ea6775c4cc7f01 ./sprites/scubasteve/sarge2e8.gif
|
||||
26b7edda248b06e5d4ea6775c4cc7f01 ./sprites/scubasteve/sargf2f8.gif
|
||||
26b7edda248b06e5d4ea6775c4cc7f01 ./sprites/scubasteve/sargg2g8.gif
|
||||
279e425a020ceec7a031adaabc3f0c35 ./sprites/scubasteve/sargm0.gif
|
||||
279e425a020ceec7a031adaabc3f0c35 ./sprites/scubasteve/sargn0.gif
|
||||
2814a315bc3b64b363cc5796ee3bb14f ./sprites/saint_of_killers/spos_pre_touchup2/sposa1.gif
|
||||
2814a315bc3b64b363cc5796ee3bb14f ./sprites/saint_of_killers/spos_pre_touchup/sposa1.gif
|
||||
28870f49460e9ae3d12aeae1527abad8 ./sprites/fredrik/skulc8c2.gif
|
||||
28870f49460e9ae3d12aeae1527abad8 ./sprites/fredrik/skuld8d2.gif
|
||||
28d91e5e9eebe76a7040df67f1d2d7e3 ./sprites/railgunner/new/graphics/stkeys0.gif
|
||||
28d91e5e9eebe76a7040df67f1d2d7e3 ./sprites/railgunner/new/graphics/stkeys3.gif
|
||||
2a4e3ccabcd26f1b635b45bc82bdbb47 ./sprites/mouse/bspib2b8.gif
|
||||
2a4e3ccabcd26f1b635b45bc82bdbb47 ./sprites/mouse/bspie2e8.gif
|
||||
2af229a8ce70eb5852c450577aad38b7 ./sprites/railgunner/new/graphics/stkeys2.gif
|
||||
2af229a8ce70eb5852c450577aad38b7 ./sprites/railgunner/new/graphics/stkeys5.gif
|
||||
2c42d89202a98f1b7f086ce19bb7cade ./sprites/saint_of_killers/oldspos/sposg1.gif
|
||||
2c42d89202a98f1b7f086ce19bb7cade ./sprites/saint_of_killers/pretouchup/sposg1.gif
|
||||
2d38144157cf64f0366c389867b82fee ./sprites/saint_of_killers/oldspos/sposp0.gif
|
||||
2d38144157cf64f0366c389867b82fee ./sprites/saint_of_killers/pretouchup/sposp0.gif
|
||||
2d38144157cf64f0366c389867b82fee ./sprites/saint_of_killers/spos_pre_touchup/sposp0.gif
|
||||
2f9087853a9016aab91e0eb4cf961669 ./sprites/geekmarine/cpose1.gif
|
||||
2f9087853a9016aab91e0eb4cf961669 ./sprites/geekmarine/cposf1.gif
|
||||
2fdd58848fe5f3106eaec4c099ddacd7 ./sprites/mouse/bspia2a8.gif
|
||||
2fdd58848fe5f3106eaec4c099ddacd7 ./sprites/mouse/bspid2d8.gif
|
||||
2fe627e9be9824fd9b31a90f0bc69e3d ./sprites/saint_of_killers/spos_pre_touchup2/sposa4a6.gif
|
||||
2fe627e9be9824fd9b31a90f0bc69e3d ./sprites/saint_of_killers/spos_pre_touchup/sposa4a6.gif
|
||||
30244c4e522814e7fd28a2a495a857b4 ./patches/fredrik/new/hekawoof/patches/tp7_1.gif
|
||||
30244c4e522814e7fd28a2a495a857b4 ./patches/fredrik/tp7_1.gif
|
||||
331842a7913ebe8e74d269eecbbf821a ./flats/fraggle/flat23.gif
|
||||
331842a7913ebe8e74d269eecbbf821a ./patches/fraggle/w13_1.gif
|
||||
3375dfc9ec269bf38afd87fea7d8955d ./sprites/fredrik/green/shtgb0.gif
|
||||
3375dfc9ec269bf38afd87fea7d8955d ./sprites/fredrik/shtga0.gif
|
||||
3375dfc9ec269bf38afd87fea7d8955d ./sprites/fredrik/shtgb0.gif
|
||||
3613ee55bf0e3e90f992b2e5a5f8ae17 ./sprites/saint_of_killers/oldspos/sposk0.gif
|
||||
3613ee55bf0e3e90f992b2e5a5f8ae17 ./sprites/saint_of_killers/pretouchup/sposk0.gif
|
||||
38ea558f82ae947ba38403af027ff4f5 ./patches/fredrik/new/hekawoof/patches/tp3_2.gif
|
||||
38ea558f82ae947ba38403af027ff4f5 ./patches/fredrik/tp3_2.gif
|
||||
3984cdebbfe63cf90d475a73b7ee309d ./sprites/fredrik/oldskag/bfe1f0.gif
|
||||
3984cdebbfe63cf90d475a73b7ee309d ./sprites/fredrik/oldskag/bfe2d0.gif
|
||||
398a46ce77b48f439e1dddfe771efd53 ./patches/fredrik/new/hekawoof/patches/w113_1.gif
|
||||
398a46ce77b48f439e1dddfe771efd53 ./patches/fredrik/w113_1.gif
|
||||
3bdfe8fc1b912b96dc0f07af6d13f82d ./graphics/ajapted/brdr_bl.gif
|
||||
3bdfe8fc1b912b96dc0f07af6d13f82d ./graphics/ajapted/brdr_br.gif
|
||||
3bdfe8fc1b912b96dc0f07af6d13f82d ./graphics/ajapted/brdr_tl.gif
|
||||
3bdfe8fc1b912b96dc0f07af6d13f82d ./graphics/ajapted/brdr_tr.gif
|
||||
3ee3f0f4323abcdead9cb762a332db75 ./patches/fredrik/new/hekawoof/patches/rp2_1.gif
|
||||
3ee3f0f4323abcdead9cb762a332db75 ./patches/fredrik/rp2_1.gif
|
||||
406a49d131e90eee8500f694cb0ba2d0 ./sprites/linguica/bossa6.gif
|
||||
406a49d131e90eee8500f694cb0ba2d0 ./sprites/linguica/bossh6.gif
|
||||
41751713b64b5d882fd3f827457684b9 ./patches/fredrik/new/hekawoof/patches/wall62_2.gif
|
||||
41751713b64b5d882fd3f827457684b9 ./patches/fredrik/wall62_2.gif
|
||||
421e36b4c4aabb13069ca750859e4d95 ./sprites/pov/skula5.gif
|
||||
421e36b4c4aabb13069ca750859e4d95 ./sprites/pov/skulb5.gif
|
||||
424c3585651971b6329c476756a77047 ./patches/maonth/support2.gif
|
||||
424c3585651971b6329c476756a77047 ./patches/maonth/support2x.gif
|
||||
45f5aedb86c8ed061f78a39dc51be796 ./patches/fredrik/new/hekawoof/patches/tp3_1.gif
|
||||
45f5aedb86c8ed061f78a39dc51be796 ./patches/fredrik/tp3_1.gif
|
||||
467a5612480bf2701838a291b4e58106 ./flats/fraggle/slime11.gif
|
||||
467a5612480bf2701838a291b4e58106 ./flats/fraggle/slime12.gif
|
||||
4794ca578df723e75062519e1ae24a21 ./sprites/saint_of_killers/oldspos/sposh0.gif
|
||||
4794ca578df723e75062519e1ae24a21 ./sprites/saint_of_killers/pretouchup/sposh0.gif
|
||||
47e3977e97bf36ddd4244888eb7e3109 ./sprites/mouse/bspic4c6.gif
|
||||
47e3977e97bf36ddd4244888eb7e3109 ./sprites/mouse/bspif4f6.gif
|
||||
49484f9d0857206a570315783d8a319d ./sprites/railgunner/gspcrip/sprites/sht2a0.gif
|
||||
49484f9d0857206a570315783d8a319d ./sprites/railgunner/gspcrip/sprites/sht2i0.gif
|
||||
49484f9d0857206a570315783d8a319d ./sprites/railgunner/gspcrip/sprites/sht2j0.gif
|
||||
4af8081bbd64bbed3eb5a50fa2adad5c ./sprites/saint_of_killers/oldspos/sposg4g6.gif
|
||||
4af8081bbd64bbed3eb5a50fa2adad5c ./sprites/saint_of_killers/pretouchup/sposg4g6.gif
|
||||
4ee5b5ed7c0d72d1e74e84cf4f7475e4 ./sprites/saint_of_killers/spos_pre_touchup2/spose1.gif
|
||||
4ee5b5ed7c0d72d1e74e84cf4f7475e4 ./sprites/saint_of_killers/spos_pre_touchup/spose1.gif
|
||||
4fd51390824c62bf8457f5939e48d798 ./sprites/fraggle/keeng0.gif
|
||||
4fd51390824c62bf8457f5939e48d798 ./sprites/fraggle/keenk0.gif
|
||||
501733dd082f836d531d03b979158037 ./patches/fredrik/new/hekawoof/patches/support2.gif
|
||||
501733dd082f836d531d03b979158037 ./patches/fredrik/support2.gif
|
||||
50e6f0a5c0f4f5c9ba77fcd8390a12d2 ./flats/espi/lavab.gif
|
||||
50e6f0a5c0f4f5c9ba77fcd8390a12d2 ./flats/espi/lavad.gif
|
||||
5383c26da8ec7b50737a73c1e4d135d1 ./sprites/mouse/bspia3a7.gif
|
||||
5383c26da8ec7b50737a73c1e4d135d1 ./sprites/mouse/bspid3d7.gif
|
||||
540f151642a34153a82b86bc5d93a811 ./patches/fredrik/new/patches/wall22_1.gif
|
||||
540f151642a34153a82b86bc5d93a811 ./patches/fredrik/wall22_1.gif
|
||||
54ba82b14a7c49629d3513694381839e ./sprites/mouse/bspic3c7.gif
|
||||
54ba82b14a7c49629d3513694381839e ./sprites/mouse/bspif3f7.gif
|
||||
54beb24eea81421056317634d92d9673 ./sprites/railgunner/new/graphics/stfkill1.gif
|
||||
54beb24eea81421056317634d92d9673 ./sprites/railgunner/new/graphics/stfouch1.gif
|
||||
54fe3cc5bbc321b74d85a54ef37c3072 ./sprites/saint_of_killers/spos_pre_touchup2/sposf1.gif
|
||||
54fe3cc5bbc321b74d85a54ef37c3072 ./sprites/saint_of_killers/spos_pre_touchup/sposf1.gif
|
||||
5867ade3888ced110875b23508bf4f30 ./sprites/saint_of_killers/spos_pre_touchup2/sposb4b6.gif
|
||||
5867ade3888ced110875b23508bf4f30 ./sprites/saint_of_killers/spos_pre_touchup/sposb4b6.gif
|
||||
5940f7b46a543b61ad239ae938e20822 ./sprites/mellow/shtga0.gif
|
||||
5940f7b46a543b61ad239ae938e20822 ./sprites/mellow/shtgb0.gif
|
||||
5940f7b46a543b61ad239ae938e20822 ./sprites/mellow/shtgc0.gif
|
||||
59c32abec8b72a0b7d1f54d3bcc5952c ./sprites/saint_of_killers/spos_pre_touchup2/spose4e6.gif
|
||||
59c32abec8b72a0b7d1f54d3bcc5952c ./sprites/saint_of_killers/spos_pre_touchup/spose4e6.gif
|
||||
5ab708b6d153c10f9014fc40a4085bdb ./sprites/fredrik/oldskag/bfgga0.gif
|
||||
5ab708b6d153c10f9014fc40a4085bdb ./sprites/fredrik/oldskag/bfggb0.gif
|
||||
5ab708b6d153c10f9014fc40a4085bdb ./sprites/fredrik/oldskag/bfggc0.gif
|
||||
5ba26880290e419d6dab198440479a62 ./sprites/julian/yskua0.gif
|
||||
5ba26880290e419d6dab198440479a62 ./sprites/julian/yskub0.gif
|
||||
5c55a24cc144ee399f9f7c5ce3d1ccef ./sprites/saint_of_killers/spos_pre_touchup2/sposc1.gif
|
||||
5c55a24cc144ee399f9f7c5ce3d1ccef ./sprites/saint_of_killers/spos_pre_touchup/sposc1.gif
|
||||
5f8d14f21037cc8cc9c995a0bec789ea ./sprites/linguica/bossa3.gif
|
||||
5f8d14f21037cc8cc9c995a0bec789ea ./sprites/linguica/bossh3.gif
|
||||
5f8d85b64ef674fe48d1fb78a7093088 ./sprites/railgunner/bfe1c0.gif
|
||||
5f8d85b64ef674fe48d1fb78a7093088 ./sprites/railgunner/bfe2b0.gif
|
||||
5face6d07c3844728019dc08c4207aeb ./patches/fredrik/new/hekawoof/patches/wall02_3.gif
|
||||
5face6d07c3844728019dc08c4207aeb ./patches/fredrik/wall02_3.gif
|
||||
6250366273e69dc0f34075d998eb84d1 ./sprites/chang/plsfb0.gif
|
||||
6250366273e69dc0f34075d998eb84d1 ./sprites/chang/rubyplas/rplgf0.gif
|
||||
634826635baa47c17ce30b521d10011b ./sprites/nightfang/heada5.gif
|
||||
634826635baa47c17ce30b521d10011b ./sprites/nightfang/heade5.gif
|
||||
6410e1a70de656b3b8296b21948fa65b ./sprites/nightfang/headb4b6.gif
|
||||
6410e1a70de656b3b8296b21948fa65b ./sprites/nightfang/headf4f6.gif
|
||||
647de645d159ae398145d2ba90dcb22a ./patches/fredrik/new/hekawoof/patches/rw38_3.gif
|
||||
647de645d159ae398145d2ba90dcb22a ./patches/fredrik/rw38_3.gif
|
||||
6624d5c60a6ea68c761525bfdd955310 ./sprites/linguica/bossf4.gif
|
||||
6624d5c60a6ea68c761525bfdd955310 ./sprites/linguica/bossg4.gif
|
||||
6fd2186f387e4459e4b7db31c78de694 ./patches/fredrik/new/hekawoof/patches/w113_3.gif
|
||||
6fd2186f387e4459e4b7db31c78de694 ./patches/fredrik/w113_3.gif
|
||||
706bab3a05dd062b37c7d9f2848f664f ./graphics/ajapted/m_lgttl.gif
|
||||
706bab3a05dd062b37c7d9f2848f664f ./graphics/ajapted/m_loadg.gif
|
||||
72d7e9cde4b60b9658eb97182c1ef425 ./sprites/nrkn/tblub0.gif
|
||||
72d7e9cde4b60b9658eb97182c1ef425 ./sprites/nrkn/tblud0.gif
|
||||
73045256ed427b77d30b72034a9a940e ./sprites/saint_of_killers/spos_pre_touchup2/spose5.gif
|
||||
73045256ed427b77d30b72034a9a940e ./sprites/saint_of_killers/spos_pre_touchup/spose5.gif
|
||||
7a0fce46761fc529d3c8682a662e31ea ./sprites/saint_of_killers/spos_pre_touchup2/sposd4d6.gif
|
||||
7a0fce46761fc529d3c8682a662e31ea ./sprites/saint_of_killers/spos_pre_touchup/sposd4d6.gif
|
||||
7a288410a2b9e9abf5701d1b70828a3d ./sprites/railgunner/new/graphics/stfst00.gif
|
||||
7a288410a2b9e9abf5701d1b70828a3d ./sprites/railgunner/new/graphics/stfst01.gif
|
||||
7a288410a2b9e9abf5701d1b70828a3d ./sprites/railgunner/new/graphics/stfst02.gif
|
||||
7c700f1b85fca697a380fd056004523f ./sprites/saint_of_killers/oldspos/sposr0.gif
|
||||
7c700f1b85fca697a380fd056004523f ./sprites/saint_of_killers/pretouchup/sposr0.gif
|
||||
7c700f1b85fca697a380fd056004523f ./sprites/saint_of_killers/spos_pre_touchup/sposr0.gif
|
||||
7d1a3c195682befb5b8865e92ba3282e ./sprites/railgunner/new/graphics/stfkill0.gif
|
||||
7d1a3c195682befb5b8865e92ba3282e ./sprites/railgunner/new/graphics/stfouch0.gif
|
||||
7d6a0f42a386e7c4b42ef479dc84fc0a ./sprites/nightfang/heada1.gif
|
||||
7d6a0f42a386e7c4b42ef479dc84fc0a ./sprites/nightfang/heade1.gif
|
||||
82521ebf395cb245a1a6cdf99bb00f57 ./sprites/geekmarine/cpose2e8.gif
|
||||
82521ebf395cb245a1a6cdf99bb00f57 ./sprites/geekmarine/cposf2f8.gif
|
||||
82c325b24535c88f7731cd78824304c7 ./sprites/saint_of_killers/spos_pre_touchup2/spose2e8.gif
|
||||
82c325b24535c88f7731cd78824304c7 ./sprites/saint_of_killers/spos_pre_touchup/spose2e8.gif
|
||||
842da23e95798a850bb059d808b6d4df ./sprites/geekmarine/cpose3e7.gif
|
||||
842da23e95798a850bb059d808b6d4df ./sprites/geekmarine/cposf3f7.gif
|
||||
8666f6349110fd18e29da5da9c7d4658 ./graphics/ajapted/brdr_l.gif
|
||||
8666f6349110fd18e29da5da9c7d4658 ./graphics/ajapted/brdr_r.gif
|
||||
8671f07f720ef3aeac379539b0f8df88 ./sprites/saint_of_killers/oldspos/sposi0.gif
|
||||
8671f07f720ef3aeac379539b0f8df88 ./sprites/saint_of_killers/pretouchup/sposi0.gif
|
||||
86dbf88737e52b254ac4513923977422 ./sprites/nightfang/headc5.gif
|
||||
86dbf88737e52b254ac4513923977422 ./sprites/nightfang/headd5.gif
|
||||
8732ace72553071ad26c887d00f697fd ./sprites/fraggle/keenh0.gif
|
||||
8732ace72553071ad26c887d00f697fd ./sprites/fraggle/keenj0.gif
|
||||
886ae5d4fe257cab2a0d7708439b791b ./sprites/saint_of_killers/oldspos/sposm0.gif
|
||||
886ae5d4fe257cab2a0d7708439b791b ./sprites/saint_of_killers/pretouchup/sposm0.gif
|
||||
8ac92f4031693c263dce1b2385a65d5e ./sprites/fredrik/skulc1.gif
|
||||
8ac92f4031693c263dce1b2385a65d5e ./sprites/fredrik/skuld1.gif
|
||||
8aec8fcd94594422deb660b5222f3527 ./sprites/airraid/new/pol4a0.gif
|
||||
8aec8fcd94594422deb660b5222f3527 ./sprites/airraid/pol4a0.gif
|
||||
8af3d92e7b722cb3795d4462d2060935 ./sprites/saint_of_killers/spos_pre_touchup2/sposd3d7.gif
|
||||
8af3d92e7b722cb3795d4462d2060935 ./sprites/saint_of_killers/spos_pre_touchup/sposd3d7.gif
|
||||
8d27d6c8ca6e2473a5661cd11f9b4a86 ./patches/fredrik/new/hekawoof/patches/rp1_2.gif
|
||||
8d27d6c8ca6e2473a5661cd11f9b4a86 ./patches/fredrik/rp1_2.gif
|
||||
8dc5bd99423f3a50491992f5073e882e ./patches/fredrik/new/hekawoof/patches/tp5_3.gif
|
||||
8dc5bd99423f3a50491992f5073e882e ./patches/fredrik/tp5_3.gif
|
||||
8f197668b754c18b24fd2810c3b767ab ./sprites/saint_of_killers/spos_pre_touchup2/sposd1.gif
|
||||
8f197668b754c18b24fd2810c3b767ab ./sprites/saint_of_killers/spos_pre_touchup/sposd1.gif
|
||||
8f47c93abf88a5bc04d302c9f1c3a7e2 ./sprites/fredrik/skula5.gif
|
||||
8f47c93abf88a5bc04d302c9f1c3a7e2 ./sprites/fredrik/skulb5.gif
|
||||
8f47c93abf88a5bc04d302c9f1c3a7e2 ./sprites/fredrik/skulc5.gif
|
||||
8f47c93abf88a5bc04d302c9f1c3a7e2 ./sprites/fredrik/skuld5.gif
|
||||
91506a810224a78549f461aa4a69aee5 ./patches/spinspyder/rw48_1.gif
|
||||
91506a810224a78549f461aa4a69aee5 ./patches/spinspyder/rw48_3.gif
|
||||
9447fc5536e5bbe302da8c9d03c7e70f ./sprites/nightfang/heada4a6.gif
|
||||
9447fc5536e5bbe302da8c9d03c7e70f ./sprites/nightfang/heade4e6.gif
|
||||
94ee75f7652d705fa76ab758466b8cff ./sprites/geekmarine/cpose4e6.gif
|
||||
94ee75f7652d705fa76ab758466b8cff ./sprites/geekmarine/cposf4f6.gif
|
||||
952264e44140f3c6644e541ae6b7a70e ./sprites/saint_of_killers/oldspos/sposu0.gif
|
||||
952264e44140f3c6644e541ae6b7a70e ./sprites/saint_of_killers/pretouchup/sposu0.gif
|
||||
952264e44140f3c6644e541ae6b7a70e ./sprites/saint_of_killers/spos_pre_touchup/sposu0.gif
|
||||
967f58108e1d980b42a4693665e9fbff ./sprites/julian/rskua0.gif
|
||||
967f58108e1d980b42a4693665e9fbff ./sprites/julian/rskub0.gif
|
||||
96f38dd2770a617d92117f00774837ab ./sprites/saint_of_killers/spos_pre_touchup2/spose3e7.gif
|
||||
96f38dd2770a617d92117f00774837ab ./sprites/saint_of_killers/spos_pre_touchup/spose3e7.gif
|
||||
98596e30688315d5695598b933119a5c ./sprites/geekmarine/cpost0.gif
|
||||
98596e30688315d5695598b933119a5c ./sprites/saint_of_killers/playw0.gif
|
||||
985e5445b55f3bd16e536a23094953d7 ./sprites/scubasteve/sarga5.gif
|
||||
985e5445b55f3bd16e536a23094953d7 ./sprites/scubasteve/sargd5.gif
|
||||
985e5445b55f3bd16e536a23094953d7 ./sprites/scubasteve/sarge5.gif
|
||||
985e5445b55f3bd16e536a23094953d7 ./sprites/scubasteve/sargf5.gif
|
||||
985e5445b55f3bd16e536a23094953d7 ./sprites/scubasteve/sargg5.gif
|
||||
98ba8af3770b6df6358c16a7daf28b19 ./sprites/chang/plsfa0.gif
|
||||
98ba8af3770b6df6358c16a7daf28b19 ./sprites/chang/rubyplas/rplgd0.gif
|
||||
98d958d6b84b8b5ec6f45e75daebc212 ./flats/espi/blood2.gif
|
||||
98d958d6b84b8b5ec6f45e75daebc212 ./flats/espi/bloodb.gif
|
||||
9c59247a19c2134614fc69e02351bb16 ./flats/espi/lava4.gif
|
||||
9c59247a19c2134614fc69e02351bb16 ./flats/espi/lavaa.gif
|
||||
9ca5c8c34e224fac2fea6f57401af323 ./sprites/saint_of_killers/spos_pre_touchup2/sposd2d8.gif
|
||||
9ca5c8c34e224fac2fea6f57401af323 ./sprites/saint_of_killers/spos_pre_touchup/sposd2d8.gif
|
||||
9ea5f6d88fb85336d785c6d93bf2161f ./patches/fredrik/new/hekawoof/patches/wall02_1.gif
|
||||
9ea5f6d88fb85336d785c6d93bf2161f ./patches/fredrik/wall02_1.gif
|
||||
a0a9a5de6e51f7c411fb9f906ec639f7 ./sprites/fredrik/oldskag/bfe1e0.gif
|
||||
a0a9a5de6e51f7c411fb9f906ec639f7 ./sprites/fredrik/oldskag/bfe2c0.gif
|
||||
a183c9546434c89972ea59b83afeff52 ./sprites/geekmarine/cpose5.gif
|
||||
a183c9546434c89972ea59b83afeff52 ./sprites/geekmarine/cposf5.gif
|
||||
a1a3446546a0b877e0b3ef31b6b5cdcc ./sprites/linguica/bossn0.gif
|
||||
a1a3446546a0b877e0b3ef31b6b5cdcc ./sprites/linguica/bosso0.gif
|
||||
a326e76d80fb927b17c348fadca15539 ./graphics/jayextee/stcfn048.gif
|
||||
a326e76d80fb927b17c348fadca15539 ./graphics/jayextee/stcfn079.gif
|
||||
a5a99d5c47858679cedf57b909084b94 ./sprites/railgunner/new/graphics/m_lgttl.gif
|
||||
a5a99d5c47858679cedf57b909084b94 ./sprites/railgunner/new/graphics/m_loadg.gif
|
||||
a6051a274e49cf44394cd3352cd2d11c ./sprites/saint_of_killers/oldspos/sposj0.gif
|
||||
a6051a274e49cf44394cd3352cd2d11c ./sprites/saint_of_killers/pretouchup/sposj0.gif
|
||||
a6c79f919ed1373f1420242b3cf069d7 ./sprites/linguica/bossa2.gif
|
||||
a6c79f919ed1373f1420242b3cf069d7 ./sprites/linguica/bossh2.gif
|
||||
aabae9b04732cbef24052b1bfcb60b65 ./sprites/saint_of_killers/spos_pre_touchup2/sposf2f8.gif
|
||||
aabae9b04732cbef24052b1bfcb60b65 ./sprites/saint_of_killers/spos_pre_touchup/sposf2f8.gif
|
||||
abfe50bc22d88cad87ae81ad185ad75e ./sprites/espi/pisgb0.gif
|
||||
abfe50bc22d88cad87ae81ad185ad75e ./sprites/espi/pisgd0.gif
|
||||
ac5a9210bce3498518c2bbb1ecb5ca33 ./patches/fredrik/new/hekawoof/patches/tp5_2.gif
|
||||
ac5a9210bce3498518c2bbb1ecb5ca33 ./patches/fredrik/tp5_2.gif
|
||||
b2c4c608a50159734e009471211974e1 ./sprites/mouse/bspib3b7.gif
|
||||
b2c4c608a50159734e009471211974e1 ./sprites/mouse/bspie3e7.gif
|
||||
b4559ba40542bcb92cec818a1a0f1aa3 ./sprites/scubasteve/sarga1.gif
|
||||
b4559ba40542bcb92cec818a1a0f1aa3 ./sprites/scubasteve/sargg1.gif
|
||||
b53703952ecc673fa63b33f637c53949 ./patches/fredrik/new/hekawoof/patches/rp2_3.gif
|
||||
b53703952ecc673fa63b33f637c53949 ./patches/fredrik/rp2_3.gif
|
||||
b6a8aa5dd1cab75d8df00b16a5b175ad ./sprites/railgunner/new/graphics/stfevl3.gif
|
||||
b6a8aa5dd1cab75d8df00b16a5b175ad ./sprites/railgunner/new/graphics/stfst32.gif
|
||||
b98b692f091b265ae03103666ba8bb54 ./patches/fredrik/new/hekawoof/patches/rw25_3.gif
|
||||
b98b692f091b265ae03103666ba8bb54 ./patches/fredrik/rw25_3.gif
|
||||
b9eeaa8aec9a0100f236dd373e68ff53 ./sprites/fraggle/keenf0.gif
|
||||
b9eeaa8aec9a0100f236dd373e68ff53 ./sprites/fraggle/keenl0.gif
|
||||
ba88245e54af0162b597704dc31e98d5 ./sprites/nightfang/heada2a8.gif
|
||||
ba88245e54af0162b597704dc31e98d5 ./sprites/nightfang/heade2e8.gif
|
||||
bac6836d4369d84d5b65507a9e8cc85e ./sprites/linguica/sargf1.gif
|
||||
bac6836d4369d84d5b65507a9e8cc85e ./sprites/linguica/sargf2.gif
|
||||
bc77592e58545e7e7ef6414445a45df5 ./sprites/nightfang/headb5.gif
|
||||
bc77592e58545e7e7ef6414445a45df5 ./sprites/nightfang/headf5.gif
|
||||
bcc8cd00efb38c10c2df4add6af0e5e7 ./patches/fredrik/new/hekawoof/patches/tp5_4.gif
|
||||
bcc8cd00efb38c10c2df4add6af0e5e7 ./patches/fredrik/tp5_4.gif
|
||||
bcfe92bfe975d01039c920d8f7e33abd ./patches/fredrik/new/hekawoof/patches/rp1_1.gif
|
||||
bcfe92bfe975d01039c920d8f7e33abd ./patches/fredrik/rp1_1.gif
|
||||
bd7573217d517d44198df1e079c61930 ./graphics/ajapted/m_saveg.gif
|
||||
bd7573217d517d44198df1e079c61930 ./graphics/ajapted/m_sgttl.gif
|
||||
bdfe84d36a8d78d6c372bc02c9167a6b ./sprites/railgunner/new/graphics/m_option.gif
|
||||
bdfe84d36a8d78d6c372bc02c9167a6b ./sprites/railgunner/new/graphics/m_optttl.gif
|
||||
c0c6de9def67392f7e9f4c2df4a8adea ./patches/fredrik/new/hekawoof/patches/rw10_4.gif
|
||||
c0c6de9def67392f7e9f4c2df4a8adea ./patches/fredrik/rw10_4.gif
|
||||
c1d4de9bb746ba9dac636e6c6c96d1b9 ./sprites/fredrik/bfe1e0.gif
|
||||
c1d4de9bb746ba9dac636e6c6c96d1b9 ./sprites/fredrik/bfe2c0.gif
|
||||
c1eed2f139bc1df997af053159053d5a ./sprites/nrkn/tgrnb0.gif
|
||||
c1eed2f139bc1df997af053159053d5a ./sprites/nrkn/tgrnd0.gif
|
||||
c24bcd041e28168083fa842b1b6c51ac ./sprites/mouse/bspia4a6.gif
|
||||
c24bcd041e28168083fa842b1b6c51ac ./sprites/mouse/bspid4d6.gif
|
||||
c3bccec65f5648ae7a2d3a8b08d0d4fc ./sprites/railgunner/gspcrip/sprites/chgga0.gif
|
||||
c3bccec65f5648ae7a2d3a8b08d0d4fc ./sprites/railgunner/gspcrip/sprites/chggb0.gif
|
||||
c51b09f00d5a130300101e0385cbe49e ./sprites/fredrik/bfe1f0.gif
|
||||
c51b09f00d5a130300101e0385cbe49e ./sprites/fredrik/bfe2d0.gif
|
||||
c8eacb0b770d1e880079b654060b1347 ./sprites/railgunner/gspcrip/sprites/sht2b0.gif
|
||||
c8eacb0b770d1e880079b654060b1347 ./sprites/railgunner/gspcrip/sprites/sht2h0.gif
|
||||
cbc4c01c63fdce510cdda1c3e2cad920 ./sprites/railgunner/bfe1b0.gif
|
||||
cbc4c01c63fdce510cdda1c3e2cad920 ./sprites/railgunner/bfe2a0.gif
|
||||
cd2434142b05a73f0a7d6c5e269b6e57 ./sprites/scubasteve/sarga3a7.gif
|
||||
cd2434142b05a73f0a7d6c5e269b6e57 ./sprites/scubasteve/sargd3d7.gif
|
||||
cd2434142b05a73f0a7d6c5e269b6e57 ./sprites/scubasteve/sarge3e7.gif
|
||||
cd2434142b05a73f0a7d6c5e269b6e57 ./sprites/scubasteve/sargf3f7.gif
|
||||
cd2434142b05a73f0a7d6c5e269b6e57 ./sprites/scubasteve/sargg3g7.gif
|
||||
cde1112dd88cf00bc504fd6813855d35 ./patches/fredrik/new/hekawoof/patches/wall02_2.gif
|
||||
cde1112dd88cf00bc504fd6813855d35 ./patches/fredrik/wall02_2.gif
|
||||
d34e8c750bf72a0dbc8f5003cfcdb991 ./patches/spinspyder/wolf4.gif
|
||||
d34e8c750bf72a0dbc8f5003cfcdb991 ./patches/spinspyder/wolf7.gif
|
||||
d3c6784ec57b961e4386eb0754376fb2 ./patches/mellow/rwdm11b.gif
|
||||
d3c6784ec57b961e4386eb0754376fb2 ./patches/mellow/rwdm11d.gif
|
||||
d449012e97f339265735bc0b3efe31c9 ./sprites/linguica/bossa7.gif
|
||||
d449012e97f339265735bc0b3efe31c9 ./sprites/linguica/bossh7.gif
|
||||
d7c9ee2e91d2a733457e4b49947008e7 ./sprites/fredrik/skulb6b4.gif
|
||||
d7c9ee2e91d2a733457e4b49947008e7 ./sprites/fredrik/skulc6c4.gif
|
||||
d7c9ee2e91d2a733457e4b49947008e7 ./sprites/fredrik/skuld6d4.gif
|
||||
d7fe5b8f77637f75d806a876661a003f ./sprites/saint_of_killers/oldspos/sposs0.gif
|
||||
d7fe5b8f77637f75d806a876661a003f ./sprites/saint_of_killers/pretouchup/sposs0.gif
|
||||
d7fe5b8f77637f75d806a876661a003f ./sprites/saint_of_killers/spos_pre_touchup/sposs0.gif
|
||||
d876ed2338b48cb804d66f5ec49a3a9e ./sprites/saint_of_killers/spos_pre_touchup2/sposb2b8.gif
|
||||
d876ed2338b48cb804d66f5ec49a3a9e ./sprites/saint_of_killers/spos_pre_touchup/sposb2b8.gif
|
||||
d9b791cc9469f457bbb58e3929ba4513 ./patches/fredrik/new/hekawoof/patches/rw25_4.gif
|
||||
d9b791cc9469f457bbb58e3929ba4513 ./patches/fredrik/rw25_4.gif
|
||||
db3910c703b722fa5d67d4bfdbad7c3a ./patches/fredrik/new/hekawoof/patches/rw10_2.gif
|
||||
db3910c703b722fa5d67d4bfdbad7c3a ./patches/fredrik/rw10_2.gif
|
||||
dd66e17b564728ed57aea215c0d64bfd ./sprites/saint_of_killers/spos_pre_touchup2/sposc2c8.gif
|
||||
dd66e17b564728ed57aea215c0d64bfd ./sprites/saint_of_killers/spos_pre_touchup/sposc2c8.gif
|
||||
de9d85ed8d18de9ff0a9302bf483395a ./patches/fredrik/new/hekawoof/patches/tp2_1.gif
|
||||
de9d85ed8d18de9ff0a9302bf483395a ./patches/fredrik/tp2_1.gif
|
||||
df0f0c21f613c212c01ec20e1ce09cf3 ./patches/fredrik/new/patches/wall23_2.gif
|
||||
df0f0c21f613c212c01ec20e1ce09cf3 ./patches/fredrik/wall23_2.gif
|
||||
df7a46d335471446200e1a0d7435dce7 ./sprites/saint_of_killers/oldspos/sposn0.gif
|
||||
df7a46d335471446200e1a0d7435dce7 ./sprites/saint_of_killers/pretouchup/sposn0.gif
|
||||
df7a46d335471446200e1a0d7435dce7 ./sprites/saint_of_killers/spos_pre_touchup/sposn0.gif
|
||||
df7fdd0485b37052dd9e44db8a364ba3 ./sprites/railgunner/new/graphics/m_saveg.gif
|
||||
df7fdd0485b37052dd9e44db8a364ba3 ./sprites/railgunner/new/graphics/m_sgttl.gif
|
||||
e1bf8a0cd4bfe99775d9b7da22a5ddde ./sprites/railgunner/new/graphics/stkeys1.gif
|
||||
e1bf8a0cd4bfe99775d9b7da22a5ddde ./sprites/railgunner/new/graphics/stkeys4.gif
|
||||
e2626e14acaaa88a492d57281b84febc ./patches/fredrik/new/hekawoof/patches/rw25_2.gif
|
||||
e2626e14acaaa88a492d57281b84febc ./patches/fredrik/rw25_2.gif
|
||||
e64c474b410848effaf60a1a93db2dee ./sprites/linguica/bossa1.gif
|
||||
e64c474b410848effaf60a1a93db2dee ./sprites/linguica/bossh1.gif
|
||||
e6f0e15c8f56b55db0c39cef1b16cc31 ./sprites/saint_of_killers/spos_pre_touchup2/sposa5.gif
|
||||
e6f0e15c8f56b55db0c39cef1b16cc31 ./sprites/saint_of_killers/spos_pre_touchup/sposa5.gif
|
||||
e706930a93481398d0b4d55c5b08bbbe ./sprites/chang/plsga0.gif
|
||||
e706930a93481398d0b4d55c5b08bbbe ./sprites/chang/rubyplas/rplga0.gif
|
||||
e8f6ab615c41c14e6a6ba6eed30d251e ./patches/fredrik/new/hekawoof/patches/tp2_2.gif
|
||||
e8f6ab615c41c14e6a6ba6eed30d251e ./patches/fredrik/tp2_2.gif
|
||||
ea2df314da6e032ec4549b3a5c45f87c ./sprites/railgunner/new/graphics/m_newg.gif
|
||||
ea2df314da6e032ec4549b3a5c45f87c ./sprites/railgunner/new/graphics/m_ngame.gif
|
||||
eab10d0bba171ef39de004bec62b8a84 ./sprites/railgunner/bfe1e0.gif
|
||||
eab10d0bba171ef39de004bec62b8a84 ./sprites/railgunner/bfe1f0.gif
|
||||
eab10d0bba171ef39de004bec62b8a84 ./sprites/railgunner/bfe2d0.gif
|
||||
eb43d0b4da495bafbeabbaa7ee194b28 ./sprites/saint_of_killers/oldspos/spost0.gif
|
||||
eb43d0b4da495bafbeabbaa7ee194b28 ./sprites/saint_of_killers/pretouchup/spost0.gif
|
||||
eb43d0b4da495bafbeabbaa7ee194b28 ./sprites/saint_of_killers/spos_pre_touchup/spost0.gif
|
||||
eb7ed1e4e71514a79e8318205b614352 ./sprites/fredrik/skulc7c3.gif
|
||||
eb7ed1e4e71514a79e8318205b614352 ./sprites/fredrik/skuld7d3.gif
|
||||
ebbe9b205d64d7e78eef58518d055b81 ./sprites/railgunner/new/graphics/stfkill3.gif
|
||||
ebbe9b205d64d7e78eef58518d055b81 ./sprites/railgunner/new/graphics/stfouch3.gif
|
||||
ebe3f45b1b8adab4715239e78dda2659 ./sprites/pov/skulc5.gif
|
||||
ebe3f45b1b8adab4715239e78dda2659 ./sprites/pov/skuld5.gif
|
||||
eef26ce24f511d4542a90051b6207aa3 ./flats/tarin/floor4_8.gif
|
||||
eef26ce24f511d4542a90051b6207aa3 ./patches/tarin/wall03_7.gif
|
||||
f127debe8e6038c4ef771c2f8a30e7ad ./patches/fredrik/new/hekawoof/patches/rp2_4.gif
|
||||
f127debe8e6038c4ef771c2f8a30e7ad ./patches/fredrik/rp2_4.gif
|
||||
f14003ba23c0c04932c216f8c8a64f8b ./patches/fredrik/new/hekawoof/patches/wall62_1.gif
|
||||
f14003ba23c0c04932c216f8c8a64f8b ./patches/fredrik/wall62_1.gif
|
||||
f214bdab35431bac82a6416f74a999b8 ./sprites/saint_of_killers/oldspos/sposq0.gif
|
||||
f214bdab35431bac82a6416f74a999b8 ./sprites/saint_of_killers/pretouchup/sposq0.gif
|
||||
f214bdab35431bac82a6416f74a999b8 ./sprites/saint_of_killers/spos_pre_touchup/sposq0.gif
|
||||
f3c1902d16b69cad511b1b09ad4700ed ./sprites/railgunner/bfe1d0.gif
|
||||
f3c1902d16b69cad511b1b09ad4700ed ./sprites/railgunner/bfe2c0.gif
|
||||
f69fcf3d5cb33c795d00076d767a7e31 ./sprites/linguica/bossa5.gif
|
||||
f69fcf3d5cb33c795d00076d767a7e31 ./sprites/linguica/bossh5.gif
|
||||
fae14e8f612fabcb95bef25b6af01507 ./graphics/dummy.gif
|
||||
fae14e8f612fabcb95bef25b6af01507 ./patches/dummy.gif
|
||||
fae14e8f612fabcb95bef25b6af01507 ./sprites/dummy-blank.gif
|
||||
fba87cbfd9f1195993ee375828180279 ./flats/espi/blood3.gif
|
||||
fba87cbfd9f1195993ee375828180279 ./flats/espi/bloodd.gif
|
||||
fcb8d28c22aefea98e1e093cc22b74d2 ./sprites/geekmarine/cposs0.gif
|
||||
fcb8d28c22aefea98e1e093cc22b74d2 ./sprites/saint_of_killers/playt0.gif
|
||||
fdc44edc7913a30dc48e75c3e83fd60d ./sprites/saint_of_killers/oldspos/sposo0.gif
|
||||
fdc44edc7913a30dc48e75c3e83fd60d ./sprites/saint_of_killers/pretouchup/sposo0.gif
|
||||
fdc44edc7913a30dc48e75c3e83fd60d ./sprites/saint_of_killers/spos_pre_touchup/sposo0.gif
|
||||
fef590d14e8267a5e37d61c2e7b34f08 ./patches/fredrik/new/hekawoof/patches/rw10_1.gif
|
||||
fef590d14e8267a5e37d61c2e7b34f08 ./patches/fredrik/rw10_1.gif
|
||||
ff71d43ab323ce1f026ff1fbda1298e2 ./sprites/saint_of_killers/spos_pre_touchup2/sposb5.gif
|
||||
ff71d43ab323ce1f026ff1fbda1298e2 ./sprites/saint_of_killers/spos_pre_touchup/sposb5.gif
|
||||
ff79b03f5ce8d52ba9087ea56a13cf7c ./sprites/saint_of_killers/oldspos/sposl0.gif
|
||||
ff79b03f5ce8d52ba9087ea56a13cf7c ./sprites/saint_of_killers/pretouchup/sposl0.gif
|
|
@ -0,0 +1,19 @@
|
|||
#!/usr/bin/env ruby
|
||||
|
||||
IO.popen("find -type f -name '*.gif' | xargs md5sum |sort") do |proc|
|
||||
lastline = ''
|
||||
lastsum = ''
|
||||
proc.each_line do |s|
|
||||
s =~ /^(\w+)/
|
||||
sum = $1
|
||||
if sum == lastsum
|
||||
print lastline
|
||||
puts s
|
||||
lastline = ''
|
||||
else
|
||||
lastsum = sum
|
||||
lastline = s
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
#!/usr/bin/env ruby
|
||||
#
|
||||
# Find possibly redundant files for removal
|
||||
|
||||
valid_files = {}
|
||||
|
||||
# all files in the top level dir
|
||||
|
||||
for file in Dir.glob("*")
|
||||
valid_files[File.expand_path(file)] = 1
|
||||
end
|
||||
|
||||
# all files in immediate subdirs and the files they link to
|
||||
|
||||
for file in Dir.glob("*/*")
|
||||
stat = File.lstat(file)
|
||||
if stat.symlink?
|
||||
valid_files[File.expand_path(file)] = 1
|
||||
linked = File.readlink(file)
|
||||
linked = File.dirname(file) + "/" + linked
|
||||
linked = File.expand_path(linked)
|
||||
valid_files[linked] = 1
|
||||
end
|
||||
end
|
||||
|
||||
# seek out invalid files and build a list
|
||||
|
||||
puts "<ul>"
|
||||
IO.popen("find") do |proc|
|
||||
proc.each_line do |s|
|
||||
s = s.chomp
|
||||
s.sub!(/^\.\//, '')
|
||||
|
||||
# ignore text files, non-file
|
||||
if s !~ /txt$/i && File.stat(s).file? && !valid_files[File.expand_path(s)]
|
||||
puts "<li> <a href='#{s}'>#{s}</a>"
|
||||
end
|
||||
end
|
||||
end
|
||||
puts "</ul>"
|
||||
|
|
@ -0,0 +1,103 @@
|
|||
diff -u deutex-4.4.0/src/deutex.c deutex/deutex-4.4.0/src/deutex.c
|
||||
--- deutex-4.4.0/src/deutex.c 2000-01-03 11:32:47.000000000 -0500
|
||||
+++ deutex/deutex-4.4.0/src/deutex.c 2002-08-06 11:24:12.000000000 -0400
|
||||
@@ -85,6 +85,7 @@
|
||||
static Bool fullSND;
|
||||
static Bool WSafe;
|
||||
static Bool George;
|
||||
+Bool shrink_sounds = 1;
|
||||
#endif /*DeuTex*/
|
||||
char trnR,trnG,trnB;
|
||||
picture_format_t picture_format = PF_NORMAL;
|
||||
@@ -454,6 +455,11 @@
|
||||
((int)trnR&0xFF),((int)trnG&0xFF),((int)trnB&0xFF));
|
||||
(void)argc;
|
||||
}
|
||||
+void COMnoshrink(int argc, const char *argv[])
|
||||
+{
|
||||
+ shrink_sounds = 0;
|
||||
+ (void)argc;(void)argv;
|
||||
+}
|
||||
|
||||
void COMle (int argc, const char *argv[])
|
||||
{
|
||||
@@ -726,6 +732,7 @@
|
||||
{OPT,0,"wav", COMwave, NULL, "save sound as wave (.wav)"},
|
||||
{OPT,0,"voc", COMvoc, NULL, "save sound as voc (.voc)"},
|
||||
{OPT,0,"fullsnd", COMfullsnd,NULL, "save sound lumps beyond declared length"},
|
||||
+ {OPT,0,"noshrink", COMnoshrink,NULL, "do not adjust sound effects to be 11025 Hz always"},
|
||||
|
||||
{OPT,0,"levels", COMlevel, NULL, "select levels"},
|
||||
{OPT,0,"lumps", COMlump , NULL, "select lumps"},
|
||||
diff -u deutex-4.4.0/src/sound.c deutex/deutex-4.4.0/src/sound.c
|
||||
--- deutex-4.4.0/src/sound.c 1999-12-30 18:20:22.000000000 -0500
|
||||
+++ deutex/deutex-4.4.0/src/sound.c 2002-08-06 11:27:33.000000000 -0400
|
||||
@@ -30,6 +30,8 @@
|
||||
#include "sound.h"
|
||||
#include "text.h"
|
||||
|
||||
+extern Bool shrink_sounds;
|
||||
+
|
||||
/*compile only for DeuTex*/
|
||||
#if defined DeuTex
|
||||
|
||||
@@ -402,31 +404,39 @@
|
||||
case SNDVOC: data=SNDloadVocFile(file,&datasize,&speed);break;
|
||||
default: Bug("sndcw");
|
||||
}
|
||||
- rate = (11025L<<8)/((Int32)speed);
|
||||
- soundsize= (datasize*rate)>>8;
|
||||
- rate = ((Int32)speed<<8)/11025L;
|
||||
- if(speed>11025)
|
||||
- { Warning("shrinking %ld to 11025 sample/s",speed);
|
||||
- for(s=0;s<soundsize;s++)
|
||||
- { d= (s*rate)>>8; /* (s*((Int32)speed))/11025;*/
|
||||
- data[s]= data[d];
|
||||
+
|
||||
+ if (shrink_sounds) {
|
||||
+ rate = (11025L<<8)/((Int32)speed);
|
||||
+ soundsize= (datasize*rate)>>8;
|
||||
+ rate = ((Int32)speed<<8)/11025L;
|
||||
+ if(speed>11025)
|
||||
+ { Warning("shrinking %ld to 11025 sample/s",speed);
|
||||
+ for(s=0;s<soundsize;s++)
|
||||
+ { d= (s*rate)>>8; /* (s*((Int32)speed))/11025;*/
|
||||
+ data[s]= data[d];
|
||||
+ }
|
||||
+ data=(char *)Realloc(data,soundsize);
|
||||
}
|
||||
- data=(char *)Realloc(data,soundsize);
|
||||
- }
|
||||
- else if(speed < 11025)
|
||||
- { Warning("expanding %ld to 11025 sample/s",speed);
|
||||
- data=(char *)Realloc(data,soundsize);
|
||||
- for(s=soundsize-1;s>=0;s--)
|
||||
- { d= (s*rate)>>8;
|
||||
- data[s]= data[d];
|
||||
+ else if(speed < 11025)
|
||||
+ { Warning("expanding %ld to 11025 sample/s",speed);
|
||||
+ data=(char *)Realloc(data,soundsize);
|
||||
+ for(s=soundsize-1;s>=0;s--)
|
||||
+ { d= (s*rate)>>8;
|
||||
+ data[s]= data[d];
|
||||
+ }
|
||||
}
|
||||
+ else /*11025*/
|
||||
+ { soundsize=datasize;
|
||||
+ }
|
||||
+
|
||||
+ speed = 11025;
|
||||
+ } else { /* shrink_sounds */
|
||||
+ soundsize = datasize;
|
||||
}
|
||||
- else /*11025*/
|
||||
- { soundsize=datasize;
|
||||
- }
|
||||
+
|
||||
if(soundsize>0)
|
||||
{ size= WADRwriteShort(info,3);
|
||||
- size+=WADRwriteShort(info,11025);
|
||||
+ size+=WADRwriteShort(info,speed);
|
||||
size+=WADRwriteLong(info,soundsize);
|
||||
size+=WADRwriteBytes(info,data,soundsize);
|
||||
}
|
|
@ -0,0 +1,17 @@
|
|||
#!/usr/bin/env perl
|
||||
|
||||
use strict;
|
||||
my %patches;
|
||||
|
||||
while (<>) {
|
||||
if (/^\*/) {
|
||||
my ($name) = /^\*\s+(\w+)/;
|
||||
$name = uc $name;
|
||||
$patches{$name} = 1;
|
||||
}
|
||||
}
|
||||
|
||||
print "; autogenerated patch list\n\n";
|
||||
|
||||
foreach (sort keys %patches) { print "$_\n"; }
|
||||
|
After Width: | Height: | Size: 1.9 KiB |
After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 2.4 KiB |
After Width: | Height: | Size: 2.4 KiB |
After Width: | Height: | Size: 1.5 KiB |
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 2.1 KiB |
After Width: | Height: | Size: 2.3 KiB |
After Width: | Height: | Size: 2.4 KiB |
After Width: | Height: | Size: 2.3 KiB |
After Width: | Height: | Size: 1.9 KiB |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 2.6 KiB |
After Width: | Height: | Size: 2.9 KiB |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 1.9 KiB |
After Width: | Height: | Size: 2.7 KiB |
|
@ -0,0 +1,5 @@
|
|||
Hey. Some more flats done.
|
||||
The rrock14 flat is a direct rip from nb_nmares rw23_3 wall patch.
|
||||
|
||||
AirRaid
|
||||
|
After Width: | Height: | Size: 2.9 KiB |
After Width: | Height: | Size: 3.0 KiB |
After Width: | Height: | Size: 3.0 KiB |
After Width: | Height: | Size: 3.0 KiB |
After Width: | Height: | Size: 2.4 KiB |
After Width: | Height: | Size: 1.7 KiB |
|
@ -0,0 +1 @@
|
|||
espi/blood1.gif
|
|
@ -0,0 +1 @@
|
|||
espi/blood2.gif
|
|
@ -0,0 +1 @@
|
|||
espi/blood3.gif
|
|
@ -0,0 +1 @@
|
|||
espi/blooda.gif
|
|
@ -0,0 +1 @@
|
|||
espi/bloodb.gif
|
|
@ -0,0 +1 @@
|
|||
espi/bloodc.gif
|
|
@ -0,0 +1 @@
|
|||
espi/bloodd.gif
|
|
@ -0,0 +1 @@
|
|||
espi/bloode.gif
|
|
@ -0,0 +1 @@
|
|||
maonth/ceil1_1.gif
|
|
@ -0,0 +1 @@
|
|||
tarin/ceil1_2.gif
|
|
@ -0,0 +1 @@
|
|||
tarin/ceil1_3.gif
|
|
@ -0,0 +1 @@
|
|||
espi/ceil3_1.gif
|
|
@ -0,0 +1 @@
|
|||
espi/ceil3_2.gif
|
|
@ -0,0 +1 @@
|
|||
espi/ceil3_3.gif
|
|
@ -0,0 +1 @@
|
|||
espi/ceil3_4.gif
|
|
@ -0,0 +1 @@
|
|||
espi/ceil3_5.gif
|
|
@ -0,0 +1 @@
|
|||
espi/ceil3_6.gif
|
|
@ -0,0 +1 @@
|
|||
airraid/ceil4_1.gif
|
|
@ -0,0 +1 @@
|
|||
airraid/ceil4_2.gif
|
|
@ -0,0 +1 @@
|
|||
airraid/ceil4_3.gif
|
|
@ -0,0 +1 @@
|
|||
tarin/ceil5_1.gif
|
|
@ -0,0 +1 @@
|
|||
espi/ceil5_2.gif
|
|
@ -0,0 +1 @@
|
|||
airraid/comp01.gif
|
|
@ -0,0 +1 @@
|
|||
locust/cons1_1.gif
|
|
@ -0,0 +1 @@
|
|||
locust/cons1_5.gif
|
|
@ -0,0 +1 @@
|
|||
locust/cons1_7.gif
|
|
@ -0,0 +1 @@
|
|||
locust/cons1_9.gif
|
|
@ -0,0 +1 @@
|
|||
fredrik/cratop1.gif
|
|
@ -0,0 +1 @@
|
|||
fredrik/cratop2.gif
|
|
@ -0,0 +1 @@
|
|||
espi/dem1_1.gif
|
|
@ -0,0 +1 @@
|
|||
espi/dem1_2.gif
|
|
@ -0,0 +1 @@
|
|||
espi/dem1_3.gif
|