Game is playable, and should compile on linux and Windows. Assumes you have a lua 5.3 library available. Removes level compiler and associated files. Replaces special level des-files with lua scripts. Exposes some NetHack internals to lua: - des-table with commands to create special levels - nh-table with NetHack core commands - nhc-table with some constants - u-table with some player-specific data (u-struct) - selection userdata Adds some rudimentary tests. Adds new extended command #wizloadlua to run a specific script, and #wizloaddes to run a specific level-creation script. nhlib.lua is loaded for every lua script. Download and untar lua: mkdir lib cd lib curl -R -O http://www.lua.org/ftp/lua-5.3.5.tar.gz tar zxf lua-5.3.5.tar.gz Then make nethack normally.
141 lines
3.6 KiB
Makefile
141 lines
3.6 KiB
Makefile
# NetHack Datafiles Makefile.dat $NHDT-Date: 1447844574 2018/04/25 19:25:54 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.22 $
|
|
# Copyright (c) 2018 by Pasi Kallinen
|
|
# NetHack may be freely redistributed. See license for details.
|
|
|
|
# Root of source tree:
|
|
NHSROOT=..
|
|
|
|
# for Atari
|
|
# SHELL=E:/GEMINI2/MUPFEL.TTP
|
|
# UUDECODE=uudecode
|
|
|
|
VARDAT = bogusmon data engrave epitaph rumors quest.dat oracles options
|
|
|
|
all: $(VARDAT) spec_levs quest_levs dungeon
|
|
|
|
../util/makedefs:
|
|
(cd ../util ; $(MAKE) makedefs)
|
|
|
|
../util/dgn_comp:
|
|
(cd ../util ; $(MAKE) dgn_comp)
|
|
|
|
../util/tile2x11:
|
|
(cd ../util ; $(MAKE) tile2x11)
|
|
|
|
../util/tile2beos:
|
|
(cd ../util ; $(MAKE) tile2beos)
|
|
|
|
../util/tile2bmp:
|
|
(cd ../util ; $(MAKE) tile2bmp)
|
|
|
|
x11tiles: ../util/tile2x11 ../win/share/monsters.txt ../win/share/objects.txt \
|
|
../win/share/other.txt \
|
|
../win/share/monsters.txt
|
|
../util/tile2x11 ../win/share/monsters.txt ../win/share/objects.txt \
|
|
../win/share/other.txt \
|
|
-grayscale ../win/share/monsters.txt
|
|
|
|
beostiles: ../util/tile2beos ../win/share/monsters.txt \
|
|
../win/share/objects.txt \
|
|
../win/share/other.txt
|
|
../util/tile2beos ../win/share/monsters.txt \
|
|
../win/share/objects.txt \
|
|
../win/share/other.txt
|
|
|
|
nhtiles.bmp: ../util/tile2bmp ../win/share/monsters.txt \
|
|
../win/share/objects.txt \
|
|
../win/share/other.txt
|
|
../util/tile2bmp $@
|
|
|
|
NetHack.ad: ../win/X11/NetHack.ad
|
|
# handle "#define foo bar" -lines
|
|
grep ^#define ../win/X11/NetHack.ad | \
|
|
sed -e 's/^#define/s/g' -e 's/ */ /g' \
|
|
-e 's/$$/ g/g' > NetHack.ad.tmp
|
|
grep -v ^#define ../win/X11/NetHack.ad | \
|
|
sed -f NetHack.ad.tmp > NetHack.ad
|
|
-rm -f NetHack.ad.tmp
|
|
|
|
pet_mark.xbm: ../win/X11/pet_mark.xbm
|
|
cp ../win/X11/pet_mark.xbm pet_mark.xbm
|
|
|
|
pilemark.xbm: ../win/X11/pilemark.xbm
|
|
cp ../win/X11/pilemark.xbm pilemark.xbm
|
|
|
|
rip.xpm: ../win/X11/rip.xpm
|
|
cp ../win/X11/rip.xpm rip.xpm
|
|
|
|
mapbg.xpm: ../win/gnome/mapbg.xpm
|
|
cp ../win/gnome/mapbg.xpm mapbg.xpm
|
|
|
|
nhsplash.xpm: ../win/Qt/nhsplash.xpm
|
|
cp ../win/Qt/nhsplash.xpm nhsplash.xpm
|
|
|
|
nethack.icns: ../win/Qt/nhicns.uu
|
|
$(UUDECODE) ../win/Qt/nhicns.uu
|
|
|
|
Info.plist: ../win/Qt/Info.pli
|
|
cp ../win/Qt/Info.pli Info.plist
|
|
|
|
../util/tile2img.ttp:
|
|
(cd ../util ; $(MAKE) tile2img.ttp)
|
|
|
|
../util/xpm2img.ttp:
|
|
(cd ../util ; $(MAKE) xpm2img.ttp)
|
|
nh16.img: ../util/tile2img.ttp ../win/share/monsters.txt \
|
|
../win/share/objects.txt ../win/share/other.txt
|
|
../util/tile2img.ttp nh16.img
|
|
|
|
rip.img: ../util/xpm2img.ttp
|
|
../util/xpm2img.ttp ../win/X11/rip.xpm rip.img
|
|
title.img:
|
|
# cp ../win/gem/title.img title.img
|
|
$(UUDECODE) ../win/gem/title.uu
|
|
|
|
GEM_RSC.RSC:
|
|
# cp ../win/gem/GEM_RSC.RSC GEM_RSC.RSC
|
|
$(UUDECODE) ../win/gem/gem_rsc.uu
|
|
|
|
|
|
data: data.base ../util/makedefs
|
|
../util/makedefs -d
|
|
|
|
rumors: rumors.tru rumors.fal ../util/makedefs
|
|
../util/makedefs -r
|
|
|
|
quest.dat: quest.txt ../util/makedefs
|
|
../util/makedefs -q
|
|
|
|
oracles: oracles.txt ../util/makedefs
|
|
../util/makedefs -h
|
|
|
|
engrave: engrave.txt ../util/makedefs
|
|
../util/makedefs -s
|
|
|
|
epitaph: epitaph.txt ../util/makedefs
|
|
../util/makedefs -s
|
|
|
|
bogusmon: bogusmon.txt ../util/makedefs
|
|
../util/makedefs -s
|
|
|
|
# note: 'options' should have already been made when include/date.h was created
|
|
options: ../util/makedefs
|
|
../util/makedefs -v
|
|
|
|
|
|
spec_levs:
|
|
touch spec_levs
|
|
|
|
quest_levs:
|
|
touch quest_levs
|
|
|
|
dungeon: dungeon.def ../util/makedefs ../util/dgn_comp
|
|
../util/makedefs -e
|
|
../util/dgn_comp dungeon.pdf
|
|
|
|
spotless:
|
|
-rm -f spec_levs quest_levs *.lev $(VARDAT) dungeon dungeon.pdf
|
|
-rm -f nhdat x11tiles beostiles pet_mark.xbm pilemark.xbm rip.xpm mapbg.xpm
|
|
-rm -f rip.img GEM_RSC.RSC title.img nh16.img NetHack.ad
|
|
-rm -f nhsplash.xpm nhtiles.bmp
|