Skip to content

Commit 35a50b0

Browse files
authored
Merge pull request #106 from heinezen/gamestate-fixes
openage gamestate fixes
2 parents 97ab90a + bdc752b commit 35a50b0

28 files changed

+725
-436
lines changed

.clang-format

Lines changed: 130 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,130 @@
1+
---
2+
# SFT codestyle
3+
# Tab indent + space alignment
4+
# see documentation in doc/code_style/ for details and explainations.
5+
Language: Cpp
6+
AccessModifierOffset: -4
7+
AlignAfterOpenBracket: Align
8+
AlignArrayOfStructures: None
9+
AlignConsecutiveAssignments: false
10+
AlignConsecutiveBitFields: false
11+
AlignConsecutiveDeclarations: false
12+
AlignConsecutiveMacros: false
13+
AlignEscapedNewlines: DontAlign
14+
AlignOperands: Align
15+
AlignTrailingComments: false
16+
AllowAllArgumentsOnNextLine: true
17+
AllowAllParametersOfDeclarationOnNextLine: true
18+
AllowShortBlocksOnASingleLine: Never
19+
AllowShortCaseLabelsOnASingleLine: false
20+
AllowShortEnumsOnASingleLine: false
21+
AllowShortFunctionsOnASingleLine: Empty
22+
AllowShortIfStatementsOnASingleLine: Never
23+
AllowShortLambdasOnASingleLine: All
24+
AllowShortLoopsOnASingleLine: false
25+
AlwaysBreakAfterDefinitionReturnType: None
26+
AlwaysBreakAfterReturnType: None
27+
AlwaysBreakBeforeMultilineStrings: false
28+
AlwaysBreakTemplateDeclarations: Yes
29+
BinPackArguments: false
30+
BinPackParameters: false
31+
BraceWrapping:
32+
AfterCaseLabel: false
33+
AfterClass: false
34+
AfterControlStatement: Never
35+
AfterEnum: false
36+
AfterExternBlock: false
37+
AfterFunction: false
38+
AfterNamespace: false
39+
AfterObjCDeclaration: false
40+
AfterStruct: false
41+
AfterUnion: false
42+
BeforeCatch: true
43+
BeforeElse: true
44+
BeforeLambdaBody: false
45+
BeforeWhile: true
46+
IndentBraces: false
47+
SplitEmptyFunction: false
48+
SplitEmptyNamespace: false
49+
SplitEmptyRecord: false
50+
BreakAfterJavaFieldAnnotations: true
51+
BreakBeforeBinaryOperators: NonAssignment
52+
BreakBeforeBraces: Custom
53+
BreakBeforeInheritanceComma: false
54+
BreakBeforeTernaryOperators: false
55+
BreakConstructorInitializers: AfterColon
56+
BreakInheritanceList: BeforeComma
57+
BreakStringLiterals: false
58+
ColumnLimit: 0
59+
CompactNamespaces: false
60+
ConstructorInitializerAllOnOneLineOrOnePerLine: false
61+
ConstructorInitializerIndentWidth: 4
62+
ContinuationIndentWidth: 4
63+
Cpp11BracedListStyle: true
64+
DeriveLineEnding: true
65+
DerivePointerAlignment: false
66+
DisableFormat: false
67+
ExperimentalAutoDetectBinPacking: false
68+
FixNamespaceComments: true
69+
ForEachMacros:
70+
- foreach
71+
- Q_FOREACH
72+
- BOOST_FOREACH
73+
IncludeBlocks: Preserve
74+
IncludeCategories:
75+
- Regex: '.*'
76+
Priority: 3
77+
SortPriority: 0
78+
IncludeIsMainRegex: ''
79+
IncludeIsMainSourceRegex: ''
80+
IndentCaseBlocks: false
81+
IndentCaseLabels: false
82+
IndentExternBlock: NoIndent
83+
IndentGotoLabels: false
84+
IndentPPDirectives: None
85+
IndentWidth: 4
86+
IndentWrappedFunctionNames: false
87+
# clang-format-16 InsertNewlineAtEOF: true
88+
InsertTrailingCommas: Wrapped
89+
KeepEmptyLinesAtTheStartOfBlocks: false
90+
MacroBlockBegin: ''
91+
MacroBlockEnd: ''
92+
MaxEmptyLinesToKeep: 2
93+
NamespaceIndentation: None
94+
PenaltyBreakAssignment: 2
95+
PenaltyBreakBeforeFirstCallParameter: 1
96+
PenaltyBreakComment: 300
97+
PenaltyBreakFirstLessLess: 120
98+
PenaltyBreakString: 1000
99+
PenaltyBreakTemplateDeclaration: 10
100+
PenaltyExcessCharacter: 1000000
101+
PenaltyReturnTypeOnItsOwnLine: 200
102+
PointerAlignment: Right
103+
ReflowComments: false
104+
SortIncludes: CaseInsensitive
105+
SortUsingDeclarations: true
106+
SpaceAfterCStyleCast: false
107+
SpaceAfterLogicalNot: false
108+
SpaceAfterTemplateKeyword: true
109+
SpaceBeforeAssignmentOperators: true
110+
SpaceBeforeCaseColon: false
111+
SpaceBeforeCpp11BracedList: false
112+
SpaceBeforeCtorInitializerColon: true
113+
SpaceBeforeInheritanceColon: true
114+
SpaceBeforeParens: ControlStatements
115+
SpaceBeforeRangeBasedForLoopColon: true
116+
SpaceBeforeSquareBrackets: false
117+
SpaceInEmptyBlock: false
118+
SpaceInEmptyParentheses: false
119+
SpacesBeforeTrailingComments: 1
120+
SpacesInAngles: Never
121+
SpacesInCStyleCastParentheses: false
122+
SpacesInConditionalStatement: false
123+
SpacesInContainerLiterals: false
124+
SpacesInParentheses: false
125+
SpacesInSquareBrackets: false
126+
Standard: Latest
127+
TabWidth: 4
128+
UseCRLF: false
129+
UseTab: AlignWithSpaces
130+
...

README.md

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ properly represent the enormous complexity of storing the data for [openage](htt
1414
The main focus is *readability* and *moddability*.
1515

1616
[![github stars](https://img.shields.io/github/stars/SFTtech/nyan.svg)](https://github.com/SFTtech/nyan/stargazers)
17-
[![#sfttech on Freenode](https://img.shields.io/badge/chat-on%20freenode-brightgreen)](https://webchat.freenode.net/?channels=sfttech)
17+
[![#sfttech on matrix.org](/doc/assets/matrix.svg)](https://matrix.to/#/#sfttech:matrix.org)
1818

1919

2020
The foundation of **nyan**:
@@ -123,19 +123,21 @@ Current State of the Project
123123
----------------------------
124124

125125
`nyan` is fully functional and can be used in your project.
126+
Please make us aware of your needs/experiences in our chat!
126127

127-
There's some features left to implement, but those only
128-
cover special use cases:
128+
We try to keep the API stable, but there's still some unknowns and need-to-change features.
129129

130-
* [ ] Inverse patch generation
131-
* [ ] Subobject set specializations
132-
* [ ] Callback trigger when a value changes
133-
* [ ] Member name qualifications for name conflict resolving
130+
Please submit bugs and feature requests (and patches) on [GitHub](https://github.com/SFTtech/nyan)!
134131

135132

136133
Dependencies, Building and Running
137134
----------------------------------
138135

136+
Operating System | Build status
137+
--------------------|--------------
138+
Debian Sid | [Todo: Kevin #11](https://github.com/SFTtech/kevin/issues/11)
139+
140+
139141
- How do I get this to install on my box?
140142
- See [doc/building.md](doc/building.md).
141143

@@ -148,12 +150,6 @@ All of those observations are intended, not bugs.
148150

149151
To get rid of them, recompile with `--dont-segfault --shut-up --new-girlfriend`.
150152

151-
Operating System | Build status
152-
--------------------|--------------
153-
Debian Sid | [Todo: Kevin #11](https://github.com/SFTtech/kevin/issues/11)
154-
MacOSX 10.14 | [![Build Status](https://travis-ci.org/SFTtech/nyan.svg?branch=master)](https://travis-ci.org/SFTtech/nyan)
155-
Windows 10 - x64 | [![Build status](https://ci.appveyor.com/api/projects/status/6t1yonx5fu7dejs0/branch/master?svg=true)](https://ci.appveyor.com/project/simonsan/nyan-c53id/branch/master)
156-
157153
If this still does not help, try the [contact section](#contact)
158154
or the [bug tracker](https://github.com/SFTtech/nyan/issues).
159155

@@ -176,10 +172,9 @@ Contact
176172
-------
177173

178174
If you have the desire to perform semi-human interaction,
179-
join our **Matrix** or **IRC** chatroom!
175+
join our **Matrix** chatroom!
180176

181177
* [`#sfttech:matrix.org`](https://riot.im/app/#/room/#sfttech:matrix.org)
182-
* [`irc.freenode.net #sfttech`](https://webchat.freenode.net/?channels=sfttech)
183178

184179
For ideas, problems, ..., use the [issue tracker](https://github.com/SFTtech/nyan/issues)!
185180

nyan/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,7 @@ add_library(nyan SHARED
6868
util/flags.cpp
6969
value_token.cpp
7070
value/boolean.cpp
71+
value/container_types.cpp
7172
value/container.cpp
7273
value/dict.cpp
7374
value/file.cpp
@@ -77,7 +78,6 @@ add_library(nyan SHARED
7778
value/orderedset.cpp
7879
value/set.cpp
7980
value/set_base.cpp
80-
value/set_types.cpp
8181
value/text.cpp
8282
value/value.cpp
8383
value/value_holder.cpp

0 commit comments

Comments
 (0)