@@ -90,6 +90,56 @@ public static StringBuilder AppendWorldRemove(this StringBuilder sb, int amount)
90
90
91
91
Move(in entity, oldArchetype, newArchetype);
92
92
}}
93
+ " ;
94
+
95
+ return sb . AppendLine ( template ) ;
96
+ }
97
+
98
+ public static StringBuilder AppendEntityAdds ( this StringBuilder sb , int amount )
99
+ {
100
+ for ( var index = 1 ; index < amount ; index ++ )
101
+ sb . AppendEntityAdd ( index ) ;
102
+
103
+ return sb ;
104
+ }
105
+
106
+ public static StringBuilder AppendEntityAdd ( this StringBuilder sb , int amount )
107
+ {
108
+
109
+ var generics = new StringBuilder ( ) . GenericWithoutBrackets ( amount ) ;
110
+ var parameters = new StringBuilder ( ) . GenericInDefaultParams ( amount ) ;
111
+
112
+ var template = $@ "
113
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
114
+ public static void Add<{ generics } >(this in Entity entity, { parameters } )
115
+ {{
116
+ var world = World.Worlds[entity.WorldId];
117
+ world.Add<{ generics } >(in entity);
118
+ }}
119
+ " ;
120
+
121
+ return sb . AppendLine ( template ) ;
122
+ }
123
+
124
+ public static StringBuilder AppendEntityRemoves ( this StringBuilder sb , int amount )
125
+ {
126
+ for ( var index = 1 ; index < amount ; index ++ )
127
+ sb . AppendEntityRemove ( index ) ;
128
+
129
+ return sb ;
130
+ }
131
+
132
+ public static StringBuilder AppendEntityRemove ( this StringBuilder sb , int amount )
133
+ {
134
+
135
+ var generics = new StringBuilder ( ) . GenericWithoutBrackets ( amount ) ;
136
+ var template = $@ "
137
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
138
+ public static void Remove<{ generics } >(this in Entity entity)
139
+ {{
140
+ var world = World.Worlds[entity.WorldId];
141
+ world.Remove<{ generics } >(in entity);
142
+ }}
93
143
" ;
94
144
95
145
return sb . AppendLine ( template ) ;
0 commit comments