Compare commits
160 commits
pysolfc-3.
...
master
Author | SHA1 | Date | |
---|---|---|---|
|
bdd3093a2b | ||
|
c4a62baf79 | ||
|
b1370fce08 | ||
|
7b85049f7c | ||
|
afc74a86f5 | ||
|
50e003e256 | ||
|
78de569074 | ||
|
a79c81109b | ||
|
c14be7b73e | ||
|
69c1440b2b | ||
|
72386af5e6 | ||
|
a57f1eae38 | ||
|
6f0c6e00e1 | ||
|
512d3ea466 | ||
|
e7e9f0ff87 | ||
|
9773eee2d6 | ||
|
015e860557 | ||
|
04b7eacfcb | ||
|
52e2ffc58f | ||
|
81150b4681 | ||
|
f799093e35 | ||
|
12118d12ed | ||
|
fd4a4e1378 | ||
|
63a63fdfd3 | ||
|
ff9cc5e98c | ||
|
cadf8b2084 | ||
|
f4dec3ed16 | ||
|
5c8d5c26b4 | ||
|
cb0dd1ec2f | ||
|
dc5ab96c80 | ||
|
54a978b4e2 | ||
|
5b9f64a7eb | ||
|
21c2780e8e | ||
|
ed2da8cd46 | ||
|
054c0f0368 | ||
|
487d1c52f3 | ||
|
6852bb40ff | ||
|
6006e0f4c0 | ||
|
68138c7284 | ||
|
96a06108af | ||
|
ac03fa741d | ||
|
7cac54b714 | ||
|
b189c4b3b0 | ||
|
4566cb2fc5 | ||
|
40929f913e | ||
|
ef69c03a38 | ||
|
0cdd06ddad | ||
|
a6827ee7e2 | ||
|
5d1ed621e3 | ||
|
4c031b9686 | ||
|
2c69371265 | ||
|
7940e62285 | ||
|
9cd7a2c5fe | ||
|
5005ef6796 | ||
|
cafdafe047 | ||
|
911f83d249 | ||
|
abb9605dd4 | ||
|
180d3d57df | ||
|
5d9b462304 | ||
|
d18c857a76 | ||
|
d5d426fe91 | ||
|
2e6cb6ad35 | ||
|
c9c315818d | ||
|
4471a8a623 | ||
|
289df06b95 | ||
|
f844c0eae2 | ||
|
a5e0c96450 | ||
|
d36c19b158 | ||
|
61eb1f0361 | ||
|
86d92c2636 | ||
|
5392190c35 | ||
|
cb2252b74e | ||
|
d7d9bb3ea6 | ||
|
8cbac328a9 | ||
|
b6454ce541 | ||
|
0135e386c2 | ||
|
70909f6469 | ||
|
673cb847bc | ||
|
91b1ba9be9 | ||
|
2bfc6bdd3d | ||
|
552585f143 | ||
|
880fb11979 | ||
|
934d82b5f4 | ||
|
87a33b72b1 | ||
|
b7569e79c2 | ||
|
ba202f67c1 | ||
|
d0ca03a49a | ||
|
f448248741 | ||
|
eb3bb5dad8 | ||
|
49e48bada4 | ||
|
dcfac1032d | ||
|
ad39c3aa22 | ||
|
98c9202e34 | ||
|
1fad63af73 | ||
|
f360600fcd | ||
|
b3cdb7e4b8 | ||
|
dab3eea6cb | ||
|
8c58941d23 | ||
|
3778ab2c1f | ||
|
56489cb7bc | ||
|
910f927727 | ||
|
cc32c0373e | ||
|
b77989cbdb | ||
|
41c17c74f3 | ||
|
df8d05e0c5 | ||
|
66995aedaf | ||
|
fbc0817a1e | ||
|
dfd3b063dd | ||
|
83289d5432 | ||
|
4478212d20 | ||
|
dd16750d5f | ||
|
68d6b64fa2 | ||
|
679c9a74c1 | ||
|
4a3d6e7383 | ||
|
148f189a74 | ||
|
1149d4fd4f | ||
|
57adebfcdc | ||
|
83baa54164 | ||
|
d7c145ac18 | ||
|
b74dcde44a | ||
|
bd2edf2f19 | ||
|
792fbca78a | ||
|
a0ea7a3870 | ||
|
166025313b | ||
|
18f8e3e32b | ||
|
fd230df4f2 | ||
|
d15ff23d49 | ||
|
23f41d9553 | ||
|
77f1125156 | ||
|
b26821048c | ||
|
3a356670bb | ||
|
885b2925ab | ||
|
b92debbbfd | ||
|
13c611949d | ||
|
447dc4afea | ||
|
69394fa3b9 | ||
|
180f3fa225 | ||
|
85d455d4f7 | ||
|
6a32b1f2fa | ||
|
ea0ce6f6f3 | ||
|
a42b76d263 | ||
|
3cbcc8d214 | ||
|
0cace3a07b | ||
|
9274e47de6 | ||
|
b3c8390fac | ||
|
b62630ab5f | ||
|
58e2eb89c9 | ||
|
764fb5207e | ||
|
ceee32e212 | ||
|
b951d86579 | ||
|
a189d42328 | ||
|
abd95b8887 | ||
|
90ffaeb2d1 | ||
|
7ef3b1d359 | ||
|
b64ef10374 | ||
|
66d2eaba5f | ||
|
efdb843179 | ||
|
a14eef2b60 | ||
|
69b98c9982 | ||
|
34292e2743 |
|
@ -1,16 +1,16 @@
|
|||
---
|
||||
image: Visual Studio 2019
|
||||
image: Visual Studio 2022
|
||||
environment:
|
||||
matrix:
|
||||
- PYTHON: "C:\\Python311"
|
||||
- PYTHON: "C:\\Python313"
|
||||
# Shamelessly taken from https://github.com/plicease/Dist-Zilla-PluginBundle-Author-Plicease/blob/master/.appveyor.yml
|
||||
# Thanks!
|
||||
install:
|
||||
# - choco install strawberryperl
|
||||
- copy %PYTHON%\python.exe %PYTHON%\python3.exe
|
||||
- SET PATH=%PYTHON%;%PYTHON%\Scripts;C:\strawberry\c\bin;C:\strawberry\perl\site\bin;C:\strawberry\perl\bin;%PATH%
|
||||
- python3 -mpip install Pillow==9.5 attrs configobj flake8 flake8-import-order
|
||||
pycotap pygame pyinstaller pysol-cards random2 setuptools six
|
||||
- python3 -mpip install Pillow attrs configobj flake8 flake8-import-order
|
||||
pycotap pygame pyinstaller pysol-cards setuptools six
|
||||
ttkthemes
|
||||
- perl -v
|
||||
- copy C:\msys64\mingw64\bin\mingw32-make.exe C:\msys64\mingw64\bin\make.exe
|
||||
|
@ -32,8 +32,8 @@ test_script:
|
|||
- gmake pretest
|
||||
- perl run-tests.pl
|
||||
- gmake rules
|
||||
- gmake pot
|
||||
- gmake mo
|
||||
#- gmake pot
|
||||
#- gmake mo
|
||||
- pyinstaller pysol.py --windowed --icon=data\pysol.ico
|
||||
- python3 setup.py install_data -d dist\pysol
|
||||
- appveyor DownloadFile https://sourceforge.net/projects/pysolfc/files/PySolFC-Cardsets/minimal/PySolFC-Cardsets--Minimal-3.0.0.tar.xz/download -FileName cardsets.tar.xz
|
||||
|
@ -51,7 +51,7 @@ test_script:
|
|||
# For reproducible builds:
|
||||
# See: https://reproducible-builds.org/ .
|
||||
- SET FC_SOLVE_VER=5.20.0
|
||||
- appveyor DownloadFile https://netix.dl.sourceforge.net/project/fc-solve/fc-solve/DO-NOT-USE--fc-solve-for-pysol/fc-solve-for-pysol--v%FC_SOLVE_VER%.zip -FileName fc-solve.zip
|
||||
- appveyor DownloadFile https://sourceforge.net/projects/fc-solve/files/fc-solve/DO-NOT-USE--fc-solve-for-pysol/fc-solve-for-pysol--v%FC_SOLVE_VER%.zip -FileName fc-solve.zip
|
||||
- 7z x fc-solve.zip
|
||||
- move fcs-pysol dist\pysol\freecell-solver
|
||||
- 7z a -r pysol_win_dist.7z dist\pysol\
|
||||
|
|
2
.github/workflows/ci.yml
vendored
|
@ -23,7 +23,7 @@ jobs:
|
|||
run: |
|
||||
python -m pip install --upgrade pip
|
||||
python -m pip install flake8 flake8-import-order \
|
||||
attrs configobj pycotap pysol-cards random2 setuptools six
|
||||
attrs configobj pycotap pysol-cards setuptools six
|
||||
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
|
||||
- name: Lint with flake8
|
||||
run: |
|
||||
|
|
8
.github/workflows/macos-package.yml
vendored
|
@ -7,7 +7,7 @@ on:
|
|||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: macos-12
|
||||
runs-on: macos-14
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
@ -23,7 +23,7 @@ jobs:
|
|||
run: |
|
||||
python3 -m pip install --upgrade pip
|
||||
python3 -m pip install --no-binary=Pillow \
|
||||
Pillow attrs configobj py2app pycotap pygame pysol-cards random2 setuptools six ttkthemes
|
||||
Pillow attrs configobj py2app pycotap pygame pysol-cards setuptools six ttkthemes
|
||||
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
|
||||
brew install create-dmg
|
||||
- name: Get cardsets
|
||||
|
@ -49,12 +49,12 @@ jobs:
|
|||
--skip-jenkins
|
||||
PySolFC.dmg dist
|
||||
- name: Upload zipped app
|
||||
uses: actions/upload-artifact@v2
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: pysolfc-app
|
||||
path: PySolFC-app.zip
|
||||
- name: Upload dmg
|
||||
uses: actions/upload-artifact@v2
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: pysolfc-dmg
|
||||
path: PySolFC.dmg
|
||||
|
|
1
.gitignore
vendored
|
@ -10,7 +10,6 @@
|
|||
/html
|
||||
/html-src/html/*
|
||||
/images
|
||||
/locale/*
|
||||
/po/de.po
|
||||
/po/fr.po
|
||||
/po/it.po
|
||||
|
|
|
@ -46,7 +46,7 @@ install:
|
|||
# Tests are failing for them sometimes
|
||||
- cpanm --notest Capture::Tiny IPC::System::Simple
|
||||
- cpanm Code::TidyAll::Plugin::Flake8 Perl::Tidy Test::Code::TidyAll Test::Differences Test::TrailingSpace
|
||||
- export PY_MODS='attrs configobj pycotap pysol-cards random2 setuptools six'
|
||||
- export PY_MODS='attrs configobj pycotap pysol-cards setuptools six'
|
||||
- if test "$TRAVIS_OS_NAME" = "osx" ; then export PY_MODS="--no-binary=Pillow Pillow $PY_MODS" ; fi
|
||||
- sudo -H pip3 install --upgrade wheel
|
||||
- sudo -H pip3 install --upgrade $PY_MODS flake8 flake8-import-order
|
||||
|
|
|
@ -11,8 +11,8 @@ Main Authors
|
|||
* macOS package maintainer
|
||||
* [Shlomi Fish](https://www.shlomifish.org/)
|
||||
* Continued PySolFC maintenance, port to python 3, test suite (Note: he places all his changes under the Expat licence).
|
||||
* https://github.com/lufebe16
|
||||
* Added the Kivy toolkit
|
||||
* [lufebe16](https://github.com/lufebe16)
|
||||
* Added the Kivy toolkit and all the Android app related code and build procedures.
|
||||
* [Roderik Ploszek](https://github.com/Programator2)
|
||||
* Fixes and enhancements
|
||||
* [Joe R.](https://github.com/joeraz)
|
||||
|
|
|
@ -7,7 +7,7 @@ for general guidelines for contributing to open source.
|
|||
|
||||
- The [GitHub Actions CI build](https://github.com/shlomif/PySolFC/actions) and [AppVeyor build](https://ci.appveyor.com/project/shlomif/pysolfc) (which also run the test suite) should pass on each commit.
|
||||
- Your contributions should be under [GPLv3+](https://en.wikipedia.org/wiki/GNU_General_Public_License#Version_3) or a [compatible free software licence](https://www.gnu.org/licenses/license-list.html#GPLCompatibleLicenses), but please don't put them under the [AGPL](https://en.wikipedia.org/wiki/Affero_General_Public_License), which adds additional restrictions.
|
||||
- The code should be compatible with both Python 2.7.x and Python 3.4.x-and-above.
|
||||
- The code should be compatible with Python 3.7 and above.
|
||||
|
||||
# How you can contribute
|
||||
|
||||
|
@ -32,7 +32,7 @@ custom variants. It lives in the Edit menu.
|
|||
|
||||
Otherwise, the games' sources live under
|
||||
[the pysollib/games/](pysollib/games/) directory in the repository, and are
|
||||
written in Python 2.7/3.x and you can try inheriting from an existing
|
||||
written in Python 3.x and you can try inheriting from an existing
|
||||
variant [class](https://en.wikipedia.org/wiki/Class_%28computer_programming%29).
|
||||
|
||||
In addition to adding the game's source code, be sure to add the game's metadata. At minimum, you should:
|
||||
|
|
|
@ -1,5 +1,18 @@
|
|||
[[news]]
|
||||
=== News
|
||||
* _11 January, 2025:_ There is a new stable release
|
||||
https://sourceforge.net/projects/pysolfc/files/PySolFC/PySolFC-3.2.0/[PySolFC
|
||||
v3.2.0]. New in this release:
|
||||
** New fullscreen mode, accessible by pressing F11.
|
||||
** Easy option to clear advanced search options.
|
||||
** Lots of bugfixes and enhancements.
|
||||
* _19 October, 2024:_ There is a new stable release
|
||||
https://sourceforge.net/projects/pysolfc/files/PySolFC/PySolFC-3.1.0/[PySolFC
|
||||
v3.1.0]. New in this release:
|
||||
** Ten new games.
|
||||
** Cleanup of duplicate images to reduce package size.
|
||||
** Some extra cardset/table tile filter options.
|
||||
** Many enhancements, bugfixes, etc.
|
||||
* _31 March, 2024:_ There is a new stable release
|
||||
https://sourceforge.net/projects/pysolfc/files/PySolFC/PySolFC-3.0.0/[PySolFC
|
||||
v3.0.0] - the biggest release in over 15 years. Additionally, there is a new Cardsets release
|
||||
|
|
13
README.md
|
@ -31,7 +31,7 @@ can be implemented.
|
|||
|
||||
## Requirements.
|
||||
|
||||
- Python (2.7 or 3.x)
|
||||
- Python (3.7 or later)
|
||||
- Tkinter (Tcl/Tk 8.4 or later)
|
||||
|
||||
- For sound support (optional)
|
||||
|
@ -97,10 +97,10 @@ cd PySolFC
|
|||
gmake test
|
||||
gmake rules
|
||||
ln -s data/images images
|
||||
tar -xvf PySolFC-Cardsets-2.0.tar.bz2 # Needs to be downloaded from sourceforge
|
||||
tar -xvf PySolFC-Cardsets-3.0.tar.bz2 # Needs to be downloaded from sourceforge
|
||||
mkdir -p ~/.PySolFC
|
||||
rmdir ~/.PySolFC/cardsets
|
||||
ln -s "`pwd`/PySolFC-Cardsets-2.0" ~/.PySolFC/cardsets
|
||||
ln -s "`pwd`/PySolFC-Cardsets-3.0" ~/.PySolFC/cardsets
|
||||
python pysol.py
|
||||
```
|
||||
|
||||
|
@ -118,21 +118,18 @@ per the instructions above.
|
|||
At the moment, this only works on POSIX (Linux, FreeBSD and similar) systems.
|
||||
Windows and Mac users - you'll need to chip in with a script for your system.
|
||||
|
||||
#### 1 - Install build prerequisites: six, random2 and pysol-cards
|
||||
#### 1 - Install build prerequisite: pysol-cards
|
||||
|
||||
This is kind of stupid and maybe it can be fixed in the future, but for now:
|
||||
|
||||
```
|
||||
pip install six
|
||||
pip install random2
|
||||
pip install pysol-cards
|
||||
```
|
||||
|
||||
You may want to use your OS distribution package system instead, for example:
|
||||
|
||||
```
|
||||
sudo apt-get install python-six
|
||||
sudo apt-get install python-random2
|
||||
sudo apt-get install python3-pysol-cards
|
||||
```
|
||||
|
||||
For Pillow compilation, libjpeg headers and libraries need to be available:
|
||||
|
|
|
@ -9,7 +9,7 @@ else
|
|||
fi
|
||||
|
||||
# current android version mumber.
|
||||
version="2.26.0"
|
||||
version="3.2.0"
|
||||
sversion=$(echo $version | sed -E "s:(.*)\..*:\1:")
|
||||
tuple=$(echo $version | sed -E "s:(.*)\.(.*)\.(.*):(\1, \2, \3):")
|
||||
|
||||
|
|
|
@ -15,10 +15,10 @@ Prepare
|
|||
|
||||
Move to directory buildozer.
|
||||
|
||||
First create and enter a virtualenv and load all
|
||||
First create and enter a virtualenv and load the
|
||||
required python modules using pip install.
|
||||
|
||||
$> virtualenv ENV
|
||||
$> virtualenv --system-site-packages ENV
|
||||
$> . ENV/bin/activate
|
||||
$> pip install -r pipreq.txt
|
||||
|
||||
|
|
|
@ -7,6 +7,14 @@ export GRADLE_OPTS="-Xms1724m -Xmx5048m -Dorg.gradle.jvmargs='-Xms1724m -Xmx5048
|
|||
|
||||
echo '### run buildozer'
|
||||
|
||||
|
||||
if [ "$1" == "test" ]
|
||||
then
|
||||
echo '### ... release.test'
|
||||
buildozer --profile test android release
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ "$1" ]
|
||||
then
|
||||
echo '### ... release'
|
||||
|
|
|
@ -38,7 +38,7 @@ version.filename = %(source.dir)s/version.txt
|
|||
|
||||
# (list) Application requirements
|
||||
# comma separated e.g. requirements = sqlite3,kivy
|
||||
requirements = python3,kivy,pysol-cards,random2,configobj,attrs
|
||||
requirements = python3,kivy,pysol-cards,configobj,attrs
|
||||
|
||||
# (str) Custom source folders for requirements
|
||||
# Sets custom source for any requirements with recipes
|
||||
|
@ -103,7 +103,7 @@ android.permissions = WRITE_EXTERNAL_STORAGE, MANAGE_EXTERNAL_STORAGE
|
|||
#android.features = android.hardware.usb.host
|
||||
|
||||
# (int) Target Android API, should be as high as possible.
|
||||
android.api = 32
|
||||
android.api = 34
|
||||
|
||||
# (int) Minimum API your APK / AAB will support.
|
||||
#android.minapi = 21
|
||||
|
@ -315,7 +315,7 @@ android.debug_artifact = apk
|
|||
#p4a.branch = master
|
||||
|
||||
# (str) python-for-android specific commit to use, defaults to HEAD, must be within p4a.branch
|
||||
p4a.commit = v2023.09.16
|
||||
p4a.commit = v2024.01.21
|
||||
|
||||
# (str) python-for-android git clone directory (if empty, it will be automatically cloned from github)
|
||||
#p4a.source_dir =
|
||||
|
@ -441,3 +441,7 @@ warn_on_root = 1
|
|||
# Then, invoke the command line with the "demo" profile:
|
||||
#
|
||||
#buildozer --profile demo android debug
|
||||
|
||||
[app@test]
|
||||
title = PySolFC.test
|
||||
package.name = pysolfc.test
|
||||
|
|
|
@ -1,6 +1,17 @@
|
|||
#!/bin/bash
|
||||
set -eux
|
||||
|
||||
if [[ -z ${AAPI+x} ]]
|
||||
then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
python3 -m venv FINIT
|
||||
source FINIT/bin/activate
|
||||
|
||||
pip3 install attrs
|
||||
pip3 install pysol_cards
|
||||
|
||||
tmpdir=..
|
||||
|
||||
echo '### prepare source'
|
||||
|
@ -27,11 +38,14 @@ echo '### eval version'
|
|||
echo '### prepare buildozer'
|
||||
|
||||
sed -r "s:#? ?source\.dir =.*:source.dir = ..:" -i buildozer.spec
|
||||
sed -r "s:#? ?source\.exclude_dirs =.*:source.exclude_dirs = Screenshots,android,buildozer,tests,fastlane:" -i buildozer.spec
|
||||
sed -r "s:#? ?source\.exclude_dirs =.*:source.exclude_dirs = Screenshots,android,buildozer,contrib,tests,fastlane:" -i buildozer.spec
|
||||
sed -r "s:#? ?source\.exclude_patterns =.*:source.exclude_patterns = README.*,AUTHORS.md,CONTRIBUTING.md,COPYING,MANIFEST.in,Makefile,NEWS.asciidoc,appdata.xml,pysol.py,run-tests.pl,setup.cfg,setup.py,setup_osx.py,local.properties,p4a_env_vars.txt:" -i buildozer.spec
|
||||
sed -r "s:#? ?android\.skip_update =.*:android.skip_update = True:" -i buildozer.spec
|
||||
sed -r "s:#? ?android\.accept_sdk_license =.*:android.accept_sdk_license = False:" -i buildozer.spec
|
||||
sed -r "s:#? ?log_level =.*:log_level = 2:" -i buildozer.spec
|
||||
|
||||
sed -r "s:#? ?warn_on_root =.*:warn_on_root = 0:" -i buildozer.spec
|
||||
|
||||
echo '### end init'
|
||||
|
||||
deactivate
|
||||
rm -rf FINIT
|
||||
|
|
8
buildozer/helpers/setbuildvars
Executable file
|
@ -0,0 +1,8 @@
|
|||
#!/bin/sh
|
||||
|
||||
VP4A='v2024.01.21'
|
||||
VBUILDOZER='3ebc09e885457db4747e67a1250c2aea1ca7a046'
|
||||
VCPYTHON='v3.11.5'
|
||||
VCYTHON='3.0.10'
|
||||
AAPI=$(cat buildozer.spec | grep -e "^android[.]api" | sed -E "s/^.*([0-9].).*/\1/")
|
||||
export AAPI
|
|
@ -32,4 +32,4 @@ cardset-tuxedo
|
|||
cardset-uni-mahjongg
|
||||
cardset-victoria-falls-5x5
|
||||
cardset-vienna-2k
|
||||
cardset-z_minimal
|
||||
cardset-z-minimal
|
||||
|
|
|
@ -16,7 +16,7 @@ if [ 1 ]; then
|
|||
pushd repo
|
||||
git init
|
||||
git remote add -t master origin https://github.com/shlomif/PySolFC-Cardsets.git
|
||||
git fetch --depth 1 origin 9b63a583dc3e770fa9bf8f2378c37a064aa4969c
|
||||
git fetch --depth 1 origin 3.0
|
||||
git checkout -q FETCH_HEAD
|
||||
popd
|
||||
|
||||
|
|
|
@ -1,16 +1,12 @@
|
|||
appdirs==1.4.4
|
||||
attrs==22.2.0
|
||||
attrs==23.2.0
|
||||
build==1.2.1
|
||||
-e git+https://github.com/kivy/buildozer.git@3ebc09e885457db4747e67a1250c2aea1ca7a046#egg=buildozer
|
||||
certifi==2024.2.2
|
||||
colorama==0.4.6
|
||||
configobj==5.0.8
|
||||
Cython==0.29.33
|
||||
Jinja2==3.1.2
|
||||
Kivy==2.2.1
|
||||
pep517==0.13.0
|
||||
pep8==1.7.1
|
||||
permutation==0.4.0
|
||||
pip==23.0.1
|
||||
pysol-cards==0.14.3
|
||||
setuptools==67.0.0
|
||||
Kivy==2.3.0
|
||||
pip==24.0
|
||||
pysol_cards==0.16.0
|
||||
setuptools==69.1.1
|
||||
toml==0.10.2
|
||||
wheel==0.38.4
|
||||
wheel==0.42.0
|
||||
|
|
|
@ -11,10 +11,10 @@
|
|||
"type": "SINGLE",
|
||||
"filters": [],
|
||||
"attributes": [],
|
||||
"versionCode": 102130000,
|
||||
"versionName": "3.0.0",
|
||||
"versionCode": 102130200,
|
||||
"versionName": "3.2.0",
|
||||
"outputFile": "pysolfc-release.apk"
|
||||
}
|
||||
],
|
||||
"elementType": "File"
|
||||
}
|
||||
}
|
|
@ -3,6 +3,20 @@ Cardset Customization Tutorial
|
|||
:Author: Eric Rausch
|
||||
:Email: <neelix570@gmail.com>
|
||||
|
||||
Setting up a Cardset
|
||||
--------------------
|
||||
The easiest way to create a cardset would be to copy an existing cardset folder of the same type in your cardsets directory. All cardsets need a number of files to work.
|
||||
|
||||
* An image for each card - these images should be the same format and the same size, as defined in the config.txt file (described below). These files should be named something like 01s.png for the ace of spades. The first two (or more) digits represent the rank, and the letter after represents the suit. The suits are labeled hcds in French decks or decks that use French suits (i.e. Hex A or Tarock decks), and the suits are alphabetical for other decks. The suit letter z is used for jokers or trumps.
|
||||
* A shade file - shade.png, for example.
|
||||
* At least one back image, as defined in the config.txt file below.
|
||||
* A config.txt file, the format described below.
|
||||
* A copyright file, containing copyright info.
|
||||
|
||||
The following optional files may also be added, but are only used under certain circumstances.
|
||||
|
||||
* Bottom images. A number of images for the bottoms of stacks. These are not used unless your PySol install does not support generating stack bottoms, or you enable them manually (currently only possible through editing the options.cfg file). Which bottoms are used depend on the cardset type. Each bottom has a version with a suffix of -n, indicating the negative bottom that gets used if the appropriate option is enabled.
|
||||
* Shadow images. These will only be used if your PySol install does not support auto-generated shadows.
|
||||
|
||||
config.txt template
|
||||
-------------------
|
||||
|
|
|
@ -6,7 +6,7 @@ PIP="${PKGTREE}/env/bin/pip"
|
|||
PYPROG="${PKGTREE}/env/bin/python"
|
||||
VERSION="$(env PYTHONPATH=`pwd` "$PYPROG" -c 'from pysollib.settings import VERSION ; print(VERSION)')"
|
||||
XZBALL="dist/PySolFC-${VERSION}.tar.xz"
|
||||
reqs=(pillow pygame random2 six)
|
||||
reqs=(pillow pygame six)
|
||||
|
||||
make dist
|
||||
|
||||
|
|
BIN
data/images/buttons/bluecurve/apply.png
Normal file
After Width: | Height: | Size: 663 B |
BIN
data/images/buttons/bluecurve/back.png
Normal file
After Width: | Height: | Size: 592 B |
Before Width: | Height: | Size: 592 B |
BIN
data/images/buttons/bluecurve/clear.png
Normal file
After Width: | Height: | Size: 829 B |
BIN
data/images/buttons/bluecurve/color.png
Normal file
After Width: | Height: | Size: 903 B |
BIN
data/images/buttons/bluecurve/help.png
Normal file
After Width: | Height: | Size: 989 B |
Before Width: | Height: | Size: 226 B |
BIN
data/images/buttons/bluecurve/next.png
Normal file
After Width: | Height: | Size: 574 B |
Before Width: | Height: | Size: 567 B |
BIN
data/images/buttons/bluecurve/reset.png
Normal file
After Width: | Height: | Size: 807 B |
BIN
data/images/buttons/bluecurve/save.png
Normal file
After Width: | Height: | Size: 633 B |
BIN
data/images/buttons/bluecurve/statistics.png
Normal file
After Width: | Height: | Size: 724 B |
BIN
data/images/buttons/remix/apply.png
Normal file
After Width: | Height: | Size: 295 B |
BIN
data/images/buttons/remix/back.png
Normal file
After Width: | Height: | Size: 412 B |
BIN
data/images/buttons/remix/cancel.png
Normal file
After Width: | Height: | Size: 270 B |
BIN
data/images/buttons/remix/clear.png
Normal file
After Width: | Height: | Size: 398 B |
BIN
data/images/buttons/remix/color.png
Normal file
After Width: | Height: | Size: 620 B |
BIN
data/images/buttons/remix/help.png
Normal file
After Width: | Height: | Size: 619 B |
BIN
data/images/buttons/remix/new.png
Normal file
After Width: | Height: | Size: 155 B |
BIN
data/images/buttons/remix/next.png
Normal file
After Width: | Height: | Size: 312 B |
BIN
data/images/buttons/remix/ok.png
Normal file
After Width: | Height: | Size: 215 B |
BIN
data/images/buttons/remix/reset.png
Normal file
After Width: | Height: | Size: 597 B |
BIN
data/images/buttons/remix/save.png
Normal file
After Width: | Height: | Size: 256 B |
BIN
data/images/buttons/remix/statistics.png
Normal file
After Width: | Height: | Size: 280 B |
Before Width: | Height: | Size: 216 B |
Before Width: | Height: | Size: 217 B |
Before Width: | Height: | Size: 207 B |
Before Width: | Height: | Size: 212 B |
Before Width: | Height: | Size: 213 B |
Before Width: | Height: | Size: 222 B |
Before Width: | Height: | Size: 213 B |
Before Width: | Height: | Size: 205 B |
Before Width: | Height: | Size: 220 B |
Before Width: | Height: | Size: 221 B |
Before Width: | Height: | Size: 221 B |
Before Width: | Height: | Size: 223 B |
Before Width: | Height: | Size: 208 B |
Before Width: | Height: | Size: 214 B |
Before Width: | Height: | Size: 218 B |
Before Width: | Height: | Size: 226 B |
Before Width: | Height: | Size: 213 B |
Before Width: | Height: | Size: 212 B |
Before Width: | Height: | Size: 227 B |
Before Width: | Height: | Size: 224 B |
Before Width: | Height: | Size: 216 B |
Before Width: | Height: | Size: 218 B |
Before Width: | Height: | Size: 202 B |
Before Width: | Height: | Size: 214 B |
Before Width: | Height: | Size: 219 B |
Before Width: | Height: | Size: 222 B |
Before Width: | Height: | Size: 214 B |
Before Width: | Height: | Size: 211 B |
Before Width: | Height: | Size: 228 B |
Before Width: | Height: | Size: 223 B |
Before Width: | Height: | Size: 216 B |
Before Width: | Height: | Size: 220 B |
Before Width: | Height: | Size: 201 B |
Before Width: | Height: | Size: 212 B |
Before Width: | Height: | Size: 214 B |
Before Width: | Height: | Size: 219 B |
Before Width: | Height: | Size: 210 B |
Before Width: | Height: | Size: 207 B |
Before Width: | Height: | Size: 223 B |
Before Width: | Height: | Size: 221 B |
Before Width: | Height: | Size: 213 B |
Before Width: | Height: | Size: 218 B |
Before Width: | Height: | Size: 201 B |
Before Width: | Height: | Size: 211 B |
Before Width: | Height: | Size: 213 B |
Before Width: | Height: | Size: 216 B |
Before Width: | Height: | Size: 210 B |
Before Width: | Height: | Size: 208 B |
Before Width: | Height: | Size: 221 B |
Before Width: | Height: | Size: 218 B |
Before Width: | Height: | Size: 220 B |
Before Width: | Height: | Size: 219 B |
Before Width: | Height: | Size: 203 B |
Before Width: | Height: | Size: 213 B |
Before Width: | Height: | Size: 212 B |