|
10 | 10 | #include "JSystem/JStudio/JStudio/jstudio-object.h" |
11 | 11 | #include "JSystem/JStudio/JStudio/jstudio-math.h" |
12 | 12 |
|
| 13 | +#ifdef DEBUG |
| 14 | +namespace JStudio_JStage { |
| 15 | +template<class TAdaptor, class TStageObject> |
| 16 | +struct TVariableValueOutput_object_; |
| 17 | +}; // namespace JStudio_JStage |
| 18 | +#else |
| 19 | +#include "JSystem/JStudio/JStudio_JStage/tvariable_value_output_object.h" |
| 20 | +#endif |
| 21 | + |
13 | 22 | namespace JStudio_JStage { |
14 | 23 | typedef JStudio::TObject* (*ObjCreateFuncT)(const JStudio::stb::data::TParse_TBlock_object&, JStage::TObject*, const JStage::TSystem*); |
15 | 24 |
|
@@ -41,10 +50,6 @@ struct TAdaptor_object_ { |
41 | 50 | /* 0x4 */ JStage::TObject* pJSGObject_; |
42 | 51 | }; |
43 | 52 |
|
44 | | - |
45 | | -template<class TAdaptor, class TStageObject> |
46 | | -struct TVariableValueOutput_object_; |
47 | | - |
48 | 53 | struct TAdaptor_actor : public JStudio::TAdaptor_actor, public JStudio_JStage::TAdaptor_object_ { |
49 | 54 | typedef JStudio::TObject_actor ObjectType; |
50 | 55 | typedef TVariableValueOutput_object_<TAdaptor_actor, JStage::TActor> TVVOutputObject; |
@@ -282,35 +287,6 @@ struct TAdaptor_light : public JStudio::TAdaptor_light, public TAdaptor_object_ |
282 | 287 | static TVVOutput_direction_ saoVVOutput_direction_[6]; |
283 | 288 | }; |
284 | 289 |
|
285 | | -template<class TAdaptor, class TStageObject> |
286 | | -struct TVariableValueOutput_object_ : public JStudio::TVariableValue::TOutput { |
287 | | - typedef f32 (TStageObject::*GetFunc)() const; |
288 | | - typedef void (TStageObject::*SetFunc)(f32); |
289 | | - TVariableValueOutput_object_() : field_0x4(-1), field_0x8(NULL), field_0x14(NULL) {} |
290 | | - TVariableValueOutput_object_(typename TAdaptor::TEVariableValue param_1, |
291 | | - SetFunc param_2, GetFunc param_3) : field_0x4(param_1), field_0x8(param_2), field_0x14(param_3) { |
292 | | - |
293 | | - } |
294 | | - |
295 | | - virtual void operator()(f32 param_1, JStudio::TAdaptor* param_2) const { |
296 | | - (((TAdaptor*)param_2)->get_pJSG_()->*field_0x8)(param_1); |
297 | | - } |
298 | | - virtual ~TVariableValueOutput_object_() {} |
299 | | - |
300 | | - bool isEnd_() const { return field_0x4 == -1; } |
301 | | - void adaptor_setOutput_(TAdaptor* adaptor) { |
302 | | - adaptor->adaptor_referVariableValue(field_0x4)->setOutput(this); |
303 | | - } |
304 | | - void setVariableValue_(const TStageObject* pObj, TAdaptor* pAdaptor) const { |
305 | | - f32 val = (pObj->*field_0x14)(); |
306 | | - pAdaptor->adaptor_setVariableValue_immediate(field_0x4, val); |
307 | | - } |
308 | | - |
309 | | - int field_0x4; |
310 | | - SetFunc field_0x8; |
311 | | - GetFunc field_0x14; |
312 | | -}; |
313 | | - |
314 | 290 | /* 8028A1F8 */ bool |
315 | 291 | transform_toGlobalFromLocal(f32 (*)[4], |
316 | 292 | JStudio::TControl::TTransform_translation_rotation_scaling const&, |
@@ -339,4 +315,8 @@ inline bool transform_toGlobalFromLocal(JStudio::TControl::TTransform_position* |
339 | 315 | JStage::TObject const*, u32); |
340 | 316 | }; // namespace JStudio_JStage |
341 | 317 |
|
| 318 | +#ifdef DEBUG |
| 319 | +#include "JSystem/JStudio/JStudio_JStage/tvariable_value_output_object.h" |
| 320 | +#endif |
| 321 | + |
342 | 322 | #endif /* JSTUDIO_JSTAGE_CONTROL_H */ |
0 commit comments