Je joue pas mal à ce jeu, mais les tuiles par défaut commencent à me sortir par les yeux :
du coup, j'ai commencé à en dessiner d'autre avec inkscape :
et maintenant je cherche comment les intégrer au jeu, lire le pkgbuild ne m'a pas aidé et je n'ai pas trouvé les tuiles par défaut dans les emplacement indiqués dans l'archive de ressources présente sur le site du jeu.
par où chercher pour changer ces tuiles ?
Dernière modification par ourobolos le sam. 05 nov. 2011, 10:03, modifié 1 fois.
Merci de la piste, j'ai remplacé les chemins d'images par les miennes dans le resources.descr et ensuite j'ai appelé le build.sh pour régénérer le einstein.res
~/Desktop/einstein-2.0/mkres$make
g++ -c -Wall -O6 main.cpp
In file included from table.h:7:0,
from main.cpp:4:
lexal.h:18:9: attention : ‘typedef’ was ignored in this declaration [enabled by default]
In file included from main.cpp:4:0:
table.h:21:9: attention : ‘typedef’ was ignored in this declaration [enabled by default]
main.cpp: In function ‘void parseArgs(int, char**)’:
main.cpp:48:42: erreur: ‘strcmp’ was not declared in this scope
make: *** [main.o] Erreur 1
savez-vous comment éviter d'avoir ce jeu en plein écran ? La résolution réduite me fait un "out of range". Font ch%£$& avec leurs jeux plein écran par défaut...
bon, j'ai contourné le truc en le démarrant dans Xephyr, et en supprimant le mode plein écran, ce qui a créé un
~/.einstein/einsteinrc avec dedans :
fullscreen = 0;
Merci pour le PKGBUILD patché, si je le lance tel quel pas de soucis ça fonctionne et il va chercher les bonnes sources et me construit le logiciel.
J'ai été voir sur le wiki la doc pour les sources histoire d'y inclure mes modifications en local, j'ai juste remplacé les images par mes images, de même taille et de même type.
~/Desktop/modif einstein/einstein-2.0.1$makepkg PKGBUILD
==> Création du paquet einstein 2.0-1 (mar. nov. 1 13:27:00 CET 2011)
==> Vérification des dépendances pour l'exécution...
==> Vérification des dépendances pour la compilation...
==> Récupération des sources...
==> ERREUR: einstein-2.0 n'a pas été trouvé dans le répertoire de travail et n'est pas une URL.
Si le "einstein-2.0" que tu as indiqué dans les sources est un répertoire, ça ne va pas le faire: compresse-le en tar.gz (+ modification de la somme de contrôle).
«The following statement is not true. The previous statement is true.»
Je reviens vers vous parce qu'ayant changé de machine je suis passé sur arch 64bits, j'ai voulu répéter la manœuvre pour cette architecture et je butte sur une nouvelle erreur :
ourobolos a écrit :Par où je commence pour m'en sortir ?
Par nous indiquer le contenu de ton PKGBUILD + sources utilisées, puisqu'il n'existe pas sur Aur et que les liens précédents (sauf celui de benjarobin) sont morts.
formatter.cpp:61:33: erreur: cast from ‘void*’ to ‘int’ loses precision [-fpermissive]
formatter.cpp: In member function ‘std::wstring Formatter::format(std::vector<ArgValue*>&) const’:
formatter.cpp:138:32: erreur: cast from ‘void*’ to ‘int’ loses precision [-fpermissive]
Éventuellement, tu peux rajouter export CXXFLAGS="${CXXFLAGS} -fpermissive" dans le build()...
... mais le plus propre (et avant qu'on me tape dessus ) serait d'inclure le arch.patch (à récupèrer sur einstein) dans le PKGBUILD de benjarobin:
# $Id$
# Maintainer: Kevin Piche <kevin@archlinux.org>
# Contributor: K. Piche <kpiche@rogers.com>
# Contributor: Artiom Molchanov ar.molchanov gmail.com
pkgname=einstein
pkgver=2.0
pkgrel=2
pkgdesc="Remake of old DOS game Sherlock which was inspired by Albert Einstein's puzzle"
url="http://games.flowix.com/en/index.html"
source=("http://einstein.sourcearchive.com/downloads/2.0.dfsg.2-8/einstein_2.0.dfsg.2.orig.tar.gz" modif.tar.gz "${pkgname}.desktop" "${pkgname}.png" arch.patch einstein.patch)
depends=('sdl_ttf' 'sdl_mixer' 'font-bh-ttf' 'ttf-dejavu')
license=('GPL')
arch=('i686' 'x86_64')
md5sums=('d47d4ae80478d4d8d5796e65d134124f'
'b79f759845883276ab66bfea239ec6e7'
'5569fad47dee36655abba9a8eb7ed19b'
'81b58f2e3c61c0b50716992a30f2d4cc'
'df3a91453d5ed60cc651c7932d7e5e2e'
'c6ebda83843f640179fb483377ac5372')
build() {
export LDFLAGS=${LDFLAGS/,--as-needed/}
cd ${srcdir}
patch -p0 < ../../arch.patch
patch -p1 < einstein.patch
cd ${pkgname}-${pkgver}
make PREFIX=/usr
cd ${srcdir}/${pkgname}-${pkgver}/mkres
make PREFIX=/usr
cd ${srcdir}/${pkgname}-${pkgver}/res
cp /usr/share/fonts/TTF/luximb.ttf .
cp /usr/share/fonts/TTF/DejaVuSans.ttf .
./build.sh
cd ${srcdir}/${pkgname}-${pkgver}/
ln -s res/einstein.res einstein.res
}
package() {
cd ${srcdir}/${pkgname}-${pkgver}
make PREFIX=${pkgdir}/usr install
mkdir -p ${pkgdir}/usr/share/applications
install -m644 ${srcdir}/${pkgname}.desktop ${pkgdir}/usr/share/applications/
mkdir -p ${pkgdir}/usr/share/pixmaps
install -m644 ${srcdir}/${pkgname}.png ${pkgdir}/usr/share/pixmaps/
}
sans succès, j'ai eu les mêmes erreurs
Edit : en fait pas du tout, ça fonctionne, il fallait juste savoir que makepkg attends PKGBUILD et que même si on fait « makepkg PKGBUILD2 » il s'en fout et prends le PKGBUILD qui trainait par là. Et mettre le bon chemin relatif pour le arch.patch aussi