You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -40,6 +40,7 @@ This plugin comes with a set of particular python generator scripts located in t
40
40
*``-g````--generate-classes``: A list of class/enum definitions to generate. Use "all" to generate all classes (Default).
41
41
*``-a````--static-assert``: Generate static assertions of resulting class/enum definitions to ensure their validity.
42
42
*``-d````--supply-hl2sdk``: Supplies hl2sdk class/enum definitions if applicable to the generated file.
43
+
*``-p````--preferred-project``: Prefer server or client project for generation. (Could only be ``server`` or ``client``). Default is ``server``.
43
44
> [!NOTE]
44
45
> Schema dumps with parent scope, might not generate correct code without supplying [hl2sdk](https://github.com/alliedmodders/hl2sdk) definitions!
45
46
@@ -51,6 +52,7 @@ This plugin comes with a set of particular python generator scripts located in t
51
52
*``-s````--silent``: Disables stdout output.
52
53
*``-c````--comments``: Generate help comments for resulting class/enum definitions.
53
54
*``-g````--generate-classes``: A list of class/enum definitions to generate. Doesn't default to "all" and expects you to provide classes to generate.
55
+
*``-p````--preferred-project``: Prefer server or client project for generation. (Could only be ``server`` or ``client``). Default is ``server``.
54
56
> [!NOTE]
55
57
> This script is mostly an example of how you can automate dumping schema to macro headers for plugins that use [s2ze](https://github.com/Source2ZE/CS2Fixes) alike schema systems.
Copy file name to clipboardExpand all lines: generator_scripts/generate_cpp.py
+4Lines changed: 4 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -496,6 +496,7 @@ def main():
496
496
parser.add_argument('-g', '--generate-classes', help='A list of class/enum definitions to generate. Use "all" to generate all classes (Default).', nargs='+', type=str, dest='generate_classes', default='all')
497
497
parser.add_argument('-a', '--static-assert', help='Generate static assertions of resulting class/enum definitions to ensure their validity.', action='store_true', dest='static_assert')
498
498
parser.add_argument('-d', '--supply-hl2sdk', help='Supplies hl2sdk class/enum definitions if applicable to the generated file.', action='store_true', dest='supply_hl2sdk')
499
+
parser.add_argument('-p', '--preferred-project', help='Prefer server or client project for generation.', type=str, dest='preferred_project', choices=['server', 'client'], default='server')
499
500
500
501
args=parser.parse_args()
501
502
flags=parse_args_as_flags(args)
@@ -629,6 +630,9 @@ def main():
629
630
print_stdout('Generating all class definitions...')
parser.add_argument('-c', '--comments', help='Generate help comments for resulting class/enum definitions.', action='store_true', dest='add_comments')
126
126
parser.add_argument('-g', '--generate-classes', help='A list of class/enum definitions to generate.', required=True, nargs='+', type=str, dest='generate_classes', default=None)
127
+
parser.add_argument('-p', '--preferred-project', help='Prefer server or client project for generation.', type=str, dest='preferred_project', choices=['server', 'client'], default='server')
127
128
128
129
args=parser.parse_args()
129
130
flags=parse_args_as_flags(args)
@@ -144,14 +145,23 @@ def main():
144
145
print_stdout(f'Generating ({", ".join(args.generate_classes)}) class definitions...')
145
146
146
147
forclass_nameinargs.generate_classes:
147
-
defn=schema_file.defs.get_def_at_name(class_name)
148
+
start_at=0
148
149
149
-
ifdefn==None:
150
-
print_stdout(f'Class definition ({class_name}) not found in schema file, failed to generate!')
0 commit comments