From 9c139fb080d96d3874225c132a8593dc98b07010 Mon Sep 17 00:00:00 2001 From: Rusmir Dusko Date: Thu, 17 Oct 2013 23:36:50 +0000 Subject: [PATCH] The goal of the game is to reach the highest possible score. You get a limited number of pipes on each level and need to combine them to lead the water from the house at the top of the screen to the storage tank at the bottom. For each pipe water goes through, you get 20 points and if you fill the cross-pipe both ways, you get 60 points. At end of each level, you are awarded depending on the skill level: * Beginner: 100 points * Toolman: 100 points + number of pipes remaining * Master plumber: 100 points + 2 x number of pipes remaining Some of the levels also have obstacles where you cannot place pipes. The game is playable with joystick/joypad: just move it and press buttons when you go to Options -> Configure controls WWW: http://home.gna.org/vodovod/ PR: ports/173881 Submitted by: nemysis (self) Approved by: pawel (mentor) --- games/Makefile | 1 + games/vodovod/Makefile | 58 +++++++++++++++++++++++++++ games/vodovod/distinfo | 4 ++ games/vodovod/files/patch-hiscore.cpp | 10 +++++ games/vodovod/files/patch-hiscore.h | 11 +++++ games/vodovod/files/vodovod.in | 7 ++++ games/vodovod/pkg-descr | 16 ++++++++ games/vodovod/pkg-plist | 26 ++++++++++++ 8 files changed, 133 insertions(+) create mode 100644 games/vodovod/Makefile create mode 100644 games/vodovod/distinfo create mode 100644 games/vodovod/files/patch-hiscore.cpp create mode 100644 games/vodovod/files/patch-hiscore.h create mode 100644 games/vodovod/files/vodovod.in create mode 100644 games/vodovod/pkg-descr create mode 100644 games/vodovod/pkg-plist diff --git a/games/Makefile b/games/Makefile index 7f0422791744..9d6ef5eaab31 100644 --- a/games/Makefile +++ b/games/Makefile @@ -995,6 +995,7 @@ SUBDIR += violetland SUBDIR += viruskiller SUBDIR += vitetris + SUBDIR += vodovod SUBDIR += volleyball SUBDIR += vor SUBDIR += vultures-eye diff --git a/games/vodovod/Makefile b/games/vodovod/Makefile new file mode 100644 index 000000000000..50072d5d9838 --- /dev/null +++ b/games/vodovod/Makefile @@ -0,0 +1,58 @@ +# Created by: Rusmir Dusko +# $FreeBSD$ + +PORTNAME= vodovod +PORTVERSION= 1.10 +CATEGORIES= games +MASTER_SITES= http://download.gna.org/vodovod/ \ + SF/nemysisfreebsdp/:icons +DISTFILES= ${PORTNAME}-${DISTVERSION}-src${EXTRACT_SUFX} \ + ${PORTNAME}.png:icons +EXTRACT_ONLY= ${PORTNAME}-${DISTVERSION}-src${EXTRACT_SUFX} + +MAINTAINER= nemysis@FreeBSD.org +COMMENT= Cross-platform pipe connecting action puzzle game + +LICENSE= GPLv2 + +WRKSRC= ${WRKDIR}/${PORTNAME}-${DISTVERSION}-src + +USES= gmake +USE_SDL= image mixer sdl + +PORTDOCS= * + +DOCSRCDIR1= ${WRKSRC} +DOC_FILES1= CHANGES + +DOCSRCDIR2= ${WRKSRC}/html +DOCSDIR2= ${DOCSDIR}/html +DOC_FILES2= *.gif *.png *.jpg *.html + +SUB_FILES= ${PORTNAME} + +DESKTOP_ENTRIES="Vodovod" "${COMMENT}" ${PORTNAME} \ + "${PORTNAME}" "Game;LogicGame;" false + +OPTIONS_DEFINE= DOCS + +post-patch: + @${REINPLACE_CMD} -e 's|PREFIX=/usr|PREFIX=${PREFIX}|' \ + -e 's|CC = g++|CC ?= g++|' \ + -e 's|CC|CXX|' \ + -e 's|sdl-config|$(SDL_CONFIG)|' \ + -e '/^MY_CFLAGS/ s| = | = ${CXXFLAGS} |' \ + ${WRKSRC}/Makefile + +do-install: + ${INSTALL_SCRIPT} ${WRKDIR}/${PORTNAME} ${STAGEDIR}${PREFIX}/bin/ + @(cd ${WRKSRC} && ${COPYTREE_SHARE} "data icon.ico" ${STAGEDIR}${DATADIR}) + ${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME} ${STAGEDIR}${DATADIR} + ${INSTALL_DATA} ${_DISTDIR}/${PORTNAME}.png ${STAGEDIR}${PREFIX}/share/pixmaps/ + + @${MKDIR} ${STAGEDIR}${DOCSDIR} + ${INSTALL_DATA} ${DOC_FILES1:S|^|${DOCSRCDIR1}/|} ${STAGEDIR}${DOCSDIR} + @${MKDIR} ${STAGEDIR}${DOCSDIR2} + ${INSTALL_DATA} ${DOC_FILES2:S|^|${DOCSRCDIR2}/|} ${STAGEDIR}${DOCSDIR2} + +.include diff --git a/games/vodovod/distinfo b/games/vodovod/distinfo new file mode 100644 index 000000000000..7509192f3b70 --- /dev/null +++ b/games/vodovod/distinfo @@ -0,0 +1,4 @@ +SHA256 (vodovod-1.10-src.tar.gz) = ba30919eed676e9d1ab7dc57b72813039eb658fa26442b921c29a489d5c082df +SIZE (vodovod-1.10-src.tar.gz) = 403216 +SHA256 (vodovod.png) = 3ed4b7844cb37b1165a46485df2e9b8cfcb461ca93cca4fb878206df2a38bad6 +SIZE (vodovod.png) = 2039 diff --git a/games/vodovod/files/patch-hiscore.cpp b/games/vodovod/files/patch-hiscore.cpp new file mode 100644 index 000000000000..352dd57477db --- /dev/null +++ b/games/vodovod/files/patch-hiscore.cpp @@ -0,0 +1,10 @@ +--- ./hiscore.cpp.orig 2007-06-05 00:13:40.000000000 +0200 ++++ ./hiscore.cpp 2013-10-17 23:37:42.000000000 +0200 +@@ -19,6 +19,7 @@ + -----------------------------------------------------------------------------*/ + #include "stdio.h" + #include "hiscore.h" ++#include + //----------------------------------------------------------------------------- + HiScores &hiScores() + { diff --git a/games/vodovod/files/patch-hiscore.h b/games/vodovod/files/patch-hiscore.h new file mode 100644 index 000000000000..dac37c89c404 --- /dev/null +++ b/games/vodovod/files/patch-hiscore.h @@ -0,0 +1,11 @@ +--- ./hiscore.h.orig 2007-06-03 13:09:24.000000000 +0200 ++++ ./hiscore.h 2013-10-17 23:37:42.000000000 +0200 +@@ -28,7 +28,7 @@ + std::string name; + int level; + int points; +- bool operator<(const HiScore& h) { return points > h.points; }; ++ bool operator<(const HiScore& h) const { return points > h.points; }; + }; + //----------------------------------------------------------------------------- + class HiScores diff --git a/games/vodovod/files/vodovod.in b/games/vodovod/files/vodovod.in new file mode 100644 index 000000000000..8ada8bb71ea9 --- /dev/null +++ b/games/vodovod/files/vodovod.in @@ -0,0 +1,7 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +cd "%%DATADIR%%" +exec ./vodovod "${@}" diff --git a/games/vodovod/pkg-descr b/games/vodovod/pkg-descr new file mode 100644 index 000000000000..93be8d8d61f2 --- /dev/null +++ b/games/vodovod/pkg-descr @@ -0,0 +1,16 @@ +The goal of the game is to reach the highest possible score. You get a limited +number of pipes on each level and need to combine them to lead the water from +the house at the top of the screen to the storage tank at the bottom. For each +pipe water goes through, you get 20 points and if you fill the cross-pipe both +ways, you get 60 points. At end of each level, you are awarded depending on the +skill level: + + * Beginner: 100 points + * Toolman: 100 points + number of pipes remaining + * Master plumber: 100 points + 2 x number of pipes remaining + +Some of the levels also have obstacles where you cannot place pipes. The game +is playable with joystick/joypad: just move it and press buttons when you go to +Options -> Configure controls + +WWW: http://home.gna.org/vodovod/ diff --git a/games/vodovod/pkg-plist b/games/vodovod/pkg-plist new file mode 100644 index 000000000000..44693b495ebe --- /dev/null +++ b/games/vodovod/pkg-plist @@ -0,0 +1,26 @@ +bin/vodovod +share/pixmaps/vodovod.png +%%DATADIR%%/data/abicon.bmp +%%DATADIR%%/data/block.png +%%DATADIR%%/data/bubbles.wav +%%DATADIR%%/data/drop.wav +%%DATADIR%%/data/flow.xm +%%DATADIR%%/data/font-white.bmp +%%DATADIR%%/data/font-yellow.bmp +%%DATADIR%%/data/house.png +%%DATADIR%%/data/mapend.wav +%%DATADIR%%/data/metal.wav +%%DATADIR%%/data/next.png +%%DATADIR%%/data/queue.png +%%DATADIR%%/data/replace.wav +%%DATADIR%%/data/slate.png +%%DATADIR%%/data/tank.png +%%DATADIR%%/data/tree1.png +%%DATADIR%%/data/vodovod.png +%%DATADIR%%/data/vodovod.xm +%%DATADIR%%/data/walk.png +%%DATADIR%%/data/walk.xm +%%DATADIR%%/icon.ico +%%DATADIR%%/vodovod +@dirrm %%DATADIR%%/data +@dirrm %%DATADIR%%