aboutsummaryrefslogtreecommitdiff
path: root/games/teeworlds
diff options
context:
space:
mode:
authorMartin Wilke <miwi@FreeBSD.org>2008-02-18 19:52:20 +0000
committerMartin Wilke <miwi@FreeBSD.org>2008-02-18 19:52:20 +0000
commit723631783a86aee83bd19ec9d3841602df4bdafb (patch)
tree4ecd0d08db468839b224ccbfe1a55488389325d2 /games/teeworlds
parent09642a7911d2972e9145b55503a415c3ddc6f378 (diff)
Teewars is a freeware online multiplayer game, designed as a crossover
between Quake and Worms. Set on platform-based maps, players control a cute little bugger with guns to take out as many opponents as possible. The characters can jump but move more quickly using a grappling hook, swinging through the levels. It can also be used to lock other players to keep them near. The available weapons include a pistol, shotgun, grenade launcher and a hammer. The shooting and grappling direction is shown through a cursor, controlled by the mouse. A special power-up temporarily provides a ninja sword, used to slash through enemies. Each character has an amount of health and shield. Items scattered around include additional ammo, and health and shield bonuses. Unlike Worms, all the action that happens is fast-paced and happens in real-time. It supports CTF mode. WWW: http://www.teewars.com/ PR: ports/120778 Submitted by: Dmitry Marakasov <amdmi3 at amdmi3.ru>
Notes
Notes: svn path=/head/; revision=207540
Diffstat (limited to 'games/teeworlds')
-rw-r--r--games/teeworlds/Makefile69
-rw-r--r--games/teeworlds/distinfo6
-rw-r--r--games/teeworlds/files/patch-default.bam76
-rw-r--r--games/teeworlds/pkg-descr16
-rw-r--r--games/teeworlds/pkg-plist158
5 files changed, 325 insertions, 0 deletions
diff --git a/games/teeworlds/Makefile b/games/teeworlds/Makefile
new file mode 100644
index 000000000000..7559d8c18589
--- /dev/null
+++ b/games/teeworlds/Makefile
@@ -0,0 +1,69 @@
+# New ports collection makefile for: teewars
+# Date created: 17 Feb 2008
+# Whom: Dmitry Marakasov <amdmi3@amdmi3.ru>
+#
+# $FreeBSD$
+#
+
+PORTNAME= teewars
+PORTVERSION= 0.3.4
+CATEGORIES= games
+MASTER_SITES= http://www.teewars.com/files/ \
+ http://www.amdmi3.ru/distfiles/
+DISTNAME= ${PORTNAME}-${PORTVERSION}-src
+DISTFILES= ${DISTNAME}${EXTRACT_SUFX} bam${EXTRACT_SUFX}
+
+MAINTAINER= amdmi3@amdmi3.ru
+COMMENT= Platform game featuring buggers equipped with weapons
+
+USE_ZIP= yes
+USE_PYTHON_BUILD= yes
+
+BAM= ${WRKDIR}/bam.bin
+BAM_TARGET= release
+
+OPTIONS= TEEWARS_SERVER_ONLY "Build dedicated server only" off
+
+.include <bsd.port.pre.mk>
+
+.if defined(WITH_TEEWARS_SERVER_ONLY)
+BAM_TARGET= server_release
+PLIST_SUB+= CLIENT="@comment "
+.else
+LIB_DEPENDS+= portaudio.2:${PORTSDIR}/audio/portaudio2
+USE_GL= yes
+PLIST_SUB+= CLIENT=""
+.endif
+
+post-patch:
+ @${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|g' ${WRKSRC}/default.bam
+ @${REINPLACE_CMD} -e 's|-pthread|${PTHREAD_LIBS}|g' ${WRKSRC}/default.bam
+ @${REINPLACE_CMD} -e 's|\(s.cc.c_compiler = \).*|\1"${CC}"|; \
+ s|\(s.cc.cxx_compiler = \).*|\1"${CXX}"|; \
+ s|\(s.cc.flags = \).*|\1"${CFLAGS}"|; \
+ s|\(s.linker.linker = \).*|\1"${CXX}"|' \
+ ${WRKDIR}/bam/src/base.bam
+ @${FIND} ${WRKSRC}/src -name "*.c" -o -name "*.cpp" | \
+ ${XARGS} ${REINPLACE_CMD} -e 's|"data/|"${DATADIR}/|g'
+ @${REINPLACE_CMD} -e 's|"data/|"${DATADIR}/|g' ${WRKSRC}/datasrc/*
+
+# build bam executable - teewars own build system
+pre-build:
+ cd ${WRKDIR}/bam && ${CC} ${CFLAGS} src/tools/txt2c.c -o src/tools/txt2c
+ cd ${WRKDIR}/bam && src/tools/txt2c < src/base.bam > src/internal_base.h
+ cd ${WRKDIR}/bam && ${CC} ${CFLAGS} src/lua/src/*.c src/lua/src/lib/*.c \
+ src/*.c -Isrc/lua/include -o ${BAM} -lm ${PTHREAD_LIBS}
+
+# build teewars
+do-build:
+ cd ${WRKSRC} && ${BAM} ${BAM_TARGET}
+
+do-install:
+.if !defined(WITH_TEEWARS_SERVER_ONLY)
+ ${INSTALL_PROGRAM} ${WRKSRC}/teewars ${PREFIX}/bin
+.endif
+ ${INSTALL_PROGRAM} ${WRKSRC}/teewars_srv ${PREFIX}/bin
+ ${MKDIR} ${DATADIR}
+ @cd ${WRKSRC}/data && ${COPYTREE_SHARE} . ${DATADIR}/
+
+.include <bsd.port.post.mk>
diff --git a/games/teeworlds/distinfo b/games/teeworlds/distinfo
new file mode 100644
index 000000000000..2aa8a4040a79
--- /dev/null
+++ b/games/teeworlds/distinfo
@@ -0,0 +1,6 @@
+MD5 (teewars-0.3.4-src.zip) = ed56470043b0dc73caa55a741282c761
+SHA256 (teewars-0.3.4-src.zip) = 8ed3152a9fc631dce0c4da7ca991728895e2660b217bb26063c02503a36c0861
+SIZE (teewars-0.3.4-src.zip) = 4438820
+MD5 (bam.zip) = 91065fcce9296b7259d71ef6aafe347a
+SHA256 (bam.zip) = 616834108060c4f573d19dd087d6c4c5d5e40b8987002c9b9df089fb194fa71c
+SIZE (bam.zip) = 475348
diff --git a/games/teeworlds/files/patch-default.bam b/games/teeworlds/files/patch-default.bam
new file mode 100644
index 000000000000..b360144c23b0
--- /dev/null
+++ b/games/teeworlds/files/patch-default.bam
@@ -0,0 +1,76 @@
+--- default.bam.orig 2008-02-09 22:10:40.000000000 +0300
++++ default.bam 2008-02-18 00:06:31.000000000 +0300
+@@ -173,19 +173,20 @@
+ settings.cc.flags = "/wd4244"
+ else
+ settings.cc.flags = "-Wall"
+- settings.linker.flags = ""
++ settings.linker.flags = "-L/usr/local/lib/portaudio2 -L/usr/local/lib -pthread"
++ settings.linker.libs:add("z")
+ end
+
+ -- set some platform specific settings
+ settings.cc.includes:add("src")
+- settings.cc.includes:add("src/external/zlib")
++ settings.cc.includes:add("/usr/local/include/portaudio2")
++ settings.cc.includes:add("/usr/local/include")
+
+ if family == "unix" then
+ if platform == "macosx" then
+ glfw_platform = "macosx"
+ else
+ glfw_platform = "x11"
+- settings.linker.libs:add("pthread")
+ end
+ elseif family == "windows" then
+ glfw_platform = "win32"
+@@ -217,7 +218,6 @@
+ else
+ engine_settings.cc.flags = "-Wall -pedantic-errors"
+ end
+- engine_settings.linker.flags = ""
+ end
+
+ -- server
+@@ -237,10 +237,11 @@
+ client_settings.linker.frameworks:add("AudioToolbox")
+ client_settings.linker.frameworks:add("AudioUnit")
+ else
+- client_settings.linker.libs:add("asound")
+ client_settings.linker.libs:add("X11")
++ client_settings.linker.libs:add("Xxf86vm")
+ client_settings.linker.libs:add("GL")
+ client_settings.linker.libs:add("GLU")
++ client_settings.linker.libs:add("portaudio")
+ end
+ elseif family == "windows" then
+ client_settings.linker.libs:add("opengl32.lib")
+@@ -249,10 +250,8 @@
+ end
+
+ external_settings = settings:copy()
+- zlib = Compile(external_settings, Collect("src/engine/external/zlib/*.c"))
+ wavpack = Compile(external_settings, Collect("src/engine/external/wavpack/*.c"))
+ pnglite = Compile(external_settings, Collect("src/engine/external/pnglite/*.c"))
+- portaudio = Compile(external_settings, Collect("src/engine/external/pa.c"))
+
+ engine = Compile(engine_settings, Collect("src/engine/*.c"))
+ client = Compile(client_settings, Collect("src/engine/client/*.c"))
+@@ -280,7 +279,7 @@
+
+ -- build client, server and master server
+ client_exe = Link(client_settings, "teewars", game_shared, game_client,
+- engine, client, editor, glfw, portaudio, zlib, pnglite, wavpack,
++ engine, client, editor, glfw, pnglite, wavpack,
+ client_link_other)
+
+ server_exe = Link(server_settings, "teewars_srv", engine, server,
+@@ -326,7 +325,7 @@
+ release_settings.config_name = "release"
+ release_settings.config_ext = ""
+ release_settings.debug = 0
+-release_settings.cc.optimize = 1
++release_settings.cc.optimize = 0
+
+ DefaultTarget(build(debug_settings))
+ build(release_settings)
diff --git a/games/teeworlds/pkg-descr b/games/teeworlds/pkg-descr
new file mode 100644
index 000000000000..005c6a855e7d
--- /dev/null
+++ b/games/teeworlds/pkg-descr
@@ -0,0 +1,16 @@
+Teewars is a freeware online multiplayer game, designed as a crossover
+between Quake and Worms. Set on platform-based maps, players control
+a cute little bugger with guns to take out as many opponents as
+possible. The characters can jump but move more quickly using a
+grappling hook, swinging through the levels. It can also be used
+to lock other players to keep them near. The available weapons
+include a pistol, shotgun, grenade launcher and a hammer. The
+shooting and grappling direction is shown through a cursor, controlled
+by the mouse. A special power-up temporarily provides a ninja sword,
+used to slash through enemies. Each character has an amount of
+health and shield. Items scattered around include additional ammo,
+and health and shield bonuses. Unlike Worms, all the action that
+happens is fast-paced and happens in real-time. It supports CTF
+mode.
+
+WWW: http://www.teewars.com/
diff --git a/games/teeworlds/pkg-plist b/games/teeworlds/pkg-plist
new file mode 100644
index 000000000000..b8659e82d595
--- /dev/null
+++ b/games/teeworlds/pkg-plist
@@ -0,0 +1,158 @@
+%%CLIENT%%bin/teewars
+bin/teewars_srv
+%%DATADIR%%/audio/foley_body_impact-01.wv
+%%DATADIR%%/audio/foley_body_impact-02.wv
+%%DATADIR%%/audio/foley_body_impact-03.wv
+%%DATADIR%%/audio/foley_body_splat-01.wv
+%%DATADIR%%/audio/foley_body_splat-02.wv
+%%DATADIR%%/audio/foley_body_splat-03.wv
+%%DATADIR%%/audio/foley_body_splat-04.wv
+%%DATADIR%%/audio/foley_dbljump-01.wv
+%%DATADIR%%/audio/foley_dbljump-02.wv
+%%DATADIR%%/audio/foley_dbljump-03.wv
+%%DATADIR%%/audio/foley_foot_left-01.wv
+%%DATADIR%%/audio/foley_foot_left-02.wv
+%%DATADIR%%/audio/foley_foot_left-03.wv
+%%DATADIR%%/audio/foley_foot_left-04.wv
+%%DATADIR%%/audio/foley_foot_right-01.wv
+%%DATADIR%%/audio/foley_foot_right-02.wv
+%%DATADIR%%/audio/foley_foot_right-03.wv
+%%DATADIR%%/audio/foley_foot_right-04.wv
+%%DATADIR%%/audio/foley_land-01.wv
+%%DATADIR%%/audio/foley_land-02.wv
+%%DATADIR%%/audio/foley_land-03.wv
+%%DATADIR%%/audio/foley_land-04.wv
+%%DATADIR%%/audio/hook_attach-01.wv
+%%DATADIR%%/audio/hook_attach-02.wv
+%%DATADIR%%/audio/hook_attach-03.wv
+%%DATADIR%%/audio/hook_loop-01.wv
+%%DATADIR%%/audio/hook_loop-02.wv
+%%DATADIR%%/audio/sfx_ctf_cap_pl.wv
+%%DATADIR%%/audio/sfx_ctf_drop.wv
+%%DATADIR%%/audio/sfx_ctf_grab_en.wv
+%%DATADIR%%/audio/sfx_ctf_grab_pl.wv
+%%DATADIR%%/audio/sfx_ctf_rtn.wv
+%%DATADIR%%/audio/sfx_hit_strong-01.wv
+%%DATADIR%%/audio/sfx_hit_strong-02.wv
+%%DATADIR%%/audio/sfx_hit_weak-01.wv
+%%DATADIR%%/audio/sfx_hit_weak-02.wv
+%%DATADIR%%/audio/sfx_hit_weak-03.wv
+%%DATADIR%%/audio/sfx_msg-client.wv
+%%DATADIR%%/audio/sfx_msg-server.wv
+%%DATADIR%%/audio/sfx_pickup_arm-01.wv
+%%DATADIR%%/audio/sfx_pickup_arm-02.wv
+%%DATADIR%%/audio/sfx_pickup_arm-03.wv
+%%DATADIR%%/audio/sfx_pickup_arm-04.wv
+%%DATADIR%%/audio/sfx_pickup_gun.wv
+%%DATADIR%%/audio/sfx_pickup_hrt-01.wv
+%%DATADIR%%/audio/sfx_pickup_hrt-02.wv
+%%DATADIR%%/audio/sfx_pickup_launcher.wv
+%%DATADIR%%/audio/sfx_pickup_ninja.wv
+%%DATADIR%%/audio/sfx_pickup_sg.wv
+%%DATADIR%%/audio/sfx_spawn_wpn-01.wv
+%%DATADIR%%/audio/sfx_spawn_wpn-02.wv
+%%DATADIR%%/audio/sfx_spawn_wpn-03.wv
+%%DATADIR%%/audio/vo_teefault_cry-01.wv
+%%DATADIR%%/audio/vo_teefault_cry-02.wv
+%%DATADIR%%/audio/vo_teefault_ninja-01.wv
+%%DATADIR%%/audio/vo_teefault_ninja-02.wv
+%%DATADIR%%/audio/vo_teefault_ninja-03.wv
+%%DATADIR%%/audio/vo_teefault_ninja-04.wv
+%%DATADIR%%/audio/vo_teefault_pain_long-01.wv
+%%DATADIR%%/audio/vo_teefault_pain_long-02.wv
+%%DATADIR%%/audio/vo_teefault_pain_short-01.wv
+%%DATADIR%%/audio/vo_teefault_pain_short-02.wv
+%%DATADIR%%/audio/vo_teefault_pain_short-03.wv
+%%DATADIR%%/audio/vo_teefault_pain_short-04.wv
+%%DATADIR%%/audio/vo_teefault_pain_short-05.wv
+%%DATADIR%%/audio/vo_teefault_pain_short-06.wv
+%%DATADIR%%/audio/vo_teefault_pain_short-07.wv
+%%DATADIR%%/audio/vo_teefault_pain_short-08.wv
+%%DATADIR%%/audio/vo_teefault_pain_short-09.wv
+%%DATADIR%%/audio/vo_teefault_pain_short-10.wv
+%%DATADIR%%/audio/vo_teefault_pain_short-11.wv
+%%DATADIR%%/audio/vo_teefault_pain_short-12.wv
+%%DATADIR%%/audio/vo_teefault_sledge-01.wv
+%%DATADIR%%/audio/vo_teefault_sledge-02.wv
+%%DATADIR%%/audio/vo_teefault_sledge-03.wv
+%%DATADIR%%/audio/vo_teefault_spawn-01.wv
+%%DATADIR%%/audio/vo_teefault_spawn-02.wv
+%%DATADIR%%/audio/vo_teefault_spawn-03.wv
+%%DATADIR%%/audio/vo_teefault_spawn-04.wv
+%%DATADIR%%/audio/vo_teefault_spawn-05.wv
+%%DATADIR%%/audio/vo_teefault_spawn-06.wv
+%%DATADIR%%/audio/vo_teefault_spawn-07.wv
+%%DATADIR%%/audio/wp_flump_explo-01.wv
+%%DATADIR%%/audio/wp_flump_explo-02.wv
+%%DATADIR%%/audio/wp_flump_explo-03.wv
+%%DATADIR%%/audio/wp_flump_launch-01.wv
+%%DATADIR%%/audio/wp_flump_launch-02.wv
+%%DATADIR%%/audio/wp_flump_launch-03.wv
+%%DATADIR%%/audio/wp_gun_fire-01.wv
+%%DATADIR%%/audio/wp_gun_fire-02.wv
+%%DATADIR%%/audio/wp_gun_fire-03.wv
+%%DATADIR%%/audio/wp_hammer_hit-01.wv
+%%DATADIR%%/audio/wp_hammer_hit-02.wv
+%%DATADIR%%/audio/wp_hammer_hit-03.wv
+%%DATADIR%%/audio/wp_hammer_swing-01.wv
+%%DATADIR%%/audio/wp_hammer_swing-02.wv
+%%DATADIR%%/audio/wp_hammer_swing-03.wv
+%%DATADIR%%/audio/wp_ninja_attack-01.wv
+%%DATADIR%%/audio/wp_ninja_attack-02.wv
+%%DATADIR%%/audio/wp_ninja_attack-03.wv
+%%DATADIR%%/audio/wp_ninja_attack-04.wv
+%%DATADIR%%/audio/wp_ninja_hit-01.wv
+%%DATADIR%%/audio/wp_ninja_hit-02.wv
+%%DATADIR%%/audio/wp_ninja_hit-03.wv
+%%DATADIR%%/audio/wp_ninja_hit-04.wv
+%%DATADIR%%/audio/wp_noammo-01.wv
+%%DATADIR%%/audio/wp_noammo-02.wv
+%%DATADIR%%/audio/wp_noammo-03.wv
+%%DATADIR%%/audio/wp_noammo-04.wv
+%%DATADIR%%/audio/wp_noammo-05.wv
+%%DATADIR%%/audio/wp_shotty_fire-01.wv
+%%DATADIR%%/audio/wp_shotty_fire-02.wv
+%%DATADIR%%/audio/wp_shotty_fire-03.wv
+%%DATADIR%%/audio/wp_switch-01.wv
+%%DATADIR%%/audio/wp_switch-02.wv
+%%DATADIR%%/audio/wp_switch-03.wv
+%%DATADIR%%/big_font.png
+%%DATADIR%%/browse_icons.png
+%%DATADIR%%/checker.png
+%%DATADIR%%/cloudmap.png
+%%DATADIR%%/debug_font.png
+%%DATADIR%%/emoticons.png
+%%DATADIR%%/game.png
+%%DATADIR%%/gui_cursor.png
+%%DATADIR%%/gui_logo.png
+%%DATADIR%%/maps/ctf1.map
+%%DATADIR%%/maps/ctf2.map
+%%DATADIR%%/maps/dm1.map
+%%DATADIR%%/maps/dm2.map
+%%DATADIR%%/maps/dm6.map
+%%DATADIR%%/moon.png
+%%DATADIR%%/mountain_paralax.png
+%%DATADIR%%/skins/bluekitty.png
+%%DATADIR%%/skins/bluestripe.png
+%%DATADIR%%/skins/brownbear.png
+%%DATADIR%%/skins/cammo.png
+%%DATADIR%%/skins/cammostripes.png
+%%DATADIR%%/skins/coala.png
+%%DATADIR%%/skins/default.png
+%%DATADIR%%/skins/limekitty.png
+%%DATADIR%%/skins/ninja.png
+%%DATADIR%%/skins/pinky.png
+%%DATADIR%%/skins/redbopp.png
+%%DATADIR%%/skins/redstripe.png
+%%DATADIR%%/skins/saddo.png
+%%DATADIR%%/skins/toptri.png
+%%DATADIR%%/skins/twinbop.png
+%%DATADIR%%/skins/twintri.png
+%%DATADIR%%/skins/warpaint.png
+%%DATADIR%%/snow.png
+%%DATADIR%%/stars.png
+%%DATADIR%%/sun.png
+@dirrm %%DATADIR%%/skins
+@dirrm %%DATADIR%%/maps
+@dirrm %%DATADIR%%/audio
+@dirrm %%DATADIR%%