-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathPartBehaviourModule.cs
More file actions
289 lines (235 loc) · 8.95 KB
/
PartBehaviourModule.cs
File metadata and controls
289 lines (235 loc) · 8.95 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
// Decompiled with JetBrains decompiler
// Type: KSP.Sim.Definitions.PartBehaviourModule
// Assembly: Assembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 0F37EC74-8184-4DF6-B7AF-AB13D81C547A
// Assembly location: C:\KSP2\DLL_stripped\Assembly-CSharp-stripped.dll
// XML documentation location: C:\KSP2\DLL_stripped\Assembly-CSharp-stripped.xml
using KSP.Game;
using KSP.Messages;
using KSP.OAB;
using KSP.Sim.impl;
using KSP.Sim.ResourceSystem;
using System;
using System.Collections.Generic;
using System.Runtime.CompilerServices;
using UnityEngine;
namespace KSP.Sim.Definitions
{
[Serializable]
public abstract class PartBehaviourModule :
KerbalMonoBehaviour,
IPartModule,
IFixedUpdate,
IPriorityOverride,
IUpdate,
IObjectAssemblyPartModule
{
public ModuleDataList DataModules;
public List<ModuleActionGroupAction> ModuleActions;
private Data_ModuleActions dataActionMappings;
private PartBehaviourModule.PartBackingModes _cachedBackingMode;
private PartBehavior _part;
private PartComponentModule _componentModule;
private IObjectAssemblyPart _OABPart;
private SubscriptionHandle _onActionActivateMessageHandle;
private bool isInitRunning;
public abstract System.Type PartComponentModuleType
{
[MethodImpl(MethodImplOptions.NoInlining)] get => throw null;
}
public virtual bool IsActive
{
[MethodImpl(MethodImplOptions.NoInlining)] get => throw null;
}
[MethodImpl(MethodImplOptions.NoInlining)]
protected virtual void AddDataModules() => throw null;
[MethodImpl(MethodImplOptions.NoInlining)]
protected virtual void OnInitialize() => throw null;
public virtual System.Type LegacyWriteOverTarget
{
[MethodImpl(MethodImplOptions.NoInlining)] get => throw null;
}
[MethodImpl(MethodImplOptions.NoInlining)]
public virtual void ThermalUpdate(double deltaTime) => throw null;
public PartBehaviourModule.PartBackingModes PartBackingMode
{
[MethodImpl(MethodImplOptions.NoInlining)] get => throw null;
}
public PartBehavior part
{
[MethodImpl(MethodImplOptions.NoInlining)] get => throw null;
[MethodImpl(MethodImplOptions.NoInlining)] set => throw null;
}
public PartComponentModule ComponentModule
{
[MethodImpl(MethodImplOptions.NoInlining)] get => throw null;
[MethodImpl(MethodImplOptions.NoInlining)] set => throw null;
}
protected ResourceFlowRequestBroker resourceFlowRequestBroker
{
[MethodImpl(MethodImplOptions.NoInlining)] get => throw null;
}
public PartOwnerBehavior partOwner
{
[MethodImpl(MethodImplOptions.NoInlining)] get => throw null;
}
public VesselBehavior vessel
{
[MethodImpl(MethodImplOptions.NoInlining)] get => throw null;
}
public ISimulationObjectView simulationObject
{
[MethodImpl(MethodImplOptions.NoInlining)] get => throw null;
[MethodImpl(MethodImplOptions.NoInlining)] set => throw null;
}
public ITransformModel transform
{
[MethodImpl(MethodImplOptions.NoInlining)] get => throw null;
}
public bool moduleIsEnabled
{
[MethodImpl(MethodImplOptions.NoInlining)] get => throw null;
[MethodImpl(MethodImplOptions.NoInlining)] set => throw null;
}
public bool IsInitialized
{
[MethodImpl(MethodImplOptions.NoInlining)] get => throw null;
[MethodImpl(MethodImplOptions.NoInlining)] private set => throw null;
}
public ModuleAction executedAction
{
[MethodImpl(MethodImplOptions.NoInlining)] get => throw null;
[MethodImpl(MethodImplOptions.NoInlining)] set => throw null;
}
[MethodImpl(MethodImplOptions.NoInlining)]
public virtual string GetModuleDisplayName() => throw null;
[Obsolete]
public bool stagingEnabled
{
[MethodImpl(MethodImplOptions.NoInlining)] get => throw null;
[MethodImpl(MethodImplOptions.NoInlining)] set => throw null;
}
[Obsolete]
[MethodImpl(MethodImplOptions.NoInlining)]
public string GetInfo() => throw null;
[Obsolete]
[MethodImpl(MethodImplOptions.NoInlining)]
public bool IsStageable() => throw null;
[Obsolete]
[MethodImpl(MethodImplOptions.NoInlining)]
public void OnActive() => throw null;
public IObjectAssemblyPart OABPart
{
[MethodImpl(MethodImplOptions.NoInlining)] get => throw null;
[MethodImpl(MethodImplOptions.NoInlining)] set => throw null;
}
[MethodImpl(MethodImplOptions.NoInlining)]
protected virtual void OnStart() => throw null;
/// <summary>
/// It appears this doesn't trigger at all?
/// </summary>>
[MethodImpl(MethodImplOptions.NoInlining)]
protected virtual void OnShutdown() => throw null;
[MethodImpl(MethodImplOptions.NoInlining)]
public void SetLegacyData(PartBehavior part, ISimulationObjectView simObj) => throw null;
[MethodImpl(MethodImplOptions.NoInlining)]
public void Init() => throw null;
[MethodImpl(MethodImplOptions.NoInlining)]
public void InitForDataModules() => throw null;
[MethodImpl(MethodImplOptions.NoInlining)]
public void SetDataModuleValues(SerializedPartModule spm) => throw null;
[MethodImpl(MethodImplOptions.NoInlining)]
public virtual void InitForNewOABPart() => throw null;
[MethodImpl(MethodImplOptions.NoInlining)]
private void Start() => throw null;
[MethodImpl(MethodImplOptions.NoInlining)]
private void OnDestroy() => throw null;
[MethodImpl(MethodImplOptions.NoInlining)]
protected void RemoveResourceRequest(ResourceFlowRequestHandle handle) => throw null;
[MethodImpl(MethodImplOptions.NoInlining)]
public virtual void OnAnimStateEnter(Animator animator, int stateMachinePathHash) => throw null;
[MethodImpl(MethodImplOptions.NoInlining)]
public virtual void OnAnimStateExit(Animator animator, int stateMachinePathHash) => throw null;
[MethodImpl(MethodImplOptions.NoInlining)]
protected bool IsPhysXEnabled() => throw null;
public bool IsLocallyAuthorized
{
[MethodImpl(MethodImplOptions.NoInlining)] get => throw null;
}
int IPriorityOverride.ExecutionPriorityOverride
{
[MethodImpl(MethodImplOptions.NoInlining)] get => throw null;
}
/// <summary>
/// It appears this doesn't trigger at all?
/// </summary>
[MethodImpl(MethodImplOptions.NoInlining)]
public void OnFixedUpdate(float deltaTime) => throw null;
/// <summary>
/// This starts triggering when the Flight scene is loaded and then keeps triggering
/// </summary>
[MethodImpl(MethodImplOptions.NoInlining)]
protected virtual void OnModuleFixedUpdate(float fixedDeltaTime) => throw null;
/// <summary>
/// This starts triggering as soon as the part is first placed in the OAB scene.
/// Does not trigger anymore when scene transitions fo Flight.
/// </summary>
[MethodImpl(MethodImplOptions.NoInlining)]
protected virtual void OnModuleOABFixedUpdate(float fixedDeltaTime) => throw null;
/// <summary>
/// This starts triggering as soon as the part is first placed in the OAB scene.
/// Keeps triggering in every scene after this.
/// OnUpdate is called every frame.
/// </summary>
[MethodImpl(MethodImplOptions.NoInlining)]
public virtual void OnUpdate(float deltaTime) => throw null;
/// <summary>
/// It appears this doesn't trigger at all?
/// </summary>
[MethodImpl(MethodImplOptions.NoInlining)]
protected virtual void OnModuleUpdate(float deltaTime) => throw null;
/// <summary>
/// It appears this doesn't trigger at all?
/// </summary>
[MethodImpl(MethodImplOptions.NoInlining)]
protected virtual void OnModuleOABUpdate(float deltaTime) => throw null;
[MethodImpl(MethodImplOptions.NoInlining)]
public void OnActionActivateEventMessage(MessageCenterMessage actionActivateMessage) => throw null;
[MethodImpl(MethodImplOptions.NoInlining)]
protected void AddActionGroupAction(ModuleActionGroupAction action) => throw null;
[MethodImpl(MethodImplOptions.NoInlining)]
protected void AddActionGroupAction(
Action<bool> action,
KSPActionGroup defaultActionGroup,
string displayName,
ModuleProperty<bool> stateProperty = null)
{
throw null;
}
[MethodImpl(MethodImplOptions.NoInlining)]
protected void AddActionGroupAction(
Action action,
KSPActionGroup defaultActionGroup,
string displayName)
{
throw null;
}
[MethodImpl(MethodImplOptions.NoInlining)]
protected void OnActionGroupMappingChanged(MessageCenterMessage msg) => throw null;
[MethodImpl(MethodImplOptions.NoInlining)]
public bool TryGetRendererMaterialsByName(
List<string> materialNames,
out List<Material> foundMaterials)
{
throw null;
}
[MethodImpl(MethodImplOptions.NoInlining)]
protected PartBehaviourModule() => throw null;
public enum PartBackingModes
{
None,
Flight,
OAB,
}
}
}