Skip to content

Commit 35f242d

Browse files
authored
Merge pull request #94 from ASM-Studios/dev
dev
2 parents a13d62b + 80f098f commit 35f242d

File tree

135 files changed

+7067
-842
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

135 files changed

+7067
-842
lines changed

.clang-format

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,7 @@ IncludeCategories:
127127
CaseSensitive: false
128128
IncludeIsMainRegex: '(Test)?$'
129129
IncludeIsMainSourceRegex: ''
130-
IndentAccessModifiers: false
130+
IndentAccessModifiers: true
131131
IndentCaseBlocks: false
132132
IndentCaseLabels: true
133133
IndentExternBlock: AfterExternBlock

.clang-tidy

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,8 @@ Checks: "bugprone-*,cppcoreguidelines-*,clang-analyzer-*,readability-*,misc-*,mo
44
-readability-identifier-length,
55
-cppcoreguidelines-pro-type-union-access,
66
-cppcoreguidelines-avoid-magic-numbers,
7-
-readability-magic-numbers"
7+
-readability-magic-numbers,
8+
-unused-includes,
9+
-bugprone-easily-swappable-parameters,
10+
-readability-braces-around-statements
11+
"

.github/workflows/deploy.yml

Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
name: deploy
2+
3+
on:
4+
workflow_dispatch:
5+
push:
6+
branches:
7+
- master
8+
9+
env:
10+
EXECUTABLES: r-type_client, r-type_server
11+
12+
jobs:
13+
create_release:
14+
name: Create Release
15+
runs-on: ubuntu-latest
16+
steps:
17+
- name: Checkout repository
18+
uses: actions/checkout@v4
19+
- name: Get current date
20+
id: date
21+
run: echo "date=$(TZ='Europe/Paris' date +'%Y.%m.%d.%H.%M')" >> $GITHUB_ENV
22+
- name: Create Release
23+
id: create_release
24+
uses: actions/create-release@v1
25+
env:
26+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
27+
with:
28+
tag_name: ${{ env.date }}
29+
release_name: ${{ env.date }}
30+
outputs:
31+
upload_url: ${{ steps.create_release.outputs.upload_url }}
32+
33+
build_and_deploy_linux:
34+
name: Build and deploy (Linux)
35+
runs-on: ubuntu-latest
36+
needs: create_release
37+
container:
38+
image: mathieubrl/rtype
39+
steps:
40+
- name: Checkout repository
41+
uses: actions/checkout@v4
42+
- name: Cache vcpkg
43+
uses: actions/cache@v4
44+
with:
45+
path: ~/.cache/vcpkg/
46+
key: ${{ hashFiles('vcpkg.json') }}
47+
- name: Setup vcpkg
48+
run: |
49+
if [ ! -d "vcpkg" ]; then
50+
git clone https://github.com/microsoft/vcpkg.git
51+
./vcpkg/bootstrap-vcpkg.sh
52+
fi
53+
./vcpkg/vcpkg install
54+
- name: Setup CMake
55+
uses: jwlawson/actions-setup-cmake@v2
56+
with:
57+
cmake-version: '3.27.4'
58+
- name: Compilation
59+
run: |
60+
./release.sh
61+
- name: Create archive
62+
run: |
63+
zip -r linux_executables.zip r-type_client r-type_server
64+
- name: Upload Release Asset
65+
id: upload-release-asset-linux
66+
uses: actions/upload-release-asset@v1
67+
env:
68+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
69+
with:
70+
upload_url: ${{ needs.create_release.outputs.upload_url }}
71+
asset_path: ./linux_executables.zip
72+
asset_name: linux_executables.zip
73+
asset_content_type: application/zip
74+
75+
# build_and_deploy_windows:
76+
# name: Build and deploy (Windows)
77+
# runs-on: windows-latest
78+
# needs: create_release
79+
# steps:
80+
# - name: Checkout repository
81+
# uses: actions/checkout@v4
82+
# - name: Cache vcpkg
83+
# uses: actions/cache@v4
84+
# with:
85+
# path: C:\Users\runneradmin\AppData\Local\vcpkg\archives
86+
# key: ${{ hashFiles('vcpkg.json') }}
87+
# - name: Setup vcpkg
88+
# run: |
89+
# if (-not (Test-Path -Path "C:\vcpkg")) {
90+
# git clone https://github.com/microsoft/vcpkg.git C:\vcpkg
91+
# .\vcpkg\bootstrap-vcpkg.bat
92+
# }
93+
# C:\vcpkg\vcpkg install
94+
# - name: Compilation # ne fonctionne pas encore
95+
# run: |
96+
# cmake -S . -B build -G "Ninja" -DCMAKE_TOOLCHAIN_FILE="C:\Program Files\Microsoft Visual Studio\2022\Community\VC\vcpkg\scripts\buildsystems\vcpkg.cmake" -DCMAKE_BUILD_TYPE=Release
97+
# cmake --build .
98+
# - name: Create archive
99+
# run: |
100+
# Compress-Archive -Path r-type_client.exe, r-type_server.exe -DestinationPath windows_executables.zip
101+
# - name: Upload Release Asset
102+
# id: upload-release-asset-windows
103+
# uses: actions/upload-release-asset@v1
104+
# env:
105+
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
106+
# with:
107+
# upload_url: ${{ needs.create_release.outputs.upload_url }}
108+
# asset_path: ./windows_executables.zip
109+
# asset_name: windows_executables.zip
110+
# asset_content_type: application/zip

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ note
1818

1919
# Documentation
2020

21-
docs/html/*
21+
docs/docs/html/*
2222

2323
# CMake
2424

CMakeLists.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,11 @@ project(rtype)
33

44
include_directories(shared/network/include)
55
include_directories(shared/ECS/include)
6+
include_directories(shared/ECS/src/Factories)
67
include_directories(shared/Config/include)
78
include_directories(shared/Logger/include)
89
include_directories(shared/Texture/include)
10+
include_directories(shared/GameLogic/include)
911

1012
set(CMAKE_CXX_STANDARD 20)
1113
set(CMAKE_CXX_EXTENSIONS OFF)

CMakePresets.json

Lines changed: 26 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,16 +6,40 @@
66
"generator": "Ninja",
77
"binaryDir": "${sourceDir}/cmake-build-debug",
88
"cacheVariables": {
9-
"CMAKE_TOOLCHAIN_FILE": "$env{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake"
9+
"CMAKE_TOOLCHAIN_FILE": "$env{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake",
10+
"CMAKE_BUILD_TYPE": "Debug",
11+
"CMAKE_CXX_COMPILER": "g++"
1012
}
1113
},
1214
{
1315
"name": "release",
1416
"generator": "Ninja",
1517
"binaryDir": "${sourceDir}/cmake-build-release",
1618
"cacheVariables": {
17-
"CMAKE_TOOLCHAIN_FILE": "$env{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake"
19+
"CMAKE_TOOLCHAIN_FILE": "$env{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake",
20+
"CMAKE_BUILD_TYPE": "Release",
21+
"CMAKE_CXX_COMPILER": "g++"
1822
}
23+
},
24+
{
25+
"name": "windows-from-linux",
26+
"generator": "Ninja",
27+
"binaryDir": "${sourceDir}/cmake-build-windows",
28+
"cacheVariables": {
29+
"CMAKE_TOOLCHAIN_FILE": "$env{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake",
30+
"CMAKE_BUILD_TYPE": "Release",
31+
"CMAKE_CXX_COMPILER": "i686-w64-mingw32-g++"
32+
}
33+
},
34+
{
35+
"name": "windows-from-windows",
36+
"generator": "Ninja",
37+
"binaryDir": "${sourceDir}/cmake-build-windows",
38+
"cacheVariables": {
39+
"CMAKE_TOOLCHAIN_FILE": "$env{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake",
40+
"CMAKE_BUILD_TYPE": "Release",
41+
"CMAKE_CXX_COMPILER": "g++"
42+
}
1943
}
2044
]
2145
}

README.md

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,10 @@ The server will be developed has a game engine, and the client will be a simple
88

99
The project is made solely in C++.
1010

11+
## Supported platforms
12+
13+
This project can run on Windows and Linux.
14+
1115
## Requirements
1216

1317
- Doxygen: [see documentation](https://www.doxygen.nl/manual/install.html)
@@ -35,6 +39,12 @@ Use debug.sh script to create a debug build.
3539
./debug.sh
3640
```
3741

42+
or
43+
44+
```powershell
45+
debug.bat
46+
```
47+
3848
### Release
3949

4050
Use release.sh script to create a release build.
@@ -43,18 +53,40 @@ Use release.sh script to create a release build.
4353
./release.sh
4454
```
4555

56+
or
57+
58+
```powershell
59+
release.bat
60+
```
61+
4662
## Documentation
4763

4864
This project is documented using Doxygen.
4965

5066
You can find additional information in the [`docs`](docs/Hub.md) folder.
5167

68+
For developers, refer to the [Developers.md](docs/Developers.md) file.
69+
5270
## Authors
5371

5472
| Name | Github |
5573
|-----------------|-----------------------------------------------------|
5674
| Mathieu Coulet | [Djangss](https://github.com/Djangss) |
57-
| Mathieu Borel | [mat0904](https://github.com/mat0904) |
75+
| Mathieu Borel | [mathieu-brl](https://github.com/mathieu-brl) |
5876
| Yohann Mangenot | [YohannMgt](https://github.com/YohannMgt) |
5977
| Charles Madjeri | [charlesmadjeri](https://github.com/charlesmadjeri) |
6078
| Maël RABOT | [Mael-RABOT](https://github.com/Mael-RABOT) |
79+
80+
## License
81+
82+
This project is under the GNU General Public License v3.0.
83+
84+
## Assets
85+
86+
All assets used in this project are under the Creative Commons License.
87+
88+
Here are the authors of some of the assets:
89+
90+
- [helianthus-games](https://helianthus-games.itch.io/)
91+
- [kayillustrations](https://kayillustrations.itch.io/)
92+
- [ansimuz](https://ansimuz.itch.io/)

assets/fonts/FFFFORWA.TTF

39.8 KB
Binary file not shown.
-88.6 KB
Binary file not shown.
1020 KB
Loading

0 commit comments

Comments
 (0)